欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

生成區(qū)塊鏈區(qū)塊的方法、裝置、節(jié)點(diǎn)、簽名設(shè)備及系統(tǒng)與流程

文檔序號(hào):11532282閱讀:325來源:國知局
生成區(qū)塊鏈區(qū)塊的方法、裝置、節(jié)點(diǎn)、簽名設(shè)備及系統(tǒng)與流程

本公開涉及區(qū)塊鏈領(lǐng)域,具體地,涉及一種生成區(qū)塊鏈區(qū)塊的方法、裝置、節(jié)點(diǎn)、簽名設(shè)備及系統(tǒng)。



背景技術(shù):

區(qū)塊鏈技術(shù)是一種分布式、無中心、無信任的網(wǎng)絡(luò)數(shù)據(jù)共識(shí)存儲(chǔ)技術(shù)?;讵?dú)特的區(qū)塊生成機(jī)制,如pow(proofofwork,工作量證明)、pos(proofofstake,權(quán)益證明),以及p2p(peertopeer,對(duì)等)網(wǎng)絡(luò)通信機(jī)制來實(shí)現(xiàn)。

通常意義上,在區(qū)塊鏈形成過程中,每一個(gè)參與計(jì)算的節(jié)點(diǎn)均享有相同的權(quán)限,包括轉(zhuǎn)賬、計(jì)算區(qū)塊(俗稱挖礦)等。在區(qū)塊產(chǎn)生機(jī)制中,有效區(qū)塊的產(chǎn)生是基于正確解出一個(gè)需要計(jì)算量的數(shù)學(xué)難題的工作,任何節(jié)點(diǎn)都可以產(chǎn)生區(qū)塊,并能夠被其它節(jié)點(diǎn)所認(rèn)可,且區(qū)塊中的信息與區(qū)塊產(chǎn)生者無關(guān)。但是,這種區(qū)塊產(chǎn)生機(jī)制給區(qū)塊鏈網(wǎng)絡(luò)的安全帶來了一定隱患。



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

本公開提供了一種生成區(qū)塊鏈區(qū)塊的方法、裝置、節(jié)點(diǎn)、簽名設(shè)備及系統(tǒng),以實(shí)現(xiàn)提高區(qū)塊鏈網(wǎng)絡(luò)的安全性的目的。

根據(jù)本公開實(shí)施例的第一方面,提供了一種生成區(qū)塊鏈區(qū)塊的方法,應(yīng)用于區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn),所述方法包括:根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊;對(duì)所述原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊;將所述簽名區(qū)塊在所述區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播。

根據(jù)本公開實(shí)施例的第二方面,提供了一種生成區(qū)塊鏈區(qū)塊的裝置,配置于區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn),所述裝置包括:原始區(qū)塊生成模塊,被配置為根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊。簽名模塊,被配置為對(duì)所述原始區(qū)塊生成模塊生成的原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊。廣播模塊,被配置為將所述簽名模塊生成的簽名區(qū)塊在所述區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播。

根據(jù)本公開實(shí)施例的第三方面,提供了一種生成區(qū)塊鏈區(qū)塊的方法,應(yīng)用于簽名設(shè)備,所述方法包括:接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)發(fā)送的中間簽名,其中,所述中間簽名由所述第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述第一節(jié)點(diǎn)生成的原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成;對(duì)所述中間簽名進(jìn)行驗(yàn)證;在所述中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名;將所述原始區(qū)塊簽名發(fā)送給所述第一節(jié)點(diǎn),其中,所述原始區(qū)塊簽名,用于使所述第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

根據(jù)本公開實(shí)施例的第四方面,提供了一種生成區(qū)塊鏈區(qū)塊的裝置,配置于簽名設(shè)備,所述裝置包括:中間簽名接收模塊,被配置為接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)發(fā)送的中間簽名。其中,所述中間簽名由所述第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述第一節(jié)點(diǎn)生成的原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。中間簽名驗(yàn)證模塊,被配置為對(duì)所述中間簽名接收模塊接收的中間簽名進(jìn)行驗(yàn)證。原始簽名生成模塊,被配置為在所述中間簽名驗(yàn)證模塊對(duì)中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名。原始簽名發(fā)送模塊,被配置為將所述原始簽名生成模塊生成的原始區(qū)塊簽名發(fā)送給所述第一節(jié)點(diǎn),其中,所述原始區(qū)塊簽名,用于使所述第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

根據(jù)本公開實(shí)施例的第五方面,提供了一種生成區(qū)塊鏈區(qū)塊的方法,應(yīng)用于區(qū)塊鏈網(wǎng)絡(luò)中的第二節(jié)點(diǎn),所述方法包括:接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊,其中,所述簽名區(qū)塊由所述第一節(jié)點(diǎn)對(duì)原始區(qū)塊進(jìn)行數(shù)字簽名操作而生成,所述原始區(qū)塊由所述第一節(jié)點(diǎn)根據(jù)區(qū)塊鏈協(xié)議生成;對(duì)所述簽名區(qū)塊的簽名進(jìn)行驗(yàn)證;在對(duì)所述簽名區(qū)塊的簽名驗(yàn)證通過的情況下,將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

根據(jù)本公開實(shí)施例的第六方面,提供了一種生成區(qū)塊鏈區(qū)塊的裝置,配置于區(qū)塊鏈網(wǎng)絡(luò)中的第二節(jié)點(diǎn),所述裝置包括:簽名區(qū)塊接收模塊,被配置為接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊。其中,所述簽名區(qū)塊由所述第一節(jié)點(diǎn)對(duì)原始區(qū)塊進(jìn)行數(shù)字簽名操作而生成,所述原始區(qū)塊由所述第一節(jié)點(diǎn)根據(jù)區(qū)塊鏈協(xié)議生成。簽名區(qū)塊驗(yàn)證模塊,被配置為對(duì)所述簽名區(qū)塊接收模塊接收的簽名區(qū)塊的簽名進(jìn)行驗(yàn)證。簽名區(qū)塊添加模塊,被配置為在所述簽名區(qū)塊驗(yàn)證模塊對(duì)所述簽名區(qū)塊的簽名驗(yàn)證通過的情況下,將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

根據(jù)本公開實(shí)施例的第七方面,提供了一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中包括一個(gè)或多個(gè)程序,所述一個(gè)或多個(gè)程序用于執(zhí)行本公開實(shí)施例第一方面中任一實(shí)施例所述的方法。

根據(jù)本公開實(shí)施例的第八方面,提供了一種區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)。所述區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)包括:本公開實(shí)施例第七方面所述的非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);以及,一個(gè)或者多個(gè)處理器,用于執(zhí)行所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的程序。

根據(jù)本公開實(shí)施例的第九方面,提供了一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中包括一個(gè)或多個(gè)程序,所述一個(gè)或多個(gè)程序用于本公開第三方面任一實(shí)施例所述的生成區(qū)塊鏈區(qū)塊的方法。

根據(jù)本公開實(shí)施例的第十方面,提供了一種簽名設(shè)備。所述簽名設(shè)備包括:本公開實(shí)施例第八方面所述的非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);以及,一個(gè)或者多個(gè)處理器,用于執(zhí)行所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的程序。

根據(jù)本公開實(shí)施例的第十一方面,提供了一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中包括一個(gè)或多個(gè)程序,所述一個(gè)或多個(gè)程序用于執(zhí)行本公開第五方面任一實(shí)施例所述的生成區(qū)塊鏈區(qū)塊的方法。

根據(jù)本公開實(shí)施例的第十二方面,提供了一種區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)。所述區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)包括:本公開實(shí)施例第十一方面所述的非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);以及,一個(gè)或者多個(gè)處理器,用于執(zhí)行所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的程序。

根據(jù)本公開實(shí)施例的第十三方面,提供了一種生成區(qū)塊鏈區(qū)塊的系統(tǒng)。該系統(tǒng)可以包括:至少一個(gè)本公開實(shí)施例第八方面所述的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn),至少一個(gè)本公開實(shí)施例第十方面所述的簽名設(shè)備,以及,至少一個(gè)本公開實(shí)施例第十二方面所述的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)。其中,本公開實(shí)施例第八方面所述的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)以及本公開實(shí)施例第十二方面所述的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)屬于同一區(qū)塊鏈網(wǎng)絡(luò)。

通過上述技術(shù)方案一個(gè)方面,區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊,對(duì)所述原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊,將該簽名區(qū)塊在區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播,從而區(qū)塊鏈網(wǎng)絡(luò)中的區(qū)塊可以通過其數(shù)字簽名被確認(rèn)區(qū)塊產(chǎn)生者,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了可驗(yàn)證的信息。

通過上述技術(shù)方案的另一個(gè)方面,根據(jù)本公開實(shí)施例的簽名設(shè)備接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)發(fā)送的中間簽名,對(duì)中間簽名進(jìn)行驗(yàn)證,在中間簽名驗(yàn)證通過的情況下,使用簽名設(shè)備的私鑰對(duì)所述中間簽名進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名,使所述第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述第一節(jié)點(diǎn)生成的原始區(qū)塊,生成簽名區(qū)塊,從而區(qū)塊鏈網(wǎng)絡(luò)中的區(qū)塊可以通過其數(shù)字簽名被確認(rèn)區(qū)塊產(chǎn)生者,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了可驗(yàn)證的信息。

通過上述技術(shù)方案的又一個(gè)方面,區(qū)塊鏈網(wǎng)絡(luò)中的第二節(jié)點(diǎn)接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊,在對(duì)該簽名區(qū)塊簽名驗(yàn)證通過的情況下,將該簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中,從而能夠?qū)^(qū)塊的產(chǎn)生者進(jìn)行控制,只有通過驗(yàn)證的區(qū)塊產(chǎn)生者發(fā)布的區(qū)塊,才能夠被其他節(jié)點(diǎn)接受,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了一定保障。

本公開的其他特征和優(yōu)點(diǎn)將在隨后的具體實(shí)施方式部分予以詳細(xì)說明。

附圖說明

附圖是用來提供對(duì)本公開的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與下面的具體實(shí)施方式一起用于解釋本公開,但并不構(gòu)成對(duì)本公開的限制。在附圖中:

圖1是根據(jù)本公開一示例性實(shí)施例示出的實(shí)施環(huán)境示意圖。

圖2是根據(jù)本公開第一方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的方法的流程圖。

圖3是根據(jù)本公開的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的方法的信令交互示意圖。

圖4是根據(jù)本公開第二方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的裝置的框圖。

圖5是根據(jù)本公開第三方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的方法的流程圖。

圖6是根據(jù)本公開第四方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的裝置的框圖。

圖7是根據(jù)本公開第五方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的方法的流程圖。

圖8是根據(jù)本公開第六方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的裝置的框圖。

具體實(shí)施方式

以下結(jié)合附圖對(duì)本公開的具體實(shí)施方式進(jìn)行詳細(xì)說明。應(yīng)當(dāng)理解的是,此處所描述的具體實(shí)施方式僅用于說明和解釋本公開,并不用于限制本公開。

圖1是根據(jù)本公開一示例性實(shí)施例示出的實(shí)施環(huán)境示意圖。如圖1所示,該實(shí)施環(huán)境可以包括:由若干個(gè)節(jié)點(diǎn)組成的區(qū)塊鏈網(wǎng)絡(luò)110以及簽名設(shè)備120。其中,云主機(jī)1101、云主機(jī)1102分別為區(qū)塊鏈網(wǎng)絡(luò)110中的兩個(gè)節(jié)點(diǎn)。簽名設(shè)備120可以為智能手機(jī)、平板電腦等移動(dòng)終端。

可以理解的是,圖1所示實(shí)施環(huán)境僅用于示意本發(fā)明實(shí)施例提供的方法,并不構(gòu)成對(duì)本公開實(shí)施例的限制。例如,區(qū)塊鏈網(wǎng)絡(luò)110中可以包括兩個(gè)或兩個(gè)以上的節(jié)點(diǎn),節(jié)點(diǎn)可以為云主機(jī),也可以為其他具有相應(yīng)計(jì)算能力的設(shè)備,本公開對(duì)此并不進(jìn)行限制。簽名設(shè)備120可以為一個(gè),也可以為多個(gè)。節(jié)點(diǎn)與簽名設(shè)備之間可以通過p2p網(wǎng)絡(luò)進(jìn)行通信,也可以通過其他結(jié)構(gòu)的網(wǎng)絡(luò)進(jìn)行通信,本公開對(duì)此并不進(jìn)行限制。

為了使本公開實(shí)施例更加易于理解,再對(duì)區(qū)塊鏈網(wǎng)絡(luò)進(jìn)行簡(jiǎn)單介紹。如圖1所示的區(qū)塊鏈網(wǎng)絡(luò),是由若干節(jié)點(diǎn)所組成的基于p2p的對(duì)等網(wǎng)絡(luò)。區(qū)塊鏈網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都維護(hù)著一串使用密碼學(xué)方法相關(guān)聯(lián)產(chǎn)生的區(qū)塊鏈。各個(gè)節(jié)點(diǎn)之間通過廣播來獲取最新的區(qū)塊,從而保證各個(gè)節(jié)點(diǎn)之間的區(qū)塊是同步維護(hù)的。因此,如圖1所示的云主機(jī)1101以及云主機(jī)1102同步維護(hù)著各自的區(qū)塊鏈。

圖2是根據(jù)本公開第一方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的方法的流程圖。該方法可以應(yīng)用于區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)。可以理解的是,該第一節(jié)點(diǎn)可以為區(qū)塊鏈網(wǎng)絡(luò)中的任意節(jié)點(diǎn)。例如,該第一節(jié)點(diǎn)可以為圖1所示的云主機(jī)1101。該方法包括:

在步驟210中,根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊。

例如,第一節(jié)點(diǎn)可以接收全網(wǎng)transaction(交易)的廣播并對(duì)接收到的交易根據(jù)區(qū)塊鏈協(xié)議進(jìn)行處理后生成原始區(qū)塊。相應(yīng)地,該原始區(qū)塊中含有交易和協(xié)議規(guī)定的數(shù)據(jù)。

在步驟220中,對(duì)所述原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊。

一種可能的實(shí)施方式中,在步驟220中,可以使用所述第一節(jié)點(diǎn)的私鑰,對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名,將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

另一種可能的實(shí)施方式中,在步驟220中,可以使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成中間簽名,將所述中間簽名發(fā)送給簽名設(shè)備,接收所述簽名設(shè)備發(fā)送的原始區(qū)塊簽名。其中,所述原始區(qū)塊簽名,可以由所述簽名設(shè)備在對(duì)所述中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

原始區(qū)塊例如,計(jì)算該哈希值可以采用如sha-256等算法。該算法計(jì)算出的哈希值數(shù)據(jù)量極小,僅32字節(jié)。再例如,可以采用如ecdsa簽名算法進(jìn)行數(shù)字簽名操作。該ecdsa簽名算法在256bit密鑰長(zhǎng)度的情況下,其簽名僅64字節(jié)。

需要說明的是,本公開對(duì)簽名設(shè)備驗(yàn)證中間簽名的實(shí)施方式不限。

例如,可以在簽名設(shè)備中預(yù)存所有合法節(jié)點(diǎn)的公鑰,從而簽名設(shè)備利用合法節(jié)點(diǎn)的公鑰對(duì)中間簽名進(jìn)行驗(yàn)證。

再例如,簽名設(shè)備可以預(yù)存有與其具有對(duì)應(yīng)關(guān)系的合法節(jié)點(diǎn)的公鑰??梢岳斫獾氖?,在該實(shí)施方式中,允許有不同節(jié)點(diǎn)對(duì)應(yīng)不同的簽名設(shè)備。從而第一節(jié)點(diǎn)可以將中間簽名發(fā)送給與第一節(jié)點(diǎn)具有對(duì)應(yīng)關(guān)系的簽名設(shè)備,由該簽名設(shè)備利用具有對(duì)應(yīng)關(guān)系的合法節(jié)點(diǎn)的公鑰對(duì)中間簽名進(jìn)行驗(yàn)證,進(jìn)而在確定該中間簽名為具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,使用所述簽名設(shè)備的私鑰進(jìn)行數(shù)字簽名操作生成原始區(qū)塊簽名。通過該實(shí)施方式,可以使不同簽名設(shè)備分別為自身對(duì)應(yīng)的合法的節(jié)點(diǎn)進(jìn)行簽名,實(shí)現(xiàn)對(duì)不同類型的區(qū)塊產(chǎn)生者進(jìn)行分別控制,更進(jìn)一步保證了區(qū)塊鏈網(wǎng)絡(luò)的安全。

其中,第一節(jié)點(diǎn)與簽名設(shè)備之間的對(duì)應(yīng)關(guān)系可以設(shè)置在區(qū)塊鏈中。例如,如圖1所示實(shí)施環(huán)境中,區(qū)塊鏈網(wǎng)絡(luò)110的每個(gè)節(jié)點(diǎn)所維護(hù)的區(qū)塊鏈中均保存有節(jié)點(diǎn)與簽名設(shè)備之間的對(duì)應(yīng)關(guān)系。例如,云主機(jī)1101與簽名設(shè)備120之間具有對(duì)應(yīng)關(guān)系,則云主機(jī)1101可以在其維護(hù)的區(qū)塊鏈中查詢到云主機(jī)1101與簽名設(shè)備120之間的對(duì)應(yīng)關(guān)系。

需要說明的是,節(jié)點(diǎn)與簽名設(shè)備之間的對(duì)應(yīng)關(guān)系可以為一對(duì)多,多對(duì)一,或者,多對(duì)多的關(guān)系,本公開對(duì)此并不進(jìn)行限制。

例如,當(dāng)節(jié)點(diǎn)與簽名設(shè)備之間的對(duì)應(yīng)關(guān)系為一對(duì)多的關(guān)系時(shí),由于可以有多個(gè)簽名設(shè)備為同一節(jié)點(diǎn)進(jìn)行簽名,從而在因某個(gè)簽名設(shè)備的網(wǎng)絡(luò)連接問題、自身其它問題導(dǎo)致的不能簽名情況下,仍有相當(dāng)?shù)南到y(tǒng)冗余度。即使簽名設(shè)備出現(xiàn)部分被攻擊或破壞的情況,也不會(huì)對(duì)區(qū)塊鏈產(chǎn)生影響??梢姡搶?shí)施方式適用于多人擁有簽名權(quán)限的場(chǎng)景,比如企業(yè)控制節(jié)點(diǎn),由指定員工控制簽名設(shè)備。

再例如,當(dāng)節(jié)點(diǎn)與簽名設(shè)備之間的對(duì)應(yīng)關(guān)系為多對(duì)一的關(guān)系時(shí),多個(gè)節(jié)點(diǎn)產(chǎn)生的區(qū)塊可以供簽名設(shè)備進(jìn)行簽名,從而對(duì)節(jié)點(diǎn)掉線或其他錯(cuò)誤可以有更高的冗余度。在部分節(jié)點(diǎn)被攻擊或破壞的情況下,仍能夠保證區(qū)塊產(chǎn)生的成功率。

又例如,當(dāng)節(jié)點(diǎn)與簽名設(shè)備之間的對(duì)應(yīng)關(guān)系為多對(duì)多的關(guān)系時(shí),例如,可以有多個(gè)節(jié)點(diǎn)組,多個(gè)簽名設(shè)備組,而且每個(gè)節(jié)點(diǎn)組中包括多個(gè)節(jié)點(diǎn),每個(gè)簽名設(shè)備組中包括多個(gè)簽名設(shè)備,一個(gè)節(jié)點(diǎn)組可以對(duì)應(yīng)一個(gè)簽名設(shè)備組,則節(jié)點(diǎn)組中任意節(jié)點(diǎn)產(chǎn)生的區(qū)塊都能夠被對(duì)應(yīng)的簽名設(shè)備組內(nèi)任意的簽名設(shè)備簽名。該實(shí)施方式綜合了上述兩種方式的優(yōu)點(diǎn),節(jié)點(diǎn)以及簽名設(shè)備都具有良好的系統(tǒng)冗余度。例如,不同簽名組可以代表不同組織機(jī)構(gòu)。

在步驟230中,將所述簽名區(qū)塊在所述區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播。

例如,所述區(qū)塊鏈網(wǎng)絡(luò)中接收到所述廣播的第二節(jié)點(diǎn),在對(duì)所述簽名區(qū)塊的簽名驗(yàn)證通過的情況下,可以將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

可見,通過本公開上述實(shí)施例提供的技術(shù)方案,區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)可以根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊,對(duì)所述原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊,將該簽名區(qū)塊在區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播,從而區(qū)塊鏈網(wǎng)絡(luò)中的區(qū)塊可以通過其數(shù)字簽名被確認(rèn)區(qū)塊產(chǎn)生者,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了可驗(yàn)證的信息。

尤其在一些應(yīng)用環(huán)境中,需要對(duì)區(qū)塊的產(chǎn)生者進(jìn)行控制,例如僅允許特定的節(jié)點(diǎn)產(chǎn)生新的區(qū)塊,根據(jù)本公開實(shí)施例提供的方法,區(qū)塊產(chǎn)生者可以對(duì)區(qū)塊進(jìn)行數(shù)字簽名的操作來證明自己是合法的區(qū)塊產(chǎn)生者,從而只有合法的區(qū)塊產(chǎn)生者發(fā)布的區(qū)塊,才能夠被其它節(jié)點(diǎn)接受和認(rèn)可。

為了使本公開實(shí)施例提供的技術(shù)方案更加易于理解,下面,再結(jié)合本公開實(shí)施例一種可能的信令交互方式進(jìn)行詳細(xì)說明。圖3是根據(jù)本公開的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的方法的信令交互示意圖。如圖3所示,該方法包括:

在步驟310中,第一節(jié)點(diǎn)根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊。

在步驟311中,第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成中間簽名。

在步驟312中,第一節(jié)點(diǎn)將所述中間簽名發(fā)送給簽名設(shè)備。

在步驟320中,簽名設(shè)備對(duì)所述中間簽名是否為與所述簽名設(shè)備具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名進(jìn)行驗(yàn)證。其中,簽名設(shè)備在確定所述中間簽名為與所述簽名設(shè)備具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,驗(yàn)證通過。

在步驟321中,簽名設(shè)備在所述中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名。

在步驟322中,簽名設(shè)備將所述原始區(qū)塊簽名發(fā)送給所述第一節(jié)點(diǎn)。

在步驟330中,第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

在步驟331中,第一節(jié)點(diǎn)將所述簽名區(qū)塊在所述區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播。

在步驟340中,第二節(jié)點(diǎn)接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊。

在步驟341中,第二節(jié)點(diǎn)使用簽名設(shè)備的公鑰對(duì)所述簽名區(qū)塊的原始區(qū)塊簽名進(jìn)行驗(yàn)證。

在步驟342,在驗(yàn)證通過的情況下,將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

可見,在該實(shí)施方式中,由于節(jié)點(diǎn)與簽名設(shè)備分別承擔(dān)了生成區(qū)塊、簽名的角色,因此,簽名設(shè)備無需接收交易、無需參與原始區(qū)塊的產(chǎn)生、也無需同步整個(gè)區(qū)塊鏈,簽名設(shè)備不涉及如pow等巨大的計(jì)算,且傳輸?shù)暮灻麛?shù)據(jù)量小,從而降低了對(duì)網(wǎng)絡(luò)穩(wěn)定性、設(shè)備計(jì)算能力的要求,適于使用例如移動(dòng)終端等簽名設(shè)備來參與區(qū)塊的簽名,適用范圍更廣。

圖4是根據(jù)本公開第二方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的裝置400的框圖。該裝置可以配置于區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)。例如,該第一節(jié)點(diǎn)可以為圖1所示的云主機(jī)1101。該裝置包括:原始區(qū)塊生成模塊410、簽名模塊420、以及廣播模塊430。

該原始區(qū)塊生成模塊410,可以被配置為根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊。

該簽名模塊420,可以被配置為對(duì)所述原始區(qū)塊生成模塊410生成的原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊。

一種可能的實(shí)施方式中,所述簽名模塊420可以被配置為使用所述第一節(jié)點(diǎn)的私鑰,對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名,將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

另一種可能的實(shí)施方式中,所述簽名模塊420可以包括:中間簽名生成子模塊421、中間簽名發(fā)送子模塊422、原始簽名接收子模塊423、以及簽名區(qū)塊生成子模塊424。

該中間簽名生成子模塊421,可以被配置為使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成中間簽名。可選地,所述中間簽名生成子模塊421可以包括:哈希計(jì)算子模塊4211,可以被配置為計(jì)算所述原始區(qū)塊的哈希值。哈希簽名子模塊4212,可以被配置為使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述哈希值進(jìn)行數(shù)字簽名操作,生成中間簽名。

該中間簽名發(fā)送子模塊422,可以被配置為將所述中間簽名發(fā)送給簽名設(shè)備。

該原始簽名接收子模塊423,可以被配置為接收所述簽名設(shè)備發(fā)送的原始區(qū)塊簽名,其中,所述原始區(qū)塊簽名,由所述簽名設(shè)備在對(duì)所述中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。

該簽名區(qū)塊生成子模塊424,可以被配置為將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

需要說明的是,本公開對(duì)簽名設(shè)備驗(yàn)證中間簽名的實(shí)施方式不限。可選地,所述中間簽名發(fā)送子模塊422可以被配置為將所述中間簽名發(fā)送給與所述第一節(jié)點(diǎn)具有對(duì)應(yīng)關(guān)系的簽名設(shè)備。從而,由該簽名設(shè)備利用具有對(duì)應(yīng)關(guān)系的合法節(jié)點(diǎn)的公鑰對(duì)中間簽名進(jìn)行驗(yàn)證,進(jìn)而在確定該中間簽名為具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,使用所述簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作生成原始區(qū)塊簽名。因此,所述原始區(qū)塊簽名,由所述簽名設(shè)備在確定所述中間簽名為具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,使用所述簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。通過該實(shí)施方式,可以使不同簽名設(shè)備分別為自身對(duì)應(yīng)的合法的節(jié)點(diǎn)進(jìn)行簽名,實(shí)現(xiàn)對(duì)不同類型的區(qū)塊產(chǎn)生者進(jìn)行分別控制,更進(jìn)一步保證了區(qū)塊鏈網(wǎng)絡(luò)的安全。

在上述實(shí)施方式中,由于節(jié)點(diǎn)與簽名設(shè)備分別承擔(dān)了生成區(qū)塊、簽名的角色,因此,簽名設(shè)備無需接收交易、無需參與原始區(qū)塊的產(chǎn)生、也無需同步整個(gè)區(qū)塊鏈,簽名設(shè)備不涉及如pow等巨大的計(jì)算,且傳輸?shù)暮灻麛?shù)據(jù)量小,從而降低了對(duì)網(wǎng)絡(luò)穩(wěn)定性、設(shè)備計(jì)算能力的要求,適于使用例如移動(dòng)終端等簽名設(shè)備來參與區(qū)塊的簽名,適用范圍更廣。

廣播模塊430,可以被配置為將所述簽名模塊420生成的簽名區(qū)塊在所述區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播。

可選地,所述簽名區(qū)塊,可以用于使所述區(qū)塊鏈網(wǎng)絡(luò)中接收到所述廣播的第二節(jié)點(diǎn),在對(duì)所述簽名區(qū)塊的簽名驗(yàn)證通過的情況下,將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

可見,通過本公開上述實(shí)施例提供的技術(shù)方案,區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)可以根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊,對(duì)所述原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊,將該簽名區(qū)塊在區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播,從而區(qū)塊鏈網(wǎng)絡(luò)中的區(qū)塊可以通過其數(shù)字簽名被確認(rèn)區(qū)塊產(chǎn)生者,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了可驗(yàn)證的信息。

需要注意的是,本公開實(shí)施例所述中間簽名生成子模塊421、所述中間簽名發(fā)送子模塊422、所述原始簽名接收子模塊423、所述簽名區(qū)塊生成子模塊424、所述哈希計(jì)算子模塊4211、所述哈希簽名子模塊4212在圖4中以虛線繪制,以表示這些子模塊不是本公開實(shí)施例提供的生成區(qū)塊鏈區(qū)塊的裝置的必要模塊。

圖5是根據(jù)本公開第三方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的方法的流程圖。該方法可以應(yīng)用于簽名設(shè)備。例如,該簽名設(shè)備可以為圖1所示的移動(dòng)終端120。該方法包括:

在步驟510中,接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)發(fā)送的中間簽名,其中,所述中間簽名由所述第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述第一節(jié)點(diǎn)生成的原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。

在步驟520中,對(duì)所述中間簽名進(jìn)行驗(yàn)證。

一種可能的實(shí)施方式中,可以在簽名設(shè)備中預(yù)存所有合法節(jié)點(diǎn)的公鑰,從而簽名設(shè)備利用合法節(jié)點(diǎn)的公鑰對(duì)中間簽名進(jìn)行驗(yàn)證。

另一種可能的實(shí)施方式中,簽名設(shè)備可以預(yù)存有與其具有對(duì)應(yīng)關(guān)系的合法節(jié)點(diǎn)的公鑰。可以理解的是,在該實(shí)施方式中,允許有不同節(jié)點(diǎn)對(duì)應(yīng)不同的簽名設(shè)備。因此,在步驟420中,簽名設(shè)備可以對(duì)所述中間簽名是否為與所述簽名設(shè)備具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名進(jìn)行驗(yàn)證,在所述中間簽名為與所述簽名設(shè)備具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,驗(yàn)證通過。

通過上述實(shí)施方式,可以使不同簽名設(shè)備分別為自身對(duì)應(yīng)的合法的節(jié)點(diǎn)進(jìn)行簽名,實(shí)現(xiàn)對(duì)不同類型的區(qū)塊產(chǎn)生者進(jìn)行分別控制,更進(jìn)一步保證了區(qū)塊鏈網(wǎng)絡(luò)的安全。

在步驟530中,在所述中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名。

在步驟540中,將所述原始區(qū)塊簽名發(fā)送給所述第一節(jié)點(diǎn),其中,所述原始區(qū)塊簽名,用于使所述第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述第一節(jié)點(diǎn)生成的原始區(qū)塊,生成簽名區(qū)塊。

可見,通過本公開上述實(shí)施例提供的技術(shù)方案,簽名設(shè)備可以接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)發(fā)送的中間簽名,對(duì)中間簽名進(jìn)行驗(yàn)證,在中間簽名驗(yàn)證通過的情況下,使用簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名,使所述第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述第一節(jié)點(diǎn)生成的原始區(qū)塊,生成簽名區(qū)塊,從而區(qū)塊鏈網(wǎng)絡(luò)中的區(qū)塊可以通過其數(shù)字簽名被確認(rèn)區(qū)塊產(chǎn)生者,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了可驗(yàn)證的信息。而且,由于節(jié)點(diǎn)與簽名設(shè)備分別承擔(dān)了生成區(qū)塊、簽名的角色,簽名設(shè)備無需接收交易、無需參與原始區(qū)塊的產(chǎn)生、也無需同步整個(gè)區(qū)塊鏈,簽名設(shè)備不涉及如pow等巨大的計(jì)算,且傳輸?shù)暮灻麛?shù)據(jù)量小,從而降低了對(duì)網(wǎng)絡(luò)穩(wěn)定性、設(shè)備計(jì)算能力的要求,適于使用例如移動(dòng)終端等簽名設(shè)備來參與區(qū)塊的簽名,適用范圍更廣。

圖6是根據(jù)本公開第四方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的裝置600的框圖。該裝置可以配置于簽名設(shè)備。例如,該簽名設(shè)備可以為圖1所示的移動(dòng)終端120。該裝置包括:中間簽名接收模塊610、中間簽名驗(yàn)證模塊620、原始簽名生成模塊630、以及原始簽名發(fā)送模塊640。

該中間簽名接收模塊610,可以被配置為接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)發(fā)送的中間簽名,其中,所述中間簽名由所述第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述第一節(jié)點(diǎn)生成的原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。.

該中間簽名驗(yàn)證模塊620,可以被配置為對(duì)所述中間簽名接收模塊610接收的中間簽名進(jìn)行驗(yàn)證。

一種可能的實(shí)施方式中,可以在簽名設(shè)備中預(yù)存所有合法節(jié)點(diǎn)的公鑰,從而簽名設(shè)備利用合法節(jié)點(diǎn)的公鑰對(duì)中間簽名進(jìn)行驗(yàn)證。

另一種可能的實(shí)施方式中,簽名設(shè)備可以預(yù)存有與其具有對(duì)應(yīng)關(guān)系的合法節(jié)點(diǎn)的公鑰??梢岳斫獾氖牵谠搶?shí)施方式中,允許有不同節(jié)點(diǎn)對(duì)應(yīng)不同的簽名設(shè)備。因此,所述中間簽名驗(yàn)證模塊620可以被配置為對(duì)所述中間簽名是否為與所述簽名設(shè)備具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名進(jìn)行驗(yàn)證,在所述中間簽名為與所述簽名設(shè)備具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,驗(yàn)證通過。

通過上述實(shí)施方式,可以使不同簽名設(shè)備分別為自身對(duì)應(yīng)的合法的節(jié)點(diǎn)進(jìn)行簽名,實(shí)現(xiàn)對(duì)不同類型的區(qū)塊產(chǎn)生者進(jìn)行分別控制,更進(jìn)一步保證了區(qū)塊鏈網(wǎng)絡(luò)的安全。

該原始簽名生成模塊630,被配置為在所述中間簽名驗(yàn)證模塊620對(duì)中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名。

該原始簽名發(fā)送模塊640,可以被配置為將所述原始簽名生成模塊630生成的原始區(qū)塊簽名發(fā)送給所述第一節(jié)點(diǎn),其中,所述原始區(qū)塊簽名,用于使所述第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述第一節(jié)點(diǎn)生成的原始區(qū)塊,生成簽名區(qū)塊。

可見,通過本公開上述實(shí)施例提供的技術(shù)方案,簽名設(shè)備可以接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)發(fā)送的中間簽名,對(duì)中間簽名進(jìn)行驗(yàn)證,在中間簽名驗(yàn)證通過的情況下,使用簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名,使所述第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述第一節(jié)點(diǎn)生成的原始區(qū)塊,生成簽名區(qū)塊,從而區(qū)塊鏈網(wǎng)絡(luò)中的區(qū)塊可以通過其數(shù)字簽名被確認(rèn)區(qū)塊產(chǎn)生者,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了可驗(yàn)證的信息。而且,由于節(jié)點(diǎn)與簽名設(shè)備分別承擔(dān)了生成區(qū)塊、簽名的角色,簽名設(shè)備無需接收交易、無需參與原始區(qū)塊的產(chǎn)生、也無需同步整個(gè)區(qū)塊鏈,簽名設(shè)備不涉及如pow等巨大的計(jì)算,且傳輸?shù)暮灻麛?shù)據(jù)量小,從而降低了對(duì)網(wǎng)絡(luò)穩(wěn)定性、設(shè)備計(jì)算能力的要求,適于使用例如移動(dòng)終端等簽名設(shè)備來參與區(qū)塊的簽名,適用范圍更廣。

圖7是根據(jù)本公開第五方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的方法的流程圖。該方法可以應(yīng)用于區(qū)塊鏈網(wǎng)絡(luò)中的第二節(jié)點(diǎn)??梢岳斫獾氖?,該第二節(jié)點(diǎn)可以為區(qū)塊鏈網(wǎng)絡(luò)中與第一節(jié)點(diǎn)不同的任意節(jié)點(diǎn)。例如,該第二節(jié)點(diǎn)可以為圖1所示的云主機(jī)1102。該方法包括:

在步驟710中,接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊,其中,所述簽名區(qū)塊由所述第一節(jié)點(diǎn)對(duì)原始區(qū)塊進(jìn)行數(shù)字簽名操作而生成,其中,所述原始區(qū)塊由所述第一節(jié)點(diǎn)根據(jù)區(qū)塊鏈協(xié)議生成。

在步驟720中,對(duì)所述簽名區(qū)塊的簽名進(jìn)行驗(yàn)證。

在步驟730中,在對(duì)所述簽名區(qū)塊的簽名驗(yàn)證通過的情況下,將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

例如,第二節(jié)點(diǎn)可以使用簽名設(shè)備的公鑰對(duì)所述簽名區(qū)塊的原始區(qū)塊簽名進(jìn)行驗(yàn)證。其中,所述簽名區(qū)塊,由所述第一節(jié)點(diǎn)將原始區(qū)塊簽名附加給所述原始區(qū)塊而生成。所述原始區(qū)塊簽名,由所述簽名設(shè)備在中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。所述中間簽名,由所述第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。

再例如,區(qū)塊鏈中可以保存有節(jié)點(diǎn)與簽名設(shè)備之間的對(duì)應(yīng)關(guān)系。所述原始區(qū)塊簽名,由所述簽名設(shè)備在確定所述中間簽名為具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,使用所述簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。相應(yīng)地,第二節(jié)點(diǎn)可以使用簽名設(shè)備的公鑰對(duì)所述簽名區(qū)塊的原始區(qū)塊簽名進(jìn)行驗(yàn)證。通過該實(shí)施方式,只有與簽名設(shè)備對(duì)應(yīng)的節(jié)點(diǎn)生成的原始區(qū)塊可以被簽名設(shè)備簽名,并被其他節(jié)點(diǎn)驗(yàn)證通過,從而可以使不同簽名設(shè)備分別為自身對(duì)應(yīng)的合法的節(jié)點(diǎn)進(jìn)行簽名,實(shí)現(xiàn)對(duì)不同類型的區(qū)塊產(chǎn)生者進(jìn)行分別控制,更進(jìn)一步保證了區(qū)塊鏈網(wǎng)絡(luò)的安全。。

可以理解的是,在第二節(jié)點(diǎn)對(duì)所述簽名區(qū)塊簽名驗(yàn)證通過的情況下,還可以在節(jié)點(diǎn)間廣播將該簽名區(qū)塊添加到區(qū)塊鏈網(wǎng)絡(luò)的消息,從而第一節(jié)點(diǎn)也同樣將該簽名區(qū)塊添加到區(qū)塊鏈網(wǎng)絡(luò)中,從而使得節(jié)點(diǎn)間的區(qū)塊得到同步更新。在第二節(jié)點(diǎn)對(duì)所述簽名區(qū)塊的簽名驗(yàn)證未通過的情況下,還可以在節(jié)點(diǎn)間廣播拒絕將該簽名區(qū)塊添加到區(qū)塊鏈網(wǎng)絡(luò)的消息,保障了區(qū)塊鏈網(wǎng)絡(luò)的安全。

可見,通過本公開上述實(shí)施例提供的技術(shù)方案,區(qū)塊鏈網(wǎng)絡(luò)中的第二節(jié)點(diǎn)接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊,在對(duì)該簽名區(qū)塊簽名驗(yàn)證通過的情況下,將該簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中,從而能夠?qū)^(qū)塊的產(chǎn)生者進(jìn)行控制,只有通過驗(yàn)證的區(qū)塊產(chǎn)生者發(fā)布的區(qū)塊,才能夠被其他節(jié)點(diǎn)接受,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了一定保障。

圖8是根據(jù)本公開第六方面的一示例性實(shí)施例示出的一種生成區(qū)塊鏈區(qū)塊的裝置800的框圖。該裝置可以配置于區(qū)塊鏈網(wǎng)絡(luò)中的第二節(jié)點(diǎn)??梢岳斫獾氖?,該第二節(jié)點(diǎn)可以為區(qū)塊鏈網(wǎng)絡(luò)中與第一節(jié)點(diǎn)不同的任意節(jié)點(diǎn)。例如,該第二節(jié)點(diǎn)可以為圖1所示的云主機(jī)1102。該裝置包括:簽名區(qū)塊接收模塊810、簽名區(qū)塊驗(yàn)證模塊820、以及簽名區(qū)塊添加模塊830。

該簽名區(qū)塊接收模塊810,可以被配置為接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊,其中,所述簽名區(qū)塊由所述第一節(jié)點(diǎn)對(duì)原始區(qū)塊進(jìn)行數(shù)字簽名操作而生成,所述原始區(qū)塊由所述第一節(jié)點(diǎn)根據(jù)區(qū)塊鏈協(xié)議生成。

該簽名區(qū)塊驗(yàn)證模塊820,可以被配置為對(duì)所述簽名區(qū)塊接收模塊810接收的簽名區(qū)塊的簽名進(jìn)行驗(yàn)證。

例如,所述簽名區(qū)塊驗(yàn)證模塊820可以被配置為使用簽名設(shè)備的公鑰對(duì)所述簽名區(qū)塊的原始區(qū)塊簽名進(jìn)行驗(yàn)證。其中,所述簽名區(qū)塊,由所述第一節(jié)點(diǎn)將原始區(qū)塊簽名附加給所述原始區(qū)塊而生成。所述原始區(qū)塊簽名,由所述簽名設(shè)備在中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。所述中間簽名,由所述第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。

再例如,所述簽名設(shè)備與所述第一節(jié)點(diǎn)具有對(duì)應(yīng)關(guān)系。所述原始區(qū)塊簽名,由所述簽名設(shè)備在確定所述中間簽名為具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,使用所述簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。相應(yīng)地,所述簽名區(qū)塊驗(yàn)證模塊820可以被配置為使用所述簽名設(shè)備的公鑰對(duì)所述簽名區(qū)塊的原始區(qū)塊簽名進(jìn)行驗(yàn)證。

通過該實(shí)施方式,只有與簽名設(shè)備對(duì)應(yīng)的節(jié)點(diǎn)生成的原始區(qū)塊可以被簽名設(shè)備簽名,并被其他節(jié)點(diǎn)驗(yàn)證通過,從而可以使不同簽名設(shè)備分別為自身對(duì)應(yīng)的合法的節(jié)點(diǎn)進(jìn)行簽名,實(shí)現(xiàn)對(duì)不同類型的區(qū)塊產(chǎn)生者進(jìn)行分別控制,更進(jìn)一步保證了區(qū)塊鏈網(wǎng)絡(luò)的安全。。

該簽名區(qū)塊添加模塊830,可以被配置為在所述簽名區(qū)塊驗(yàn)證模塊820對(duì)所述簽名區(qū)塊的簽名驗(yàn)證通過的情況下,將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

可見,通過本公開上述實(shí)施例提供的技術(shù)方案,區(qū)塊鏈網(wǎng)絡(luò)中的第二節(jié)點(diǎn)接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊,在對(duì)該簽名區(qū)塊簽名驗(yàn)證通過的情況下,將該簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中,從而能夠?qū)^(qū)塊的產(chǎn)生者進(jìn)行控制,只有通過驗(yàn)證的區(qū)塊產(chǎn)生者發(fā)布的區(qū)塊,才能夠被其他節(jié)點(diǎn)接受,為區(qū)塊鏈網(wǎng)絡(luò)的安全提供了一定保障。

本公開實(shí)施例第七方面還提供一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。該非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中包括一個(gè)或多個(gè)程序,所述一個(gè)或多個(gè)程序用于執(zhí)行本公開第一方面任一實(shí)施例所述的生成區(qū)塊鏈區(qū)塊的方法。

本公開實(shí)施例第一方面所述的生成區(qū)塊鏈區(qū)塊的方法應(yīng)用于區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn),所述方法包括:根據(jù)區(qū)塊鏈協(xié)議生成原始區(qū)塊,對(duì)所述原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊,將所述簽名區(qū)塊在所述區(qū)塊鏈網(wǎng)絡(luò)中進(jìn)行廣播。

可選地,所述簽名區(qū)塊,可以用于使所述區(qū)塊鏈網(wǎng)絡(luò)中接收到所述廣播的第二節(jié)點(diǎn),在對(duì)所述簽名區(qū)塊的簽名驗(yàn)證通過的情況下,將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

可選地,所述對(duì)所述原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊可以包括:使用所述第一節(jié)點(diǎn)的私鑰,對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名,將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

可選地,所述對(duì)所述原始區(qū)塊進(jìn)行數(shù)字簽名操作,生成簽名區(qū)塊可以包括:使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成中間簽名;將所述中間簽名發(fā)送給簽名設(shè)備;接收所述簽名設(shè)備發(fā)送的原始區(qū)塊簽名,其中,所述原始區(qū)塊簽名,由所述簽名設(shè)備在對(duì)所述中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成;將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

可選地,所述將所述中間簽名發(fā)送給簽名設(shè)備包括:將所述中間簽名發(fā)送給與所述第一節(jié)點(diǎn)具有對(duì)應(yīng)關(guān)系的簽名設(shè)備。所述原始區(qū)塊簽名,由所述簽名設(shè)備在確定所述中間簽名為具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,使用所述簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。

可選地,所述簽名設(shè)備為移動(dòng)設(shè)備。

本公開實(shí)施例第八方面還提供了一種區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)。該區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)可以包括:本公開實(shí)施例第七方面所述的非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);以及,一個(gè)或者多個(gè)處理器,用于執(zhí)行所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的程序。

本公開實(shí)施例第九方面還提供另一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。該非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中包括一個(gè)或多個(gè)程序,所述一個(gè)或多個(gè)程序用于執(zhí)行本公開第三方面任一實(shí)施例所述的生成區(qū)塊鏈區(qū)塊的方法。

本公開實(shí)施例第三方面所述的生成區(qū)塊鏈區(qū)塊的方法應(yīng)用于簽名設(shè)備,所述方法包括:接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)發(fā)送的中間簽名,其中,所述中間簽名由所述第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述第一節(jié)點(diǎn)生成的原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成;對(duì)所述中間簽名進(jìn)行驗(yàn)證;在所述中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作,生成原始區(qū)塊簽名;將所述原始區(qū)塊簽名發(fā)送給所述第一節(jié)點(diǎn),其中,所述原始區(qū)塊簽名,用于使所述第一節(jié)點(diǎn)將所述原始區(qū)塊簽名附加給所述原始區(qū)塊,生成簽名區(qū)塊。

可選地,所述對(duì)所述中間簽名進(jìn)行驗(yàn)證包括:對(duì)所述中間簽名是否為與所述簽名設(shè)備具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名進(jìn)行驗(yàn)證;在所述中間簽名為與所述簽名設(shè)備具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,驗(yàn)證通過。

可選地,所述簽名設(shè)備為移動(dòng)設(shè)備。

本公開實(shí)施例第十方面還提供了一種簽名設(shè)備。該簽名設(shè)備可以包括:本公開實(shí)施例第八方面所述的非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);以及,一個(gè)或者多個(gè)處理器,用于執(zhí)行所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的程序。

本公開實(shí)施例第十一方面還提供又一種非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。該非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中包括一個(gè)或多個(gè)程序,所述一個(gè)或多個(gè)程序用于執(zhí)行本公開第五方面任一實(shí)施例所述的生成區(qū)塊鏈區(qū)塊的方法。

本公開實(shí)施例第五方面所述的生成區(qū)塊鏈區(qū)塊的方法應(yīng)用于區(qū)塊鏈網(wǎng)絡(luò)中的第二節(jié)點(diǎn),所述方法包括:接收區(qū)塊鏈網(wǎng)絡(luò)中的第一節(jié)點(diǎn)廣播的簽名區(qū)塊,其中,所述簽名區(qū)塊由所述第一節(jié)點(diǎn)對(duì)原始區(qū)塊進(jìn)行數(shù)字簽名操作而生成,所述原始區(qū)塊由所述第一節(jié)點(diǎn)根據(jù)區(qū)塊鏈協(xié)議生成;對(duì)所述簽名區(qū)塊的簽名進(jìn)行驗(yàn)證;在對(duì)所述簽名區(qū)塊的簽名驗(yàn)證通過的情況下,將所述簽名區(qū)塊添加到所述區(qū)塊鏈網(wǎng)絡(luò)中。

可選地,所述對(duì)所述簽名區(qū)塊的簽名進(jìn)行驗(yàn)證包括:使用簽名設(shè)備的公鑰對(duì)所述簽名區(qū)塊的原始區(qū)塊簽名進(jìn)行驗(yàn)證。其中,所述簽名區(qū)塊,由所述第一節(jié)點(diǎn)將原始區(qū)塊簽名附加給所述原始區(qū)塊而生成。所述原始區(qū)塊簽名,由所述簽名設(shè)備在中間簽名驗(yàn)證通過的情況下,使用所述簽名設(shè)備的私鑰,對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。所述中間簽名,由所述第一節(jié)點(diǎn)使用所述第一節(jié)點(diǎn)的私鑰對(duì)所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。

可選地,所述簽名設(shè)備與所述第一節(jié)點(diǎn)具有對(duì)應(yīng)關(guān)系。所述原始區(qū)塊簽名,由所述簽名設(shè)備在確定所述中間簽名為具有對(duì)應(yīng)關(guān)系的第一節(jié)點(diǎn)的簽名的情況下,使用所述簽名設(shè)備的私鑰對(duì)所述中間簽名中包含的所述原始區(qū)塊的哈希值進(jìn)行數(shù)字簽名操作而生成。所述對(duì)所述簽名區(qū)塊的簽名進(jìn)行驗(yàn)證包括:使用所述簽名設(shè)備的公鑰,對(duì)所述簽名區(qū)塊的原始區(qū)塊簽名進(jìn)行驗(yàn)證。

本公開實(shí)施例第十二方面還提供了另一種區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)。該區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)可以包括:本公開實(shí)施例第十一方面所述的非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì);以及,一個(gè)或者多個(gè)處理器,用于執(zhí)行所述非臨時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的程序。

本公開實(shí)施例第十三方面還提供了一種生成區(qū)塊鏈區(qū)塊的系統(tǒng)。該系統(tǒng)可以包括:至少一個(gè)本公開實(shí)施例第八方面所述的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn),至少一個(gè)本公開實(shí)施例第十方面所述的簽名設(shè)備,以及,至少一個(gè)本公開實(shí)施例第十二方面所述的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)。其中,本公開實(shí)施例第八方面所述的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)以及本公開實(shí)施例第十二方面所述的區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)屬于同一區(qū)塊鏈網(wǎng)絡(luò)。

以上結(jié)合附圖詳細(xì)描述了本公開的優(yōu)選實(shí)施方式,但是,本公開并不限于上述實(shí)施方式中的具體細(xì)節(jié),在本公開的技術(shù)構(gòu)思范圍內(nèi),可以對(duì)本公開的技術(shù)方案進(jìn)行多種簡(jiǎn)單變型,這些簡(jiǎn)單變型均屬于本公開的保護(hù)范圍。

另外需要說明的是,在上述具體實(shí)施方式中所描述的各個(gè)具體技術(shù)特征,在不矛盾的情況下,可以通過任何合適的方式進(jìn)行組合。為了避免不必要的重復(fù),本公開對(duì)各種可能的組合方式不再另行說明。

此外,本公開的各種不同的實(shí)施方式之間也可以進(jìn)行任意組合,只要其不違背本公開的思想,其同樣應(yīng)當(dāng)視為本公開所公開的內(nèi)容。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
延津县| 洮南市| 鹤庆县| 汽车| 同德县| 丹寨县| 湖口县| 班戈县| 衡水市| 沁阳市| 丘北县| 介休市| 镇赉县| 兰州市| 中江县| 九台市| 亚东县| 泰宁县| 乌兰县| 乌拉特后旗| 芜湖县| 古蔺县| 鹤山市| 苍溪县| 洞头县| 即墨市| 鸡西市| 景德镇市| 五台县| 额尔古纳市| 扶风县| 鄂托克旗| 曲松县| 朝阳市| 夹江县| 石门县| 武陟县| 普兰店市| 景谷| 比如县| 杨浦区|