撥測小程序
關注小程序,隨時 隨地使用撥測工具
近幾年,互聯(lián)網(wǎng)發(fā)生著翻天覆地的變化,尤其是我們一直習以為常的HTTP協(xié)議,在逐漸的被HTTPS協(xié)議所取代,究其原因就是 HTTP 它不是安全的,在數(shù)據(jù)傳輸過程中會遭到黑客竊取,本篇文章會先講解 HTTP 缺點,然后再講解 HTTPS 是如何解決這些問題來保證安全的。
HTTP 本身不具備加密的功能,因此其在通信過程是使用明文方式發(fā)送的。這種方式就有可能造成通信過程中信息會被破解獲取。
例如一群佩奇在路上坐著敞篷大貨車,路過的人一下就能看到這車里都是,信息完全暴露。
HTTP 協(xié)議在請求和響應中不會對通信方進行確認。這就存在可能你訪問的服務器有可能不是你真正指定的服務器,拿到返回響應的客戶端可能不是一開始發(fā)起請求的客戶端。
這里舉個小例子,例如母雞孵蛋,我偷偷把雞蛋換成鴨蛋,母雞照樣在那孵,不會有任何的懷疑。
HTTP 協(xié)議 無法證明通信的報文完整性,在請求和響應發(fā)出后,在傳輸過程中內(nèi)容如果遭到篡改,也沒有辦法感知到。
例如你從某個網(wǎng)站下載內(nèi)容,無法確定你客戶端下載的文件是否和服務器中存放的文件是否一致,有可能文件在傳輸過程中被篡改為其他的內(nèi)容。
HTTPS是在HTTP上建立SSL加密層,并對傳輸數(shù)據(jù)進行加密,是HTTP協(xié)議的安全版?,F(xiàn)在它被廣泛用于萬維網(wǎng)上安全敏感的通訊,例如交易支付方面。
HTTPS主要作用是:
(1)對數(shù)據(jù)進行加密,并建立一個信息安全通道,來保證傳輸過程中的數(shù)據(jù)安全;
(2)對網(wǎng)站服務器進行真實身份認證。
我們經(jīng)常會在Web的登錄頁面和購物結(jié)算界面等使用HTTPS通信。使用HTTPS通信時,不再用http://,而是改用https://。另外,當瀏覽器訪問HTTPS通信有效的Web網(wǎng)站時,瀏覽器的地址欄內(nèi)會出現(xiàn)一個帶鎖的標記。對HTTPS的顯示方式會因瀏覽器的不同而有所改變。
HTTPS并非是應用層的一種新協(xié)議。只是HTTP通信接口部分用SSL(Secure Socket Layer)和TLS(Transport Layer Security)協(xié)議代替而已。
通常,HTTP直接和TCP通信。當使用SSL時,則演變成先和SSL通信,再由SSL和TCP通信了。簡言之,所謂HTTPS,其實就是身披SSL協(xié)議這層外殼的HTTP。
方法1.對稱加密
怎么理解對稱加密呢?其實很簡單,就是指加密和解密使用的密鑰都是同一個。只要保證了密鑰的安全,那整個通信過程就具有了機密性。
例如你要登陸某個網(wǎng)站,你事先和網(wǎng)站約定好使用一個對稱密碼,那么在數(shù)據(jù)傳輸過程中全是用密鑰加密后的密文,只有網(wǎng)站能解密,傳輸?shù)倪^程中即使信息被竊取,也無法獲得原始數(shù)據(jù)。
方法2.非對稱加密
對稱加密看起來好像完美實現(xiàn)了機密性,但這其中也有一定的安全隱患,就是如何把密鑰安全地傳遞給對方,因為對稱加密只要有密鑰就能解密,如果雙方約定的密鑰在傳遞過程被竊取,就會造成數(shù)據(jù)會被很容易的解密。
例如你家的鑰匙,你跟你爸媽約定好鑰匙放在門外鞋底里,看似安全,但如果別人發(fā)現(xiàn)了這個鞋底里藏的鑰匙,那你家大門就會被打開,就很危險。
那有沒有更安全的加密方式呢,就要說到非對稱加密(也叫公鑰加密算法)。
它有兩個密鑰,一個叫 “公鑰”,一個叫“私鑰”。兩個鑰匙是不同的,公鑰可以給任何人使用,但私鑰必須嚴格保密。
公鑰加密的數(shù)據(jù)只能由私鑰解密,反過來,私鑰加密后也只能用公鑰解密。
網(wǎng)站秘密保管私鑰,在網(wǎng)上隨意分發(fā)公鑰,如果你想登錄網(wǎng)站,只要用公鑰來加密即可,密文只能由私鑰持有者才能解密,即使數(shù)據(jù)傳輸過程中被黑客獲取到,他也無法破解。
方法3.對稱加密+非對稱加密(HTTPS采用這種方式)
非對稱性加密雖然安全性高,但因為它都是基于復雜的數(shù)學運算,速度就會很慢,雖然保證了安全,但通信速度太慢,實用性也會大打折扣。
混合加密就是在通信剛開始的時候使用非對稱算法,來解決對稱加密密鑰交換安全性問題。
對方拿到密文后用私鑰解密,拿到對稱密鑰,這樣雙方就實現(xiàn)了對稱密鑰的安全交換,后續(xù)就不再使用非對稱加密,全都使用對稱加密。
這樣混合加密就實現(xiàn)了安全和性能兼顧,實現(xiàn)了可靠的機密性。
公鑰每個人都可以進行發(fā)布,我們還缺少一個防止黑客偽裝公鑰的手段,也就是如何證明這個公鑰就是你的公鑰呢?
為了解決這個問題,我們需要找一個公認的可信第三方,來幫助構(gòu)建起公鑰的信任鏈。
這個第三方就是 CA (數(shù)字證書認證機構(gòu)),它扮演著類似網(wǎng)絡世界中的公安局,公證中心這種角色,由它來給各個公鑰簽名,用自身的信譽來保證公鑰無法偽造,是可信的。
服務器會將由數(shù)字證書認證機構(gòu)頒發(fā)的公鑰證書發(fā)送給客戶端,接到證書的客戶端可使用公開密鑰,對那張證書上的數(shù)字簽名進行驗證,一旦驗證通過,就證明服務器的公開密鑰是真
黑客其實是可以偽裝成你,向網(wǎng)站發(fā)起支付、轉(zhuǎn)賬等請求消息,因為網(wǎng)站沒有辦法確認你的身份就會造成錢被偷走。
在現(xiàn)實生活中,我們解決身份認證是通過身份證,簽名或者印章等等,來確定這個是本人操作的。
那 HTTPS 是如何解決身份認證問題的?還記得之前提到的非對稱加密里的私鑰嗎,使用私鑰再加上摘要算法,就可以實現(xiàn)“數(shù)字簽名”,同時實現(xiàn)“身份認證”。
數(shù)字簽名的原理就是把公鑰和私鑰用法反過來,之前是公鑰加密,私鑰解密,現(xiàn)在變成私鑰加密、公鑰解密。
簽名和公鑰一樣完全公開,任何人都可以獲取。但這個簽名只有用私鑰對應的公鑰才能解開,拿到摘要后,再比對原文驗證完整性,就可以像簽署文件一樣證明消息確實是你發(fā)的。
既然HTTPS那么安全可靠,那為何不所有的Web網(wǎng)站都使用HTTPS?
首先,很多人還是會覺得HTTPS實施有門檻,這個門檻在于需要權(quán)威CA頒發(fā)的SSL證書。從證書的選擇、購買到部署,傳統(tǒng)的模式下都會比較耗時耗力。
其次,想要節(jié)約購買證書的開銷也是原因之一。要進行HTTPS通信,證書是必不可少的。而使用的證書必須向認證機構(gòu)(CA)購買。
目前市場上有許多提供SSL證書服務的商家,但是如何選擇安全可靠的證書機構(gòu)對于新手來說也是十分困難的,小編推薦BOCE.COM的SSL證書服務,它是和國際知名CA機構(gòu)合作,采用國際領先互聯(lián)網(wǎng)加密技術(shù),能夠有效加強網(wǎng)站數(shù)據(jù)安全,防止網(wǎng)站數(shù)據(jù)被竊取、篡改、劫持,獲得搜索引擎更高排名。并且撥測SSL證書價格優(yōu)惠,最低僅需180元/年,支持一站式批量管理,購買后5~10即可自動簽發(fā)驗證。
文章來源:https://www.51cto.com/article/701632.html
服務中心
聯(lián)系我們
商務合作
QQ: 3953378523
關閉廣告
在線咨詢
聯(lián)系我們
商務合作
QQ: 3953378523
關閉廣告
在線咨詢