Security
ssl通信握手問題
在 SSL 通信期間,伺服器將其證書發送給客戶端進行身份驗證。
可選地,客戶端也可以發送其證書,以進行客戶端身份驗證。
我的問題是,伺服器(或客戶端)是將整個鏈發送給客戶端(即簽名證書)還是僅發送自己的證書?
我注意到通常只發送它自己的證書,但我想知道它是否可配置,或者將整個鏈發送給另一方沒有意義。
謝謝
它是可配置的。
不需要發送任何對等方已知的證書(需要注意的是,certificate_list 證書中的每個證書都必須直接證明它前面的證書,除了第一個證書沒有前面的證書)
假設對等方必須已經擁有它以便在任何情況下驗證它,發送根是沒有意義的。至於中間證書,這取決於您的特定證書鏈。
為了回答關於客戶端的部分,當伺服器請求客戶端證書時,它會發送一個它辨識的 CA 列表。客戶端只需要將其證書鏈發送到那些公認的 CA 之一。