歡迎訪問昆山寶鼎軟件有限公司網站! 設為首頁 | 網站地圖 | XML | RSS訂閱 | 寶鼎郵箱 | 后臺管理
?

探灵笔记游戏如何下载:新聞資訊

MENU

軟件開發知識

這樣鮑勃收到盒子的時候就可以 點擊: 次  來源:寶鼎軟件 時間:2019-01-10

譯文出處: oschina   原文出處:freecodecamp

探灵笔记小皮美颜版 www.pfyvo.icu 暗碼學是一門難以領略的學科,因為它布滿了數學定理??墑淺悄鬩導士爻鲆惶準用芩惴ㄏ低?,昆山軟件開發,不然你是沒須要強制領略那些深奧的數學定理的。

假如你閱讀本文的目標是想設計下一套 HTTPS 協議,那我只能歉仄的說本文的常識還遠遠不足;假如不是的話,那么就煮杯咖啡,輕松愉悅的閱讀本文吧。

愛麗絲、鮑伯和 … 信鴿?

你在互聯網上從事的任何勾當(閱讀這篇文章、在亞馬遜上購物、上傳圖片等)歸結到底都是從某臺處事器上發送和吸收信息。

這個說起來大概有點抽象,不如讓我們假設這些動靜都是由信鴿來通報的。我知道這個假設有些過分隨意,但相信我 HTTPS 就是這樣事情的,盡量它的速度快的多。

我們先不談處事器、客戶端可能黑客進攻,先來聊一下愛麗絲、鮑伯和馬洛里。假如這已不是你第一次打仗暗碼學理論,你應該會認識這些名字,因為他們常常在各類暗碼學文獻中被提及。

一個簡樸的通信方法

假如愛麗絲想給鮑伯發個動靜,她會把動靜綁在信鴿的腿上寄給鮑伯。然后鮑伯收到了動靜,并閱讀了它。這一切都是優美的。

但假如馬洛里攔截了愛麗絲翱翔中的信鴿而且修竄改靜內容呢?鮑伯將無法知道愛麗絲發來的動靜已經在傳輸進程中被修改了。

這就是 HTTP 的事情方法,很可駭吧?我毫不會通過 HTTP 發送我的銀行憑證,但愿你也不會。

隱蔽的暗碼

那么假如愛麗絲和鮑勃都很是的機警。他們一致認同利用一種隱蔽的暗碼來書寫他們的信息。他們會將信息中的每個字母憑據字母表中的順序前移三位。好比,D→A,E→B,F→C。如此一來,原文為 “secret message” 的信息就釀成了 “pbzobq jbppxdb” 。

那此刻假如馬洛里再截獲了信鴿,她既不能做出有意義的修改同時也不會知道信息的內容,因為她不知道隱蔽的暗碼到底是什么。然而鮑勃卻可以很容易反轉暗碼,依靠 A → D, B → E, C → F 之類的法則破譯信息的內容。加密后的信息 “pbzobq jbppxdb” 會被破解還原為 “secret message” 。

搞定!

這就是對稱密匙加密,因為假如你知道如何加密一段信息那么你同樣可以解密這段信息。

上述的暗碼凡是被稱為凱撒碼。在現實糊口中,我們會利用更為怪異和巨大的暗碼,但道理溝通。

我們如何抉擇密匙?

假如除了發信者和收信者之外沒有人知道利用的是什么密匙,對稱密匙加密長短常安詳的。在凱撒加密中,密匙就是每個字母變到加密字母需要移動幾多位的偏移量。我之前的間隔中,利用的偏移量是 3 ,可是也可以用 4 可能 12 。

問題是假如愛麗絲和鮑勃在開始用信鴿傳信之前沒有碰過甚,他們沒有一個安詳的方法來確立密匙。假如他們本身來在信中通報密匙,馬洛里就會截獲信息并發明密匙。這就使得馬洛里可以在愛麗絲和鮑勃開始加密他們的信息之前或之后,昆山軟件公司,閱讀到他們信息的內容并憑據她的意愿來改動信息。

這是一其中間人進攻的典規范子,制止這個問題的獨一要領就是收發信的兩方一起修改他們的編碼系統。

通過信鴿通報盒子

所以愛麗絲和鮑勃就想出了一個更好的系統。當鮑勃想要給愛麗絲發送信息時,他會憑據如下的步調來舉辦:

  • 鮑勃向愛麗絲送一只沒有攜帶任何信息的鴿子。
  • 愛麗絲給鮑勃送回鴿子,而且這只鴿子帶有一個有開著的鎖的盒子,愛麗絲保管著鎖的鑰匙。
  • 鮑勃把信放進盒子中,把鎖鎖上然后把盒子送給愛麗絲。
  • 愛麗絲收到盒子,用鑰匙打開然后閱讀信息。
  • 這樣馬洛里就不能通過截獲鴿子來改動信息了,因為她沒有打開盒子的鑰匙。當愛麗絲要給鮑勃發送動靜的時候同樣憑據上述的流程。

    愛麗絲和鮑勃所利用的流程凡是被稱為非對稱密鑰加密。之所以稱之為非對稱,是因為縱然是你把信息編碼(鎖上盒子)也不能破譯信息(打開鎖住的盒子)。

    在術語中,盒子被稱為公匙而用來打開盒子的鑰匙被稱為私匙。

    如何信任盒子

    假如你稍加留意你就會發明照舊存在問題。當鮑勃收到盒子時他如何能確定這個盒子來自愛麗絲而不是馬洛里截獲了鴿子然后換了一個她有鑰匙能打開的盒子呢?

    愛麗絲抉擇簽名標志一下盒子,這樣鮑勃收到盒子的時候就可以查抄簽名來確定是愛麗絲送出的盒子了。

    那么你們之中的一些人大概就會想了,鮑勃如何打一開始就能識別出愛麗絲的簽名呢?這是個好問題。愛麗絲和鮑勃也確實有這個問題,所以他們抉擇讓泰德取代愛麗絲來標志這個盒子。

    那么誰是泰德呢?泰德很有名的,是一個值得信任的家伙。他會給任何人簽名而且所有人都信任他只會給正當的人簽名標志盒子。