====== Vmesnik ICryptoProvider ====== Definira vmesnik za post-kvantna kriptografska zaledja. ---- ===== Definicija ===== namespace WvdS.System.Security.Cryptography.Providers public interface ICryptoProvider ---- ===== Lastnosti ===== ^ Ime ^ Tip ^ Opis ^ | Name | string | Ime ponudnika (npr. "Native (P/Invoke)") | | IsAvailable | bool | True, če je ponudnik inicializiran in na voljo | ---- ===== Metode ===== ==== Inicializacija ==== ^ Ime ^ Opis ^ | InitializeAsync() | Asinhrono inicializira ponudnika | | GetOpenSslVersion() | Vrne različico OpenSSL | ==== ML-DSA (podpisi) ==== ^ Ime ^ Opis ^ | GenerateMlDsaKeyPairAsync(string) | Generira par ključev ML-DSA | | SignMlDsaAsync(byte[], byte[]) | Podpiše podatke z ML-DSA | | VerifyMlDsaAsync(byte[], byte[], byte[]) | Preveri podpis ML-DSA | ==== ML-KEM (izmenjava ključev) ==== ^ Ime ^ Opis ^ | GenerateMlKemKeyPairAsync(string) | Generira par ključev ML-KEM | | EncapsulateAsync(byte[]) | Enkapsulira skupno skrivnost | | DecapsulateAsync(byte[], byte[]) | Izvleče skupno skrivnost | ==== Certifikati ==== ^ Ime ^ Opis ^ | CreateEphemeralCertificateAsync(string, TimeSpan, byte[]) | Ustvari kratkoživljajoči PQ-certifikat | | SignCertificateAsync(byte[], byte[]) | Podpiše TBS-certifikat z ML-DSA | ---- ===== Opombe ===== Uporabite ''CryptoProviderFactory.GetProvider()'' namesto neposredne instanciacije. ---- ===== Implementacije ===== * [[.:nativecryptoprovider|NativeCryptoProvider]] - Namizje/Strežnik * [[.:wasmcryptoprovider|WasmCryptoProvider]] - Blazor WebAssembly ---- ===== Glejte tudi ===== * [[.:start|Imenski prostor Providers]] * [[..:cryptoconfig|Razred CryptoConfig]] {{tag>schnittstelle interface}} ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//