bouncycastle创建csr
2024-10-17 01:27:14
public static void main(String[] args) {
String subjectDN = "CN=duwenlei";
String algorithm = "";
try {
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(2048);
KeyPair keyPair = keyPairGenerator.generateKeyPair();
algorithm = keyPair.getPrivate().getAlgorithm();
PKCS10CertificationRequestBuilder builder = new PKCS10CertificationRequestBuilder(new X500Name(subjectDN)
,SubjectPublicKeyInfo.getInstance(keyPair.getPublic().getEncoded())); JcaContentSignerBuilder jcaBuilder = new JcaContentSignerBuilder("sha1withrsa");
// jcaBuilder.setProvider(provider); 这里可以添加提供者
ContentSigner contentSigner = jcaBuilder.build(keyPair.getPrivate());
builder.build(contentSigner);
System.out.println(builder.toString());
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (OperatorCreationException e) {
e.printStackTrace();
} }
需要用到的包:bcmail-jdk15-1.46.jar,bcprov-jdk15-1.46.jar,用不到:bctsp-jdk15-1.46.jar
最新文章
- 使用Fiddler关于“由于目标计算机积极拒绝,无法连接。”的解决方案
- Andriod学习笔记3:Mac 平台下搭建 CLion 集成开发环境
- iOS应用中的相关正则及验证
- 环信SDK报错处理方法obtain an updated library from the vendor, or disable bitcode for this target. for archit
- Android SDK代理服务器解决国内Android SDK不能更新下载问题
- AXIS最佳实践
- 第四章ContentProvider
- npm下载包时代理配置
- Linux下编译安装python3
- JavaScript内的类型转换
- Asp.Net MVC 3【Filters(过滤器)】
- OC5_构造方法与self指针
- PHP 11:函数
- 你需要知道的Android拍照适配方案
- java枚举使用 总结
- apache中 sed 指定文件中某字符串增加行
- 安装anaconda和python3.7环境
- python运算符和数据类型的可变性
- 【SQL实践】其他常用SQL汇总
- Java大数统计-hdu1316