節點的定義可以根據上下文而變化。當涉及計算機或電信網絡時,節點可以充當重新分發點或通信端點。通常,節點由物理網絡設備組成,但在某些情況下會使用虛擬節點。
網絡節點是可以創建、接收或傳輸消息的點。在此我們將討論不同類型的比特幣節點:全節點、超級節點、礦工節點和 SPV 客戶端。
比特幣節點
深入研究區塊鏈(被設計爲分佈式系統)的背景,計算機節點網絡使得比特幣能夠用作去中心化的點對點(P2P)數字貨幣。因此,它在設計上是抗審查的,並且不需要中間人在用戶之間進行交易(無論他們在世界上有多遠)。
因此,區塊鏈節點負責充當可能執行不同功能的通信點。任何連接到比特幣接口的計算機或設備都可以被視爲節點,因爲它們以某種方式相互通信。這些節點還能夠使用比特幣點對點協議在分佈式計算機網絡內傳輸有關交易和區塊的信息。然而,每個計算機節點都是根據其特定功能來定義的,因此比特幣節點有不同類型。
全節點
全節點是真正支持比特幣併爲其提供安全性的節點,它們對於網絡來說是不可或缺的。這些節點也可以稱爲完全驗證節點,因爲它們參與根據系統共識規則驗證交易和塊的過程。此外,完整節點能夠將新交易和區塊轉發到區塊鏈。
通常,完整節點會在每個塊和交易中下載比特幣區塊鏈的副本,但這並不是被視爲完整節點的要求(可以使用區塊鏈的縮減副本)。
完整的比特幣節點可以通過不同的軟件實現來建立,但最常用和流行的一個是比特幣核心。這些是運行比特幣核心完整節點的最低要求:
裝有最新版本的 Windows、Mac OS X 或 Linux 的臺式機或筆記本電腦。
200GB 可用磁盤空間。
2GB 內存 (RAM)。
高速互聯網連接,上傳速度至少爲 50 kB/s。
不按流量計費的連接或上傳限制較高的連接。在線全節點可以達到或超過200GB/月的上傳使用量和20GB/月的下載使用量。首次啓動完整節點時,您還需要下載約 200GB。
您的完整節點每天應運行至少 6 小時。如果連續運行(24/7)就更好了。
許多志願者組織和用戶正在運行完整的比特幣節點,作爲幫助比特幣生態系統的一種方式。截至 2022 年,比特幣網絡上運行的公共節點已超過 10,000 個。請注意,這個數字僅包括公共節點,即可見且可訪問的比特幣節點,稱爲監聽節點。
除了公共節點之外,還有許多其他不可見的隱藏節點(非監聽節點)。這些節點通常通過 Tor 等隱藏協議在防火牆後面運行,或者僅僅是因爲它們被配置爲不偵聽連接。
監聽節點(超級節點)
本質上,監聽節點或超級節點是一個公開可見的全節點。它與決定與其建立連接的任何其他節點進行通信並提供信息。因此,超級節點基本上是一個重新分發點,可以充當數據源和通信橋樑。
可靠的超級節點通常 24/7 運行,並擁有多個已建立的連接,將區塊鏈歷史和交易數據傳輸到世界各地的多個節點。因此,與隱藏的完整節點相比,超級節點可能需要更多的計算能力和更好的互聯網連接。
礦工節點
爲了能夠在當前競爭激烈的情況下開採比特幣,必須投資專門的採礦硬件和程序。這些挖掘程序(軟件)與比特幣核心沒有直接關係,而是並行執行以嘗試挖掘比特幣區塊。礦工可以選擇單獨工作(單獨礦工)或分組工作(礦池礦工)。
雖然單獨礦工的完整節點使用自己的區塊鏈副本,但礦池礦工一起工作,每個節點都貢獻自己的計算資源(算力)。在礦池中,只有礦池管理員才需要運行全節點——可以稱爲礦池礦工的全節點。
輕量級或 SPV 客戶端
輕量級客戶端也稱爲簡化支付驗證(SPV)客戶端,是利用比特幣網絡但並不真正充當完整節點的客戶端。因此,SPV 客戶端不會對網絡安全做出貢獻,因爲它們不保留區塊鏈的副本,也不參與驗證和確認交易的過程。
簡而言之,SPV是一種用戶可以檢查某個區塊中是否包含某些交易的方法,而無需下載整個區塊數據。因此,SPV 客戶端依賴於其他全節點(超級節點)提供的信息。輕量級客戶端作爲通信端點,被許多加密貨幣錢包使用。
客戶端與挖礦節點
需要注意的是,運行完整節點與運行完整挖礦節點不同。雖然礦工必須投資昂貴的挖礦硬件和軟件,但任何人都可以運行完全驗證的節點。
在嘗試開採區塊之前,礦工需要收集之前被全節點視爲有效的待處理交易。接下來,礦工創建一個候選塊(包含一組交易)並嘗試挖掘該塊。如果礦工設法爲其候選區塊找到有效的解決方案,他們會將其廣播到網絡,以便其他全節點可以驗證該區塊的有效性。因此,共識規則是由驗證節點的分佈式網絡而不是礦工確定和保護的。
結束語
比特幣節點通過比特幣P2P網絡協議相互通信,從而保證系統的完整性。行爲不當或試圖傳播不正確信息的節點會很快被誠實節點識別並與網絡斷開連接。
儘管運行完全驗證的節點不會提供經濟獎勵,但強烈建議這樣做,因爲它爲用戶提供了信任、安全和隱私。全節點確保規則得到遵守。它們保護區塊鏈免受攻擊和欺詐(例如雙重支出)。此外,全節點不需要信任其他人,它可以讓用戶完全控制自己的資金。