天天看點

介紹DH密鑰交換協定

Diffie Hallman(發明于1976年,獲得2016年圖靈獎):

    該算法普遍存在于公共領域,幾乎所有在公開網絡中的密鑰交換都使用了這個方法,這個方法奠定了公開密鑰密碼編碼學。

    原理是:A與B希望建立一個私有密鑰。很多人可能還不知道密鑰是什麼,其實密鑰就是将​明文轉換為密文​或者​密文轉化為明文​的一種規則,分為兩種,一種是對稱密鑰,一種是非對稱密鑰。對稱與非對稱的最大差別是是否用​同一種規則​進行封裝或解封。

介紹DH密鑰交換協定

    現在A産生一個私有的密鑰XA(他想要發送的),并​計算​出公開密鑰YA(迷惑人的)發送給B,B再将其解封,得到裡面的秘密密鑰K。同理,B同樣産生一個私有密鑰XB,用同一種規則(公式)計算出公開密鑰YB發送給A,A解封得到同樣的K(前後的K必定相等,證明略)。最終才能确定一個秘密密鑰,就是K。

    計算如圖:

介紹DH密鑰交換協定

    如圖所示,XA、XB就是他們想傳達的東西,p是素數,a是整數,也就是如果别人想要擷取資訊,必須解離散對數,這是個非常複雜的過程。

    缺陷:如果攻擊者攔截了這個公鑰,并僞裝成A,發送了同樣的資訊給B,那該怎麼辦?

​PS:需要注明的是,DH并不能用來加密解密,它隻能用來交換和确認密鑰。​

繼續閱讀