19 ポイント 投稿者 GN⁺ 2024-08-06 | 2件のコメント | WhatsAppで共有
  • シンプルでモダンかつ安全なファイル暗号化ツール、フォーマット、そしてGoライブラリ
  • 小さく明示的な鍵、設定オプションなし、UNIXスタイルの組み合わせやすさが特徴
  • YubiKeys のようなハードウェアPIVトークンもプラグイン経由でサポート
    • そのほかにもさまざまなプラグインあり: Apple Secure Enclave、TPM、FIDO、SSS、Trezor Hardware Wallet など
  • さまざまな言語で実装されたバージョン: Go、Rust、TypeScript、Java、WASM、Elixir、Dart など
  • Mac、Linux、FreeBSD、Windows向けバイナリを提供
  • フォーマットは公開されている age-encryption.org/v1

インストール方法

  • Homebrew (macOS または Linux): brew install age
  • MacPorts: port install age
  • Alpine Linux v3.15+: apk add age
  • Arch Linux: pacman -S age
  • Debian 12+ (Bookworm): apt install age
  • Debian 11 (Bullseye): apt install age/bullseye-backports(backports の有効化が必要)
  • Fedora 33+: dnf install age
  • Gentoo Linux: emerge app-crypt/age
  • NixOS / Nix: nix-env -i age
  • openSUSE Tumbleweed: zypper install age
  • Ubuntu 22.04+: apt install age
  • Void Linux: xbps-install age
  • FreeBSD: pkg install age (security/age)
  • OpenBSD 6.7+: pkg_add age (security/age)
  • Chocolatey (Windows): choco install age.portable
  • Scoop (Windows): scoop bucket add extras && scoop install age
  • pkgx: pkgx install age
  • ビルド済みバイナリを提供

使い方

$ age-keygen -o key.txt  
Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p  
$ tar cvz ~/data | age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p > data.tar.gz.age  
$ age --decrypt -i key.txt data.tar.gz.age > data.tar.gz  

GN⁺のまとめ

  • age はシンプルでモダンなファイル暗号化ツールで、明示的な鍵と設定オプションがない点が特徴
  • さまざまなオペレーティングシステムで簡単にインストールでき、複数の受信者と暗号文をサポート
  • SSH鍵やGitHubユーザー鍵を使った暗号化も可能で便利
  • 暗号化ファイルの安全性と透明性を保証するために Sigsum 証明を提供
  • 類似機能を持つツールとしては GnuPG と OpenSSL がある

2件のコメント

 
seunggi 2024-08-07

署名

暗号化

その他

  • SOPS : シークレット管理
  • dotenvx : dot env の暗号化/復号
  • GnuPG : 署名 + 暗号化/復号 + ...
  • OpenSSL: 署名 + 暗号化/復号 + ...
 
GN⁺ 2024-08-06
Hacker Newsのコメント
  • AgeがUnixシステムで標準になってほしい

    • GPG/PGPよりも、Unix哲学に従うツールがもっと使われてほしい
    • 新しい標準ツールはめったに現れない
    • jqが最近では最も近い例だが、プリインストールされる標準ではない
  • Ageの作者です

    • Ageプロジェクトは自然発生的に成長してきた
    • みんながAgeで作ったものを見るのはいつも楽しい
    • 質問に答える準備ができている
    • 以前の議論へのリンクを提供
    • Ageエコシステムのプロジェクト一覧、フォーマット仕様、Goライブラリのドキュメント、CLIマニュアルページ、大規模なテストスイート、Rust実装、TypeScript実装、YubiKeyプラグイン、プラグインプロトコル仕様、Windows GUI、認証プロパティの議論、プラグインアーキテクチャの議論、ポスト量子プラグインの議論、Ageを使うパスワードストアのフォークなど、関連リソースを提供
  • AgeとRust実装のRage、agenix、age.elを使うことで、セルフホスティングのデプロイと管理がとても簡単になった

    • NixOSの利便性と組み合わせることでセルフホスティングが可能になる
    • 新しいサーバー設定に対する不安や、時間・機会の損失がセルフホスティングの妨げになっていた
    • Ageは素晴らしい
    • Resticバックアップツールの分析が、バックアップソリューションの設定に役立った
  • ResticやBorgのような専用バックアップツールもあるが、シンプルに保ちたい

    • Ageでファイルを暗号化したあと、信頼できないクラウドストレージにアップロードしても大丈夫かと質問
    • tar > age > cloud方式を使用
    • Minisignで署名するのがよいかと質問
    • tar > age > minisign > cloud方式を提案
  • ポスト量子版や、同じ作者によるプラグインがいつ出るのか質問

  • Ageの発音は[aɡe̞]で、GIFのように発音する

  • Ageは自分の役割をうまく果たすが、完全性/真正性の確認がないため、Signifyのようなツールと一緒に使うのがよい

    • Signifyへのリンクを提供
  • AgeはPGP/GPGよりはるかに優れた体験を提供する

    • オプションと引数の扱いが直感的
    • 暗号化プロセスについて、よりよく理解できる
    • YubikeyとPassageの設定が簡単だった