電子圖章如何加密

隨著計算機應用的普及,越來越多的單位認識到OA(辦公自動化)方便、高效,但是由于OA在使用電子圖章的安全方面的問題,一直得不到很多單位的認可。那么,我們今天就來講一下電子圖章如何加密?

一、電子圖章的加密原理

電子圖章加密與其他圖片加密的不同要求是盡可能不改變原有圖形、色彩等,在加密時不能改變原有數(shù)據(jù)。因此,一些常規(guī)的圖像加密算法不適用于電子圖章加密。

電子圖章圖片一般都是24位,表達方式為3個字節(jié),用肉眼觀察無法區(qū)別這個刻度,因此,加密的思路是改變每個點對應的顏色的值。

例如第1行第1列的顏色值為(255,180,254),那么可以隨意更改其中的1個或多個數(shù)據(jù),用1個數(shù)字來記錄數(shù)字的改動情況,因此整個圖形的改動情況可以形成一個隨機的矩陣。數(shù) 據(jù)中的每個數(shù)字改動也可以有5種情況:不改動、數(shù)值加1、數(shù)值加2、數(shù)值減1和數(shù)值減2。數(shù)據(jù)的改動也有幾種情況:只改動一個有3種可能性;改動2個有3種可能性;都改動是一種可能性。這樣就形成了兩個特征矩陣來分別記載。

比如:設定數(shù)字的改動情況:0代表數(shù)字值不改動;1代表數(shù)字值加1;2代表數(shù)字值加2;3代表數(shù)字值減1;4代表數(shù)字值減2。

設定數(shù)據(jù)改動情況:0代表改動第1個數(shù)字;1代1表改動第2個數(shù)字;2代表改動第3個數(shù)字;3代表不改動第1個數(shù)字;4代表不改動第2個數(shù)字;5代表不改動第3個數(shù)字;6代表全改變。

假設形成兩個特征矩陣如下:

電子圖章如何加密

式(1)代表數(shù)據(jù)的改動情況,矩陣的第1行第1列的1代表改動的是3個數(shù)中第2個數(shù)字。

式(2)代表數(shù)字改動情況,那么矩陣中的第1行第1列的1代表數(shù)字的改動情況是加1。

這樣,兩個矩陣可以記錄圖像的改動情況。經(jīng)過處理后,電子圖章與原圖章不同,但肉眼看不出來。這樣,重復特征矩陣的概率P是:

電子圖章如何加密

式中:Mh為圖章分辨率行數(shù);Mw為圖章分辨率列數(shù)。如果是20行×20列的24位圖章,由式(3)可以算出重復的概率為2.36e-618,所以特征矩陣的重復可能性幾乎沒有。對特征矩陣進行處理,形成密匙。形成密匙的方法如下。

式(1)矩陣元素的取值有7種可能性。因此可以使用3個二進制位表示,則整個矩陣則有3×4×4個位,按照行和列依次排列即可形成6個8位字節(jié)。

同理,式(2)矩陣元素的取值有5種可能性,也用3個位表示,可以形成6個8位字節(jié)。這樣總計12個字節(jié)即是密匙。如果特征矩陣是20行×20列,則形成 3x20x20/8×2個字節(jié)的密匙。

當需要對電子圖章進行鑒別時,只需要根據(jù)密匙進行解析,獲得特征矩陣,根據(jù)特征矩陣對數(shù)據(jù)進行運算后與原圖像進行對比,若相同則為真正的電子圖章,否則為仿制圖章。

二、電子圖章加密的實現(xiàn)方法

電子圖章的數(shù)據(jù)文件包含文件頭信息、文件尾信息、閱讀對象編號范圍、原始圖像數(shù)據(jù)部分、生成圖像部分和密匙部分。電子圖章的文件格式是自定義的格式:*.ese,簡單數(shù)據(jù)文件格式如圖所示。

電子圖章如何加密

電子圖章加密是使用Delphi以ActiveX控件的形式實現(xiàn)。

因為ActiveX控件的形式很容易被其他開發(fā)工具使用。它表現(xiàn)為加密控件和驗證控件,主要包括格式轉化、數(shù)據(jù)讀寫、生成特征矩陣、生成密匙和校驗等部分。控件中的主要函數(shù)或過程有:

Gettile Data(Graph Path:AnsiString)//從原始電子圖章中獲取圖像的數(shù)據(jù),存入臨時文件

Create Secret//生成特征隨機矩陣,并形成密匙

IsSecret:Boolean//根據(jù)密匙,獲得特征隨機矩陣,并根據(jù)特征矩陣的值還原數(shù)據(jù),與原數(shù)據(jù)比較,若有一個數(shù)據(jù)不正確即返回False

GetUserlD:Ansistring//獲得有閱讀權的用戶編碼

CreateCRC:AnsiString//形成CRC校驗碼

IsData://根據(jù)CRC校驗碼校驗數(shù)據(jù)是否正確

CreateEse//創(chuàng)建Ese格式文件加密控件主要用于管理端。加密控件的功能是對原有的電子圖章進行加密,生成加密后的電子圖章和密匙。其流程如圖所示。

電子圖章如何加密

解密控件主要用于用戶端。解密控件的主要功能是對管理端發(fā)送過來的文件進行解密和校驗。如果用戶端有權閱讀且電子圖章不是偽造則可以正常顯示。其流程如圖所示。

電子圖章如何加密

電子圖章可以廣泛應用于學校、政府等機構的oa系統(tǒng),可以替代紙質(zhì)文件,能節(jié)省大量資金,而且更加環(huán)保。同時,我們將電子圖章的文件加密,這樣可以產(chǎn)生一些隨機數(shù)據(jù),從而防止從文件數(shù)據(jù)上進行解密。

小知識之OA:

OA辦公系統(tǒng)即OA,是Office Automation的縮寫,指辦公室自動化或自動化辦公。其實OA辦公系統(tǒng)是一個動態(tài)的概念,隨著計算機技術、通信技術和網(wǎng)絡技術的突飛猛進,關于OA辦公系統(tǒng)的描述也在不斷充實,至今還沒有人對其下過最權威、最科學、最全面、最準確的定義。當今世界是信息爆炸的知識經(jīng)濟統(tǒng)治的時代,在這種情況下結合技術的各種進步所產(chǎn)生的OA辦公系統(tǒng)已與十幾年前的OA發(fā)生了很大的變化。