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é)議是什么?為什么安全?

jf_uPRfTJDa ? 來(lái)源:5G通信 ? 2023-01-08 14:36 ? 次閱讀

Labs 導(dǎo)讀

HTTPS協(xié)議是最廣泛的互聯(lián)網(wǎng)應(yīng)用層協(xié)議標(biāo)準(zhǔn),由HTTP加上TLS/SSL協(xié)議構(gòu)建的可進(jìn)行加密傳輸、身份認(rèn)證網(wǎng)絡(luò)協(xié)議,主要通過(guò)數(shù)字證書(shū)、加密算法、非對(duì)稱密鑰等技術(shù)完成互聯(lián)網(wǎng)數(shù)據(jù)傳輸加密,實(shí)現(xiàn)互聯(lián)網(wǎng)傳輸安全保護(hù)。本文將從“保密性”“完整性”“有效性”這三個(gè)維度介紹HTTPS協(xié)議安全的緣由。

1

HTTPS協(xié)議安全是什么?

眾所周知,HTTP協(xié)議作為互聯(lián)網(wǎng)應(yīng)用層協(xié)議標(biāo)準(zhǔn),并未對(duì)安全做過(guò)多的設(shè)計(jì)。從密碼學(xué)理論來(lái)分析,一個(gè)傳輸?shù)陌踩员仨毐WC三大基本要要素:(1)數(shù)據(jù)的保密性;(2)數(shù)據(jù)的完整性;(3)身份校驗(yàn)的安全性。

HTTPS簡(jiǎn)單理解成HTTP over SSL/TLS。客戶端和服務(wù)端在使用HTTPS傳輸業(yè)務(wù)數(shù)據(jù)前,首先由SSL/TLS協(xié)議在兩端之間建立安全信道(這個(gè)過(guò)程稱作握手協(xié)商階段),然后在該安全信道上對(duì)HTTP業(yè)務(wù)報(bào)文進(jìn)行加密傳輸(這個(gè)過(guò)程稱作加密數(shù)據(jù)傳輸階段)。接下來(lái)我們將從HTTP本身存在的安全問(wèn)題和HTTPS如何解決上述三個(gè)問(wèn)題來(lái)詳細(xì)論述HTTPS協(xié)議為什么安全。

df13db56-8e85-11ed-bfe3-dac502259ad0.png

圖1 HTTPvsHTTPS

2

HTTP通信傳輸存在的問(wèn)題

SSL/TLS的安全性體現(xiàn)在哪里,解決了哪些安全問(wèn)題,如何解決的,下面一步步介紹。

首先,先了解下客戶端和服務(wù)端之間使用明文HTTP通信存在的安全問(wèn)題。

df2cdc5a-8e85-11ed-bfe3-dac502259ad0.png

圖2 HTTP安全問(wèn)題及HTTP到HTTPS的改造

關(guān)于HTTP協(xié)議的明文數(shù)據(jù)傳輸,攻擊者最常用的攻擊手法就是網(wǎng)絡(luò)嗅探,試圖從傳輸過(guò)程的數(shù)據(jù)包中分析出敏感的數(shù)據(jù),例如管理員在Web程序后臺(tái)的登錄過(guò)程、用戶的隱秘信息手機(jī)號(hào)碼、身份證號(hào)碼、信用卡號(hào))等重要資料,可能導(dǎo)致嚴(yán)重的安全事故。

HTTP協(xié)議在傳輸客戶端請(qǐng)求和服務(wù)端響應(yīng)時(shí),唯一的數(shù)據(jù)完整性檢驗(yàn)就是在報(bào)文頭部包含了本次傳輸數(shù)據(jù)的長(zhǎng)度,而對(duì)內(nèi)容是否被篡改不作確認(rèn)。因此攻擊者可以輕易的發(fā)動(dòng)中間人攻擊,修改客戶端和服務(wù)端傳輸?shù)臄?shù)據(jù),甚至在傳輸數(shù)據(jù)中插入惡意代碼,導(dǎo)致客戶端被引導(dǎo)至惡意網(wǎng)站被植入木馬。

3

SSL/TLS協(xié)議的作用

SSL/TLS協(xié)議通過(guò)數(shù)字證書(shū)、非對(duì)稱密鑰、對(duì)稱加密算法、消息驗(yàn)證碼算法等技術(shù),實(shí)現(xiàn)了通信雙方的身份驗(yàn)證、數(shù)據(jù)傳輸加密、防篡改等安全保護(hù)措施,其主要目標(biāo)是:

數(shù)據(jù)保密性:保證數(shù)據(jù)內(nèi)容在傳輸?shù)倪^(guò)程中不會(huì)被第三方查看,防止用戶數(shù)據(jù)信息的泄漏。

數(shù)據(jù)完整性:及時(shí)發(fā)現(xiàn)被第三方篡改的傳輸內(nèi)容,一旦發(fā)現(xiàn)數(shù)據(jù)被篡改過(guò)則拒絕接收。

身份校驗(yàn)安全性:保證數(shù)據(jù)到達(dá)用戶期望的目的地??蛻舳诵枰?yàn)證目前正在通信的對(duì)端是否為期望的服務(wù)器,而非假冒的服務(wù)器。反之,服務(wù)器也可以對(duì)客戶端進(jìn)行有效性驗(yàn)證。

3.1 如何通過(guò)SSL/TLS協(xié)議實(shí)現(xiàn)數(shù)據(jù)保密性?

HTTPS中,數(shù)據(jù)保密性指對(duì)客戶端和服務(wù)端傳輸?shù)腍TTP明文數(shù)據(jù)進(jìn)行加密傳輸。使用的算法為對(duì)稱加密算法,如AES。數(shù)據(jù)保密性實(shí)現(xiàn)流程如下圖:

df4470c2-8e85-11ed-bfe3-dac502259ad0.png

圖3 數(shù)據(jù)保密性實(shí)現(xiàn)流程

數(shù)據(jù)保密性需要通信雙方具有相同的密鑰,而且這個(gè)密鑰只能通信雙方知道,不能被第三方獲取。實(shí)際通信中,這個(gè)密鑰并不是固定不變的,也不會(huì)保存到磁盤(pán)文件中。客戶端每次和服務(wù)器建立新連接的時(shí)候,都會(huì)重新協(xié)商出相同的密鑰。在SSL/TLS協(xié)議的第一階段——握手協(xié)商階段,服務(wù)器和客戶端會(huì)交互一些報(bào)文信息,服務(wù)器和客戶端根據(jù)報(bào)文中的信息各自生成相同的密鑰,并把密鑰保存在內(nèi)存中。一旦這個(gè)連接斷開(kāi),內(nèi)存中的密鑰將會(huì)自動(dòng)銷毀,避免密鑰的泄漏。

3.2 如何通過(guò)SSL/TLS協(xié)議實(shí)現(xiàn)數(shù)據(jù)完整性?

數(shù)據(jù)完整性用于防止HTTP數(shù)據(jù)被篡改,如果一旦發(fā)現(xiàn)數(shù)據(jù)被篡改則拒收數(shù)據(jù)包。使用的算法稱作消息驗(yàn)證碼算法(MAC)。數(shù)據(jù)完整性實(shí)現(xiàn)流程如下圖:

df58a3da-8e85-11ed-bfe3-dac502259ad0.png

圖4 數(shù)據(jù)完整性實(shí)現(xiàn)流程

和數(shù)據(jù)保密性中的密鑰獲取方式一樣,這里的密鑰也是在SSL/TLS密鑰協(xié)商階段生成的、相同的、并保存在各自內(nèi)存中。

3.3 如何通過(guò)SSL/TLS協(xié)議實(shí)現(xiàn)身份校驗(yàn)的安全性?

HTTPS中,客戶端需要對(duì)通信端的身份有效性進(jìn)行校驗(yàn),確定客戶端是和期望的真正服務(wù)端通信,而非和冒充的攻擊者進(jìn)行通信。

身份校驗(yàn)安全性主要利用數(shù)字證書(shū)技術(shù)實(shí)現(xiàn)。數(shù)字證書(shū)涉及的概念非常多,比如數(shù)字證書(shū)簽發(fā)、CA證書(shū)、根證書(shū)、證書(shū)鏈、證書(shū)有效性校驗(yàn)、非對(duì)稱密鑰算法、簽名/驗(yàn)證等,本文不做全面介紹,僅描述SSL/TLS涉及的概念:

3.3.1 非對(duì)稱密鑰算法

對(duì)稱密鑰算法中,加解密操作使用的密鑰是同一個(gè),且通信雙方都需要知道這個(gè)密鑰。而非對(duì)稱密鑰算法有兩個(gè)密鑰,組成一個(gè)密鑰對(duì);可以公開(kāi)的密鑰為公鑰,公鑰誰(shuí)都可以知道,不怕泄漏;需要保密不能泄露的密鑰稱為私鑰,私鑰只有自己知道,不能被泄漏;通信雙方的每一方,可以把自己的公鑰發(fā)送給對(duì)端,但自己的私鑰一定只有自己知道;同一份數(shù)據(jù),使用公鑰加密,私鑰可以解密,反之,私鑰加密,公鑰可以解密。

df71e70a-8e85-11ed-bfe3-dac502259ad0.png

圖5 非對(duì)稱密鑰用法一——通信數(shù)據(jù)加密傳輸

如圖5所示,在SSL/TLS協(xié)議中,存在使用非對(duì)稱密鑰算法對(duì)通信數(shù)據(jù)進(jìn)行加密傳輸?shù)牟僮?,在使用非?duì)稱密鑰算法對(duì)通信數(shù)據(jù)進(jìn)行加密傳輸?shù)膱?chǎng)景將使用圖5中左圖的流程。這里需要注意圖5右圖流程,公鑰是公開(kāi)的,誰(shuí)都可以知道,用私鑰加密的數(shù)據(jù)是不具有保密性的,因?yàn)橹灰獡碛泄€就能解密數(shù)據(jù),所有竊聽(tīng)者都可以取到公鑰,都會(huì)看到真實(shí)數(shù)據(jù)內(nèi)容。實(shí)際上,圖5右圖“私鑰加密-公鑰解密”的使用場(chǎng)景稱作簽名的生成和校驗(yàn),SSL/TLS協(xié)議也會(huì)用到,簽名生成和驗(yàn)證流程如下圖:

df8eb006-8e85-11ed-bfe3-dac502259ad0.png

圖6 非對(duì)稱密鑰應(yīng)用二——通信數(shù)據(jù)簽名的生成及驗(yàn)證

私鑰加密的數(shù)據(jù)——簽名值——不具備保密性,但卻有校驗(yàn)作用。圖7中,通信數(shù)據(jù)是明文消息加上該消息的簽名值,簽名值用于對(duì)明文消息進(jìn)行校驗(yàn),驗(yàn)證明文消息的正確性、是否被篡改過(guò)。

非對(duì)稱密鑰算法的用法,總結(jié)下來(lái)就是:

公鑰加密-私鑰解密?用于數(shù)據(jù)加密傳輸?通信數(shù)據(jù)是密文

私鑰加密-公鑰解密?用于簽名的生成和校驗(yàn)?通信數(shù)據(jù)是明文消息加上消息簽名值

3.3.2 數(shù)字證書(shū)

數(shù)字證書(shū)的簽發(fā)、數(shù)字證書(shū)的校驗(yàn)、證書(shū)鏈的相關(guān)細(xì)節(jié),本文不做詳述,只要知道以下幾點(diǎn):

①HTTP到HTTPS,客戶端和服務(wù)器涉及的一些改造,主要包括

服務(wù)端

-服務(wù)端需要針對(duì)某個(gè)服務(wù)配置SSL/TLS相關(guān)配置項(xiàng),如密碼套件、證書(shū)/私鑰文件路徑。

-部署由CA機(jī)構(gòu)簽發(fā)的,包含服務(wù)器公鑰、服務(wù)器域名信息的數(shù)字證書(shū),可公開(kāi)證書(shū)。

-部署和公鑰配對(duì)的私鑰文件,私鑰文件要具有一定安全保護(hù)措施,不能被泄漏。

客戶端

-瀏覽器配置CA證書(shū)、根證書(shū)等文件,一般默認(rèn)內(nèi)置。

②證書(shū)的使用主要在SSL/TLS協(xié)議握手協(xié)商階段,簡(jiǎn)述如下:

-客戶端和服務(wù)端建連后,在SSL/TLS協(xié)議握手協(xié)商階段初期,服務(wù)端將自己的數(shù)字證書(shū)發(fā)送給客戶端,服務(wù)端私鑰文件自己使用。

-客戶端收到服務(wù)器數(shù)字證書(shū)后,通過(guò)配置的CA證書(shū)、根證書(shū),依據(jù)證書(shū)鏈的校驗(yàn)邏輯,驗(yàn)證服務(wù)器數(shù)字證書(shū)的有效性,一旦驗(yàn)證通過(guò),說(shuō)明服務(wù)器身份正確。

-客戶端從數(shù)字證書(shū)中取出服務(wù)器公鑰,服務(wù)端從自己的私鑰文件中取出服務(wù)器私鑰。

之后,客戶端和服務(wù)端,就會(huì)使用這對(duì)非對(duì)稱密鑰進(jìn)行SSL/TLS協(xié)議握手協(xié)商階段的其他處理。RSA密鑰協(xié)商算法中使用了圖5的用法,而DHE、ECDHE密鑰協(xié)商算法中使用了圖6的用法。

4

總結(jié)

在互聯(lián)網(wǎng)快速發(fā)展的今天,網(wǎng)絡(luò)安全成為關(guān)系經(jīng)濟(jì)平穩(wěn)運(yùn)行和安全的重要因素,而隨著國(guó)際信息安全環(huán)境日趨復(fù)雜,西方加緊對(duì)我國(guó)的網(wǎng)絡(luò)遏制,并加快利用網(wǎng)絡(luò)進(jìn)行意識(shí)形態(tài)滲透,我國(guó)的網(wǎng)絡(luò)安全面臨嚴(yán)峻挑戰(zhàn),中國(guó)移動(dòng)作為我國(guó)基礎(chǔ)網(wǎng)絡(luò)設(shè)施的運(yùn)營(yíng)商,未來(lái)將加速網(wǎng)絡(luò)安全方面的相關(guān)建設(shè)。

審核編輯 :李倩

聲明:本文內(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)投訴
  • 數(shù)據(jù)傳輸
    +關(guān)注

    關(guān)注

    9

    文章

    1792

    瀏覽量

    64410
  • 協(xié)議
    +關(guān)注

    關(guān)注

    2

    文章

    593

    瀏覽量

    39133
  • https
    +關(guān)注

    關(guān)注

    0

    文章

    50

    瀏覽量

    6090

原文標(biāo)題:技術(shù)解析 | HTTPS協(xié)議是什么?為什么安全?

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    低功耗4G模組HTTP網(wǎng)絡(luò)協(xié)議應(yīng)用

    于TLS或SSL協(xié)議層之上,這個(gè)時(shí)候,就成了我們常說(shuō)的HTTPS,所以HTTPS相關(guān)的指令只需要參考SSL部分配置連接,其他和http都是一樣
    的頭像 發(fā)表于 11-01 07:23 ?85次閱讀
    低功耗4G模組HTTP網(wǎng)絡(luò)<b class='flag-5'>協(xié)議</b>應(yīng)用

    https 的本質(zhì)、證書(shū)驗(yàn)證過(guò)程以及數(shù)據(jù)加密

    1. 什么是 HTTPS HTTP 加上加密處理和認(rèn)證以及完整性保護(hù)后即是 HTTPS。 它是為了解決 HTTP 存在的安全性問(wèn)題,而衍生的協(xié)議,那使用 HTTP 的缺點(diǎn)有: 1.通信
    的頭像 發(fā)表于 10-30 10:53 ?54次閱讀
    <b class='flag-5'>https</b> 的本質(zhì)、證書(shū)驗(yàn)證過(guò)程以及數(shù)據(jù)加密

    起吊機(jī)革新:協(xié)議轉(zhuǎn)換器解鎖安全與效率

    重工起吊機(jī)設(shè)備在工業(yè)生產(chǎn)中扮演著至關(guān)重要的角色,但其在實(shí)際應(yīng)用中面臨著一系列痛點(diǎn)問(wèn)題。這些問(wèn)題不僅影響了起吊機(jī)的性能和安全性,還限制了生產(chǎn)效率的提升。明達(dá)技術(shù)自主研發(fā)的MG協(xié)議轉(zhuǎn)換器能夠高效解決這些痛點(diǎn),同時(shí)MG協(xié)議轉(zhuǎn)換器作為一
    的頭像 發(fā)表于 10-14 13:45 ?123次閱讀
    起吊機(jī)革新:<b class='flag-5'>協(xié)議</b>轉(zhuǎn)換器解鎖<b class='flag-5'>安全</b>與效率

    NFC協(xié)議分析儀的技術(shù)原理和應(yīng)用場(chǎng)景

    和處理。 應(yīng)用場(chǎng)景NFC協(xié)議分析儀在多個(gè)領(lǐng)域都有重要的應(yīng)用場(chǎng)景,主要包括但不限于以下幾個(gè)方面: 移動(dòng)支付:在移動(dòng)支付領(lǐng)域,NFC協(xié)議分析儀可以用于分析移動(dòng)支付過(guò)程中涉及的通信協(xié)議安全
    發(fā)表于 09-25 14:45

    HTTP協(xié)議下的海外網(wǎng)絡(luò)暢游:安全與效率的雙重保障

    在全球化日益加深的今天,HTTP協(xié)議作為互聯(lián)網(wǎng)上最為廣泛使用的通信協(xié)議之一,為海外網(wǎng)絡(luò)暢游提供了重要的技術(shù)支持。在HTTP協(xié)議下,海外網(wǎng)絡(luò)暢游不僅追求高效的訪問(wèn)速度,還注重?cái)?shù)據(jù)傳輸?shù)?b class='flag-5'>安全
    的頭像 發(fā)表于 09-24 08:08 ?153次閱讀

    這是幾種HTTPS代理保障用戶數(shù)據(jù)安全的方式#HTTPS代理

    HTTP
    jf_62215197
    發(fā)布于 :2024年08月23日 08:14:11

    有沒(méi)有辦法使用AT命令連接到安全服務(wù)器(https)?

    有沒(méi)有辦法使用 AT 命令連接到安全服務(wù)器 (https)?如果是這樣,將如何做到?
    發(fā)表于 07-17 08:16

    ESP32使用HTTPS協(xié)議無(wú)法與服務(wù)器建立連接怎么解決?

    說(shuō)明:1、ESP-IDF版本為v4.3.3, 2、參考的例程為examplesprotocolsesp_http_client的https_with_url 3、網(wǎng)絡(luò)連接正常,遠(yuǎn)程的HTTPS
    發(fā)表于 06-12 07:01

    國(guó)密協(xié)議網(wǎng)關(guān)與IPSec VPN技術(shù):保障數(shù)據(jù)安全傳輸?shù)男峦緩?/a>

    國(guó)密協(xié)議網(wǎng)關(guān)IPSecVPN隧道技術(shù)是一種結(jié)合了國(guó)家密碼管理局(簡(jiǎn)稱國(guó)密)的加密算法和IPSecVPN隧道技術(shù)的安全通信解決方案。IPSec(InternetProtocolSecurity
    的頭像 發(fā)表于 05-28 14:24 ?1060次閱讀
    國(guó)密<b class='flag-5'>協(xié)議</b>網(wǎng)關(guān)與IPSec VPN技術(shù):保障數(shù)據(jù)<b class='flag-5'>安全</b>傳輸?shù)男峦緩? />    </a>
</div>                            <div   id=

    epa通信協(xié)議是什么?epa協(xié)議介紹

    的以太網(wǎng)協(xié)議進(jìn)行了許多優(yōu)化和擴(kuò)展,以滿足現(xiàn)場(chǎng)自動(dòng)化設(shè)備的高可靠性、實(shí)時(shí)性和安全性要求。與傳統(tǒng)的以太網(wǎng)不同,EPA提供了對(duì)工業(yè)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)、實(shí)時(shí)通信機(jī)制、故障恢復(fù)和安全性的特殊支持。 EPA協(xié)議
    的頭像 發(fā)表于 05-08 14:16 ?415次閱讀

    epa通信協(xié)議是什么?epa協(xié)議介紹

    的以太網(wǎng)協(xié)議進(jìn)行了許多優(yōu)化和擴(kuò)展,以滿足現(xiàn)場(chǎng)自動(dòng)化設(shè)備的高可靠性、實(shí)時(shí)性和安全性要求。與傳統(tǒng)的以太網(wǎng)不同,EPA提供了對(duì)工業(yè)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)、實(shí)時(shí)通信機(jī)制、故障恢復(fù)和安全性的特殊支持。 EPA協(xié)議
    的頭像 發(fā)表于 04-23 14:21 ?729次閱讀

    TPUNB協(xié)議是什么?TPUNB協(xié)議特點(diǎn) TPUNB協(xié)議調(diào)度

    。TPUNB協(xié)議旨在提供更加安全、可靠和高效的通信方式,以滿足日益增長(zhǎng)的物聯(lián)網(wǎng)設(shè)備的需求。 TPUNB協(xié)議的特點(diǎn)如下: 1. 低功耗:TPUNB協(xié)議采用了功耗較低的傳輸方式,使得物聯(lián)網(wǎng)
    的頭像 發(fā)表于 02-01 10:28 ?2613次閱讀

    雅特力AT32 MCU基于mbed TLS的HTTPS服務(wù)器

    HTTPS概述HTTPS安全性是基于TransportLayerSecurity(TLS),TLS是一種網(wǎng)絡(luò)加密通信的方式,作為SecureSocketsLayer(SSL)的接續(xù)協(xié)議
    的頭像 發(fā)表于 01-06 08:14 ?518次閱讀
    雅特力AT32 MCU基于mbed TLS的<b class='flag-5'>HTTPS</b>服務(wù)器

    WITS協(xié)議是什么?WITS協(xié)議的功能

    格式和相關(guān)規(guī)范,以確保各方在使用WITS協(xié)議時(shí)能夠達(dá)到一致的技術(shù)要求和操作流程。 此外,WITS協(xié)議是一種用于無(wú)線信息和電信系統(tǒng)的通信協(xié)議,旨在提供高效、安全和可靠的通信服務(wù)。它適用于
    的頭像 發(fā)表于 01-05 16:23 ?956次閱讀

    Android安全性:保護(hù)你的應(yīng)用和用戶數(shù)據(jù)

    其次,數(shù)據(jù)傳輸加密也是一個(gè)重要的安全性方面。在應(yīng)用中,數(shù)據(jù)的傳輸經(jīng)常涉及到敏感信息,例如用戶的個(gè)人信息、登錄憑證等。為了保護(hù)這些敏感信息不被竊取或篡改,應(yīng)用開(kāi)發(fā)者應(yīng)該使用安全的通信協(xié)議,例如
    的頭像 發(fā)表于 11-25 11:24 ?1336次閱讀