パスワードでテキストを暗号化・復号
パスワードでテキストを暗号化(PBKDF2-SHA256 + AES-256-GCM)して 1 つの Base64 文字列にし、復号もできます。誤ったパスワードや改ざんを検出します。
このツールは、メッセージをパスワードで施錠し、メール、メモ、チャットに貼り付けても他の人に読まれないようにします。ブラウザーの Web Crypto API を使い、パスワードを PBKDF2-SHA256(600,000 ラウンド)で引き伸ばして 256 ビットの鍵を作り、テキストを改ざんも検出できる AES-256-GCM で暗号化します。結果は、同じパスワードでしか開けない 1 つの Base64 文字列です。何もアップロードされません。
使い方
- 暗号化を選び、テキストを入力または貼り付け、強力なパスワードを入力します。
- ボタンを押し、Base64 の結果をすべてコピーします。
- 結果を送り、パスワードは別の経路で共有します。
- 読むときは復号を選び、Base64 を貼り付けて同じパスワードを入力します。
計算式
key = PBKDF2-HMAC-SHA256(password, salt, 600,000, 32 bytes); output = Base64(0x01 ‖ salt[16] ‖ IV[12] ‖ AES-256-GCM(key, IV, text) ‖ tag[16])
ソルトと IV はメッセージごとにランダムなので、同じテキストでも毎回違う暗号文になります。16 バイトの GCM タグにより、パスワードが違う場合や出力の 1 文字でも変更された場合は、復号がはっきり失敗します。
計算例
43 バイトの文 "今夜7時に北口で会いましょう。" を暗号化すると 1 + 16 + 12 + 43 + 16 = 88 バイトになり、Base64 では 120 文字で表されます。"correct horse battery staple" で復号すると文が戻り、1 文字違うパスワードでは「復号に失敗しました」となります。
別の環境で出力を開く
形式は単純で公開されているため、どの AES-GCM ライブラリでも読み取れます。Python の cryptography パッケージでは、Base64 をデコードして salt = data[1:17]、iv = data[17:29] を取り、PBKDF2HMAC(SHA256(), 32, salt, 600000) で鍵を導出して、AESGCM(key).decrypt(iv, data[29:], None) を呼び出します。
よくある質問
パスワードを忘れても、テキストを復元してもらえますか?
いいえ。裏口はなく、サーバーにコピーもありません。パスワードがなければテキストは施錠されたままです。推測を防ぐ唯一の手段は、長くて珍しいパスフレーズです。
なぜ PBKDF2 を 600,000 ラウンドにするのですか?
パスワードを推測する側は、各ラウンドをそのまま繰り返さなければならないため、オフライン攻撃が遅くなります。PBKDF2-HMAC-SHA256 の 600,000 ラウンドは、OWASP がこの関数に推奨する値で、最新のブラウザーなら 1 秒もかかりません。
AES ツールとはどう違いますか?
AES 暗号化ツールは、開発者向けにすべてのモード、鍵、IV を公開しています。このページは安全な選択を 1 つ代わりに行い、パスワード以外に必要なものをすべて 1 つの文字列にまとめます。
出典
最終更新:
この入力内容のページアドレス: https://kakao.mobile/ja/tools/encrypt-decrypt-tool/
このツールを引用する
kakaoCalc. (2026, November 8). パスワードでテキストを暗号化・復号. https://kakao.mobile/ja/tools/encrypt-decrypt-tool/
“パスワードでテキストを暗号化・復号.” kakaoCalc, 8 Nov. 2026, kakao.mobile/ja/tools/encrypt-decrypt-tool/.