ASCII格式的公钥这取决于你所说的“ASCII格式”是什么。但是,一般来说,你可以做这样的事情:

// Read the CSR

FileReader fileReader = new FileReader("/path/to/your.csr");

PemReader pemReader = new PemReader(fileReader);

PKCS10CertificationRequest csr =

new PKCS10CertificationRequest(pemReader.readPemObject().getContent());

pemReader.close();

fileReader.close();

// Write the Public Key as a PEM-File

StringWriter output = new StringWriter();

PemWriter pemWriter = new PemWriter(output);

PemObject pkPemObject = new PemObject("PUBLIC KEY",

csr.getSubjectPublicKeyInfo().getEncoded());

pemWriter.writeObject(pkPemObject);

pemWriter.close();

System.out.println(output.getBuffer());

// Extract the Public Key as "RSAKeyParameters" so you can use for

// encryption/signing operations.

RSAKeyParameters pubkey =

(RSAKeyParameters)PublicKeyFactory.createKey(csr.getSubjectPublicKeyInfo());

这是你会得到什么:

-----BEGIN PUBLIC KEY-----

MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxlRixVjOXAmUQ2zORREO

VSQDQejyjWzT3bDznPltiPMwM3SOmPmZyrB8jF3iFvzdFge1QG2WdDj7PzmysXNL

/1xRa0efWv8nURx1eV86hvU6ThNqY3WPyYYXSjTcN74uhGSJo7d5zG6JSL4Cj+l4

RO+nh/5Pa8438ufS+9hXndKPFT2aub9roKysxWpsctpNoOIjfyxkLv9Z9sqxuggG

nwYkwYmoDjPAQp2gRpCp7Hw5F6jSkA33NR5S/aPdyvzKZDbuoRdAl2sTubL1TLG3

nC6tetGsmFRRkNiJjPSNtbXXtN6RB2eJL0epyaFFLksFBaL6nvYIgB1uqFroUY15

2QIDAQAB

-----END PUBLIC KEY-----

我已与BC-提供的最新版本测试了这个。您需要“提供者”和“PKIX/PKCS ...”jar(否则您必须处理弃用的API调用)。

java获取公钥_使用java中的Bouncy Castle从CSR文件中获取公钥CSR相关推荐

  1. java web 伪静态_【Java Web】使用URLRewrite实现网站伪静态

    大部分搜索引擎都会优先考虑收录静态的HTML页面,而不是动态的*.jsp.*.php页面.但实际上绝大部分网站都是动态的,不可能全部是静态的HTML页面,因此互联网上大部分网站都会考虑伪静态--就是将 ...

  2. java内存修改_修改java虚拟机启动内存大小

    在运行java桌面应用程序的时候,有时候会因为jvm内存太小,从而内存溢出,程序崩溃. 可是通过修改 eclipse.ini 中的参数,来实现修改jvm的内存大小. -vmargs -Xms128M ...

  3. java通讯录备份_基于Java语言的C/S模式通讯录备份和查询软件

    一 需求分析 本设计要求完成一个基于C/S模式的通讯录备份软件,采用C/S架构,具有易用.美观的图形界面. 1.1 服务器端功能要求 能够验证客户身份,接收客户端的备份通讯录的请求,能够实时备份和更新 ...

  4. POI:从Excel文件中读取数据,向Excel文件中写入数据,将Excel表格中的数据插入数据库,将数据库中的数据添加到Excel表

    POI 简介: POI是Apache软件基金会用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程序对Microsoft Office格式档案读和写的功能. ...

  5. 将 a.txt 文件中的单词与 b.txt 文件中的单词交替合并到 c.txt 文件 中

    package again;import java.io.*;/* 1.编写一个程序,将 a.txt 文件中的单词与 b.txt 文件中的单词交替合并到 c.txt 文件 中,a.txt 文件中的单词 ...

  6. 遍历指定jar包中class文件名并输出到文件中

    import java.io.*; import java.util.ArrayList; import java.util.Enumeration; import java.util.List; i ...

  7. 在C#中保存Bouncy Castle生成的密钥对

    在用Bouncy Castle的C#版API产生公钥和私钥 中产生了一对密钥对,可以用bouncy caslte提供的API进行保存 公钥方面的3个类,具体代码根据命名空间自行查看其源代码: Org. ...

  8. python怎么打开h5文件_python中利用h5py模块读取h5文件中的主键方法

    如下所示: import h5py import numpy as np #HDF5的写入: imgData = np.zeros((2,4)) f = h5py.File('HDF5_FILE.h5 ...

  9. idea中ctrl+shift+f(在文件中查找)失效,全图文解决方案

    idea中ctrl+shift+f(在文件中查找)失效,全图文解决方案 一.Win11微软键盘 原因:因为输入法默认指定ctrl+shift+f是简体与繁体中文输入之间的切换,所以在idea中按键无效 ...

  10. java function获取参数_「Java容器」ArrayList源码,大厂面试必问

    ArrayList简介 ArrayList核心源码 ArrayList源码分析 System.arraycopy()和Arrays.copyOf()方法 两者联系与区别 ArrayList核心扩容技术 ...

最新文章

  1. js和html以及css的区别,html、css、js中的区别与关系
  2. 利用SMTP收发邮件
  3. Selenium之XPATH轴定位(第三篇)
  4. 你看我还有机会吗?这么GAN让我秃然荒了!
  5. 如何忽略证书继续访问_前5个最容易被忽视的可访问性问题
  6. 【python】数据结构和算法 + 浅谈单链表与双链表的区别
  7. android activity透明主题,Android应用的全透明效果--Activity及Dialog的全透明
  8. 智能会议系统---(4)VOIP 实现
  9. yafu安装使用方法以及mismatched parens解决方法
  10. ScrollView垂直滚动控件
  11. BGP过滤器原理和实验(华为设备)
  12. 使用Standford coreNLP进行中文命名实体识别(NER)
  13. Atitit  godaddy 文件权限 root权限设置
  14. 四个月备考计算机考研,这些考研走心建议帮你度过剩下的四个月
  15. oracle中数据泵只导出索引,oracle expdp/impdp exclude=STATISTICS
  16. 财会法规与职业道德【9】
  17. oracle羊毛,预言机(Oracle)简介和撸羊毛教程— 上篇
  18. 医学图像处理常用的看图软件介绍及使用(RadiAnt DICOM Viewer、ITK-Snap和3D Slicer)
  19. C语言读取文件时txt中的汉字出现乱码的解决方案
  20. nginx 使用配置解释

热门文章

  1. python对csv文件的读写
  2. 小技巧:把风扇的扇叶取下来
  3. 浮动与两侧皆自适应布局
  4. 数字图像处理 张量分解的概念、发展及其应用
  5. python numpy 数组中元素设置所有小于0的元素为0
  6. Maven 使用maven-assembly-plugin打包可执行jar,No auto configuration classes found in META-INF/spring.factori
  7. 程序员的数学(四)—— 数学归纳法,如何征服无穷数列
  8. 美国20家最具创新性的初创公司
  9. 轻骑兵开发平台环境搭建
  10. 教您用EasyRecovery16快速下载安装及使用恢复数据方法