如何使用Gson序列化/反序列化FlexiProvider KeyPair?

时间:2016-12-01 22:28:35

标签: java serialization gson deserialization

我尝试使用Gson序列化和反序列化密钥对(从FlexiProvider密钥对生成器获得),但是我收到此错误:

  

java.lang.RuntimeException:无法为其调用no-args构造函数   interface java.security.PrivateKey。注册InstanceCreator   这种类型的Gson可以解决这个问题。

这是我用来生成KeyPair并将其作为Gson保存到文件的代码:

KeyPairGenerator kpg = KeyPairGenerator.getInstance("ECIES", "FlexiEC");
CurveParams ecParams = new CurveRegistry.BrainpoolP160r1();
kpg.initialize(ecParams, new SecureRandom());
key = kpg.generateKeyPair();

Gson gson = new Gson();
String serializedKeyPair = gson.toJson(key)

这是反序列化的代码:

KeyPair key = new Gson().fromJson(serializedKeyPair, KeyPair.class);

请帮忙吗?非常感谢你!

0 个答案:

没有答案