3
ユーザーがAndroid Nで自分のアプリケーションを実行するとクラッシュしました。Android NのGoogle廃止暗号プロバイダを知っていますが、古い暗号化データを移行するにはAndroid Nで廃止されたセキュリティ「Crypto」プロバイダN
あなたは私のためにその作業罰金のSecureRandomのための "暗号化" の交換このプロバイダを使用することができますユーザーがAndroid Nで自分のアプリケーションを実行するとクラッシュしました。Android NのGoogle廃止暗号プロバイダを知っていますが、古い暗号化データを移行するにはAndroid Nで廃止されたセキュリティ「Crypto」プロバイダN
あなたは私のためにその作業罰金のSecureRandomのための "暗号化" の交換このプロバイダを使用することができます:
使用、
SecureRandom sr = SecureRandom.getInstance("SHA1PRNG", new CryptoProvider());
代わりに、
SecureRandom sr = SecureRandom.getInstance("SHA1PRNG","Crypto");
とあなたのCryptoProviderクラスのような以下のように、
import java.security.Provider;
/**
* Implementation of Provider for SecureRandom. The implementation supports the
* "SHA1PRNG" algorithm described in JavaTM Cryptography Architecture, API
* Specification & Reference
*/
public final class CryptoProvider extends Provider {
/**
* Creates a Provider and puts parameters
*/
public CryptoProvider() {
super("Crypto", 1.0, "HARMONY (SHA1 digest; SecureRandom; SHA1withDSA signature)");
put("SecureRandom.SHA1PRNG",
"org.apache.harmony.security.provider.crypto.SHA1PRNG_SecureRandomImpl");
put("SecureRandom.SHA1PRNG ImplementedIn", "Software");
}
}
ありがとう、これは魅力のように動作します。簡単に説明できますか? – Neo
それは働いた!実際に推奨される方法に進む前に、少なくともこれがクイックフィックスになる可能性があります。 – Mangesh