區(qū)塊鏈中的節(jié)點(diǎn)和主節(jié)點(diǎn)的作用是什么
我們將解釋節(jié)點(diǎn)和主節(jié)點(diǎn)的理論基礎(chǔ)。我們?nèi)绾螀⑴c,以及他們?cè)趨^(qū)塊鏈網(wǎng)絡(luò)中執(zhí)行的任務(wù)是什么。
什么是節(jié)點(diǎn)?
區(qū)塊鏈中的節(jié)點(diǎn),通常是指下載了相關(guān)加密貨幣(比特幣、Ethereum、Monero等)軟件,以參與對(duì)等網(wǎng)絡(luò)的計(jì)算機(jī)。
加密貨幣區(qū)塊鏈的結(jié)構(gòu)是對(duì)等點(diǎn)(P2P)之間的網(wǎng)絡(luò)架構(gòu)。P2P是指參與網(wǎng)絡(luò)的計(jì)算機(jī)彼此相等。P2P這個(gè)詞并不新鮮,P2P網(wǎng)絡(luò)的第一次大規(guī)模使用是由音樂(lè)文件共享網(wǎng)絡(luò)Napster完成的。
雖然Napster網(wǎng)絡(luò)一點(diǎn)也不復(fù)雜(只是一個(gè)文件共享協(xié)議),但與現(xiàn)在的區(qū)塊鏈網(wǎng)絡(luò)相比,它的基本原理是一樣的。從這個(gè)意義上說(shuō),最古老的P2P網(wǎng)絡(luò),類(lèi)似于當(dāng)前區(qū)塊鏈的工作,是SETI @ HOME網(wǎng)絡(luò)。SETI @ HOME是一個(gè)計(jì)算機(jī)網(wǎng)絡(luò),由SETI創(chuàng)建,用于分析世界各地射電望遠(yuǎn)鏡的數(shù)據(jù),分析來(lái)自射電望遠(yuǎn)鏡的數(shù)據(jù),尋找銀河系中的智能生命。人們想要參與這個(gè)網(wǎng)絡(luò),只需從它的官方網(wǎng)站下載軟件并執(zhí)行即可。
這樣,在P2P網(wǎng)絡(luò)中,參與網(wǎng)絡(luò)的每一臺(tái)計(jì)算機(jī)都可以接收節(jié)點(diǎn)的名稱。在網(wǎng)絡(luò)中,所有的節(jié)點(diǎn)都有責(zé)任提供網(wǎng)絡(luò)服務(wù)。這是因?yàn)榫W(wǎng)絡(luò)節(jié)點(diǎn)的互連性,允許進(jìn)行互操作性。
區(qū)塊鏈網(wǎng)絡(luò)是指執(zhí)行給定區(qū)塊鏈P2P協(xié)議的節(jié)點(diǎn)集。整個(gè)網(wǎng)絡(luò)以完全聯(lián)合、去中心化和分布式的方式編排和協(xié)調(diào)每個(gè)用戶在網(wǎng)絡(luò)中所做的操作。這意味著全世界的計(jì)算機(jī)網(wǎng)絡(luò)可以不斷地相互傳輸新的事務(wù)。這個(gè)網(wǎng)絡(luò)中的每臺(tái)計(jì)算機(jī)都是一個(gè)節(jié)點(diǎn),它已經(jīng)下載了完整的區(qū)塊鏈。這樣,網(wǎng)絡(luò)就變得冗余了,而協(xié)同工作使其在擴(kuò)展方面具有可伸縮性。
由于區(qū)塊鏈的分散化,任何人都可以參與其中。只需從下載節(jié)點(diǎn)軟件并執(zhí)行它即可。通常,每個(gè)項(xiàng)目的主錢(qián)包都支持此功能。最初,網(wǎng)絡(luò)從區(qū)塊鏈的起源開(kāi)始,直到與網(wǎng)絡(luò)同步為止。此時(shí),節(jié)點(diǎn)開(kāi)始全面運(yùn)行,不僅允許驗(yàn)證事務(wù),而且支持區(qū)塊鏈的整體映像。通常節(jié)點(diǎn)可以執(zhí)行以下功能:路由、區(qū)塊鏈數(shù)據(jù)庫(kù)、挖掘和錢(qián)包服務(wù)。
這些節(jié)點(diǎn)是一個(gè)區(qū)塊鏈最大數(shù)據(jù)結(jié)構(gòu)中的單個(gè)部分。當(dāng)節(jié)點(diǎn)所有者自愿貢獻(xiàn)自己的計(jì)算資源來(lái)存儲(chǔ)和驗(yàn)證事務(wù)時(shí),他們就有機(jī)會(huì)收取交易費(fèi)用,并在潛在的加密貨幣中獲得獎(jiǎng)勵(lì)。
處理這些事務(wù)可能需要大量的計(jì)算和處理能力,這意味著計(jì)算機(jī)的平均能力是不夠的。一般來(lái)說(shuō),專(zhuān)業(yè)的礦商傾向于投資被稱為CPU(中央處理單元)或GPU(圖形處理單元)的非常強(qiáng)大的計(jì)算設(shè)備,以滿足對(duì)驗(yàn)證事務(wù)所需的處理能力的需求,從而獲得相應(yīng)的回報(bào)。
節(jié)點(diǎn)可以是通信端點(diǎn),也可以是通信的重分發(fā)點(diǎn),鏈接到其他節(jié)點(diǎn)。網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都被認(rèn)為是相等的,但是,某些節(jié)點(diǎn)在支持網(wǎng)絡(luò)的方式上扮演著不同的角色。例如,并非所有節(jié)點(diǎn)都會(huì)存儲(chǔ)區(qū)塊鏈的完整副本。
一個(gè)完整的節(jié)點(diǎn)下載一個(gè)區(qū)塊鏈的完整副本,并根據(jù)該特定加密貨幣或?qū)嵱么鷰潘褂玫墓沧R(shí)協(xié)議檢查產(chǎn)生的新事務(wù)。所有節(jié)點(diǎn)都使用相同的共識(shí)協(xié)議來(lái)保持相互兼容。網(wǎng)絡(luò)中的節(jié)點(diǎn)負(fù)責(zé)確認(rèn)和驗(yàn)證事務(wù),并將它們放入塊中。對(duì)于一個(gè)事務(wù)是否有效以及是否應(yīng)該添加到帶有其他事務(wù)的塊中,不管其他節(jié)點(diǎn)如何行動(dòng),節(jié)點(diǎn)總是可以得出自己的結(jié)論。
節(jié)點(diǎn)的基本任務(wù)是什么?
當(dāng)挖掘人員或用戶試圖通過(guò)協(xié)議的某種機(jī)制向區(qū)塊鏈添加一個(gè)新的事務(wù)塊時(shí),它將該塊傳輸?shù)骄W(wǎng)絡(luò)的所有節(jié)點(diǎn)。根據(jù)塊的合法性(簽名和事務(wù)的有效性),節(jié)點(diǎn)可以接受或拒絕塊。當(dāng)一個(gè)節(jié)點(diǎn)接受一個(gè)新的事務(wù)塊時(shí),它保存它并將它存儲(chǔ)在它已經(jīng)存儲(chǔ)的其他塊上。綜上所述,節(jié)點(diǎn)的作用是:
他們可以檢查一個(gè)事務(wù)塊是否有效,并接受或拒絕它。存儲(chǔ)和存儲(chǔ)事務(wù)塊(存儲(chǔ)區(qū)塊鏈?zhǔn)聞?wù)歷史)。將此事務(wù)歷史傳輸并擴(kuò)展到可能需要與區(qū)塊鏈同步的其他節(jié)點(diǎn)(它們必須在事務(wù)歷史中更新)。
節(jié)點(diǎn)的分類(lèi)
在區(qū)塊鏈網(wǎng)絡(luò)中,傳統(tǒng)上有三種類(lèi)型的節(jié)點(diǎn),它們?cè)诰W(wǎng)絡(luò)中提供不同的功能。這些節(jié)點(diǎn)類(lèi)型為:
廣播節(jié)點(diǎn): 它們只發(fā)出事務(wù)并接收來(lái)自第三方的區(qū)塊鏈信息。它們遵循最強(qiáng)大的采礦動(dòng)力,被稱為輕錢(qián)包,廣泛應(yīng)用于移動(dòng)設(shè)備,或者僅僅被不想下載整個(gè)區(qū)塊鏈的人使用。完整節(jié)點(diǎn):安裝完整的節(jié)點(diǎn)軟件,如Bitcoin Core,除了擁有最安全的錢(qián)包,還會(huì)下載區(qū)塊鏈的一個(gè)副本,成為比特幣網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn)。因此,您將發(fā)出事務(wù),傳播網(wǎng)絡(luò)的其余部分,并驗(yàn)證是否滿足一致規(guī)則。挖掘節(jié)點(diǎn):除了操作他們喜歡的軟件挖掘器(BTCMiner, CGMiner)之外,挖掘器必須具有區(qū)塊鏈的副本。這些節(jié)點(diǎn)除了挖掘比特幣,從而幫助創(chuàng)建新的區(qū)塊外,還會(huì)發(fā)布和傳播交易。
節(jié)點(diǎn)有多安全?
節(jié)點(diǎn)可以是聯(lián)機(jī)的,也可以是脫機(jī)的。在線節(jié)點(diǎn)接收、保存和從其他節(jié)點(diǎn)傳輸事務(wù)的所有最后塊,而沒(méi)有連接的節(jié)點(diǎn)則不會(huì)。當(dāng)脫機(jī)節(jié)點(diǎn)重新聯(lián)機(jī)時(shí),它首先必須通過(guò)下載自該節(jié)點(diǎn)斷開(kāi)后添加到區(qū)塊鏈的所有塊來(lái)趕上區(qū)塊鏈的其余部分。這個(gè)過(guò)程通常稱為區(qū)塊鏈同步。
理論上,一個(gè)完整的區(qū)塊鏈可以在單個(gè)節(jié)點(diǎn)上執(zhí)行,但由于它將存儲(chǔ)在單個(gè)設(shè)備中,因此非常容易受到斷電、黑客或系統(tǒng)故障等情況的影響。在區(qū)塊鏈中運(yùn)行的完整節(jié)點(diǎn)越多,它們?cè)诿鎸?duì)此類(lèi)災(zāi)難時(shí)的恢復(fù)能力就越強(qiáng)。當(dāng)區(qū)塊鏈的數(shù)據(jù)分布在如此多的設(shè)備上時(shí),對(duì)于一個(gè)損壞的實(shí)體來(lái)說(shuō),一次刪除所有這些數(shù)據(jù)是非常困難的。由于全球危機(jī),大量節(jié)點(diǎn)突然下降并變得不可訪問(wèn),從理論上講,單個(gè)節(jié)點(diǎn)可以保持整個(gè)區(qū)塊鏈的運(yùn)行。即使所有節(jié)點(diǎn)都斷開(kāi)連接,也只需要一個(gè)具有完整區(qū)塊鏈歷史記錄的節(jié)點(diǎn)就可以重新聯(lián)機(jī)并使所有數(shù)據(jù)都可以再次訪問(wèn)。
這些節(jié)點(diǎn)也容易受到計(jì)算機(jī)攻擊,這可能會(huì)改變它們的功能。例如,一個(gè)盜版者可以侵犯該軟件的安全性,并且在不改變區(qū)塊鏈數(shù)據(jù)的情況下,它可以將該節(jié)點(diǎn)的利潤(rùn)重定向到與其所有者編寫(xiě)的不同地址。竊取地址攻擊是這類(lèi)軟件最常見(jiàn)的攻擊類(lèi)型,這就是為什么開(kāi)發(fā)人員建議使用他們的區(qū)塊鏈軟件的更新版本。
這些安全缺陷中很容易解決,可以使用一些計(jì)算機(jī)安全常識(shí),或者使用創(chuàng)建安全機(jī)制的軟件工具將區(qū)塊鏈軟件與計(jì)算機(jī)系統(tǒng)的其他部分隔離開(kāi)來(lái)。這些措施包括:
使用官方或開(kāi)發(fā)人員的軟件,并有一個(gè)長(zhǎng)期和證明的記錄。保護(hù)區(qū)塊鏈中我們活動(dòng)的私鑰、助記符密鑰和任何其他特權(quán)信息。僅為我們的采礦活動(dòng)使用計(jì)算機(jī)或電子設(shè)備。使用沙箱軟件將軟件應(yīng)用程序與系統(tǒng)的其他部分隔離開(kāi)來(lái)。使用MAC(強(qiáng)制訪問(wèn)控制)系統(tǒng)特權(quán),這些特權(quán)允許我們以對(duì)操作系統(tǒng)和其他系統(tǒng)api的最低訪問(wèn)權(quán)限運(yùn)行我們的區(qū)塊鏈軟件(這種隔離大于沙箱)。
什么是主節(jié)點(diǎn)?
主節(jié)點(diǎn)是當(dāng)前某些區(qū)塊鏈的獨(dú)特特征。主節(jié)點(diǎn)通常比普通節(jié)點(diǎn)裝備更多。除了驗(yàn)證、保存和傳輸事務(wù)之外,有時(shí)主節(jié)點(diǎn)還根據(jù)其性質(zhì)促進(jìn)區(qū)塊鏈中的其他事件,例如投票事件、協(xié)議操作的執(zhí)行和遵守區(qū)塊鏈的法律。主節(jié)點(diǎn)通常總是聯(lián)機(jī)的,并且提供比普通節(jié)點(diǎn)多得多的內(nèi)存。因?yàn)橹鞴?jié)點(diǎn)的住所通常需要更多的資源(電力、正常運(yùn)行時(shí)間、維護(hù)、存儲(chǔ)空間、內(nèi)存),所以住所通常以利息的形式提供支付。
然而,并不是每個(gè)人都能運(yùn)行主節(jié)點(diǎn)。控制主節(jié)點(diǎn)的能力可能會(huì)被濫用,因此需要主機(jī)存儲(chǔ)最少(通常相當(dāng)大)數(shù)量的加密貨幣作為抵押品。當(dāng)主節(jié)點(diǎn)主機(jī)違反了區(qū)塊鏈的規(guī)則時(shí),這就被當(dāng)做保證金。主節(jié)點(diǎn)主機(jī)接收的利率是根據(jù)您的保證金計(jì)算的。保留的這些錢(qián)中,取決于主節(jié)點(diǎn)所有者的收益,該收益由所涉及的主節(jié)點(diǎn)集處理的所有事務(wù)和操作的百分比來(lái)衡量。DASH和以太坊等項(xiàng)目在其結(jié)構(gòu)中使用和創(chuàng)建主節(jié)點(diǎn)。