關于HTTP和HTTPS的區別

4418040-0c6f2df20989868c

HTTP和HTTPS的基本概念

1、HTTP:是互聯網上應用最為廣泛的一種網絡協議,是一個客戶端和服務器端請求和應答的標準(TCP),用于從WWW服務器傳輸超文本到本地瀏覽器的傳輸協議,它可以使瀏覽器更加高效,使網絡傳輸減少。

2、HTTPS:是以安全為目標的HTTP通道,簡單講是HTTP的安全版,即HTTP下加入SSL層,HTTPS的安全基礎是SSL,因此加密的詳細內容就需要SSL。

3、HTTPS協議的主要作用可以分為兩種:一種是建立一個信息安全通道,來保證數據傳輸的安全;另一種就是確認網站的真實性。

HTTP 的安全風險

1、隱私泄露

由于 HTTP 本身是明文傳輸,用戶和服務端之間的傳輸內容都能被中間者查看。也就是說 你在網上搜索、購物、訪問的網點、點擊的頁面等信息,都可以被「中間人」獲取。

2、頁面劫持

隱私泄露的風險比較隱蔽,用戶基本感知不到。但另外一類劫持的影響就非常明顯非常直接了——頁面劫持,也就是直接篡改用戶的瀏覽頁面。

HTTP劫持分類

根據劫持路徑分類:DNS 劫持、客戶端劫持、鏈路劫持。

如圖

4418040-1c7efddfdc8ee3e6

HTTPS與Web服務器通信時的幾個步驟

1、客戶使用https的URL訪問Web服務器,要求與Web服務器建立SSL連接。

2、Web服務器收到客戶端請求后,會將網站的證書信息(證書中包含公鑰)傳送一份給客戶端。

3、客戶端的瀏覽器與Web服務器開始協商SSL連接的安全等級,也就是信息加密的等級。

4、客戶端的瀏覽器根據雙方同意的安全等級,建立會話密鑰,然后利用網站的公鑰將會話密鑰加密,并傳送給網站。

5、Web服務器利用自己的私鑰解密出會話密鑰。

6、Web服務器利用會話密鑰加密與客戶端之間的通信。

如圖:

4418040-1de01534857d793f

HTTPS的優點

1、身份認證

使用HTTPS協議可認證用戶和服務器,確保數據發送到正確的客戶機和服務器

4418040-70ce6ef5ab80e055

2、內容加密——防竊聽

HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,要比http協議安全,可防止數據在傳輸過程中不被竊取。

3、一致性校驗——防篡改

通過對數據和共享密鑰的 MAC 碼來防止中間者篡改消息內容,確保數據的一致性。

4、HTTPS網絡傳輸安全系數相對較高,可以大幅增加中間人攻擊的成本。

HTTPS的缺點

1、速度慢

(1)、網絡耗時

由于協議的規定,必須要進行的網絡傳輸。比如 SSL 完全握手,302 跳轉等。HTTPS協議握手階段比較費時,會使頁面的加載時間延長近50%,增加10%到20%的耗電。

(2)、計算耗時

無論是客戶端還是服務端,都需要進行對稱加解密,協議解析,私鑰計算,證書校驗等計算,增加大量的計算時間。

2、HTTPS連接緩存不如HTTP高效,會增加數據開銷和功耗,甚至已有的安全措施也會因此而受到影響;

3、成本較高

(1)、服務器成本

HTTPS 的私鑰計算會導致服務端性能的急劇下降,甚至不到 HTTP 協議的十分之一,也就是說,如果 HTTP 的性能是 10000cps,HTTPS 的性能可能只有幾百 cps,會增加數倍甚至數十倍的服務器成本。

(2)、證書成本

根據證書個數及證書類型,一年可能需要花費幾百到幾百萬不等的證書成本。

(3)、開發和運維成本

HTTPS 協議比較復雜,包括協議的配置,證書的更新,過期監控,客戶端的兼容等一系列問題都需要具備專業背景的技術人員跟進處理。

HTTPS和HTTP的主要區別

1、https協議需要到ca申請證書,一般免費證書較少,因而需要一定費用。

2、http是超文本傳輸協議,信息是明文傳輸,https則是具有安全性的ssl加密傳輸協議。

3、http和https使用的是完全不同的連接方式,用的端口也不一樣,前者是80,后者是443。

4、http的連接很簡單,是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,比http協議安全。

歡迎關注我的公眾號(同步更新文章)DoNet技術分享平臺

閱讀原文

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/272730.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/272730.shtml
英文地址,請注明出處:http://en.pswp.cn/news/272730.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Android 實現切換主題皮膚功能(類似于眾多app中的 夜間模式,主題包等)

首先來個最簡單的一鍵切換主題功能&#xff0c;就做個白天和晚上的主題好了。 先看我們的styles文件&#xff1a; 1 <resources>2 3 <!-- Base application theme. -->4 <style name"AppTheme" parent"Theme.AppCompat.Light.DarkAction…

訂閱號 圖文回復php,微信開發(PHP實現訂閱號的公眾號配置和自動回復)

首先在微信公眾平臺(網址&#xff1a;https://mp.weixin.qq.com)申請一個訂閱號&#xff0c;然后在開發里找到開發者工具點擊公眾平臺測試賬號&#xff0c;在測試賬號內進行微信開發實驗。 1. 設置一個自己的有效的域名網址和TOKEN(就是暗號)&#xff0c;TOKEN一定要與PHP代…

為何技術領域中女程序員較少?

對于大多數人來說&#xff0c;他們意識中的科技人就是扎克伯格&#xff0c;喬布斯或者是比爾蓋茨——經常出現在新聞里的典型的男科技企業家。其實在科技領域還有一些女性&#xff0c;比如蘇珊沃西基&#xff08;YouTube的CEO&#xff09;和吉尼羅曼提&#xff08;IBM的CEO&…

This version of MySQL doesn't yet support 'LIMIT IN/ALL/ANY/SOME subquery 解決方法

This version of MySQL doesnt yet support LIMIT & IN/ALL/ANY/SOME subquery的意思是&#xff0c;這版本的 MySQL 不支持使用 LIMIT 子句的 IN/ALL/ANY/SOME 子查詢&#xff0c;即是支持非 IN/ALL/ANY/SOME 子查詢的 LIMIT 子查詢。 也就是說&#xff0c;這樣的語句是不能…

php 遞歸分銷角色,PHP遞歸無限分類

我們面試程序開發的時候&#xff0c;經常會被問到遞歸的問題。今天我們在本文中以“素材火的特效分類表”作為演示&#xff0c;使用PHP遞歸結合Mysql實現無限級分類。難易&#xff1a;初級下載資源下載積分&#xff1a;50積分遞歸簡單的說就是一段程序代碼的重復調用&#xff0…

Android音頻系統之AudioPolicyService

地址&#xff1a;http://blog.csdn.net/edmond999/article/details/18599327 1.1 AudioPolicy Service 在AudioFlinger小節&#xff0c;我們反復強調它只是策略的執行者&#xff0c;而AudioPolicyService則是策略的制定者。這種分離方式有效地降低了整個系統的藕合性&#xff0…

程序員常去的14個頂級開發社區

我們來看一下程序員經常去的 14 個頂級開發者社區&#xff0c;如果你還不知道它們&#xff0c;那么趕緊去看看&#xff0c;也許會有意想不到的收獲。一、Stack Overflow9 月份&#xff0c;Stack Overflow 也將迎來其 6 歲的生日&#xff0c;毫無疑問&#xff0c;Stack Overflo…

basename php 中文,php basename不支持中文怎么辦

不久前遇到一段代碼使用了basename&#xff0c;我文件名是中文的&#xff0c;每次返回都只有后綴。后來發現basename函數有貓膩&#xff0c;不支持中文文件名&#xff0c;但凡有以中文開頭的文件名將被忽略了。函數說明/*** 從路徑中返回文件名* param string $path* 在Windows…

C#特性-表達式樹

表達式樹ExpressionTree 表達式樹基礎 轉載需注明出處&#xff1a;http://www.cnblogs.com/tianfan/剛接觸LINQ的人往往覺得表達式樹很不容易理解。通過這篇文章我希望大家看到它其實并不像想象中那么難。您只要有普通的LINQ知識便可以輕松理解本文。表達式樹提供一個將可執行代…

程序員的一個好習慣,你有幾個?

在很多外人看來,作為我們程序員這個行業只要會敲代碼會改bug基本就可以了&#xff0c;但是現在行業人員幾近飽和&#xff0c;沒有過硬的幾把刷子就想著可以甩掉身后的大部隊也是不可能的。所以說我們要不斷的學習不斷的充實自己讓企業在裁員的時候壓根就考慮不到我們的頭上來。…

matlab四維圖程序,Matlab 四維圖形繪制

這個問題可以用slice命令實現&#xff1a;%%%%%%clear all[x,y,z] meshgrid(0:.5:10,0:.5:10,0:.5:10);c x.^2y.^2z.^2;xs [0,2,4,6,8,10];ys [4];zs [6]; % xs,ys,zs可決定切片形式和位置&#xff0c;help slice可明白其具體含義slice(x,y,z,c,xs,ys,zs)colormap hsv當然…

cURL模擬POST方式提交數據

curl_post.php文件&#xff1a; 1 $url http://localhost/test/curl_post_deal.php;2 3 $post_data array( 4 username > cURL, 5 age > 18, 6 sex > male 7 ); 8 $ch curl_init(); 9 10 curl_setopt($ch, CURLOPT_URL, $url); //請求的地址 11 curl_setopt(…

2017已過半,這半年,你累嗎?

大半年下來有人問你掙了多少錢卻從來沒有人問你最近的日子你累不累近來你受了多少委屈近來有多少心酸近來經歷過多少艱難最近付出了多少不被人知的辛苦有時候真的很累、很累但是所有的累只能一笑而過這個累是自己經歷的積累這個累是自己身上應該有的責任除了堅強&#xff0c;別…

mysql 5.5 壓力測試,mysql 壓力測試

mysql 壓力測試sysbench支持的測試模式&#xff1a;1、CPU運算性能2、磁盤IO性能3、調度程序性能4、內存分配及傳輸速度5、POSIX線程性能6、數據庫性能(OLTP基準測試)目前sysbench主要支持 mysql,drizzle,pgsql,oracle 等幾種數據庫。二、編譯安裝sysbench[roottest package]# …

自學編程的六點技巧

有一天&#xff0c;我的一個在學編程的朋友問我&#xff1a;“我想快速學習編程&#xff0c;你有什么好的推薦嗎&#xff1f;我曾在上大學的時候自學過編程&#xff0c;這么多年過去了&#xff0c;我意識到我或許是在用最困難的方式去學習和了解編程。本來我完全可以用更快的速…

AngularJs $anchorScroll、$controller、$document

$anchorScroll 根據HTML5的規則&#xff0c;當調用這個函數時&#xff0c;它檢查當前的url的hash值并且滾動到相應的元素。 監聽$location.hash()并且滾動到url指定的錨點的地方。可以通過$anchorScrollProvider.disableAutoScrolling()禁用。 依賴&#xff1a;$window $loca…

Jquery操作復選框總結

1、獲取單個checkbox選中項(三種寫法)$("input:checkbox:checked").val()或者$("input:[typecheckbox]:checked").val();或者$("input:[nameck]:checked").val();2、 獲取多個checkbox選中項$(input:checkbox).each(function() {if ($(this).att…

java對五排六列考生隨機排座,Java入門第三季6-5擴展練習-隨機字符串排序

原課程地址https://www.imooc.com/video/4254* 擴展練習要求* 利用Collections.sort()方法對泛型為String的List進行排序版本2* 1.創建完List之后&#xff0c;往其中添加10條隨機字符串* 2.每條字符串的長度為10以內的隨機整數* 3.每條字符串的每個字符都是隨機生成的&#xff…

信息安全系統設計基礎第十周學習總結

第八章 異常控制流 &#xff08;1&#xff09;控制流&#xff1a;控制轉移序列。 控制轉移&#xff1a;從一條指令到下一條指令。 異常控制流&#xff1a;現代操作系統通過使控制流發生突變來對系統狀態做出反應&#xff0c;這些突變稱為異常控制流。 &#xff08;2&#xff09…

MVC、 MVP、 MVVM之間的區別

一、 簡介三者的目的都是分離關注&#xff0c;使得UI更容易變換&#xff08;從Winform變為Webform&#xff09;&#xff0c;使得UI更容易進行單元測試。二、MVC/MVP1 、MVC1、View接受用戶的交互請求2、View將請求轉交給Controller3、Controller操作Model進行數據更新4、數據更…