GraphSense介紹

GraphSense是一個跨賬本加密貨幣分析平臺
它的介紹在這裏
代碼也是開源的

在這裏插入圖片描述
graphsense-dashboard
用於交互式加密貨幣分析的Web儀表板。
可以看導進數據的情況

需要安裝NodeJS/NPM
爲了安裝所有依賴項,請從此存儲庫的根目錄運行以下命令:
npm install
在webpack.config.js中調整DEV_REST_ENDPOINT以指向您的開發graphsense-REST服務,然後啓動開發服務器:
npm start
瀏覽器訪問 http://localhost:8080

graphsense-transformation

GraphSense轉換管道,用於將加密貨幣的區塊/交易/標籤等數據導入, 基於spark/cassandra/java服務運行,ingest_test_data.sh用於將數據導進cassandra中,可以解讀下它的腳本:

echo "Creating raw keyspace in Cassandra"
cqlsh localhost -f ./scripts/schema_raw.cql

echo "Ingesting test blocks..."

insert_data "./src/test/resources/cassandra/test_blocks.json" "btc_raw.block"
。。。。創建對應的表

可以看它指定的json格式:

test_blocks.json  區塊信息
 test_block_txs.json  區塊的交易信息
  test_data_overview.txt  數據的概覽:統計區塊交易情況
   test_exchange_rates.json  交易所的費率
    test_summary_statistics.json  總體統計信息
     test_tags.json  地址標籤
      test_txs.json   交易詳細信息

你只要將這些信息準備成這樣的json格式就能導進去
舉個例子,
這是 test_blocks.json格式:

{"height": 1, "block_hash": "0x00000000000000000a4d72c6f0c714e8b0f4e847a9599110acc133cec97900d4", "no_transactions": 1, "timestamp": 1230948000}
{"height": 2, "block_hash": "0x0000000000000000000fc3ab40914d4e72ff42d7f9730647cee43d2178607a31", "no_transactions": 2, "timestamp": 1231466400}
{"height": 3, "block_hash": "0x000000005c7ef94cf3eb3526aef2c9ec1352c33e7e869056cdffa3711d9b3eb5", "no_transactions": 3, "timestamp": 1231552800}
{"height": 4, "block_hash": "0x00000000000000469658b3aab3f35fce54f24844b8ae5fd696033d858eff7df2", "no_transactions": 4, "timestamp": 1231639200}
~                                                                                                                                                    

這是 test_data_overview.txt格式:

Block 1 [0x00000000000000000a4d72c6f0c714e8b0f4e847a9599110acc133cec97900d4]
  Tx 1 [0xab100004ba5dd70a143ca2359693c19fc879bb86b259870eed0de573f51d34e6]
    Inputs:
      |- (coinbase)
    Outputs:
      |- 138cWsiAGpW9yqfjMVCCsFcnaiSHyoWMnJ (2500000)
      TotalOutput: 2500000
Block 2 [0x0000000000000000000fc3ab40914d4e72ff42d7f9730647cee43d2178607a31]
  Tx 2 [0xab200013f626405ddebf1a7b2e0af34253d09e80f9ef7f981ec1ec59d6200c1f]
    Inputs:
      |- (coinbase)
    Outputs:
      |- 1HxbaBMF2jXBVnagoHvaA6rLxmaYL8gb8T (2500000)
      TotalOutput: 2500000

這是標籤的json格式:

{"address": "1HxbaBMF2jXBVnagoHvaA6rLxmaYL8gb8T", "label": "Mining Service", "source": "test.com", "category": "Mining Service", "abuse": null, "tagpack_uri": "https://example.org/miner", "lastmod": 1524470607, "currency": "BTC"}
{"address": "15kcXCiXU5RjkgxZuxdFhpHpixmxGvPHpa", "label": "John Doe", "source": "johndoe.com", "category": "Unclear", "abuse": null, "tagpack_uri": "https://example.com/tags", "lastmod": 1532249114, "currency": "BTC"}

graphsense-blocksci
一個dockerized組件,用於將BlockSci數據同步到Apache Cassandra

graphsense-REST
REST服務,用於訪問存儲在Apache Cassandra中的加密貨幣數據。

graphsense-clustering
一個實現加密貨幣聚類算法的庫

graphsense-tagpacks
基於Git的基礎架構,用於協作收集和共享歸因標籤
TagPack是具有相關來源和分類元數據的加密貨幣屬性標籤的集合。 該存儲庫定義了TagPack的通用結構,提供了Git基礎結構,以協作方式收集具有詳細出處信息的TagPack,以及將TagPack提取到GraphSense中進行進一步處理的必要腳本。

屬性標籤是可以歸類爲於加密貨幣地址的任何形式的上下文信息。 下面的示例將一個比特幣地址分配給Internet庫,根據此消息來源,獲取該地址的所有者的標籤:

label: Internet Archive
address: 1Archive1n2C579dMsAu3iC6tWzuQJz8dN
source: https://archive.org/donate/cryptocurrency/

模塊之間的關係
在這裏插入圖片描述
論文介紹

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章