Encryption J2ME,使用BouncyCastle从PemObject强制转换为AsymmetricKeyParameter时出现异常
我今天的问题是关于J2ME的BouncyCastle加密库, 我在C#中有一些代码,我在其中执行以下转换:Encryption J2ME,使用BouncyCastle从PemObject强制转换为AsymmetricKeyParameter时出现异常,encryption,java-me,casting,bouncycastle,Encryption,Java Me,Casting,Bouncycastle,我今天的问题是关于J2ME的BouncyCastle加密库, 我在C#中有一些代码,我在其中执行以下转换: AsymmetricKeyParameter pubKey=(AsymmetricKeyParameter)pubReader.ReadObject() 这在C#端起作用,但是当我在Java中执行此操作时,我得到一个错误,指出pubReader没有ReadObject()方法,我将其更改为ReadObject(),但仍然不存在,因此我继续搜索一个将返回对象类型的方法,我只发现readPem
AsymmetricKeyParameter pubKey=(AsymmetricKeyParameter)pubReader.ReadObject()代码>
这在C#端起作用,但是当我在Java中执行此操作时,我得到一个错误,指出pubReader没有ReadObject()方法,我将其更改为ReadObject(),但仍然不存在,因此我继续搜索一个将返回对象类型的方法,我只发现readPemObject(),如下所示:
AsymmetricKeyParameter pubKey=(AsymmetricKeyParameter)pubReader.readPemObject()代码>
然而。。。这时我遇到了一个大问题,因为我无法从PemObject转换为AsymmetricKeyParameter并最终出现错误
以下是大部分有问题的代码:
PemReader pubReader = new PemReader(new StringReader(pubKey));
AsymmetricKeyParameter nhe = (AsymmetricKeyParameter)pubReader.readPemObject();
Imported teste = new Imported();
PemObject pobj = pubReader.readPemObject();
System.out.println("PemObject: " + pobj);
byte[] output = teste.Encrypt(holyshizzle.getBytes(), nhe);
System.out.println(new String(output));
byte[] revvit = teste.Decrypt(output, (AsymmetricKeyParameter)blah.getPrivate());
System.out.println(new String(revvit));`
PS:导入的类是加密/解密代码所在的地方,所有这些都可以正常工作(使用生成的密钥进行测试),我正在尝试使用预先制作的加密密钥来实现这一点
问候,,
Gonçalo Vieira尝试更换
AsymmetricKeyParameter nhe = (AsymmetricKeyParameter)pubReader.readPemObject();
与
试着替换
AsymmetricKeyParameter nhe = (AsymmetricKeyParameter)pubReader.readPemObject();
与
等效函数位于org.bouncycastle.openssl.PEMReader
类中。此类仅在完整的Bouncycastle提供程序库中可用,而在J2ME版本中不可用。您是否只对RSA密钥感兴趣?等效函数位于org.bouncycastle.openssl.PEMReader
类中。此类仅在完整的Bouncycastle提供程序库中可用,而在J2ME版本中不可用。你只对RSA密钥感兴趣吗?