成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

加密算法中密鑰交換有點不安全

安全 應用安全 算法
傳送者和接受者雙方都需要擁有同一個密鑰,那么這個過程要怎么實現呢?現實中我們可以這樣做,把一個鑰匙做兩份,然后裝在信封里邊面對面交易,拿到信封后回到家里鎖起房門蓋上被子打開手電筒偷偷摸摸看看密鑰然后記在腦海里,這樣就幾乎沒人可以偷走了吧?

今天聊聊關于對稱加密算法中關于密鑰的問題。如果對于密碼學的基礎概念還不太熟悉的可以復習一下我上一篇文章。手把腳看看密碼學No.72。

[[224482]]

我們都知道對稱密鑰可以用于傳送加密信息,過程是這樣的。

從上面的過程我們可以看到,如果傳送者跟接收者都有密鑰 KEY ,那么就可以在不安全的信道下進行安全的通信了,目前比較流行的對稱加密算法有 AES、DES、3DES、TDEA、Blowfish、RC5、IDEA等算法。。

那么問題來了,傳送者和接受者雙方都需要擁有同一個密鑰,那么這個過程要怎么實現呢?現實中我們可以這樣做,把一個鑰匙做兩份,然后裝在信封里邊面對面交易,拿到信封后回到家里鎖起房門蓋上被子打開手電筒偷偷摸摸看看密鑰然后記在腦海里,這樣就幾乎沒人可以偷走了吧?

理想的情況應該是這樣的:

但是在網絡世界中,基本一切都是不安全的,可能會出現搞壞的的人,比如出來了一個叫F的人,在中途截獲了密鑰,那么A和B后面所有的交流都會被監聽了。

喏你看,一切消息都被破譯了吧,這時候 A 跟 B 之間的這個密鑰有跟沒有是一樣一樣一樣的。

那么究竟要怎么辦呢?這時候我們又要搬出偉大的數學了,今天介紹一種算法 迪菲-赫爾曼密鑰交換,這個算法能夠解決在不安全的信道下進行安全的密鑰交換問題,究竟是怎么實現的呢。

迪菲-赫爾曼密鑰交換(Diffie–Hellman key exchange,簡稱“D–H”) 是一種安全協議。它可以讓雙方在完全沒有對方任何預先信息的條件下通過不安全信道建立起一個密鑰。這個密鑰可以在后續的通訊中作為對稱密鑰來加密通訊內容。

 主要的思路就是,根據數學的指數運算的法則來進行本地的計算(本地計算可以認為是安全的),同時用使用模運算來降低傳輸的數的值。算法的大概流程像下面的圖這樣。

首先確定一個公共的數對 (3 和 17),這個數對***都是質數,防止其他人進行猜測,其中3作為冪計算的底數,17作為求模的值。(這兩個概念不清楚的自己百度去)

交換的過程分為 3 part 。

第 1 part :A 和 B 各自生成一個私鑰。

第 2 part :A 和 B 進行指數運算,然后求模。

第 3 part :A 和 B 對接收到的消息各自進行指數運算,然后求模,得到最終的公共的對稱密鑰。

這樣子,公共數 3、17、6、12 都是完全公開的,但是如果不擁有密鑰,想要靠猜的猜到 A 和 B 的公共密鑰是什么,還是需要很大的成本的,特別是我們把 3、17 這兩個公共數設置得非常非常大,然后 A 和 B 的私鑰也設置得非常非常大,這對于計算機來說短期內是不可破解的,甚至需要幾百萬年甚至更久,所以我們說這個算法是安全的。

那么,怎么保證 A 和 B 進行運算之后得到的數是一致的呢?

我們可以這樣看。

A 端:

接收到的 12 = 3^13 mod 17

所以 3 ^ 12 mod 17 = 3 ^ (13 * 12) mod 17

B 端:

接收到的 6 = 3^15 mod 17

所以 3 ^ 6 mod 17 = 3 ^ (12 * 13) mod 17

根據指數運算的規律,我們可以知道其實

 3 ^ 6 mod 17 = 3 ^ (12 * 13) mod 17 = 3 ^ (13 * 12) mod 17

好,無論這個最終計算到的數是什么,我們都可以保證 A 和 B 所擁有的密鑰是同一個值,然后后續所有的通訊都使用這個值進行加密運算然后傳輸就好了。

雖然這個方法很棒,但是你思考一下下面這個過程,如果 A 要跟 5 個人通信,那么 A 就要保存 5 個密鑰,久而久之,A會崩潰的。。。

如果不想這樣,那能怎么辦呢?關注后面的密碼學系列,可以解答這些問題。

【本文為51CTO專欄作者“大蕉”的原創稿件,轉載請通過作者微信公眾號“一名叫大蕉的程序員”獲取授權】

戳這里,看該作者更多好文

責任編輯:武曉燕 來源: 51CTO專欄
相關推薦

2009-12-29 12:37:17

2009-11-02 12:50:09

2013-01-21 10:31:50

2015-07-01 14:48:51

2010-04-21 12:04:06

2015-06-02 10:15:08

2012-04-16 10:12:54

Java線程

2011-11-25 09:34:52

2009-08-03 16:58:59

C#不安全代碼

2024-01-19 08:42:45

Java線程字符串

2023-06-01 19:24:16

2020-11-03 12:32:25

影子物聯網物聯網IOT

2020-04-22 20:35:02

HashMap線程安全

2021-04-04 23:16:52

安全刷臉銀行

2019-12-17 14:20:57

物聯網安全物聯網IOT

2014-09-12 17:44:23

2014-04-09 09:37:29

2023-10-16 19:05:20

2022-02-22 00:13:58

加密算法Hive勒索軟件

2009-11-18 10:05:13

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本久久久久久 | 羞羞色在线观看 | 91精品国产91久久久久久吃药 | 欧美一区二区三区四区视频 | 欧美在线一区二区三区 | 国产在线小视频 | 91黄在线观看 | 成人在线精品视频 | 免费一级毛片 | 亚洲在线| 日韩最新网站 | 亚洲综合大片69999 | 日本在线免费看最新的电影 | 99爱在线视频 | 亚洲一二三区在线观看 | 国产精品资源在线 | 伊久在线| 欧美激情一区二区三区 | 欧美日韩一区二区三区四区 | 精品综合 | 久久精品成人 | 亚洲欧美在线视频 | 成人欧美一区二区三区在线播放 | 中文精品久久 | 一区二区三区亚洲视频 | 一区二区免费在线 | 国产欧美久久精品 | 久久久美女| 日韩不卡一二区 | 男女网站视频 | 亚州精品天堂中文字幕 | 国产精品a久久久久 | 麻豆va| 国产一二三区精品视频 | 国产精品视频一区二区三区, | 欧美日韩网站 | 色狠狠桃花综合 | 日韩精品一区二区三区中文字幕 | 91精品国产色综合久久不卡98口 | 国产精品国产成人国产三级 | 久久久久久免费精品一区二区三区 |