/note/tech

第910回 GPGより簡単でZIPより安全。シンプルな暗号化ツール「age」を試す

ageはコマンドラインで簡単に使える暗号化ツールです。GitHubのREADMEによると「age is a simple, modern and secure file encryption tool, format, and Go library. It features small explicit keys, post-quantum support, no config options, and UNIX-style composability. (⁠意訳: ageはシンプルでモダンかつ安全なファイル暗号化ツールであり、暗号化ファイルのフォーマットであり、そしてGoライブラリでもあります。 短く明示的な鍵、ポスト量子暗号への対応、設定不要のシンプルな設計、そしてUnixライクのツールらしく、パイプなどで他のコマンドと組み合わせやすいことを特徴としています⁠)⁠」とのことです。

ageの最大の特徴は、暗号化ツールとしてのシンプルさです。GPGのようにキーリングや信頼度管理、キーサイン、鍵サーバーなどを含む大きな仕組みではなく、「⁠指定した相手の鍵でファイルを暗号化し、対応する秘密鍵で復号する」という用途に絞られています。そのため使い方が分かりやすく、スクリプトにも組み込みやすくなっています。

たとえばバックアップファイルを暗号化して、ファイルサーバーやオブジェクトストレージに保存するといった用途では、サーバー側には暗号化用の公開鍵だけを置き[1]、復号用の秘密鍵は別の安全な場所に保管できます。これによりバックアップ処理を自動化しつつ、サーバーや保存先から平文のデータが漏れるリスクを抑えられます。