1.1 非對稱加密基礎(chǔ)知識

對稱加密:加密和解密使用一樣的算法,只要解密時提供與加密時一致的密碼就可以完成解密。例如QQ登錄密碼,銀行卡密碼,只要保證密碼正確就可以。

非對稱加密:通過公鑰(public key)和私鑰(private key)來加密、解密。公鑰加密的內(nèi)容可以使用私鑰解密,私鑰加密的內(nèi)容可以使用公鑰解密。一般使用公鑰加密,私鑰解密,但并非絕對如此,例如CA簽署證書時就是使用自己的私鑰加密。在接下來介紹的SSH服務中,雖然一直建議分發(fā)公鑰,但也可以分發(fā)私鑰。

所以,如果A生成了(私鑰A,公鑰A),B生成了(私鑰B,公鑰B),那么A和B之間的非對稱加密會話情形包括:

(1).A將自己的公鑰A分發(fā)給B,B拿著公鑰A將數(shù)據(jù)進行加密,并將加密的數(shù)據(jù)發(fā)送給A,A將使用自己的私鑰A解密數(shù)據(jù)。

(2).A將自己的公鑰A分發(fā)給B,并使用自己的私鑰A加密數(shù)據(jù),然后B使用公鑰A解密數(shù)據(jù)。

(3).B將自己的公鑰B分發(fā)給A,A拿著公鑰B將數(shù)據(jù)進行加密,并將加密的數(shù)據(jù)發(fā)送給B,B將使用自己的私鑰B解密數(shù)據(jù)。

(4).B將自己的公鑰B分發(fā)給A,并使用自己的私鑰B加密數(shù)據(jù),然后A使用公鑰B解密數(shù)據(jù)。

雖然理論上支持4種情形,但在SSH的

網(wǎng)友評論