CoderTools

ECDSA署名ツール

楕円曲線デジタル署名アルゴリズム

🔒 100% ローカル処理入力されたデータはすべてブラウザ内で処理されます。サーバーに送信されることはありません。

ECDSA鍵ペア生成

選択した曲線用の新しいランダムECDSA鍵ペアを生成します。秘密鍵は秘密に保管し、公開鍵は共有できます。

秘密鍵から公開鍵を導出

既存の秘密鍵を入力して対応する公開鍵を計算します。

ドキュメント

ECDSA(楕円曲線デジタル署名アルゴリズム)は、楕円曲線暗号に基づく広く使用されているデジタル署名方式です。RSAと同じセキュリティレベルをはるかに小さな鍵サイズで提供し、モバイルデバイスやブロックチェーンネットワークなどのリソース制限のある環境に最適です。

主な特徴

  • 小さな鍵サイズ:256ビットECDSAは3072ビットRSAと同等のセキュリティを提供
  • 高速な操作:署名と検証はRSAより大幅に高速
  • コンパクトな署名:ECDSA署名はRSA署名よりはるかに小さい
  • 複数の曲線:secp256k1、P-256、P-384、P-521曲線をサポート
  • 業界標準:ビットコイン、イーサリアム、TLSなど多くのプロトコルで使用

サポートされる曲線

  • secp256k1:ビットコインとイーサリアムで使用される曲線。256ビットのセキュリティ、効率的な実装に最適化。
  • P-256(secp256r1):NIST標準曲線、TLS、政府アプリケーション、WebCrypto APIで広く使用。
  • P-384(secp384r1):192ビットのセキュリティレベルを提供するNIST標準曲線、高セキュリティアプリケーション向け。
  • P-521(secp521r1):256ビットのセキュリティレベルを提供するNIST標準曲線、最高セキュリティのECDSA曲線。

ハッシュアルゴリズム

  • SHA-256:ほとんどのアプリケーションの標準的な選択。P-256とsecp256k1曲線で使用。
  • SHA-384:セキュリティレベルに合わせてP-384曲線での使用を推奨。
  • SHA-512:P-521曲線での使用を推奨。256ビットのセキュリティを提供。
  • Keccak-256:イーサリアムでトランザクション署名に使用。SHA-3ではなく、256ビット出力の元のKeccak。

一般的なユースケース

  • ビットコインとブロックチェーン:トランザクション署名にsecp256k1とSHA-256ダブルハッシュを使用。
  • イーサリアム:トランザクションとメッセージ署名にsecp256k1とKeccak-256を使用。
  • TLS/SSL証明書:HTTPS証明書署名にP-256曲線を使用。
  • コード署名:真正性と整合性を確保するためにソフトウェアリリースに署名。
  • API認証:改ざんを防ぎ、アイデンティティを確認するためにAPIリクエストに署名。

セキュリティベストプラクティス

  • 秘密鍵の保護:秘密鍵を公開したり共有したりしないでください。重要なアプリケーションにはHSMを使用。
  • 安全な乱数の使用:ECDSAには暗号学的に安全な乱数が必要。このツールはWeb Crypto APIを使用。
  • 公開鍵の検証:署名を受け入れる前に、必ず信頼できるチャネルで公開鍵を検証。
  • クライアント側処理:このツールは完全にブラウザで実行されます。鍵がデバイスから出ることはありません。
  • 署名の可鍛性:ECDSA署名は可鍛性がある場合があります。必要に応じて正規(低S)署名を使用。

ECDSAと他の署名方式の比較

特徴 ECDSA (P-256) RSA-2048 Ed25519
秘密鍵サイズ 32バイト 256バイト 32バイト
公開鍵サイズ 64バイト 256バイト 32バイト
署名サイズ 64バイト 256バイト 64バイト
署名速度 高速 低速 非常に高速
検証速度 中程度 高速 非常に高速
決定的署名 RFC 6979 はい はい

関連ツール

クイックメニュー

最近のツールはありません