我需要運行自己的節點嗎?

我需要運行自己的節點嗎?

我們都聽說過全節點數量越多,網絡安全性越高,也就越去中心化。對於用戶來說,運行一個全節點也就擁有更多的自主權和安全性。因此有些用戶就會選擇自己運行一個完整節點。但是真的需要人人都去運行自己的全節點嗎?

對於BCH來說,網絡節點分成三類:挖礦節點、不參與挖礦的完整節點和SPV節點。挖礦節點包含了BCH網絡的所有功能,通過運行Bitcoin ABC這樣的節點軟件和礦池軟件並運用礦機來競爭獲得生產區塊打包交易的機會。不參與挖礦的完整節點則是使用服務器或普通電腦運行的Bitcoin ABC/Bitcoin Unlimited這樣的節點軟件來驗證交易。與挖礦節點相比,後者除了不生產任何區塊,其他功能和前者一樣。而SPV節點則一般是用手機或電腦安裝的錢包軟件,比如Breadwallet,比太這樣的就是app,主要是通過完整區塊鏈節點和本地區塊頭來驗證交易並具有錢包功能。

對於很多用戶來說,運行這些全節點最大的功能可能不是維護這個網絡的健康,而是它內建的錢包功能。從上面的節點分類可以看出,對於僅使用錢包功能的用戶來說即使不運行完整節點使用SPV節點也是可以的。其次,運行一個全節點還需要一定的成本。首先需要一定大容量的硬盤和運行空間,其次還需要一定速度的帶寬。尤其是比特幣現金因為區塊比較大,每個區塊所處理交易量也會比較大,所需的存儲空間也是比較大的。為了解決BCH因為區塊過大造成的節點存儲問題,BCH社區還在積極開發UTXO證明。因此從用戶角度來說單純的為了錢包功能而運行全節點是不經濟,也沒有必要的,為了安全性用戶保存好自己的私鑰就可以了。

從全網的安全性和去中心化的角度來說,雖然全節點數量越多,安全性和去中心化的程度也越高,但是普通用戶的全節點對去中心化無益。沒有算力的節點去驗證和自己無關的交易是沒有意義的,即使驗證了也做不了任何事情來改變這個網絡,最終還是要選擇跟隨算力挖出來的鏈,這種效果和 SPV 錢包是一樣的。關於這個問題中本聰也曾經表示:把“普通用戶”和“擁有服務器集群的專業人士”區分來開。初期沒有用戶的時候,所有人都運行節點,用CPU挖礦。但是成熟以後,普通用戶只需要運行SPV錢包(輕錢包),而把運行節點的工作交給“擁有特殊設備的服務器集群”,因為他們“嘗試獲得新幣”。也就是說,比特幣這個網絡的去中心化,只是存在於礦池和礦池之間的這個網絡裡,和沒有算力的用戶沒什麼關係。沒有算力的用戶,也不需要運行比特幣節點。而且當節點數量達到一定的值的時候,去中心化的安全性就足夠了,把節點從1萬個加到10萬個,甚至100萬個,把去中心化安全性從 99.9999%提高到 99.999999%是沒有意義的。

因此,雖然BCH社區推出了UTXO證明來解決BCH的節點存儲問題,能夠讓每一個人都可以運行一個屬於自己的節點,但是這並不意味著我們每一個人都需要運行自己的節點。不管是從全網的角度來看,還是個人角度來看都是不必要的。


分享到:


相關文章: