Transactions

使用交易數據追踪比特幣地址之間的資金流動

  • September 2, 2021

我想知道是否有一種方法可以使用交易數據來追踪比特幣網路中的資金流向。我正在使用 Google BigQuery 公共數據,他們的比特幣交易數據集包含以下列:

在此處輸入圖像描述 在此處輸入圖像描述

我一直在嘗試通過從 input_addresses 和 output_addresses 列中提取交易中的輸入和輸出地址以及從 value 列中相應的輸入和輸出金額來跟踪比特幣地址之間的資金流動。然而,許多交易有多個輸入和多個輸出,很難分辨哪個輸入地址向某個輸出地址支付了多少金額。

例如,假設有一個交易有兩個輸入和兩個輸出。在交易中,地址 A 支付了 0.5 BTC,地址 B 支付了 0.5 BTC,地址 C 收到了 0.8 BTC,地址 D 收到了 0.2 BTC。我可以知道每個地址在交易中支付/接收了多少,但不能真正說出地址 A 支付了多少地址 C。有沒有辦法使用任何現有列找出每個輸入地址向每個輸出地址支付了多少像花費的輸出索引和腳本十六進制?

如果這不可能,我至少可以根據以下邏輯假設地址之間的連接/資金流動嗎?

假設在一筆交易中地址 A 支付了 1 BTC,地址 B 支付了 2 BTC。地址 C 在同一筆交易中收到 3 BTC。如果我想追踪這筆交易後收到的這 3 個 BTC 地址 C 去了哪裡,我應該尋找“輸入”來自地址 C 的交易嗎?由於地址 C 是第一筆交易中的“輸出”地址,我想知道是否可以通過查看“輸入”地址為地址 C 的交易來追踪這 3 個 BTC 的去向。

有沒有辦法使用任何現有列(如花費輸出索引和腳本十六進制)找出每個輸入地址支付給每個輸出地址的費用?

不。


我至少可以根據以下邏輯假設地址之間的連接/資金流動嗎?

不可靠(或簡而言之:不)。


假設我從我的花園裡賣掉多餘的蘋果。A 買了一袋蘋果,給了我一張 5 美元的鈔票。B 買了一袋蘋果,給了我一張 5 美元的鈔票。第二天,我花 5 美元買了一個三明治。我不在乎我用的是哪張 5 美元的鈔票,如果你認為我選擇的鈔票有任何意義,那就太愚蠢了。

使用比特幣更難,我可以在一次交易中使用 3 kSat 和 7 kSat 的兩個“硬幣”從 C 購買一個 5 kSat 三明治和從 D 購買一個 4 kSat 蛋糕,而你無法分辨哪個硬幣用於哪個採購。這個概念毫無意義。

不難找到具有數百個輸入和數百個輸出的交易。交易數據不記錄單個輸入和輸出之間的任何對應關係。

您還可以找到具有一個輸入和一個或兩個輸出的交易。在這種情況下,您可以追踪資金流向。但是,您無法判斷它是否代表兩個人之間的資金轉移,或者只是某人將錢從他們的熱錢包轉移到他們的冷錢包。

您可以尋找模式並猜測其潛在含義,但總的來說,這最終依賴於訪問有關地址所有權的外部資訊,這些資訊未記錄在區塊鏈中。

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