xamarin / Essentials

Xamarin.Essentials is no longer supported. Migrate your apps to .NET MAUI, which includes Maui.Essentials.
https://aka.ms/xamarin-upgrade
Other
1.52k stars 505 forks source link

[Bug] Java.Lang.Exception: -49 #831

Closed gabry90 closed 10 months ago

gabry90 commented 5 years ago

Description

Crash detected on my appcenter dashboard

Steps to Reproduce

Expected Behavior

No Crash!

Actual Behavior

Crash when call SetAsync on SecureStorage

Basic Information

Screenshots

android.security.KeyStoreException: -49 android.security.KeyStore.getKeyStoreException(KeyStore.java:685) android.security.keystore.KeyStoreCryptoOperationChunkedStreamer.update(KeyStoreCryptoOperationChunkedStreamer.java:132) android.security.keystore.KeyStoreCryptoOperationChunkedStreamer.doFinal(KeyStoreCryptoOperationChunkedStreamer.java:217) android.security.keystore.AndroidKeyStoreCipherSpiBase.engineDoFinal(AndroidKeyStoreCipherSpiBase.java:506) javax.crypto.Cipher.doFinal(Cipher.java:2056) mono.android.animation.ValueAnimator_AnimatorUpdateListenerImplementor.n_onAnimationUpdate(Native Method) mono.android.animation.ValueAnimator_AnimatorUpdateListenerImplementor.onAnimationUpdate(ValueAnimator_AnimatorUpdateListenerImplementor.java:30) android.animation.ValueAnimator.animateValue(ValueAnimator.java:1346) android.animation.ValueAnimator.animateBasedOnTime(ValueAnimator.java:1258) android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1306) android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:146) android.animation.AnimationHandler.-wrap2(AnimationHandler.java) android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:54) android.view.Choreographer$CallbackRecord.run(Choreographer.java:905) android.view.Choreographer.doCallbacks(Choreographer.java:709) android.view.Choreographer.doFrame(Choreographer.java:641) android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:893) android.os.Handler.handleCallback(Handler.java:836) android.os.Handler.dispatchMessage(Handler.java:103) android.os.Looper.loop(Looper.java:208) android.app.ActivityThread.main(ActivityThread.java:6267) java.lang.reflect.Method.invoke(Native Method) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924)

JniEnvironment+InstanceMethods.CallNonvirtualObjectMethod (Java.Interop.JniObjectReference instance, Java.Interop.JniObjectReference type, Java.Interop.JniMethodInfo method, Java.Interop.JniArgumentValue* args) JniPeerMembers+JniInstanceMethods.InvokeNonvirtualObjectMethod (System.String encodedMember, Java.Interop.IJavaPeerable self, Java.Interop.JniArgumentValue* parameters) Cipher.DoFinal (System.Byte[] input) AndroidKeyStore.Encrypt (System.String data) SecureStorage.PlatformSetAsync (System.String key, System.String data) SecureStorage.SetAsync (System.String key, System.String value) CampaignService.SaveCampaign (System.Boolean incrementalLocalVersion) CampaignService.SetupCampaign () CampaignService.LoadCampaign (System.Collections.Generic.List1[T] campaign) MainScene.LoadData () MainScene.OnAppearing () AsyncMethodBuilderCore+<>c.b6_0 (System.Object state) SyncContext+<>c__DisplayClass2_0.b0 () Thread+RunnableImplementor.Run () IRunnableInvoker.n_Run (System.IntPtr jnienv, System.IntPtr native__this) (wrapper dynamic-method) Android.Runtime.DynamicMethodNameCounter.60(intptr,intptr) javax.crypto.IllegalBlockSizeException android.security.keystore.AndroidKeyStoreCipherSpiBase.engineDoFinal(AndroidKeyStoreCipherSpiBase.java:519) javax.crypto.Cipher.doFinal(Cipher.java:2056) mono.android.animation.ValueAnimator_AnimatorUpdateListenerImplementor.n_onAnimationUpdate(Native Method) mono.android.animation.ValueAnimator_AnimatorUpdateListenerImplementor.onAnimationUpdate(ValueAnimator_AnimatorUpdateListenerImplementor.java:30) android.animation.ValueAnimator.animateValue(ValueAnimator.java:1346) android.animation.ValueAnimator.animateBasedOnTime(ValueAnimator.java:1258) android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1306) android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:146) android.animation.AnimationHandler.-wrap2(AnimationHandler.java) android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:54) android.view.Choreographer$CallbackRecord.run(Choreographer.java:905) android.view.Choreographer.doCallbacks(Choreographer.java:709) android.view.Choreographer.doFrame(Choreographer.java:641) android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:893) android.os.Handler.handleCallback(Handler.java:836) android.os.Handler.dispatchMessage(Handler.java:103) android.os.Looper.loop(Looper.java:208) android.app.ActivityThread.main(ActivityThread.java:6267) java.lang.reflect.Method.invoke(Native Method) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924) Caused by: android.security.KeyStoreException: -49 android.security.KeyStore.getKeyStoreException(KeyStore.java:685) android.security.keystore.KeyStoreCryptoOperationChunkedStreamer.update(KeyStoreCryptoOperationChunkedStreamer.java:132) android.security.keystore.KeyStoreCryptoOperationChunkedStreamer.doFinal(KeyStoreCryptoOperationChunkedStreamer.java:217) android.security.keystore.AndroidKeyStoreCipherSpiBase.engineDoFinal(AndroidKeyStoreCipherSpiBase.java:506) ... 20 more`

Reproduction Link

davehump commented 4 years ago

@gabry90 Do you have some more details on this issue?

nuno-silva commented 3 years ago

FYI this is probably due to a broken KeyStore on the ZC520TL running Android 8.1. See e.g. google/tink#339.

jfversluis commented 10 months ago

No response for a looooooong time. Closing this one.