簡單理解
公鑰私鑰數字簽名
公鑰和私鑰互相對應,成對存在
公鑰加密私鑰解密(密文),私鑰加密公鑰解密(數字簽名)
數字簽名保證不可否認性,只有擁有私鑰的人可以加密
這個過程公鑰是公開,用CA來保證公鑰的安全,當然CA也有自己的公鑰和私鑰
hash
又叫做指紋,簡單的說就是一種將任意長度的消息壓縮到某一固定長度的消息摘要的函數。
有很多種方法,通常來檢驗大文件的完整性
CA和驗證流程
可以信任的第三方CA,用來對公鑰進行合法性檢驗。
完整的安全傳輸公鑰並驗證的過程:
alice和bob通信
1.alice:
向CA申請證書,將公鑰和個人信息發送給CA,申請數字證書
2.CA:
驗證A,並制作數字證書
數字證書的格式普遍采用的是X.509V3國際標准,一個標准的X.509數字證書包含以下一些內容:
1、證書的版本信息;
2、證書的序列號,每個證書都有一個唯一的證書序列號;
3、證書所使用的簽名算法;
4、證書的發行機構名稱,命名規則一般采用X.500格式;
5、證書的有效期,通用的證書一般采用UTC時間格式;
6、證書所有人的名稱,命名規則一般采用X.500格式;
7、證書所有人的公開密鑰;
8、證書發行者對證書的簽名。
CA為了保證證書沒有被篡改,對主體內容生成hash生成指紋,並用自己的私鑰加密指紋,再將算法和指紋密文一並放入證書中
3.bob:
使用CA公鑰解密指紋密文
再對證書主題內容進行hash
結果與解密的指紋進行驗證,保證沒有被篡改
之后,開始使用alice的公鑰
此時,只有alice、bob和可以信任的第三方CA知道alice的公鑰
