http和https的區別
1、http是不安全的。https在配置正確時被認為是安全的。
2、http由"http://"開始,預設埠是80;https由"https://"開始,預設埠是443。
3、http協議執行在tcp之上,所有傳輸的內容都是明文,客戶端和伺服器都無法驗證對方的身份。https是執行在ssl/tls之上的http協議,ssl/tls協議是執行在tcp之上的。所有傳輸的內容都經過加密,加密採用對稱加密,但對稱加密的秘鑰用了伺服器端的證書進行了非對稱加密。
https優缺點
優點:1、客戶端產生的秘鑰只有客戶端和伺服器能得到。
2、加密的資料只有客戶端和伺服器端才能得到明文。
3、客戶端到服務端的通訊是安全的。
缺點:1、比http消耗更多的伺服器資源(主要看ssl/tls本身消耗多少資源)。
2、過程複雜,訪問不如http高效,流量成本高。
3、並不能防止被網路蜘蛛抓取。在某些情形中,被加密資源的url可僅通過截獲請求和響應的大小推得,這就可使攻擊者同時知道明文和密文,從而是選擇密文攻擊成為可能。
4、ssl證書需要錢,功能越強大點證書費用越高。
5、ssl證書需要繫結ip,不能在同一證書上繫結多個網域名稱。
對稱加密和非對稱加密:
對稱加密:金鑰只有乙個,加密解密使用同一密碼,加解密速度快。典型的加密演算法有des、aes等。
非對稱加密:金鑰成對出現,加密解密使用不同的公鑰和金鑰。速度較慢。
實際上,兩個主機每次會約定乙個加密-解密演算法,對於每一次加密演算法型別一般不會變化,不同點在於加密引數(公鑰)和解密引數(私鑰),他們根據伺服器端產生的幾個隨機數計算得到。
伺服器端將加密引數公布在網際網路上,所有人都可以通過加密引數(公鑰)將資訊加密併發送到伺服器端,而因為無法從加密引數(公鑰)得到解密引數(私鑰),因此除了伺服器端外所有人都無法解密。
中間人攻擊
在加密後,資訊傳輸過程本身是安全的,但是實施的時候本身存在乙個風險:如果有人截獲了獲取公鑰請求,然後冒充伺服器端將偽造的公鑰傳送給客戶端,那麼客戶端很難辨別真偽。一旦客戶端使用偽造的公鑰加密資訊並傳送給服務端,中間人會繼續截獲密文並用對應的私鑰解密獲取重要的資訊。更致命的是中間人可以選擇將資訊用真正的公鑰加密並傳送給服務端。
這意味著在客戶端和服務端永遠存在乙個中間節點,而客戶端和服務端沒有任何辦法意識到中間人的存在。
面對中間人攻擊,我們要做到是確定公鑰**的可靠性——唯
一、根本的方法是通過非網路環境確定公鑰。ssl和ssh實現方式不同。
ssl/tls和ssh加密協議
ssl/tls:ssl標準化後稱為tls。
面對冒充風險(中間人攻擊),ssl/tls的方法是引入ca證書。
ca:證書簽證機關。它是負責管理和簽發證書的足夠權威的第三方機構。每個ca通過根證書來簽發子證書。ca的根證書被預置在作業系統中,也只有根證書被作業系統認證的公司被認為是ca。
理論上,人人都可以找個證書工具自己做乙個證書,但是這個證書是沒有效力的。只有當某個證書鏈的頭部為ca根證書時才有效。
證書的加密引數為私鑰,證書的解密引數為公鑰,且(根證書)公鑰由作業系統預置,無需訪問網路,只要作業系統為正版,那麼公鑰一定正確。
ssh:專為遠端登入會話和其他網路服務提供的安全性協議。利用ssh協議可以有效的防止遠端管理過程中的資訊洩露問題,在當前的生產環境運維工作中,絕大多數企業普遍採用ssh協議服務來代替傳統的不安全的遠端聯機服務軟體。
在預設狀態下ssh主要提供兩種服務,一種是遠端聯機伺服器的服務,另一種是類似ftp的服務sftp-server。
ssh驗證方式:
1、客戶端直接發起請求
在客戶端收到服端的公鑰後,先計算公鑰的md5碼,讓使用者通過可靠的方式(非網路方式或ssl)確認公鑰。如果md5碼符合,則認為沒有中間人,建立加密連線。
2、客戶端自行傳送公鑰
http與https的區別以及https的好與壞
首先,比較http與https的區別 從概念上講 http是網際網路上應用最為廣泛的一種網路協議,是乙個客戶端和伺服器端請求和應答的標準 tcp 用於從www伺服器傳輸超文字到本地瀏覽器的傳輸協議,它可以使瀏覽器更加高效,使網路傳輸減少。https 是以安全為目標的http通道,http ssl。h...
HTTPS和HTTP的區別
https secure hypertext transfer protocol 安全超文字傳輸協議 它是乙個安全通訊通道,它基於http開發,用於在客戶計算機和伺服器之間交換資訊。它使用安全套接字層 ssl 進行資訊交換,簡單來說它是http的安全版。它是由netscape開發並內置於其瀏覽器中,...
HTTPS和HTTP的區別
https secure hypertext transfer protocol 安全超文字傳輸協議 它是乙個安全通訊通道,它基於http開發,用於在客戶計算機和伺服器之間交換資訊。它使用安全套接字層 ssl 進行資訊交換,簡單來說它是http的安全版。它是由netscape開發並內置於其瀏覽器中,...