我在程序中使用了以下代码将字节转换为公钥
Security.addProvider(new BouncyCastleProvider());
X509EncodedKeySpec x509keyspec=new X509EncodedKeySpec(b);
KeyFactory keyfact=KeyFactory.getInstance("RSA","BC");
Key pubkey=keyfact.generatePublic(x509keyspec);
我已经导入了"import org.bouncycastle.jce.provider.BouncyCastleProvider;",.
我已经将Bouncycastle.jar文件添加到我的jre7/lib/ext文件夹中,并通过添加以下行security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider
对javasecurity文件进行了更改当我编译代码时,我得到以下错误
Reverse.java:14: error: cannot find symbol
import java.security.spec.x509EncodedKeySpecs;
^
symbol: class x509EncodedKeySpecs
location: package java.security.spec
Reverse.java:16: error: package org.bouncycastle.jce.provider does not exist
import org.bouncycastle.jce.provider.BouncyCastleProvider;
Reverse.java:49: error: cannot find symbol
Security.addProvider(new BouncyCastleProvider());
^
symbol: class BouncyCastleProvider
location: class Reverse
两个问题:
- 该类的名称为
X509EncodedKeySpec
,而不是x509EncodedKeySpecs
。修复您的import
语句 - 在编译和运行代码时,请确保BouncyCastle JAR位于类路径上