====== WvdS.System.Security.Cryptography.Encryption prostor imena ====== Sadrži klase za simetričko šifriranje s PQ derivacijom ključeva. ---- ===== Klase ===== ^ Klasa ^ Opis ^ | [[.:symmetricencryptionextensions|SymmetricEncryptionExtensions]] | AES-GCM šifriranje s PQ ključevima | | [[.:hybridencrypteddata|HybridEncryptedData]] | Kontejner za hibridno šifrirane podatke | | [[.:pqcrypto|PqCrypto]] | Pomoćni API za PQ šifriranje | ---- ===== Metode šifriranja ===== ^ Metoda ^ Opis ^ | EncryptWithPqKey | AES-GCM s PQ-deriviranim ključem | | EncryptHybrid | RSA-OAEP + ML-KEM hibridno | | EncryptEcdhPq | ECDH + ML-KEM hibridno | | EncryptAesGcm | Standardni AES-256-GCM | ---- ===== Format šifriranja ===== +---------------------------------------------+ | AES-GCM šifrirani podaci | +---------------------------------------------+ | [12 bajtova] Nonce (IV) | | [n bajtova] Šifrirani tekst | | [16 bajtova] Autentifikacijska oznaka | +---------------------------------------------+ ---- ===== Primjer ===== using WvdS.System.Security.Cryptography.Encryption; using WvdS.System.Security.Cryptography.KeyExchange; // Dijeljeni tajni ključ iz razmjene ključeva byte[] sharedSecret = session.SharedSecret; // Šifriranje byte[] plaintext = Encoding.UTF8.GetBytes("Tajna poruka"); byte[] encrypted = SymmetricEncryptionExtensions.EncryptWithPqKey( plaintext, sharedSecret); // Dešifriranje byte[] decrypted = SymmetricEncryptionExtensions.DecryptWithPqKey( encrypted, sharedSecret); ---- ===== Vidi također ===== * [[..:keyexchange:start|KeyExchange prostor imena]] * [[..:keyderivation:start|KeyDerivation prostor imena]] * [[..:..:..:api:start|API-pregled]] {{tag>namespace encryption aes-gcm}} ---- //Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//