Address-Reuse
為什麼比特幣交易圖中存在自環?
我從區塊瀏覽器獲得了比特幣數據並創建了交易圖。該圖由數百萬個節點和邊組成。
我編寫了一個查詢,創建了從源地址到目標地址的關係,並視覺化了網路的一部分;大約 4500 個節點和 50000 條邊。這意味著我省略了描述 txs 所屬塊的節點、描述 txs 等的節點。
圖中的節點說明了通過關係“ sent_money_to ”連接的地址
有很多自循環。在某些情況下,一個節點 u 有 n 個到節點 w 的外連結,而同一個節點 u 有 n 個自環。
我絕不是比特幣網路的圖形屬性或協議方面的專家。
有什麼可能的解釋嗎?微不足道的或非微不足道的。
謝謝。
您正在以錯誤的方式查看交易。比特幣實際上並不使用地址及其餘額。該協議沒有地址是什麼的概念,也不需要。它也不知道地址或帳戶餘額。
相反,比特幣的工作方式是交易輸出。交易輸出用作其他交易的輸入,並創建為交易的輸出。地址只是一種人類抽象,用於快速指定交易輸出的鎖定條件(需要滿足的條件才能花費)。它們不是標識符,只是輸出腳本的簡寫。
由於地址只是輸出腳本的簡寫而不是標識符,因此節點不關心腳本的內容,除非驗證輸入是否滿足使用它指定的輸出的條件。除此之外,交易輸出可以包含使用者在腳本中想要的任何內容,包括無效腳本。不能使用帶有此類腳本的輸出。
所以這些自循環的存在是因為人們可以創建一個使用特定腳本花費輸出的交易,然後他們創建一個具有相同腳本的新輸出。因為節點不檢查腳本,所以這是非常好的和有效的。