我尝试使用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);
请帮忙吗?非常感谢你!