Содержание

Шифруем файлы при помощи age и публичных ключей

Если у вас есть публичный ключ получателя в формате id_ed25519 (Ed25519), то для шифрования файлов лучше использовать age — современный, простой и безопасный инструмент. Ed25519 напрямую не поддерживается OpenSSL для шифрования, но age отлично работает с такими ключами.

Установка age

Ubuntu/Debian

sudo apt-get install age

macOS

brew install age

Windows (choco)

choco install age

Или скачайте бинарный файл с GitHub: https://github.com/FiloSottile/age/releases

Шифрование/Расшифровка файла ключом Ed25519

Зашифровать исходный файл secret.txt

age -R id_ed25519.pub -o secret.txt.age secret.txt

Расшифровка файла приватным ключом зашифрованный файл secret.txt.age

age -d -i ~/.ssh/id_ed25519 -o decrypted.txt secret.txt.age

Публичный ключ из файла id_ed25519.pub

age -r "ssh-ed25519 AAAA..." -o file.txt.age file.txt

Или если ключ в файле

age -R ~/.ssh/id_ed25519.pub -o file.txt.age file.txt

Извлечь публичный ключ в нужном формате (если нужно)

ssh-keygen -y -f ~/.ssh/id_ed25519 > id_ed25519.pub