本發(fā)明涉及區(qū)塊鏈技術領域,尤其涉及一種管理節(jié)點的方法和系統。
背景技術:
區(qū)塊鏈是融合分布式存儲、點對點數據傳輸、共識機制、加密算法等計算機技術的集成創(chuàng)新應用模式。按照應用范圍和節(jié)點準入對象的不同,區(qū)塊鏈可分為公有鏈、私有鏈及聯盟鏈。對于聯盟鏈來說,管理區(qū)塊鏈中的節(jié)點一般利用配置文件來進行節(jié)點的準入認證和角色定義,即在系統啟動之初,便在各節(jié)點的配置文件中規(guī)劃好節(jié)點的角色,節(jié)點按照配置文件的配置加入到區(qū)塊鏈網絡中運行。
在實現本發(fā)明的過程中,發(fā)明人發(fā)現現有技術至少存在以下問題:
1.上述采用靜態(tài)的配置文件來管理節(jié)點的方式,需要在系統啟動之初便做好整個聯盟鏈網絡的規(guī)劃,這樣不利于新節(jié)點的接入和已有節(jié)點的退出,缺乏擴展性。
2.上述采用配置文件管理節(jié)點的方式,將準入認證和角色定義在同一步驟完成,不利于節(jié)點信息的動態(tài)維護。
3.現有技術中,配置文件采用明文方式記錄在節(jié)點的文件系統中,容易被非法訪問,造成信息泄露。如果配置文件被篡改,輕則造成各節(jié)點數據不一致,重則可能導致區(qū)塊鏈平臺不可用。
技術實現要素:
有鑒于此,本發(fā)明實施例提供一種管理節(jié)點的方法和系統,能夠以智能合約的方式實現區(qū)塊鏈網絡中各節(jié)點的動態(tài)管理,確保各節(jié)點的數據一致,提高系統的安全性與可擴展性。
為實現上述目的,根據本發(fā)明的一個方面,提供了一種管理節(jié)點的方法。
本發(fā)明實施例的管理節(jié)點的方法包括:區(qū)塊鏈存儲智能合約;其中,所述智能合約在區(qū)塊鏈網絡中達成共識,并確定至少一種管理權限、以及在任一管理權限下可使用的至少一個節(jié)點處理指令;使用任一節(jié)點處理指令對所述區(qū)塊鏈網絡中的節(jié)點進行角色定義,或對所述區(qū)塊鏈網絡中的節(jié)點進行信息獲取。
可選地,所述區(qū)塊鏈存儲智能合約包括:區(qū)塊鏈的創(chuàng)世塊存儲智能合約。
可選地,所述節(jié)點包括共識節(jié)點及非共識節(jié)點,所述共識節(jié)點包括處于就緒狀態(tài)的共識節(jié)點、及處于激活狀態(tài)的共識節(jié)點,所述管理權限包括管理員權限與普通權限。
可選地,所述區(qū)塊鏈的創(chuàng)世塊存儲智能合約包括:在所述創(chuàng)世塊生成時,在所述區(qū)塊鏈網絡的節(jié)點中指定第一節(jié)點及預設數量的初始共識節(jié)點;將第一節(jié)點的賬戶地址、以及初始共識節(jié)點的賬戶地址寫入創(chuàng)世配置文件;其中,第一節(jié)點具有管理員權限,初始共識節(jié)點為具有普通權限的共識節(jié)點;在所述創(chuàng)世塊生成之后,將所述智能合約部署到所述創(chuàng)世塊中。
可選地,在管理員權限下可使用的節(jié)點處理指令為以下指令中的一個或多個:增加指令、確認指令、暫停指令、刪除指令、管理員增加指令、管理員判斷指令、列表獲取指令、以及狀態(tài)判斷指令。
可選地,在普通權限下可使用的節(jié)點處理指令為以下指令中的一個或多個:管理員判斷指令、列表獲取指令、以及狀態(tài)判斷指令。
可選地,使用任一節(jié)點處理指令對所述區(qū)塊鏈網絡中的節(jié)點進行角色定義包括:執(zhí)行增加指令將非共識節(jié)點修改為處于就緒狀態(tài)的共識節(jié)點;或執(zhí)行確認指令將處于就緒狀態(tài)的共識節(jié)點修改為處于激活狀態(tài)的共識節(jié)點;或執(zhí)行暫停指令將處于激活狀態(tài)的共識節(jié)點修改為處于就緒狀態(tài)的共識節(jié)點;或執(zhí)行刪除指令將處于就緒狀態(tài)的共識節(jié)點修改為非共識節(jié)點;或執(zhí)行管理員增加指令將具有普通權限的節(jié)點修改為具有管理員權限的節(jié)點。
可選地,在所述使用任一節(jié)點處理指令對所述區(qū)塊鏈網絡中的節(jié)點進行角色定義之后,所述方法進一步包括:將角色定義信息在所述區(qū)塊鏈網絡中進行同步。
可選地,使用任一節(jié)點處理指令對所述區(qū)塊鏈網絡中的節(jié)點進行信息獲取包括:執(zhí)行管理員判斷指令判斷節(jié)點是否具有管理員權限;或執(zhí)行列表獲取指令獲取由當前所有的共識節(jié)點組成的共識節(jié)點列表;或執(zhí)行狀態(tài)判斷指令判斷節(jié)點為非共識節(jié)點、或處于就緒狀態(tài)的共識節(jié)點、或處于激活狀態(tài)的共識節(jié)點。
為實現上述目的,根據本發(fā)明的另一方面,提供了一種管理節(jié)點的系統。
本發(fā)明實施例的管理節(jié)點的系統可包括:存儲單元,可用于存儲智能合約;其中,所述智能合約在區(qū)塊鏈網絡中達成共識,并確定至少一種管理權限、以及在任一管理權限下可使用的至少一個節(jié)點處理指令;所述存儲單元在區(qū)塊鏈中;節(jié)點管理單元,可用于使用任一節(jié)點處理指令對所述區(qū)塊鏈網絡中的節(jié)點進行角色定義,或對所述區(qū)塊鏈網絡中的節(jié)點進行信息獲取。
可選地,所述節(jié)點包括共識節(jié)點及非共識節(jié)點,所述管理權限包括管理員權限與普通權限。
可選地,所述存儲單元可用于:在所述區(qū)塊鏈的創(chuàng)世塊生成時,在所述區(qū)塊鏈網絡的節(jié)點中指定第一節(jié)點及預設數量的初始共識節(jié)點;將第一節(jié)點的賬戶地址、以及初始共識節(jié)點的賬戶地址寫入創(chuàng)世配置文件;其中,第一節(jié)點具有管理員權限,初始共識節(jié)點為具有普通權限的共識節(jié)點;在所述創(chuàng)世塊生成之后,將所述智能合約部署到所述創(chuàng)世塊中。
可選地,在管理員權限下可使用的節(jié)點處理指令為以下指令中的一個或多個:增加指令、確認指令、暫停指令、刪除指令、管理員增加指令、管理員判斷指令、列表獲取指令、以及狀態(tài)判斷指令;以及在普通權限下可使用的節(jié)點處理指令為以下指令中的一個或多個:管理員判斷指令、列表獲取指令、以及狀態(tài)判斷指令。
為實現上述目的,根據本發(fā)明的再一方面,提供了一種計算機可讀存儲介質。
本發(fā)明的計算機可讀存儲介質中存儲有計算機指令,所述計算機指令能夠被計算機或計算機系統運行,從而使該計算機或計算機系統能夠執(zhí)行所述管理節(jié)點的方法。
根據本發(fā)明的技術方案,上述發(fā)明中的一個實施例具有如下優(yōu)點或有益效果:通過在區(qū)塊鏈中部署利用各種節(jié)點處理指令管理節(jié)點的智能合約,實現動態(tài)的節(jié)點角色定義與信息獲取,便于新節(jié)點的接入與已有節(jié)點的退出,同時能夠確保各節(jié)點數據的一致性,克服現有技術中節(jié)點管理方式僵化、系統擴展性差的缺陷;由于不需要通過配置文件進行節(jié)點管理,避免因配置文件被非法訪問或篡改而導致的信息泄露,提高系統安全性;通過將節(jié)點的準入認證步驟與角色定義步驟分離,有利于節(jié)點信息的動態(tài)維護。
上述的非慣用的可選方式所具有的進一步效果將在下文中結合具體實施方式加以說明。
附圖說明
附圖用于更好地理解本發(fā)明,不構成對本發(fā)明的不當限定。其中:
圖1是根據本發(fā)明實施例的管理節(jié)點的方法的主要步驟示意圖;
圖2是根據本發(fā)明實施例的管理節(jié)點的系統的主要部分的示意圖。
具體實施方式
以下結合附圖對本發(fā)明的示范性實施例做出說明,其中包括本發(fā)明實施例的各種細節(jié)以助于理解,應當將它們認為僅僅是示范性的。因此,本領域普通技術人員應當認識到,可以對這里描述的實施例做出各種改變和修改,而不會背離本發(fā)明的范圍和精神。同樣,為了清楚和簡明,以下的描述中省略了對公知功能和結構的描述。
區(qū)塊鏈是融合分布式存儲、點對點數據傳輸、共識機制、加密算法等計算機技術的集成創(chuàng)新應用模式。通俗來說,區(qū)塊鏈是一種信息資源的組織結構,邏輯上為一個或一個以上區(qū)塊形成的鏈表,區(qū)塊用于存儲一個或一個以上的信息資源如智能合約,基于區(qū)塊鏈的分布式網絡(以下稱為區(qū)塊鏈網絡)中的每個節(jié)點都保存有相同的區(qū)塊鏈,而區(qū)塊鏈網絡由保存有區(qū)塊鏈的上述節(jié)點組成。
按照應用范圍和節(jié)點準入對象的不同,區(qū)塊鏈可分為公有鏈、私有鏈及聯盟鏈。其中:公有鏈對互聯網上的所有人開放,例如比特幣、以太坊。私有鏈一般用于組織內部,不對其他人開放。聯盟鏈對特定的組織和機構開放,例如在銀行金融體系中,聯盟鏈僅由商業(yè)銀行作為參與方,不允許其它機構訪問。在聯盟鏈網絡中,進行數據驗證的節(jié)點稱為共識節(jié)點,其它僅進行數據同步的節(jié)點稱為非共識節(jié)點。
本發(fā)明實施例的技術方案通過在區(qū)塊鏈中部署利用各種節(jié)點處理指令管理節(jié)點的智能合約,實現動態(tài)的節(jié)點角色定義與信息獲取,便于新節(jié)點的接入與已有節(jié)點的退出,同時能夠確保各節(jié)點數據的一致性,克服現有技術中節(jié)點管理方式僵化、系統擴展性差的缺陷;由于不需要通過配置文件進行節(jié)點管理,避免因配置文件被非法訪問或篡改而導致的信息泄露,提高系統安全性;通過將節(jié)點的準入認證步驟與角色定義步驟分離,有利于節(jié)點信息的動態(tài)維護。
圖1是根據本發(fā)明實施例的管理節(jié)點的方法的主要步驟的示意圖。
如圖1所示,本發(fā)明實施例的管理節(jié)點的方法主要包括如下步驟:
步驟s101:區(qū)塊鏈存儲智能合約。
在區(qū)塊鏈特別是聯盟鏈的運行場景中,需要保證監(jiān)管方能具有一定的權限對區(qū)塊鏈網絡中的節(jié)點進行管理,例如增加共識節(jié)點、刪除共識節(jié)點、增加具有管理員權限的節(jié)點等。同時,為了實現各類動態(tài)的算法,需要實時讀取由當前所有的共識節(jié)點組成的共識節(jié)點列表。在本步驟中,采用智能合約來管理節(jié)點,能夠保證各節(jié)點的數據一致性與安全性。
智能合約是運行在區(qū)塊鏈平臺上的一段程序代碼,采用智能合約的形式來管理節(jié)點,可以保證區(qū)塊鏈中的共識節(jié)點按照智能合約的約定執(zhí)行并獲得相同的結果,進而使區(qū)塊鏈網絡中的所有節(jié)點按照同樣的規(guī)則實現數據的同步。
根據實現方式的不同,智能合約可分為系統合約和普通合約。系統合約部署在區(qū)塊鏈的創(chuàng)世塊中,由節(jié)點的應用軟件包提供,為用戶提供系統管理、隱私證明驗證等特殊功能。而普通合約可以在區(qū)塊鏈運行過程中的任意時間由用戶編寫部署。
在本發(fā)明實施例中,在區(qū)塊鏈的創(chuàng)世塊中存儲智能合約,該智能合約為系統合約。由于該智能合約存儲在區(qū)塊鏈創(chuàng)世塊中,因此區(qū)塊鏈網絡中的所有節(jié)點都存儲該智能合約,并利用該智能合約進行節(jié)點管理。同時,管理節(jié)點形成的更改信息可一致地同步到各節(jié)點,保證了數據的一致性與安全性。
為了對區(qū)塊鏈網絡中的節(jié)點進行動態(tài)管理,智能合約確定了至少一種管理權限以及在任一管理權限下可使用的至少一個節(jié)點處理指令。實際應用中,管理權限可包括管理員權限與普通權限,管理員權限一般對應于監(jiān)管方,普通權限一般對應于普通用戶。
在本發(fā)明優(yōu)選實施例中,在管理員權限下可使用的節(jié)點處理指令為以下指令中的一個或多個:增加指令、確認指令、暫停指令、刪除指令、管理員增加指令、管理員判斷指令、列表獲取指令、狀態(tài)判斷指令。下面分別予以介紹:
增加指令用于將非共識節(jié)點修改為處于就緒狀態(tài)的共識節(jié)點,該指令采用add方法,傳入參數為待處理節(jié)點的賬戶地址,返回布爾值:0表示修改失敗,1表示修改成功。節(jié)點的賬戶地址指的是該節(jié)點在區(qū)塊鏈網絡中的賬戶的地址,一般來說,賬戶地址與賬戶公鑰一一對應。
確認指令用于將處于就緒狀態(tài)的共識節(jié)點修改為處于激活狀態(tài)的共識節(jié)點,該指令采用start方法,傳入參數為待處理節(jié)點的賬戶地址,返回布爾值:0表示修改失敗,1表示修改成功。
暫停指令用于將處于激活狀態(tài)的共識節(jié)點修改為處于就緒狀態(tài)的共識節(jié)點,該指令采用pause方法,傳入參數為待處理節(jié)點的賬戶地址,返回布爾值:0表示修改失敗,1表示修改成功。
刪除指令用于將處于就緒狀態(tài)的共識節(jié)點修改為非共識節(jié)點,該指令采用remove方法,傳入參數為待處理節(jié)點的賬戶地址,返回布爾值:0表示修改失敗,1表示修改成功。
管理員增加指令用于將具有普通權限的節(jié)點修改為具有管理員權限的節(jié)點,該指令采用addadmin方法,傳入參數為待處理節(jié)點的賬戶地址或中間合約的存儲地址,返回布爾值:0表示修改失敗,1表示修改成功。特別地,中間合約為系統提供的可調用程序,用戶可基于中間合約進行節(jié)點的管理。當用戶通過中間合約工作時,所有通過該中間合約調用的操作,都被視為用戶操作。此外,在實際應用中,只有通過管理員增加指令修改的節(jié)點才具有管理員權限。
具體應用中,通過管理員增加指令增加具有管理員權限的節(jié)點后,不能刪除該節(jié)點的管理員權限。而如果要將節(jié)點修改為處于激活狀態(tài)的共識節(jié)點,首先必須將其變成處于就緒狀態(tài)的共識節(jié)點。如果要將處于激活狀態(tài)的共識節(jié)點刪除,首先必須將其變成處于就緒狀態(tài)的共識節(jié)點。
這樣,在本發(fā)明實施例中,具有管理員權限的節(jié)點可通過上述增加指令、確認指令、暫停指令、刪除指令、管理員增加指令靈活地實現節(jié)點的角色定義,動態(tài)地增加、刪除動態(tài)節(jié)點,便捷地增加具有管理員權限的節(jié)點。上述角色定義指的是通過上述增加指令、確認指令、暫停指令、刪除指令、管理員增加指令改變節(jié)點角色的過程。節(jié)點角色包括:非共識節(jié)點、處于激活狀態(tài)的共識節(jié)點、處于就緒狀態(tài)的共識節(jié)點、具有管理員權限的節(jié)點或具有普通權限的節(jié)點。
在本發(fā)明實施例中,具有管理權限的節(jié)點還可通過管理員判斷指令、列表獲取指令、狀態(tài)判斷指令進行信息獲取。所述信息獲取指的是獲取共識節(jié)點列表、判斷節(jié)點是否具有管理員權限、或判斷節(jié)點為非共識節(jié)點或處于就緒狀態(tài)的共識節(jié)點或處于激活狀態(tài)的共識節(jié)點。具體來說:
管理員判斷指令用于判斷節(jié)點是否具有管理員權限,該指令采用isadmin只讀方法,傳入參數為待處理節(jié)點的賬戶地址或中間合約的存儲地址,返回布爾值:0表示不具有管理員權限,1表示具有管理員權限。
列表獲取指令用于獲取由當前所有的共識節(jié)點組成的共識節(jié)點列表,該指令采用list只讀方法,傳入參數為表示共識節(jié)點狀態(tài)的整數1或2,1表示處于就緒狀態(tài)的共識節(jié)點,2表示處于激活狀態(tài)的共識節(jié)點。當傳入1后,返回處于就緒狀態(tài)的共識節(jié)點的賬戶地址拼接的字符串,將該字符串按照賬戶地址固定長度——一般為40位——進行分割,即可獲得每一個處于就緒狀態(tài)的共識節(jié)點的賬戶地址。當傳入2后,返回處于激活狀態(tài)的共識節(jié)點的賬戶地址拼接的字符串,將該字符串按照賬戶地址固定長度——一般為40位——進行分割,即可獲得每一個處于激活狀態(tài)的共識節(jié)點的賬戶地址。結合每一個處于就緒狀態(tài)的共識節(jié)點的賬戶地址、以及每一個處于激活狀態(tài)的共識節(jié)點的賬戶地址即可獲得包含當前每個共識節(jié)點賬戶地址的共識節(jié)點列表。
特別地,在本發(fā)明實施例中,只有存在于所述共識節(jié)點列表的節(jié)點才是共識節(jié)點,其簽名打包的區(qū)塊才是合法區(qū)塊。
狀態(tài)判斷指令用于判斷節(jié)點為非共識節(jié)點或處于就緒狀態(tài)的共識節(jié)點或處于激活狀態(tài)的共識節(jié)點。該指令采用check只讀方法,傳入參數為待處理節(jié)點的賬戶地址,返回整數0、1、或2:0表示待處理節(jié)點為非共識節(jié)點,1表示待處理節(jié)點為處于就緒狀態(tài)的共識節(jié)點,2表示待處理節(jié)點為處于激活狀態(tài)的共識節(jié)點。
需要說明的是,節(jié)點處理指令處理的是已通過準入驗證的節(jié)點,這樣,本發(fā)明實施例的管理節(jié)點的方法將節(jié)點的準入認證步驟與角色定義步驟分離,有利于節(jié)點信息的動態(tài)維護。
在本發(fā)明優(yōu)選實施例中,管理員判斷指令、列表獲取指令、狀態(tài)判斷指令為在普通權限下可使用的節(jié)點操作指令??梢姡谄胀嘞尴轮豢蓪崿F查詢功能,無法通過增加指令、確認指令、暫停指令、刪除指令、管理員增加指令進行節(jié)點角色定義。
特別地,在步驟s101中,所述智能合約在區(qū)塊鏈網絡中達成共識。所述達成共識指的是智能合約在區(qū)塊鏈網絡中的一個節(jié)點部署之后,獲得區(qū)塊鏈網絡中的所有共識節(jié)點的驗證通過,并同步存儲在區(qū)塊鏈網絡的所有節(jié)點。
具體應用中,智能合約可以部署在創(chuàng)世塊中,這樣區(qū)塊鏈網絡中各節(jié)點在區(qū)塊鏈運行時即達成共識。智能合約也可以部署在創(chuàng)世塊之后的區(qū)塊中,區(qū)塊鏈網絡中的共識節(jié)點對其驗證通過后可達成共識。
在本發(fā)明實施例中,步驟s101可按照以下步驟執(zhí)行:
1.建立智能合約,智能合約的存儲地址一般在節(jié)點應用發(fā)布時確定。
2.在區(qū)塊鏈的創(chuàng)世塊生成時,在區(qū)塊鏈網絡的節(jié)點中指定第一節(jié)點及預設數量的初始共識節(jié)點,將第一節(jié)點的賬戶地址以及初始共識節(jié)點的賬戶地址寫入創(chuàng)世配置文件,開始區(qū)塊鏈的初始化。其中:第一節(jié)點具有管理員權限,初始共識節(jié)點為具有普通權限的共識節(jié)點,預設數量可根據應用環(huán)境靈活設置,例如:可將預設數量設置為3。
3.區(qū)塊鏈初始化完成后,啟動區(qū)塊鏈,將智能合約部署到創(chuàng)世塊。
特別地,在區(qū)塊鏈運行后,創(chuàng)世塊中的內容無法更改,因此第一節(jié)點的賬戶地址無法變更。
步驟s102:使用節(jié)點處理指令對所述區(qū)塊鏈網絡中的節(jié)點進行角色定義或信息獲取。在本步驟中,可根據節(jié)點具有的權限進行節(jié)點管理:具有管理員權限的節(jié)點可通過增加指令、確認指令、暫停指令、刪除指令、管理員增加指令進行節(jié)點的角色定義;通過管理員判斷指令、列表獲取指令、狀態(tài)判斷指令進行信息獲取。具有普通權限的節(jié)點可通過管理員判斷指令、列表獲取指令、狀態(tài)判斷指令進行信息獲取。
較佳地,在本發(fā)明實施例中,通過增加指令、確認指令、暫停指令、刪除指令、或管理員增加指令獲得的角色定義信息在區(qū)塊鏈網絡中進行同步。所述在區(qū)塊鏈網絡中進行同步指的是在區(qū)塊鏈網絡的每個節(jié)點的相應區(qū)塊同步存儲。角色定義信息指的是通過增加指令、確認指令、暫停指令、刪除指令、或管理員增加指令獲得的節(jié)點角色變更的信息。例如:使用增加指令獲得的新增的處于就緒狀態(tài)的共識節(jié)點的信息、以及減少的非共識節(jié)點的信息即為角色定義信息。
實際應用中,一個非共識節(jié)點如果希望成為共識節(jié)點,首先需要將其賬戶地址提交到具有管理權限的節(jié)點,具有管理權限的節(jié)點通過增加指令及確認指令將其增加后,將角色定義信息同步到其它節(jié)點,當各節(jié)點的區(qū)塊數據同步完成后該非共識節(jié)點即成為共識節(jié)點。
需要說明的是,本發(fā)明實施例的管理節(jié)點的方法不僅可應用于聯盟鏈中,也可應用于其它區(qū)塊鏈中。
根據本發(fā)明實施例的管理節(jié)點的方法可以看出,因為采用在區(qū)塊鏈中部署利用各種節(jié)點處理指令管理節(jié)點的智能合約的技術手段,所以實現動態(tài)的節(jié)點角色定義與信息獲取,便于新節(jié)點的接入與已有節(jié)點的退出,同時能夠確保各節(jié)點數據的一致性,克服現有技術中節(jié)點管理方式僵化、系統擴展性差的缺陷;由于不需要通過配置文件進行節(jié)點管理,從而避免因配置文件被非法訪問或篡改而導致的信息泄露,提高系統安全性;通過將節(jié)點的準入認證步驟與角色定義步驟分離,有利于節(jié)點信息的動態(tài)維護。
圖2是根據本發(fā)明實施例的管理節(jié)點的系統200的主要部分的示意圖。
如圖2所示,本發(fā)明實施例的管理節(jié)點的系統200可包括:存儲單元201以及節(jié)點管理單元202。其中:
存儲單元201,可用于存儲智能合約;其中,所述智能合約在區(qū)塊鏈網絡中達成共識,并確定至少一種管理權限、以及在任一管理權限下可使用的至少一個節(jié)點處理指令。存儲單元201在區(qū)塊鏈中。
節(jié)點管理單元202,可用于通過任一節(jié)點處理指令對所述區(qū)塊鏈網絡中的節(jié)點進行角色定義,或對所述區(qū)塊鏈網絡中的節(jié)點進行信息獲取。
較佳地,所述節(jié)點包括共識節(jié)點及非共識節(jié)點,所述管理權限包括管理員權限與普通權限。
在本發(fā)明實施例中,所述存儲單元201可用于:在所述區(qū)塊鏈的創(chuàng)世塊生成時,在所述區(qū)塊鏈網絡的節(jié)點中指定第一節(jié)點及預設數量的初始共識節(jié)點;將第一節(jié)點的賬戶地址、以及初始共識節(jié)點的賬戶地址寫入創(chuàng)世配置文件;其中,第一節(jié)點具有管理員權限,初始共識節(jié)點為具有普通權限的共識節(jié)點;在所述創(chuàng)世塊生成之后,將所述智能合約部署到所述創(chuàng)世塊中。
此外,在本發(fā)明實施例中,在管理員權限下可使用的節(jié)點處理指令為以下指令中的一個或多個:增加指令、確認指令、暫停指令、刪除指令、管理員增加指令、管理員判斷指令、列表獲取指令、以及狀態(tài)判斷指令;在普通權限下可使用的節(jié)點處理指令為以下指令中的一個或多個:管理員判斷指令、列表獲取指令、以及狀態(tài)判斷指令。
從以上描述可以看出,因為采用在區(qū)塊鏈中部署利用各種節(jié)點處理指令管理節(jié)點的智能合約的技術手段,所以實現動態(tài)的節(jié)點角色定義與信息獲取,便于新節(jié)點的接入與已有節(jié)點的退出,同時能夠確保各節(jié)點數據的一致性,克服現有技術中節(jié)點管理方式僵化、系統擴展性差的缺陷;由于不需要通過配置文件進行節(jié)點管理,從而避免因配置文件被非法訪問或篡改而導致的信息泄露,提高系統安全性;通過將節(jié)點的準入認證步驟與角色定義步驟分離,有利于節(jié)點信息的動態(tài)維護。
上述具體實施方式,并不構成對本發(fā)明保護范圍的限制。本領域技術人員應該明白的是,取決于設計要求和其他因素,可以發(fā)生各種各樣的修改、組合、子組合和替代。任何在本發(fā)明的精神和原則之內所作的修改、等同替換和改進等,均應包含在本發(fā)明保護范圍之內。