加密原理

密鑰認證原理算法

數據安全在網上傳輸要從三個方面獲得保證:數據機密性、數據完整性、身份驗證。安全

數據機密性:ide

AB通訊,能夠用對稱加密來保證。Aplaintext經加密---獲得ciphertext 把它發給BB用密鑰解密獲得數據。問題出現:AB如何協商密鑰。如遇到第三方***,第三方是CC截獲A發送給B的密鑰,而後冒充AB發送數據,這數據機密性得不到保障。加密

密鑰如何發送給對方,而不讓第三方知道?url

能夠用Diffie hellman 算法試驗。A選取兩個數 p (大素數)g(生產數)發送給Bspa

AB在各選一個隨機數X Y A:g^x%p  B:g^y%p互信發給對方,ip

A獲得數據後計算出(g^y)^x%p B獲得數據後計算出(g^x)^y%p,兩個數相同,這就是兩者的密鑰。ci

 

 

數據完整性:it

AB通訊,A發給B數據,A能夠用單向加密算法加密數據發給B。單向加密,是提取數據特徵碼,並附加到數據後面。B接受到數據後,用單向加密算法提取數據特徵碼,如特徵碼一致,說明數據正常。問題:C截獲A發的數據,獲得A的發的數據,篡改後發送給BB仍是沒法驗證對方的身份。單向加密特徵:微小變化,引發巨大變化(雪崩效應),不可逆。定出輸出。table

身份驗證:可用公鑰加密(非對稱加密算法)驗證身份。原理:公鑰加密生成祕鑰對,公鑰和私鑰,公鑰發給對方,私鑰本身保留,私鑰加密數據後,只能經過本身的公鑰解密。這就保證了發送方的數據。如C獲取數據,用A的公鑰機密後獲得數據,可是他不可能在經過A的私鑰進行加密,這樣B就能夠驗證發送方的身份。問題:

 

 

用公鑰加密數據,私鑰解密能夠實現數據機密性,由於只有發送方的本身私鑰能夠對其解密。


 

B用公鑰加密生成公鑰發給A

 

spacer.gif文本框: 特徵碼文本框: 數據

 

A用公鑰加密生成公鑰發給B

 
spacer.gif 文本框: B 文本框: A 如何同事實現以上數據的三個特性。

 

 

 

 

 

 

 

 

 

 

A用本身的私鑰加密數據特徵碼保證數據的完整性

A隨機選選一個密鑰,用對稱密鑰加密數據和特徵碼,而後用B的公鑰加密此密鑰,發送給B,如此就保證了數據的三個特性。問題,A和B的公鑰如何讓對方得到?

CA,第三方發給機構,A把本身的公鑰機信息發給CACA用本身的私鑰對其加密,BCA機構獲得A的證書信息。

相關文章
相關標籤/搜索