には、このようなアルゴリズムを、私はこのような何かを行うことによってするKeyGeneratorを使用してAESキーを生成するために、私のJavaプロジェクトではBouncyCastleを使用しようとしています:するKeyGeneratorがjava.security.NoSuchAlgorithmExceptionを返さない:はBouncyCastle
KeyGenerator gen = KeyGenerator.getInstance("AES", BouncyCastleProvider.PROVIDER_NAME);
しかし、これは戻って保持します:
java.security.NoSuchAlgorithmException: no such algorithm: AES for provider BC
私は間違いなくとして、私は私のjava.securityファイルを持っていることを確認しました:
security.provider.1=sun.security.provider.Sun
security.provider.2=org.bouncycastle.jce.provider.BouncyCastleProvider
security.provider.3=sun.security.rsa.SunRsaSign
security.provider.4=sun.security.ec.SunEC
security.provider.5=com.sun.net.ssl.internal.ssl.Provider
security.provider.6=com.sun.crypto.provider.SunJCE
security.provider.7=sun.security.jgss.SunProvider
security.provider.8=com.sun.security.sasl.Provider
security.provider.9=org.jcp.xml.dsig.internal.dom.XMLDSigRI
security.provider.10=sun.security.smartcardio.SunPCSC
security.provider.11=apple.security.AppleProvider
とbcprov-jdk15on-1.47.jarは私のコードでは/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home/jre/lib/ext
の下で、私はまた、
を使用しました()をSecurity.getProvidersを使用して自分のコードを実行するときに、私はすべてのプロバイダーの一覧を表示しようとした場合は、私は以下を参照してください。
SUN
BC
SunRsaSign
SunEC
SunJSSE
SunJCE
SunJGSS
SunSASL
XMLDSig
SunPCSC
Apple
ので、この時点で、私は私が見逃しているかもしれない他に何かわかりません。
助けてください、
これはJCEの無制限強度管轄権ポリシーと関係があると思いますか?あなたのディレクトリに無制限の強度のジャーを持っていますか? http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html – neal
こんにちは!はい、私は実際にJava 7をレガシー・レポのために使用しています。http://www.oracle.com/technetwork/java/javase/downloads/jce-7-ja/から、US_export_policy.jarおよびlocal_policy.jarを抽出しました。ダウンロード-432124.htmlを開き、/Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home/jre/lib/securityに入れてください – user1805458
私は他のことを忘れましたか?ありがとう – user1805458