java生成电子证书_关于Java:使用Bouncycastle生成数字证书
經(jīng)過(guò)研究,我確定,為了在Java中以編程方式生成和簽署證書,我需要bouncycastle庫(kù)。
不幸的是,圖書館似乎在最近的某個(gè)時(shí)候進(jìn)行了大修。 現(xiàn)在不推薦使用它們的很多類,而我可以找到的所有簡(jiǎn)單易懂的教程和代碼示例也將不推薦使用。
我是密碼學(xué)的新手。 僅僅擁有基本的知識(shí)和對(duì)我實(shí)際要完成的工作的模糊理解,我摸索了過(guò)時(shí)的教程和假定的知識(shí)Bouncycastle文檔,這是一段艱苦的經(jīng)歷。
有什么簡(jiǎn)單易懂的,最新的Bouncycastle教程,或者我應(yīng)該看的替代庫(kù)? 還是應(yīng)該咬緊牙關(guān),忽略棄用警告并希望最好?
那或者您可以查看EJBCA,或者查看源代碼,也可以將其用作服務(wù)。 您確定需要從代碼生成證書嗎? 還有很多其他選擇可以創(chuàng)建證書。
我設(shè)計(jì)了一種向客戶端提供身份驗(yàn)證的服務(wù)器,以便客戶端可以在p2p環(huán)境中相互驗(yàn)證,而無(wú)需使該服務(wù)器始終可用。 歡迎使用其他選項(xiàng)。 我將看一下EJBCA,稍后再評(píng)論。
很難找到它,但是bouncycastle Wiki的記錄卻簡(jiǎn)短而甜美。 特別是,此頁(yè)面上標(biāo)題為"簡(jiǎn)單運(yùn)算符示例"的第一個(gè)示例將使您入門。
另一個(gè)非常好的選擇是僅使用庫(kù)的1.46版,即使用舊api的最新版本。
抱歉,花了一段時(shí)間才接受。 我最終在Wiki和在線教程的幫助下使用了1.46,一旦掌握了這一點(diǎn),便將代碼向前遷移了。
您是否真的需要直接使用Bouncycastle,還是不能將其用作加密服務(wù)提供商? 因此,您無(wú)需使用BCs API。 請(qǐng)參閱《 JCA參考指南》。 我將這些行用于一些加密:
static {
Security.addProvider(new BouncyCastleProvider());
}
public void someMethod() {
KeyFactory fact = KeyFactory.getInstance("RSA","BC");
Key key = fact.generatePublic(PUB_KEY_SPEC);
// do stuff
}
您可能會(huì)仔細(xì)看看CertificateFactory。
"此類定義了證書工廠的功能,該功能用于根據(jù)其編碼生成證書,證書路徑(CertPath)和證書吊銷列表(CRL)對(duì)象。" 強(qiáng)調(diào)我的。 此外,他也沒有詢問如何從其編碼中創(chuàng)建密鑰。
總結(jié)
以上是生活随笔為你收集整理的java生成电子证书_关于Java:使用Bouncycastle生成数字证书的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java磁盘读写b 树_原来你是这样的B
- 下一篇: 为什么夏天容易招惹蚊子呢?