将密钥对存储在代号为一个应用程序的设备中

时间:2019-03-27 09:07:58

标签: codenameone bouncycastle

我目前正在尝试使用代号一个框架,并且我想知道是否存在一种方法来存储由充气城堡库生成的密钥对?

我尝试使用“存储”和“首选项”存储密钥,但总是导致相同的异常

java.io.IOException: Object type not supported: org.bouncycastle.asn1.pkcs.RSAPublicKey value: org.bouncycastle.asn1.pkcs.RSAPublicKey@581c
    at com.codename1.io.Util.writeObject(Util.java:481)
    at com.codename1.io.Storage.writeObject(Storage.java:227)

1 个答案:

答案 0 :(得分:0)

您需要保存与键而不是键对象相关的字节数组。例如

byte[] b = key.toASN1Primitive().getEncoded();

要恢复:

RSAPublicKey key = RSAPublicKey.getInstance(b);

还没有尝试过,但是看一下代码,我认为这应该可行。