《網絡通訊及安全》word版_第1頁
《網絡通訊及安全》word版_第2頁
《網絡通訊及安全》word版_第3頁
《網絡通訊及安全》word版_第4頁
《網絡通訊及安全》word版_第5頁
已閱讀5頁,還剩29頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、網絡通訊及安全本欄目責任編輯:馮蕾數字簽名技術綜述李程(浙江工商大學,統計與數學學院,浙江杭州310018)摘要:在計算機通信系統中,維護電子文檔的安全成為至關重要和非常敏感的問題。數字簽名技術應運而生,已成為對電子文件及其發送者進行認證的主要手段,在電子商務,電子政務等領域發揮著越來越大的作用。該文介紹了電子商務安全技術中有著特別重要地位的數字簽名技術。關鍵詞:數字簽名;電子數據交換;網絡信息安全中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2009)10-2559-03TheTechnologySumsuptheFigureSignatureLICheng(Zhejia

2、ngUniversityofCommerceandIndustryInstituteofStatisticsandMathematicsInstitute,Hangzhou310018,China)Abstract:Inthecomputercommunicationssystem,maintainstheelectronicdocumentsthesecuritytobecomeveryimportantandtheverysensitivequestion.Thedigitalsignaturetechnologyarisesatthehistoricmoment,hasbecometot

3、heelectronicdocumentandthesendercarriesontheauthenticationtheprincipalmeansthatintheelectroniccommerce,domainsandsoonE-governmentisplayingmoreandmoremajorrole.Thisarticleintroducedintheelectroniccommercesafetyworkhasthespeciallyimportantpositiondigitalsignaturetech-nology.Keywords:figuresignature;el

4、ectrondataexchange;networkinformationsafe1前言在傳統生活中,政府的文件,命令和條約,商業中的契約以及個人之間的書信等,均使用手書簽字或印章以便在法律上能夠認證,核準,生效,保證各方的利益。隨著網絡技術和軟件技術的飛速發展,信息革命帶來了全球范圍市場競爭的日益加劇,同時對傳統的辦公和生活方式也產生了巨大沖擊。2004年8月28日,十屆全國人大常委會第十一次會議表決通過中華人民共和國電子簽名法,首次賦予可靠的電子簽名與手寫簽名或蓋章具有同等的法律效力,并明確了電子認證服務的市場準入制度。該法是我國第一部真正意義的電子商務法,是我國電子商務發展的里程碑。它的

5、頒布和實施必將極大地改善我國電子商務的法制環境,促進安全可信的電子交易環境的建立,從而大力推動我國電子商務的發展。2數字簽名的基本概念2.1數字簽名的定義簡單地說,所謂數字簽名就是附加在數據單元上的一些數據,或是對數據單元所作的密碼變換。這種數據或變換允許數據單元的接收者用以確認數據單元的來源和數據單元的完整性并保護數據,防止被人(例如接收者)進行偽造。它是對電子形式的消息進行簽名的一種方法,一個簽名消息能在一個通信網絡中傳輸。基于公鑰密碼體制和私鑰密碼體制都可以獲得數字簽名,目前主要是基于公鑰密碼體制的數字簽名。包括普通數字簽名和特殊數字簽名。普通數字簽名算法有RSA、ElGamal、Fia

6、t-Shamir、Guillou-Quisquarter、Schnorr、Ong-Schnorr-Shamir數字簽名算法、Des/DSA,橢圓曲線數字簽名算法和有限自動機數字簽名算法等。特殊數字簽名有盲簽名、代理簽名、群簽名、不可否認簽名、公平盲簽名、門限簽名、具有消息恢復功能的簽名等,它與具體應用環境密切相關。2.2數字簽名的要求數字簽名技術用來保證信息的完整性。“數字簽名”是通過一個單向函數對要傳送的報文進行處理后得到的,用以認證報文來源并核實報文是否發生變化的一個字母數字串。數字簽名可以解決否認、偽造、篡改及冒充等問題。具體要求:發送者事后不能否認發送的報文簽名、接收者能夠核實發送者發

7、送的報文簽名、接收者不能偽造發送者的報文簽名、接收者不能對發送者的報文進行部分篡改、網絡中的某一用戶不能冒充另一用戶作為發送者或接收者。數字簽名的應用范圍十分廣泛,在保障電子數據交換(EDI)的安全性上是一個突破性的進展,凡是需要對用戶的身份進行判斷的情況都可以使用數字簽名,比如加密信件、商務信函、定貨購買系統、遠程金融交易、自動模式處理等等。2.3數字簽名的原理數字簽名是通過密碼技術對電子文檔的電子形式的簽名,并非是書面簽名的數字圖像化。它類似于手寫簽名或印章,也可以說它就是電子印章。我們對一些重要的文件進行簽名,以確定它的有效性。但偽造傳統的簽名并不困難,這就使得數字簽名與傳統簽名之間的重

8、要差別更加突出:如果沒有產生簽名的私鑰,要偽造由安全密碼數字簽名方案所產生的簽名,在計算上是不可行的。人們實際上也可以否認曾對一個議論中的文件簽過名。但是否認一個數字簽名卻困難得多,這樣做本質上證明在簽名生成以前私鑰的安全性就受到危害。這是由于數字簽名的生成需要使用私鑰,而它對應的公鑰則用以驗證簽名。因而數字簽名的一個重要收稿日期:2009-01-15ISSN1009-3044ComputerKnowledgeandTechnology電腦知識與技術Vol.5,No.10,April2009,pp.2559-2561E-mail:infoTel:+86-551-5690963569096425

9、59本欄目責任編輯:馮蕾網絡通訊及安全ComputerKnowledgeandTechnology電腦知識與技術第5卷第10期(2009年4月)性質就是非否認性,目前已經有一些方案,如數字證書,把一個實體(個人,組織或系統)的身份同一個私鑰和公鑰對綁定在一起。這使得一個人很難否認數字簽名。數字簽名是相對于手書簽名而言的,類似于手書簽名,但還應滿足以下要求:1)收方能確認或證實發方的簽字,但不能偽造;2)發方把簽字的消息發給收方后,就不能否認所簽發的消息;3)一旦收發雙方就消息內容和來源發生爭執時,應能給仲裁者提供發方對所發消息簽了字的證據。但數字簽名和手書簽名也有所不同,手書簽名是模擬的,因人

10、而異,且無論用那種語言簽名,都可以模仿;數字簽名是0或1的數字串,因消息而異,不可模仿。數字簽名的基礎是公開密鑰密碼學。公開密鑰密碼學是現代密碼學的最重要的發明和發展。一般理解密碼學就是保護信息傳遞的機密性,但這僅僅是當今密碼學主題的一個方面。3數字簽名的作用網絡的安全,主要是網絡信息安全,需要采取相應的安全技術措施,提供適合的安全服務。數字簽名機制作為保障網絡信息安全的手段之一,可以解決偽造,抵賴,冒充和篡改問題。數字簽名的目的之一,就是在網絡環境中代替傳統的手工簽字與印章,其可抵御的網絡攻擊主要有:1)防冒充(偽造)。其他人不能偽造對消息的簽名,因為私有密鑰只有簽名者自己知道,所以其他人不

11、可以構造出正確的簽名結果數據。顯然要求各位保存好自己的私有密鑰,好像保存自己家門的鑰匙一樣。2)可鑒別身份。由于傳統的手工簽名一般是雙方直接見面的,身份自可一清二楚;在網絡環境中,接受方必須能夠鑒別發送方所宣稱的身份。3)防篡改(防破壞信息的完整性)。傳統的手工簽字,假如要簽署一本200頁的合同,是僅僅在合同末尾簽名呢還是對每一頁都有簽名,不然,對方會不會偷換其中幾頁這些都是問題所在。而數字簽名,如前所述:簽名與原有文件已經形成了一個混合的整體數據,不可能篡改,從而保證了數據的完整性。4)防重放。如在日常生活中,A向B借了錢,同時寫了一張借條給B;當A還錢的時候,肯定要向B索回他寫的借條撕毀,

12、不然,恐怕他會再次挾借條要求A再次還錢。在數字簽名中,如果采用了對簽名報文添加流水號,時戳等技術,可以防止重放攻擊。5)防抵賴。如前所述,數字簽名可以鑒別身份,不可能冒充偽造,那么,只要保存好簽名的報文,就好似保存好了手工簽署的合同文本,也就是保留了證據,簽名者就無法抵賴。以上是簽名者不能抵賴,那如果接受者確已收到對方的簽名報文,卻抵賴沒有收到呢要防接受者的抵賴,在數字簽名體制中,要求接受者返回一個自己簽名的表示收到的報文,給對方或者是第三方,或者引入第三方機制。如此操作,雙方均不可抵賴。6)機密性(保密性)。有了機密性保證,截收攻擊也就失效了。手工簽字的文件(如合同文本)是不具備保密性的,文

13、件一旦丟失,文件信息就極可能泄露。數字簽名,可以加密要簽名的消息。當然,簽名的報文如果不要求機密性,也可以不用加密。4數字簽名技術應用方案在網絡環境的實際應用中,由于受機器運算速度的影響,傳輸速度是一大瓶頸。現大多數字簽名方案存在著效率不高,開銷過大等問題。為此,如何在確保安全性的前提下,簡化操作也是數字簽名技術急需解決的問題。下面以A向B傳遞文檔為例,我們提出適應在網絡環境中的數字簽名方案。假設A為信息發送者,其公鑰,私鑰對為(ka1,ka2),B為信息接受者,其公鑰,私鑰對為(kb1,kb2)。為了進一步增加簽名的安全性,引入了TIMESTAMP(時間戳)參數。同時考慮被簽名內容的大小不定

14、,直接對明文內容進行簽名,運算內容大,時間長,不適用于網絡上的傳輸,所以先由明文用SHA1算法產生一個消息摘要,然后把TIMESTAMP與摘要一起簽名,以實現雙重認證功能(以抵抗重放攻擊和代換攻擊),大大增強了其安全性。4.1需認證的數字簽名方案需認證的數字簽名方案是最基本的數字簽名方案,不需要加密處理。發送方簽名過程是:1)A用SHA21算法對原文件P產生摘要Z;2)取得服務器系統時間T(時間戳);3)A使用其私鑰ka2對摘要和系統時間Z+T進行簽名得C;4)A將(P,C)發送給B。接收方的驗證過程是:1)B接收后將P,C分開;2)B將取到的明文用SHA21計算出摘要;3)B用A的公鑰kal

15、對A的簽名進行解密得到Z,T;4)B將解密得到的Z同算出的摘要進行比較,同時解密得到的時間作為輔助認證,若摘要相同,且時間符合約定,剛A的證明為真,反之為假。4.2需認證和加密的數字簽名方案需認證和加密的數字簽名方案是同時需要認證和加密的數字簽名方案。在這個方案中,發送方簽名過程是:1)A用SHA-1算法對原文件P產生摘要Z;2)取得服務器系統時間T;3)A使用其私鑰ka2對摘要和系統時間Z+T進行簽名得C;4)A隨機產生一個DES的密鑰K;5)A使用對稱加密算法對P進行加密得P1;6)A使用B公鑰kb1對DES密鑰K進行加密得K1;7)A將(K1,P1,C)發送給B。接收方的驗證過程是:1)

16、接收后將K1,P1,C分開。2560網絡通訊及安全本欄目責任編輯:馮蕾2)B將取得的K1用其私鑰kb2進行解密得DES密鑰K。3)B用K將P1解密得明文P。4)B用SHA21算法對明文P產生摘要。5)B用A的公鑰ka1對A的簽名進行解密。B將解密得到的Z和算出的摘要比較,同時把解密得到的時間作為輔助認證,若摘要相同且時間符合約定,則A的證明為真,反之為假。數字簽名的安全性取決于算法的選擇和密鑰的管理。簽名算法中,非對稱加密算法在加密性能上優于對稱加密算法,其中比較有代表性的有RSA算法,DSA算法,ECC算法(橢圓曲線算法)。RSA算法的安全性與DSA算法大致相當,因為兩者的算法基礎大整數分解

17、與求離散對數的計算復雜度是近似的,但RSA速度比DSA算法更快。ECC算法基礎是橢圓曲線的對數問題,這個基礎使得它可能比RSA更快更安全,但它作為一種新的算法,還有待進一步的檢驗和標準化。所以我們采用RSA算法來實現一個數字簽名算法,這也是現在最普遍使用的非對稱加密算法,為了提高安全性,使用密鑰長度是1024位。我們在第二種方案中(需認證和加密的數字簽名),采用對稱加密算法和非對稱加密算法兩者相接合的方式,主要因為對稱加密的加密速度快于非對稱加密,所以加密用對稱算法,然后用非對稱算法對其密鑰(長度固定且短,可采用96位)進行加密傳輸。這樣,兩者互為補充大大加強了數據安全性且加快了系統處理的時間

18、。實踐證明這種方案的實用性很強。密鑰的管理主要是依靠統一的公鑰基礎設施PKI的建立。5數字簽名系統的實現實現數字簽名有很多方法,但大體的工作程序是一樣的。用戶首先可以下載或者購買數字簽名軟件,然后安裝在個人電腦上。在產生密鑰對后,軟件自動向外界傳送公開密鑰。由于公共密鑰的存儲需要,所以需要建立一個鑒定中心(CA)完成個人信息及其密鑰的確定工作。鑒定中心是一個政府參與管理的第三方成員,以便保證信息的安全和集中管理。不過,在使用這種技術時,簽名者必須注意保護好私有密鑰,因為它是公開密鑰體系安全的重要基礎。如果密鑰丟失,應該立即報告鑒定中心取消認證,將其列入確認取消列表之中。其次,鑒定中心必須能夠迅

19、速確認用戶的身份及其密鑰的關系。一旦接收到用戶請求,鑒定中心要立即認證信息的安全性并返回信息。當然數字簽名算法的實現,可以從底層算法開始,即從加密算法開始編碼;也可以利用網上的一些開放源碼的工具包進行二次開發,比如cryptlib,openssl等,優點是功能比較完善,可以靈活應用,但這些免費資源往往缺乏詳細的文檔,閱讀大量的源代碼就常常成為必需。另外,也可以借助一定的開發工具利用其中的密碼功能,比如MicrosoftCryptoAPI函數,VC下可以使用,缺點是由于受美國的密碼產品出口限制,Windows自帶的Cryp2toAPI的安全強度不能滿足用戶的各種需求;Java語言也可以方便地實現

20、密碼技術,而且Java以其強安全性,平臺無關性,硬件結構無關性,語言簡潔同時面向對象,在網絡編程語言中占據無可比擬的優勢。6數字簽名的隱患數字簽名已成為信息社會中人們保障網絡身份安全的重要手段之一,然而,隨著安全威脅的日益猖獗,目前的數字簽名技術存在著一定的隱患。要知道數字簽名的工作原理,這要對公匙加密法有一個基本認識。最重要的問題就是:一、公匙和相應的私匙有著特殊的關系:一把密匙加密的內容只能由另一把密匙來解密;二、通過一家可信賴的認證中心(CA)頒發及簽名的數字證書(根證書),私匙與你的身份密切相關。數字簽名是涉及簽名信息和簽名人私匙的計算結果。首先,簽名人的軟件對發送信息進行散列函數運算

21、后,生成信息摘要(messagedigest)這段信息所特有的長度固定的信息表示。然后,軟件使用簽名人的私匙對摘要進行解密,將結果連同信息和簽名人的數字證書一同傳送給預定的接受者。而接受者的軟件會對收到的信息生成信息摘要(使用同樣的散列函數),并使用簽名人的公匙對簽名人生成的摘要進行解密。接受者的軟件也可以加以配置,驗證簽名人證書的真偽,確保證書是由可信賴的CA頒發,而且沒有被CA吊銷。如果兩個摘要一樣,就表明接受者成功核實了數字簽名。經核實的數字簽名向接受者保證了兩點:一、信息未經改動;二、信息的確來自簽名人。后者就成了對原產地證明(ProofofOri-gin)的認可,即加密認可這一概念的基礎。這正是癥結所在。更確切地說,經核實的數字簽名向接受者保

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論