Filippo Valsorda, krüptograaf, kes vastutab Google'is Go programmeerimiskeele turvalisuse eest, avaldas uue andmete krüptimise tööriista Age (Tõeliselt Hea Krüptimine) esimese stabiilse väljaande. Tööriist pakub lihtsat käsurealiidest failide krüptimiseks simmeetriliste (parooli põhjal) ja asümmeetriliste (avatud võtmete põhjal) krüptograafiliste algoritmidega. Projekti kood on kirjutatud Go keeles ja see levitatakse BSD litsentsi alusel. Kogud on ette valmistatud Linuxi, FreeBSD, macOS ja Windowsi jaoks.
Põhifunktsioonid on viidud raamatukogusse, mida saab kasutada tööriista pakutava funktsionaalsuse integreerimiseks oma programmidesse. Eraldi on rage projekti raames arendamisel alternatiivne rakendus sarnase tööriista ja raamatukogu jaoks, mis on kirjutatud Rust keeles. Krüptimiseks kasutatakse usaldusväärseid algoritme nagu HKDF (HMAC-põhine võtme tuletamise funktsioon), SHA-256, HMAC (Hash-põhine sõnumi autentimise kood), X25519, Scrypt ja ChaCha20-Poly1305 AEAD.
Из особенностей Age выделяется: возможность использования компактных 512-битных открытых ключей, легко переносимых через буфер обмена; простой и не перегруженный опциями интерфейс командной строки; отсутствие файлов конфигурации; возможность использования в скриптах и в комбинации с другими утилитами через выстраивание цепочки вызовов в UNIX-стиле. Поддерживается как генерация собственных компактных ключей, так и использование существующих ключей от SSH («ssh-ed25519», «ssh-rsa»), включая поддержку файлов Github.keys. $ age-keygen -o key.txt Public key: age1ql3z7hjy58pw3hyww5ayyfg7zqgvc7w3j2elw2zmrj2kg5sfn9bqmcac8p $ tar cvz ~/data | age -r age1ql3z7hjy58pw3hyww5ayyfg7zqgvc7w3j2elw2zmrj2kg5sfn9bqmcac8p > data.tar.gz.age $ age —decrypt -i key.txt data.tar.gz.age > data.tar.gz $ age -R ~/.ssh/id_ed25519.pub example.jpg > example.jpg.age $ age -d -i ~/.ssh/id_ed25519 example.jpg.age > example.jpg
On olemas failide krüptimise režiim mitme saaja jaoks, kus fail krüptitakse samaaegselt mitme avaliku võtme kasutamisega ja iga nimekirja saaja saab selle dekrüpteerida. Samuti on pakutud vahendeid failide simmeetriliseks krüptimiseks parooli põhjal ja failide kaitsmiseks privaatsete võtmete kaudu nende krüptimisega parooli abil. Kasulik omadus on see, et kui krüptimise ajal sisestada tühi parool, genereerib tööriist automaatselt usaldusväärse parooli. $ age -p secrets.txt > secrets.txt.age Sisestage parool (jätke tühi, et automaatselt genereerida turvaline): Kasutades automaatselt genereeritud parooli «release-response-step-brand-wrap-ankle-pair-unusual-sword-train». $ age -d secrets.txt.age > secrets.txt Sisestage parool: $ age-keygen | age -p > key.age Avalik võti: age1yhm4gftwfmrpz87tdslm530wrx6m79y9f2hdzt0lndjnehwj0bkqrjpyx5 Sisestage parool (jätke tühi, et automaatselt genereerida turvaline): Kasutades automaatselt genereeritud parooli «hip-roast-boring-snake-mention-east-wasp-honey-input-actress».
Tulevikuplaane on märkida, sealhulgas paroolide säilitamise taustsüsteemi loomine ja serverilt koostöös kasutatavad võtmed (PAKE), YubiKey võtmete tugi, kergesti meeldejäävate võtmete genereerimise võimalus sõnade kogumisena ning age-mount tööriista loomine krüptitud failide või arhiivide FS-i mountimiseks.
Allikas: opennet.ru
