- 相關(guān)推薦
基于PKI的電子商務(wù)信息安全性研究
[摘 要]針對電子商務(wù)中信息的機密性和完整性要求,文章提出了一種基于PKI機制的公鑰加密解決方法文章首先先容了PKI的定義和功能,接著(zhù)先容了公鑰密碼系統的加密算法,然后重點(diǎn)闡述了確保信息機密性和完整性的應用模型,從而為電子商務(wù)的信息安全提供了理論基礎[關(guān)鍵詞]電子商務(wù);PKI;公鑰密碼系統
前 言
電子商務(wù)(E-Commerce)是在Internet開(kāi)放的網(wǎng)絡(luò )環(huán)境下,基于瀏覽器服務(wù)器的應用方式,實(shí)現消費者的網(wǎng)上購物商戶(hù)之間的網(wǎng)上交易和在線(xiàn)電子支付的貿易運營(yíng)模式最近幾年,電子商務(wù)以其便利快捷的特點(diǎn)迅速發(fā)展起來(lái),但是安全題目一直是阻礙其發(fā)展的關(guān)鍵因素固然PKI的研究和應用為互聯(lián)網(wǎng)絡(luò )安全提供了必要的基礎設施,但是電子商務(wù)信息的機密性和完整性仍然是迫切需要解決的題目,本文針對這一題目展開(kāi)了深進(jìn)研究并提出了解決方法
1 PKI的定義和功能
PKI——公鑰基礎設施,是構建網(wǎng)絡(luò )應用的安全保障,專(zhuān)為開(kāi)放型大型互聯(lián)網(wǎng)的應用環(huán)境而設計PKI是對公鑰所表示的信任關(guān)系進(jìn)行治理的一種機制,它為Internet用戶(hù)和應用程序提供公鑰加密和數字簽名服務(wù),目的是為了治理密鑰和證書(shū),保證網(wǎng)上數字信息傳輸的機密性真實(shí)性完整性和不可否認性,以使用戶(hù)能夠可靠地使用非對稱(chēng)密鑰加密技術(shù)來(lái)增強自己的安全水平PKI的功能主要包括:公鑰加密證書(shū)發(fā)布證書(shū)確認證書(shū)撤銷(xiāo)
2 公鑰密碼系統
由于PKI廣泛應用于電子商務(wù),故文章重點(diǎn)放在討論RSA公鑰密碼系統上RSA的安全性是基于數論和計算復雜性理論中的下述論斷:求兩個(gè)大素數的乘積在計算上是輕易的,但若分解兩個(gè)大素數的積而求出它的因子則在計算上是困難的,它屬于NPI類(lèi)
2. 1RSA系統
RSA使用的一個(gè)密鑰對是由兩個(gè)大素數經(jīng)過(guò)運算產(chǎn)生的結果:其中一個(gè)是公鑰,為眾多實(shí)體所知;另外一個(gè)是私鑰,為了確保其保密性和完整性,必須嚴格控制并只有其所有者才能使用RSA加密算法的最基本特征就是用密鑰對中的一個(gè)密鑰加密的消息只能用另外一個(gè)解密,這也就體現了RSA系統的非對稱(chēng)性RSA具有加密和數字簽名功能RSA產(chǎn)生公鑰/私鑰對加解密的過(guò)程如下:
2. 1. 1產(chǎn)生一個(gè)公鑰/私鑰對
(1)選取兩個(gè)大素數p和q,為了獲得最大程度的安全性,兩個(gè)數的長(cháng)度最好相同兩個(gè)素數p和q必須保密
(2)計算p與q的乘積:n =p*q
(3)再由p和q計算另一個(gè)數z = (p-1)*(q-1)
(4)隨機選取加密密鑰e,使e和z互素
(5)用歐幾里得擴展算法計算解密密鑰d,以滿(mǎn)足e*d = 1mod(z)
(6)由此而得到的兩組數(n,e)和(n,d)分別被稱(chēng)為公鑰和私鑰
2. 1. 2加密/解密過(guò)程
RSA的加密方法是一個(gè)實(shí)體用另外一個(gè)實(shí)體的公鑰完成加密過(guò)程,這就答應多個(gè)實(shí)體發(fā)送一個(gè)實(shí)體加密過(guò)的消息而不用事先交換秘密鑰或者私鑰,并且由于加密是用公鑰執行的,所以解密只能用其對應的私鑰來(lái)完成,因此只有目標接受者才能解密并讀取原始消息
在實(shí)際操縱中,RSA采用一種分組加密算法,加密消息m時(shí),首先將它分成比n小的數據分組(采用二進(jìn)制數,選取小于n的2的最大次冪),加密后的密文c,將由相同長(cháng)度的分組ci組成加密公式簡(jiǎn)化為:
ci =mie(modn)
即對于明文m,用公鑰(n,e)加密可得到密文c:
c = memod n ,其中m = {mi|i=0,1,2,…},c= (ci|i=0,1,2,…)
解密消息時(shí),取每一個(gè)加密后的分組ci并計算:mi=ci d(mod n),便能恢復出明文即對于密文c,用接收者的私鑰(n,d)解密可得到明文m:
m = cd mod nm = {mi|i=0,1,2,…},c= (ci|i=0,1,2,…)
2. 1. 3數字簽名
RSA的數字簽名是加密的相反方式,即由一個(gè)實(shí)體用它的私鑰將明文加密而天生的這種加密答應一個(gè)實(shí)體向多個(gè)實(shí)體發(fā)送消息,并且事先不需交換秘密鑰或加密私鑰,接收者用發(fā)送者的公鑰就可以解密
RSA的數字簽名過(guò)程如下:
s = md mod n , 其中m是消息,s是數字簽名的結果,d和n是消息發(fā)送者的私鑰
消息的解密過(guò)程如下:
m = se mod n , 其中e和n是發(fā)送者的公鑰
2. 1. 4散列(Hash)函數
MD5與SHA1都屬于Hash函數標準算法中兩大重要算法,就是把一個(gè)任意長(cháng)度的信息經(jīng)過(guò)復雜的運算變成一個(gè)固定長(cháng)度的數值或者信息串,主要用于證實(shí)原文的完整性和正確性,是為電子文件加密的重要工具一般來(lái)說(shuō),對于給出的一個(gè)文件要算它的Hash碼很輕易,但要從Hash碼找出相應的文件算法卻很難Hash函數最根本的特點(diǎn)是這種變換具有單向性,一旦數據被轉換,就無(wú)法再以確定的方法獲得其原始值,從而無(wú)法控制變換得到的結果,達到防止信息被篡改的目的由于Hash函數的這種不可逆特性,使其非常適合被用來(lái)確定原文的完整性,從而被廣泛用于數字簽名
2. 2對稱(chēng)密碼系統
對稱(chēng)密碼系統的基本特點(diǎn)是解密算法就是加密算法的逆運算,加秘密鑰就是解秘密鑰它通常用來(lái)加密帶有大量數據的報文和問(wèn)卷通訊的信息,由于這兩種通訊可實(shí)現高速加密算法在對稱(chēng)密碼系統中發(fā)送者和接收者之間的密鑰必須安全傳送,而雙方實(shí)體通訊所用的秘密鑰也必須妥善保管
3 應用模型
利用公鑰加密系統可以解決電子商務(wù)中信息的機密性和完整性的要求,下面是具體的應用模型在本例中,Alice與Bob兩個(gè)實(shí)體共享同一個(gè)信任點(diǎn),即它們使用同一CA簽發(fā)的數字證書(shū)因此,它們無(wú)需評價(jià)信任鏈往決定是否信任其他CA
3. 1預備工作
(1)Alice與Bob各自天生一個(gè)公鑰/私鑰對;
(2)Alice與Bob向RA(代理機構)提供各自的公鑰名稱(chēng)和描述信息;
(3)RA審核它們的身份并向CA提交證書(shū)申請;
(4)CA格式化Alice和Bob的公鑰及其他信息,為Alice和Bob分別天生公鑰證書(shū),然后用自己的私鑰對證書(shū)進(jìn)行數字簽名;
(5)上述過(guò)程的結果是,Alice與Bob分別擁有各自的一個(gè)公鑰/私鑰對和公鑰證書(shū);
(6)Alice與Bob各自天生一個(gè)對稱(chēng)秘密鑰
現在,Alice和Bob擁有各自的一個(gè)公鑰/私鑰對,由共同信任的第三方頒發(fā)的數字證書(shū)以及一個(gè)對稱(chēng)密鑰
3. 2處理過(guò)程
假設現在A(yíng)lice欲發(fā)送消息給Bob,并且要求確保數據的完整性,即消息內容不能發(fā)生變動(dòng);同時(shí)Alice和Bob都?创_保信息的機密性,即不容許除雙方之外的其他實(shí)體能夠查看該消息完成這樣要求的處理過(guò)程如下:其中步驟1~5說(shuō)明Alice加密消息過(guò)程;步驟6~10說(shuō)明Bob解密消息的過(guò)程 (1)Alice按照雙方約定的規則格式化消息,然后用Hash函數取得該消息的散列值,該值將被用來(lái)測試消息的正當性和完整性
(2)Alice用私鑰對消息和散列值進(jìn)行簽名(加密)這一簽名確保了消息的完整性,由于Bob以為只有Alice能夠天生該簽名,這是由于只有Alice能夠使用自己的私鑰為該消息簽名值得留意的是:現在任何有權訪(fǎng)問(wèn)Alice公鑰的實(shí)體都能解密該被簽名的消息,所以我們僅僅是保證了消息的完整性,而沒(méi)有確保其機密性
(3)由于A(yíng)lice和Bob之間想保持消息的機密性,所以Alice用它的對稱(chēng)秘密鑰加密被簽名的消息和散列值這一對稱(chēng)秘密鑰只有Alice和Bob共享而不被其他實(shí)體所用留意,在本例中,我們使用了一個(gè)對稱(chēng)秘密鑰,這是由于對于加密較長(cháng)消息諸如訂購信息來(lái)說(shuō),利用對稱(chēng)加密比公鑰加密更為有效
(4)Alice必須向Bob提供它用來(lái)給消息加密的對稱(chēng)秘密鑰,以使得Bob能夠用其解密被Alice加密過(guò)的消息Alice用Bob的公鑰將自己的對稱(chēng)秘密鑰簽名(加密),這里我們假設Alice事先已經(jīng)獲得Bob的公鑰,這樣就形成了一個(gè)數字信箋,并且只有Bob才能將其打開(kāi)(解密),由于只有Bob能夠訪(fǎng)問(wèn)用來(lái)打開(kāi)該數字信箋的私鑰留意,一個(gè)公鑰/私鑰對中,用其中一個(gè)密鑰加密的信息只有用另外一個(gè)密鑰才能解密這就為Alice向Bob傳輸對稱(chēng)秘密鑰提供了機密性
(5)Alice發(fā)送給Bob的信息包括它用對稱(chēng)秘密鑰加密的原始消息和散列值,以及用Bob公鑰加密的包含Alice的對稱(chēng)秘密鑰的數字信箋圖1描述了Alice使用數字簽名向Bob發(fā)送消息(步驟1~5)
(6)Bob用它的私鑰打開(kāi)(解密)來(lái)自于A(yíng)lice的數字信箋完成這一過(guò)程將使Bob獲得Alice以前用來(lái)加密消息和散列值的對稱(chēng)秘密鑰
(7)Bob現在可以打開(kāi)(解密)用Alice的對稱(chēng)秘密鑰加密的消息和散列值解密后Bob得到了用Alice的私鑰簽名的消息和散列值
(8)Bob用Alice的公鑰解密簽名的消息和散列值留意,一個(gè)公鑰/私鑰對中,用其中一個(gè)密鑰加密的信息只有用另外一個(gè)密鑰才能解密
(9)為了證實(shí)消息沒(méi)有經(jīng)過(guò)任何改動(dòng),Bob將原始消息采用與Alice最初使用的完全一致的Hash函數進(jìn)行轉化
(10)最后,Bob將得出的散列值與它從所收消息中解密出來(lái)的散列值對比,若二者相同,則證實(shí)了消息的完整性圖2描述了Bob解密和對比散列值的過(guò)程(步驟6~10)
3. 3實(shí)現方法
采用Java語(yǔ)言實(shí)現系統,Java語(yǔ)言本身提供了一些基本的安全方面的函數,我們可以在此基礎上實(shí)現更為復雜和有效的應用系統系統中主要的類(lèi)實(shí)現如下:
(1)Data Encryption類(lèi)該類(lèi)主要實(shí)現明文向密文的轉換,依據RSA算法的規則實(shí)現非對稱(chēng)加密,其中密鑰長(cháng)度為128位每次可加密數據的最大長(cháng)度為512字節,因此對于較長(cháng)數據的加密需要劃分適當大小的數據塊
(2)Data Hash類(lèi)該類(lèi)完成對所要加密消息產(chǎn)生對應的散列值,對于不同的消息,散列值是不相同的可以借助Java中提供的Hash函數來(lái)實(shí)現
(3)Data Decryption類(lèi)該類(lèi)主要實(shí)現密文向明文的轉換,依據依據RSA算法的規則,利用加密方的公鑰對密文進(jìn)行解密,并將解密后的明文按序排好
4 結束語(yǔ)
文章以PKI理論為基礎,利用公鑰密碼系統確保了電子商務(wù)過(guò)程中所傳輸消息的完整性,使用對稱(chēng)加密系統實(shí)現對較長(cháng)消息的加密,并保證了消息的機密性文章的理論研究和實(shí)現方法,對于保障電子商務(wù)活動(dòng)中消息的完整性和機密性具有重要的指導意義
主要參考文獻
[1] 周學(xué)廣,劉藝. 信息安全學(xué)[M]. 北京:機械產(chǎn)業(yè)出版社,2004.
[2] J. Cha,J. H. Cheon.An Identiry-based Signature from Gap Ditfie-Heilman Groups[C]//. Public Key Cryptography-PKC 1003, LNCS 2567, Spinger-Verlag, 2003.
[3] M. Abdalla, L. Reyzin. A New Forward——Secure Digital Signature Scheme[C]. //In Advances in Cryptology, Proc. Of Astacrypt 2000, LNCS, Springer-Verlag, 2000.
【基于PKI的電子商務(wù)信息安全性研究】相關(guān)文章:
PKI技術(shù)及其在電子商務(wù)中的應用研究03-21
基于電子商務(wù)的物流模式研究12-07
電子商務(wù)中的網(wǎng)上支付安全性研究02-28
基于愛(ài)好的電子商務(wù)數據挖掘技術(shù)的研究12-08
基于Internet的電子商務(wù)安全治理策略研究03-21
基于門(mén)限ECC的電子商務(wù)安全機制研究03-21
TCP/IP安全性研究03-08