deep-tool — 暗号解析とブロックチェーン調査ツール集

Security

概要

Crypto Deep Tools(deep-tool)は、ビットコインのブロックチェーン解析と暗号解析に特化した Jupyter Notebook ベースのツール群です。ブロックチェーンデータのパース(Google Drive 経由の処理含む)、ECDSA(secp256k)に関する脆弱性検証や鍵回復の実験、ビットコインアドレス残高チェック、既知の脆弱な OpenSSL 実装の検証など、研究者やセキュリティ評価者が再現可能な手順で解析できるようサンプルコード・チュートリアルを備えています。ノートブック主体で学習コストを下げ、可視化と逐次実験をサポートする点が特徴です。

GitHub

リポジトリの統計情報

  • スター数: 67
  • フォーク数: 0
  • ウォッチャー数: 67
  • コミット数: 30
  • ファイル数: 43
  • メインの言語: Jupyter Notebook

主な特徴

  • ブロックチェーンの大規模データを扱うためのパース/可視化ノートブック群
  • ECDSA(secp256k)に関する脆弱性解析・鍵回復実験の手順と実装
  • ビットコインアドレスの残高チェックやウォレット解析のサンプル
  • 脆弱な OpenSSL 実装の検証や暗号実装ミスのデモ

技術的なポイント

本リポジトリは教育・研究用途の再現可能なワークフローを重視しており、Jupyter Notebook を中心にアルゴリズム実装と実験結果の可視化を統合しています。secp256k1(Bitcoin で用いられる楕円曲線)上の ECDSA に関する章では、署名再利用(nonce の流用)、乱数生成の不備、低エントロピー環境での鍵漏洩シナリオなど、実際に鍵を復元するための数学的背景(離散対数問題、拡張ユークリッド法、ガウス消去、CRT 等)と実装例が示されます。ブロックチェーンパース部分は、ブロック・トランザクション・スクリプトの解析、アドレス抽出、インプット/アウトプットの相関解析といったデータエンジニアリング的処理をノートブックで段階的に解説。脆弱な OpenSSL の検証セクションは、実装ミスや古いバージョン特有の挙動を再現し、どのような実装不備が鍵や署名の安全性に影響を与えるかを示します。全体としては、理論(楕円曲線暗号やプロトコル仕様)と実践(Python ベースの実装、データ取得・整形、可視化)が結びつけられており、再現実験を通じて脆弱性の検出/評価を支援します。

プロジェクトの構成

主要なファイルとディレクトリ:

  • 01BlockchainGoogleDrive: dir
  • 02BreakECDSAcryptography: dir
  • 03CheckBitcoinAddressBalance: dir
  • 04AlgorithmsForSecp256k: dir
  • 05VulnerableOpenSSL: dir

…他 38 ファイル

説明(ディレクトリ別の役割):

  • 01BlockchainGoogleDrive: Google Drive 上のブロックチェーンデータを読み込み・パースして解析するノートブックとユーティリティ。大規模データの分割読み込みやインデックス作成、可視化サンプルを含む。
  • 02BreakECDSAcryptography: ECDSA の攻撃シナリオ(再利用された nonce、低エントロピー、署名関連の数学的攻撃)のデモと鍵復元アルゴリズムを収録。教育目的の実験コードが中心。
  • 03CheckBitcoinAddressBalance: 公開チェーンを利用したアドレス残高チェック、トランザクション追跡、ヒートマップやネットワーク分析の簡易スクリプト。
  • 04AlgorithmsForSecp256k: secp256k に特化した補助的アルゴリズム(スカラー演算、ポイント演算、効率化手法)の実装例とベンチマーク。
  • 05VulnerableOpenSSL: 脆弱な(あるいは古い)OpenSSL 挙動を再現して暗号化処理や鍵管理における実装ミスを検証するノートブック群。

依存関係は主に Python エコシステム(numpy、pandas、matplotlib、cryptography など)と Jupyter。ノートブックは逐次実行を前提に作られており、データの取得や API キー、ローカル環境設定が必要な箇所は README に記載されています。

使い方と注意点

  • Jupyter 環境(ローカルまたは Colab)でノートブックを開き、README に従って依存ライブラリをインストールして実行します。
  • ブロックチェーンの大規模データを扱うため、ストレージと計算リソースを適切に確保してください。
  • セキュリティ上の観点から、鍵の復元や脆弱性検証は必ずテストネットやダミーデータで行い、他者の資産に影響を与えないよう注意してください。

まとめ

研究・教育向けの再現性の高い暗号/ブロックチェーン解析ツール集として有用。

リポジトリ情報:

READMEの抜粋:

CryptoDeepTools

Crypto Deep Tools a set of scripts for detailed cryptanalysis of the Blockchain network in cryptocurrency Bitcoin

01BlockchainGoogleDrive


02BreakECDSAcryptography