iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
1
Security

無趣的密碼學,有趣的加密!系列 第 14

[Day 14] 014 - 非對稱式密碼學 - Asymmetric cryptography (二)(上)​

  • 分享至 

  • xImage
  •  

Diffie–Hellman - 簡介

真的是好不容易阿~

我們來到了新的章節了,終於能把非對稱的另一個方法來跟大家說說了。

Diffie–Hellman可謂是十分強大,目前成為超級主流的同時,也是備受關注的一套方法。

並且也保證了前向安全性(Forward Secrecy)。

那我們一樣先用『無數學關係的解釋』來說明吧(記得傳給你其他不是資訊相關的朋友,一定能讓他聽得懂的~)


無數學關係的解釋

在講解之前,我想要跟大家說幾個前提:

  1. 內容只是解說,而技術、邏輯可能有所差異,但理念差不多。
  2. 敘述邏輯上,可能會有其他方式來破解,但真實在處理時,並不會有。

前提

接下來我想先說邏輯上的前提:

  1. 這是一個做飲料配方的比喻法。
  2. 兩種料混合後,就算知道其中一個料,卻不能知道另一個料。
  3. 料跟料的混合,沒有順序關係,『先加A料再加B料』跟『先加B料再加A料』是一樣的
  4. 都能夠不斷地混入新的料,做出新的飲料。

好~我們開始說故事吧!


三家廠商,合作與敵對!

這是三家公司的故事……(以下故事都是虛構的。)

A公司』與『T公司』是兩家合作的公司,這兩家公司希望能共同研發出『一款新的飲料』。

而這兩家公司有一間敵對的『C公司』,他們經常竊取別人的公司的機密配方,搞得A公司跟T公司都很頭痛。

而這一次要推出的新飲料很重要,而兩邊也希望保有自己配方的一部份。

但兩家廠商離得很遠,必需要透過送貨員來把料送給對方,但很擔心C公司偷竊配方。

兩家公司思考後,使用了以下的流程。

  1. A公司給了T公司說『嘿~我們一同使用P料吧!』,把P料寄送給T公司。
    • 在他們不知道的時候,其實送貨員被C公司買通,得知了P料
    • 關係圖:
      • A公司:P料。
      • T公司:P料。
      • C公司:P料。
  2. A公司使用了『P料』跟『公司內部的秘密配方AS料(A Security)』,並將其混合後得到了『P AS料』。
    • 關係圖:
      • A公司:P料、AS料、P AS料
      • T公司:P料。
      • C公司:P料。
  3. T公司使用了『P料』跟『公司內部的秘密配方TS料(T Security)』,並將其混合後得到了『P TS料』。
    • 關係圖:
      • A公司:P料、AS料、P AS料
      • T公司:P料、TS料、P TS料
      • C公司:P料。
  4. 因為東西都在公司內,所以C公司買通的送貨員,沒有辦法得到AS料跟TS料。
  5. 這時A公司把『P AS』寄送給了T公司,而T公司也把『P TS料』寄送給了A公司。
    • 這時C公司將一部份的P AS料P TS料竊取走。
    • 關係圖:
      • A公司:P料、AS料、P AS料P TS料
      • T公司:P料、TS料、P AS料P TS料
      • C公司:P料、P AS料P TS料
  6. A公司拿到了T公司的『P TS』後,用『秘密配方AS料(A Security)』混合後做出了『P AS TS飲料』。
    • 關係圖:
      • A公司:P料、AS料、P AS料P TS料 -> 『P AS TS飲料』。
      • T公司:P料、TS料、P AS料P TS料
      • C公司:P料、P AS料P TS料
  7. T公司拿到了A公司的『P AS』後,用『秘密配方TS料(T Security)』混合後做出了『P AS TS飲料』。
    • 關係圖:
      • A公司:P料、AS料、P AS料P TS料 -> 『P AS TS飲料』。
      • T公司:P料、TS料、P AS料P TS料 -> 『P AS TS飲料』。
      • C公司:P料、P AS料P TS料

兩家公司就共同完成了『P AS TS飲料』。

那C公司呢?

我們假設說,C公司沒辦法分離出P AS料P TS料,也沒辦法抽出混合在裡面的P料(你可以把鹽巴跟同樣大小顏色的糖混合後分離出來,那也是蠻厲害的)。
那以下假設:

  1. P料 + P AS料 -> PP AS飲料。(不等於P AS TS飲料
  2. P料 + P TS料 -> PP TS飲料。(不等於P AS TS飲料
  3. P AS料 + P TS料 -> PP AS TS飲料。(不等於P AS TS飲料
  4. P料 + P AS料 + P TS料 -> PPP AS TS飲料(不等於P AS TS飲料)。
    因此,C公司永遠也沒辦法做出『P AS TS飲料』。

大概知道了做飲料的辛苦了吧~

不是啦!這就是Diffie–Hellman的金鑰生成方式了。

Q. 那你說加解密?

A. 直接去做XOR就好。

Q. 你說那麼簡單!會不會被破解?

A. 這超安全的加密方式勒~你們知道嗎OTP也是這樣。

Q. 你說安全!為什麼!

A. 我想到OTP那邊在跟大家說,但我能說,因為有無限可能。


作者的話

這樣大家應該瞭解了大概的流程了。

那接下來講解數學的時候就能知道我們在做什麼了。

而數學的部分也十分的有趣就是了,之後也會提到ECC(橢圓曲線密碼學)。

一樣『接下來讓我們進入數學的世界吧!!』


上一篇
[Day 13] 013 - 非對稱式密碼學 - Asymmetric cryptography (一)(附錄)
下一篇
[Day 15] 015 - 非對稱式密碼學 - Asymmetric cryptography (二)(下)
系列文
無趣的密碼學,有趣的加密!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言