一種有效的電子商務安全策略
程興國
[摘要] 為了提高多媒體信息論證的可信度,本文提出了一種結合數字簽名和數字水印的算法。實驗結果表明,該算法具有良好的效果。 [關鍵詞] 數字簽名數字水印離散余弦變換多媒體論證 隨著因特網的迅速發展和普及,多媒體信息得到了空前廣泛的交流與應用,給人們的生產和生活帶來了許多便利。但是,多媒體信息的安全問題也隨之而來,比如盜用別人的電子產品并在網上傳播;在電子商務中偽造或篡改票據;對數字圖像等多媒體信息進行修改、替換以達到損害別人的目的等。因此,對多媒體信息的有效論證是保證信息安全的重要手段。 電子交易的可實施性是電子商務要解決的最主要和最基本的問題。電子簽名可以實現兩個重要目標:排除電子商務的障礙;通過幫助建立參與者在網上從事商業活動所需要的信任和可預見性,實現并推動電子商務的適當的公共政策目標。 電子簽名目前具備三個主要功能:數據來源認證:這可以用于認證信息來自于可疑的發送者;信息的完整性:有助于信息的接收者確定,在發送過程中,沒有被有意或者隨意地更改;不可否認性:發送者不能被否認信息的發送。 目前,存在幾個方法可以有效完成上述功能。然而,基于公共公共密鑰的密碼系統的數字簽名技術是目前被認為最普通、最可靠的技術。 數字簽名是一種對多媒體信息進行論證的有效手段,它是由信息發送者對要傳送的信息進行某種處理的,任何人都無法知道的,用以論證信息的來源并核實信息是否發生了變化的一段字符串。數字簽名的基礎是密碼學。 數字水印技術近年來逐漸成為知識產權保護的主要手段,它是信息隱藏的一個重要分支,是通過在原始資料中嵌入一些有特殊意義的信息,如文字,序列號,公司標志,聲音等,用以識別多媒體信息的作者,版權所有者、發行者,合法使用人對數字產品的擁有權等,并攜帶有版權保護信息和論證信息。 信息隱藏技術與傳統密碼學有本質的區別,傳統密碼學是將明文加密成密文,使信息不可理解,是隱藏了信息的內容;而信息隱藏技術著重隱藏了信息的存在。數字水印技術和數字簽名各有優勢和不足。數字簽名容易受到攻擊,而數字水印的安全度不高。如果將數字水印和數字簽名有機結合起來,以之為基礎構成一種新的水印方案,其安全性、可性度、論證精度都將會大大地提高,這無疑將是多媒體技術研究發展的一個很有前途的方向。 一、結合數字簽名與數字水印的方案 把數字簽名作為水印隱藏在圖像中,數字簽名方法用DSA(Date Signature Algorithm),數字水印方法用DCT(discrete cosine transform即離散余弦變換)。DSA簽名是基于離散對數問題的數字簽名標準,雖說它僅提供數字簽名,不提供數據加密功能,但它具有算法簡便實用,易實現等優點。而考慮用DCT是由于離散余弦變換是實變換,它具有良好的能量壓縮能力,而且可以利用人的視覺系統(HVS)在DCT域內的特性。 在應用DSA之前先對其做一個簡要說明: 如果要對一個消息x進行簽名,可選取一個隨機值k,且p, q,а和β公開,α保密(其中p是512比特的素數,q是一個整除p-1的160比特的素數,а是模p的q次單位根。α作為私鑰,β作為公鑰)。定義k={(p, q ,а, α, β):β=aα(modp)},對于Κ和一個秘密隨機數k,1≤k≤q-1,對信息x的簽名結果如下: sigK(x,k)=(γ,δ)(1) γ和δ即是對信息x的簽名。 γ=(аkmodp)modq(2) δ=(x+αγ)k-1modq(3) 簽名是否為真通過下式來驗證,e1=xδ-1modq(4) e2=γδ-1modq(5) verK(x,γ,δ)真(ae1βe2modp)modq=γ(6) 舉例說明如下: 如p=83,q=41,а=2,β=4。另給出α=2(可以由信息發送者的身份信息構造而成),取k=20,應用上面的方法,對一個信息x (可以是一幅圖像作品的版權序列號等,如取為39)進行簽名得簽名信息為:sigK(x,k)=(37,20), 將之代入(6)式,可以驗證簽名為真。 將簽名的一些信息寫入一個64×64的二值圖像中,將之作為水印圖像嵌入到一個名為Peppersr的512×512標準真彩圖像中。具體方法如下: (1)將數字簽名的一些已知參數p,q,а,β及對信息x的簽名(γ,δ)寫入到一個64×64的二值黑白圖像中,私鑰α及隨機數k可以由信息發送者身份識別的信息構成,信息x可以是一幅版權圖像的序列編號構成。 (2)讀取原始圖像和黑白水印圖像到二維數組I與J。 (3)將原始圖像I分割為互不覆蓋的圖像塊blockL(x,y),1≤x,y≤8,L=1,2…,M*M/64,對blockL(x,y)進行DCT變換,得到dct-blockL(u,v)。 (4)取黑白水印圖像中的一個元素J(p,q)嵌入到原始公開圖像塊的DCT的低頻系數中。 (5)對嵌入了水印信息后的圖像塊dct-blockL(u’,v’)進行反DCT變換,得到blockL(x’,y’)。 (6)合并圖像塊,得到嵌入了黑白水印后的圖像。 水印提取算法與水印嵌入算法類似,不再贅述。 接收方收到含水印的圖像后,從中提取水印得到簽名信息,用發信方給的私鑰α和秘密數k驗證簽名的真實性,從而可辨別作品的真偽(假設原始圖像Peppers為一版權作品)。
從上圖可得知:嵌入了水印后載體圖像跟原始圖像基本上無明顯差異,即該水印圖像的透明性良好,且在嵌入水印后的圖像未受攻擊的前提下,從中提取出的水印圖像非常清晰。信息接收者應用我的水印提取算法可方便地得到簽名信息,然后再用我給他的密鑰可以驗證此真彩圖的真偽。 三、結論 該方法較好地結合了數字簽名和數字水印技術各自的優勢,實現了對多媒體信息雙重保護的功能,提高了論證精度。不過所使用的DSA簽名法僅提供數據簽名,不提供數據加密功能,且該水印方案抵抗攻擊的能力不是太強。進一步提高水印的抗攻擊能力和改進DSA算法將是今后研究的方向。