小编典典

您可以使用一对或密钥在Java中动态生成证书。(公钥,私钥)。以BigInteger格式获取这些密钥,并检查以下代码以生成证书。

RSAPrivateKeySpec serPrivateSpec = new RSAPrivateKeySpec(

new BigInteger(val of pub key), new BigInteger(val of pri key));

fact = KeyFactory.getInstance("RSA");

PrivateKey serverPrivateKey = fact.generatePrivate(serPrivateSpec);

RSAPublicKeySpec serPublicSpec = new RSAPublicKeySpec(

new BigInteger(agentCL.getSerPubMod()), new BigInteger(agentCL.getSerPubExp()));

PublicKey serverPublicKey = fact.generatePublic(serPublicSpec);

keyStore = KeyStore.getInstance(IMXAgentCL.STORE_TYPE);

keyStore.load(null, SOMEPWD.toCharArray());

Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());

X509Certificate[] serverChain = new X509Certificate[1];

X509V3CertificateGenerator serverCertGen = new X509V3CertificateGenerator();

X500Principal serverSubjectName = new X500Principal("CN=OrganizationName");

serverCertGen.setSerialNumber(new BigInteger("123456789"));

// X509Certificate caCert=null;

serverCertGen.setIssuerDN(somename);

serverCertGen.setNotBefore(new Date());

serverCertGen.setNotAfter(new Date());

serverCertGen.setSubjectDN(somename);

serverCertGen.setPublicKey(serverPublicKey);

serverCertGen.setSignatureAlgorithm("MD5WithRSA");

// certGen.addExtension(X509Extensions.AuthorityKeyIdentifier, false,new

// AuthorityKeyIdentifierStructure(caCert));

serverCertGen.addExtension(X509Extensions.SubjectKeyIdentifier, false,

new SubjectKeyIdentifierStructure(serverPublicKey));

serverChain[0] = serverCertGen.generateX509Certificate(serverPrivateKey, "BC"); // note: private key of CA

keyStore.setEntry("xyz",

new KeyStore.PrivateKeyEntry(serverPrivateKey, serverChain),

new KeyStore.PasswordProtection("".toCharArray()));

希望这会帮助你。

2020-11-17

java生成公钥和私钥_使用Java生成证书,公钥和私钥相关推荐

  1. 【源码+图片素材】Java王者荣耀游戏开发_开发Java游戏项目【王者荣耀】1天搞定!!!腾讯游戏_Java课程设计_Java实战项目_Java初级项目

    王者荣耀是当下热门手游之一,小伙伴们是否想过如何制作一款属于自己的王者荣耀游戏呢? 本课程讲解了一个王者荣耀游戏的详细编写流程,即使你是刚入门Java的新手,只要你简单掌握了该游戏所需要的JavaSE ...

  2. 非对称加密 公钥私钥_选择Java加密算法第3部分–公钥/私钥非对称加密

    非对称加密 公钥私钥 抽象 这是涵盖Java加密算法的三部分博客系列的第3部分. 该系列涵盖如何实现以下功能: 使用SHA–512散列 使用AES–256的单密钥对称加密 RSA–4096 这第三篇文 ...

  3. java cxf服务端代码_【JAVA】 cxf 生成 webservice 服务端代码

    CXF Apache CXF = Celtix + XFire.CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding . ...

  4. vue如何生成公钥私钥_百行Python代码演示1私钥生成多公链公钥原理。|区块链财富指北私钥篇(2)...

    <区块链财富指北>系列文章由NOCY.COM策划,肖南飞主笔撰写. 技术选型基于BOScore公链,旨在以有趣易懂的方式传播普及区块链技术,不构成任何投资建议! 学习之前说学习 今天这篇文 ...

  5. Java使用jfreechart画饼图_使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP-2...

    柱状分布统计图:package com.xidian.servlet; import java.awt.Color; import java.awt.Font; import java.io.IOEx ...

  6. java课后习题七解析_《Java基础入门》_课后习题解析.doc

    <Java基础入门>_课后习题解析 <Java基础入门>课后习题 Java开发入门 一.填空题 1.Java的三大体系分别是_JavaSE_____._JavaEE_____. ...

  7. java jsp取静态常量_获取java静态

    Android NDK开发系列教程4:对类变量进行操作 终于建了一个自己个人小站:https://huangtianyu.gitee.io,以后优先更新小站博客,欢迎进站,O(∩_∩)O~~ 通常我们 ...

  8. java课后习题及答案_《java基础入门》课后习题及答案.doc

    <java基础入门>课后习题及答案.doc <Java 基础入门>课后习题及答案博学谷--让 IT 教学更简单,让 IT 学习更有效<Java 基础入门> 课后习题 ...

  9. java基础入门课后习题_《Java基础入门》课后习题及答案

    <Java基础入门>课后习题及答案Java基础入门,课后习题,答案 博学谷--让IT教学更简单,让IT学习更有效 <Java基础入门>课后习题 第1章Java开发入门 一.填空 ...

  10. java ug二次开发_使用Java进行UG二次开发:简单的例子(上) | 学步园

    最近因为要进行TeamCenter二次开发(胖客户端定制),所有要开始研究Java了.因此突发奇想为什么不能使用Java进行二次开发呢?现在对UG进行的开发以C/C++应用为主.大多数使用的是原来的U ...

最新文章

  1. epoll 的实现原理以及与poll,select 的对比
  2. 吴恩达机器学习入门2018高清视频公开,还有习题解答和课程拓展,网友:找不到理由不学!...
  3. 廊坊学院报名计算机二级,2021上半年廊坊市计算机二级报名时间|网上报名入口【1月6日开通】...
  4. LeetCode 659. 分割数组为连续子序列(哈希)
  5. lia人是什么意思_69年属鸡人终身灾难是什么意思
  6. html定位 浏览器兼容,IE6浏览器不支持固定定位(position:fixed)解决方案
  7. php预处理的fetch函数,php 预编译查询始终fetch不到数据解决方案
  8. 标量、向量、矩阵、张量
  9. C语言-函数的指针/函数指针/回调函数
  10. 在远程桌面连接中使用命令行参数
  11. 设计模式---桥接模式(C++实现)
  12. iOS开发——策略模式
  13. 工厂模式+抽象工厂模式
  14. python贪吃蛇源码下载_Python贪吃蛇源代码
  15. 焦作统计年鉴 2017年
  16. endnote中科大版区别_文献管理软件 EndNote X9.3.1 中科大批量授权版
  17. 我曾经学习过的地方--中国欧盟可用性研究中心
  18. 继 layui 之后, jQuery Mobile 宣布完全弃用!
  19. GAN——生成对抗网络详解
  20. Intel的Barefoot与AMD的Pensando技术

热门文章

  1. mysql释放练级_面试官:谈谈Mysql事务隔离级别?
  2. 姚殊清华计算机科学与技术,王道顺(清华大学计算机科学与技术系副教授)_百度百科...
  3. python中bin函数的用法_Python 3标准库用法--ascii()、bin()、breakpoint()函数
  4. mysql 环形复制_mysql复制(Replication)
  5. php如何做熔断降级,spring cloud 如何实现服务熔断服务降级
  6. Java集合类: Set、List、Map、Queue区别及应用
  7. mysql自动挂载存储_Linux开机自动挂载存储
  8. -heap 查看当前jvm堆栈信息_必知必会的JVM工具系列二,读懂会用jhat,jstack,jstatd,JConsole...
  9. vc怎么查看c源码的汇编语言,VC++代码的汇编分析(一)
  10. 计算机原理 英文版,计算机原理介绍英文版.doc