Rsa
了解對 PKI 的需求
為簡單起見,假設我手頭只有 RSA 和 AES,我希望 Alice 通過安全通道與 Bob 交談。有了安全,我暗示沒有 MITM,Alice 和 Bob 知道他們在互相交談,而不是在與其他人交談。
當 Alice 想要與 Bob 建立一個安全通道時,Alice 將向 Bob 詢問他的 RSA 公鑰,用她的 RSA 私鑰簽署一個隨機生成的 AES 密鑰,用 Bob 的 RSA 公鑰加密簽名和 AES 密鑰並將其發送給 Bob。Bob 將向 Alice 詢問她的 RSA 公鑰,用他自己的 RSA 私鑰解密簽名和 AES 密鑰,並用 Alice 的公鑰驗證簽名。現在 Alice 和 Bob 可以使用 AES 密鑰進行進一步的通信……
我是否更正了 Alice 和 Bob 交換他們的公鑰的部分是潛在的 MITM 向量?Alice 如何確定她得到了 Bob 的公鑰,反之亦然?這是否是 PKI 主要解決的問題,例如 Alice 和 Bob 預先信任第三方,例如簽署他們的公鑰?還是我完全忽略了這一點,以上所有內容都是假的?
你的理解是正確的。PKI 將是驗證 Bob 的公鑰確實屬於名為“Bob”的人的服務。只要 Alice 信任認證 Bob 的公鑰的證書頒發機構,她就可以隱含地相信她看到的公鑰確實是 Bob 的,而不是 Eve 執行 MITM。
網際網路由網路 PKI 保護,這是證書頒發機構的網路,用於證明網站的公鑰確實屬於它聲稱屬於的域(用於域驗證,或 DV)。信任少數 CA 比信任您將訪問的每個網站要容易得多。