[論文レビュー] BlockSci: Design and applications of a blockchain analysis platform
BlockSci は、複数のブロックチェーンをサポートするオープンソースの、インメモリ型ブロックチェーン分析プラットフォームです。Python(Jupyter)と C++ のインターフェイスを提供し、研究および商業分析を加速する組み込み分析を備えています。従来のツールよりはるかに高速で、mempool および exchange-rate データの統合を含みます。
Analysis of blockchain data is useful for both scientific research and commercial applications. We present BlockSci, an open-source software platform for blockchain analysis. BlockSci is versatile in its support for different blockchains and analysis tasks. It incorporates an in-memory, analytical (rather than transactional) database, making it several hundred times faster than existing tools. We describe BlockSci's design and present four analyses that illustrate its capabilities. This is a working paper that accompanies the first public release of BlockSci, available at https://github.com/citp/BlockSci. We seek input from the community to further develop the software and explore other potential applications.
研究の動機と目的
- 高速で柔軟なブロックチェーンデータ分析を科学的および商業的研究のために実現する。
- 複数のブロックチェーンをサポートする共通のインターフェイスと効率的なパーサを提供する。
- 組み込み分析(例:アドレスクラスタリング、CoinJoin検出)とデータ feeds(mempool、為替レート)を提供し、より豊かな分析を可能にする。
- 使いやすさと速度のバランスを取るために、直感的なユーザーインターフェース(Jupyter ノートブック)と高性能な C++ コアを提供する。
提案手法
- ブロックチェーンを、従来のトランザクションデータベースではなく、イン메모リアル分析データベースに適した追加専用の静的スナップショットとして扱う。
- 多様なブロックチェーンを共通の内部フォーマットへ変換し、データレイアウトを最適化した高性能・空間効率のパーサを開発する(例:ポインタ風リンク、固定長エンコーディング、重複排除されたアドレス)。
- 分散可能な mapreduce 風クエリとローカリティとスケーラビリティのためのメモリーマップデータレイアウトを備えたインメモリ取引グラフを提供する。
- 探索のための Python(Jupyter 経由)インターフェイスと、パフォーマンス重視のタスク用の C++ インターフェイスの両方を提供する。ワークフローを加速するためのインライン C++ およびセレクターベースのクエリオプションを有効にする。
- 共通 API を通じて追加データソース(mempool データ、 exchange rates)と複数のブロックチェーンをサポートし、今後もより多くのスクリプトタイプやアルトコインの計画を進める。
実験結果
リサーチクエスチョン
- RQ1インメモリアル分析データベースを用いて、ブロックチェーンデータを大規模に効率的に分析するにはどうすればよいか。
- RQ2代表的なクエリに対して、<BlockSci> は既存のブロックチェーン分析ツールと比較してどの程度パフォーマンスが向上するか。
- RQ3データ統合(mempool、為替レート)は、ブロックチェーン経済とユーザー行動の分析をどのように強化するか。
- RQ4アドレスリンクとスクリプト解析は、複数のブロックチェーンに跨るプライバシーと法医分析をどの程度改善できるか。
主な発見
- BlockSci は、ブロックチェーン分析の既存ツールと比較して 15x–600x 高速である。
- インメモリアル分析モデルでブロックチェーンを読み込み・分析し、迅速な mapreduce 風クエリを実現する。
- 共通のインポーターとフォーマットを通じて、Bitcoin、Litecoin、Namecoin、Dash、Zcash など複数のブロックチェーンをサポートする。
- マルチ署名プライバシーの弱点、Dash プライバシー、ブロック空間経済学、暗号資産の velocity などの洞察を分析で示す。
- Python インターフェイス(Jupyter 経由)は高性能な C++ バックエンドを補完し、性能が重要なコードは C++ で記述され、スピードのための inline セレクターを提供する。
- 固定エンコーディング、ポインター風参照、重複排除されたアドレスによってメモリ効率と局所性を実現している。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。