搜尋
首頁運維安全為什麼HTTPS比HTTP安全

為什麼HTTPS比HTTP安全

Nov 28, 2019 pm 03:52 PM
httphttps安全

為什麼HTTPS比HTTP安全

HTTP(超文本傳輸協定)是目前網路應用最廣泛的協議,伴隨著人們網路安全意識的加強,HTTPS 被越來越多地採納。不論是造訪一些購物網站,或是登入一些部落格、論壇等,我們都被 HTTPS 保護著,甚至 Google Chrome、Firefox 等主流瀏覽器已經將所有基於 HTTP 的網站都標記為不安全。

為什麼 HTTPS 比 HTTP 安全?在回答這個問題之前,首先我們得先了解 HTTP 和 HTTPS 是什麼。

HTTP 和 HTTPS 的存取流程

從網路發展至今,HTTP 一直擔任網路傳輸資訊的標準協定。傳輸的資訊可以是互聯網內電腦之間的文檔,文件,圖像,視訊等。

為什麼HTTPS比HTTP安全

HTTP 要求過程中,客戶端與伺服器之間沒有任何身分確認的過程,資料全部明文傳輸,「裸奔」在網路上,所以很容易遭到駭客的攻擊。

為什麼HTTPS比HTTP安全

從上圖中可以看到,客戶端發出的請求很容易被駭客截獲,如果此時駭客冒充伺服器,則其可傳回任意訊息給客戶端,而不被客戶端察覺,所以我們常常聽到一詞「劫持」。

為什麼HTTPS比HTTP安全

而 HTTPS 其實是帶有 SSL 的 HTTP(HTTP SSL=HTTPS)。當您在瀏覽器的網址列中看到 HTTPS 時,這表示與該網站的所有通訊都將加密,整個存取過程更加安全。

為什麼HTTPS 比HTTP 安全

HTTPS 的安全性往往體現在三個方面:

伺服器身份驗證,透過伺服器身份驗證,用戶可以明確當前它正在與對應的伺服器進行通訊。

資料機密性,其他方無法理解傳送的資料內容,因為提交的資料是加密的。

資料完整性,傳輸會攜帶 Message Authentication Code(MAC)用於驗證,因此傳輸的資料不會被另一方更改。

可以舉例來比較下。一個HTTP 請求,其組成則是多個遵循HTTP 協定的文字行,例如下面的GET 請求:

GET /helloupyun.txt HTTP/1.1
User-Agent: curl/7.73.0 libcurl/7.73.0 OpenSSL/1.1.l zlib/1.2.11
Host: www.upyun.com
Accept-Language: en

請求會以明文的形式直接發送,既然是明文的形式,對於協定命令和語法有基本了解的人,只要監控了請求發送的過程,就能取得並讀懂請求的意義。因此用 HTTP 的方式傳送密碼一類的資料時,安全性極低。

相對的,HTTPS 使用了SSL(或TLS)來加密HTTP 請求和回應,因此在上面的範例中,監控請求的人將會看到一串隨機的數字,而不是可讀性的文本。

GsERHg9YDMpYk0VVDiRvw1H5miNieJeJ/FNUjgH0BmVAWII6+T4MnDwmCMZUI/orxP3HGwYCSIvyzS3MpmmSe4iaWKCOHH==

其中加密過程採用的 SSL(安全通訊端層)這項標準的安全技術,涵蓋了非對稱金鑰和對稱金鑰。

對稱加密

對稱加密是指加密與解密使用相同金鑰的加密演算法。

目前常見的加密演算法有:DES、AES、IDEA 等

非對稱加密

非對稱加密使用的是兩個金鑰,公鑰與私鑰,我們會使用公鑰對網站帳號密碼等資料進行加密,再用私鑰對資料進行解密。這個公鑰會發給查看網站的所有人,而私鑰是只有網站伺服器自己擁有的。

目前常見非對稱加密演算法:RSA,DSA,DH 等。

而常用的套件,例如 ChaCha20-Poly1305 加密套件就使用了這兩種演算法,其中 Chacha20 是指對稱加密演算法,而Poly1305 是指身份認證演算法。

參考 RFC 文檔,我們可以了解 ChaCha20 提供了 256 位元的加密強度,這作為對稱加密演算法來保障 HTTPS 安全性是足夠了。

為什麼HTTPS比HTTP安全

而Poly1305 作為身份認證演算法提供身份驗證,可以防止攻擊者在TLS 握手過程中,將虛假資訊插入安全的資料流中,Poly1305 演算法提供了大約100 位元的安全性加密強度,足以阻止這類攻擊。

總的來看,HTTPS 相較於 HTTP ,它作為一種加密手段不僅加密了數據,還給了網站一張安全可信賴的身份證。

聊聊HTTPS 的一些優缺點

整體來看HTTPS 有以下五個優點:

● 最大限度地提升Web 上資料與事務的安全性;

● 加密使用者敏感或機密資訊;

● 提升搜尋引擎中的排名

● 避免瀏覽器中出現「不安全」的提示;

● 提升使用者對網站的信賴。

相對的,缺點也是必不可少的:

● HTTPS 協定在握手階段耗時相對較大,會影響頁面整體載入速度;

● 在瀏覽器和伺服器上會更多的CPU 週期來加密/解密資料;

● SSL 憑證一般都需要支付一定費用來獲取,並且費用往往不低;

#●並不是絕對意義上的安全,在網站遭受攻擊,伺服器被劫持時,HTTPS 基本上起不到任何安全防護作用。

相關文章教學:web安全教學

以上是為什麼HTTPS比HTTP安全的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:博客园。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。