AES暗号化 / 復号化
すべてブラウザ内で動きます。ファイルやデータが外部に送られることはありません。
このツールについて
このツールは、自分で決めたパスフレーズを使ってテキストをAES-256-GCMで暗号化します。パスフレーズはPBKDF2(SHA-256を60万回反復)とランダムなソルトによって暗号化キーに変換されるため、同じパスフレーズでも毎回異なるキーが生成されます。復号化モードに切り替え、同じパスフレーズで暗号文を貼り付ければ、元のテキストが復元されます。
入力したデータはどこかに送信されますか?
いいえ。処理はすべて、ブラウザに組み込まれたWeb Crypto API上でお使いの端末内だけで行われます。これはHTTPSやWebAuthnでも使われているのと同じ暗号エンジンです。パスフレーズを含め、入力した内容が外部のサーバーに触れることは一切ありません。そのため、チャットでこれから送ろうとしているパスワードやAPIキー、あるいは人に見られたくないメモなどにも、このツール自体には内容が渡らない前提で安心して使えます。
同じパスフレーズなのに、毎回出力が変わるのはなぜですか?
暗号化するたびに、ツールは新しいランダムなソルトと新しいランダムな初期化ベクトル(IV)を生成し、そのソルトとパスフレーズをPBKDF2にかけて一度限りの暗号化キーを導き出します。ソルトが毎回変わるので、同じテキストを同じパスフレーズで2回暗号化しても、まったく異なる結果になります。これは意図的な仕組みで、暗号文を2つ見比べても元のテキストが一致するかどうか分からないようにし、よく使われるパスフレーズを事前に総当たりしておくような攻撃も無効化します。
出力は、バージョン識別子・ソルト・IV・暗号文をひとつにまとめ、base64でエンコードした1本のテキストです。メールやチャット欄に貼り付けやすい形になっています。復号化に必要なのはパスフレーズだけで、ソルトやIVを別途控えておく必要はありません。ソルトやIVは秘密にする必要のある情報ではなく、一意でありさえすればよいものなので、暗号文と一緒に保存しておくのが標準的なやり方です。
パスフレーズを間違えたり、テキストが壊れたりするとどうなりますか?
復号化はあいまいな結果を返さず、はっきり失敗します。AES-GCMは暗号文に認証タグを含んでいるため、パスフレーズが間違っている、コピー中に暗号文が途中で切れた、1文字でも書き換わった、といった場合には、それらしく見える壊れたテキストを返すのではなく、復号化に失敗したことをツールが報告します。
パスワードやAPIキーを平文のままチャットやメールで送らずに共有したいとき、個人的なメモやバックアップファイルが誤って人目に触れても読めないようにしたいとき、信頼度の低いツールに貼り付ける前に機密性のある小さなデータを保護したいときなどに使われています。アルゴリズムの背景についてはNISTによるAES-GCMの仕様書、PBKDF2の反復回数についてはOWASPのパスワード保存ガイドラインを参照してください。