Java相当于Crypto Charm ECGroup序列化/反序列化

时间:2017-05-19 04:14:08

标签: java python bouncycastle charm-crypto

我是密码学的新手,我正在学习如何在Java中使用Bouncy Castle进行加密。

我知道Python有我使用的Crypto-Charm

import charm.toolbox.ecgroup


serializedKey = charm.toolbox.ecgroup(prime192v1).deserialize(keyInBytes)

我如何为Java做同样的事情?

2 个答案:

答案 0 :(得分:0)

试试这个:

反序列化:

KeyFactory keyFactory = KeyFactory.getInstance("EC");
PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(keyBytes);
PrivateKey privateKey = keyFactory.generatePrivate(keySpec);

序列化:

byte[] keyBytes = privateKey.getEncoded();

也许你可以在KeyFactory.getInstance之前需要这个调用(取决于你的JDK):

Security.addProvider(new BouncyCastleProvider());

答案 1 :(得分:0)

此参考资料对于理解不同的代码编码示例很有用 https://www.bouncycastle.org/fips-java/BCFipsIn100.pdf

在章节中

<块引用>

基于密码的加密和密钥存储

在这个部分

<块引用>

编码公钥和私钥

有一些例子可以帮助您获得想法。