ChaCha20 鍵生成ツール
暗号学的に安全な ChaCha20 暗号化キーを生成します — 固定 256 ビットのキー、オプションで 96 ビットの nonce、16進数または Base64 形式で出力します。すべてブラウザ内で生成され、送信されることはありません。
入力
ChaCha20(RFC 8439、IETF バリアント)は、暗号化のたびにキーと一緒に一意な 96 ビットの nonce が必要です。
出力
このキーは秘密にしてください — コードやチャットではなく、シークレット管理ツールに保存してください。
このキーで暗号化される各メッセージについて、新しく一意な nonce を使用してください — nonce を再利用しないでください。
このツールを使う他の方法
REST API
curl -X POST https://api.iotools.cloud/v1/tool/chacha20-key-generator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"outputFormat": "hex",
"includeNonce": "true"
}'ご自身のアカウントのキーに差し替えてください。ツールのフィールドがそのままリクエストボディになります——ラッパーはありません。
AIエージェントに依頼する
Use the IOTools `chacha20-key-generator` tool (ChaCha20 Key Generator) on this input:
YOUR_INPUT_HEREIOTools MCPサーバーに接続された任意のエージェントにこれを貼り付け、入力内容を追加してください。
埋め込みウィジェット
<iframe
src="https://iotools.cloud/embed/chacha20-key-generator/"
width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
title="ChaCha20 鍵生成ツール — iotools.cloud"
sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
allow="clipboard-write"
style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>ご自身のページに貼り付けるだけ——無料、キー不要、リンクを掲載するだけです。
| API/MCP 1回あたりの費用 | 5クレジットから |
|---|
次の方法でも利用可能
ガイド
このツールが行うこと
RFC 8439 に準拠して、暗号学的に安全な ChaCha20 暗号化キーを生成します — 常に 256 ビット — およびオプションで、対応する 96 ビットの nonce を生成します。どちらも 16 進数または Base64 形式でフォーマットされ、設定ファイル、環境変数、または暗号化ライブラリ呼び出しに貼り付ける準備が整っています。
ChaCha20 とは何か?
ChaCha20 は、Daniel J. Bernstein によって設計された対称ストリーム暗号で、専用 AES アクセラレーションのないハードウェア(モバイル CPU、多くの組み込みデバイス)で AES より高速でシンプルな代替手段です。通常は Poly1305 メッセージ認証器と ChaCha20-Poly1305 として組み合わされ、RFC 8439 に標準化された AEAD(認証付き暗号化)構造です。TLS 1.3 ではサポートされたデフォルトの暗号スイートであり、WireGuard VPN プロトコルで使用され、Google のモバイル TLS 接続の推奨暗号です。
128/192/256 ビットのキー サイズを提供する AES とは異なり、ChaCha20 は正確に 1 つのキー サイズを持っています:256 ビット(32 バイト)。選択できる小さなキー バリアントはないため、このツールはキー サイズ セレクターを持たない — 生成されるキーは常に正しいサイズです。
キー vs. Nonce
ChaCha20 キー単体では何も暗号化するのに十分ではありません — 暗号化には nonce(「一度だけ使用される数」)も必要です:特定のキーに対して繰り返されることなく値です。RFC 8439 で標準化された IETF バリアントは nonce を **96 ビット(12 バイト)**に固定します(128 ビットの内部状態の 32 ビット内部ブロック カウンターと組み合わせて)。同じキーで nonce を再利用すると、ChaCha20 のセキュリティ保証が損なわれます — 同じキー/nonce ペアで暗号化された 2 つのメッセージを見た攻撃者は、両方の平文に関する情報を回復できます。このため、ほとんどの実際の使用では、各メッセージに対して新しいランダム nonce を生成し(またはカウンターを使用)、再利用のために nonce を保存することはありません。
このツールは便宜上キーと共に nonce を生成できますが、1 つの生成された nonce 出力は複数の暗号化に使用されることを意図していないことに注意してください — 実際のアプリケーションではメッセージごとに新しい nonce を生成してください。
使用方法
- 出力形式を選択します — 16 進数(大文字)または Base64。ライブラリや設定形式で何が必要かに応じて選択します。
- キーと共に対応する 96 ビットの nonce が必要な場合は「nonce(96ビット)も生成する」をチェック したままにするか、キーのみの出力を希望する場合はチェック を外します。
- キーを生成をクリックします。
- コピー ボタンを使用してキー(および生成された場合は nonce)をコピーします。
新しいキーまたは nonce が必要になったら、いつでも「生成」をクリックしてください — 各クリックは、Math.random()ではなく、ブラウザの暗号学的に安全な乱数生成器 crypto.getRandomValues() から新しいランダム バイトを取得します。これは高速ですが予測可能で、セキュリティに関するもには適さない。
よくある質問
AES とは異なり、キー サイズ オプションがないのはなぜですか? ChaCha20 は単一の 256 ビット キー サイズで指定されています — 選択できる 128 ビット または 192 ビット バリアントはないため、サイズ セレクターは 1 つの実際の選択肢のみを持つドロップダウンになります。
生成された nonce を複数のメッセージに再利用できますか? いいえ — 同じキーと nonce で 2 つの異なるメッセージを暗号化することは、ChaCha20(およびすべてのストリーム暗号)にとって重大なセキュリティ障害です。各暗号化操作に対して新しい nonce を生成(または導出)してください。
16 進数と Base64 のどちらの形式を使用する必要がありますか? どちらも同じバイトの完全忠度エンコーディングです。16 進数は読み取りとデバッグが簡単です。Base64 は約 25% 短く、一部の設定形式または環境変数のサイズ制限が優先します。
このキーは本番環境に対して十分に安全ですか? はい — 基礎となるランダム性のソースは、TLS およびその他のセキュリティ関連の重要な操作にオペレーティング システムとブラウザが使用する同じ CSPRNG です。システムのセキュリティは、キーをシークレットに保つ、メッセージごとに新しい nonce を生成し、キーを適切にローテーションすることにかかっています。
プライバシー
キーと nonce は Web Crypto API を使用してブラウザ内で完全に生成されます。これらがサーバーに送信されたり、ログに記録されたり、どこかに保存されたりすることはありません — ページを閉じるか再読み込みすると、これらは永久に破棄されるため、離脱する前に安全な場所に保存してください。