錦州市廣廈電腦維修|上門(mén)維修電腦|上門(mén)做系統(tǒng)|0416-3905144熱誠(chéng)服務(wù),錦州廣廈維修電腦,公司IT外包服務(wù)
topFlag1 設(shè)為首頁(yè)
topFlag3 收藏本站
 
maojin003 首 頁(yè) 公司介紹 服務(wù)項(xiàng)目 服務(wù)報(bào)價(jià) 維修流程 IT外包服務(wù) 服務(wù)器維護(hù) 技術(shù)文章 常見(jiàn)故障
錦州市廣廈電腦維修|上門(mén)維修電腦|上門(mén)做系統(tǒng)|0416-3905144熱誠(chéng)服務(wù)技術(shù)文章
HTTPS分析網(wǎng)絡(luò)加密解密

作者: 佚名  日期:2017-04-17 14:06:39   來(lái)源: 本站整理

 網(wǎng)絡(luò)加密解密,HTTPS讓互聯(lián)網(wǎng)更安全。HTTPS 是建立在密碼學(xué)基礎(chǔ)之上的一種安全通信協(xié)議,嚴(yán)格來(lái)說(shuō)是基于 HTTP 協(xié)議和 SSL/TLS 的組合。理解 HTTPS 之前有必要弄清楚一些密碼學(xué)的相關(guān)基礎(chǔ)概念,比如:明文、密文、密碼、密鑰、對(duì)稱(chēng)加密、非對(duì)稱(chēng)加密、信息摘要、數(shù)字簽名、數(shù)字證書(shū)。接下來(lái)我會(huì)逐個(gè)解釋這些術(shù)語(yǔ),文章里面提到的『數(shù)據(jù)』、『消息』都是同一個(gè)概念,表示用戶之間通信的內(nèi)容載體,此外文章中提到了以下幾個(gè)角色:

Alice:消息發(fā)送者

Bob:消息接收者

Attacker:中間攻擊者

Trent:第三方認(rèn)證機(jī)構(gòu)

密碼

密碼學(xué)中的“密碼”術(shù)語(yǔ)與網(wǎng)站登錄時(shí)用的密碼(password)是不一樣的概念,password 翻譯過(guò)來(lái)其實(shí)是“口令”,它是用于認(rèn)證用途的一組文本字符串。

而密碼學(xué)中的密碼(cipher)是一套算法(algorithm),這套算法用于對(duì)消息進(jìn)行加密和解密,從明文到密文的過(guò)程稱(chēng)之為加密,密文反過(guò)來(lái)生成明文稱(chēng)之為解密,加密算法與解密算法合在一起稱(chēng)為密碼算法。

密鑰

密鑰(key)是在使用密碼算法過(guò)程中輸入的一段參數(shù)。同一個(gè)明文在相同的密碼算法和不同的密鑰計(jì)算下會(huì)產(chǎn)生不同的密文。很多知名的密碼算法都是公開(kāi)的,密鑰才是決定密文是否安全的重要參數(shù),通常密鑰越長(zhǎng),破解的難度越大,比如一個(gè) 8 位的密鑰最多有 256 種情況,使用窮舉法,能非常輕易的破解。根據(jù)密鑰的使用方法,密碼可分為對(duì)稱(chēng)加密和公鑰加密。

對(duì)稱(chēng)加密

對(duì)稱(chēng)密鑰(Symmetric-key algorithm)又稱(chēng)為共享密鑰加密,加密和解密使用相同的密鑰。常見(jiàn)的對(duì)稱(chēng)加密算法有 DES、3DES、AES、RC5、RC6。對(duì)稱(chēng)密鑰的優(yōu)點(diǎn)是計(jì)算速度快,但是它有缺點(diǎn),接收者需要發(fā)送者告知密鑰才能解密,因此密鑰如何安全的發(fā)送給接收者成為了一個(gè)問(wèn)題。

\

Alice 給 Bob 發(fā)送數(shù)據(jù)時(shí),把數(shù)據(jù)用對(duì)稱(chēng)加密后發(fā)送給 Bob,發(fā)送過(guò)程中由于對(duì)數(shù)據(jù)進(jìn)行了加密,因此即使有人竊取了數(shù)據(jù)也沒(méi)法破解,因?yàn)樗恢烂荑是什么。但是同樣的問(wèn)題是 Bob 收到數(shù)據(jù)后也一籌莫展,因?yàn)樗膊恢烂荑是什么,那么 Alice 是不是可以把數(shù)據(jù)和密鑰一同發(fā)給 Bob 呢。當(dāng)然不行,一旦把密鑰和密鑰一起發(fā)送的話,那就跟發(fā)送明文沒(méi)什么區(qū)別了,因?yàn)橐坏┯腥税衙荑和數(shù)據(jù)同時(shí)獲取了,密文就破解了。所以對(duì)稱(chēng)加密的密鑰配是個(gè)問(wèn)題。如何解決呢,公鑰加密是一個(gè)辦法。

公鑰加密

公開(kāi)密鑰加密(public-key cryptography)簡(jiǎn)稱(chēng)公鑰加密,這套密碼算法包含配對(duì)的密鑰對(duì),分為加密密鑰和解密密鑰。發(fā)送者用加密密鑰進(jìn)行加密,接收者用解密密鑰進(jìn)行解密。加密密鑰是公開(kāi)的,任何人都可以獲取,因此加密密鑰又稱(chēng)為公鑰(public key),解密密鑰不能公開(kāi),只能自己使用,因此它又稱(chēng)為私鑰(private key)。常見(jiàn)的公鑰加密算法有 RSA。

還是以 Alice 給 Bob 發(fā)送數(shù)據(jù)為例,公鑰加密算法由接收者 Bob 發(fā)起

Bob 生成公鑰和私鑰對(duì),私鑰自己保存,不能透露給任何人。

Bob 把公鑰發(fā)送給 Alice,發(fā)送過(guò)程中即使被人竊取也沒(méi)關(guān)系

Alice 用公鑰把數(shù)據(jù)進(jìn)行加密,并發(fā)送給 Bob,發(fā)送過(guò)程中被人竊取了同樣沒(méi)關(guān)系,因?yàn)闆](méi)有配對(duì)的私鑰進(jìn)行解密是沒(méi)法破解的

Bob 用配對(duì)的私鑰解密。

\

雖然公鑰加密解決了密鑰配送的問(wèn)題,但是你沒(méi)法確認(rèn)公鑰是不是合法的,Bob 發(fā)送的公鑰你不能肯定真的是 Bob 發(fā)的,因?yàn)橐灿锌赡茉?Bob 把公鑰發(fā)送給 Alice 的過(guò)程中出現(xiàn)中間人攻擊,把真實(shí)的公鑰掉包替換。而對(duì)于 Alice 來(lái)說(shuō)完全不知。還有一個(gè)缺點(diǎn)是它的運(yùn)行速度比對(duì)稱(chēng)加密慢很多。

消息摘要

消息摘要(message digest)函數(shù)是一種用于判斷數(shù)據(jù)完整性的算法,也稱(chēng)為散列函數(shù)或哈希函數(shù),函數(shù)返回的值叫散列值,散列值又稱(chēng)為消息摘要或者指紋(fingerprint)。這種算法是一個(gè)不可逆的算法,因此你沒(méi)法通過(guò)消息摘要反向推倒出消息是什么。所以它也稱(chēng)為單向散列函數(shù)。下載軟件時(shí)如何確定是官方提供的完整版呢,如果有中間人在軟件里面嵌入了病毒,你也不得而知。所以我們可以使用散列函數(shù)對(duì)消息進(jìn)行運(yùn)算,生成散列值,通常軟件提供方會(huì)同時(shí)提供軟件的下載地址和軟件的散列值,用戶把軟件下載后在本地用相同的散列算法計(jì)算出散列值,與官方提供的散列值對(duì)比,如果相同,說(shuō)明該軟件是完成的,否則就是被人修改過(guò)了。常用的散列算法有 MD5、SHA。

\

下載 Eclipse 時(shí),官方網(wǎng)站同時(shí)提供了軟件地址和消息摘要

\

散列函數(shù)可以保證數(shù)據(jù)的完整性,識(shí)別出數(shù)據(jù)是否被篡改,但它并不能識(shí)別出數(shù)據(jù)是不是偽裝的,因?yàn)橹虚g人可以把數(shù)據(jù)和消息摘要同時(shí)替換,數(shù)據(jù)雖然是完整的,但真實(shí)數(shù)據(jù)被掉包了,接收者收到的并不是發(fā)送者發(fā)的,而是中間人的。消息認(rèn)證是解決數(shù)據(jù)真實(shí)性的辦法。認(rèn)證使用的技術(shù)有消息認(rèn)證碼和數(shù)字簽名。

消息認(rèn)證碼

消息認(rèn)證碼(message authentication code)是一種可以確認(rèn)消息完整性并進(jìn)行認(rèn)證(消息認(rèn)證是指確認(rèn)消息來(lái)自正確的發(fā)送者)的技術(shù),簡(jiǎn)稱(chēng) MAC。消息認(rèn)證碼可以簡(jiǎn)單理解為一種與密鑰相關(guān)的單向散列函數(shù)。

\

Alice 給 Bob 發(fā)送消息前,先把共享密鑰(key)發(fā)送給 Bob,Alice 把消息計(jì)算出 MAC 值,連同消息一起發(fā)送給 Bob,Bob 接收到消息和 MAC 值后,與本地計(jì)算得到 MAC 值對(duì)比,如果兩者相同,就說(shuō)明消息是完整的,而且可以確定是 Alice 發(fā)送的,沒(méi)有中間人偽造。不過(guò),消息認(rèn)證碼同樣會(huì)遇到對(duì)稱(chēng)加密的密鑰配送問(wèn)題,因此解決密鑰配送問(wèn)題還是要采用公鑰加密的方式。

此外,消息認(rèn)證碼還有一個(gè)無(wú)法解決的問(wèn)題,Bob 雖然可以識(shí)別出消息的篡改和偽裝,但是 Alice 可以否認(rèn)說(shuō):“我沒(méi)發(fā)消息,應(yīng)該是 Bob 的密鑰被 Attacker 盜取了,這是 Attacker 發(fā)的吧”。Alice 這么說(shuō)你還真沒(méi)什么可以反駁的,那么如何防止 Alice 不承認(rèn)呢,數(shù)字簽名可以實(shí)現(xiàn)。

數(shù)字簽名

Alice 發(fā)郵件找 Bob 借 1 萬(wàn)錢(qián),因?yàn)猷]件可以被人篡改(改成 10 萬(wàn)),也可以被偽造(Alice 根本就沒(méi)發(fā)郵件,而是 Attacker 偽造 Alice 在發(fā)郵件),Alice 借了錢(qián)之后還可以不承認(rèn)(不是我借的,我沒(méi)有簽名啊)。

消息認(rèn)證碼可以解決篡改和偽造的問(wèn)題,Alice 不承認(rèn)自己借了錢(qián)時(shí),Bob 去找第三方機(jī)構(gòu)做公正,即使這樣,公正方也沒(méi)法判斷 Alice 有沒(méi)有真的借錢(qián),因?yàn)樗麄儌z共享了密鑰,也就是說(shuō)兩個(gè)都可以計(jì)算出正確的 MAC 值,Bob 說(shuō):“明明你發(fā)的消息和 MAC 值和我自己生成的 MAC 值一樣,肯定是你發(fā)的消息”,Alice 說(shuō):“你把密鑰透露給了其他人,是他發(fā)的郵件,你找他去吧”。Alice 矢口否認(rèn)。

數(shù)字簽名(Digital Signature)就可以解決否認(rèn)的問(wèn)題,發(fā)送消息時(shí),Alice 和 Bob 使用不同的密鑰,把公鑰加密算法反過(guò)來(lái)使用,發(fā)送者 Alice 使用私鑰對(duì)消息進(jìn)行簽名,而且只能是擁有私鑰的 Alice 可以對(duì)消息簽名,Bob 用配對(duì)的公鑰去驗(yàn)證簽名,第三方機(jī)構(gòu)也可以用公鑰驗(yàn)證簽名,如果驗(yàn)證通過(guò),說(shuō)明消息一定是 Alice 發(fā)送的,抵賴(lài)也不行,因?yàn)槟阒挥?Alice 可以生成簽名。這就防止了否認(rèn)的問(wèn)題。

\

它的流程是:

第一步:發(fā)送者 Alice 把消息哈希函數(shù)處理生成消息摘要,摘要信息使用私鑰加密之后生成簽名,連同消息一起發(fā)送給接收者 Bob。

第二步:數(shù)據(jù)經(jīng)過(guò)網(wǎng)絡(luò)傳輸,Bob 收到數(shù)據(jù)后,把簽名和消息分別提取出來(lái)。

第三步:對(duì)簽名進(jìn)行驗(yàn)證,驗(yàn)證的過(guò)程是先把消息提取出來(lái)做同樣的 Hash 處理,得到消息摘要,再與 Alice 傳過(guò)來(lái)的簽名用公鑰解密,如果兩者相等,就表示簽名驗(yàn)證成功,否則驗(yàn)證失敗,表示不是 Alice 發(fā)的。

公鑰證書(shū)

公鑰密碼在數(shù)字簽名技術(shù)里面扮演舉足輕重的角色,但是如何保證公鑰是合法的呢,如果是遭到中間人攻擊,掉包怎么辦?這個(gè)時(shí)候公鑰就應(yīng)該交給一個(gè)第三方權(quán)威機(jī)構(gòu)來(lái)管理,這個(gè)機(jī)構(gòu)就是認(rèn)證機(jī)構(gòu)(Certification Authority)CA,CA 把用戶的姓名、組織、郵箱地址等個(gè)人信息收集起來(lái),還有此人的公鑰,并由 CA 提供數(shù)字簽名生成公鑰證書(shū)(Public-Key Certificate)PKC,簡(jiǎn)稱(chēng)證書(shū)。

\

Alice 向 Bob 發(fā)送消息時(shí),是通過(guò) Bob 提供的公鑰加密后的數(shù)據(jù),而 Alice 獲取的公鑰并不是由 Bob 直接給的,而是由委托一個(gè)受信任的第三方機(jī)構(gòu)給的。

Bob 生成密鑰對(duì),私鑰自己保管,公鑰交給認(rèn)證機(jī)構(gòu) Trent。

Trent 經(jīng)過(guò)一系列嚴(yán)格的檢查確認(rèn)公鑰是 Bob 本人的

Trent 事先也生成自己的一套密鑰對(duì),用自己的私鑰對(duì) Bob 的公鑰進(jìn)行數(shù)字簽名并生成數(shù)字證書(shū)。證書(shū)中包含了 Bob 的公鑰。公鑰在這里是不需要加密的,因?yàn)槿魏稳双@取 Bob 的公鑰都沒(méi)事,只要確定是 Bob 的公鑰就行。

Alice 獲取 Trent 提供的證書(shū)。

Alice 用 Trent 提供的公鑰對(duì)證書(shū)進(jìn)行簽名驗(yàn)證,簽名驗(yàn)證成功就表示證書(shū)中的公鑰是 Bob 的。

于是 Alice 就可以用 Bob 提供的公鑰對(duì)消息加密后發(fā)送給 Bob。

Bob 收到密文后,用與之配對(duì)的私鑰進(jìn)行解密。

至此,一套比較完善的數(shù)據(jù)傳輸方案就完成了。HTTPS(SSL/TLS)就是在這樣一套流程基礎(chǔ)之上建立起來(lái)的。



熱門(mén)文章
  • 機(jī)械革命S1 PRO-02 開(kāi)機(jī)不顯示 黑...
  • 聯(lián)想ThinkPad NM-C641上電掉電點(diǎn)不...
  • 三星一體激光打印機(jī)SCX-4521F維修...
  • 通過(guò)串口命令查看EMMC擦寫(xiě)次數(shù)和判...
  • IIS 8 開(kāi)啟 GZIP壓縮來(lái)減少網(wǎng)絡(luò)請(qǐng)求...
  • 索尼kd-49x7500e背光一半暗且閃爍 ...
  • 樓宇對(duì)講門(mén)禁讀卡異常維修,讀卡芯...
  • 新款海信電視機(jī)始終停留在開(kāi)機(jī)界面...
  • 常見(jiàn)打印機(jī)清零步驟
  • 安裝驅(qū)動(dòng)時(shí)提示不包含數(shù)字簽名的解...
  • 共享打印機(jī)需要密碼的解決方法
  • 圖解Windows 7系統(tǒng)快速共享打印機(jī)的...
  • 錦州廣廈電腦上門(mén)維修

    報(bào)修電話:13840665804  QQ:174984393 (聯(lián)系人:毛先生)   
    E-Mail:174984393@qq.com
    維修中心地址:錦州廣廈電腦城
    ICP備案/許可證號(hào):遼ICP備2023002984號(hào)-1
    上門(mén)服務(wù)區(qū)域: 遼寧錦州市區(qū)
    主要業(yè)務(wù): 修電腦,電腦修理,電腦維護(hù),上門(mén)維修電腦,黑屏藍(lán)屏死機(jī)故障排除,無(wú)線上網(wǎng)設(shè)置,IT服務(wù)外包,局域網(wǎng)組建,ADSL共享上網(wǎng),路由器設(shè)置,數(shù)據(jù)恢復(fù),密碼破解,光盤(pán)刻錄制作等服務(wù)

    技術(shù)支持:微軟等
    主站蜘蛛池模板: 国产精品无码AV不卡| 精品成在人线AV无码免费看| 无码人妻一区二区三区兔费| 久青草无码视频在线观看 | 无码人妻丝袜在线视频| 国产品无码一区二区三区在线| 国产av无码专区亚洲av果冻传媒| 人妻丰满AV无码久久不卡| 亚洲一级特黄大片无码毛片 | 亚洲中文久久精品无码1| yy111111电影院少妇影院无码| 亚洲Av无码专区国产乱码DVD | 91精品无码久久久久久五月天| av无码东京热亚洲男人的天堂| 精品欧洲AV无码一区二区男男| 中文午夜乱理片无码| 午夜无码性爽快影院6080| 无码人妻精品一区二区三区久久| 久久久久久无码国产精品中文字幕| 亚洲中文字幕无码久久2020| 色综合久久久久无码专区| 中文字幕久无码免费久久| 亚洲精品无码永久在线观看男男| 中文字幕无码日韩专区| 无码AV动漫精品一区二区免费| 97久久精品无码一区二区天美| 在线高清无码A.| 中文字幕日韩精品无码内射| 人妻无码aⅴ不卡中文字幕| 无码无套少妇毛多18PXXXX| 亚洲乱亚洲乱妇无码| 亚洲熟妇无码一区二区三区| 91嫩草国产在线无码观看| 精品无码一区二区三区亚洲桃色| 午夜无码国产理论在线| 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 国产成人无码久久久精品一| 波多野结AV衣东京热无码专区| 精品人体无码一区二区三区 | 亚洲AV中文无码乱人伦下载| 国产成人精品无码一区二区三区 |