您好,登錄后才能下訂單哦!
背景: 谷歌在 2018年,2月9日宣布從今年7月起,Chrome瀏覽器將在地址欄把所有HTTP網(wǎng)址標(biāo)示為不安全網(wǎng)站。
谷歌早在 2017年1月發(fā)布的Chrome 56,開始把要求用戶輸入密碼或信用卡信息的HTTP網(wǎng)頁標(biāo)識為“不安全”;2017年10月發(fā)布的Chrome62,開始把需要輸入數(shù)據(jù)的HTTP網(wǎng)頁和在Incognito模式下瀏覽的HTTP網(wǎng)站標(biāo)示為“不安全”。
兩周前 進行了一家公司的電話面試,視過程中遇到了一個關(guān)于 http與https的問題,當(dāng)時回答的并不好, 所以查閱了多方資料,詢問了身邊的大神, 今天將其進行了總結(jié)和整理, 希望可以幫助大家。
1、 首先我們先得了解 http與https 是什么?
http:超文本傳輸協(xié)議,是一個客戶端和服務(wù)器端請求和應(yīng)答的標(biāo)準(zhǔn),用于從WWW服務(wù)器傳輸超文本到本地瀏覽器的傳輸協(xié)議,它可以使瀏覽器更加高效,使網(wǎng)絡(luò)傳輸減少。;
簡單來說是這么一個流程:
小明 跟 瀏覽器爸爸 說我想要去中關(guān)村某個店家拿一些東西 (發(fā)起請求)
瀏覽器爸爸 就把 小明 要的東西記在一張清單上 (生成HTTP協(xié)議)
然后 瀏覽器爸爸 派出一個 線程小弟 ,噌噌噌跑到中關(guān)村的店里,把清單遞給 店家 ,說小明要這些東西 (進行傳輸)
店家 讓 線程小弟 稍等,然后去屋子里面拿小明的這些東西 (服務(wù)器收到請求)
店家 把東西拿出來后,并且也打印了一份清單,讓 線程小弟 帶著清單和東西一起拿回去 (服務(wù)器處理請求完畢)
然后 線程小弟 回到 瀏覽器爸爸 那邊,把服務(wù)器給的清單和物品交給瀏覽器爸爸,瀏覽器爸爸根據(jù)清單核對物品 (瀏覽器處理響應(yīng))
然后把物品打包交給了 小明 (瀏覽器渲染并呈現(xiàn)界面)
https:
https協(xié)議比http協(xié)議多了一個s,字面意思上s=secure(安全)。它跟http協(xié)議一樣都是應(yīng)用層協(xié)議,都是工作在TCP協(xié)議之上。
只不過 https協(xié)議在傳輸過程中的數(shù)據(jù)都是經(jīng)過了加密。本質(zhì)上HTTPS協(xié)議就是在TCP協(xié)議之上又加了一層SSL協(xié)議來實現(xiàn)了加密這個操作(不準(zhǔn)確的說HTTPS就就是披著是SSL的皮的HTTP協(xié)議)
2、HTTPS和HTTP的區(qū)別
HTTP協(xié)議工作在80端口,HTTPS協(xié)議工作在443端口
HTTPS需要申請證書(用于驗證服務(wù)器身份)
HTTP在TCP三次握手建立連接之后即可開始傳輸數(shù)據(jù);HTTPS協(xié)議則需要在建立TCP連接之后客戶端與服務(wù)器在進行SSL加密,確定對話密鑰,完成加密后才開始傳輸數(shù)據(jù)。
HTTPS協(xié)議傳輸是密文,HTTP協(xié)議傳輸是明文
大致的區(qū)別就以上 4點,其實最主要的就是SSL協(xié)議加密對話產(chǎn)生對話密鑰的過程
3、 http、https 等常用默認(rèn)端口號 :
⑴. HTTP協(xié)議代理服務(wù)器常用端口號:80/8080/3128/8081/9080
⑵. SOCKS代理協(xié)議服務(wù)器常用端口號:1080
⑶. FTP(文件傳輸)協(xié)議代理服務(wù)器常用端口號:21
⑷. Telnet(遠(yuǎn)程登錄)協(xié)議代理服務(wù)器常用端口:23
HTTP服務(wù)器,默認(rèn)的端口號為80/tcp(木馬Executor開放此端口);
HTTPS(securely transferring web pages)服務(wù)器,默認(rèn)的端口號為443/tcp 443/udp;
Telnet(不安全的文本傳送),默認(rèn)端口號為23/tcp(木馬Tiny Telnet Server所開放的端口);
FTP,默認(rèn)的端口號為21/tcp(木馬Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所開放的端口);
FTP(Trivial File Transfer Protocol),默認(rèn)的端口號為69/udp;
SSH(安全登錄)、SCP(文件傳輸)、端口重定向,默認(rèn)的端口號為22/tcp;
SMTP Simple Mail Transfer Protocol (E-mail),默認(rèn)的端口號為25/tcp(木馬Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都開放這個端口;
POP3 Post Office Protocol (E-mail) ,默認(rèn)的端口號為110/tcp;
WebLogic,默認(rèn)的端口號為7001;
Webshpere應(yīng)用程序,默認(rèn)的端口號為9080;
webshpere管理工具,默認(rèn)的端口號為9090;
JBOSS,默認(rèn)的端口號為8080;
TOMCAT,默認(rèn)的端口號為8080;
WIN2003遠(yuǎn)程登陸,默認(rèn)的端口號為3389;
Symantec AV/Filter for MSE,默認(rèn)端口號為 8081;
Oracle 數(shù)據(jù)庫,默認(rèn)的端口號為1521;
ORACLE EMCTL,默認(rèn)的端口號為1158;
Oracle XDB(XML 數(shù)據(jù)庫),默認(rèn)的端口號為8080;
Oracle XDB FTP服務(wù),默認(rèn)的端口號為2100;
MS SQL*SERVER數(shù)據(jù)庫server,默認(rèn)的端口號為1433/tcp 1433/udp;
MS SQL*SERVER數(shù)據(jù)庫monitor,默認(rèn)的端口號為1434/tcp 1434/udp;
總結(jié):
http是HTTP協(xié)議運行在TCP之上。所有傳輸?shù)膬?nèi)容都是明文,客戶端和服務(wù)器端都無法驗證對方的身份。https是HTTP運行在SSL/TLS之上,SSL/TLS運行在TCP之上。所有傳輸?shù)膬?nèi)容都經(jīng)過加密,加密采用對稱加密,但對稱加密的密鑰用服務(wù)器方的證書進行了非對稱加密。此外客戶端可以驗證服務(wù)器端的身份,如果配置了客戶端驗證,服務(wù)器方也可以驗證客戶端的身份。簡單來說,就是加密與不加密區(qū)別。比如在公共場所使用服務(wù)的時候,有https就用https。而http是明文傳輸?shù)?,如果有人抓到?shù)據(jù)包,你在一個http request里的數(shù)據(jù)都能見到。
歡迎加入 51軟件測試大家庭,在這里你將獲得【最新行業(yè)資訊】,【免費測試工具安裝包】,【軟件測試技術(shù)干貨】,【面試求職技巧】... 51與你共同學(xué)習(xí),一起成長!期待你的加入: QQ 群: 755431660
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。