A. 什麼是數字信封它的工作原理是什麼
數字信封是將對稱密鑰通過非對稱加密(即:有公鑰和私鑰兩個)的結果分發對稱密鑰的方法。
解釋
PKCS#7中將數字信封作為術語進行定義,而在正文中對進行了如下解釋:數字信封包含被加密的內容和被加密的用於加密該內容的密鑰。雖然經常使用接收方的公鑰來加密「加密密鑰」,但這並不是必須的,也可以使用發送方和接收方預共享的對稱密鑰來加密。當接收方收到數字信封時,先用私鑰或預共享密鑰解密,得到「加密密鑰」,再用該密鑰解密密文,獲得原文。數字信封技術使用兩層加密體系。
數字信封是一種綜合利用了對稱加密技術和非對稱加密技術兩者的優點進行信息安全傳輸的一種技術。數字信封既發揮了對稱加密演算法速度快、安全性好的優點,又發揮了非對稱加密演算法密鑰管理方便的優點。
B. 電子合同平台是如何保障文件安全不被他人查看的
這就要提到「合同碎片化安全存儲機制」,是通過我們自主研發的數據安全切片技術(簡稱DDS)。
DSS會對合同文件進行加密、分片、混淆、分雲存儲等操作,將文件以亂序的方式在不同的雲上按照不同比例(用戶自定義)存儲,從而確保合同文件在每個雲存儲節點中都沒有完整的數據全量,完整的文件數據全程僅由客戶掌握,而無法被任何第三方(包括平台本身)獲取,在保障數據安全性、私密性的同時,又充分利用了公有雲存儲的彈性與成本優勢。
C. 數字信封的基本原理
數字信封是將對稱密鑰通過非對稱加密(即:有公鑰和私鑰兩個)的結果分發對稱密鑰的方法。
PKCS#7中將數字信封作為術語進行定義,而在正文中對進行了如下解釋:數字信封包含被加密的內容和被加密的用於加密該內容的密鑰。雖然經常使用接收方的公鑰來加密「加密密鑰」,但這並不是必須的,也可以使用發送方和接收方預共享的對稱密鑰來加密。當接收方收到數字信封時,先用私鑰或預共享密鑰解密,得到「加密密鑰」,再用該密鑰解密密文,獲得原文。數字信封技術使用兩層加密體系。
數字信封是一種綜合利用了對稱加密技術和非對稱加密技術兩者的優點進行信息安全傳輸的一種技術。數字信封既發揮了對稱加密演算法速度快、安全性好的優點,又發揮了非對稱加密演算法密鑰管理方便的優點。
應用及應用方法
數字信封是公鑰密碼體制在實際中的一個應用,是用加密技術來保證只有規定的特定收信人才能閱讀通信的內容。
在數字信封中,信息發送方採用對稱密鑰來加密信息內容,然後將此對稱密鑰用接收方的公開密鑰來加密(這部分稱數字信封)之後,將它和加密後的信息一起發送給接收方,接收方先用相應的私有密鑰打開數字信封,得到對稱密鑰,然後使用對稱密鑰解開加密信息。這種技術的安全性相當高。數字信封主要包括數字信封打包和數字信封拆解,數字信封打包是使用對方的公鑰將加密密鑰進行加密的過程,只有對方的私鑰才能將加密後的數據(通信密鑰)還原;數字信封拆解是使用私鑰將加密過的數據解密的過程。
密鑰的更換
數字信封的功能類似於普通信封,普通信封在法律的約束下保證只有收信人才能閱讀信的內容;數字信封則採用密碼技術保證了只有規定的接收人才能閱讀信息的內容。數字信封中採用了對稱密碼體制和公鑰密碼體制。信息發送者首先利用隨機產生的對稱密碼加密信息,再利用接收方的公鑰加密對稱密碼,被公鑰加密後的對稱密碼被稱之為數字信封。在傳遞信息時,信息接收方若要解密信息,必須先用自己的私鑰解密數字信封,得到對稱密碼,才能利用對稱密碼解密所得到的信息。這樣就保證了數據傳輸的真實性和完整性。
在一些重要的電子商務交易中密鑰必須經常更換,為了解決每次更換密鑰的問題,結合對稱加密技術和公開密鑰技術的優點,它克服了私有密鑰加密中私有密鑰分發困難和公開密鑰加密中加密時間長的問題,使用兩個層次的加密來獲得公開密鑰技術的靈活性和私有密鑰技術高效性。信息發送方使用密碼對信息進行加密,從而保證只有規定的收信人才能閱讀信的內容。採用數字信封技術後,即使加密文件被他人非法截獲,因為截獲者無法得到發送方的通信密鑰,故不可能對文件進行解密。
D. 什麼是數字證書它有什麼作用如何為瀏覽器申請證書,請寫出詳細過程
1.數字證書基本功能
數字證書,是由證書認證機構簽名的包含公開密鑰擁有者信息、公開密鑰、簽發者信息、有效期以及一些擴展信息的數字文件。
從證書的用途來看,數字證書可分為簽名證書和加密證書。簽名證書主要用於對用戶信息進行簽名,以保證信息完整性和行為的不可抵賴;加密證書主要用於對用戶傳送信息進行加密,以保證信息的機密性。以下對數字證書的基本功能進行原理性描述。
身份認證
在各應用系統中,常常需要完成對使用者的身份認證,以確定誰在使用系統,可以賦予使用者何種操作許可權。身份認證技術發展至今已經有了一套成熟的技術體系,其中,利用數字證書完成身份認證是其中最安全有效的一種技術手段。
利用數字證書完成身份認證,被認證方(甲)必須先到相關數字證書運營機構申請數字證書,然後才能向應用系統認證方(乙)提交證書,完成身份認證。
通常,使用數字證書的身份認證流程如下圖所示:
被認證方(甲),使用自己的簽名私鑰,對隨機數進行加密;
被認證方(甲)將自己的簽名證書和密文發送給認證方(乙);
乙驗證甲所提供的簽名證書的有效期、證書鏈,並完成黑名單檢查,失敗則放棄;
有效期、證書鏈和黑名單驗證通過後,乙即使用甲的簽名證書對甲所提供的密文進行解密,成功則表明可以接受由甲提交的簽名證書所申明的身份。
在上述流程中,步驟3描述的是對證書本身的驗證,依次分別驗證有效期、證書鏈和黑名單,某個步驟如果驗證失敗,則驗證流程立即終止,不必再執行下一個驗證。同時,有效期、證書鏈和黑名單的依次驗證順序是最合理的順序,能夠讓驗證流程達到最佳性能。
通過步驟3的驗證後,甲所提交的證書可以得到驗證,但這與甲本身是否和該證書所申明的實體相等沒有必然聯系,甲必須表明其是這個簽名證書對應的唯一私鑰的擁有者。因此,當步驟4執行成功後,即該簽名證書能夠解密,則說明甲擁有該私鑰,從而完成了對甲所申明身份的認證。
上面具體描述的是單向認證,即只有乙認證甲的身份,而甲沒有認證乙的身份。單向認證不是完善的安全措施,誠實可信的用戶甲可能會碰到類似「釣魚網站」的欺騙。因此在需要高度安全的應用環境中,還需要實現雙向認證。即乙也需要向甲提供其簽名證書,由甲來完成上述驗證流程,以確認乙的身份。如下圖。
數字簽名
數字簽名是數字證書的重要應用功能之一,所謂數字簽名是指證書用戶(甲)用自己的簽名私鑰對原始數據的雜湊變換後所得消息摘要進行加密所得的數據。信息接收者(乙)使用信息發送者的簽名證書對附在原始信息後的數字簽名進行解密後獲得消息摘要,並對收到的原始數據採用相同的雜湊演算法計算其消息摘要,將二者進行對比,即可校驗原始信息是否被篡改。數字簽名可以完成對數據完整性的保護,和傳送數據行為不可抵賴性的保護。
使用數字證書完成數字簽名功能,需要向相關數字證書運營機構申請具備數字簽名功能的數字證書,然後才能在業務過程中使用數字證書的簽名功能。
通常,使用數字證書的簽名和驗證數字證書簽名的流程如圖所示:
簽名發送方(甲)對需要發送的明文使用雜湊演算法,計算摘要;
甲使用其簽名私鑰對摘要進行加密,得到密文;
甲將密文、明文和簽名證書發送給簽名驗證方乙;
乙一方面將甲發送的密文通過甲的簽名證書解密得到摘要,另一方面將明文採用相同的雜湊演算法計算出摘要;
乙對比兩個摘要,如果相同,則可以確認明文在傳輸過程中沒有被更改,並且信息是由證書所申明身份的實體發送的。
如果需要確認甲的身份是否和證書所申明的身份一致,則需要執行身份認證過程,如前一節所述。
在上述流程中,簽名私鑰配合雜湊演算法的使用,可以完成數字簽名功能。在數字簽名過程中可以明確數據完整性在傳遞過程中是否遭受破壞和數據發送行為是簽名證書所申明的身份的行為,提供數據完整性和行為不可抵賴功能。數字證書和甲的身份的確認,需要通過身份認證過程明確。
數字信封
數字信封是數字證書另一個重要應用功能,其功效類似於普通信封。普通信封在法律的約束下保證只有收信人才能閱讀信的內容;數字信封則採用密碼技術保證了只有規定的接收人才能閱讀「信件」的內容。
數字信封中採用了對稱密碼機制和公鑰密碼機制。信息發送者(甲)首先利用隨機產生的對稱密鑰對信息進行加密,再利用接收方(乙)的公鑰加密對稱密鑰,被公鑰加密後的對稱密鑰被稱之為數字信封。在傳遞信息時,信息接收方要解密信息時,必須先用自己的私鑰解密數字信封,得到對稱密鑰,才能利用對稱密鑰解密所得到的信息。通過數字信封可以指定數據接收者,並保證數據傳遞過程的機密性。
使用數字證書完成數字信封功能,需要向相關數字證書運營機構申請具備加密功能的數字證書,然後才能在業務過程中使用數字證書的數字信封功能。
通常,數字信封和數字信封拆解的流程如圖所示:
信息發送方(甲)生成對稱密鑰;
甲使用對稱密鑰對需要發送的信息執行加密,得到密文;
甲使用信息接收方(乙)的加密證書中的公鑰,加密對稱密鑰,得到數字信封;
甲將密文和數字信封發送給乙;
乙使用自己的加密私鑰拆解數字信封,得到對稱密鑰;
乙使用對稱密鑰解密密文,得到明文。
在上述流程中,信息發送方(甲)對用於加密明文信息的對稱密鑰使用接收方(乙)的加密證書進行加密得到數字信封,利用私鑰的唯一性保證只有擁有對應私鑰的乙才能拆解數字信封,從而閱讀明文信息。據此,甲可以確認只有乙才能閱讀信息,乙可以確認信息在傳遞過程中保持機密。
1、證書申請
CFCA授權的證書的注冊審核機構(Registration Authority,簡稱RA)(各商業銀行、證券公司等機構),面向最終用戶,負責接受各自的持卡人和商戶的證書申請並進行資格審核,具體的證書審批方式和流程由各授權審核機構規定。
證書申請表直接到RA處領取。
2、證書審批
經審批後,RA將審核通過的證書申請信息發送給CFCA,由CFCA簽發證書。
● 系統--CFCA將同時產生的二個碼(參考號、授權碼)發送到RA系統。為安全起見,RA採用兩種途徑將以上兩個碼交到證書申請者手中: RA管理員將其中授權碼列印在密碼信封里當面交給證書申請者;將參考號發送到證書申請者的電子郵箱里。
● SET系統--持卡人/商戶到RA各網點直接領取專用密碼信封。
3、證書發放/下載
CA簽發的證書格式符合X.509 V3標准。具體的證書發放方式各個RA的規定有所不同。可以登陸CFCF網站http://www.cfca.com.cn聯機下載證書或者到銀行領取。
4、證書生成
證書在本地生成,證書由CFCA頒發,用戶私鑰由客戶自己保管
E. 數字信封技術為什麼要用對稱密碼DES加密數據,不用非稱加解密RSA演算法加密密鑰
呵呵,你的問題意思不通,多了個字吧?!應該是:數字信封技術為什麼要用對稱密碼DES加密數據,用非稱加解密RSA演算法加密密鑰?
非對稱加密演算法對大容量數據加密時,運算速度非常慢,比對稱演算法差好幾個數量級!!
所以用對稱演算法加密大容量數據,非對稱演算法加密密鑰。
F. 電子商務安全定義概念是什麼
電子商務安全定義:由於電子商務是在開放的網上進行的貿易,大量的商務信息計算機上存放,傳輸,從而形成信息傳輸風險 ,交易信用風險,管理方面的風險,法律方面的風險等各種風險,為了對付這種風險,從而形成了電子商務安全體系。
電子商務安全要求包括四個方面:
1、數據傳輸的安全性。對數據傳輸的安全性需求即是保證在公網上傳送的數據不被第三方竊取。對數據的安全性保護是通過採用數據加密(包括秘密密鑰加密和公開密鑰加密)來實現的,數字信封技術是結合秘密密鑰加密和公開密鑰加密技術實現的保證數據安全性的技術。
2、數據的完整性。對數據的完整性需求是指數據在傳輸過程中不被篡改。數據的完整性是通過採用安全的散列函數和數字簽名技術來實現的。雙重數字簽名可以用於保證多方通信時數據的完整性。
3、身份驗證。由於網上的通信雙方互不見面,必須在交易時(交換敏感信息時)確認對方等真實身份;在涉及到支付時,還需要確認對方的賬戶信息是否真實有效。身份認證是採用口令字技術、公開密鑰技術或數字簽名技術和數字證書技術來實現的。
4、交易的不可抵賴。網上交易的各方在進行數據傳輸時,必須帶有自身特有的、無法被別人復制的信息,以保證交易發生糾紛時有所對證。這是通過數字簽名技術和數字證書技術來實現的。
(6)數字信封演算法框架圖擴展閱讀:
電子商務系統安全系統結構包括以下部分:
1、基本加密演算法;
2、以基本加密演算法為基礎的CA體系以及數字信封、數字簽名等基本安全技術;
3、以基本加密演算法、安全技術、CA體系為基礎的各種安全應用協議。
G. 用圖示說明對稱加密技術和非對稱加密技術相結合(即數字信封技術)的工作過程。
數字信封技術用於保證資料在傳輸過程中的安全。對稱密鑰加密和公鑰加密技術各有其優缺點,對稱密鑰加密演算法效率高,但密鑰的憤發和管理都很困難;而公鑰加密演算法密鑰易於管理和傳遞,但運行效率太低,不適於加密大量的消息,而且它要求被加密的信息塊長度要小於密鑰的長度。數字信封技術結合了密鑰加密技術和公鑰加密技術各自的優點,克服了密鑰加密技術中密鑰分發和管理困難和公鑰加密技術中加解密效率低的缺點,充分利用了密鑰系統的高效性和公鑰系統的靈活性,保證信息在傳輸過程中的靈活性。
數字信封技術首先使用密鑰加密技術對要發送的消息進行加密;再利用公鑰加密技術對密鑰系統中使用的密鑰進行加密。然後把加密的消息和加密的密鑰一起傳送給接收方。其具體的實現方法和步驟如下:
說明:以上圖中的步驟可以解釋為:
①在需要發送信息時,發送方Alice先生成一個對稱密鑰K;
②Alice利用生成的對稱密鑰K和相應的對稱密鑰演算法E( • )對要發送的明文消息P進行加密,生成密文C=Ek(P);
③然後Alice再用接收方Bob提供的公鑰KpB 對剛才用到的加密明文P的密鑰K進行加密,得到加密後的密鑰Ck;
④Alice把加密後的消息C和加密後的對稱密鑰Ck作為密文一起傳送給Bob。
⑤Bob接收到密文後,先用自己的私鑰解密Ck還原出對稱密鑰K,然後再用得到的K,根據實現商定好的對稱密鑰演算法解密得到明文P。
數字信封技術實際上是使用雙層加密體制。在內層,利用對稱密鑰加密技術,每次傳送消息都可以重新生成新的對稱密鑰,實現了一次一密,保證了信息的安全性。在外層,使用公鑰加密技術對對稱密鑰進行加密,保證對稱密鑰傳輸的安全性。數字信封技術的應用,使資料信息在公共為了中的傳輸有了安全保障。
H. 如何利用非對稱密鑰加密演算法實現數字信封和數字簽名
不對稱加密演算法使用兩把完全不同但又是完全匹配的一對鑰匙—公鑰和私鑰。在使用不對稱加密演算法加密文件時,只有使用匹配的一對公鑰和私鑰,才能完成對明文的加密和解密過程。加密明文時採用公鑰加密,解密密文時使用私鑰才能完成,而且發信方(加密者)知道收信方的公鑰,只有收信方(解密者)才是唯一知道自己私鑰的人。不對稱加密演算法的基本原理是,如果發信方想發送只有收信方才能解讀的加密信息,發信方必須首先知道收信方的公鑰,然後利用收信方的公鑰來加密原文;收信方收到加密密文後,使用自己的私鑰才能解密密文。顯然,採用不對稱加密演算法,收發信雙方在通信之前,收信方必須將自己早已隨機生成的公鑰送給發信方,而自己保留私鑰。由於不對稱演算法擁有兩個密鑰,因而特別適用於分布式系統中的數據加密。廣泛應用的不對稱加密演算法有RSA演算法和美國國家標准局提出的DSA
I. 簡述數字信封的操作過程
一敘述在線購物的過程1. 消費者瀏覽商品。2. 消費者挑選商品。3. 消費者接收訂貨表。4. 消費者選擇結算方法。5. 消費者填完定單後,向銷售商提交訂貨表,並告知所選的結算方法。6. 銷售商要求消費者的應行提供結算授權7. 銷售尚向消費者寄出裝運和結算的確認書8. 銷售商要求消費者的銀行進行結算二網路營銷與傳統營銷整和的優勢?優勢:節約成本三.配送合理化可採取的做發1. 推行一定綜合程度的專業化配送2推行加工配送3推行共同配送4實行送取結合5推行准時配送系統四.電子商務安全隱患有那些?1. 互聯網問題2. 操作系統的安全問題3. 應用軟體的安全問題4. 通信傳輸協議的安全問題5. 網路安全管理問題五.簡述電子商務系統在業務處理的不同階段的特點支持交易前的系統,主要是將商貿信息和組織查詢。目前internet上的各類電子商務系統大部分都是屬於這一類;支持交易中的系統,主要是買賣雙方之間交換商貿活動中的各種業務文件及單證;支持交易後的系統,主要交易後的系統,主要涉及銀行、金融機構和制服問題,要求該系統能夠完成資金的支付、算清及貨物的乘運等功能。六.請舉例出電子商務的優勢有那些?1. 高速高效,2. 覆蓋面廣3. 費用低廉4. 功能更全面5. 服務更有成效6. 使用更靈活7. 增強企業競爭力七.請舉例出幾種電子商務相關的安全認證技術。1. 身份認證2. 數字摘要3. 數字簽名4. 數字時間截5. 數字憑證八.在電子商務系統中,為完成商務操作,歸納起來有五個過程……1. 信息共享2. 網上訂購3. 執行交易4. 服務與支持5. 網上支付九.電子商務按交易對象分類1. B2B2. B2C3. B2A4. B2A十.常見的數字證書分幾類1. 安全電子郵件證書2. 個人數字證書3. 企業數字證書4. 伺服器數字證書5. SSL伺服器數字證書十一。什麼是支付網關?1. 就是連接銀行網路與INTERNET的一組伺服器,其主要作用是完成兩者之間的通信、協議轉換和進行數據加密、解密,以保護銀行內部網路的安全。十二。什麼是客戶關系管理?就是一種倡導企業以客戶為中心的管理思想與方法十三。狹義與廣義的區別?狹義的電子商務也稱電子交易,主要指網路銷售;廣義的電子商務主要指用網路進行管理,在企業內部的電子商務的應用。十四。電子商務的功能有那些?1. 廣告宣傳。2. 咨詢洽談3. 網上訂購4. 網上支付5. 電子帳戶6. 服務傳遞7. 意見征詢8. 交易管理十五。電子商務的五個過程1. 信息共享2. 網上訂購3. 網上支付4. 執行交易5. 服務與支持十六。在電子商務的實現中應注意那些問題?1. 展示有特色的購物界面2. 保證交易的安全性3. 考慮系統的兼容性4. 充分地進行數據挖掘5. 提供高性能伺服器十七列舉SET協議中所使用的加密技術?1. 密鑰系統2. 公鑰系統3. 數字信封4. 數字簽名5. 消息摘要6. 雙重簽名名詞解釋1. EDI是將業務文件按一貫公認的標准從一台計算機傳輸到另一台技術的電子傳輸方法2. 對稱密鑰加密演算法是指文件加密和解密使用一個相同秘密密鑰3. 狹義的電子商務也稱電子交易,主要指網路銷售4. 廣義的電子商務主要指用網路進行管理,在企業內部的電子商務的應用。5. 電子政務指政府機構利用信息化手段,實現各類政府的職能。6. 電子商務系統:是一個以電子數據處理、環球網路、數據交換和資金匯兌為基礎,集定貨、運輸、保管、保險、商檢和銀行結算為一體的綜合商務信息處理系統7. 第三方物流:指作為外部組織利用現代技術手段,為用戶企業或最終消費者提供或部分物流服務,包括物流的規劃、設計、運營和管理等服務活動的過程8. 加密過程:加密技術與密碼學緊密相連,利用密碼技術可以把某些重要信息或數據從一個可理解的明文形式變換成為一種錯亂的、不可理解的密文形式9. 數字證書:又稱為數字證書,用利用電子手段來證實一個用戶的身份和對網路資源的訪問許可權,由CA中心簽發。
J. 跪求HASH 數字信封 數字簽名 雙重簽名 防火牆 的原理PPT
數字簽名演算法分析與Hash簽名
序:這篇文章我用了近一周的時間完成,其中涉及到的RSA演算法已經在上一篇《公鑰密碼體系》中詳細的介紹過,目前數字簽名中人們使用很多的還是512位與1024位的RSA演算法。
摘要: 數字簽字和認證機構是電子商務的核心技術。數字簽名作為目前Internet中電子商務重要的技術,不斷地進行改進,標准化。本文從數字簽名的意義出發,詳細介紹了數字簽名中涉及到的內容與演算法,並自行結合進行改進。
關鍵詞:Internet 公鑰加密 Hash函數 電子商務 加密 數字簽名
數字簽名簡介
我們對加解密演算法已經有了一定理解,可以進一步討論"數字簽名"(注意不要與數字認證混淆)的問題了,即如何給一個計算機文件進行簽字。數字簽字可以用對稱演算法實現,也可以用公鑰演算法實現。但前者除了文件簽字者和文件接受者雙方,還需要第三方認證,較麻煩;通過公鑰加密演算法的實現方法,由於用秘密密鑰加密的文件,需要靠公開密鑰來解密,因此這可以作為數字簽名,簽名者用秘密密鑰加密一個簽名(可以包括姓名、證件號碼、簡訊息等信息),接收人可以用公開的、自己的公開密鑰來解密,如果成功,就能確保信息來自該公開密鑰的所有人。
公鑰密碼體制實現數字簽名的基本原理很簡單,假設A要發送一個電子文件給B,A、B雙方只需經過下面三個步驟即可:
1. A用其私鑰加密文件,這便是簽字過程
2. A將加密的文件送到B
3. B用A的公鑰解開A送來的文件
這樣的簽名方法是符合可靠性原則的。即:
簽字是可以被確認的,
簽字是無法被偽造的,
簽字是無法重復使用的,
文件被簽字以後是無法被篡改的,
簽字具有無可否認性,
數字簽名就是通過一個單向函數對要傳送的報文進行處理得到的用以認證報文來源並核實報文是否發生變化的一個字母數字串。用這幾個字元串來代替書寫簽名或印章,起到與書寫簽名或印章同樣的法律效用。國際社會已開始制定相應的法律、法規,把數字簽名作為執法的依據。
數字簽名的實現方法
實現數字簽名有很多方法,目前數字簽名採用較多的是公鑰加密技術,如基於RSA Data Security公司的PKCS(Public Key Cryptography Standards)、DSA(Digital Signature Algorithm)、x.509、PGP(Pretty Good Privacy)。1994年美國標准與技術協會公布了數字簽名標准(DSS)而使公鑰加密技術廣泛應用。同時應用散列演算法(Hash)也是實現數字簽名的一種方法。
非對稱密鑰密碼演算法進行數字簽名
演算法的含義:
非對稱密鑰密碼演算法使用兩個密鑰:公開密鑰和私有密鑰,分別用於對數據的加密和解密,即如果用公開密鑰對數據進行加密,只有用對應的私有密鑰才能進行解密;如果用私有密鑰對數據進行加密,則只有用對應的公開密鑰才能解密。
使用公鑰密碼演算法進行數字簽名通用的加密標准有: RSA,DSA,Diffie-Hellman等。
簽名和驗證過程:
發送方(甲)首先用公開的單向函數對報文進行一次變換,得到數字簽名,然後利用私有密鑰對數字簽名進行加密後附在報文之後一同發出。
接收方(乙)用發送方的公開密鑰對數字簽名進行解密交換,得到一個數字簽名的明文。發送方的公鑰可以由一個可信賴的技術管理機構即認證中心(CA)發布的。
------------------------------------------------
數字信封
這是去年十月份完成的一個練習程序:
一.原理:
用快速的對稱密鑰加密大量數據,然後僅僅對對稱密鑰作RSA加密,將對稱加密後的密文和RSA加密的對稱密鑰發給接收方。
有效解決了:
1. PKCS#1填充方案的長度限制問題
RSA密鑰長度(bit)
加密上限(byte)
1024
117
2048
245
2. RSA加密大量數據的耗時問題
二.開發:
數字信封原理簡單,而且綜合應用了上面提到的對稱加密、非對稱加密演算法。對於加密演算法的學習,數字信封程序是個不錯的入門題材。
(1)庫文件概要:
clsAES.dll
DESCRIPTION:AES對稱演算法庫文件
NAMESPACE:nsAES
CLASS:clsAES
MEMBERS: Methods: public byte[] AESdecrypt ( System.String encryptedtext )
public byte[] AESencrypt ( System.String plaintext )
public void GenKeyIV ( )
Constructors: public clsAES ( byte[] key , byte[] IV )
public clsAES ( )
Property variables: public byte[] key
public byte[] IV
AESdecrypt 和AESencrypt是實現對稱加密解密的方法;
GenKeyIV方法生成對稱密鑰的密鑰值和初始向量(IV:Initial Vector);
成員變數key和IV存放對稱密鑰的密鑰值和初始向量
csRSA.dll
DESCRIPTION:RSA非對稱演算法庫文件
NAMESPACE:nsRSA
CLASS:clsRSA
MEMBERS: Methods: public string strEnc(System.String strToEncrypt)
public string strDec(System.String strToDecrypt)
public byte[] RSAEncrypt(byte[] DataToEncrypt, RSAParameters RSAKeyInfo, bool DoOAEPPadding)
public byte[] RSADecrypt(byte[] DataToDecrypt, RSAParameters RSAKeyInfo, bool DoOAEPPadding)
Constructors: public clsRSA ( )
Variable: RSACryptoServiceProvider RSA
strEnc 和strDec是實現非對稱加密和解密的方法,由RSA提供加密和解密的服務。
RSAEncrypt和RSADecrypt也是實現非對稱加密解密的方法,必須通過RSAKeyInfo傳入RSA密鑰參數。
成員變數RSA保存RSA加密服務的一個實例。
clsRsaKeyMgr.dll( RSA Key Management)
DESCRIPTION:RSA非對稱演算法密鑰管理庫文件
NAMESPACE:nsRsaKeyMgr
CLASS:clsRsaKeyMgr
MEMBERS: Methods: public void CreatePublicKeyFile(System.String ContainerName, System.String OutputFileName)
public void CreatePrivateKeyFile(System.String ContainerName, System.String OutputFileName)
public RSAParameters GetPublicKeyFromFile(System.String InputFileName)
public RSAParameters GetPrivateKeyFromFile(System.String InputFileName)
public void GenKey_SaveInContainer(System.String ContainerName)
public string GetKeyFromContainer(System.String ContainerName,bool IsFullKey)
public void DeleteKeyFromContainer(System.String ContainerName)
Constructors: public clsRsaKeyMgr ( )
CreatePublicKeyFile和 CreatePrivateKeyFile分別從密鑰容器中創建公鑰和密鑰並寫入到指定的文件中。
GetPublicKeyFromFile和GetPrivateKeyFromFile分別從文件中獲取公鑰和密鑰,返回RSAParameters類型的RSA參數結構體。
GenKey_SaveInContainer在指定名稱的密鑰容器中創建密鑰。
GetKeyFromContainer從指定名稱的密鑰容器中獲取XML格式的密鑰信息。
DeleteKeyFromContainer刪除指定的密鑰容器。
--------------------------------------------------
雙重簽名
1996年2月1日MasterCard 與Visa兩大國際信用卡組織與技術合作夥伴GTE、Netscape、IBM、Terisa Systems、Verisign、Microsoft、SAIC等一批跨國公司共同開發了安全電子交易規范(Secure Electronic Transaction,簡稱SET)。SET是一種應用於開放網路環境下,以信用卡為基礎的安全電子支付系統的協議,它給出了一套電子交易的過程規范。通過SET這一套完備的安全電子交易協議可以實現電子商務交易中的加密、認證機制、密鑰管理機制等,保證在開放網路上使用信用卡進行在線購物的安全。由於SET提供商家和收單銀行的認證,確保了交易數據的安全、完整可靠和交易的不可抵賴性,特別是具有保護消費者信用卡號不暴露給商家等優點,因此它成為目前公認的信用卡/借記卡的網上交易的國際標准。
SET協議採用了對稱密鑰和非對稱密鑰體制,把對稱密鑰的快速、低成本和非對稱密鑰的有效性結合在一起,以保護在開放網路上傳輸的個人信息,保證交易信息的隱蔽性。其重點是如何確保商家和消費者的身份和行為的認證和不可抵賴性,其理論基礎是著名的非否認協議 (Non-repudiation),其採用的核心技術包括X。509電子證書標准與數字簽名技術(Digital Signature)、報文摘要、數字信封、雙重簽名等技術。如使用數字證書對交易各方的合法性進行驗證;使用數字簽名技術確保數據完整性和不可否認;使用雙重簽名技術對SET交易過程中消費者的支付信息和定單信息分別簽名,使得商家看不到支付信息,只能對用戶的訂單信息解密,而金融機構只能對支付和賬戶信息解密,充分保證消費者的賬戶和定貨信息的安全性。 SET通過制定標准和採用各種技術手段,解決了一直困擾電子商務發展的安全問題,包括購物與支付信息的保密性、交易支付完整性、身份認證和不可抵賴性,在電子交易環節上提供了更大的信任度、更完整的交易信息、更高的安全性和更少受欺詐的可能性。