一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

HTTPS協(xié)議和信鴿有什么關(guān)系如何通過(guò)信鴿來(lái)解釋

Linux愛(ài)好者 ? 來(lái)源:未知 ? 作者:易水寒 ? 2018-10-20 09:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

密碼學(xué)可能是一個(gè)難以理解的主題。它充滿了數(shù)學(xué)證明。除非你真的需要開(kāi)發(fā)密碼系統(tǒng),否則,如果你只想從宏觀的角度了解密碼學(xué),你并不需要理解這些復(fù)雜的內(nèi)容。

如果你抱著能夠創(chuàng)建下一個(gè) HTTPS 協(xié)議的期望打開(kāi)這篇文章,我不得不遺憾地表示只有信鴿是不夠的。否則,煮一些咖啡,享受這篇文章吧。

Alice,Bob 和信鴿?

你在互聯(lián)網(wǎng)上的任何活動(dòng)(閱讀這篇文章,在亞馬遜上買(mǎi)東西,上傳貓咪的圖片)都?xì)w結(jié)為向服務(wù)器發(fā)送消息和從服務(wù)器接收消息。

這么講聽(tīng)起來(lái)可能有點(diǎn)抽象,因此,我們不妨假設(shè)這些信息是通過(guò)信鴿傳遞的。我明白這么假設(shè)顯得很隨意,但請(qǐng)相信我:HTTPS 的工作原理就是這樣的,只是快得多。

本文中我們并不會(huì)使用,服務(wù)器,客戶端和黑客這樣的術(shù)語(yǔ),取而代之的是,我們會(huì)依次使用人名 Alice、 Bob 和 Mallory來(lái)代替它們。如果你不是第一次嘗試?yán)斫饷艽a概念,你可以認(rèn)出這些名字,因?yàn)樗鼈儽粡V泛用于技術(shù)文獻(xiàn)中。

一次簡(jiǎn)單的通訊

如果 Alice 想要給 Bob 傳遞一條信息,她將信息綁在信鴿的腿上,然后讓信鴿傳給 Bob。Bob 收到信息,讀取信息。一切都正常。

但要是 Mallory 途中攔截了 Alice 的信鴿,并且改變了信息的內(nèi)容?Bob 無(wú)法知道 Alice 發(fā)送的信息在傳遞途中被修改了。

這就是HTTP的工作原理。挺可怕的,對(duì)吧?我不會(huì)通過(guò) HTTP 協(xié)議來(lái)發(fā)送我的銀行憑證,你也不應(yīng)該這么做。

一個(gè)密令

那如果 Alice 和 Bob 都很機(jī)靈呢。他們同意將使用密令來(lái)寫(xiě)信息。他們將字母表中的每個(gè)字母偏移 3 個(gè)位置。比如:D -> A, E -> B, F -> C。明文“secret message”將轉(zhuǎn)換成“pbzobq jbppxdb”。

現(xiàn)在,如果 Mallory 攔截了信鴿,她既不能把信息改變成一些有意義的信息,也不能明白信息里說(shuō)的內(nèi)容,因?yàn)樗恢烂芰?。但是Bob可以簡(jiǎn)單地反向應(yīng)用密令(A -> D, B -> E, C -> F)將信息解密。密文“pbzobq jbppxdb”將被解密回“secret message”。

大功告成!

這被稱為對(duì)稱密鑰密碼術(shù),因?yàn)楫?dāng)你知道如何加密一條信息,你也知道如何給信息解密。

我在上面介紹的密令通常被稱為凱撒密碼。在現(xiàn)實(shí)生活中,我們使用更高級(jí)和復(fù)雜的密令,但是主要思路是相同的。

我們?nèi)绾螞Q定密鑰是什么?

如果只有發(fā)送方和接收方知道密鑰,對(duì)稱密鑰密碼術(shù)是很安全的。在凱撒密碼中,密鑰是一個(gè)偏移值,這個(gè)偏移值決定每個(gè)字母應(yīng)該偏移多少。在我們的例子中,我們使用的偏移值是 3,但是也能是 4 或者 12。

不過(guò)這么設(shè)計(jì)會(huì)有個(gè)問(wèn)題:在用信鴿傳遞信息之前,如果 Alice 和 Bob 之前從沒(méi)見(jiàn)過(guò),他們沒(méi)有安全的方式創(chuàng)建一個(gè)密鑰。如果他們將密鑰包含在信息之中,Mallory 將攔截信息并且發(fā)現(xiàn)密鑰。后果就是:無(wú)論 Alice 和 Bob 發(fā)送的信息是否加密,Mallory 都能讀取或者改變攔截到的信息。

這是一個(gè)典型的中間人攻擊例子。避免它的唯一方法是改變之前的密碼系統(tǒng)。

攜帶盒子的信鴿

所以 Alice 和 Bob 想出了一個(gè)更好的系統(tǒng)。當(dāng) Bob 想要發(fā)送信息給 Alice 時(shí),Alice 將遵照下面的流程:

Bob 向 Alice 傳送一只信鴿,信鴿不攜帶任何信息。

Alice 將這只信鴿傳回給 Bob,信鴿攜帶一只開(kāi)著鎖的盒子以及密鑰。

Bob 把信息放到盒子里,將鎖鎖上,將盒子傳送給 Alice。

Alice 收到盒子,使用密鑰打開(kāi)盒子,讀取信息。

通過(guò)這種方式傳遞信息,Mallory 不可能通過(guò)攔截信鴿的方式來(lái)改變信息,因?yàn)樗龥](méi)有密鑰。當(dāng) Alice 想要向 Bob 發(fā)送信息時(shí),遵循相同的流程。

Alice 和 Bob 剛剛使用了通常所說(shuō)的非對(duì)稱密鑰密碼術(shù)。之所以稱它為非對(duì)稱,是因?yàn)榧词鼓憧梢约用芤粭l信息(鎖上盒子)但你也不能將它解密(打開(kāi)鎖住的盒子)。

我怎么信任這個(gè)盒子?

如果你夠仔細(xì)的話,你可能已經(jīng)意識(shí)到我們?nèi)匀挥幸粋€(gè)問(wèn)題。當(dāng) Bob 收到那個(gè)開(kāi)著的盒子時(shí),他如何確信這是來(lái)自 Alice 的盒子,而不是 Mallory 攔截信鴿后,將來(lái)自于 Alice 的盒子替換成 Mallory 自己設(shè)置了密鑰后的盒子。

Alice 決定對(duì)盒子進(jìn)行數(shù)字簽名,通過(guò)這種方式,當(dāng) Bob 收到盒子,他通過(guò)核對(duì)簽名的一致性來(lái)確定盒子是否來(lái)自 Alice。

有些人可能就會(huì)想 Bob 如何識(shí)別 Alice 的簽名?不錯(cuò)的問(wèn)題。Alice 和 Bob 也有同樣的疑問(wèn)。因此他們決定讓 Ted 對(duì)盒子進(jìn)行數(shù)字簽名,而不是 Alice。

Ted 是誰(shuí)?Ted 是一個(gè)著名且值得信賴的人。每個(gè)人都可以從Ted 那里獲得簽名,每個(gè)人都相信Ted 只會(huì)為合法的人提供盒子的數(shù)字簽名服務(wù)。

只有當(dāng)Ted 確信正在請(qǐng)求簽名的人是 Alice,Ted 才會(huì)為 Alice 提供盒子數(shù)字簽名的服務(wù)。因此 Mallory 不能再像之前那樣攔截 Alice 的盒子、替換盒子后傳送給 Bob 了,因?yàn)?Bob 會(huì)發(fā)現(xiàn)這個(gè)盒子在 Ted 那進(jìn)行數(shù)字簽名的是 Mallory,而不是 Alice。

Ted 在技術(shù)術(shù)語(yǔ)中通常被稱為證書(shū)頒發(fā)機(jī)構(gòu),你閱讀這篇文章所使用的瀏覽器安裝著各種證書(shū)頒發(fā)機(jī)構(gòu)的簽名。

因此當(dāng)你第一次連接到一個(gè)網(wǎng)站,你信任它的盒子,因?yàn)槟阈湃?Ted,而 Ted 告訴你這個(gè)盒子是合法的。

盒子太重了

Alice 和 Bob 現(xiàn)在有了一個(gè)可靠的通信系統(tǒng),但是他們意識(shí)到和僅僅攜帶信息的信鴿相比,攜帶盒子的信鴿太慢了。

他們決定只在傳遞密鑰的時(shí)候使用盒子的方法(非對(duì)稱密碼術(shù)),加密信息使用對(duì)稱密碼術(shù)(記得之前提到的凱撒密碼?)。

這樣的話可謂兩全其美:非對(duì)稱密碼術(shù)的可靠性和對(duì)稱密碼術(shù)的效率都有了。

在現(xiàn)實(shí)世界中,“信鴿”的傳送速度都很快,但盡管這么講,使用非對(duì)稱密碼技術(shù)加密消息比使用對(duì)稱密碼技術(shù)慢,所以我們只使用它來(lái)交換加密密鑰。

現(xiàn)在你知道了HTTPS的工作原理,你的咖啡也該煮好了。去喝吧,這是你應(yīng)得的。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 互聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    55

    文章

    11251

    瀏覽量

    106433
  • 通信系統(tǒng)
    +關(guān)注

    關(guān)注

    6

    文章

    1228

    瀏覽量

    54173
  • HTTP
    +關(guān)注

    關(guān)注

    0

    文章

    525

    瀏覽量

    33517

原文標(biāo)題:通過(guò)信鴿來(lái)解釋 HTTPS

文章出處:【微信號(hào):LinuxHub,微信公眾號(hào):Linux愛(ài)好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    ARM9和STM32什么關(guān)系

    小伙伴問(wèn):ARM9和STM32什么關(guān)系?
    發(fā)表于 12-19 11:06 ?2339次閱讀

    什么是STM32? STM32與ARM什么關(guān)系? STM32能做什么?

    什么是STM32 具體用于什么方面較多?? STM32與ARM什么關(guān)系 STM32能做什么,簡(jiǎn)單的比如調(diào)節(jié)協(xié)議,為什么那么久的產(chǎn)品到現(xiàn)在還是主流?
    發(fā)表于 06-23 17:34

    使用騰訊信鴿做消息推送

    使用信鴿創(chuàng)建demo app安裝在手機(jī)上下載騰訊提供的sdk我用的是python版本的,只需替換掉 id 和key ,在樹(shù)莓派上執(zhí)行就可以推送的手機(jī)上個(gè)性化設(shè)置也比較多,還不錯(cuò)
    發(fā)表于 03-02 18:36

    ARM和AVR什么關(guān)系

    ARM和AVR什么關(guān)系非常迷茫,或者是是什么樣的聯(lián)系
    發(fā)表于 05-20 14:50

    信鴿電子環(huán)復(fù)制器

    信鴿電子環(huán)能復(fù)制嗎
    發(fā)表于 11-12 06:50

    請(qǐng)問(wèn)VNF和NSF是什么關(guān)系?看到VNF解釋說(shuō)是在SIMCOP中的,什么意義?

    本帖最后由 一只耳朵怪 于 2018-6-22 14:17 編輯 Dear all,我以下兩個(gè)個(gè)疑問(wèn)。1:VNF和NSF是什么關(guān)系?看到VNF解釋說(shuō)是在SIMCOP中的,什么
    發(fā)表于 06-22 04:21

    請(qǐng)問(wèn)USB D+和D-線的speed設(shè)置和USB協(xié)議什么關(guān)系

    關(guān)于USBD+和D-線的speed設(shè)置,和USB協(xié)議什么關(guān)系呢?4-20ns是什么意思?這個(gè)值關(guān)系到IO口的speed嗎?
    發(fā)表于 06-11 15:06

    光點(diǎn)“信鴿”復(fù)合翼無(wú)人機(jī),組裝快捷

    今日,無(wú)人機(jī)網(wǎng)又添新成員“無(wú)人機(jī)網(wǎng)號(hào)-信鴿”。該機(jī)是由“廣東東莞光點(diǎn)科技有限公司(以下簡(jiǎn)稱:光點(diǎn)科技)”所提供,這是一款可快速組裝、便攜的復(fù)合翼無(wú)人機(jī)。
    的頭像 發(fā)表于 08-11 08:44 ?4664次閱讀

    220V電和380V電什么區(qū)別和什么關(guān)系

    電,是我們?nèi)粘I钪斜夭豢缮俚臇|西了,可是我們很多人卻不了解我們使用的電是怎么來(lái)的,220V 電和 380V 電之間什么關(guān)系
    發(fā)表于 12-21 08:00 ?39次下載

    LED的亮度與PWM什么關(guān)系詳細(xì)代碼說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是LED的亮度與PWM什么關(guān)系詳細(xì)代碼說(shuō)明。
    發(fā)表于 08-01 17:34 ?15次下載
    LED的亮度與PWM<b class='flag-5'>有</b><b class='flag-5'>什么關(guān)系</b>詳細(xì)代碼說(shuō)明

    一文看懂PD協(xié)議和Type-C的區(qū)別

    說(shuō)到充電快,那一定要了解下PD快充協(xié)議?那么PD協(xié)議和Type-C又有什么關(guān)系呢?下面帶你一起來(lái)搞清楚。
    的頭像 發(fā)表于 12-22 07:25 ?14.6w次閱讀
    一文看懂PD<b class='flag-5'>協(xié)議和</b>Type-C的區(qū)別

    USB接口與雷電接口什么關(guān)系?

    USB接口和雷電接口什么關(guān)系
    的頭像 發(fā)表于 01-13 16:34 ?1.8w次閱讀

    聲音(sound)是什么,它和頻率什么關(guān)系

    大家好,今天和大家分享一下聲音的物理知識(shí)。聲音(sound)聲音是什么,他和頻率什么關(guān)系?聲音就是由物體振動(dòng)產(chǎn)生的聲波。是通過(guò)介質(zhì)(空氣或固體、液體)傳播并能被人或動(dòng)物聽(tīng)覺(jué)器官所感知的波動(dòng)現(xiàn)象。最初發(fā)出振動(dòng)(震動(dòng))的物體叫聲源
    的頭像 發(fā)表于 03-08 10:52 ?5097次閱讀

    減速電機(jī)的扭矩與速度什么關(guān)系?

    減速電機(jī)的扭矩與速度什么關(guān)系? 減速電機(jī)是一種常見(jiàn)的電動(dòng)機(jī),常用于需要精確控制轉(zhuǎn)速和輸出扭矩的應(yīng)用中。在了解減速電機(jī)的扭矩與速度關(guān)系之前,我們先來(lái)了解一下減速電機(jī)的基本原理。 減速電機(jī)由兩部分
    的頭像 發(fā)表于 12-19 09:55 ?2396次閱讀

    什么是頻域分析?頻域和時(shí)域什么關(guān)系

    什么是頻域分析?頻域和時(shí)域什么關(guān)系? 頻域分析是一種用于分析信號(hào)的方法,它將信號(hào)從時(shí)域(時(shí)鐘)轉(zhuǎn)換為頻域(頻率)。頻域分析允許我們觀察信號(hào)中包含的不同頻率成分,并確定它們的振幅、相位和其它特性
    的頭像 發(fā)表于 02-03 17:19 ?5044次閱讀