エントロピー計算機
技術的な詳細
エントロピー計算機の仕組み
このツールでできること
エントロピー計算機は、テキスト文字列のシャノンエントロピーを測定し、1文字あたりおよび合計でどれだけの情報量(ビット)を含むかを報告します。エントロピーが高いほど文字列はよりランダムで予測しにくく、低いほど反復的または構造化された内容であることを示します。また、エントロピーの源を可視化するために、文字の出現頻度分布も表示します。
開発者によくある利用シーン
セキュリティエンジニアは、パスワード、APIキー、トークン、暗号学的シードのランダム性を、本番で使用する前に評価するためにエントロピー計算機を使います。開発者は、生成したシークレットが意図するセキュリティレベルに対して十分なエントロピーを持つかを確認したり、パスワードポリシーを監査したり、弱い/予測可能な認証情報を示唆する不自然に低エントロピーな文字列を検出したりするために利用します。
データ形式、型、またはバリエーション
シャノンエントロピー H は、文字列内のすべてのユニークな文字 x について -Σ p(x) log2 p(x) として計算されます。ここで p(x) は文字列中における文字 x の確率です。結果は、1文字あたりのビット数(最大は log2(アルファベットサイズ))と、合計ビット数(1文字あたりのビット数 × 文字列長)で表されます。95文字の印字可能ASCII集合からランダムに選ばれた20文字のパスワードの場合、理論上の最大エントロピーは約131ビットです。
よくある落とし穴とエッジケース
シャノンエントロピーはサンプルの統計的なランダム性を測りますが、暗号学的安全性を保証するものではありません。弱いPRNGで生成された場合でも、文字列が高エントロピーになることがあります。短い文字列のエントロピーは、文字分布の分散が大きいため、真のランダム性の推定としては不適切です。エントロピーは可視文字のみで計算されます。エンコーディング(hex、Base64)は見かけの長さを増やしますが、基礎となるランダム性は増えません。
コードではなくこのツールを使うべき場面
セキュリティレビューや認証情報監査中の素早いエントロピーチェックには、このブラウザツールを使用してください。CIパイプラインやアプリケーションコードでシークレット強度を自動検証する場合は、シャノンエントロピーをユーティリティ関数として実装するか、エントロピーに加えてパターン検出も組み合わせた専用のパスワード強度ライブラリを使用して、より包括的に評価してください。