Blockchain

研究比特幣區塊鏈的最快方法是什麼?

  • February 27, 2021

我想對比特幣區塊鏈做一些研究。因為我想做大量的處理和查找,我需要一種快速的方法來搜尋區塊鏈。

對insight.io的Http請求只是不會削減它……

我知道 ABE,但它似乎不再維護,我不知道它是否與區塊鏈的目前實現相提並論。

我正在程式的環境是python。

有任何想法嗎?

隨著 12 月 alpha 軟體的發布,我對比特幣進行了研究(感謝這個項目,我開始喜歡比特幣),我不得不提取資訊以建構資訊圖。

我認為索引資訊的方法確實有很多,但我相信最快的方法是使用與比特幣相同的技術。

  • 解析器 blk 文件
  • 以您選擇的格式反序列化資訊並將其索引到數據庫中
  • 查詢數據庫並讀取相應的文件。

有兩件非常困難的事情

  • 該索引系統的建構
  • 如果你想訪問 id 錢包,你需要建構一個腳本反編譯器或使用比特幣節點

ps:這是我的經驗,可以有其他方法來建構這個資訊,我不知道(我的只是一個三年的論文,我的道路才剛剛開始)

這是一個很好的 blk解析器,它是少數與隔離見證兼容的解析器之一。

abe項目仍然有效,但在目前的比特幣維度下,他的工作時間似乎無法接受

如果你有一台大電腦,這個項目很快(至少他們是這麼說的)

2021 年更新

比特幣的區塊鏈隨著時間的推移而增長,我認為我的工作成果是SpyCBlock可以成為記憶體 RAM 方面的有效解決方案,我不知道在空間方面。

SpyCBlock 提供了不同的反序列化方法,如 JSON、事務圖和使用比特幣核心來完成某些工作的已棄用地址圖。此外,一種以有效方式反序列化比特幣記憶體池的方法正在開發中。

請注意,該軟體是一個學術軟體,僅由我開發,可能會出現一些錯誤,並且可能難以安裝所有依賴項,但如果它可以編譯,它應該可以與完整的比特幣數據一起工作。

PS:BlockSci 的開發在 2020 年就停止了,我不知道為什麼,但我認為是因為它很難與比特幣區塊鏈的實際維度進行擴展。

取決於你覺得舒服。

您可以進入低級並直接查詢 lebeldb。塊索引(每個塊的資訊)在 中$DATADIR/blocks/index,鏈狀態(關於目前最知名的鏈的資訊)在$DATADIR/chainstate.

一種更簡單的方法是在本地執行完全同步的 bitcoind 並通過 jsonrpc 進行查詢。從那裡您可以對生成的 JSON 進行切片和切塊以滿足您的需求。

我還沒有完成 leveldb 查詢,但我預計會涉及大量工作,因為它只是一個鍵值儲存。

引用自:https://bitcoin.stackexchange.com/questions/85864