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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
crypto-scanner — コードベースから量子脆弱な暗号をスキャンするCLIツール | Kitploit
ツール/GitHubGitHub/mbennett-labs/crypto-scanner
静的コード分析 (SAST)脆弱性分析コード分析暗号化DevSecOpsシークレット検出サプライチェーンセキュリティ
GitHubmbennett-labs/crypto-scanner

crypto-scanner

コードベースから量子脆弱な暗号をスキャンするCLIツール

リポジトリを見る
676ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

Crypto Scanner

手遅れになる前に、コードベースの量子脆弱性のある暗号技術をスキャンしましょう。

PyPI Version PyPI Downloads Python 3.10+ License: MIT Build Status

クイックスタート • なぜ量子対応が必要か • 使い方 • リスクレベル • CI/CD • 概要


概要

Crypto Scanner は、コードベース内の暗号アルゴリズムをスキャンし、量子脆弱性のリスク評価を生成する CLI ツールです。ソースコード、設定ファイル、X.509 証明書を解析し、量子コンピュータによって破られる暗号技術を特定します。

Quantum Shield Labs によって開発 — 組織のポスト量子時代への準備を支援します。


なぜ量子対応が必要か

量子脅威は現実です

RSA や ECC を破れる暗号学的に関連する量子コンピュータ(CRQC)は、2033年 までに登場すると予測されています。これは SF ではなく、主要な政府や企業が積極的に準備を進めているタイムラインです。

今収穫し、後で解読する(HNDL)

攻撃者は既に今日の暗号化データを収集し、量子コンピュータが利用可能になった時点で解読する意図を持っています。もしデータに長期的な価値(医療記録、金融データ、営業秘密、政府通信)があれば、すでにリスクにさらされています。

待てない理由

課題現実
移行の複雑さ大規模なコードベースの移行には 3~5 年以上かかる
サプライチェーンの深さ依存関係に脆弱な暗号が含まれているが、目には見えない
コンプライアンス要件

ショアのアルゴリズム:脅威

十分に強力な量子コンピュータ上で動作するショアのアルゴリズムは、大きな整数の素因数分解や離散対数の計算を効率的に行えます。これにより以下が破られます:

  • RSA(すべての鍵長)
  • ECDSA/ECC(すべての曲線)
  • DH/ECDH(鍵交換)
  • DSA(デジタル署名)

最初のステップ:棚卸し

持っていることがわからないものは移行できません。Crypto Scanner は、量子対応プログラムにおける最初の必須ステップである暗号資産の棚卸しを提供します。

📘 詳細を見る:包括的な移行ガイダンスについては Quantum Shield Labs Playbook をお読みください。


クイックスタート

60 秒以内に最初の量子脆弱性スキャンを実行:

root@kitploit:~
# PyPI からインストール
pip install crypto-scanner

# プロジェクトをスキャン
crypto-scanner scan .

# エグゼクティブ向け HTML レポートを生成
crypto-scanner scan . --html --output quantum-risk-report.html

以上です。これでコードベースの完全な暗号資産棚卸しが完了しました。


インストール

PyPI から(推奨)

root@kitploit:~
pip install crypto-scanner

ソースから

root@kitploit:~
git clone https://github.com/mbennett-labs/crypto-scanner.git
cd crypto-scanner
pip install -e .

必要条件

  • Python 3.10 以上
  • Windows、macOS、Linux で動作

使い方

基本コマンド

root@kitploit:~
# ディレクトリをスキャン(JSON 出力を標準出力へ)
crypto-scanner scan <directory>

# サポートされているファイルタイプとリスク分類を表示
crypto-scanner info

# バージョンを表示
crypto-scanner --version

CLI オプション

例

root@kitploit:~
# 詳細出力でスキャン
crypto-scanner scan ./src --verbose

# JSON レポートをファイルに保存
crypto-scanner scan . --output crypto-audit.json

# 関係者向けのブランド付き HTML レポートを生成
crypto-scanner scan . --html --output quantum-assessment.html

# 特定のディレクトリを除外
crypto-scanner scan . --exclude vendor --exclude legacy

# ファイルパターンを除外
crypto-scanner scan . --exclude "*.test.js" --exclude "*.spec.ts"

# オプションの組み合わせ
crypto-scanner scan ./backend -v --exclude node_modules -o report.json

デフォルトの除外パターン

依存関係のスキャンを避けるために、以下は自動的に除外されます:

root@kitploit:~
.git, .svn, .hg          # バージョン管理
node_modules, vendor     # パッケージ依存関係
__pycache__, .pytest_cache, .mypy_cache
.venv, venv, env         # 仮想環境
dist, build, out         # ビルド出力
.idea, .vscode           # IDE ディレクトリ
site-packages, third_party

リスク分類

クリティカル — 量子脆弱

ショアのアルゴリズムによって完全に破られるアルゴリズム:

高 — 非推奨または脆弱

既知の従来型の脆弱性があるアルゴリズム:

中 — 監視対象

現在は安全だが監視が必要なアルゴリズム:

低 — 十分または量子耐性

適切な保護を提供するアルゴリズム:


サポートされているファイルタイプ

ソースコード

設定ファイル

証明書

拡張子形式
.pemPEM エンコード
.crt, .cer, .cert証明書
.derDER エンコード

出力形式

JSON レポート

デフォルトの出力形式。自動化や CI/CD パイプラインに最適:

root@kitploit:~
{
  "scan_directory": "/path/to/project",
  "scan_timestamp": "2026-02-06T10:30:00",
  "scanner_version": "0.1.0",
  "summary": {
    "total_files_scanned": 150,
    "total_findings": 23,
    "critical_count": 5,
    "high_count": 8,
    "medium_count": 7,
    "low_count": 3
  },
  "excluded_patterns": [".git", "node_modules", "..."],
  "findings": [
    {
      "file_path": "/path/to/auth.py",
      "line_number": 42,
      "algorithm": "RSA",
      "key_size": 2048,
      "risk_level": "critical",
      "description": "RSA key generation detected",
      "recommendation": "Plan migration to post-quantum algorithms (ML-KEM, ML-DSA)",
      "context": "key = rsa.generate_private_key(public_exponent=65537, key_size=2048)"
    }
  ]
}

HTML レポート

Quantum Shield Labs のブランディングが入った、プロフェッショナルな自己完結型レポート:

  • エグゼクティブサマリー — リスク指標を一目で確認
  • 視覚的なリスク分布グラフ
  • ソート可能な検出結果テーブル — フィルタリング機能付き
  • ダークテーマ — 読みやすさを最適化
  • 単一ファイル — 外部依存関係なし(共有が容易)

生成方法:

root@kitploit:~
crypto-scanner scan . --html --output report.html

CI/CD 統合

GitHub Actions

root@kitploit:~
name: Crypto Vulnerability Scan

on: [push, pull_request]

jobs:
  crypto-scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Set up Python
        uses: actions/setup-python@v5
        with:
          python-version: '3.12'

      - name: Install Crypto Scanner
        run: pip install crypto-scanner

      - name: Run Crypto Scan
        run: crypto-scanner scan ./src --output crypto-report.json

      - name: Check for Critical Findings
        run: |
          CRITICAL=$(jq '.summary.critical_count' crypto-report.json)
          if [ "$CRITICAL" -gt 0 ]; then
            echo "::error::Found $CRITICAL critical quantum-vulnerable algorithms!"
            jq '.findings[] | select(.risk_level == "critical")' crypto-report.json
            exit 1
          fi

      - name: Upload Report
        uses: actions/upload-artifact@v4
        if: always()
        with:
          name: crypto-vulnerability-report
          path: crypto-report.json

GitLab CI

root@kitploit:~
crypto-scan:
  stage: security
  image: python:3.12
  script:
    - pip install crypto-scanner
    - crypto-scanner scan . --output crypto-report.json
    - |
      CRITICAL=$(jq '.summary.critical_count' crypto-report.json)
      if [ "$CRITICAL" -gt 0 ]; then
        echo "Critical quantum-vulnerable cryptography detected!"
        exit 1
      fi
  artifacts:
    reports:
      dotenv: crypto-report.json
    paths:
      - crypto-report.json
    when: always

Pre-commit フック

.pre-commit-config.yaml に追加:

root@kitploit:~
repos:
  - repo: local
    hooks:
      - id: crypto-scanner
        name: Crypto Scanner
        entry: bash -c 'crypto-scanner scan . --output /tmp/crypto-scan.json && CRITICAL=$(jq ".summary.critical_count" /tmp/crypto-scan.json) && [ "$CRITICAL" -eq 0 ]'
        language: system
        pass_filenames: false
        always_run: true

シンプルなシェルスクリプト

root@kitploit:~
#!/bin/bash
# crypto-check.sh - クリティカルな脆弱性が見つかったら失敗

set -e

crypto-scanner scan . --output /tmp/crypto-report.json

CRITICAL=$(jq '.summary.critical_count' /tmp/crypto-report.json)
HIGH=$(jq '.summary.high_count' /tmp/crypto-report.json)

echo "Scan complete: $CRITICAL critical, $HIGH high risk findings"

if [ "$CRITICAL" -gt 0 ]; then
    echo "FAILED: Critical quantum-vulnerable cryptography detected!"
    exit 1
fi

アーキテクチャ

root@kitploit:~
crypto-scanner/
├── src/crypto_scanner/
│   ├── cli.py              # Typer CLI インターフェース
│   ├── scanner.py          # コアオーケストレーションロジック
│   ├── models.py           # Pydantic データモデル
│   ├── patterns.py         # 50以上の正規表現検出パターン
│   ├── analyzers/          # ファイルタイプアナライザ
│   │   ├── base.py         # 抽象基底クラス
│   │   ├── source.py       # ソースコードアナライザ(14言語)
│   │   ├── config.py       # 設定ファイルアナライザ
│   │   └── certificate.py  # X.509 証明書アナライザ
│   └── reporters/          # 出力生成器
│       ├── json_reporter.py
│       └── html_reporter.py
└── tests/                  # 包括的なテストスイート

仕組み

  1. Scanner がターゲットディレクトリを再帰的に走査し、除外パターンを尊重する
  2. ファイル拡張子に基づいて アナライザ がディスパッチされる:
    • SourceCodeAnalyzer — 14のプログラミング言語にわたるパターンマッチング
    • ConfigAnalyzer — YAML/JSON の解析と設定ファイルのパターンマッチング
    • CertificateAnalyzer — X.509 の解析による鍵アルゴリズムとサイズの抽出
  3. Patterns モジュールには暗号 API 検出用の 50以上の正規表現パターンが含まれる
  4. Reporters が検出結果を JSON または HTML 形式に集約する

コントリビューション

コントリビューションを歓迎します!始め方:

開発環境のセットアップ

root@kitploit:~
git clone https://github.com/mbennett-labs/crypto-scanner.git
cd crypto-scanner
pip install -e ".[dev]"

テストの実行

root@kitploit:~
# すべてのテストを実行
pytest tests/ -v

# カバレッジ付きで実行
pytest tests/ -v --cov=crypto_scanner --cov-report=html

新しいパターンの追加

暗号パターンは src/crypto_scanner/patterns.py で定義されています。各パターンには以下が含まれます:

  • 検出用正規表現パターン
  • アルゴリズム名
  • リスクレベル(CRITICAL、HIGH、MEDIUM、LOW)
  • 説明と推奨事項

プルリクエストのガイドライン

  1. リポジトリをフォークする
  2. 機能ブランチを作成する(git checkout -b feature/new-pattern)
  3. 新機能のテストを追加する
  4. すべてのテストが通ることを確認する(pytest tests/ -v)
  5. 明確な説明を添えてプルリクエストを送信する

ライセンス

MIT ライセンス — 詳細は LICENSE をご覧ください。


Quantum Shield Labs について

Quantum Shield Labs

Quantum Shield Labs は、組織のポスト量子時代への準備を以下で支援します:

  • 量子リスク評価 — 包括的な暗号資産棚卸しとリスク分析
  • PQC 移行計画 — 量子耐性アルゴリズムへの移行ロードマップ
  • エグゼクティブブリーフィング — 役員向けの量子リスクに関するプレゼンテーション
  • 開発者トレーニング — エンジニアリングチーム向けの実践的なワークショップ

リソース

  • 量子対応プレイブック
  • ブログ
  • お問い合わせ

Quantum Shield Labs が心を込めて開発

ツールをダウンロード
NIST PQC 標準(ML-KEM、ML-DSA)が正式決定
CNSA 2.0 の期限NSA は 2033 年までに量子耐性アルゴリズムを要求
オプション短縮形説明
--htmlJSON ではなく HTML レポートを生成
--output-oレポートをファイルに保存(標準出力の代わり)
--verbose-vスキャンの進行状況を詳細表示
--exclude-e追加の除外パターン(繰り返し可能)
--version-Vバージョンを表示して終了
アルゴリズム鍵長量子の影響推奨される対応
RSAすべて(1024-4096+)完全に破られるML-KEM + ML-DSA に移行
ECDSA/ECCすべての曲線完全に破られるML-DSA に移行
DH/ECDHすべて鍵交換が破られるML-KEM に移行
DSAすべて完全に破られるML-DSA に移行
アルゴリズム問題推奨される対応
MD5衝突攻撃、完全に破られているSHA-3 または SHA-256 に置き換え
SHA-1衝突攻撃が実証済みSHA-256 以上に置き換え
DES56ビット鍵、簡単に破られるAES-256 に置き換え
3DES中間一致攻撃AES-256 に置き換え
AES-128グローバーのアルゴリズムにより安全性低下AES-256 にアップグレード
アルゴリズム状態推奨される対応
SHA-256安全、グローバーにより 128ビット相当に低下SHA-3 への移行を計画
SHA-384安全動向を監視
SHA-512良好な量子耐性動向を監視
TLS 1.2安全だが老朽化TLS 1.3 を推奨
アルゴリズム状態備考
AES-256量子耐性ポスト量子安全性 128ビット
ChaCha20現代的、安全AES の良好な代替
SHA-3最新の NIST 標準新規プロジェクトに推奨
ML-KEMポスト量子(Kyber)NIST 2024年標準化
ML-DSAポスト量子(Dilithium)NIST 2024年標準化
拡張子言語
.py, .pywPython
.js, .mjs, .cjsJavaScript
.ts, .tsxTypeScript
.javaJava
.goGo
.rsRust
.c, .h, .cpp, .hppC/C++
.csC#
.rbRuby
.phpPHP
.swiftSwift
.kt, .ktsKotlin
.scalaScala
拡張子形式
.yaml, .ymlYAML
.jsonJSON
.tomlTOML
.ini, .cfg, .conf, .configINI/Config
.env環境変数