Class MessageEncryption
- Namespace
- UsluzionicaServer.Infrastructure
- Assembly
- UsluzionicaServer.dll
Simetrična AES-256-CBC enkripcija teksta poruka.
Svaka poruka se enkriptuje sa random IV (Initialization Vector) koji se dodaje ispred ciphertexta i sve zajedno se čuva kao Base64 string. Format u bazi: Base64( [16 bajta IV] + [N bajta ciphertext] )
Ovo je "encryption at rest" — štiti sadržaj poruka ako neko dobije direktan pristup SQL bazi. Server i dalje može da čita poruke (nije E2E).
public sealed class MessageEncryption
- Inheritance
-
MessageEncryption
- Inherited Members
Constructors
Methods
- Decrypt(string)
Dekriptuje Base64 string iz baze i vraća originalni tekst poruke.
- Encrypt(string)
Enkriptuje plaintext i vraća Base64 string spreman za čuvanje u bazi. Svaki poziv generiše novi random IV — isti tekst = drugačiji ciphertext.
- SafeDecrypt(string)
Pokušava dekriptovanje — vraća placeholder ako nešto pođe po krivu (npr. stara poruka sa drugačijim ključem). Korisno za migracije.