① CA證書偽造如果我是釣魚網站,在用戶訪問我的時候我拿著用戶的信息
有可為,有可不為啊。現在打擊這么的嚴格。別把自己玩不見了。
② 微軟數字簽名不能偽造
木馬製造者可以通過兩種方式使用自己的木馬也有正確的數字簽名(windows認可的專):
1、通屬過正規商業途徑,花錢到國外正規商業數字證書提供商那裡購買,如verisign,在購買時,verisign會讓木馬製造者提供相關身份證明和申請資料,並需要傳真到verisign,verisign審核通過後,會給他一個代碼簽名證書,然後用代碼簽名證書對木馬進行簽名。但verisign有權廢除這張證書。
2、獲取測試用代碼簽名證書,也是從國外正規商業數字證書提供商,一般這種證書只能一個月左右的有效期。
還有一種,就是木馬製造者自己生成代碼簽名證書,但是需要在它的木馬中將自己生成的CA證書也安裝在電腦上。但是有點多此一舉,不對木馬做簽名,也照樣能夠產生想要的破壞效果。
明白?
③ 電子合同中的數字簽名技術是如何防止偽造信息的
數字簽名的使用可以保證發送方不能否認和偽造信息,是一種安全措施。
在公鑰密碼學中,密鑰是由公開密鑰和私有密鑰組成的密鑰對。數字簽名就是用私有密鑰進行加密,接收方用公開密鑰進行解密。由於公開密鑰不能推算出私有密鑰,所以公開密鑰不會損壞私有密鑰的安全,公開密鑰無需保密可以公開傳播,而私有密鑰必須保密。
因此,當某人用其私有密鑰加密信息,能夠用TA的公開密鑰正確解密就可以肯定該消息是經過某人簽字的,因為其他人的公開密鑰不可能正確解密該加密信息,其他人也不可能擁有該人的私有密鑰而製造出該加密過的信息。
就其實質而言,數字簽名是接收方能夠向第三方證明接收到的消息及發送源的真實性而採取的一種安全措施,其使用可以保證發送方不能否認和偽造信息。
數字簽名的主要方式是:報文的發送方從報文文本中生成一個散列值(或報文摘要),發送方用自己的私有密鑰對這個散列值進行加密來形成發送方的數字簽名,然後這個數字簽名將作為報文的附件和報文一起發送給報文的接收方,報文的接收方首先從接收到的原始報文中計算出散列值(或報文摘要),接著再用發送方的公開密鑰來對報文附加的數字簽名進行解密,如果兩個散列值相同,那麼接收方就能確認該數字簽名是發送方的。
④ 為什麼偽造SHA-1證書比找SHA-1哈希碰撞難
眾所周知,SHA-1不是一個安全的加密哈希函數。研究人員現在認為找到一對沖突的哈希值(即兩次不同輸入的哈希運算得出了相同的哈希值)是不可避免的,可能未來一個月內就會出現。這就對網路構成了潛在的威脅,因為如今很多網站依舊使用基於SHA-1的數字簽名證書。幸運的是,僅僅只是找到一對沖突的哈希值是不足以偽造數字證書並打破網路信任模型的。
本文將講述如何利用哈希碰撞來偽造數字證書,以及證書頒發機構如何通過例如使用隨機證書序列號等措施使得攻擊者更加難以偽造數字證書。
數字簽名是信任的基石
互聯網依賴於信任。無論你是登錄網上銀行或是瀏覽Reddit,HTTPS始終通過加密通信數據和驗證網站數字證書保護著你。而大多瀏覽器在訪問使用HTTPS的網站時都會非常直觀的在地址欄上掛上一把鎖。
當目標網站擁有一個包含所有者身份信息和主機名的數字證書時,HTTPS可以向瀏覽器證實當前網站的真實性。證書是一個由可信的第三方證書頒發機構頒發的包含數字簽名的小文件。對瀏覽器來說,數字簽名是信任的來源。如果你瀏覽器認為證書上面的數字簽名是正確的,則瀏覽器會信任這個證書。這個用於身份認證的系統稱為公鑰基礎設施(Public Key Infrastructure, PKI)。
假如數字簽名無法在被信任,那麼所有依賴數字簽名的系統都將崩潰。例如有人可以偽造出一個來自受信任CA頒發的cloudflare.com證書,他就可以偽造成cloudflare.com欺騙瀏覽者。
數字簽名是一個基於消息和公鑰計算出的一串數字。每個數字簽名都需要一個公私鑰對和一個哈希函數。其中,哈希函數是用來將消息替換為一個唯一的摘要,私鑰用來進行簽名,公鑰用來對簽名進行驗證。
例如,創建一個RSA簽名,你需要計算消息的哈希值,隨後使用私鑰加密這個計算出的哈希值。任何人都可以驗證這個簽名是否屬於你,並可以驗證消息的真實性。只需要獲取到公鑰,然後進行解密運算,將解密運算得出的值與源消息的哈希值進行比較,如果兩個值相匹配,我們就認為數字簽名是正確的。
⑤ 數字證書與電子印章的區別
一、性質不同
1、數字證書:是指CA機構發行的一種電子文檔,是一串能夠表明網路用戶身份信息的數字,提供了一種在計算機網路上驗證網路用戶身份的方式,因此數字證書又稱為數字標識。
2、電子印章:是電子形式的數據,是與數據電文(電子文件、電子信息)相聯系的用於識別簽名人的身份和表明簽名人認可該數據電文內容的數據。
二、使用特點不同
1、數字證書:用戶申請證書時會有兩份不同證書,分別用於工作電腦以及用於驗證用戶的信息交互,若所使用電腦不同,用戶就需重新獲取用於驗證用戶所使用電腦的證書,而無法進行備份,這樣即使他人竊取了證書,也無法獲取用戶的賬戶信息,保障了賬戶信息。
2、電子印章:電子印章克服了傳統印章的許多缺陷,安全性有了更好的保障。電子印章符合傳統習慣,在傳統辦公行文模式向信息化辦公行文模式過渡階段,使得電子簽名可視化,對電子簽名的推廣應用起到了促進作用。
(5)數字證書偽造擴展閱讀:
電子印章的具體做法:
將電子文書內容的數字簽名通過數字水印、加密等技術,使其和電子印章圖像進行有效的綁定(如利用隱藏技術將數據隱藏在電子印章的圖像中等)。
驗證電子印章真偽的過程其實就是驗證數字簽名的過程。只有通過電子簽名/驗證技術證明與電子印章相關聯的電子文書是真實的,電子印章圖像才被承認是有效的,否則電子印章不可顯示或只能是一個沒有法律效力的圖片而已。
⑥ 淘寶數字證書是什麼
1、數字證書是什麼可真不太好解釋,就是我們的電腦的瀏覽器可以調用的一個小玩意兒專,它通過一屬種比較可靠的加密方式,使得別人很難偽造和破解它。
2、淘寶數字證書就是淘寶網站做出來的一種數字證書的小玩意兒,一但開起了這個功能,你每一次支付時,淘寶站都會要求你操作的電腦上安裝有這個數字證書,並進行核對。如果沒安裝,就不能進行下一步的操作,也就是沒法支付等重要操作。
3、數字證書可以導出成一個小小的「證書文件」,這個文件可以很方便的通過U盤或電子郵件或網盤發到別的電腦上去(導出的時候你可以設定導入導出密碼哦),因此,如果你要在別的電腦上用,請將這個導出的證書在別的電腦上安裝一下就可以了。
4、當然,所謂的「安全」是相對的……這方面的東西是另外的話題了。
⑦ 數字簽名和數字證書區別
1、數字證書抄是由權威機構--CA證書授權(Certificate Authority)中心發行的如wosign ca,能提供在Internet上進行身份驗證的一種權威性電子文檔,人們可以在互聯網交往中用它來證明自己的身份和識別對方的身份。
2、數字簽名(又稱公鑰數字簽名、電子簽章)是一種類似寫在紙上的普通的物理簽名,但是使用了公鑰加密領域的技術實現,用於鑒別數字信息的方法。一套數字簽名通常定義兩種互補的運算,一個用於簽名,另一個用於驗證
3、數字證書好比現實中你的身份證;數字簽名 好比現實中你的簽字。
⑧ 電子合同中的電子簽名怎麼能證明是這個人簽的,而不是偽造的
能有效證明「你是誰」的最大證據就是身份證。如果你想證明一份合法有效的合同是由你簽署,同樣需要確定你的合法身份。和證明「你是誰」不同的是,電子合同只能在互聯網上進行身份認證。
身份認證,即實名認證,是指通過一定的手段,完成對用戶身份的確認。在電子合同領域,企業用戶和個人用戶在簽署電子合同之前必須在電子合同平台進行實名認證,確保簽約行為的真實性、合法性、安全性。
電子合同是通過計算機網路系統訂立,以數據電文的方式生成、儲存或傳遞的合同。電子合同簽署全過程(包括實名認證、數字證書簽發和管理、簽章樣式設置、可靠電子簽名、存證出證、司法鑒定、網路仲裁等服務)都在互聯網上進行。
實名認證是電子合同服務鏈條中最關鍵的環節,用來建立使用電子合同系統的用戶和他的真實身份關系。通過實名認證,能夠確保電子合同的簽約行為是對應主體的真實行為和真實意願表達,可以有效避免使用假身份或冒用他人身份進行電子合同簽署情況,確保電子合同證據鏈的完整。
實名認證之後,企業用戶或個人用戶即可在第三方電子合同平台發送電子合同或者進行電子合同簽署動作。同時,針對平台實名認證用戶,第三方電子合同平台可以更大程度地保障糾紛發生後存證出證、司法鑒定、網路仲裁等環節的順利開展,有效維護合同簽署雙方的合法權益。
但是,如果用戶並沒有實名認證,電子合同平台就沒辦法確認用戶的真實身份,也無法准確核實用戶提供的身份信息和聯系方式是否其本人提供。那麼此用戶在進行電子合同簽署環節將收到響應風險提示,而與其簽署電子合同的另一方也會收到風險提示,可能導致電子簽約過程受阻,影響正常的合作。
⑨ 數字證書是怎麼回事啊
1.什麼是數字證書?
數字證書就是網路通訊中標志通訊各方身份信息的一系列數據,其作用類似於現實生活中的身份證。它是由一個權威機構發行的,人們可以在交往中用它來識別對方的身份。
最簡單的證書包含一個公開密鑰、名稱以及證書授權中心的
數字簽名。一般情況下證書中還包括密鑰的有效時間,發證機關(證書授權中心)的名稱,該證書的序列號等信息,證書的格式遵循ITUT X.509國際標准。
一個標準的X.509數字證書包含以下一些內容:
證書的版本信息;
證書的序列號,每個證書都有一個唯一的證書序列號;
證書所使用的簽名演算法;
證書的發行機構名稱,命名規則一般採用X.500格式;
證書的有效期,現在通用的證書一般採用UTC時間格式,它的計時范圍為1950-2049;
證書所有人的名稱,命名規則一般採用X.500格式;
證書所有人的公開密鑰;
證書發行者對證書的簽名。
使用數字證書,通過運用對稱和非對稱密碼體制等密碼技術建立起一套嚴密的身份認證系統,從而保證:信息除發送方和接收方外不被其它人竊取;信息在傳輸過程中不被篡改;發送方能夠通過數字證書來確認接收方的身份;發送方對於自己的信息不能抵賴。
2.為什麼要使用數字證書?
由於Internet網電子商務系統技術使在網上購物的顧客能夠極其方便輕松地獲得商家和企業的信息,但同時也增加了對某些敏感或有價值的數據被濫用的風險。買方和賣方都必須保證在網際網路上進行的一切金融交易運作都是真實可靠的,並且要使顧客、商家和企業等交易各方都具有絕對的信心,因而網際網路電子商務系統必須保證具有十分可靠的安全保密技術,也就是說,必須保證網路安全的四大要素,即信息傳輸的保密性、數據交換的完整性、發送信息的不可否認性、交易者身份的確定性。
信息的保密性
交易中的商務信息均有保密的要求,如信用卡的帳號和用戶名被人知悉,就可能被盜用,訂貨和付款的信息被競爭對手獲悉,就可能喪失商機。因此在電子商務的信息傳播中一般均有加密的要求。
交易者身份的確定性
網上交易的雙方很可能素昧平生,相隔千里。要使交易成功首先要能確認對方的身份,商家要考慮客戶端是不是騙子,而客戶也會擔心網上的商店不是一個玩弄欺詐的黑店。因此能方便而可靠地確認對方身份是交易的前提。對於為顧客或用戶開展服務的銀行、信用卡公司和銷售商店,為了做到安全、保密、可靠地開展服務活動,都要進行身份認證的工作。對有關的銷售商店來說,他們對顧客所用的信用卡的號碼是不知道的,商店只能把信用卡的確認工作完全交給銀行來完成。銀行和信用卡公司可以採用各種保密與識別方法,確認顧客的身份是否合法,同時還要防止發生拒付款問題以及確認訂貨和訂貨收據信息等。
不可否認性
由於商情的千變萬化,交易一旦達成是不能被否認的。否則必然會損害一方的利益。例如訂購黃金,訂貨時金價較低,但收到訂單後,金價上漲了,如收單方能否認受到訂單的實際時間,甚至否認收到訂單的事實,則訂貨方就會蒙受損失。因此電子交易通信過程的各個環節都必須是不可否認的。
不可修改性
由於商情的千變萬化,交易一旦達成應該是不能被否認的。否則必然會損害一方的利益。例如訂購黃金,訂貨時金價較低,但收到訂單後,金價上漲了,如收單方能否認收到訂單的實際時間,甚至否認收到訂單的事實,則訂貨方就會蒙受損失。因此電子交易通信過程的各個環節都必須是不可否認的。
數字安全證書提供了一種在網上驗證身份的方式。安全證書體制主要採用了公開密鑰體制,其它還包括對稱密鑰加密、數字簽名、數字信封等技術。
我們可以使用數字證書,通過運用對稱和非對稱密碼體制等密碼技術建立起一套嚴密的身份認證系統,從而保證:信息除發送方和接收方外不被其它人竊取;信息在傳輸過程中不被篡改;發送方能夠通過數字證書來確認接收方的身份;發送方對於自己的信息不能抵賴。
3.數字認證原理
數字證書採用公鑰體制,即利用一對互相匹配的密鑰進行加密、解密。每個用戶自己設定一把特定的僅為本人所知的私有密鑰(私鑰),用它進行解密和簽名;同時設定一把公共密鑰(公鑰)並由本人公開,為一組用戶所共享,用於加密和驗證簽名。當發送一份保密文件時,發送方使用接收方的公鑰對數據加密,而接收方則使用自己的私鑰解密,這樣信息就可以安全無誤地到達目的地了。通過數字的手段保證加密過程是一個不可逆過程,即只有用私有密鑰才能解密。
在公開密鑰密碼體制中,常用的一種是RSA體制。其數學原理是將一個大數分解成兩個質數的乘積,加密和解密用的是兩個不同的密鑰。即使已知明文、密文和加密密鑰(公開密鑰),想要推導出解密密鑰(私密密鑰),在計算上是不可能的。按現在的計算機技術水平,要破解目前採用的1024位RSA密鑰,需要上千年的計算時間。公開密鑰技術解決了密鑰發布的管理問題,商戶可以公開其公開密鑰,而保留其私有密鑰。購物者可以用人人皆知的公開密鑰對發送的信息進行加密,安全地傳送以商戶,然後由商戶用自己的私有密鑰進行解密。
如果用戶需要發送加密數據,發送方需要使用接收方的數字證書(公開密鑰)對數據進行加密,而接收方則使用自己的私有密鑰進行解密,從而保證數據的安全保密性。
另外,用戶可以通過數字簽名實現數據的完整性和有效性,只需採用私有密鑰對數據進行加密處理,由於私有密鑰僅為用戶個人擁有,從而能夠簽名文件的唯一性,即保證:數據由簽名者自己簽名發送,簽名者不能否認或難以否認;數據自簽發到接收這段過程中未曾作過任何修改,簽發的文件是真實的。
[page]
4.數字證書是如何頒發的?
數字證書是由認證中心頒發的。根證書是認證中心與用戶建立信任關系的基礎。在用戶使用數字證書之前必須首先下載和安裝。
認證中心是一家能向用戶簽發數字證書以確認用戶身份的管理機構。為了防止數字憑證的偽造,認證中心的公共密鑰必須是可靠的,認證中心必須公布其公共密鑰或由更高級別的認證中心提供一個電子憑證來證明其公共密鑰的有效性,後一種方法導致了多級別認證中心的出現。
數字證書頒發過程如下:用戶產生了自己的密鑰對,並將公共密鑰及部分個人身份信息傳送給一家認證中心。認證中心在核實身份後,將執行一些必要的步驟,以確信請求確實由用戶發送而來,然後,認證中心將發給用戶一個數字證書,該證書內附了用戶和他的密鑰等信息,同時還附有對認證中心公共密鑰加以確認的數字證書。當用戶想證明其公開密鑰的合法性時,就可以提供這一數字證書。
5.加密技術
由於數據在傳輸過程中有可能遭到侵犯者的竊聽而失去保密信息,加密技術是電子商務採取的主要保密安全措施,是最常用的保密安全手段。加密技術也就是利用技術手段把重要的數據變為亂碼(加密)傳送,到達目的地後再用相同或不同的手段還原(解密)。
加密包括兩個元素:演算法和密鑰。一個加密演算法是將普通的文本(或者可以理解的信息)與一竄數字(密鑰)的結合,產生不可理解的密文的步驟。密鑰和演算法對加密同等重要。
密鑰是用來對數據進行編碼和解碼的一種演算法。在安全保密中,可通過適當的密鑰加密技術和管理機制,來保證網路的信息通訊安全。密鑰加密技術的密碼體制分為對稱密鑰體制和非對稱密鑰體制兩種。
相應地,對數據加密的技術分為兩類,即對稱加密(私人密鑰加密)和非對稱加密(公開密鑰加密)。對稱加密以數據加密標准(DNS,Data Encryption Standard)演算法為典型代表,非對稱加密通常以RSA(Rivest Shamir Ad1eman)演算法為代表。對稱加密的加密密鑰和解密密鑰相同,而非對稱加密的加密密鑰和解密密鑰不同,加密密鑰可以公開而解密密鑰需要保密。
6.對稱加密技術
對稱加密採用了對稱密碼編碼技術,它的特點是文件加密和解密使用相同的密鑰,即加密密鑰也可以用作解密密鑰。這種方法在密碼學中叫做對稱加密演算法,對稱加密演算法使用起來簡單快捷,密鑰較短,且破譯困難,除了數據加密標准(DNS),另一個對稱密鑰加密系統系統是國際數據加密演算法(IDEA),它比DNS的加密性好,而且對計算機功能要求也沒有那麼高。IDEA加密標准由PGP(Pretty Good Privacy)系統使用。
對稱加密演算法在電子商務交易過程中存在幾個問題:
(1)要求提供一條安全的渠道使通訊雙方在首次通訊時協商一個共同的密鑰。直接的面對面協商可能是不現實而且難於實施的,所以雙方可能需要藉助於郵件和電話等其它相對不夠安全的手段來進行協商;
(2)密鑰的數目難於管理。因為對於每一個合作者都需要使用不同的密鑰,很難適應開放社會中大量的信息交流;
(3)對稱加密演算法一般不能提供信息完整性的鑒別。它無法驗證發送者和接受者的身份;
(4)對稱密鑰的管理和分發工作是一件具有潛在危險的和煩瑣的過程。對稱加密是基於共同保守秘密來實現的,採用對稱加密技術的貿易雙方必須保證採用的是相同的密鑰,保證彼此密鑰的交換是安全可靠的,同時還要設定防止密鑰泄密和更改密鑰的程序。
7.非對稱加密技術
1976年,美國學者Dime和Henman為解決信息公開傳送和密鑰管理問題,提出一種新的密鑰交換協議,允許在不安全的媒體上的通訊雙方交換信息,安全地達成一致的密鑰,這就是「公開密鑰系統」。相對於「對稱加密演算法」這種方法也叫做「非對稱加密演算法」。
與對稱加密演算法不同,非對稱加密演算法需要兩個密鑰:公開密鑰(publickey)和私有密鑰(privatekey)。公開密鑰與私有密鑰是一對,如果用公開密鑰對數據進行加密,只有用對應的私有密鑰才能解密;如果用私有密鑰對數據進行加密,那麼只有用對應的公開密鑰才能解密。因為加密和解密使用的是兩個不同的密鑰,所以這種演算法叫作非對稱加密演算法。
貿易方利用該非對稱加密演算法實現機密信息交換的基本過程是:貿易方甲生成一對密鑰並將其中的一把作為公用密鑰向其他貿易方公開;得到該公用密鑰的貿易方乙使用該密鑰對機密信息進行加密後再發送給貿易方甲;貿易方甲再用自己保存的另一把專用密鑰對加密後的信息進行解密。貿易方甲只能用其專用密鑰解密由其公用密鑰加密後的任何信息。
非對稱加密演算法的保密性比較好,它消除了最終用戶交換密鑰的需要,但加密和解密花費時間長、速度慢,它不適合於對文件加密而只適用於對少量數據進行加密。
在微軟的Window NT的安全性體系結構中,公開密鑰系統主要用於對私有密鑰的加密過程。每個用戶如果想要對數據進行加密,都需要生成一對自己的密鑰對(keypair)。密鑰對中的公開密鑰和非對稱加密解密演算法是公開的,但私有密鑰則應該由密鑰的主人妥善保管。
使用公開密鑰對文件進行加密傳輸的實際過程包括四步:
(1)發送方生成一個自己的私有密鑰並用接收方的公開密鑰對自己的私有密鑰進行加密,然後通過網路傳輸到接收方;
(2)發送方對需要傳輸的文件用自己的私有密鑰進行加密,然後通過網路把加密後的文件傳輸到接收方;
(3)接收方用自己的公開密鑰進行解密後得到發送方的私有密鑰;
(4)接受方用發送方的私有密鑰對文件進行解密得到文件的明文形式。
因為只有接收方才擁有自己的公開密鑰,所以即使其他人得到了經過加密的發送方的私有密鑰,也因為無法進行解密而保證了私有密鑰的安全性,從而也保證了傳輸文件的安全性。實際上,上述在文件傳輸過程中實現了兩個加密解密過程:文件本身的加密和解密與私有密鑰的加密解密,這分別通過私有密鑰和公開密鑰來實現。
8.數字簽名技術
對文件進行加密只解決了傳送信息的保密問題,而防止他人對傳輸的文件進行破壞,以及如何確定發信人的身份還需要採取其它的手段,這一手段就是數字簽名。在電子商務安全保密系統中,數字簽名技術有著特別重要的地位,在電子商務安全服務中的源鑒別、完整性服務、不可否認服務中,都要用到數字簽名技術。在電子商務中,完善的數字簽名應具備簽字方不能抵賴、他人不能偽造、在公證人面前能夠驗證真偽的能力。
實現數字簽名有很多方法,目前數字簽名採用較多的是公鑰加密技術,如基於RSA Date Security公司的PKCS(Public Key Cryptography Standards)、Digital Signature Algorithm、x.509、PGP(Pretty Good Privacy)。1994年美國標准與技術協會公布了數字簽名標准而使公鑰加密技術廣泛應用。公鑰加密系統採用的是非對稱加密演算法。
目前的數字簽名是建立在公共密鑰體制基礎上,它是公用密鑰加密技術的另一類應用。它的主要方式是,報文的發送方從報文文本中生成一個128位的散列值(或報文摘要)。發送方用自己的私人密鑰對這個散列值進行加密來形成發送方的數字簽名。然後,這個數字簽名將作為報文的附件和報文一起發送給報文的接收方。報文的接收方首先從接收到的原始報文中計算出128位的散列值(或報文摘要),接著再用發送方的公用密鑰來對報文附加的數字簽名進行解密。如果兩個散列值相同、那麼接收方就能確認該數字簽名是發送方的。通過數字簽名能夠實現對原始報文的鑒別。
在書面文件上簽名是確認文件的一種手段,其作用有兩點:第一,因為自己的簽名難以否認,從而確認了文件已簽署這一事實;第二,因為簽名不易仿冒,從而確定了文件是真的這一事實。
數字簽名與書面文件簽名有相同之處,採用數字簽名,也能確認以下兩點:第一,信息是由簽名者發送的;第二,信息自簽發後到收到為止未曾作過任何修改。這樣數字簽名就可用來防止電子信息因易被修改而有人作偽,或冒用別人名義發送信息。或發出(收到)信件後又加以否認等情況發生。
應用廣泛的數字簽名方法主要有三種,即:RSA簽名、DSS簽名和Hash簽名。這三種演算法可單獨使用,也可綜合在一起使用。數字簽名是通過密碼演算法對數據進行加、解密變換實現的,用DES算去、RSA演算法都可實現數字簽名。但三種技術或多或少都有缺陷,或者沒有成熟的標准。
用RSA或其它公開密鑰密碼演算法的最大方便是沒有密鑰分配問題(網路越復雜、網路用戶越多,其優點越明顯)。因為公開密鑰加密使用兩個不同的密鑰,其中有一個是公開的,另一個是保密的。公開密鑰可以保存在系統目錄內、未加密的電子郵件信息中、電話黃頁(商業電話)上或公告牌里,網上的任何用戶都可獲得公開密鑰。而私有密鑰是用戶專用的,由用戶本身持有,它可以對由公開密鑰加密信息進行解密。
RSA演算法中數字簽名技術實際上是通過一個哈希函數來實現的。數字簽名的特點是它代表了文件的特徵,文件如果發生改變,數字簽名的值也將發生變化。不同的文件將得到不同的數字簽名。一個最簡單的哈希函數是把文件的二進制碼相累加,取最後的若干位。哈希函數對發送數據的雙方都是公開的。
DSS數字簽名是由美國國家標准化研究院和國家安全局共同開發的。由於它是由美國政府頒布實施的,主要用於與美國政府做生意的公司,其他公司則較少使用,它只是一個簽名系統,而且美國政府不提倡使用任何削弱政府竊聽能力的加密軟體,認為這才符合美國的國家利益。
[page]
Hash簽名是最主要的數字簽名方法,也稱之為數字摘要法(Digital Digest)或數字指紋法(Digital Finger Print)。它與RSA數字簽名是單獨的簽名不同,該數字簽名方法是將數字簽名與要發送的信息緊密聯系在一起,它更適合於電子商務活動。將一個商務合同的個體內容與簽名結合在一起,比合同和簽名分開傳遞,更增加了可信度和安全性。數字摘要(Digital Digest)加密方法亦稱安全Hash編碼法(SHA:Secure Hash Algorithm)或MD5(MD Standard For Message Digest),由RonRivest所設計。該編碼法採用單向Hash函數將需加密的明文「摘要」成一串128bit的密文,這一串密文亦稱為數字指紋(Finger Print),它有固定的長度,且不同的明文摘要必定一致。這樣這串摘要使可成為驗證明文是否是「真身」的「指紋」了。
只有加入數字簽名及驗證才能真正實現在公開網路上的安全傳輸。加入數字簽名和驗證的文件傳輸過程如下:
(1)發送方首先用哈希函數從原文得到數字簽名,然後採用公開密鑰體系用發達方的私有密鑰對數字簽名進行加密,並把加密後的數字簽名附加在要發送的原文後面;
(2)發送一方選擇一個秘密密鑰對文件進行加密,並把加密後的文件通過網路傳輸到接收方;
(3)發送方用接收方的公開密鑰對密秘密鑰進行加密,並通過網路把加密後的秘密密鑰傳輸到接收方;
(4)接受方使用自己的私有密鑰對密鑰信息進行解密,得到秘密密鑰的明文;
(5)接收方用秘密密鑰對文件進行解密,得到經過加密的數字簽名;
(6)接收方用發送方的公開密鑰對數字簽名進行解密,得到數字簽名的明文;
(7)接收方用得到的明文和哈希函數重新計算數字簽名,並與解密後的數字簽名進行對比。如果兩個數字簽名是相同的,說明文件在傳輸過程中沒有被破壞。
如果第三方冒充發送方發出了一個文件,因為接收方在對數字簽名進行解密時使用的是發送方的公開密鑰,只要第三方不知道發送方的私有密鑰,解密出來的數字簽名和經過計算的數字簽名必然是不相同的。這就提供了一個安全的確認發送方身份的方法。
安全的數字簽名使接收方可以得到保證:文件確實來自聲稱的發送方。鑒於簽名私鑰只有發送方自己保存,他人無法做一樣的數字簽名,因此他不能否認他參與了交易。
數字簽名的加密解密過程和私有密鑰的加密解密過程雖然都使用公開密鑰體系,但實現的過程正好相反,使用的密鑰對也不同。數字簽名使用的是發送方的密鑰對,發送方用自己的私有密鑰進行加密,接收方用發送方的公開密鑰進行解密。這是一個一對多的關系:任何擁有發送方公開密鑰的人都可以驗證數字簽名的正確性,而私有密鑰的加密解密則使用的是接收方的密鑰對,這是多對一的關系:任何知道接收方公開密鑰的人都可以向接收方發送加密信息,只有唯一擁有接收方私有密鑰的人才能對信息解密。在實用過程中,通常一個用戶擁有兩個密鑰對,一個密鑰對用來對數字簽名進行加密解密,一個密鑰對用來對私有密鑰進行加密解密。這種方式提供了更高的安全性。
9.數字時間戳技術
在電子商務的發展過程中,數字簽名技術也有所發展。數字時間戳技術就是數字簽名技術一種變種的應用。
在電子商務交易文件中,時間是十分重要的信息。在書面合同中,文件簽署的日期和簽名一樣均是十分重要的防止文件被偽造和篡改的關鍵性內容。數字時間戳服務(DTS:digita1 time stamp service)是網上電子商務安全服務項目之一,能提供電子文件的日期和時間信息的安全保護,由專門的機構提供。
如果在簽名時加上一個時間標記,即是有數字時間戳(digital time stamp)的數字簽名。
時間戳(time-stamp)是一個經加密後形成的憑證文檔,它包括三個部分:
(1)需加時間戳的文件的摘要(digest);
(2)DTS收到文件的日期和時間;
(3)DTS的數字簽名。
一般來說,時間戳產生的過程為:用戶首先將需要加時間戳的文件用Hash編碼加密形成摘要,然後將該摘要發送到DTS,DTS在加入了收到文件摘要的日期和時間信息後再對該文件加密(數字簽名),然後送回用戶。
書面簽署文件的時間是由簽署人自己寫上的,而數字時間戳則不然,它是由認證單位DTS來加的,以DTS收到文件的時間為依據。
10. SSL安全協議
SSL安全協議最初是由Netscape Communication公司設計開發的,又叫「安全套接層(Secure Sockets Layer)協議」,主要用於提高應用程序之間的數據的安全系數。SSL協議的整個概念可以被總結為:一個保證任何安裝了安全套接字的客戶和伺服器間事務安全的協議,它涉及所有TC/IP應用程序。
SSL安全協議主要提供三方面的服務:
用戶和伺服器的合法性認證
認證用戶和伺服器的合法性,使得它們能夠確信數據將被發送到正確的客戶機和伺服器上。客戶機和伺服器都是有各自的識別號,這些識別號由公開密鑰進行編號,為了驗證用戶是否合法,安全套接層協議要求在握手交換數據進行數字認證,以此來確保用戶的合法性。
加密數據以隱藏被傳送的數據
安全套接層協議所採用的加密技術既有對稱密鑰技術,也有公開密鑰技術。在客戶機與伺服器進行數據交換之前,交換SSL初始握手信息,在SSL握手情息中採用了各種加密技術對其加密,以保證其機密性和數據的完整性,並且用數字證書進行鑒別。這樣就可以防止非法用戶進行破譯。
護數據的完整性
安全套接層協議採用Hash函數和機密共享的方法來提供信息的完整性服務,建立客戶機與伺服器之間的安全通道,使所有經過安全套接層協議處理的業務在傳輸過程中能全部完整准確無誤地到達目的地。
要說明的是,安全套接層協議是一個保證計算機通信安全的協議,對通信對話過程進行安全保護。例如,一台客戶機與一台主機連接上了,首先是要初始化握手協議,然後就建立了一個SSL。對話進段。直到對話結束,安全套接層協議都會對整個通信過程加密,並且檢查其完整性。這樣一個對話時段算一次握手。而HTTP協議中的每一次連接就是一次握手,因此,與HTTP相比。安全套接層協議的通信效率會高一些。
(1)接通階段:客戶通過網路向服務商打招呼,服務商回應;
(2)密碼交換階段:客戶與伺服器之間交換雙方認可的密碼,一般選用RSA密碼演算法,也有的選用Diffie-Hellmanf和Fortezza-KEA密碼演算法;
(3)會談密碼階段:客戶與服務商間產生彼此交談的會談密碼;
(4)檢驗階段:檢驗服務商取得的密碼;
(5)客戶認證階段:驗證客戶的可信度;
(6)結束階段,客戶與服務商之間相互交換結束的信息。
當上述動作完成之後,兩者間的資料傳送就會加密,另外一方收到資料後,再將編碼資料還原。即使盜竊者在網路上取得編碼後的資料,如果沒有原先編制的密碼演算法,也不能獲得可讀的有用資料。
發送時信息用對稱密鑰加密,對稱密鑰用非對稱演算法加密,再把兩個包綁在一起傳送過去。
接收的過程與發送正好相反,先打開有對稱密鑰的加密包,再用對稱密鑰解密。
在電子商務交易過程中,由於有銀行參與,按照SSL協議,客戶的購買信息首先發往商家,商家再將信息轉發銀行,銀行驗證客戶信息的合法性後,通知商家付款成功,商家再通知客戶購買成功,並將商品寄送客戶。
SSL安全協議是國際上最早應用於電子商務的一種網路安全協議,至今仍然有很多網上商店使用。在傳統的郵購活動中,客戶首先尋找商品信息,然後匯款給商家,商家將商品寄給客戶。這里,商家是可以信賴的,所以客戶先付款給商家。在電子商務的開始階段,商家也是擔心客戶購買後不付款,或使用過期的信用卡,因而希望銀行給予認證。SSL安全協議正是在這種背景下產生的。
SSL協議運行的基點是商家對客戶信息保密的承諾。但在上述流程中我們也可以注意到,SSL協議有利於商家而不利於客戶。客戶的信息首先傳到商家,商家閱讀後再傳至(銀行,這樣,客戶資料的安全性便受到威脅。商家認證客戶是必要的,但整個過程中,缺少了客戶對商家的認證。在電子商務的開始階段,由於參與電子商務的公司大都是一些大公司,信譽較高,這個問題沒有引起人們的重視。隨著電子商務參與的廠商迅速增加,對廠商的認證問題越來越突出,SSL協議的缺點完全暴露出來。SSL協議將逐漸被新的電子商務協議(例如SET)所取代。
[page]
11. SET安全協議
在開放的網際網路上處理電子商務,保證買賣雙方傳輸數據的安全成為電子商務的重要的問題。為了克服SSL安全協議的缺點,滿足電子交易持續不斷地增加的安全要求,為了達到交易安全及合乎成本效益的市場要求,VISA國際組織及其它公司如Master Card、Micro Soft、IBM等共同制定了安全電子交易(SET:Secure Electronic Transactions)公告。這是一個為在線交易而設立的一個開放的、以電子貨幣為基礎的電子付款系統規范。SET在保留對客戶信用卡認證的前提下,又增加了對商家身份的認證,這對於需要支付貨幣的交易來講是至關重要的。由於設計合理,SET協議得到了許多大公司和消費者的支持,己成為全球網路的工業標准,其交易形態將成為未來「電子商務」的規范。
安全電子交易規范,為在網際網路上進行安全的電子商務提供了一個開放的標准。SET主要使用電子認證技術,其認證過程使用RS