メインコンテンツにスキップ

AES暗号化/復号ツール

AES-256-CBCでテキストを暗号化または復号化します。すべてクライアント側で処理されるため、64文字の16進数キーを入力すれば、パディング、IV、base64エンコードはすべてツールが処理します。

入力

Exactly 64 hexadecimal characters (32 bytes), used directly as the AES-256 key — e.g. generate one with any password manager's "hex" export, or run `openssl rand -hex 32`. The IV is derived from this key automatically, so encrypting different messages with the same key reuses the same IV; use a fresh key per sensitive message for stronger guarantees.

出力

結果
役に立ちましたか?

ガイド

AES(Advanced Encryption Standard)は、ほぼどこでも使われている共通鍵暗号です — HTTPS、ディスク暗号化、パスワードマネージャー、VPNなど。高速で、よく研究され、正しく使えば破られていないからです。このツールは、CBCモードのAES-256で任意のテキストを暗号化・復号化します。すべてブラウザ内で完結します。

使い方

  1. 暗号化したいテキスト(復号化モードでは、復号化したいbase64暗号文)を 入力テキスト に貼り付けます。
  2. 秘密キーを入力します: ちょうど64桁の16進数(32バイト)で、そのままAES-256のキーとして使われます。コマンドラインで openssl rand -hex 32 を実行するか、32バイトの乱数をhexで生成できるツールで作ってください。
  3. 暗号化 または 復号化 を選びます。
  4. 結果は 結果 に表示されます — コピーするかダウンロードしてください。

ここで暗号化したデータを復号化するには、復号化モードに切り替え、base64の出力を入力テキストに貼り付け、同じキーを使用します。

キーとIVの形式

  • キー: 64桁の16進数 = 32バイト = 256ビットのAESキー。これより短いもの、長いもの、16進数でないものは、処理前に拒否されます。
  • IV(初期化ベクトル): CBCモードでは暗号化ごとに16バイトのIVが必要です。別途管理してもらう代わりに、このツールはキーから決定的にIVを導出します(固定の定数ブロックをそのキーでAES暗号化する)し、それを暗号文の先頭に付けるため、復号化にはキーだけが必要です。トレードオフ: 異なるメッセージを同じキーで暗号化すると同じIVになり、2つの暗号文が同じ平文プレフィックスを共有していることを漏らす可能性があります。最大限の安全性を求めるなら、機密メッセージごとに異なるキーを使うか、セキュリティが重要なアプリケーションで検証済みの暗号化ライブラリの代わりではなく、汎用のテキストスクランブルツールとして扱ってください。
  • 出力形式: base64 — 16バイトのIVの後に暗号文が続き、PKCS7で16バイトの倍数にパディングされます。

よくある質問

これは「本物の」AESですか? はい — FIPS-197アルゴリズム(S-box、鍵スケジュール、MixColumns、すべて含む)をスクラッチで実装したもので、簡略化された代用品ではありません。開発中に、ランダム化されたAES-128/192/256 CBCの往復テストでNode.jsの組み込みcryptoモジュールと突き合わせて、ビット単位の正確さを確認しました。

hexキーではなくパスワードを入力できないのはなぜ? パスワードからキーを導出するには(PBKDF2のようなKDF)、ブルートフォースに耐えるために何度も反復する必要があり、遅くなります — このツールは同期で動作するため、ブラウザでもAPIでも同じように動きます。生のキーを指定すれば、そのトレードオフを回避できます。パスワードベースの暗号化が必要な場合は、専用のKDFでパスワードからキーを導出してから、得られたhexをここに貼り付けてください。

間違ったキーで復号化するとどうなりますか? 意味不明なテキストやクラッシュではなく、読みやすいエラー(「invalid padding」または「not valid UTF-8」)が表示されます — このツールは何か問題が起きても、黙って無意味な結果を返すのではなく、必ず知らせてくれます。

キーやテキストがどこかに送信されることはありますか? いいえ — すべてブラウザ内のクライアント側で動作し、何も送信・保存されません。API経由でこのツールを呼び出す場合も、キーとテキストはその1回のリクエストのためだけに処理され、サーバー側で記録・保存されることはありません。

aesencryptiondecryptionciphercryptographycbc

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/aes-encryption-decryption \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "inputText": "Hello, World!",
    "key": "000102030405060708090a0b0c0d0e0f1011121314151617…",
    "mode": "encrypt"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `aes-encryption-decryption` tool (AES Encryption/Decryption) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

ワークフローの一部

すべてのコレクション

ツールが気に入りましたか?広告をなくしましょう。

1回のお支払いでアカウントから広告が完全になくなります。サブスクリプションも追跡もありません。