Providers Namespace

Namespace: WvdS.System.Security.Cryptography.Providers

Contains crypto providers for different runtime environments.


Interfaces

Interface Description
ICryptoProvider Defines the interface for crypto backends

Classes

Class Description
CryptoProviderFactory Factory for obtaining platform-specific provider
NativeCryptoProvider Provider for desktop/server (P/Invoke to OpenSSL)
WasmCryptoProvider Provider for Blazor WebAssembly (JavaScript Interop)

Architecture

+-------------------------------------+
|         ICryptoProvider             |
|  (GenerateMlDsaKeyPair, Sign, ...)  |
+---------------+---------------------+
                |
        +-------+-------+
        v               v
+---------------+ +---------------+
|   Native      | |    WASM       |
|   Provider    | |   Provider    |
|  (P/Invoke)   | |  (JS Interop) |
+---------------+ +---------------+
        |               |
        v               v
   OpenSSL 3.6     openssl.wasm

Remarks

The CryptoProviderFactory automatically detects the runtime environment:

  • Desktop/Server/Blazor Server: NativeCryptoProvider
  • Blazor WebAssembly: WasmCryptoProvider
// Automatic provider selection
var provider = CryptoProviderFactory.GetProvider();
await provider.InitializeAsync();

See Also


Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional

Zuletzt geändert: on 2026/01/29 at 11:16 PM