摘要:客戶端客戶端使用訪問服務端,要求建立連接服務端服務端收到客戶端請求,將網站的證書傳送一份給客戶端,證書里面包含了網站地址,加密公鑰,以及證書的頒發機構等信息。
聲明
文章均為本人技術筆記,轉載請注明出處https://segmentfault.com/u/yzwall
http協議http(Hypertext Transfer Protocol, 超文本傳輸協議),基于TCP連接
URL(Uniform Resource Locator,統一資源定位符),用于指明網絡資源的地址
http報文類型分為請求報文和響應報文;
http請求報文由客戶端向服務端發送;
請求行/Requst-Linehttp請求報文由三部分組成:Request-Line(請求行),Request Header(請求報文頭,可選),Body(請求報文,只對POST有效)
請求行格式:[Request + Request-URI + HTTP-Version + CRLF]
Request:請求方法
Request-URI:表示訪問鏈接
HTTP-Version:表示HTTP協議版本
CRLF:表示回車換行,不允許出現多帶帶的CR或LF字符
請求方法/Request請求方法類型可分為:
GET:根據Request-URI,從服務端讀取數據
POST:根據Request-URI,向服務端發送數據(Body)
HEAD:根據Request-URI,從服務端只讀取響應消息報頭
PUT:根據Request-URI,請求服務端存儲一個資源
DELETE:請求服務端刪除Request-URI所標識的資源
TRACE:請求服務器回送收到的請求信息,主要用于測試
CONNECT:待補充
OPTIONS:待補充
GET和POST區別GET用于向服務端查詢某些信息, POST用于向服務端發送應該被保存的數據. 即GET是從服務器上獲取數據,POST是向服務器傳送數據
GET將查詢字符串參數追加到URL尾部,大小有限制; POST請求把提交數據放入請求正文中. 數據格式不限,大小不受限制;
http響應報文服務端收到和解釋請求報文后,返回一個http響應報文
狀態行/Status-Linehttp響應報文由三部分組成:Status-Line(狀態行),Response Header(響應報文頭,可選),Body(響應正文)
響應碼/Status Code狀態行格式為HTTP Version + Status Code(響應碼) + Reason-Phase(響應碼描述)
響應碼一共3位,第1位定義響應的類別:
1xx:信息響應類,表示接收到請求并且繼續處理;
2xx:成功響應;
3xx:重定向響應類,需要請求方執行更多操作
4xx:客戶端錯誤,請求包含語法錯誤或者不能正確執行
400:客戶端請求有語法錯誤,不能被服務端處理;
401:請求未授權;
403:服務端收到請求,但是拒絕提供服務;
404:請求資源不存在;
5xx:服務端錯誤,服務端不能執行正確的客戶端請求
500:服務端內部錯誤;
501:保留未實現;
502:網關錯誤,服務器無法響應;
503:服務暫時失效,一段時間后可能恢復正常;
http報文頭/Headers待補充;
https協議 https協議與ssl協議 sslssl(secure socket layer,安全套接字層),ssl協議是Netscape公司提出的安全保密協議,運行在應用層,ssl協議采用加密算法生成40位密鑰,為應用程序提供數據加密;
https協議https(Secure Hypertext Transfer Protocol,安全超文本傳輸協議),在http基礎上通過SSl協議實現信息安全傳輸;https使用ssl在發送端將數據加密,然后由接收端進行解密,加密和解密都需要發送端和接收端通過交換一致的密鑰來實現。
【客戶端】客戶端使用https url訪問Web服務端,要求建立ssl連接
【服務端】Web服務端收到客戶端請求,將網站的證書傳送一份給客戶端,證書里面包含了網站地址,加密公鑰,以及證書的頒發機構等信息。
【客戶端】客戶端收到網站證書后,瀏覽器執行如下操作:
2.1 驗證證書是否受信任
2.2 生成隨機密鑰:如果證書受信任,瀏覽器生成一串隨機密鑰
【客戶端】加密隨機密鑰:瀏覽器用證書提供的公鑰對生成的隨機密鑰進行加密
【客戶端】計算握手信息并加密:瀏覽器使用HASH加密算法計算握手信息,并用隨機密鑰加密,然后發送握手信息給服務端
【服務端】服務端收到握手信息后,執行如下操作:
5.1 解密隨機密鑰:服務端使用自己的私鑰解密出隨機密鑰
5.2 解密握手信息:服務端使用隨機密鑰解密收到的握手信息,并驗證HASH是否與瀏覽器發來的一致
5.3 發送加密握手信息:服務端使用隨機密鑰加密一段握手信息,發送給瀏覽器
【客戶端】瀏覽器解密并計算握手信息的HASH,如果與服務端發來的HASH一致,握手結束;
最后,客戶端與服務端的所有通信數據都通過隨機密鑰加密傳輸
http與https辨析安全性:http用明文發送內容,不提供任何方式的數據加密,安全性較差;https協議在http基礎上加入ssl協議保證數據安全,ssl憑借證書來驗證服務器的身份,并為瀏覽器和服務器之間的通信加密;
端口:http和https使用的是完全不同的連接方式,http使用80端口,https使用443端口;
系統開銷:https系統開銷比http開銷大,傳輸效率不如http;
費用:https中ssl證書需要繳納費用;
session與cookinecookie數據存放在客戶的瀏覽器上,session數據放在服務器上
cookie不是很安全,別人可以分析存放在本地的cookie并進行cookie欺騙,考慮到安全應當使用session
session會在一定時間內保存在服務器上。當訪問增多,會比較占用你服務器的性能 考慮到減輕服務器性能方面,應當使用cookine
單個cookie保存的數據不能超過4K,很多瀏覽器都限制一個站點最多保存20個cookie
[1] http://www.cnblogs.com/li0803/archive/2008/11/03/1324746.html
[2] http://www.cnblogs.com/wqhwe/p/5407468.html
[3] http://www.php100.com/html/it/biancheng/2015/0209/8582.html
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/67019.html
摘要:今天是年的第一天和宣布正式建立深度合作,共同推動區塊鏈技術的進一步發展,未來雙方將在包括聯合技術研發品牌市場營銷海內外市場拓展等領域展開密切合作。簡稱是的方案,為上層提供信任基礎。 今天是 2019 年的第一天, AlphaWallet 和 Nervos 宣布正式建立深度合作,共同推動區塊鏈技術的進一步發展,未來雙方將在包括聯合技術研發、品牌市場營銷、海內外市場拓展等領域展開密切合作。...
摘要:近日,數據港發布公告表示,公司已與阿里巴巴順利簽署了關于等五個云計算數據中心基地園區項目的合作備忘錄。此次數據港與阿里巴巴億大單的簽訂標志著數據港業務規模將會大幅增長。近日,數據港發布公告表示,公司已與阿里巴巴順利簽署了關于ZH13等五個云計算數據中心基地園區項目的合作備忘錄。備忘錄明確約定了包括項目合作內容、項目合作周期、費用結算、違約罰則、法律效力及生效條款等所有主要商務條款。據悉,20...
摘要:微信分享的內容,從視覺上看有三個部分標題描述圖片。聲明年月日,微信宣布未接入的網站將統一顯示默認縮略圖所以在某些時候,訂制內容是極為必要的。 微信分享的內容,從視覺上看有三個部分:標題、描述、圖片。如果不使用微信的 jssdk 進行訂制的話,微信會截取一張大概 300*300 并且距離 標簽最近的一張圖片作為需要的圖片;標題會選取中的內容;描述則會是該頁面的 URL。 聲明:2017年...
摘要:所以我們整理了一個應用安全備忘錄,以幫助你在部署啟動應用程序的時候進行安全檢查。這可以保護應用程序不被攻擊。應該用日志記錄下來,而不是顯示給用戶。 本人的博客http://www.wjs.photo/,感興趣的可以看看哦,基于NodeJs框架ThinkJs 本文翻譯自 www.risingstack.com ,并非逐字逐句的翻譯,有錯誤的地方請指出,謝謝啦 應用程序的安全就像是你房間里...
閱讀 3960·2021-11-24 09:38
閱讀 1225·2021-10-19 11:42
閱讀 1829·2021-10-14 09:42
閱讀 2154·2019-08-30 15:44
閱讀 544·2019-08-30 14:04
閱讀 2888·2019-08-30 13:13
閱讀 1949·2019-08-30 12:51
閱讀 956·2019-08-30 11:22