[摘要] 本文從數字簽名技術的概念和原理出發,詳細介紹了數字簽名技術的實現方法,以及數字簽名技術在電子商務安全系統中的重要作用。
[關鍵詞] 數字簽名電子商務安全
電子商務是利用Internet進行的各項商務活動,主要包括非支付型和支付型兩種業務類型。電子商務改變了傳統的交易方式,它通過網絡使企業面對整個世界,所帶來的商機是巨大而深遠的。目前,隨著Internet的迅猛發展,電子商務已成為國際商務活動的一種嶄新模式。這種新型的貿易方式以其特有的成本低、易于參與、對需求反映迅速等優勢,已被愈來愈多的國家及不同行業所接受和使用。由于電子商務所依托的Internet的全球性和開放性,電子商務的影響也是全面的,它不僅在微觀上影響企業的經營行為和消費者的消費行為,而且在宏觀上也影響到國際貿易關系和國家未來競爭力。
然而,互聯網所固有的開放性與資源共享性使電子商務成為一把雙刃劍,它在給人類帶來了經濟、便捷、高效的交易方式的同時,也使商務活動的安全性受到嚴重挑戰。電子商務的安全問題已成為全球電子商務活動的焦點問題,如何保證網上交易的有效性、機密性、完整性、可靠性和不可否認性是電子商務可持續發展的關鍵。
一、電子商務的安全性需求
目前,電子商務普遍存在信息在傳輸過程中被竊取、被篡改、偽造電子郵件干擾正常交易、假冒他人身份、抵賴已經發生的業務等多種安全隱患。針對這些安全威脅,電子商務安全性要求應包括以下幾個方面。
1.保密性。電子商務作為貿易的一種手段,其信息直接代表著個人、企業或國家的商業機密,因此,必須保證數據不被非授權方非法訪問,加密的信息不會被破譯。保密性又主要分為數據存儲保密性和數據網絡傳輸的保密性。
2.完整性。保證電子交易過程中所有存儲和管理的信息不被非法篡改,保證目的信息和源信息相一致。保護電子支付完整性的主要途徑有:協議、糾錯編碼方法、密碼校驗、數字簽名、公證等。
3.有效性。有效防止延遲和拒絕服務情況的發生,保證交易數據在確定的時刻、確定的地點是真實、有效的。
4.可靠性。保證合法用戶對信息和資源的使用不會被不正當地拒絕。電子支付系統通過提供對用戶身份的鑒別方法,實現系統對用戶身份的有效確認,確保用戶身份信息的合法、可靠。
5.不可抵賴性。通過建立有效的責任機制,使得交易雙方對于自己已經發送或者接收的數據不能事后否認,從而有效防止支付欺詐行為的發生。
6.可控性。交易發生的整個過程都是可控的,有明確的責權關系和相互制約關系,能夠切實保障各方利益不受損害。
二、數字簽名技術及其原理
在電子商務活動中,如何鑒別交易伙伴身份、確定合同、契約和單據的可靠性是十分關鍵的問題。這就出現了數據真實性認證問題,數字簽名技術也就應運而生了。
數字簽名是用來保證信息傳輸過程中信息的完整性、私有性和不可抵賴性,是實現網上交易安全的核心技術之一,在信息安全,包括身份認證、數據完整性、不可否認性以及匿名性等方面有重要應用,特別是在大型網絡安全通信中的密鑰分配、認證以及電子商務系統中都具有重要作用。
1.數字簽名的概念。數字簽名(Digital Signatures),就是通過某種密碼運算生成一系列符號及代碼組成電子密碼進行簽名。數字簽名是目前電子商務、電子政務中應用最普遍、技術最成熟、可操作性最強的一種電子簽名方法。它采用了規范化的程序和科學化的方法,用于鑒定簽名人身份以及對一項電子數據內容的認可。它還能驗證出文件的原文在傳輸過程中有無變動,確保傳輸電子文件的完整性、真實性、和不可抵賴性。
在ISO7498-2標準中,數字簽名被定義為“附加在數據單元上的一些數據,或是對數據單元所作的密碼變換,這種數據和變換允許數據單元的接收者用以確認數據單元來源和數據單元的完整性,并保護數據,防止被進行偽造。美國電子簽名標準對數字簽名作了如下解釋:利用一套規則和一個參數對數據進行計算得到結果,用此結果能夠確認簽名者的身份和數據的完整性。
按上述定義,PKI(Public Key Infrastruction,公鑰基礎設施)可以提供數據單元的密碼變換,并能使接收者判斷數據來源及對數據進行驗證。
2.數字簽名技術原理。首先發送方對信息施以數學變換,所得的信息與原信息唯一對應;在接收方進行逆變換,得到原始信息。只要數學變換方法優良,變換后的信息在傳輸中就具有很強的安全性,很難被破譯、篡改。這一過程稱為加密,對應的反變換過程稱為解密。
現在有兩類不同的加密技術,一類是對稱加密,雙方具有共享的密鑰,只有在雙方都知道密鑰的情況下才能使用。另一類是非對稱加密,也稱為公開密鑰加密,密鑰是由公開密鑰和私有密鑰組成的密鑰對,用私有密鑰進行加密,利用公開密鑰可以進行解密,但是由于公開密鑰無法推算出私有密鑰,所以公開的密鑰并不會損害私有密鑰的安全,公開密鑰無需保密,可以公開傳播,而私有密鑰必須保密,丟失時需要報告鑒定中心。
目前的數字簽名技術采用的就是這種公鑰密碼技術。即利用兩個足夠大的質數與被加密原文相乘產生的積來加/解密。這兩個質數無論是用哪一個與被加密的原文相乘(模乘),即對原文件加密,均可由另一個質數再相乘來進行解密。但是,若想用這個乘積來求出另一個質數,就要對大數進行質因子分解,分解一個大數的質因子是十分困難的,若選用的質數足夠大,這種求解幾乎是不可能的。因此,將這兩個質數稱為密鑰對,其中一個采用私密的安全介質保密存儲起來,應不對任何外人泄露,簡稱為“私鑰”;另一個密鑰可以公開發表,用數字證書的方式發布在稱之為“網上黃頁”的目錄服務器上,用LDAP協議進行查詢,也可在網上請對方發送信息時主動將該公鑰證書傳送給對方,這個密鑰稱之為“公鑰”。
公鑰密碼體制下的數字簽名技術實際上是通過一個單向Hash函數[4]來實現的。信息的發送方從信息文本中生成一個128位的散列值(或消息摘要)。發送方用自己的私人密鑰對這個散列值進行加密形成發送方的數字簽名。然后,這個數字簽名將作為信息的附件和信息一起發送給信息的接收方。信息的接收方首先從接收到的原始信息中計算出128位的散列值(消息摘要),接著再用發送方的公用密鑰來對信息附加的數字簽名進行解密。如果兩個散列值相同,那么接收方就能確認該數字簽名是發送方的。
三、數字簽名技術的實現方法
1.數字簽名方法。建立在公開密鑰體系基礎上的數字簽名方法有很多,RSA簽名、DSS簽名及Hash簽名等。其中Hash簽名是目前電子商務安全中最主要的數字簽名方法。
Hash簽名[4]也稱之為數字摘要法(Digital Digest)或數字指紋法(Digital Finger Print)。該數字簽名方法是將數字簽名與要發送的信息緊密聯系在一起,它更適合于電子商務活動。將一個商務合同的個體內容與簽名結合在一起,比合同和簽名分開傳遞,更增加了可信度和安全性。數字摘要加密方法亦稱安全Hash編碼法(SHA:Secure Hash Algorithm)或MD5(MD Standard For Message Digest),由RonRivest所設計。該編碼法采用單向Hash函數將需加密的明文“摘要”成一串128bit的密文,這一串密文亦稱為數字指紋(Finger Print),它有固定的長度,且不同的明文摘要必定一致。這樣這串摘要使可成為驗證明文是否是“真身”的“指紋”了。
2.數字簽名的文件傳輸過程。只有加入數字簽名及驗證的文件才能真正實現在網絡上的安全傳輸。其傳輸過程如下:
(1)發送方首先用哈希函數從原文得到數字簽名,然后采用公開密鑰體系用發送方的私有密鑰對數字簽名進行加密,并把加密后的數字簽名附加在要發送的原文后面。(2)發送方選擇一個密鑰對文件進行加密,并把加密后的文件通過網絡傳輸到接收方。(3)發送方用接收方的公開密鑰對秘密密鑰進行加密,并通過網絡把加密后的秘密密鑰傳輸到接收方。(4)接受方使用自己的私有密鑰對密鑰信息進行解密,得到秘密密鑰的明文。(5)接收方用秘密密鑰對文件進行解密,得到經過加密的數字簽名。(6)接收方用發送方的公開密鑰對數字簽名進行解密,得到數字簽名的明文。(7)接收方用得到的明文和哈希函數重新計算數字簽名,并與解密后的數字簽名進行對比。如果兩個數字簽名是相同的,說明文件在傳輸過程中沒有被破壞。
如果第三方冒充發送方發出了一個文件,因為接收方在對數字簽名進行解密時使用的是發送方的公開密鑰,只要第三方不知道發送方的私有密鑰,解密出來的數字簽名和經過計算的數字簽名必然是不相同的。這就提供了一個安全的確認發送方身份的方法。
安全的數字簽名使接收方可以得到保證:文件確實來自聲稱的發送方。鑒于私鑰只有發送方自己保存,他人無法做一樣的數字簽名,因此他不能否認他參與了交易。
四、數字簽名技術在電子商務中的應用
將數字簽名技術應用于電子商務中,可以有效解決數據的否認、偽造、篡改及冒充等問題,其主要用途有三個方面:
1.驗證數據的完整性。這個功能能保證信息自簽發后到收到為止沒有做任何修改。因為當兩條信息摘要完全相同時,可以確信這兩條信息的內容完全一樣。因此,可以通過將信息發送前生成的信息摘要與接收后生成的信息摘要進行對比,來判斷信息在傳輸過程中是否被篡改或改變。由于信息摘要在發送之前,發送方使用私鑰進行加密,其他人要生成相同加密的信息摘要幾乎不可能,于是,接受方收到信息后,可以使用相同的函數變換,重新生成—個新的信息摘要,將接收到的信息摘要解密,然后進行對比,從而驗證信息的完整性。
2.驗證簽名者的身份。此功能證明信息是由簽名者發送的。因為數字簽名中,是使用公開密鑰加密算法,信息發送方是使用自己的私鑰對發送的信息進行加密的,只有持有私鑰的人才能對數據進行簽名,所以只要密鑰沒有被竊取,就可以肯定該數據是用戶簽發的。信息接收方可以使用發送方的公鑰對接受到的信息進行解密,因而,接收方一旦解密成功,就完全可以確認信息是由發送方發送的,同時也證實了信息發送方的身份。
3.防止交易中的抵賴行為。當交易中出現抵賴行為時,信息接收方可以將加了數字簽名的信息提供給認證方,由于帶有數字簽名的信息是由發送方的私鑰加密生成的,其他任何人不可能產生這種信息,而發送方的公鑰是公開的,任何人都可以獲得他的公鑰對信息解密。這樣認證方可以使用公鑰對接收方提供的信息解密,從而可以判斷發送方是否出現抵賴行為。
數字簽名技術具有良好的防偽造、防篡改、防拒認的功能,在電子商務領域中實現了傳統意義上簽名的功能,已經成為保障電子商務安全交易的關鍵技術之一。
五、結束語
數字簽名技術在電子商務活動中能有效解決否認、偽造、篡改及冒充等問題,但電子商務安全問題不僅僅是技術問題,還涉及到法律、道德、管理等諸多方面的因素。毫無疑問,隨著電子商務的蓬勃發展,數字簽名技術也將不斷成熟,為商務活動和人們的生活提供可靠、便利的服務。然而,我國數字簽名技術的研究和應用才剛剛起步,與國際先進水平還有一定差距。在數字簽名技術的應用過程中不可避免地會帶來一些問題,需要進一步加以解決。目前,還沒有一種電子商務安全的完整解決方案和完整模型與體系結構,我們離安全電子商務還有一段很長的距離,所以,需要不斷地研究探索,從而逐步完善電子商務系統的安全機制,有力推動電子商務以及其他網上業務的發展。
參考文獻:
[1]謝紅燕:電子商務的安全問題及對策研究[J].哈爾濱商業大學學報(自然科學版),2007,(3):350~358
[2]劉亞松:電子商務概論[M].機械工業出版社,2005
[3]楊波:現代密碼學[M].北京:清華大學出版社,2007
[4](美)Trappe等著:密碼學概論[M].鄒紅霞等譯,北京:人民郵電出版社,2004,(6):90~91
[5]石朝陽:淺析電子商務中的安全問題[J].大眾科技,2006,(4):71~72
[6]肖德琴:電子商務安全保密技術與應用[M].華南理工大學出版社,2005