— このツールについて
AES(Advanced Encryption Standard)は、TLSからディスク暗号化まであらゆる場面で使われている対称鍵暗号です。テキストを暗号化するパスフレーズと同じパスフレーズで復号も行います。このツールはPBKDF2(100,000回の反復、SHA-256)でパスフレーズからAES鍵を導出し、メッセージごとにランダムなソルトとIVを生成して暗号文の先頭に付加します。そのためBase64出力は完全に自己記述的になり、同じパスフレーズで貼り戻すだけで平文を復元できます。
AES-GCMは改ざんを検出する認証付きモードで、推奨されるデフォルトです。AES-CBCは、それを前提とするシステムとの相互運用性のために提供しています。すべての暗号処理はWeb Crypto API経由でローカルに実行されるため、テキストとパスフレーズがページの外に出ることはありません。秘密のメモを共有したり暗号化フローをテストしたりするのに便利ですが、重要度の高い秘密情報を扱うエンドツーエンド暗号化ツールの代替にはなりません。
暗号化と復号はすべてブラウザ内で実行され、何もアップロードされません。
よくある質問
出力を復号するには何が必要ですか?
Base64暗号文に加えて、暗号化に使用した正確なパスフレーズ、暗号モード、鍵長が必要です。ランダムなソルトとIVは出力に埋め込まれているため、別途記録しておく必要はありません。
AES-GCMとAES-CBCのどちらを使うべきですか?
AES-GCMを優先してください。認証付きのため、暗号文が改ざんされていると復号がはっきりと失敗します。AES-CBCは、それを明示的に要求するシステムと相互運用する必要がある場合にのみ使用してください。
なぜ同じテキストでも毎回異なる暗号文になるのですか?
暗号化のたびに新しいランダムなソルトとIVが生成されます。これは正しく意図された動作であり、同一の平文が同一の暗号文を生成しないことを保証します。両方が暗号文とともに保存されるため、復号は問題なく行えます。