第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何驗證x509證書的簽名?

如何驗證x509證書的簽名?

喵喔喔 2023-09-06 15:00:37
我有兩個 X509Certificate 對象 x1 和 x2。我想驗證 x2 是否由 x1 簽名。我認(rèn)為這是通過 x1 的公鑰和 x2 的簽名來完成的。具體如何做到這一點?我還想知道將 x2 的發(fā)行者與 x1 的主題進行逐字節(jié)比較并在不同時顯示錯誤是否是常見做法。
查看完整描述

1 回答

?
ABOUTYOU

TA貢獻(xiàn)1812條經(jīng)驗 獲得超5個贊

您正在尋找證書鏈,這是 PKI(公鑰基礎(chǔ)設(shè)施)中常見的東西。一個證書可以對另一個證書進行簽名,以表明該證書是可信的。


在簡單的示例中,將有一個自簽名且受信任的根證書 - 每個人都信任該證書。接下來,您可以要求該證書的所有者使用 Root 的證書私鑰對您的證書進行簽名。因此,如果有人想使用您的證書,他可以檢查您的證書是否由根證書簽名,并且如果他信任根證書 - 他也可以信任您。


在 Java 中,您可以使用如下命令檢查證書是否由相應(yīng)證書的私鑰簽名:


X509Certificate yourCert = ...

X509Certificate root = ...


try {

? ? yourCert.verify(root.getPublicKey()); }?

catch (CertificateException | NoSuchAlgorithmException | InvalidKeyException | NoSuchProviderException e) {

? ? //handle wrong algos

} catch (SignatureException ex) {

? ? //signature validation error

}

Certificate::verify目的是:

驗證此證書是否是使用與指定公鑰對應(yīng)的私鑰簽署的。


由于X509Certificate擴展,Certificate您可以在實現(xiàn)上使用此方法X509Certificate(因為X509Certificate是一個abstract類)。


您還可以查看X509Certificate::verify(PublicKey, Provider)哪些需要PublicKeyProvider實施。



查看完整回答
反對 回復(fù) 2023-09-06
  • 1 回答
  • 0 關(guān)注
  • 202 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號