Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
wycheproof — Project Wycheproofは、既知の攻撃に対して暗号ライブラリをテストします。 | Kitploit
ツール/GitHubGitHub/c2sp/wycheproof
静的分析脆弱性分析コード分析暗号化論文と研究学習と教育
GitHubc2sp/wycheproof

wycheproof

Project Wycheproofは、既知の攻撃に対して暗号ライブラリをテストします。

リポジトリを見る
3.1k3312日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Project Wycheproof

Project Wycheproofは、コミュニティ管理されたテストベクタのリポジトリであり、暗号ライブラリの開発者が既知の攻撃、仕様の不整合、その他のさまざまな実装バグに対してテストするために使用できます。

テストベクタはJSONテストベクタデータとして維持され、テストベクタデータの構造を文書化したJSONスキーマファイルが付属しています。

はじめに

  1. このリポジトリをクローンします。WycheproofをGit サブモジュールとして統合したり、時間の経過に伴う変更を追跡する自動化を設定したりすることもできます。
  2. 実装言語/プロジェクトに合わせて、ベクタデータを読み込むコードを記述します (またはJSONスキーマファイルから生成します)。
  3. 対象の各アルゴリズムについて、暗号APIへの入力と生成される出力を特定し、 テストベクタが提供する内容に対応付けます。
  4. 該当するテストベクタを順に処理し、関連する入力データが与えられたときに APIが生成する結果が、テストベクタの期待結果と一致することを確認します。
  5. 最良の結果を得るには、このプロセスを継続的インテグレーション(CI) プロセスに組み込み、すべての新しい貢献/変更に対してテストが実行されるようにします。

pyca/cryptographyのような他のプロジェクトがWycheproofのテストベクタを統合した方法を調べると参考になるかもしれません。

カバレッジ

Project Wycheproofは、最も人気のある暗号アルゴリズムのテストベクタを提供しています。以下を含みます。

  • AEGIS
  • AES-EAX
  • AES-FF1
  • AES-GCM
  • AES-SIV
  • ARIA
  • ASCON v1.2(まだSP 800-232ではありません)
  • Camellia
  • ChaCha20-Poly1305
  • チャンク暗号化(Cobblestone)
  • XChaCha20-Poly1305
  • DH
  • DHIES
  • DSA
  • ECDH
  • ECDSA
  • EdDSA
  • ECIES
  • HKDF
  • HMAC
  • KMAC
  • MORUS
  • PBKDF2
  • RSA
  • SEED
  • SipHash
  • SM4
  • VMAC
  • X25519, X448
  • BLS-12-381
  • ML-KEM (CRYSTALS-Kyber)
  • ML-DSA (CRYSTALS-Dilithium)

テストベクタは、ライブラリが多くの攻撃に対して脆弱かどうかを検出します。以下を含みます。

  • 無効な曲線攻撃
  • デジタル署名方式における偏ったノンス
  • もちろん、Bleichenbacherのすべての攻撃
  • そしてさらに多く——80以上のテストケースがあります

新しいテストベクタデータとアルゴリズムの貢献を歓迎します。

コントリビューション

貢献したい場合は、CONTRIBUTINGをお読みいただき、プルリクエストをお送りください。バグの報告や新しいテストのリクエストは、GitHub issuesとして行うこともできます。

開発の優先事項

私たちは、C2SPプロジェクトとしてProject Wycheproofの開発とメンテナンスを再活性化する過程にあり、テストベクタデータに新たな焦点を当てています。当面の優先事項は以下のとおりです。

  1. すべてのテストベクタのJSONスキーマ記述を完成させること。
  2. 外部の貢献者が既存のベクタファイルに新しいテストデータを提供できるよう、ドキュメントとツールのサポートを改善すること。
  3. 新しいテストベクタデータのメンテナンスとレビューを支援できるダウンストリーム利用者のコミュニティを育成すること。
  4. テストベクタデータに追加のアルゴリズムとテストケースのカバレッジを追加すること。

FAQ

なぜプロジェクト名が「Wycheproof」なのですか?

Project Wycheproofは、世界最小の山であるMount Wycheproofにちなんで名付けられました。プロジェクト創設時の主な動機は、達成可能な目標を持つことでした。山が小さければ小さいほど、登れる可能性が高くなります。

どのダウンストリームプロジェクトがWycheproofのテストベクタを使用していますか?

Wycheproofのテストベクタは、多くの重要な暗号プロジェクトやライブラリによって何らかの形で使用されています。順不同で以下を含みます。

  • OpenSSL
  • BoringSSL
  • aws-lc
  • LibreSSL
  • NSS
  • pyca/cryptography
  • Botan
  • Go cryptography
  • swift-crypto
  • RustCrypto
  • Graviola
  • Tink
  • PyCryptdome
  • OpenTitan
  • Zig
  • liboqs
  • bc-rust
  • leancrypto
  • Odin

あなたのプロジェクトがWycheproofのテストベクタを使用している場合は、遠慮なくPRを開いて上記のリストに追加してください!

Wycheproofのテストで注目すべきバグは見つかりましたか?

Wycheproofのテストハーネスまたはテストベクタデータを使用して発見された注目すべき過去のバグについては、doc/bugs.mdを参照してください。

testvectors/ディレクトリはどこにありますか?

私たちは最近、testvectors/ディレクトリとtestvectors_v1/ディレクトリを、スキーマに対する一貫したアプローチを持つ単一の統合ディレクトリに統合しました。

元の(「v0」)テストベクタデータが必要なユーザーは、wycheproof-v0-vectorsタグからこのリポジトリをクローンできますが、将来の更新の恩恵を受けるためにtestvectors_v1/を使用するよう更新を検討することをお勧めします。testvectors/の機能/テストカバレッジがtestvectors_v1/に欠けている場合、または更新を妨げる別の問題がある場合は、ニーズを説明するissueを開いてください。

すべてのベクタにスキーマがありますか?

執筆時点では、以下のtestvectors_v1ファイルにスキーマがありません:

  • testvectors_v1/aes_ff1_base*_test.json
  • testvectors_v1/aes_ff1_radix*_test.json
  • testvectors_v1/ecdsa_secp256k1_sha256_bitcoin_test.json
  • testvectors_v1/pbes2_hmacsha*_aes_*_test.json
  • testvectors_v1/pbkdf2_hmacsha*_test.json
  • testvectors_v1/rsa_pss_*_sha*_mgf*_params_test.json
  • testvectors_v1/rsa_pss_misc_params_test.json

上記のベクタに対するスキーマの貢献を大いに歓迎します。

テストベクタに関する追加のドキュメントはありますか?

files、formats、typesに関する従来のドキュメントがいくつか利用可能ですが、必ずしも現在のテストベクタの状態と同期しているわけではありません。

一般的には、スキーマファイルを参照することをお勧めします。これらはCIでテストされ、ベクタファイルの内容が宣伝されているスキーマと一致することが保証されています。

テストハーネスのコードはどこにありますか?

歴史的にWycheproofには、(JavaやJavascriptの暗号実装向けなどの)さまざまな攻撃を実装に対して直接テストするテストハーネスも含まれていました。コミュニティサポートへの移行以降、これらのハーネスは削除されました(ただし、cd27d64のgit履歴には関心のある方のためにまだ存在しています)。現在の焦点は、実装に依存しないテストベクタです。

サードパーティの暗号ライブラリを直接テストすることは、欠陥がテスト対象プロジェクトによってコミットされ、潜在的にリリースされた後でしか発見されないことを意味します。その代わりに、ダウンストリームプロジェクトが開発プロセスの一環としてWycheproofのテストベクタを使用して自社のコードを定期的にテストすることをお勧めします。このアプローチは、欠陥がCVEになる_前_に発見するのに役立ち、新機能がすぐにテストされることを意味し、メンテナンスの負担を分散するのに役立ちます。これにより、Wycheproofのメンテナーは、多くのプロジェクトのダウンストリーム開発を追跡しながら、増え続ける言語固有・プロジェクト固有のテストハーネスを同時に維持する代わりに、テストベクタに集中できます。

テストハーネスに関心のある方は、RooterbergにおけるDaniel Bleichenbacherの継続的な取り組みに興味を持たれるかもしれません。

Wycheproofはどのライセンスで提供されていますか?

Copyright 2016-2026 The Wycheproof Authors、Apache License 2.0の下で提供されています。

Wycheproofを創設したのは誰ですか?

Project Wycheproofは当初、以下によって作成・維持されていました:

  • Daniel Bleichenbacher
  • Thai Duong
  • Emilia Kasper
  • Quan Nguyen
  • Charles Lee
ツールをダウンロード