Първото стабилно издание на Age, утилита за криптиране на данни

Филиппо Валсорда (Filippo Valsorda), криптограф, който отговаря в Google за безопасността на езика за програмиране Go, публикува първото стабилно издание на новата утилита за криптиране на данни — Age (Actually Good Encryption). Утилитата предлага прост интерфейс на командния ред за криптиране на файлове, използваща симетрични (със парола) и асиметрични (със публични ключове) криптографски алгоритми. Кодът на проекта е написан на езика Go и се разпространява под лиценз BSD. Компилациите са подготвени за Linux, FreeBSD, macOS и Windows.

Основните функции са прехвърлени в библиотека, която може да се използва за интегриране на предоставяната от утилитата функционалност в собствените ви програми. Отделно в рамките на проекта rage се развива алтернативна реализация на аналогична утилита и библиотека, написана на езика Rust. За криптиране се използват проверени алгоритми HKDF (HMAC-based Extract-and-Expand Key Derivation Function), SHA-256, HMAC (Hash-based Message Authentication Code), X25519, Scrypt и 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

Има режим за криптиране на файл за няколко получатели, при който файлът се криптира едновременно с използването на няколко публични ключа и всеки от списъка на получателите може да го декриптира. Също така са предоставени средства за симетрично криптиране на файлове на базата на парола и защита на файлове с частни ключове чрез тяхното криптиране с парола. Полезна особеност е, че ако при криптиране въведете празна парола, утилитата автоматично ще генерира и предложи надеждна парола. $ age -p secrets.txt > secrets.txt.age Въведете паролата (оставете празно, за да се генерира сигурна): Използване на автоматично генерираната парола «release-response-step-brand-wrap-ankle-pair-unusual-sword-train». $ age -d secrets.txt.age > secrets.txt Въведете паролата: $ age-keygen | age -p > key.age Публичен ключ: age1yhm4gftwfmrpz87tdslm530wrx6m79y9f2hdzt0lndjnehwj0bkqrjpyx5 Въведете паролата (оставете празно, за да се генерира сигурна): Използване на автоматично генерираната парола «hip-roast-boring-snake-mention-east-wasp-honey-input-actress».

В плановете за бъдещето се отчита създаването на бекенд за съхранение на пароли и сървър за участието на споделени ключове (PAKE), поддръжка на ключове YubiKey, възможност за генериране на лесно запомнящи се ключове под формата на набор от думи и създаване на утилита age-mount за монтиране в файлова система на криптирани файлове или архиви.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster