筆記:對(duì)稱性加密和非對(duì)稱性加密
僅供個(gè)人記錄和復(fù)習(xí)
對(duì)稱性加密
在加密和解密過(guò)程中都使用同一密鑰Key的加密辦法。然而,如何保證這個(gè)密鑰被安全告訴對(duì)方而不被第三方獲取非常困難。
非對(duì)稱性加密
1976年,Diffie和Hellman提出非對(duì)稱性加密。在加密開始時(shí),生成一對(duì)密鑰:公鑰Public Key和私鑰Private Key,它們有以下特性:
1. 公鑰和私鑰總是成對(duì)被生成,并且其中的一個(gè)值不能推出另一個(gè)值;
2.??被公鑰加密的信息能且僅能被私鑰解密,反之,被私鑰加密的信息也能且僅能被公鑰解密;
3. 被生成的公鑰和私鑰總是不同的,在數(shù)學(xué)上生成出重復(fù)的一對(duì)密鑰的概率是0。
其中公鑰可以公開,私鑰則自己保存。
非對(duì)稱性加密的過(guò)程
甲和乙進(jìn)行非對(duì)稱性加密通信的過(guò)程如下:
1. 甲與乙先建立連接,例如TCP連接;
2. 甲生成一對(duì)公私密鑰,保留甲的私鑰,將甲的公鑰不加密發(fā)送給乙;
3. 乙獲得甲發(fā)來(lái)的公鑰后,將信息用公鑰加密,發(fā)送給甲;
4. 甲收到被公鑰加密的信息,用私鑰解密,完成通信。
在以上過(guò)程中,由于私鑰是不可知的,乙的信息將無(wú)法被第三方讀取。注意,由于公鑰是公開的,第三方依然可以冒充乙,用公鑰加密后給甲發(fā)送冒名信息。
非對(duì)稱性加密安全性好,但加密、解密的運(yùn)算速度慢。在實(shí)踐中,為了提高效率,常常通過(guò)非對(duì)稱性加密通信來(lái)傳遞對(duì)稱性密鑰,之后的通信全部使用對(duì)稱性加密,這樣既能保證安全,又能保證效率。
標(biāo)簽: