最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

區(qū)塊鏈的節(jié)點(diǎn)連接方法及裝置與流程

文檔序號(hào):12493088閱讀:1199來源:國知局
區(qū)塊鏈的節(jié)點(diǎn)連接方法及裝置與流程

本發(fā)明涉及區(qū)塊鏈技術(shù)領(lǐng)域,尤其涉及一種區(qū)塊鏈的節(jié)點(diǎn)連接方法及裝置。



背景技術(shù):

現(xiàn)有技術(shù)中,當(dāng)區(qū)塊鏈有新節(jié)點(diǎn)與該鏈上其它節(jié)點(diǎn)的創(chuàng)世塊文件和網(wǎng)絡(luò)ID一致時(shí),則可與該區(qū)塊鏈上的任意節(jié)點(diǎn)建立連接。也就是說,現(xiàn)有技術(shù)中,對(duì)節(jié)點(diǎn)的加入無資質(zhì)審核過程,任意能訪問區(qū)塊鏈網(wǎng)絡(luò)的節(jié)點(diǎn)都可以自由發(fā)起連接,然后進(jìn)行拉取數(shù)據(jù)與在該區(qū)塊鏈上發(fā)送交易的操作。顯然,這種節(jié)點(diǎn)的連接方式,安全性較低。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的主要目的在于提出一種區(qū)塊鏈的節(jié)點(diǎn)連接方法及裝置,旨在解決現(xiàn)有的節(jié)點(diǎn)連接方式,安全性較低的技術(shù)問題。

為實(shí)現(xiàn)上述目的,本發(fā)明提供的一種區(qū)塊鏈的節(jié)點(diǎn)連接方法,所述節(jié)點(diǎn)連接方法包括:

第一節(jié)點(diǎn)在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息;

若所述ID信息預(yù)存在所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息;

根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn);

在所述簽名數(shù)組校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)建立連接關(guān)系。

優(yōu)選地,所述握手協(xié)議的發(fā)送方式為:所述第二節(jié)點(diǎn)對(duì)自身的配置信息進(jìn)行哈希計(jì)算得到第一哈希值;根據(jù)預(yù)存的私鑰對(duì)所述第一哈希值進(jìn)行簽名得到簽名數(shù)組;將所述簽名數(shù)組添加到包含自身ID信息的握手協(xié)議中以發(fā)送。

優(yōu)選地,所述根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn)的步驟包括:

所述第一節(jié)點(diǎn)對(duì)所述第二節(jié)點(diǎn)的配置信息進(jìn)行哈希計(jì)算,得到第二哈希值;

通過所述私鑰對(duì)應(yīng)的公鑰對(duì)提取的所述簽名數(shù)組進(jìn)行解密,以得到所述第一哈希值;

將所述第二哈希值與所述第一哈希值進(jìn)行對(duì)比,以實(shí)現(xiàn)對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn);其中,在所述第二哈希值與所述第一哈希值一致時(shí),認(rèn)為所述簽名數(shù)組校驗(yàn)通過。

優(yōu)選地,所述第一節(jié)點(diǎn)在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息的步驟之前,所述節(jié)點(diǎn)連接方法還包括:

所述第一節(jié)點(diǎn)對(duì)區(qū)塊鏈中的各個(gè)節(jié)點(diǎn)的配置信息進(jìn)行確認(rèn);

將確認(rèn)后的各個(gè)節(jié)點(diǎn)的配置信息存儲(chǔ)到所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中;其中,所述配置信息包括節(jié)點(diǎn)身份類型、機(jī)構(gòu)信息、節(jié)點(diǎn)描述信息、節(jié)點(diǎn)IP、端口號(hào)、節(jié)點(diǎn)公鑰信息、狀態(tài)信息。

優(yōu)選地,所述在所述簽名數(shù)組校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)建立連接關(guān)系的步驟之后,所述節(jié)點(diǎn)連接方法還包括:

若所述第一節(jié)點(diǎn)基于業(yè)務(wù)規(guī)則檢測(cè)到所述第二節(jié)點(diǎn)存在違規(guī)操作,則斷開與所述第二節(jié)點(diǎn)的連接關(guān)系;

在所述節(jié)點(diǎn)配置文件中將所述第二節(jié)點(diǎn)的狀態(tài)標(biāo)記為異常,便于后續(xù)接收到所述第二節(jié)點(diǎn)的連接請(qǐng)求時(shí),拒絕其連接請(qǐng)求。

此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提出一種區(qū)塊鏈的節(jié)點(diǎn)連接裝置,所述節(jié)點(diǎn)連接裝置包括:

提取模塊,用于在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息;

獲取模塊,用于若所述ID信息預(yù)存在第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息;

校驗(yàn)?zāi)K,用于根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn);

建立模塊,用于在所述簽名數(shù)組校驗(yàn)通過時(shí),與所述第二節(jié)點(diǎn)建立連接關(guān)系。

優(yōu)選地,所述握手協(xié)議的發(fā)送方式為:所述第二節(jié)點(diǎn)對(duì)自身的配置信息進(jìn)行哈希計(jì)算得到第一哈希值;根據(jù)預(yù)存的私鑰對(duì)所述第一哈希值進(jìn)行簽名得到簽名數(shù)組;將所述簽名數(shù)組添加到包含自身ID信息的握手協(xié)議中以發(fā)送。

優(yōu)選地,所述校驗(yàn)?zāi)K包括:

計(jì)算單元,用于對(duì)所述第二節(jié)點(diǎn)的配置信息進(jìn)行哈希計(jì)算,得到第二哈希值;

解密單元,用于通過所述私鑰對(duì)應(yīng)的公鑰對(duì)提取的所述簽名數(shù)組進(jìn)行解密,以得到所述第一哈希值;

校驗(yàn)單元,用于將所述第二哈希值與所述第一哈希值進(jìn)行比對(duì),以實(shí)現(xiàn)對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn);其中,在所述第二哈希值與所述第一哈希值一致時(shí),認(rèn)為所述簽名數(shù)組校驗(yàn)通過。

優(yōu)選地,所述節(jié)點(diǎn)連接裝置還包括:

確認(rèn)模塊,用于對(duì)區(qū)塊鏈中的各個(gè)節(jié)點(diǎn)的配置信息進(jìn)行確認(rèn);

存儲(chǔ)模塊,用于將確認(rèn)后的各個(gè)節(jié)點(diǎn)的配置信息存儲(chǔ)到所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中;其中,所述配置信息包括節(jié)點(diǎn)身份類型、機(jī)構(gòu)信息、節(jié)點(diǎn)描述信息、節(jié)點(diǎn)IP、端口號(hào)、節(jié)點(diǎn)公鑰信息、狀態(tài)信息。

優(yōu)選地,所述節(jié)點(diǎn)連接裝置還包括:

斷開模塊,用于若基于業(yè)務(wù)規(guī)則檢測(cè)到所述第二節(jié)點(diǎn)存在違規(guī)操作,則斷開與所述第二節(jié)點(diǎn)的連接關(guān)系;

標(biāo)記模塊,用于在所述節(jié)點(diǎn)配置文件中將所述第二節(jié)點(diǎn)的狀態(tài)標(biāo)記為異常,便于后續(xù)接收到所述第二節(jié)點(diǎn)的連接請(qǐng)求時(shí),拒絕其連接請(qǐng)求。

本發(fā)明提出的節(jié)點(diǎn)連接方法及裝置,第一節(jié)點(diǎn)在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),先從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息,若所述ID信息預(yù)存在所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息,再根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn),在所述簽名數(shù)組校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)才與所述第二節(jié)點(diǎn)建立連接關(guān)系,而不僅僅是根據(jù)創(chuàng)世塊文件和網(wǎng)絡(luò)ID對(duì)節(jié)點(diǎn)進(jìn)行校驗(yàn),本發(fā)明對(duì)節(jié)點(diǎn)的配置信息進(jìn)行校驗(yàn),提高了區(qū)塊鏈中節(jié)點(diǎn)連接的安全性。

附圖說明

圖1為本發(fā)明節(jié)點(diǎn)連接方法第一實(shí)施例的流程示意圖;

圖2為本發(fā)明根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn)的細(xì)化流程示意圖;

圖3為本發(fā)明節(jié)點(diǎn)連接方法第二實(shí)施例的流程示意圖;

圖4為未知節(jié)點(diǎn)發(fā)起連接的場(chǎng)景示意圖;

圖5為已獲得區(qū)塊鏈認(rèn)可的節(jié)點(diǎn)發(fā)起連接的場(chǎng)景示意圖;

圖6為本發(fā)明節(jié)點(diǎn)連接裝置第一實(shí)施例的功能模塊示意圖;

圖7為圖6中校驗(yàn)?zāi)K30的細(xì)化功能模塊示意圖;

圖8為本發(fā)明節(jié)點(diǎn)連接裝置第二實(shí)施例的功能模塊示意圖。

本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。

具體實(shí)施方式

應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

本發(fā)明實(shí)施例的解決方案主要是:第一節(jié)點(diǎn)在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),先從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息,若所述ID信息預(yù)存在所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息,再根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn),在所述簽名數(shù)組校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)才與所述第二節(jié)點(diǎn)建立連接關(guān)系,以解決現(xiàn)有的區(qū)塊鏈中節(jié)點(diǎn)僅通過創(chuàng)世塊文件和網(wǎng)絡(luò)ID進(jìn)行校驗(yàn)而導(dǎo)致節(jié)點(diǎn)連接安全性低的問題。

本發(fā)明中涉及的專業(yè)術(shù)語包括:

區(qū)塊鏈:即去中心化的分布式賬本數(shù)據(jù)庫。區(qū)塊鏈本身其實(shí)是一串使用密碼學(xué)算法所產(chǎn)生的數(shù)據(jù)塊,每一個(gè)數(shù)據(jù)塊中包含了多次區(qū)塊鏈網(wǎng)絡(luò)交易有效確認(rèn)的信息。區(qū)塊鏈技術(shù)起源于比特幣的應(yīng)用,是一種成熟技術(shù),并非本文闡述的發(fā)明內(nèi)容。本文闡述的是將區(qū)塊鏈技術(shù)用于金融領(lǐng)域的資產(chǎn)交易業(yè)務(wù)。

聯(lián)盟鏈:介于公有鏈和私有鏈之間。由若干組織一起合作維護(hù)一條區(qū)塊鏈,該區(qū)塊鏈的使用必須是有權(quán)限的管理,相關(guān)信息會(huì)得到保護(hù),典型如金融組織。

節(jié)點(diǎn):特指參與到區(qū)塊鏈網(wǎng)絡(luò)里,進(jìn)行交易和數(shù)據(jù)交換的網(wǎng)絡(luò)節(jié)點(diǎn),每個(gè)獨(dú)立機(jī)構(gòu)可以擁有一個(gè)到多個(gè)交易節(jié)點(diǎn),每個(gè)交易節(jié)點(diǎn)是一組物理網(wǎng)絡(luò),計(jì)算機(jī),區(qū)塊鏈應(yīng)用軟件以及數(shù)據(jù)庫的組合。節(jié)點(diǎn)和節(jié)點(diǎn)之間,通過TCP/IP協(xié)議互相連接。

記賬人:可生成區(qū)塊的節(jié)點(diǎn)身份和對(duì)當(dāng)前區(qū)塊進(jìn)行簽名驗(yàn)證的一種身份。由該身份的節(jié)點(diǎn)生成并確認(rèn)最新的區(qū)塊的合法性,然后廣播給其他節(jié)點(diǎn)同步最新區(qū)塊。

針對(duì)現(xiàn)有技術(shù)存在的問題,本發(fā)明提供一種區(qū)塊鏈的節(jié)點(diǎn)連接方法。

參照?qǐng)D1,圖1為本發(fā)明節(jié)點(diǎn)連接方法第一實(shí)施例的流程示意圖。

在本實(shí)施例中,所述節(jié)點(diǎn)連接方法包括:

第一節(jié)點(diǎn)在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息;若所述ID信息預(yù)存在所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息;根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn);在所述簽名數(shù)組校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)建立連接關(guān)系。

以下是本實(shí)施例中逐步實(shí)現(xiàn)節(jié)點(diǎn)連接的具體步驟:

步驟S10,第一節(jié)點(diǎn)在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息;

在本實(shí)施例中,所述步驟S10之前,所述節(jié)點(diǎn)連接方法包括以下步驟:

步驟1,所述第一節(jié)點(diǎn)對(duì)區(qū)塊鏈中的各個(gè)節(jié)點(diǎn)的配置信息進(jìn)行確認(rèn);

步驟2,將確認(rèn)后的各個(gè)節(jié)點(diǎn)的配置信息存儲(chǔ)到所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中;其中,所述配置信息包括節(jié)點(diǎn)身份類型、機(jī)構(gòu)信息、節(jié)點(diǎn)描述信息、節(jié)點(diǎn)IP、端口號(hào)、節(jié)點(diǎn)公鑰信息、狀態(tài)信息。

應(yīng)當(dāng)理解的是,為了在連接時(shí)各個(gè)節(jié)點(diǎn)之間相互進(jìn)行配置信息認(rèn)證,該方案將過程分為配置數(shù)據(jù),加載配置,握手簽名驗(yàn)證(本端節(jié)點(diǎn)自簽名,對(duì)端節(jié)點(diǎn)驗(yàn)證),斷開非法節(jié)點(diǎn)連接等步驟。

1)配置數(shù)據(jù):

具體地,各個(gè)節(jié)點(diǎn)事先進(jìn)行配置信息的定義,在本實(shí)施例中,聯(lián)盟鏈中各個(gè)節(jié)點(diǎn)的配置信息的定義方式如下:

在對(duì)各個(gè)節(jié)點(diǎn)的配置信息定義之后,各個(gè)節(jié)點(diǎn)對(duì)參與聯(lián)盟鏈的其它各個(gè)節(jié)點(diǎn)進(jìn)行配置信息的確認(rèn),在配置信息確認(rèn)之后,將確認(rèn)后的各個(gè)節(jié)點(diǎn)的配置信息存儲(chǔ)到各個(gè)節(jié)點(diǎn)對(duì)應(yīng)的節(jié)點(diǎn)配置文件中。

2)加載配置:

在區(qū)塊鏈中有節(jié)點(diǎn)啟動(dòng)時(shí),該節(jié)點(diǎn)先從該節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中加載當(dāng)前鏈的全部節(jié)點(diǎn)的配置信息到內(nèi)存,以便后續(xù)與各個(gè)節(jié)點(diǎn)建立連接的時(shí)候進(jìn)行配置信息的校驗(yàn)。

3)握手簽名驗(yàn)證

本實(shí)施例中,有節(jié)點(diǎn)要發(fā)起連接請(qǐng)求時(shí),先進(jìn)行握手協(xié)議的生成,以便于后續(xù)發(fā)送該握手協(xié)議至其它節(jié)點(diǎn),下文將發(fā)送握手協(xié)議的節(jié)點(diǎn)作為第二節(jié)點(diǎn),將接收握手協(xié)議的節(jié)點(diǎn)作為第一節(jié)點(diǎn)進(jìn)行詳述。

其中,所述握手協(xié)議的發(fā)送方式為:所述第二節(jié)點(diǎn)對(duì)自身的配置信息進(jìn)行哈希計(jì)算得到第一哈希值;根據(jù)預(yù)存的私鑰對(duì)所述第一哈希值進(jìn)行簽名得到簽名數(shù)組;將所述簽名數(shù)組添加到包含自身ID信息的握手協(xié)議中以發(fā)送。

本實(shí)施例中,所述第二節(jié)點(diǎn)先提取出配置信息中的機(jī)構(gòu)信息、節(jié)點(diǎn)IP以及節(jié)點(diǎn)公鑰信息進(jìn)行哈希計(jì)算,以得到第一哈希值,然后采用預(yù)存的私鑰對(duì)所述第一哈希值進(jìn)行簽名,得到簽名數(shù)組,再獲取包含所述第二節(jié)點(diǎn)的ID信息的協(xié)議,最終將所述簽名數(shù)組添加到包含自身ID信息的協(xié)議中,以得到所述握手協(xié)議。后續(xù)將所述握手協(xié)議發(fā)送至第一節(jié)點(diǎn)中進(jìn)行校驗(yàn)。

可以理解,同一個(gè)區(qū)塊鏈中的每個(gè)節(jié)點(diǎn)都存有一對(duì)公鑰和私鑰,每個(gè)節(jié)點(diǎn)采用自身的私鑰加密之后,后續(xù)其它節(jié)點(diǎn)采用對(duì)應(yīng)的公鑰即可進(jìn)行解密。本實(shí)施例中值得注意的是,區(qū)塊鏈包括多個(gè)節(jié)點(diǎn),當(dāng)有新的節(jié)點(diǎn)要接入該區(qū)塊鏈時(shí),該新的節(jié)點(diǎn)是與該區(qū)塊鏈中的各個(gè)節(jié)點(diǎn)分別建立連接關(guān)系,本文為了方便理解,僅以兩個(gè)節(jié)點(diǎn)進(jìn)行詳述。

在本實(shí)施例中,當(dāng)所述第一節(jié)點(diǎn)在接收到所述第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),先采用所述私鑰對(duì)應(yīng)的公鑰對(duì)該握手協(xié)議進(jìn)行解密,然后從解密后的握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組的哈希值。

步驟S20,若所述ID信息預(yù)存在所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息;

步驟S30,根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn);

在所述第一節(jié)點(diǎn)從所述節(jié)點(diǎn)配置文件中獲取到所述第二節(jié)點(diǎn)的配置信息之后,即可根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn)。具體地,參照?qǐng)D2,所述步驟S30包括:

步驟S31,所述第一節(jié)點(diǎn)對(duì)所述第二節(jié)點(diǎn)的配置信息進(jìn)行哈希計(jì)算,得到第二哈希值;

步驟S32,通過所述私鑰對(duì)應(yīng)的公鑰對(duì)提取的所述簽名數(shù)組進(jìn)行解密,以得到所述第一哈希值;

步驟S33,將所述第二哈希值與所述第一哈希值進(jìn)行對(duì)比,以實(shí)現(xiàn)對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn);其中,在所述第二哈希值與所述第一哈希值一致時(shí),認(rèn)為所述簽名數(shù)組校驗(yàn)通過。

本實(shí)施例中,所述第一節(jié)點(diǎn)對(duì)所述第二節(jié)點(diǎn)的配置信息中的ID信息、節(jié)點(diǎn)IP和機(jī)構(gòu)信息進(jìn)行哈希計(jì)算,得到第二哈希值,然后通過所述私鑰對(duì)應(yīng)的公鑰對(duì)提取的所述簽名數(shù)組進(jìn)行解密,以得到所述第一哈希值,然后將所述第二哈希值與所述第一哈希值進(jìn)行對(duì)比,若所述第二哈希值與所述第一哈希值一致,則認(rèn)為所述簽名數(shù)組校驗(yàn)通過。

可以理解,若還原后的所述節(jié)點(diǎn)公鑰信息與所述節(jié)點(diǎn)配置文件中所述第二節(jié)點(diǎn)的節(jié)點(diǎn)公鑰信息不一致,說明該第二節(jié)點(diǎn)是異常節(jié)點(diǎn),可能是在請(qǐng)求連接的過程中被偽造或者是發(fā)生其它異常,則認(rèn)為所述簽名數(shù)組校驗(yàn)未通過,此時(shí),所述第一節(jié)點(diǎn)拒絕所述第二節(jié)點(diǎn)的連接請(qǐng)求。

步驟S40,在所述簽名數(shù)組校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)建立連接關(guān)系。

在本實(shí)施例中,在所述簽名數(shù)組校驗(yàn)通過時(shí),需要進(jìn)一步判斷所述第二節(jié)點(diǎn)對(duì)所述第一節(jié)點(diǎn)是否也校驗(yàn)通過,在所述第二節(jié)點(diǎn)對(duì)所述第一節(jié)點(diǎn)也校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)建立連接關(guān)系。

也就是說,在所述第二節(jié)點(diǎn)向第一節(jié)點(diǎn)發(fā)送自己的配置信息的同時(shí),所述第一節(jié)點(diǎn)也向第二節(jié)點(diǎn)發(fā)送自己的配置信息,以便于第二節(jié)點(diǎn)在所述第二節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,存儲(chǔ)所述第一節(jié)點(diǎn)的配置信息,當(dāng)然,這是在不同的線程里同步進(jìn)行的兩個(gè)過程。同樣,當(dāng)所述第一節(jié)點(diǎn)收到第二節(jié)點(diǎn)的握手協(xié)議時(shí),所述第二節(jié)點(diǎn)也會(huì)收到第一節(jié)點(diǎn)的握手協(xié)議,第二節(jié)點(diǎn)對(duì)第一節(jié)點(diǎn)進(jìn)行和上述相同流程的校驗(yàn),僅當(dāng)雙方彼此校驗(yàn)通過,才可建立連接關(guān)系。否則,發(fā)現(xiàn)身份驗(yàn)證有異常的一方主動(dòng)拒絕連接。

在發(fā)明中,任何一個(gè)加入聯(lián)盟鏈的節(jié)點(diǎn)都需要有一定的資質(zhì),并且需要得到聯(lián)盟鏈審核通過;在各節(jié)點(diǎn)上進(jìn)行配置信息的配置,才能使節(jié)點(diǎn)連接到聯(lián)盟鏈上進(jìn)行獲取數(shù)據(jù)和交易操作。經(jīng)過資質(zhì)審核的節(jié)點(diǎn),其配置信息是有現(xiàn)實(shí)確認(rèn)的,準(zhǔn)確的,豐富的,可辨識(shí),可追溯的配置信息。該配置信息會(huì)帶到聯(lián)盟鏈的交易和簽名環(huán)節(jié),節(jié)點(diǎn)在鏈上進(jìn)行交易和簽名動(dòng)作時(shí),配置信息都是可知的。

進(jìn)一步地,本發(fā)明對(duì)連接的節(jié)點(diǎn)進(jìn)行創(chuàng)世塊文件和網(wǎng)絡(luò)ID之外的配置信息驗(yàn)證,這些信息都是事先審核過并配置完成的,比單獨(dú)用創(chuàng)世塊文件和網(wǎng)絡(luò)ID增加了更高的安全級(jí)別,節(jié)點(diǎn)連接到聯(lián)盟鏈時(shí)和連接后都可以根據(jù)這些信息進(jìn)行認(rèn)證,拒絕惡意或非法節(jié)點(diǎn)連接,保證了節(jié)點(diǎn)連接的安全性。

本實(shí)施例提出的節(jié)點(diǎn)連接方法,第一節(jié)點(diǎn)在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),先從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息,若所述ID信息預(yù)存在所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息,再根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn),在所述簽名數(shù)組校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)才與所述第二節(jié)點(diǎn)建立連接關(guān)系,而不僅僅是根據(jù)創(chuàng)世塊文件和網(wǎng)絡(luò)ID對(duì)節(jié)點(diǎn)進(jìn)行校驗(yàn),本發(fā)明對(duì)節(jié)點(diǎn)的配置信息進(jìn)行校驗(yàn),提高了區(qū)塊鏈中節(jié)點(diǎn)連接的安全性。

進(jìn)一步地,為了提高節(jié)點(diǎn)連接的安全性,基于第一實(shí)施例提出本發(fā)明節(jié)點(diǎn)連接方法的第二實(shí)施例,在本實(shí)施例中,參照?qǐng)D3,所述步驟S40之后,所述節(jié)點(diǎn)連接方法還包括:

步驟S50,若所述第一節(jié)點(diǎn)基于業(yè)務(wù)規(guī)則檢測(cè)到所述第二節(jié)點(diǎn)存在違規(guī)操作,則斷開與所述第二節(jié)點(diǎn)的連接關(guān)系;

步驟S60,在所述節(jié)點(diǎn)配置文件中將所述第二節(jié)點(diǎn)的狀態(tài)標(biāo)記為異常,便于后續(xù)接收到所述第二節(jié)點(diǎn)的連接請(qǐng)求時(shí),拒絕其連接請(qǐng)求。

在本實(shí)施例中,在所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)建立連接關(guān)系之后,所述第一節(jié)點(diǎn)基于當(dāng)前區(qū)塊鏈預(yù)設(shè)的業(yè)務(wù)規(guī)則實(shí)時(shí)監(jiān)測(cè)連接的所述第二節(jié)點(diǎn),同理,所述第二節(jié)點(diǎn)也會(huì)基于所述業(yè)務(wù)規(guī)則監(jiān)測(cè)所述第一節(jié)點(diǎn)。當(dāng)所述第一節(jié)點(diǎn)檢測(cè)到所述第二節(jié)點(diǎn)存在違規(guī)操作時(shí),斷開與所述第二節(jié)點(diǎn)的連接關(guān)系。也就是說,在監(jiān)測(cè)到節(jié)點(diǎn)存在違規(guī)操作時(shí),根據(jù)這些操作里所包含的公鑰,簽名等信息,可以得到該節(jié)點(diǎn)的配置信息,然后根據(jù)節(jié)點(diǎn)的配置信息(節(jié)點(diǎn)IP,節(jié)點(diǎn)公鑰信息,機(jī)構(gòu)信息等),找出是否有該節(jié)點(diǎn)的網(wǎng)絡(luò)連接,如有,發(fā)出指令,主動(dòng)斷開對(duì)該節(jié)點(diǎn)的連接,如無,忽略該操作。

也就是說,聯(lián)盟鏈中的各個(gè)節(jié)點(diǎn)根據(jù)預(yù)設(shè)的業(yè)務(wù)規(guī)則,判定區(qū)塊鏈網(wǎng)絡(luò)里某一個(gè)、某一些非法操作,其中,所述業(yè)務(wù)規(guī)則根據(jù)具體場(chǎng)景定義,這里不做限定。在同一個(gè)聯(lián)盟鏈里,所有的節(jié)點(diǎn)都遵循同樣的業(yè)務(wù)規(guī)則,聯(lián)盟鏈網(wǎng)絡(luò)里,所有的節(jié)點(diǎn)都遵循同樣的業(yè)務(wù)規(guī)則和主動(dòng)斷開的指令,這樣非法節(jié)點(diǎn)將無法通過聯(lián)盟鏈的任意一個(gè)節(jié)點(diǎn)再連接到聯(lián)盟鏈里。

在斷開與所述第二節(jié)點(diǎn)的連接關(guān)系之后,所述第一節(jié)點(diǎn)在所述節(jié)點(diǎn)配置文件中將所述第二節(jié)點(diǎn)的狀態(tài)標(biāo)記為異常,便于后續(xù)接收到所述第二節(jié)點(diǎn)的連接請(qǐng)求時(shí),直接拒絕其連接請(qǐng)求。由于所述第一節(jié)點(diǎn)事先存儲(chǔ)了該第二節(jié)點(diǎn)的配置信息,且該配置信息中包含狀態(tài)信息這一項(xiàng),優(yōu)選正常時(shí)標(biāo)識(shí)為0,異常時(shí)標(biāo)識(shí)為-1,因此,在監(jiān)測(cè)到所述第二節(jié)點(diǎn)異常時(shí),即可將所述第二節(jié)點(diǎn)的狀態(tài)信息從0更換為-1。

進(jìn)一步地,還可以打印本地日志,留存該非法節(jié)點(diǎn)的非法操作記錄,和連接被斷開的信息,便于查看具體的信息。

進(jìn)一步地,本發(fā)明中還可以查看已生成區(qū)塊的記賬者和簽名機(jī)構(gòu)信息。在區(qū)塊鏈軟件運(yùn)行過程中,生成區(qū)塊的節(jié)點(diǎn)以及對(duì)區(qū)塊簽名的節(jié)點(diǎn),都會(huì)在區(qū)塊中帶入自己的簽名信息。結(jié)合節(jié)點(diǎn)身份配置數(shù)據(jù),根據(jù)簽名則可知對(duì)應(yīng)節(jié)點(diǎn)的配置信息。在管理平臺(tái)上,查看每個(gè)區(qū)塊信息的時(shí)候可以得到該區(qū)塊獲得過那些機(jī)構(gòu)信息的簽名。

基于圖1至圖3所述實(shí)施例的具體描述,本實(shí)施例以具體的應(yīng)用場(chǎng)景再次描述本發(fā)明節(jié)點(diǎn)連接方法的實(shí)現(xiàn)過程。

請(qǐng)參照?qǐng)D4,圖4是未知節(jié)點(diǎn)發(fā)起連接的場(chǎng)景示意圖。

如圖4所示,D節(jié)點(diǎn)是未知節(jié)點(diǎn),A、B、C已建立聯(lián)盟鏈的節(jié)點(diǎn)。這時(shí)D節(jié)點(diǎn)發(fā)送握手連接,則在A、B、C節(jié)點(diǎn)收到D的握手請(qǐng)求后,發(fā)現(xiàn)沒有D節(jié)點(diǎn)的信息,則拒絕該節(jié)點(diǎn)的連接。

請(qǐng)參照?qǐng)D5,圖5是已獲得鏈認(rèn)可的節(jié)點(diǎn)發(fā)起連接的場(chǎng)景示意圖。

D是新加入的已獲鏈認(rèn)可的節(jié)點(diǎn)。則D發(fā)起握手請(qǐng)求,則A、B、C在收到D的握手請(qǐng)求后,A—D、B—D、C—D之間均進(jìn)行兩兩間的相互確認(rèn),確認(rèn)該節(jié)點(diǎn)為合法節(jié)點(diǎn),與該節(jié)點(diǎn)進(jìn)行連接,生成ABCD聯(lián)盟鏈。可以理解,以上場(chǎng)景的身份認(rèn)證,是雙向的,A,B,C需要認(rèn)證D的身份,D也需要認(rèn)證A,B,C的身份是否合法,否則有可能連入一個(gè)不合法的網(wǎng)絡(luò)里。

本發(fā)明進(jìn)一步提供一種節(jié)點(diǎn)連接裝置。

參照?qǐng)D6,圖6為本發(fā)明節(jié)點(diǎn)連接裝置第一實(shí)施例的功能模塊示意圖。

需要強(qiáng)調(diào)的是,對(duì)本領(lǐng)域的技術(shù)人員來說,圖6所示功能模塊圖僅僅是一個(gè)較佳實(shí)施例的示例圖,本領(lǐng)域的技術(shù)人員圍繞圖6所示的節(jié)點(diǎn)連接裝置的功能模塊,可輕易進(jìn)行新的功能模塊的補(bǔ)充;各功能模塊的名稱是自定義名稱,僅用于輔助理解該節(jié)點(diǎn)連接裝置的各個(gè)程序功能塊,不用于限定本發(fā)明的技術(shù)方案,本發(fā)明技術(shù)方案的核心是,各自定義名稱的功能模塊所要達(dá)成的功能。

在本實(shí)施例中,所述節(jié)點(diǎn)連接裝置包括:

提取模塊10,用于在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息;

在本實(shí)施例中,所述提取模塊10在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息之前,還包括預(yù)設(shè)模塊以對(duì)區(qū)塊鏈中的各個(gè)節(jié)點(diǎn)的配置信息進(jìn)行確認(rèn)并存儲(chǔ),所述預(yù)設(shè)模塊包括確認(rèn)模塊和存儲(chǔ)模塊,其中,

所述確認(rèn)模塊,用于對(duì)區(qū)塊鏈中的各個(gè)節(jié)點(diǎn)的配置信息進(jìn)行確認(rèn);

所述存儲(chǔ)模塊,用于將確認(rèn)后的各個(gè)節(jié)點(diǎn)的配置信息存儲(chǔ)到所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中;其中,所述配置信息包括節(jié)點(diǎn)身份類型、機(jī)構(gòu)信息、節(jié)點(diǎn)描述信息、節(jié)點(diǎn)IP、端口號(hào)、節(jié)點(diǎn)公鑰信息、狀態(tài)信息。

應(yīng)當(dāng)理解的是,為了在連接時(shí)各個(gè)節(jié)點(diǎn)之間相互進(jìn)行配置信息認(rèn)證,該方案將過程分為配置數(shù)據(jù),加載配置,握手簽名驗(yàn)證(本端節(jié)點(diǎn)自簽名,對(duì)端節(jié)點(diǎn)驗(yàn)證),斷開非法節(jié)點(diǎn)連接等步驟。

1)配置數(shù)據(jù):

具體地,各個(gè)節(jié)點(diǎn)事先進(jìn)行配置信息的定義,在本實(shí)施例中,聯(lián)盟鏈中各個(gè)節(jié)點(diǎn)的配置信息的定義方式如下:

在對(duì)各個(gè)節(jié)點(diǎn)的配置信息定義之后,各個(gè)節(jié)點(diǎn)對(duì)參與聯(lián)盟鏈的其它各個(gè)節(jié)點(diǎn)進(jìn)行配置信息的確認(rèn),在配置信息確認(rèn)之后,將確認(rèn)后的各個(gè)節(jié)點(diǎn)的配置信息存儲(chǔ)到各個(gè)節(jié)點(diǎn)對(duì)應(yīng)的節(jié)點(diǎn)配置文件中。

2)加載配置:

在區(qū)塊鏈中有節(jié)點(diǎn)啟動(dòng)時(shí),該節(jié)點(diǎn)先從該節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中加載當(dāng)前鏈的全部節(jié)點(diǎn)的配置信息到內(nèi)存,以便后續(xù)與各個(gè)節(jié)點(diǎn)建立連接的時(shí)候進(jìn)行配置信息的校驗(yàn)。

3)握手簽名驗(yàn)證

本實(shí)施例中,有節(jié)點(diǎn)要發(fā)起連接請(qǐng)求時(shí),先進(jìn)行握手協(xié)議的生成,以便于后續(xù)發(fā)送該握手協(xié)議至其它節(jié)點(diǎn),下文將發(fā)送握手協(xié)議的節(jié)點(diǎn)作為第二節(jié)點(diǎn),將接收握手協(xié)議的節(jié)點(diǎn)作為第一節(jié)點(diǎn)進(jìn)行詳述。

其中,所述握手協(xié)議的發(fā)送方式為:所述第二節(jié)點(diǎn)對(duì)自身的配置信息進(jìn)行哈希計(jì)算得到第一哈希值;根據(jù)預(yù)存的私鑰對(duì)所述第一哈希值進(jìn)行簽名得到簽名數(shù)組;將所述簽名數(shù)組添加到包含自身ID信息的握手協(xié)議中以發(fā)送。

本實(shí)施例中,所述第二節(jié)點(diǎn)先提取出配置信息中的機(jī)構(gòu)信息、節(jié)點(diǎn)IP以及節(jié)點(diǎn)公鑰信息進(jìn)行哈希計(jì)算,以得到第一哈希值,然后采用預(yù)存的私鑰對(duì)所述第一哈希值進(jìn)行簽名,得到簽名數(shù)組,再獲取包含所述第二節(jié)點(diǎn)的ID信息的協(xié)議,最終將所述簽名數(shù)組添加到包含自身ID信息的協(xié)議中,以得到所述握手協(xié)議。后續(xù)將所述握手協(xié)議發(fā)送至第一節(jié)點(diǎn)中進(jìn)行校驗(yàn)。

可以理解,同一個(gè)區(qū)塊鏈中的每個(gè)節(jié)點(diǎn)都存有一對(duì)公鑰和私鑰,每個(gè)節(jié)點(diǎn)采用自身的私鑰加密之后,后續(xù)其它節(jié)點(diǎn)采用對(duì)應(yīng)的公鑰即可進(jìn)行解密。本實(shí)施例中值得注意的是,區(qū)塊鏈包括多個(gè)節(jié)點(diǎn),當(dāng)有新的節(jié)點(diǎn)要接入該區(qū)塊鏈時(shí),該新的節(jié)點(diǎn)是與該區(qū)塊鏈中的各個(gè)節(jié)點(diǎn)分別建立連接關(guān)系,本文為了方便理解,僅以兩個(gè)節(jié)點(diǎn)進(jìn)行詳述。

在本實(shí)施例中,當(dāng)所述第一節(jié)點(diǎn)在接收到所述第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),先采用所述私鑰對(duì)應(yīng)的公鑰對(duì)該握手協(xié)議進(jìn)行解密,然后所述提取模塊10從解密后的握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組的哈希值。

獲取模塊20,用于若所述ID信息預(yù)存在第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息;

校驗(yàn)?zāi)K30,用于根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn);

在所述獲取模塊20從所述節(jié)點(diǎn)配置文件中獲取到所述第二節(jié)點(diǎn)的配置信息之后,獲取模塊20即可根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn)。具體地,參照?qǐng)D7,所述校驗(yàn)?zāi)K30包括:

計(jì)算單元31,用于對(duì)所述第二節(jié)點(diǎn)的配置信息進(jìn)行哈希計(jì)算,得到第二哈希值;

解密單元32,用于通過所述私鑰對(duì)應(yīng)的公鑰對(duì)提取的所述簽名數(shù)組進(jìn)行解密,以得到所述第一哈希值;

校驗(yàn)單元33,用于將所述第二哈希值與所述第一哈希值進(jìn)行比對(duì),以實(shí)現(xiàn)對(duì)所述簽名數(shù)組進(jìn)行校驗(yàn);其中,在所述第二哈希值與所述第一哈希值一致時(shí),認(rèn)為所述簽名數(shù)組校驗(yàn)通過。

本實(shí)施例中,計(jì)算單元31對(duì)所述第二節(jié)點(diǎn)的配置信息中的ID信息、節(jié)點(diǎn)IP和機(jī)構(gòu)信息進(jìn)行哈希計(jì)算,得到第二哈希值,然后解密單元32通過所述私鑰對(duì)應(yīng)的公鑰對(duì)提取的所述簽名數(shù)組進(jìn)行解密,以得到所述第一哈希值,然后所述校驗(yàn)單元33將所述第二哈希值與所述第一哈希值進(jìn)行對(duì)比,若所述第二哈希值與所述第一哈希值一致,則認(rèn)為所述簽名數(shù)組校驗(yàn)通過。

可以理解,若還原后的所述節(jié)點(diǎn)公鑰信息與所述節(jié)點(diǎn)配置文件中所述第二節(jié)點(diǎn)的節(jié)點(diǎn)公鑰信息不一致,說明該第二節(jié)點(diǎn)是異常節(jié)點(diǎn),可能是在請(qǐng)求連接的過程中被偽造或者是發(fā)生其它異常,則認(rèn)為所述簽名數(shù)組校驗(yàn)未通過,此時(shí),所述第一節(jié)點(diǎn)拒絕所述第二節(jié)點(diǎn)的連接請(qǐng)求。

建立模塊40,用于在所述簽名數(shù)組校驗(yàn)通過時(shí),與所述第二節(jié)點(diǎn)建立連接關(guān)系。

在本實(shí)施例中,在所述簽名數(shù)組校驗(yàn)通過時(shí),需要進(jìn)一步判斷所述第二節(jié)點(diǎn)對(duì)所述第一節(jié)點(diǎn)是否也校驗(yàn)通過,在所述第二節(jié)點(diǎn)對(duì)所述第一節(jié)點(diǎn)也校驗(yàn)通過時(shí),建立模塊40與所述第二節(jié)點(diǎn)建立連接關(guān)系。

也就是說,在所述第二節(jié)點(diǎn)向第一節(jié)點(diǎn)發(fā)送自己的配置信息的同時(shí),所述第一節(jié)點(diǎn)也向第二節(jié)點(diǎn)發(fā)送自己的配置信息,以便于第二節(jié)點(diǎn)在所述第二節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,存儲(chǔ)所述第一節(jié)點(diǎn)的配置信息,當(dāng)然,這是在不同的線程里同步進(jìn)行的兩個(gè)過程。同樣,當(dāng)所述第一節(jié)點(diǎn)收到第二節(jié)點(diǎn)的握手協(xié)議時(shí),所述第二節(jié)點(diǎn)也會(huì)收到第一節(jié)點(diǎn)的握手協(xié)議,第二節(jié)點(diǎn)對(duì)第一節(jié)點(diǎn)進(jìn)行和上述相同流程的校驗(yàn),僅當(dāng)雙方彼此校驗(yàn)通過,才可建立連接關(guān)系。否則,發(fā)現(xiàn)身份驗(yàn)證有異常的一方主動(dòng)拒絕連接。

在發(fā)明中,任何一個(gè)加入聯(lián)盟鏈的節(jié)點(diǎn)都需要有一定的資質(zhì),并且需要得到聯(lián)盟鏈審核通過;在各節(jié)點(diǎn)上進(jìn)行配置信息的配置,才能使節(jié)點(diǎn)連接到聯(lián)盟鏈上進(jìn)行獲取數(shù)據(jù)和交易操作。經(jīng)過資質(zhì)審核的節(jié)點(diǎn),其配置信息是有現(xiàn)實(shí)確認(rèn)的,準(zhǔn)確的,豐富的,可辨識(shí),可追溯的配置信息。該配置信息會(huì)帶到聯(lián)盟鏈的交易和簽名環(huán)節(jié),節(jié)點(diǎn)在鏈上進(jìn)行交易和簽名動(dòng)作時(shí),配置信息都是可知的。

進(jìn)一步地,本發(fā)明對(duì)連接的節(jié)點(diǎn)進(jìn)行創(chuàng)世塊文件和網(wǎng)絡(luò)ID之外的配置信息驗(yàn)證,這些信息都是事先審核過并配置完成的,比單獨(dú)用創(chuàng)世塊文件和網(wǎng)絡(luò)ID增加了更高的安全級(jí)別,節(jié)點(diǎn)連接到聯(lián)盟鏈時(shí)和連接后都可以根據(jù)這些信息進(jìn)行認(rèn)證,拒絕惡意或非法節(jié)點(diǎn)連接,保證了節(jié)點(diǎn)連接的安全性。

本實(shí)施例提出的節(jié)點(diǎn)連接裝置,第一節(jié)點(diǎn)在接到第二節(jié)點(diǎn)發(fā)送的握手協(xié)議時(shí),先從所述握手協(xié)議中提取出所述第二節(jié)點(diǎn)的簽名數(shù)組以及ID信息,若所述ID信息預(yù)存在所述第一節(jié)點(diǎn)的節(jié)點(diǎn)配置文件中,則從所述節(jié)點(diǎn)配置文件中獲取所述第二節(jié)點(diǎn)的配置信息,再根據(jù)所述第二節(jié)點(diǎn)的配置信息對(duì)提取的所述簽名數(shù)組進(jìn)行校驗(yàn),在所述簽名數(shù)組校驗(yàn)通過時(shí),所述第一節(jié)點(diǎn)才與所述第二節(jié)點(diǎn)建立連接關(guān)系,而不僅僅是根據(jù)創(chuàng)世塊文件和網(wǎng)絡(luò)ID對(duì)節(jié)點(diǎn)進(jìn)行校驗(yàn),本發(fā)明對(duì)節(jié)點(diǎn)的配置信息進(jìn)行校驗(yàn),提高了區(qū)塊鏈中節(jié)點(diǎn)連接的安全性。

進(jìn)一步地,為了提高節(jié)點(diǎn)連接的安全性,基于第一實(shí)施例提出本發(fā)明節(jié)點(diǎn)連接裝置的第二實(shí)施例,在本實(shí)施例中,參照?qǐng)D8,所述節(jié)點(diǎn)連接裝置還包括:

斷開模塊50,用于若基于業(yè)務(wù)規(guī)則檢測(cè)到所述第二節(jié)點(diǎn)存在違規(guī)操作,則斷開與所述第二節(jié)點(diǎn)的連接關(guān)系;

標(biāo)記模塊60,用于在所述節(jié)點(diǎn)配置文件中將所述第二節(jié)點(diǎn)的狀態(tài)標(biāo)記為異常,便于后續(xù)接收到所述第二節(jié)點(diǎn)的連接請(qǐng)求時(shí),拒絕其連接請(qǐng)求。

在本實(shí)施例中,在所述第一節(jié)點(diǎn)與所述第二節(jié)點(diǎn)建立連接關(guān)系之后,所述第一節(jié)點(diǎn)基于當(dāng)前區(qū)塊鏈預(yù)設(shè)的業(yè)務(wù)規(guī)則實(shí)時(shí)監(jiān)測(cè)連接的所述第二節(jié)點(diǎn),同理,所述第二節(jié)點(diǎn)也會(huì)基于所述業(yè)務(wù)規(guī)則監(jiān)測(cè)所述第一節(jié)點(diǎn)。當(dāng)所述第一節(jié)點(diǎn)檢測(cè)到所述第二節(jié)點(diǎn)存在違規(guī)操作時(shí),斷開模塊50斷開與所述第二節(jié)點(diǎn)的連接關(guān)系。也就是說,在監(jiān)測(cè)到節(jié)點(diǎn)存在違規(guī)操作時(shí),根據(jù)這些操作里所包含的公鑰,簽名等信息,可以得到該節(jié)點(diǎn)的配置信息,然后根據(jù)節(jié)點(diǎn)的配置信息(節(jié)點(diǎn)IP,節(jié)點(diǎn)公鑰信息,機(jī)構(gòu)信息等),找出是否有該節(jié)點(diǎn)的網(wǎng)絡(luò)連接,如有,發(fā)出指令,主動(dòng)斷開對(duì)該節(jié)點(diǎn)的連接,如無,忽略該操作。

也就是說,聯(lián)盟鏈中的各個(gè)節(jié)點(diǎn)根據(jù)預(yù)設(shè)的業(yè)務(wù)規(guī)則,判定區(qū)塊鏈網(wǎng)絡(luò)里某一個(gè)、某一些非法操作,其中,所述業(yè)務(wù)規(guī)則根據(jù)具體場(chǎng)景定義,這里不做限定。在同一個(gè)聯(lián)盟鏈里,所有的節(jié)點(diǎn)都遵循同樣的業(yè)務(wù)規(guī)則,聯(lián)盟鏈網(wǎng)絡(luò)里,所有的節(jié)點(diǎn)都遵循同樣的業(yè)務(wù)規(guī)則和主動(dòng)斷開的指令,這樣非法節(jié)點(diǎn)將無法通過聯(lián)盟鏈的任意一個(gè)節(jié)點(diǎn)再連接到聯(lián)盟鏈里。

在所述斷開模塊50斷開與所述第二節(jié)點(diǎn)的連接關(guān)系之后,標(biāo)記模塊60在所述節(jié)點(diǎn)配置文件中將所述第二節(jié)點(diǎn)的狀態(tài)標(biāo)記為異常,便于后續(xù)接收到所述第二節(jié)點(diǎn)的連接請(qǐng)求時(shí),直接拒絕其連接請(qǐng)求。由于所述第一節(jié)點(diǎn)事先存儲(chǔ)了該第二節(jié)點(diǎn)的配置信息,且該配置信息中包含狀態(tài)信息這一項(xiàng),優(yōu)選正常時(shí)標(biāo)識(shí)為0,異常時(shí)標(biāo)識(shí)為-1,因此,在監(jiān)測(cè)到所述第二節(jié)點(diǎn)異常時(shí),即可將所述第二節(jié)點(diǎn)的狀態(tài)信息從0更換為-1。

進(jìn)一步地,還可以打印本地日志,留存該非法節(jié)點(diǎn)的非法操作記錄,和連接被斷開的信息,便于查看具體的信息。

進(jìn)一步地,本發(fā)明中還可以查看已生成區(qū)塊的記賬者和簽名機(jī)構(gòu)信息。在區(qū)塊鏈軟件運(yùn)行過程中,生成區(qū)塊的節(jié)點(diǎn)以及對(duì)區(qū)塊簽名的節(jié)點(diǎn),都會(huì)在區(qū)塊中帶入自己的簽名信息。結(jié)合節(jié)點(diǎn)身份配置數(shù)據(jù),根據(jù)簽名則可知對(duì)應(yīng)節(jié)點(diǎn)的配置信息。在管理平臺(tái)上,查看每個(gè)區(qū)塊信息的時(shí)候可以得到該區(qū)塊獲得過那些機(jī)構(gòu)信息的簽名。

需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其它變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其它要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。

上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。

通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。

以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其它相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1