私は
AndroidKeyStore
に関するこの問題を解決しようとしています
。私のアプリは
Android
を取得していないようです
NONEwithRSA
のネイティブプロバイダー署名アルゴリズム。これはコード参照です:
Calendar startDate = Calendar.getInstance();
Calendar endDate = Calendar.getInstance();
endDate.add(Calendar.YEAR, 30);
KeyPairGeneratorSpec keyPairGeneratorSpec = new KeyPairGeneratorSpec.Builder(context)
.setAlias("aliasName")
.setSubject(new X500Principal("CN=aliasName"))
.setSerialNumber(BigInteger.TEN)
.setStartDate(startDate.getTime())
.setEndDate(endDate.getTime())
.build();
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA", "AndroidKeyStore");
keyPairGenerator.initialize(keyPairGeneratorSpec);
keyPairGenerator.generateKeyPair();
一度
generateKeyPair()
呼び出されると、次の例外スタックトレースを取得しました。
Caused by: java.security.SignatureException: java.security.ProviderException: No provider for NONEwithRSA
at com.google.android.gms.org.conscrypt.OpenSSLSignature.engineSign(:com.google.android.gms@12673012@12.6.73 (020408-194189626):6)
at java.security.Signature$SignatureImpl.engineSign(Signature.java:672)
at java.security.Signature.sign(Signature.java:381)
at com.android.org.bouncycastle.x509.X509Util.calculateSignature(X509Util.java:248)
at com.android.org.bouncycastle.x509.X509V3CertificateGenerator.generate(X509V3CertificateGenerator.java:434)
at com.android.org.bouncycastle.x509.X509V3CertificateGenerator.generate(X509V3CertificateGenerator.java:412)
at android.security.AndroidKeyPairGenerator.generateKeyPair(AndroidKeyPairGenerator.java:133)
... 26 more
Caused by: java.security.ProviderException: No provider for NONEwithRSA
at java.security.Signature$SignatureImpl.getSpi(Signature.java:734)
at java.security.Signature$SignatureImpl.engineInitSign(Signature.java:692)
at java.security.Signature.initSign(Signature.java:343)
at com.google.android.gms.org.conscrypt.CryptoUpcalls.rawSignDigestWithPrivateKey(:com.google.android.gms@12673012@12.6.73 (020408-194189626):11)
at com.google.android.gms.org.conscrypt.NativeCrypto.EVP_DigestSignFinal(Native Method)
at com.google.android.gms.org.conscrypt.OpenSSLSignature.engineSign(:com.google.android.gms@12673012@12.6.73 (020408-194189626):2)
... 32 more
私の問題に関連する解決策は見つかりません。誰もこれを解決する方法についてアイデアを持っていますか?
回答 1 件
関連した質問
- 電卓アプリでDecimalFormatのエラーを解決する方法
- GPIO制御にJavaクラスを使用して、AndroidOSで実行されるアプリケーションを作成する方法
- Android(Kotlin):オブザーバーのタイプの不一致
- Androidプロジェクトで使用されるJARからのロギング
- NordicThingy:52を使用したAndroid BluetoothGATTタイムアウト
- 応答を処理するKotlinRetrofit
- 作成中のスレッドがデーモンである場合に限り、Javaスレッドはデーモンですか?
- AlertDilogからMainActivtyにデータリターンを渡します
- RectFがCanvasの境界線から外れます
- (解決済み)デフォルトのandroid RecyclerView ViewHolder NPE shouldIgnore()
行を次のように置き換えることができます
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA", "AndroidKeyStore");
ログにNONEwithRSAのプロバイダーがないことを示しているため
更新しました
Androidkeystoreでキーペアを生成するための以下のコードを試すことができます。Androidバージョンは18より大きい必要があります