最新的數字簽名技術論文

  數字簽名是指使用密碼演算法對要傳輸的資料進行加密處理,其目的是提供資料的完整性保護和抗否認功能。 下面是小編整理的,希望你能從中得到感悟!

  篇一

  淺談數字簽名

  [摘 要]隨著網路通訊的發展,數字簽名作為資訊保安技術認證技術中的一項關鍵技術,可以解決否認、偽造、篡改及冒充問題,用來保證資訊傳輸過程中的完整性,提供資訊傳送者的身份認證和不可抵賴性。具有其它技術所無法替代的作用,在資訊保安領域得到廣泛的應用。

  [關鍵詞]計算機技術 數字簽名 應用

  [中圖分類號]TP[文獻標識碼]A[文章編號]1007-9416***2010***03-0050-02

  目前,隨著越來越多的政府部門和企業機構開始應用Internet,他們的資訊共享程度與網上業務不斷增加。與此同時,網路攻擊和犯罪活動也日益猖獗。如何防止機密資訊在網路中被洩露或竄改、如何有效地抵制和打擊資訊犯罪、保障網路與資訊保安等,給人們提出了嚴峻的挑戰。

  在因特網這個虛擬的世界中,該通過何種措施來使人們相信因特網資訊的準確性呢?當然可以採用強大的安全保障機制,來保證網上的資訊不被那些“非法分子”入侵。目前有許多種技術來保證資訊的安全不受侵犯,例如加密技術,訪問控制技術、認證技術以及安全審計技術等,但這些技術大多數是用來預防用的,而且一旦被攻破,我們就不能保證資訊的完整性。為此,只有在資訊本身的安全上作出努力,數字簽名技術應運而生。

  1 數字簽名的概念

  數字簽名不是指將你的簽名掃描成數字影象,或者用觸控板獲取的簽名,更不是你的落款。數字簽名***又稱公鑰數字簽名、電子簽章***是一種類似寫在紙上的普通的物理簽名,但是使用了公鑰加密領域的技術實現,用於鑑別數字資訊的方法。其驗證的準確度是一般手工簽名和圖章的驗證而無法比擬的。

  簡單地說,所謂數字簽名就是附加在資料單元上的一些資料,或是對資料單元所作的密碼變換。這種資料或變換允許資料單元的接收者用以確認資料單元的來源和資料單元的完整性並保護資料,防止被人***例如接收者***進行偽造。它是對電子形式的訊息進行簽名的一種方法。一個簽名訊息能在一個通訊網路中傳輸。基於公鑰密碼體制和私鑰密碼體制都可以獲得數字簽名,目前主要是基於公鑰密碼體制的數字簽名。包括普通數字簽名和特殊數字簽名。普通數字簽名演算法有RSA、ElGamal、Fiat-Shamir、Guillou- Quisquarter、Schnorr、Ong-Schnorr-Shamir數字簽名演算法、Des/DSA,橢圓曲線數字簽名演算法和有限自動機數字簽名演算法等。特殊數字簽名有盲簽名、代理簽名、群簽名、不可否認簽名、公平盲簽名、門限簽名、具有訊息恢復功能簽名等,它與具體應用環境密切相關。

  “數字簽名”是目前電子商務、電子政務中應用最普遍、技術最成熟的、可操作性最強的一種電子簽名方法。它採用了規範化的程式和科學化的方法,用於鑑定簽名人的身份以及對一項電子資料內容的認可。它還能驗證出檔案的原文在傳輸過程中有無變動,確保傳輸電子檔案的完整性、真實性和不可抵賴性。這樣數字簽名就可用來防止有人修改資訊;或冒用別人名義傳送偽造資訊;或發出***收到***資訊後又加以否認等情況的發生。

  2 數字簽名的工作原理及實現

  一套數字簽名通常定義兩種互補的運算,一個用於簽名,另一個用於驗證。

  通常要驗證文件未被篡改,而不必加密文件。數字簽名可以驗證文件未被篡改和確實來自有關方面。

  數字簽名有兩個基本元件:安全雜湊函式和公用金鑰加密。安全雜湊演算法取一塊資料並將其分解成小位塊。這個演算法每次執行時對特定位模式產生相同的雜湊值。這樣,傳送檔案之間計算雜湊時,接收計算相同的雜湊值。一個好的雜湊演算法在文件少量改變時也能使結果大大改變。這樣,別人篡改文件之後就很難保持相同的雜湊值。

  例如,創設雜湊演算法根據文件中的各個字元計算數值,不管字元順序。這樣,ABC與CBA有相同雜湊值。因此別人可以把文件內容做順序上的調整,面雜湊值卻不變,從而使數字簽名仍然有效。

  MD5和SHA之類的安全雜湊演算法考慮位元組順序,幾乎不可能對文件進行小改而雜湊值不變。這兩種廣泛應用的簽名演算法都是基於非對稱加密即公鑰密碼學,目前已被破解。

  這樣,數字簽名的第二個部分就是某種逆公用金鑰演算法。通常,使用公用金鑰演算法時,用公用金鑰加密資料,用專用金鑰解密資料。對於數字簽名正好相反,用專用金鑰加密文字塊的雜湊值,任何人要驗證簽名有效性時,就使用公用金鑰驗證該雜湊值是用相應的專用金鑰加密的。

  在公鑰密碼學中,金鑰是由公開金鑰和私有金鑰組成的金鑰對。數字簽名就是用私有金鑰進行加密,接受方用公開金鑰進行解密,由於從公開金鑰不能推算出私有金鑰,所以公開金鑰不會損害私有金鑰的安全。公開金鑰無需保密,可以公開傳播,而私有金鑰必須保密。因此,當某人用其私有金鑰加密訊息時,能夠用他的公開金鑰正確解密,就可以肯定該訊息是某人簽字的,這就是數字簽名的基本原理。因為其他人的公開金鑰不可能正確解密該加密過的訊息,其他人也不可能擁有該人的私有金鑰而製造出該加密過的訊息。

  3 數字簽名的常用演算法

  數字簽名用到的演算法很多,大體上可以分為金鑰演算法和單向雜湊演算法,除上文提到的最常用的單向雜湊演算法MD5和SHA,應用最為廣泛的三種是: Hash簽名、DSS簽名、RSA簽名。

  ***1***Hash簽名

  Hash簽名不屬於強計算密集型演算法,應用較廣泛。很多少量現金付款系統,如DEC的Millicent和CyberCash的CyberCoin等都使用Hash簽名。使用較快的演算法,可降低伺服器資源消耗,減輕中央伺服器負荷。Hash的主要侷限是接收方必須持有使用者金鑰的副本以檢驗簽名,因為雙方都知道生成簽名的金鑰,較容易攻破,存在偽造簽名的可能。如果中央或使用者計算機中有一個被攻破,那麼其安全性就受到了威脅。

  ***2***DSS和RSA簽名

  DSS和RSA採用了公鑰演算法,不存在Hash的侷限性。RSA是最流行的一種加密標準,許多產品的核心中都有RSA的軟體和類庫,早在Web飛速發展之前,RSA資料安全公司就負責數字簽名軟體與Macintosh作業系統的整合,在Apple的協作軟體PowerTalk上還增加了簽名拖放功能,使用者只要把需要加密的資料拖到相應的圖示上,就完成了電子形式的數字簽名。RSA與Microsoft、IBM、Sun和Digital都簽訂了許可協議,使在其生產線上加入了類似的簽名特性。與DSS不同,RSA既可以用來加密資料,也可以用於身份認證。和Hash簽名相比,在公鑰系統中,由於生成簽名的金鑰只儲存於使用者的計算機中,安全係數大一些。

  4 數字簽名的用途

  在網路應用中,凡事要解決偽造、抵賴、冒充、篡改與身份鑑別的問題,都可運用數字簽名來處理。

  例如:網上銀行通過Internet向客戶提供資訊查詢、對賬、網上支付、資金劃轉、信貸業務以及投資理財等金融業務。網上銀行將對傳統銀行業帶來鉅變,有人估計:網上銀行將使勞動生產率年均增長54%。比如工商銀行發給客戶的U盾,就儲存了代表你身份的數字證書與其他資訊,其交易過程就需要數字簽名的支援。

  電子商務能完成企業之間、企業與消費者之間在網上的互動活動。網上證券能在網上完成股票交易、網上證券資訊服務、網上銀行/證券轉賬業務等。這些業務需要身份鑑別防篡改等功能,也要使用數字簽名。

  還有電子政務。加入一個沒有身份認證服務的電子政務系統,任何人都可隨便籤發文件散佈,而不用擔心事發後的追查,因為無法甄別出簽字者,該電子政務系統的危害性可想而知。電子政務系統必須提供身份認證服務、許可權控制服務、資訊保密服務、資料完整性服務和不可否認服務。

  [參考文獻]

  [1] 熊德健.採用數字簽名及時保障網路通訊安全應用研究[J].甘肅科技,2008***22***:p25~26.

  [2] 陳赫貝,阮飛.XML數字簽名及其應用研究[J].微機發展,2005***2***:p53~54.

  [3] 羅清元,王曉曉.數字簽名技術的研究及應用[J].電腦保安,20084***2***:p72~73.

  [4] 李紅豔.淺析數字簽名及其在電子商務中的應用[J].勝利油田職工大學學報,2005***4***:p71.

點選下頁還有更多>>>