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

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调用)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值