鄭美玲 陳 瀚 俞洪水 朱健萍*
(廣西壯族自治區食品藥品檢驗所,廣西 南寧 530021)
電子簽章系統是以數字簽名、數字水印技術為核心,以印章圖像為載體,基于COM中間件技術對電子圖章的版權保護機制,實現對特定文件的簽名、加密和認證。任何未通過認證的用戶,均無法獲取文件信息,從而達到了保護文件隱私與機密的目的。隨著加密技術的日益成熟,電子簽章系統的安全性也得到了進一步提升。現階段常用的電子簽章系統,已經形成了PKI與數字水印兩大技術體系,每個體系下又包含了數字認證、數字簽名、易損水印、魯邦水印等多種類型。熟練運用這些技術,將使電子簽章系統的實用價值得到更好體現。
由CA(證書授權中心)簽發的數字證書,可用于驗證互聯網環境下個人或企業的身份信息。用戶使用公鑰對一些涉密文件進行加密,生成數字證書;當需要獲取文件內容時,必須提供與公鑰匹配的私鑰,將數字證書成功解密,否則就無法讀取文件內容,從而達到了保密目的。在PKI 體系中,CA 作為數字證書簽發、認證、管理的機構,發揮著關鍵作用。用戶在向CA 提出數字證書申請后,CA 會根據提交的申請資料進行驗證,確定申請者身份信息無誤后,提供一對可用于文件加密的公鑰和解密的私鑰。
數字簽名是基于公鑰密碼理論發展而來的一種加密技術,基于PKI的數字簽名,其加密過程為:基于MD5 算法,從原始文件中提取關鍵信息,利用私鑰對這些信息進行簽名。將原始文件、數字簽名同時發送出去。當另一方順利接收后,首先驗證數字證書,若通過CA 認證后,再利用私鑰對數字簽名進行解密。完成解密后可得到關鍵信息,將此信息與原始文件的關鍵信息進行對比。如果兩者完全匹配,則說明文件的完整度、安全性良好。基于數字簽名的文件加密技術,除了具有良好的機密性外,還體現出可認證性、防偽造性與抗抵賴性等特點。
作為信息隱藏學的核心技術之一,數字水印的基本原理是將一些容易被識別的標志性信息,通過算法加密的方式將其嵌入到需要被保護的數字文件中,既不影響原內容的使用,同時又不容易被讀取、篡改,從而達到了保護數字文件、防止信息竊取的目的。數字水印的認證流程可歸納為三個步驟:第一步是生成水印,并對其做簡單處理。用戶可通過自定義信息的方式,確定數字水印的類型。同時提取圖像特征值,將兩者結合得到原始的數字水印。此時水印的加密效果一般,為此還需要通過預處理,得到標準化的水印信息。第二步是將生成的數字水印,嵌入到目標文件中,并在嵌入完畢后檢測水印的完整性。借助于特定的算法,將水印嵌入到宿主圖像中,同時得到帶有水印的宿主圖像。利用檢測認證算法對水印圖像的清晰度、完整性等進行檢測。第三步是根據檢測結果,若水印圖像嵌入效果良好,則完成數字水印加密操作。若水印圖像有變形、失真問題,則重新修改。整個流程如圖1 所示。

圖1 數字水印認證流程
對數字水印實用效果的評估主要參考以下幾個指標:(1)易損性。根據嵌入電子文件中的水印信息,被損壞、篡改的難易程度,判斷數字水印的性能。若數字水印的可識別性好、篡改難度大,則說明在文件保護方面的性能優良。(2)安全性。以水印算法的復雜程度來定性表示安全性能。通常來說,數字水印的加密算法越復雜,則篡改數字水印的難度越大,因此水印系統的抗攻擊能力越強,即安全性好。(3)失真性。采用水印提取技術,對電子文件中嵌入的數字水印進行提取(ω′),然后將提取水印與原水印(ω)進行對比,得出數字水印的失真性(NC),計算公式為:

以實際用途作為劃分依據,數字水印可分為兩種類型:(1)易損水印,多應用在互聯網、新媒體領域,例如對網絡上傳播的各類圖片、視頻等添加水印,其作用主要是判斷圖片、視頻的所有權歸屬。這類水印容易被修改和復制,因此對文件的加密保護效果并不高;(2)魯棒水印,除了用戶識別外,更多的是應用在數字作品的知識產權保護方面。在添加魯棒水印時,需要經過濾波、縮放、壓縮等一系列處理,流程越復雜,則篡改難度越大,從而在版權保護方面發揮的作用越明顯。當數字產品的版權發生爭議時,可根據魯棒水印判斷真正的版權所有者。
融合了PKI與數字水印技術的電子簽章系統,共分為服務器端和客戶端兩大模塊。其中,在服務器端有一臺簽章證書管理器,主要負責簽章證書的新建、查看、刪除、導出等任務。同時,提供專門的新建證書庫,用于存放所有經由該簽章證書管理器簽發的證書,方便進行查詢、調用。在客戶端,又包括了手寫簽名、MyAddin 組件、seal 控件三個模塊。其中,MyAddin 組件的功能是對用戶提交的待加密文檔,進行驗證、簽名、蓋章和解鎖;而seal 控件的主要作用是對電子簽章進行驗證、鎖定、解鎖、查看等。具體組成如圖2 所示。

圖2 電子簽章系統的組織架構
公文流轉是電子簽章系統的關鍵組成,支持文件蓋章、簽名、驗證等一系列功能的實現。公文流轉模塊的設計內容如下:(1)用戶向CA 提交使用簽章證書的申請,并且將個人身份信息、工作單位等相關證明資料一并發送。CA 會對上述資料進行審核,若發現信息不符,則駁回申請。若信息符合,則頒發簽章證書,用戶得到一對公鑰和私鑰。而簽章證書的備份則留存在專門的服務器內。整個流程如圖3 所示。(2)用戶在待處理的文件上蓋上簽章,同時利用MD5 算法提取關鍵信息。使用公鑰進行RSA 簽名,將帶有個人信息的水印嵌入到簽章圖像中,完成對文件的加密。之后將加密文件發送出去。(3)接收者打開文檔時,通過CA 驗證數字簽名,驗證通過后使用配對的私鑰進行解密。將解密所得關鍵信息,與發送者提供的原始關鍵信息進行對比,兩者一致則表明驗證成功。

圖3 簽章證書申請流程
該模塊提供的功能包括簽章證書的新建、查看、導出、刪除等。對于普通電子文件來說,基于Word 文檔的簽章保護是一種常用方法。利用Word 內置的二次開發接口,將MyAddin 組件插入到Word 程序中,其結構如圖4 所示。

圖4 插入到Word 中的MyAddin 組件
從簽章證書數據庫中,挑選具有使用版權的簽章證書,與待處理的電子文件進行綁定。將帶有數字水印的簽章圖片,嵌入到文檔中。在文檔蓋章的同時,還可以進行手動或自動簽名。最后確認簽名完成,驗證文檔的完整性。
信息時代為防止數據泄露、保護文件隱私,需要使用到各種各樣的加密技術。電子簽章系統是一種應用廣泛且保密效果較為理想的技術,其中又涵蓋了PKI與數字水印兩種核心技術。前者以數字簽名、數字證書、時間戳服務等為主,后者則包含了易損水印、魯邦水印等。運用電子簽章系統對電子文檔進行認證,只有掌握私鑰的用戶才能將其解密,從而極大保障了文件內容的隱私與安全。