添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
温柔的大葱  ·  Xamarin Forms: How to ...·  1 月前    · 
健壮的回锅肉  ·  Faster Startup Times ...·  4 周前    · 
精明的豆腐  ·  Auto launching ...·  3 周前    · 
气势凌人的伤疤  ·  Xamarin Forms app ...·  3 周前    · 
腼腆的炒粉  ·  代理服务器之 ...·  5 月前    · 
孤独的领结  ·  财华有你 | 王海馨: ...·  7 月前    · 
爱逃课的墨镜  ·  mktime problems when ...·  7 月前    · 

Bad X509Certificate2..ctor in .NET 6 on Android #71603

Closed

Description

Description

System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(Byte[] rawData, String password, X509KeyStorageFlags keyStorageFlags)

throws an exception on net6.0-android, but works fine on Xamarin.Android

Reproduction Steps

There is a minimum reproduction example on this public repository

https://github.com/AigioL/android-samples-certificates/blob/074341cd08b16ef0edd18965d72359fb613f2566/AndroidApp1/CertificateHelper.cs#L140-L154

Expected behavior

No exception

Actual behavior

System.Security.Cryptography.CryptographicException: The certificate data cannot be read with the provided password, the password may be incorrect.
 ---> System.PlatformNotSupportedException: Algorithm 'RC2' is not supported on this platform.
   at System.Security.Cryptography.PasswordBasedEncryption.CreateRC2()
   at System.Security.Cryptography.PasswordBasedEncryption.Decrypt(AlgorithmIdentifierAsn& algorithmIdentifier, ReadOnlySpan`1 password, ReadOnlySpan`1 passwordBytes, ReadOnlySpan`1 encryptedData, Span`1 destination)
   at Internal.Cryptography.Pal.UnixPkcs12Reader.DecryptSafeContents(ReadOnlySpan`1 password, ContentInfoAsn& safeContentsAsn)
   at Internal.Cryptography.Pal.UnixPkcs12Reader.DecryptAndProcessSafeContents(ReadOnlySpan`1 password, CertBagAsn[]& certBags, AttributeAsn[][]& certBagAttrs, Int32& certBagIdx, SafeBagAsn[]& keyBags, Int32& keyBagIdx)
   at Internal.Cryptography.Pal.UnixPkcs12Reader.Decrypt(ReadOnlySpan`1 password, ReadOnlyMemory`1 authSafeContents)
   at Internal.Cryptography.Pal.UnixPkcs12Reader.VerifyAndDecrypt(ReadOnlySpan`1 password, ReadOnlyMemory`1 authSafeContents)
   at Internal.Cryptography.Pal.UnixPkcs12Reader.Decrypt(SafePasswordHandle password, Boolean ephemeralSpecified)
   --- End of inner exception stack trace ---
   at Internal.Cryptography.Pal.UnixPkcs12Reader.Decrypt(SafePasswordHandle password, Boolean ephemeralSpecified)
   at Internal.Cryptography.Pal.AndroidCertificatePal.ReadPkcs12(ReadOnlySpan`1 rawData, SafePasswordHandle password, Boolean ephemeralSpecified)
   at Internal.Cryptography.Pal.AndroidCertificatePal.FromBlob(ReadOnlySpan`1 rawData, SafePasswordHandle password, X509KeyStorageFlags keyStorageFlags)
   at Internal.Cryptography.Pal.CertificatePal.FromBlob(ReadOnlySpan`1 rawData, SafePasswordHandle password, X509KeyStorageFlags keyStorageFlags)
   at System.Security.Cryptography.X509Certificates.X509Certificate..ctor(Byte[] rawData, String password, X509KeyStorageFlags keyStorageFlags)
   at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(Byte[] rawData, String password, X509KeyStorageFlags keyStorageFlags)
   at CertificateHelper.WithPrivateKey(X509Certificate certificate, AsymmetricKeyParameter privateKey) in AndroidApp1\CertificateHelper.cs:line 128
   at CertificateHelper.GenerateBySelfPfx(IEnumerable`1 domains, Int32 keySizeBits, DateTime validFrom, DateTime validTo, String caPfxPath, String password) in AndroidApp1\CertificateHelper.cs:line 45
   at CertificateHelper.CreateRootCertificate(String pfxFilePath, String rootCertificateName) inAndroidApp1\CertificateHelper.cs:line 29
   at AndroidApp1.MainActivity.OnCreate(Bundle savedInstanceState) in AndroidApp1\MainActivity.cs:line 16

Regression?

Work on Xamarin.Android 12

Known Workarounds

No response

Configuration

Portable.BouncyCastle 1.9.0
Visual Studio 17.2.5
Xamarin.Android SDK 12.3.3.3 (d17-2/4e061b7)
Xamarin.Android Reference Assemblies and MSBuild support.
Mono: dffa5ab
Java.Interop: xamarin/java.interop/d17-2@9760f0a9
ProGuard: Guardsquare/proguard@912d149
SQLite: xamarin/sqlite@7b1e016
Xamarin.Android Tools: xamarin/xamarin-android-tools/d17-2@fc3c2ac

Other information

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions