總結 CA HTTPS 非對稱加密 數字簽名

2021-06-23 08:30:53 字數 2942 閱讀 1193

電子商務認證授權機構(ca,certificateauthority),也稱為電子商務認證中心,是負責發放和管理數字證書的權威機構,並作為電子商務交易中受信任的第三方,承擔公鑰體系中公鑰的合法性檢驗的責任。

ca證書的種類有:

· root證書

這是caserver的證書。如果要申請其他

· web證書

此證書用於認證一台裝置(如:pc)是合法的。一般webserver需要此型別的證書。例如該裝置提供https服務,那麼當client去訪問該server時,server會將證書傳送給client,client可以對server的身份進行驗證。

· user證書

此證書用於認證乙個使用者帳號是合法的。當乙個client試圖訪問server時,server根據client的證書去驗證該使用者是否合法。此證書可以用於多台機器,它只與使用者名稱相匹配。

https(全稱:hypertext transfer protocol over secure socketlayer),是以安全為目標的http通道,簡單講是http的安全版。即http下加入ssl

層,https的安全基礎是ssl。它內置於其瀏覽器中,用於對資料進行壓縮和解壓操作,並返回網路上傳送回的結果。它的主要作用可以分為兩種:一種是建立乙個資訊保安通道,來保證資料傳輸的安全;另一種就是確認**的真實性。

非對稱加密演算法(asymmetriccryptography)需要兩個金鑰:公開金鑰(publickey)和私有金鑰(privatekey)。公開金鑰與私有金鑰是一對,如果用公開金鑰對資料進行加密,只有用對應的私有金鑰才能解密;如果用私有金鑰對資料進行加密,那麼只有用對應的公開金鑰才能解密。因為加密和解密使用的是兩個不同的金鑰,所以這種演算法叫作非對稱加密演算法。

ssl(secure socketlayer)協議位於tcp/ip協議與各種應用層協議之間,為資料通訊提供安全支援。ssl協議可分為兩層:ssl記錄協議(sslrecord protocol):它建立在可靠的傳輸協議(如tcp)之上,為高層協議提供資料封裝、壓縮、加密等基本功能的支援。ssl握手協議(sslhandshake protocol):它建立在ssl記錄協議之上,用於在實際的資料傳輸開始前,通訊雙方進行身份認證、協商加密演算法、交換加密金鑰等。

ssl協議提供的服務主要有:

· 認證使用者和伺服器,確保資料傳送到正確的客戶機和伺服器;

· 加密資料以防止資料中途被竊取;

· 維護資料的完整性,確保資料在傳輸過程中不被改變。

ssl的握手協議非常有效的讓客戶和伺服器之間完成相互之間的身份認證,其主要過程如下:

①客戶端的瀏覽器向伺服器傳送客戶端ssl協議的版本號,加密演算法的種類,產生的隨機數,以及其他伺服器和客戶端之間通訊所需要的各種資訊。

②伺服器向客戶端傳送ssl協議的版本號,加密演算法的種類,隨機數以及其他相關資訊,同時伺服器還將向客戶端傳送自己的證書。

③客戶利用伺服器傳過來的資訊驗證伺服器的合法性,伺服器的合法性包括:證書是否過期,發行伺服器證書的ca是否可靠,發行者證書的公鑰能否正確解開伺服器證書的「發行者的數字簽名」,伺服器證書上的網域名稱是否和伺服器的實際網域名稱相匹配。如果合法性驗證沒有通過,通訊將斷開;如果合法性驗證通過,將繼續進行第四步。

④使用者端隨機產生乙個用於後面通訊的「對稱密碼」,然後用伺服器的公鑰(伺服器的公鑰從步驟②中的伺服器的證書中獲得)對其加密,然後將加密後的「預主密碼」傳給伺服器。

⑤如果伺服器要求客戶的身份認證(在握手過程中為可選),使用者可以建立乙個隨機數然後對其進行資料簽名,將這個含有簽名的隨機數和客戶自己的證書以及加密過的「預主密碼」一起傳給伺服器。

⑥如果伺服器要求客戶的身份認證,伺服器必須檢驗客戶證書和簽名隨機數的合法性,具體的合法性驗證過程包括:客戶的證書使用日期是否有效,為客戶提供證書的ca是否可靠,發行ca的公鑰能否正確解開客戶證書的發行ca的數字簽名,檢查客戶的證書是否在證書廢止列表(crl)中。檢驗如果沒有通過,通訊立刻中斷;如果驗證通過,伺服器將用自己的私鑰解開加密的「預主密碼」,然後執行一系列步驟來產生主通訊密碼(客戶端也將通過同樣的方法產生相同的主通訊密碼)。

⑦伺服器和客戶端用相同的主密碼即「通話密碼」,乙個對稱金鑰用於ssl協議的安全資料通訊的加解密通訊。同時在ssl通訊過程中還要完成資料通訊的完整性,防止資料通訊中的任何變化。

⑧客戶端向伺服器端發出資訊,指明後面的資料通訊將使用的步驟⑦中的主密碼為對稱金鑰,同時通知伺服器客戶端的握手過程結束。

⑨伺服器向客戶端發出資訊,指明後面的資料通訊將使用的步驟⑦中的主密碼為對稱金鑰,同時通知客戶端伺服器端的握手過程結束。

⑩ssl的握手部分結束,ssl安全通道的資料通訊開始,客戶和伺服器開始使用相同的對稱金鑰進行資料通訊,同時進行通訊完整性的檢驗。

所謂數字簽名(digitalsignature)就是附加在資料單元上的一些資料,或是對資料單元所作的密碼變換。這種資料或變換允許資料單元的接收者用以確認資料單元的**和資料單元的完整性並保護資料,防止被人(例如接收者)進行偽造。它是對電子形式的訊息進行簽名的一種方法,乙個簽名訊息能在乙個通訊網路中傳輸。基於公鑰密碼體制和私鑰密碼體制都可以獲得數字簽名,目前主要是基於公鑰密碼體制的數字簽名。包括普通數字簽名和特殊數字簽名。普通數字簽名演算法有rsa、elgamal、fiat-shamir、guillou-quisquarter、schnorr、ong-schnorr-shamir數字簽名演算法、des/dsa,橢圓曲線數字簽名演算法和有限自動機數字簽名演算法等。

數字簽名主要的功能是:保證資訊傳輸的完整性、傳送者的身份認證、防止交易中的抵賴發生。

數字簽名技術

是將摘要資訊用傳送者的私鑰加密,與原文一起傳送給接收者。接收者只有用傳送的公鑰才能解密被加密的摘要資訊,然後用hash函式對收到的原文產生乙個摘要資訊,與解密的摘要資訊對比。如果相同,則說明收到的資訊是完整的,在傳輸過程中沒有被修改,否則說明資訊被修改過,因此數字簽名能夠驗證資訊的完整性。

傳送內容:原文

+ 加密(

md5(原文))a b

接收方:md5(a)=?= 

解密(b)

對稱加密 非對稱加密 RSA 總結

對稱加密 指的就是加 解密使用的同是一串金鑰,所以被稱做對稱加密。對稱加密只有乙個金鑰作為私鑰。常見的對稱加密演算法 des,aes等。非對稱加密 指的是加 解密使用不同的金鑰,一把作為公開的公鑰,另一把作為私鑰。公鑰加密的資訊,只有私鑰才能解密。反之,私鑰加密的資訊,只有公鑰才能解密。舉個例子,你...

對稱加密 非對稱加密

區別在於加密金鑰和解密金鑰是否一樣,一樣則是對稱加密,不一樣則是非對稱加密。對稱加密計算量小,但若不同的客戶端使用不能的金鑰時,伺服器的複雜大。常用的對稱加密包括 des 3des aes des 3des使用的架構為feistel。des金鑰長度為56位,3des相容des,可設定3個56位密碼,...

對稱加密 非對稱加密

1 對稱加密 對稱加密採用了對稱密碼編碼技術,它的特點是檔案加密和解密使用相同的金鑰,即加密金鑰也可以用作解密金鑰,這種方法在密碼學中叫做對稱加密演算法,對稱加密演算法使用起來簡單快捷,金鑰較短,且破譯困難,除了資料加密標準 des 另乙個對稱金鑰加密系統是國際資料加密演算法 idea 它比des的...