Má smysl použít pro symetrické šifrování externí nástroj (ať už je to age, mcrypt, ccrypt, nebo cokoli jiného), když můžu použít přímo Libre/OpenSSL nebo OpenPGP ? Tj. proč použít age, když můžu použít standardní nástroje (které má většina uživatelů nainstalované jako závislosti) a udělat něco jako tohle:
gpg --symmetric --cipher-algo aes256 SOUBOR
nebo:
openssl enc -aes-256-cbc -salt -in SOUBOR -out VYSTUP
???
openssl enc
mimo jine nepodporuje modernejsi AEAD algoritmy a CBC mod precijen ma sve mouchy, ze? ;-) ChaCha20-Poly1305 (pouzity u age) je z rodiny AEAD algoritmu.
Tebou uvedené příklady šifrují symetricky pomocí hesla/klíče, které si musíš s protistranou nějakým bezpečným způsobem vyměnit. Popisovaný nástroj šifruje asymetricky, takže si klíče můžeš vyměňovat přes odposlouchávaný kanál (jen důvěryhodný - ne MITM) a jeden klíč můžeš distribuovat mnoha lidem.
gpg samozřejmě má i (dokonce hlavní) asymetrický mód, ale oproti popisovanému nástroji jsou klíče dlouhé a jejich správa je komplikovaná (ano, je to cena za to, že správa klíčů gpg má mnohem víc funkcí).
Pokud vám ve vašem použití funguje gpg a openssl, držte se ho!
Pro náš use case byla výhoda age pohodlná integrace s dalšími nástroji. Dřív jsme používali gpg, ale bylo to ve větším málo pohodlné. Uzavřít gpg do CI/CD pipeline sice jde, ale bylo to pracné a náchylné na chyby. Tady je secret prostě jeden krátký řetězec (protože eliptické křivky) a není potřeba řešit keystore.
abych na tom měl rozumné rps, tak to jsou milionové částky za kus, zpravidla se nasazují dvojmo. Řada usb HSM zvládají jednotky operací za vteřinu, to i na dnešní malé deploymenty může být velká brzda.
Dnes není běžné, aby HSM měli všeobecně nasazení banky a kritické infrastruktury, často se to používá max. v PKI ke krmení CA.
K vláknu, dnes se začíná více spolehát na wrapper secrets, kdy tajné hodnoty nemá k dispozici ani samotný CI/CD a nestává se kritickým systémem v bezpečnosti, ale až samotná instance si vyžádá dešifrovaná data do secret služby, k nim dostane jen token, ideálně s nízkou životností a jednorázovým použitím, umí třeba zmíněný Hashicorp Vault. Je to asi dobrý kompromis mezi náklady na implementaci, složitostí a poskytnutou úrovní bezpečnosti.
Milionove castky to nejsou, delal jsem nekolik implementaci a vim kolik treba za kolik byvale safenet hsm nebo thales hsm byli. Rychlost samozrejme zavisi od toho jak hsm implementujete, sifrovat vsechna data pres hsm je samozrejme blbost a dela se to trochu jinak ale to zachazime do detailu. Nejvetsi instalace x hsm na ktere jsem pracoval obsluhuje pres 100mil zarizeni a ta implementace vyuziva hsm ktere nejsou nijak zavratne rychle. NDA. Hashicorp je urcite lepsi nez mit secrets nekde v textaku a pokud se spravne implementuje tak je relativne bezpecnou a hlavne levnou alternativou k hsm.
list price HW asi není ta konečná částka, co mě zajímá při pořízení, co? On je také rozdíl, jestli myslíš ceny v letošním roce nebo před 7 lety. Pořád se bavíme alespoň o stokách a víc tisíc plus nějaká bižutérie, instalace, provoz, licence, lidi atd.
Ano, pak třeba v HSM máš máster klíče, z nich generuješ krátké certy a ty drzíš v KMS či v paměti. Takže tě rychlost nebrzdí, ale zase nemůžeš říct, že klíče ti drží HSM.
Právě díky Thalesu a třeba Luně je tenhle obor polomrtví, ač je šifrování na vzestupu, jejich licenční, cenová a obchodní politika ve spojení se spoustou patentů to celé strašně brzdí. Hashicorp Vault je něco, co mě osobně extrémně překvapilo, byl jsem v počátku skeptický, ale udělali strašně moc práce.