最近在研究通过bc包生成CSR的功能,已知用bcprov-15jdk包是没问题的之前用的也一直是这种方法,但是最近有个项目需要同时用到电子签章和电子签名功能,bcprov-jdk15和bcprov-jdk15on两个jar包又不能兼容,于是就考虑将之前的电子签名创建CSR的功能用bcprov-jdk15on包来实现,具体实现如下所示:

* 创建证(CSR) * @param paramInt 密钥对长度 * @param paramString1 密钥对算法 * @param paramString2 CSR算法 * @param paramString3 证书提供者(一般为BC) * @return * @throws Exception public static String generationTest(int paramInt, String paramString1, String paramString2, String paramString3) throws Exception { Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); KeyPairGenerator localKeyPairGenerator = KeyPairGenerator.getInstance(paramString1, "BC"); localKeyPairGenerator.initialize(paramInt); KeyPair localKeyPair = localKeyPairGenerator.genKeyPair(); X500NameBuilder localX500NameBuilder = new X500NameBuilder(BCStyle.INSTANCE); localX500NameBuilder.addRDN(BCStyle.CN, "dpp"); localX500NameBuilder.addRDN(BCStyle.C, "AU"); localX500NameBuilder.addRDN(BCStyle.O, "The Legion of the Bouncy Castle"); localX500NameBuilder.addRDN(BCStyle.L, "Melbourne"); localX500NameBuilder.addRDN(BCStyle.ST, "Victoria"); localX500NameBuilder.addRDN(BCStyle.EmailAddress, "feedback-crypto@bouncycastle.org"); X500Name localX500Name = localX500NameBuilder.build(); JcaPKCS10CertificationRequestBuilder localJcaPKCS10CertificationRequestBuilder = new JcaPKCS10CertificationRequestBuilder(localX500Name, localKeyPair.getPublic()); PKCS10CertificationRequest localPKCS10CertificationRequest = localJcaPKCS10CertificationRequestBuilder.build(new JcaContentSignerBuilder(paramString2).setProvider(paramString3).build(localKeyPair.getPrivate())); JcaPKCS10CertificationRequest localJcaPKCS10CertificationRequest = new JcaPKCS10CertificationRequest(localPKCS10CertificationRequest.getEncoded()).setProvider(paramString3); if (!localJcaPKCS10CertificationRequest.isSignatureValid(new JcaContentVerifierProviderBuilder().setProvider(paramString3).build(localKeyPair.getPublic()))) { System.out.println(paramString2 + ": Failed verify check."); if (!Arrays.areEqual(localJcaPKCS10CertificationRequest.getPublicKey().getEncoded(), localPKCS10CertificationRequest.getSubjectPublicKeyInfo().getEncoded())) { System.out.println(paramString1 + ": Failed public key check."); return Base64.encodeBase64String(localJcaPKCS10CertificationRequest.getEncoded());

所需要的jar包为: bcprov-jdk15on-1.60.jar

最近在研究通过bc包生成CSR的功能,已知用bcprov-15jdk包是没问题的之前用的也一直是这种方法,但是最近有个项目需要同时用到电子签章和电子签名功能,bcprov-jdk15和bcprov-jdk15on两个jar包又不能兼容,于是就考虑将之前的电子签名创建CSR的功能用bcprov-jdk15on包来实现,具体实现如下所示: /** * 创建证(CSR) * @param ...
赠送jar bcp rov - jdk 15on -1.58.jar; 赠送原API文档: bcp rov - jdk 15on -1.58-javadoc.jar; 赠送源代码: bcp rov - jdk 15on -1.58-sources.jar; 赠送Maven依赖信息文件: bcp rov - jdk 15on -1.58.pom; 含翻译后的API文档: bcp rov - jdk 15on -1.58-javadoc-API文档-中文(简体)版.zip; Maven坐标:org.bouncycastle: bcp rov - jdk 15on :1.58; 标签:bouncycastle、 bcp rov jdk 15on 、中文文档、jar 、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
bcp rov - jdk 15on 简介、中文文档、中英对照文档 下载; bcp rov - jdk 15on 、org.bouncycastle、中文文档、中英对照文档、下载、 含jar 、原API文档、源代码、Maven依赖信息文件、翻译后的API文档、 jdk 15on 、bouncycastle、 bcp rov 、jar 、java、中英对照文档; bcp rov - jdk 15on -1.68.jar、 bcp rov - jdk 15on -1.60.jar、 bcp rov - jdk 15on -1.59.jar、 bcp rov - jdk 15on -1.58
源地址:https://www.cnblogs.com/syj2016/p/13501454.html bcp kix - jdk 15on -1.60.jar下载地址: https://maven.ityuan.com/maven2/org/bouncycastle/ bcp kix - jdk 15on /1.60 bcp rov - jdk 15on -1.60.jar下载地址: https://maven.ityuan.com/maven2/org/bouncycastle/...
一. 背景 最近需要将一项加解密功能从Web应用中剥离,制作成一个独立可执行的Jar ,供客户离线使用。加解密时使用到了 bcp rov 轻量级加密API,这个Jar 在运行时会检索签名,比对自身 含的文件大小,若有任何一项出现异常,则运行时直接报错: java.lang.SecurityException: JCE cannot authenticate the p rov ider...
在MyEclipse10.7中,把项目部署在tomcat7上,进而启动server时出现一系列问题,如下: 使用 bcp rov - jdk 15on -1.5.2.jar/1.6.0.jar版本引出的问题 严重: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component...
import cn.hutool.core.codec.Base64; import cn.hutool.core.util.CharsetUtil; import cn.hutool.crypto.Mode; import cn.hutool.crypto.Padding; import cn.hutool.crypto.symmetric.SM4; import cn.hutool.crypto.symmetric.SymmetricCrypto; * sm4加密算法工具类
bcp rov - jdk 15和 bcp rov - jdk 15on 引发的奇怪bug // An highlighted block Caused by: java.lang.NoSuchMethodError: org.bouncycastle.asn1.ASN1Object.fromByteArray([B)Lorg/bouncycastle/asn1/ASN1Object; at org.bouncycastle.openssl.PEMReader.readKeyPair(Unknown Source)