Sdílet prostřednictvím


Rozhraní System.Security.Cryptography API nejsou v Blazor WebAssembly podporována.

System.Security.Cryptography Rozhraní API při spuštění v prohlížeči vyvolává PlatformNotSupportedException chybu za běhu.

Změna popisu

V předchozích verzích .NET není většina System.Security.Cryptography rozhraní API dostupná pro aplikace Blazor WebAssembly. Od verze .NET 5 cílí aplikace Blazor WebAssembly na celou plochu rozhraní API .NET 5, ale ne všechna rozhraní API .NET 5 se podporují kvůli omezením sandboxu prohlížeče. V .NET 5 a novějších verzích vyvolá nepodporovaná System.Security.Cryptography rozhraní API PlatformNotSupportedException při spuštění na WebAssembly.

Tip

Analyzátor kompatibility platformy označí všechna volání ovlivněných rozhraní API při vytváření projektu, který podporuje platformu prohlížeče. Tento analyzátor běží ve výchozím nastavení v aplikacích .NET 5 a novějších.

Důvod změny

Microsoft nemůže odeslat OpenSSL jako závislost v konfiguraci Blazor WebAssembly. Pokusili jsme se to obejít pokusem o integraci s rozhraním API prohlížeče SubtleCrypto . Bohužel to vyžadovalo významné změny rozhraní API, které se příliš obtížně integrují.

Zavedená verze

5,0

V tuto chvíli nejsou k dispozici žádná vhodná alternativní řešení.

Ovlivněná rozhraní API

Všechna System.Security.Cryptography rozhraní API s výjimkou následujících:

  • System.Security.Cryptography.RandomNumberGenerator
  • System.Security.Cryptography.IncrementalHash
  • System.Security.Cryptography.SHA1
  • System.Security.Cryptography.SHA256
  • System.Security.Cryptography.SHA384
  • System.Security.Cryptography.SHA512
  • System.Security.Cryptography.SHA1Managed
  • System.Security.Cryptography.SHA256Managed
  • System.Security.Cryptography.SHA384Managed
  • System.Security.Cryptography.SHA512Managed