テキストを暗号化
パスフレーズでメッセージを保護します。デバイスの外に出ない、本物のAES-256を使います。
- ブラウザ上で動作します — テキストはどこにも送信されません
- 登録不要、利用回数の上限なし、何度でも無料で使えます
仕組み
Webサイト上で何かを暗号化するのは、通常、本末転倒です。平文と、多くの場合パスフレーズをサーバーに渡し、その後に起こることを信じるしかないからです。これはページ内で、ブラウザ自身の暗号機能を使って動作するため、どちらもデバイスの外に出ません。
使用している技術
ブラウザ内蔵のWeb Crypto実装によるGCMモードのAES-256です。HTTPSを守るのと同じプリミティブで、自作の暗号ではありません。鍵は、パスフレーズから、250,000回の反復のPBKDF2-SHA256で導出されるため、攻撃者がパスフレーズを推測するのに時間がかかります。メッセージごとに新しいランダムなソルトとナンスが生成されるため、同じテキストを2回暗号化しても、異なる出力になります。
GCMは、隠すだけでなく検証もします
GCMは認証付きモードです。暗号化されたブロックのたった1文字でも改変されていれば、復号は失敗します。つまり、メッセージが秘密であるだけでなく、無傷であることもわかります。
パスフレーズがすべてです
復元手段も、リセットも、バックドアもありません。パスフレーズを失うと、メッセージは永久に失われます。これは、ここでの制限ではなく、本物の暗号化の性質です。全体の強度はパスフレーズにかかっています。短くて複雑なものより、関連のない複数の単語を並べた長いもののほうが、はるかに優れています。
用途と、そうでないもの
信頼できない経路でメモを送る場合や、読めないようにしておきたいものをファイルに保管する場合に向いています。メッセージングシステムではありません。パスフレーズは、別の方法で受取人に届ける必要があり、その方法が不十分だと、すべてが台無しになります。
テキストの暗号化に関する質問
これは本物の暗号化ですか?
はい。ブラウザのWeb Crypto APIによるAES-256-GCMで、鍵はPBKDF2で導出されます。おもちゃの暗号ではありません。
パスフレーズを忘れた場合、メッセージを復元してもらえますか?
いいえ。復元手段もバックドアもありません。だからこそ、暗号化といえるのです。
メッセージやパスフレーズは、どこかに送信されますか?
いいえ。どちらもページ内にとどまります。何も送信も保存もされません。
同じテキストでも、毎回違う暗号文になるのはなぜですか?
毎回、新しいランダムなソルトとナンスが使われるためです。これは意図的で、正しい動作です。