名詞解釋
SSL(Secure Socket Layer):安全套接字層
HTTPS(HTTP over SSL)
RSA非對稱加密:
雙方各自生成一對公鑰和私鑰刑棵,私鑰自己存放,用來解密正蛙,公鑰給對方愚隧,用來加密狂塘。這樣即使公鑰泄露了嚎,數(shù)據(jù)運送過程中他人也無法解密呐伞。
單純的非對稱加密存在的問題:若送公鑰的人被攔截趟径,中間人重新生成假的公鑰送給對方,對方用假的公鑰加密后,重新發(fā)回時被攔截后則可中間人用自己的私鑰破譯腋逆。
CA
在非對稱加密解決了加密問題后又產(chǎn)生了信任危機,即對方發(fā)來的公鑰是否為真侈贷,這就需要電子證書惩歉。
CA(Certificate Authority)就是頒發(fā)HTTPS證書的組織,可以防止”中間人“攻擊俏蛮,同時可以為網(wǎng)站提供身份證明撑蚌。
SSL流程
請放大查看圖片
注意:
HTTPS 在內(nèi)容傳輸?shù)募用苌鲜褂玫氖菍ΨQ加密,非對稱加密只作用在證書驗證階段搏屑。
為什么數(shù)據(jù)傳輸是用對稱加密的争涌?
- 非對稱加密的加解密效率是非常低的,而 http 的應用場景中通常端與端之間存在大量的交互辣恋,非對稱加密的效率是無法接受的第煮。
- 在 HTTPS 的場景中只有服務端保存了私鑰,客戶端不做非對稱密鑰生成抑党,一對公私鑰只能實現(xiàn)單向的加解密,所以HTTPS 中內(nèi)容傳輸加密采取的是對稱加密撵摆,而不是非對稱加密底靠。
感謝您的閱讀,本文已同步到我的個人博客特铝,您的關(guān)注是對我最大的鼓勵暑中!