保護HTTP的安全

2021-07-06 08:18:43 字數 2700 閱讀 7058

使用不同金鑰的旋轉n字元密碼

對稱金鑰加密技術

傳送端和接收端要共享相同的金鑰k才能進行通訊。傳送端用共享的金鑰來加密報文,並將得到的密文傳送給接收端。接收端收到密文,並對其應用解密函式和相同的共享金鑰,恢復出原始的明文

對稱金鑰加密演算法為編/解碼使用相同的金鑰

流行的對稱金鑰加密演算法包括:des、triple-des、rc2和rc4。

金鑰長度與列舉攻擊

金鑰長度取決金鑰值的位數,列舉攻擊方式是通過暴力破解所有金鑰值

建立共享金鑰

對稱金鑰加密技術的缺點之一:傳送者與接收者在互相對話之前,一定要有乙個共享的保密金鑰。

公開金鑰加密技術沒有為每對主機使用單獨的加密/解密金鑰,而是使用了兩個非對稱金鑰:乙個用來對主機報文編碼,另乙個用來對主機報文解碼。

加密系統對報文進行簽名(sign),以說明誰編寫的報文並且未被篡改過。這種技術被稱為數字簽名。

數字簽名通常是用非對稱公開金鑰技術產生的。因為只有所有者才知道其私有金鑰,所以可以將作者私有金鑰當作一種「指紋」使用

解密的數字簽名流程,如下圖:

數字證書(通過被稱作」certs」)包含了由某個受信任組織擔保的使用者或公司的相關資訊。

證書的主要內容:

1、物件的名稱;

2、過期時間;

3、證書發布者(由誰為證書擔保);

4、來自證書發布者的數字簽名。

典型的數字簽名格式,如下圖:

x.509 v3證書

「`html

字段            |     描述

版本 這個證書的x.509證書版本號。現在使用的通常都是版本3

序列號 證書頒發機構(ca)生成的唯一整數。ca生成的每個證書都要有乙個唯一的序列號

簽名演算法id 簽名所使用的加密演算法。使用,「用rsa加密的md2摘要」

證書頒發者 發布並簽署這個證書的組織名稱,以x.500格式表示

有效期 此證書何時有效,由乙個起始日期和乙個結束日期來表示

物件名稱 證書中描述的實體,比如乙個人或乙個組織。物件名稱是以x.500格式表示的

物件的公開金鑰資訊 證書物件的公開金鑰,公開金鑰使用的演算法,以及所有附加引數

發布者唯一的id 可選的證書發布者唯一識別符號,這樣就可以重用相同的發布者名稱

物件唯一的id 可選的證書物件唯一識別符號,這樣就可以重用相同的物件名稱

擴充套件 可選的擴充套件欄位集

證書的頒發機構簽名 證書頒發機構用指定的簽名演算法對上述所有字段進行的數字簽名

用證書對伺服器進行認證

伺服器證書

基礎方案-完整版:nginx修改配置

server
https如何加密

* 特點:加解密快,消耗小於1ms,256位安全

* 分為兩種:

* 特點:加解密非常慢,需要消耗9ms,2048位安全

* 加密演算法:rsa

https安全層-ssl && tls

如何確定公鑰的身份?

公鑰基礎設施:public key infrastructure,如下圖:

https握手過程

https加速

https加密套件,如下圖:

keyless方案 - 計算集群

keyless方案 - 金鑰復用

其他優化

tcp fast open

hsts

防止https計算型攻擊

其他優化 - 硬體加速

aes:有加速 小於1ms(1kb - 13mb)

終端:未來也會有

保護HTTP的安全

如果沒有嚴格的限制訪問的許可權,公司放在伺服器上的重要文件就存在隱患,web需要有一些安全的http形式 安全方法 基本認證 摘要認證 報文完整性檢查都是一些輕量級的方法,但還不夠強大,下面介紹更加強大的一些方法 服務端認證 客戶端認證 完整性 客戶端和伺服器的資料不會被修改 加密 客戶端和服務端的...

保護HTTP的安全

如果沒有嚴格的限制訪問的許可權,公司放在伺服器上的重要文件就存在隱患,web需要有一些安全的http形式 安全方法 基本認證 摘要認證 報文完整性檢查都是一些輕量級的方法,但還不夠強大,下面介紹更加強大的一些方法 服務端認證 客戶端認證 完整性 客戶端和伺服器的資料不會被修改 加密 客戶端和服務端的...

介面安全保護策略

開放介面時最基本需要考慮到介面不應該被別人隨意訪問,而我也不能隨意訪問到其他使用者的資料,從而保證使用者與使用者之間的資料隔離。這個時候我們就有必要引入token機制了。具體的做法 在使用者成功登入時,系統可以返回客戶端乙個token,後續客戶端呼叫服務端的介面,都需要帶上token,而服務端需要校...