亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Hyperledger Fabric平臺(tái)的國(guó)密算法嵌入研究

        2021-02-26 12:46:28曹琪阮樹驊陳興蜀蘭曉張紅霞金泓鍵
        關(guān)鍵詞:國(guó)密哈希調(diào)用

        曹琪,阮樹驊,陳興蜀,蘭曉,張紅霞,金泓鍵

        Hyperledger Fabric平臺(tái)的國(guó)密算法嵌入研究

        曹琪,阮樹驊,陳興蜀,蘭曉,張紅霞,金泓鍵

        (1. 四川大學(xué)網(wǎng)絡(luò)空間安全學(xué)院,四川 成都 610065;2. 四川大學(xué)網(wǎng)絡(luò)空間安全研究院,四川 成都 610065)

        Hyperledger Fabric是為企業(yè)級(jí)商用區(qū)塊鏈項(xiàng)目提供支撐的且可擴(kuò)展的聯(lián)盟鏈平臺(tái),密碼算法為該平臺(tái)的核心,保證上鏈數(shù)據(jù)的安全和不可篡改,但原始Fabric平臺(tái)缺乏對(duì)國(guó)密算法的支持。因此,設(shè)計(jì)并實(shí)現(xiàn)了Fabric平臺(tái)的國(guó)密算法的嵌入和支持。首先,通過分析Fabric平臺(tái)中組件間交互邏輯和密碼算法的調(diào)用場(chǎng)景,提出了在該平臺(tái)嵌入國(guó)密支持的設(shè)計(jì)思路;其次,基于同濟(jì)開源國(guó)密實(shí)現(xiàn)源碼,為Fabric平臺(tái)BCCSP添加SM2、SM3和SM4算法模塊與接口;再次,將Fabric平臺(tái)的各組件上層應(yīng)用的密碼算法調(diào)用接口與對(duì)應(yīng)國(guó)密算法接口相關(guān)聯(lián),實(shí)現(xiàn)上層應(yīng)用對(duì)國(guó)密算法調(diào)用的支持;最后,通過創(chuàng)建fabric-gm聯(lián)盟鏈測(cè)試實(shí)例驗(yàn)證Fabric平臺(tái)中嵌入的國(guó)密算法模塊和接口的正確性及有效性,并與原生Fabric平臺(tái)鏡像構(gòu)建的測(cè)試實(shí)例進(jìn)行了性能比較。實(shí)驗(yàn)結(jié)果表明,嵌入的國(guó)密算法模塊和接口可用、正確且生成的國(guó)密證書有效,與原生Fabric平臺(tái)鏡像相比,網(wǎng)絡(luò)啟動(dòng)時(shí)間增加3%,毫秒級(jí)單位下的交易時(shí)間開銷增加1倍,動(dòng)態(tài)證書生成時(shí)間增加9%,各項(xiàng)性能指標(biāo)均在可接受范圍內(nèi)。

        區(qū)塊鏈;Hyperledger Fabric;SM2;SM3;SM4

        1 引言

        Hyperledger Fabric[1](簡(jiǎn)稱Fabric平臺(tái))是由IBM牽頭、旨在為企業(yè)級(jí)商用區(qū)塊鏈應(yīng)用場(chǎng)景打造的許可分布式賬本支撐平臺(tái),也是目前聯(lián)盟鏈[2]的典型代表。在克服了公有鏈吞吐量低[3]、交易公開而導(dǎo)致的無隱私性和私有鏈[4]的強(qiáng)中心化等問題的同時(shí),它以模塊化和可插拔的特性,可向上提供高度的機(jī)密性、靈活性及可擴(kuò)展性[5],使Fabric平臺(tái)滿足廣泛行業(yè)的商業(yè)應(yīng)用訴求。密碼技術(shù)是Fabric平臺(tái)實(shí)現(xiàn)的核心技術(shù)之一,是Fabric上層應(yīng)用開發(fā)的基礎(chǔ)支撐技術(shù)?;诿艽a技術(shù),F(xiàn)abric實(shí)現(xiàn)了一種基于證書的身份管理與一種“執(zhí)行?排序?驗(yàn)證”并行執(zhí)行的新交易模式,保證了對(duì)鏈上的每一步操作進(jìn)行嚴(yán)格的身份與權(quán)限驗(yàn)證,進(jìn)而保證該平臺(tái)上數(shù)據(jù)的安全與不可篡改。但目前原生的Fabric平臺(tái)僅支持通用的國(guó)際密碼算法,缺乏對(duì)國(guó)家密碼算法(簡(jiǎn)稱國(guó)密算法)支持。同時(shí),我國(guó)政府在技術(shù)監(jiān)管和自主可控方面對(duì)從事區(qū)塊鏈系統(tǒng)建設(shè)、服務(wù)運(yùn)營(yíng)的機(jī)構(gòu)提出了國(guó)密算法規(guī)范要求[6],因此,將我國(guó)自主研發(fā)的國(guó)產(chǎn)密碼算法嵌入Fabric平臺(tái)顯得尤為必要。

        目前,已有國(guó)內(nèi)學(xué)者或機(jī)構(gòu)主要針對(duì)Hyperledger Fabric 1.0開展了SM2[7-8]、SM3[9-10]等國(guó)密算法的嵌入工作。其中,具有代表性的是蘇州同濟(jì)區(qū)塊鏈研究院[11]開源的Fabric 1.0的國(guó)密嵌入代碼。在此基礎(chǔ)上,張青禾[12]基于支持國(guó)密的Fabric1.0提出了一種隱私保護(hù)方案。張夢(mèng)一[13]基于支持國(guó)密的Fabric1.0實(shí)現(xiàn)了一種通用積分管理系統(tǒng)。但上述工作僅針對(duì)Fabric平臺(tái)的部分組件進(jìn)行了針對(duì)性應(yīng)用的國(guó)密嵌入支持,不具有通用性,且未實(shí)現(xiàn)整個(gè)平臺(tái)的國(guó)密算法支持,無法支持廣泛的商用應(yīng)用。

        本文通過分析Fabric平臺(tái)組件間交互邏輯與密碼算法的調(diào)用場(chǎng)景,提出了Fabric平臺(tái)國(guó)密算法嵌入的設(shè)計(jì)思路,對(duì)Fabric平臺(tái)核心組件區(qū)塊鏈密碼服務(wù)提供者[1](BCCSP,blockchain cryptographic service provider)嵌入國(guó)密SM2、SM3及SM4[14]算法模塊與接口,并將Fabric平臺(tái)各組件的上層密碼調(diào)用關(guān)聯(lián)到國(guó)密算法接口,進(jìn)而實(shí)現(xiàn)了Fabric平臺(tái)的國(guó)密算法支持。

        2 相關(guān)工作

        2.1 Fabric平臺(tái)架構(gòu)及組件間交互邏輯

        Fabric平臺(tái)由Fabric聯(lián)盟鏈網(wǎng)絡(luò)[15]、Fabric-CA[16]以及Fabric-SDK[17]3部分組成,組件間交互邏輯如圖1所示,展示了Fabric聯(lián)盟鏈網(wǎng)絡(luò)典型的交易流程。

        1) Fabric聯(lián)盟鏈網(wǎng)絡(luò)[1,15]是Fabric平臺(tái)的核心組成部分,依賴于底層密碼算法為上鏈數(shù)據(jù)提供不可篡改等特性。

        2) Fabric-CA[16]是Fabric平臺(tái)的證書頒發(fā)機(jī)構(gòu),用于網(wǎng)絡(luò)成員身份證書的動(dòng)態(tài)管理,包括證書的動(dòng)態(tài)頒發(fā)與吊銷等。

        圖1 Fabric平臺(tái)組件間交互邏輯圖

        Figure 1 The interaction logic between components in the Fabric

        3) Fabric-SDK[17]是為開發(fā)人員編寫和測(cè)試鏈碼應(yīng)用程序提供的一個(gè)結(jié)構(gòu)化、可配置的庫環(huán)境,并作為Fabric平臺(tái)的客戶端。

        從圖1可以看出,F(xiàn)abric-SDK向Fabric-CA進(jìn)行網(wǎng)絡(luò)成員動(dòng)態(tài)身份證書的注冊(cè),并向Fabric聯(lián)盟鏈網(wǎng)絡(luò)發(fā)起交易等操作。在交易處理的每個(gè)環(huán)節(jié)上都會(huì)進(jìn)行簽名驗(yàn)簽操作,并對(duì)交易信息進(jìn)行權(quán)限與格式檢查,需要大量調(diào)用密碼算法。因此,為了實(shí)現(xiàn)Fabric平臺(tái)對(duì)國(guó)密算法的支持,需要分別實(shí)現(xiàn)Fabric聯(lián)盟鏈網(wǎng)絡(luò)、Fabric-CA及Fabric-SDK對(duì)國(guó)密算法的支持。

        這里需要強(qiáng)調(diào)的是關(guān)于網(wǎng)絡(luò)成員身份證書的動(dòng)態(tài)管理問題,F(xiàn)abric本身維護(hù)了一個(gè)在網(wǎng)絡(luò)啟動(dòng)時(shí)用于靜態(tài)生成節(jié)點(diǎn)證書的二進(jìn)制證書生成工具cryptogen,通過該工具可生成各節(jié)點(diǎn)證書,從而實(shí)現(xiàn)對(duì)任何上鏈操作的身份驗(yàn)證,但是在系統(tǒng)要求動(dòng)態(tài)添加節(jié)點(diǎn)用戶時(shí),該方式存在反復(fù)修改配置文件并重啟網(wǎng)絡(luò)更新配置的問題。故在實(shí)際應(yīng)用中,可使用Fabric-CA代替cryptogen證書生成方式,實(shí)現(xiàn)動(dòng)態(tài)管理Fabric聯(lián)盟鏈網(wǎng)絡(luò)中節(jié)點(diǎn)身份證書,進(jìn)而為Fabric平臺(tái)提供可動(dòng)態(tài)頒發(fā)與吊銷的動(dòng)態(tài)成員管理功能。

        2.2 Fabric聯(lián)盟鏈網(wǎng)絡(luò)的安全與密碼服務(wù)

        Fabric聯(lián)盟鏈網(wǎng)絡(luò)技術(shù)架構(gòu)如圖2所示,與本文研究工作關(guān)系最為密切的是區(qū)塊鏈密碼服務(wù)提供者BCCSP[1]模塊,基于BCCSP可實(shí)現(xiàn)Fabric聯(lián)盟鏈網(wǎng)絡(luò)共同的安全與密碼服務(wù),為上層應(yīng)用提供安全的、可插拔的成員身份管理(MSP,membership service provider)、共識(shí)服務(wù)和鏈碼服務(wù)[18]。

        圖2 Fabric聯(lián)盟鏈網(wǎng)絡(luò)技術(shù)架構(gòu)

        Figure 2 The technology architecture of the Fabric alliance chain network

        BCCSP模塊封裝了基于軟件實(shí)現(xiàn)的SW和基于硬件實(shí)現(xiàn)的PCAS11兩類BCCSP實(shí)例,每類實(shí)例提供包括密鑰的生命周期管理、哈希、簽名驗(yàn)證及加解密等4大類功能接口供上層服務(wù)調(diào)用。BCCSP模塊支持的密碼算法主要有哈希密碼算法、對(duì)稱密碼算法和非對(duì)稱密碼算法3類,各類密碼算法支持的應(yīng)用場(chǎng)景如圖3所示,可通過CSP選項(xiàng)來指定BCCSP選取的實(shí)例,如國(guó)密算法實(shí)例,從而為上層應(yīng)用提供相應(yīng)的國(guó)密算法調(diào)用的支持。為了在Fabric聯(lián)盟鏈網(wǎng)絡(luò)中嵌入國(guó)密支持,首先需要在BCCSP底層實(shí)現(xiàn)中嵌入基于國(guó)密的BCCSP實(shí)例,并提供國(guó)密SM3、SM2和SM4的功能接口,其次需要將上層應(yīng)用的密碼算法調(diào)用接口與國(guó)密接口關(guān)聯(lián),從而最終實(shí)現(xiàn)基于國(guó)密的Fabric聯(lián)盟鏈網(wǎng)絡(luò)共同的安全與密碼服務(wù)。

        圖3 Fabric平臺(tái)支持的密碼算法及使用場(chǎng)景

        Figure 3 Cryptographic algorithms support and usage scenarios in the Fabric

        3 Fabric平臺(tái)國(guó)密算法嵌入設(shè)計(jì)思路

        本文將嵌入了國(guó)密支持的Fabric平臺(tái)稱為Fabric-gm,具體的Fabric-gm平臺(tái)實(shí)現(xiàn)過程同時(shí)考慮了Fabric-gm聯(lián)盟鏈網(wǎng)絡(luò)、Fabric-CA-gm和Fabric-SDK-gm三類組件的國(guó)密嵌入實(shí)現(xiàn),國(guó)密算法嵌入設(shè)計(jì)思路如圖4所示,主要工作有以下4個(gè)部分。

        圖4 Fabric平臺(tái)國(guó)密算法嵌入設(shè)計(jì)思路

        Figure 4 The embedding scheme of the GM in the Fabric

        1) 基于Go標(biāo)準(zhǔn)的底層國(guó)密算法嵌入:可依據(jù)SM系列國(guó)密算法的標(biāo)準(zhǔn)規(guī)范文件,設(shè)計(jì)并實(shí)現(xiàn)基于Go標(biāo)準(zhǔn)的國(guó)密算法,包括常用的加解密算法(SM4、SM2)、哈希算法(SM3)以及簽名驗(yàn)簽算法(SM2)等。在這部分工作中,本文對(duì)開源實(shí)現(xiàn)(指同濟(jì)區(qū)塊鏈研究院對(duì)國(guó)密SM2、SM3和SM4算法的開源實(shí)現(xiàn))的底層國(guó)密算法實(shí)例[19]進(jìn)行了正確性驗(yàn)證,并在BCCSP模塊的國(guó)密實(shí)例中采用了該算法實(shí)例。

        2) BCCSP模塊的國(guó)密算法接口嵌入:分別在BCCSP模塊的哈希算法子模塊、對(duì)稱密碼算法子模塊和非對(duì)稱密碼算法子模塊下,添加相關(guān)的國(guó)密SM3模塊、SM4模塊和SM2模塊的調(diào)用接口。

        3) 上層應(yīng)用的國(guó)密算法接口嵌入:在上層程序與應(yīng)用中,添加相關(guān)的國(guó)密算法接口調(diào)用,將原哈希、簽名驗(yàn)簽等密碼算法接口與國(guó)密SM3、SM2算法接口關(guān)聯(lián),以實(shí)現(xiàn)上層應(yīng)用對(duì)國(guó)密算法調(diào)用的支持。

        4) 對(duì)嵌入國(guó)密算法及相關(guān)調(diào)用接口后的Fabric平臺(tái)源碼進(jìn)行編譯,形成支持國(guó)密算法的可執(zhí)行文件,并打包成Fabric-gm鏡像文件,部署支持國(guó)密算法的Fabric-gm平臺(tái),通過基于國(guó)密接口的加解密、簽名驗(yàn)簽及哈希對(duì)比等實(shí)驗(yàn)驗(yàn)證所嵌入的國(guó)密算法的正確性、可用性和有效性。

        4 Fabric平臺(tái)國(guó)密算法嵌入實(shí)現(xiàn)

        4.1 Fabric聯(lián)盟鏈網(wǎng)絡(luò)國(guó)密算法嵌入實(shí)現(xiàn)

        4.1.1 BCCSP國(guó)密算法相關(guān)接口實(shí)現(xiàn)

        Fabric聯(lián)盟鏈網(wǎng)絡(luò)BCCSP模塊國(guó)密算法相關(guān)接口實(shí)現(xiàn)如圖5所示。將基于同濟(jì)實(shí)現(xiàn)的底層國(guó)密算法GMSM代碼封裝成支持國(guó)密算法的BCCSP實(shí)例,即在CSP選項(xiàng)添加GM軟件實(shí)現(xiàn)選項(xiàng)并在該選項(xiàng)下添加bccsp-gm實(shí)例,提供SM2非對(duì)稱加密算法選項(xiàng)(用于數(shù)字簽名及驗(yàn)證)、SM3哈希算法選項(xiàng)、SM4對(duì)稱加密算法選項(xiàng)以及與X.509證書相關(guān)的各類國(guó)密算法與服務(wù)支持的接口,如圖5所示。特別地,國(guó)密證書生成和國(guó)密證書與密鑰轉(zhuǎn)換接口,不僅提供了已封裝的國(guó)密證書生成接口,還提供了將X.509證書和密鑰轉(zhuǎn)換成SM2國(guó)密證書和密鑰的接口。

        4.1.2 Fabric聯(lián)盟鏈網(wǎng)絡(luò)上層應(yīng)用國(guó)密算法調(diào)用支持

        Fabric聯(lián)盟鏈網(wǎng)絡(luò)上層應(yīng)用的國(guó)密算法支持主要分為網(wǎng)絡(luò)啟動(dòng)過程和交易流程的國(guó)密算法調(diào)用支持兩個(gè)部分。

        網(wǎng)絡(luò)啟動(dòng)過程要求證書生成工具cryptogen能夠?yàn)閷?duì)應(yīng)的網(wǎng)絡(luò)節(jié)點(diǎn)生成國(guó)密身份證書與密鑰。因此,相關(guān)的國(guó)密算法調(diào)用支持主要包括以下內(nèi)容:

        圖5 BCCSP國(guó)密算法接口實(shí)現(xiàn)示意

        Figure 5 The GM interface implementation for BCCSP

        1) 修改example和sampleconfig文件下的網(wǎng)絡(luò)結(jié)構(gòu)配置參數(shù),保證其BCCSP實(shí)例指向BCCSP-gm實(shí)例;

        2) 修改common文件下CA結(jié)構(gòu)體、證書生成與加載及MSP證書鏈,保證能夠生成支持國(guó)密的cryptogen,進(jìn)而為各網(wǎng)絡(luò)節(jié)點(diǎn)生成對(duì)應(yīng)的國(guó)密身份證書與密鑰。

        交易流程要求對(duì)一次完整交易中涉及的交易發(fā)起、執(zhí)行、不同類型網(wǎng)絡(luò)節(jié)點(diǎn)簽名與驗(yàn)簽、通道管理、賬本管理、區(qū)塊生成、基于Gossip的區(qū)塊分發(fā)、鏈碼調(diào)用等處理操作都進(jìn)行基于國(guó)密的身份與權(quán)限驗(yàn)證。因此,相關(guān)的國(guó)密算法調(diào)用支持主要包括以下內(nèi)容。

        1) Common模塊:在channel.go中添加國(guó)密SM3算法的調(diào)用支持,在csp.go中添加SM2的密鑰獲取方法,保證默認(rèn)密鑰加載選項(xiàng)指向國(guó)密SM2接口。

        2) Core模塊:在server.go中添加國(guó)密X.509格式的證書解析方法。

        3) MSP模塊:在cert.go中添加國(guó)密X.509格式的證書反序列化方法,在identities.go添加指向SM3哈希算法的實(shí)現(xiàn)。

        4) Common、Core、MSP、Peer、Orderer、Gossip等模塊的密碼算法調(diào)用修改指向bccsp-gm提供的國(guó)密接口,從而實(shí)現(xiàn)各上層應(yīng)用的國(guó)密算法調(diào)用支持。

        將4.1.1節(jié)和4.1.2節(jié)修改后的源碼重新編譯,生成支持國(guó)密的二進(jìn)制文件,并打包生成用于環(huán)境部署的Fabric-gm鏡像文件,從而實(shí)現(xiàn)國(guó)密支持嵌入。

        4.2 Fabric-CA國(guó)密算法嵌入實(shí)現(xiàn)

        4.2.1 Fabric-CA的國(guó)密算法接口實(shí)現(xiàn)

        首先,在Fabric-CA組件的lib文件下添加國(guó)密CA驗(yàn)證方法,新添gmca.go文件,該文件封裝了基于國(guó)密算法的簽名、證書生成、證書請(qǐng)求與轉(zhuǎn)換等國(guó)密GM實(shí)現(xiàn)方法與接口。

        同時(shí),修改Fabric-CA客戶端和服務(wù)端的config.go配置文件的BCCSP的default和CSR選項(xiàng)字段需要指向國(guó)密GM實(shí)例和新國(guó)密接口。

        此外,在Fabric-CA組件中的util文件下添加基于國(guó)密算法的證書與密鑰管理方法,添加的方法如圖6所示,并修改令牌創(chuàng)建與驗(yàn)證代碼,為Fabric-CA上層應(yīng)用對(duì)國(guó)密算法接口的調(diào)用提供支持。

        圖6 fabric-CA組件下util文件新添方法示意

        Figure 6 The new methods added to the util file

        4.2.2 Fabric-CA上層應(yīng)用國(guó)密算法調(diào)用支持

        Fabric-CA動(dòng)態(tài)證書申請(qǐng)流程如圖7所示,上層應(yīng)用的國(guó)密算法調(diào)用支持主要包括以下4個(gè)階段。

        圖7 Fabric-CA動(dòng)態(tài)證書申請(qǐng)流程

        Figure 7 The flowchart of dynamic certificate application for the Fabric-CA

        1) Fabric-CA服務(wù)器初始化啟動(dòng)階段的國(guó)密算法調(diào)用支持。

        2) Enroll(注冊(cè))管理員注冊(cè)階段的國(guó)密算法調(diào)用支持。

        3) Register(用戶登記)階段的國(guó)密算法調(diào)用支持。

        4) Enroll(注冊(cè))普通用戶注冊(cè)階段的國(guó)密算法調(diào)用支持。

        Fabric-CA服務(wù)器初始化啟動(dòng)階段國(guó)密調(diào)用流程如圖8所示,圖上虛線箭頭表示間接調(diào)用,實(shí)線箭頭表示直接調(diào)用,灰色背景部分為新添的國(guó)密算法調(diào)用支持,以CA服務(wù)器初始化部分為例,通過修改證書有效性檢測(cè)、根密鑰生成以及添加CA部分調(diào)用的接口或方法,可實(shí)現(xiàn)將該CA指向BCCSP-gm及新添的國(guó)密證書與密鑰處理方法,進(jìn)而實(shí)現(xiàn)該部分對(duì)國(guó)密算法的調(diào)用支持。通過對(duì)注冊(cè)處理程序和監(jiān)聽與服務(wù)部分進(jìn)行類似的操作,最終可實(shí)現(xiàn)該階段的國(guó)密調(diào)用支持。

        Enroll(注冊(cè))階段的國(guó)密算法調(diào)用流程如圖9的Enroll操作部分所示,該階段主要涉及管理員注冊(cè)和用戶注冊(cè)。因此,該階段的操作主要有:①實(shí)例化支持國(guó)密的Fabric-CA客戶端;②修改CSR的生成代碼和基于MSP的證書存儲(chǔ)代碼;③修改圖9中注冊(cè)階段所涉及的函數(shù)以及相關(guān)函數(shù)中的子調(diào)用,添加對(duì)國(guó)密算法相關(guān)接口的調(diào)用,從而實(shí)現(xiàn)對(duì)國(guó)密密鑰/證書請(qǐng)求與生成的支持。

        圖8 Fabric-CA服務(wù)器初始化啟動(dòng)階段的國(guó)密調(diào)用流程

        Figure 8 The invoking flowchart of the GM during the Fabric-CA initial phase

        圖9 Enroll與Register國(guó)密調(diào)用流程

        Figure 9 The invoking flowchart of the GM during the enroll and register phase

        Register(用戶登記)階段的國(guó)密算法調(diào)用流程如圖9的Register操作部分所示,該階段僅在管理員身份驗(yàn)證部分存在密碼算法的調(diào)用,因此,直接修改圖9中Register操作下調(diào)用函數(shù)及其子調(diào)用,添加對(duì)國(guó)密算法相關(guān)接口的調(diào)用,就能夠?qū)崿F(xiàn)基于國(guó)密的通信憑證token創(chuàng)建、簽名及證書驗(yàn)證等操作。

        5 功能測(cè)試與性能分析

        本文所有實(shí)驗(yàn)均在虛擬化環(huán)境下進(jìn)行。宿主機(jī)配置:Win10 x86_64、Intel Core i5-8400 CPU @ 2.80 GHz 2.81 GHz。虛擬機(jī)配置:Ubuntu 16.04.05 x86_64,CPU可用核數(shù)為1,內(nèi)存4 GB。

        5.1 Fabric聯(lián)盟鏈網(wǎng)絡(luò)國(guó)密算法嵌入實(shí)現(xiàn)

        5.1.1 國(guó)密算法接口測(cè)試

        國(guó)密算法接口測(cè)試對(duì)Fabric-gm平臺(tái)上BCCSP下添加的國(guó)密SM3、SM4及SM2接口的可用性和有效性進(jìn)行評(píng)估,測(cè)試實(shí)驗(yàn)如下。

        (1)SM3哈希算法接口測(cè)試

        首先,進(jìn)行Fabric-gm平臺(tái)上SM3哈希算法接口調(diào)用可用性驗(yàn)證,驗(yàn)證上層應(yīng)用調(diào)用的哈希算法指向國(guó)密SM3哈希算法接口。圖10的長(zhǎng)方形框內(nèi)顯示了Fabric-gm平臺(tái)默認(rèn)的哈希選項(xiàng)為國(guó)密SM3哈希算法接口,即Fabric-gm平臺(tái)上層應(yīng)用調(diào)用的哈希算法指向了國(guó)密SM3哈希算法接口,使用國(guó)密SM3哈希算法進(jìn)行簽名驗(yàn)簽及標(biāo)識(shí)ID值計(jì)算等操作過程。

        圖10 Fabric-gm上的SM3哈希接口調(diào)用可用性驗(yàn)證

        Figure 10 The verification of usability for SM3 interface

        其次,進(jìn)行Fabric-gm平臺(tái)上SM3哈希算法接口有效性驗(yàn)證,驗(yàn)證上層應(yīng)用調(diào)用的國(guó)密SM3哈希算法計(jì)算的正確性。將測(cè)試消息設(shè)定為“Hello World”,分別使用GmSSL[20]函數(shù)庫和Fabric-gm平臺(tái)的SM3哈希算法接口計(jì)算測(cè)試消息的哈希值,比較計(jì)算結(jié)果。圖11(a)為基于GmSSL的SM3哈希函數(shù)計(jì)算得到的結(jié)果,圖11(b)為基于Go test測(cè)試調(diào)用BCCSP下哈希算法接口的哈希計(jì)算結(jié)果,由計(jì)算結(jié)果可知,兩者對(duì)同一測(cè)試消息計(jì)算的哈希結(jié)果一致,因此,F(xiàn)abric-gm平臺(tái)的SM3哈希算法接口是可用且有效的,可被正確使用。

        圖11 Fabric-gm上的SM3哈希接口有效性驗(yàn)證

        Figure 11 The verification of validity for SM3 in the Fabric-gm

        (2)SM4算法接口測(cè)試

        驗(yàn)證Fabric-gm平臺(tái)上BCCSP下添加的國(guó)密SM4算法接口的可用性和有效性。調(diào)用BCCSP下的KeyGen接口生成SM4算法密鑰,再調(diào)用SM4的Encrypt接口和Decrypt接口進(jìn)行數(shù)據(jù)的加解密操作。測(cè)試結(jié)果如圖12所示,首先,SM4密鑰生成成功,其次,基于該SM4密鑰對(duì)明文數(shù)據(jù)進(jìn)行加解密操作,解密后數(shù)據(jù)與明文數(shù)據(jù)一致,因此,驗(yàn)證了Fabric-gm平臺(tái)的SM4算法相關(guān)接口是可用且有效的,可被正確使用。

        圖12 Fabric-gm/BCCSP上的SM4算法接口可用性和有效性驗(yàn)證結(jié)果

        Figure 12 The verification of availability and validity for SM4 in the Fabric-gm/BCCSP

        (3)SM2算法接口測(cè)試

        驗(yàn)證Fabric-gm平臺(tái)上BCCSP下添加的國(guó)密SM2算法接口的可用性和有效性。調(diào)用BCCSP下KeyGen生成SM2算法密鑰,再調(diào)用signGMSM2和verifyGMSM2接口進(jìn)行簽名驗(yàn)簽操作。測(cè)試結(jié)果如圖13所示,簽名過程中的值與驗(yàn)簽過程中的值相等,表明BCCSP下SM2算法相關(guān)接口被成功使用,因此,驗(yàn)證了Fabric-gm平臺(tái)的SM2算法相關(guān)接口是可用且有效的,可被正確使用。

        圖13 Fabric-gm/BCCSP上的SM2算法接口有用性和有效性驗(yàn)證結(jié)果

        Figure 13 The verification of availability and validity for SM2 in the Fabric-gm/BCCSP

        5.1.2 國(guó)密算法證書有效性測(cè)試

        測(cè)試驗(yàn)證是否能夠成功生成國(guó)密證書,包含兩方面的內(nèi)容。

        (1)證書生成工具cryptogen對(duì)國(guó)密算法支持的驗(yàn)證

        如圖14所示,證書生成工具cryptogen中的簽名與哈希算法分別指向SM2和SM3算法,表明基于cryptogen工具生成節(jié)點(diǎn)證書的Fabric-gm聯(lián)盟鏈網(wǎng)絡(luò)實(shí)現(xiàn)了對(duì)國(guó)密證書生成操作的支持。

        圖14 fabric-gm/cryptogen支持國(guó)密證書生成

        Figure 14 The GM certificate in the fabric-gm/cryptogen

        (2)Fabric-CA-gm動(dòng)態(tài)證書生成測(cè)試

        在Fabric-CA-gm容器內(nèi),首先,通過fabric-ca-client命令注冊(cè)名為JimTest新用戶;其次,將該新用戶的證書信息復(fù)制至容器外,利用Gmssl命令展示此證書信息。如圖15所示,該證書的簽名與哈希算法指向國(guó)密SM2和SM3算法,表明Fabric-CA-gm實(shí)現(xiàn)了對(duì)國(guó)密動(dòng)態(tài)證書生成操作的支持。

        綜上所述,F(xiàn)abric-gm和Fabric-CA-gm基于國(guó)密算法的證書鏈成功建立。

        圖15 Fabric-CA-gm支持國(guó)密證書生成

        Figure 15 The GM certificate supported by the Fabric-CA-gm

        5.1.3 Fabric-gm聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)正常啟動(dòng)驗(yàn)證

        通過命令./byfn.sh up -a依次執(zhí)行Fabric-gm聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)啟動(dòng)時(shí)的節(jié)點(diǎn)容器(包括CA容器)創(chuàng)建、節(jié)點(diǎn)密鑰證書生成驗(yàn)證、鏈碼實(shí)例化及一次完整的交易等過程。執(zhí)行結(jié)果如圖16所示,表明Fabric-gm聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)能夠正常啟動(dòng)。

        圖16 Fabric-gm聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)正常啟動(dòng)驗(yàn)證

        Figure 16 The normal startup verification for the Fabric-gm testing network

        5.2 國(guó)密嵌入性能對(duì)比測(cè)試

        5.2.1 系統(tǒng)時(shí)間開銷對(duì)比測(cè)試

        基于聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)啟動(dòng)時(shí)間探索系統(tǒng)時(shí)間開銷在國(guó)密嵌入前后的變化。

        聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)啟動(dòng)時(shí)間定義:從byfn.sh開始執(zhí)行開始,經(jīng)歷證書生成、容器創(chuàng)建、通道創(chuàng)建、節(jié)點(diǎn)配置以及鏈碼安裝實(shí)例化等過程,直至完成一次鏈碼查詢?yōu)橹?,被稱為聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)的啟動(dòng)時(shí)間。

        在虛擬環(huán)境下分別部署基于國(guó)密算法的Fabric-gm平臺(tái)和原生Fabric平臺(tái)開發(fā)環(huán)境,保證兩種環(huán)境下聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)的結(jié)構(gòu)配置信息和鏈碼不變?;诿糠N環(huán)境重復(fù)啟動(dòng)聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)10次,求均值。測(cè)試結(jié)果顯示:① Fabric-gm環(huán)境下的聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)啟動(dòng)時(shí)間均值為109.6 s;②原生Fabric環(huán)境下聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)啟動(dòng)時(shí)間均值為106.1s。綜上,F(xiàn)abric-gm平臺(tái)環(huán)境下聯(lián)盟鏈測(cè)試網(wǎng)絡(luò)的啟動(dòng)時(shí)間相較于原生Fabric平臺(tái)環(huán)境下增加3%,因此,F(xiàn)abric-gm平臺(tái)的系統(tǒng)時(shí)間開銷在可接受范圍內(nèi)。

        5.2.2 系統(tǒng)運(yùn)算性能開銷對(duì)比測(cè)試

        SM2和SM3算法主要用于Fabric-gm平臺(tái)中的交易發(fā)起、執(zhí)行和證書生成階段,因此,基于SDK客戶端發(fā)起交易與證書動(dòng)態(tài)生成時(shí)間來探索系統(tǒng)運(yùn)算性能開銷在國(guó)密嵌入前后的變化。針對(duì)同樣的交易內(nèi)容和用戶證書信息進(jìn)行時(shí)間開銷測(cè)試,每項(xiàng)測(cè)試各進(jìn)行1 000次,分別求得測(cè)試均值,測(cè)試結(jié)果如表1所示,F(xiàn)abric-gm平臺(tái)相較于原生Fabric平臺(tái)其平均交易時(shí)間開銷增加1倍,管理員用戶證書動(dòng)態(tài)生成時(shí)間增加10%,普通用戶證書動(dòng)態(tài)生成時(shí)間增加8%,平均動(dòng)態(tài)證書生成時(shí)間增加9%,但增加的時(shí)間量級(jí)為毫秒級(jí),因此,F(xiàn)abric-gm平臺(tái)的運(yùn)算性能開銷在可接受范圍內(nèi)。

        表1 系統(tǒng)運(yùn)算性能開銷結(jié)果

        5.2.3 系統(tǒng)性能影響原因分析

        支持國(guó)密的Fabric-gm平臺(tái)性能提升或減損可能的原因有以下兩方面:① SM2和SM3國(guó)密算法效率本身與對(duì)應(yīng)的ECDSA和SHA256算法效率存在差異;② 不同版本的SM2和SM3國(guó)密算法實(shí)現(xiàn)存在算法效率差異。

        Fabric平臺(tái)原生密碼算法與同濟(jì)實(shí)現(xiàn)的國(guó)密算法的效率對(duì)比分析實(shí)驗(yàn)結(jié)果如圖17所示,分析有如下發(fā)現(xiàn)。

        圖17 密碼算法時(shí)間開銷對(duì)比

        Figure 17 The comparison of cryptographic algorithm time overhead

        1) 各密碼算法簽名、驗(yàn)簽以及哈希操作的時(shí)間開銷基本保持在毫秒級(jí)。

        2) 圖17(a)表明,在基于ECDSA和SM2的不同字節(jié)數(shù)規(guī)模的數(shù)據(jù)的簽名驗(yàn)簽實(shí)驗(yàn)中,兩者的時(shí)間開銷均不隨著字節(jié)數(shù)的增加而增加;基于SM2簽名操作的效率優(yōu)于ECDSA簽名,但ECDSA的驗(yàn)簽操作效率略高于SM2的驗(yàn)簽操作。

        3) 圖17(b)表明,SM3和SHA256哈希操作時(shí)間開銷均隨著字節(jié)數(shù)的增加而近線性增長(zhǎng),SM3時(shí)間開銷高于SHA256,同等條件下,SM3哈希時(shí)間開銷約為SHA256的4倍;圖17(c)表明,哈希調(diào)用的次數(shù)增加其時(shí)間開銷近線性增長(zhǎng)。Fabric平臺(tái)中單個(gè)交易哈希計(jì)算次數(shù)和區(qū)塊大小規(guī)模有限,因此不會(huì)出現(xiàn)系統(tǒng)時(shí)間開銷無限增加的情況。

        Fabric平臺(tái)中密碼算法調(diào)用場(chǎng)景如節(jié)2.2所述,哈希算法在多應(yīng)用場(chǎng)景中被頻繁調(diào)用,哈希算法調(diào)用不僅發(fā)生在所有基于SM2和ECDSA的簽名驗(yàn)簽過程中,還存在于區(qū)塊鏈的鏈?zhǔn)浇Y(jié)構(gòu)形成和特殊ID值計(jì)算的過程中,遠(yuǎn)大于ECDSA和SM2算法調(diào)用頻率。由圖17的分析結(jié)果可知,SM2與ECDSA的算法效率差異較小,而SM3與SHA256在同等條件下算法差異近4倍左右。因此,在時(shí)間開銷單位為毫秒級(jí)別的基礎(chǔ)上,同濟(jì)實(shí)現(xiàn)的SM3哈希算法可能是導(dǎo)致Fabric-gm性能減損的主要原因之一。此外,文獻(xiàn)[21]中結(jié)果表明,不同版本的SM3實(shí)現(xiàn)具有不同的算法效率,因此后期可嘗試優(yōu)化SM3的實(shí)現(xiàn),以使Fabric-gm平臺(tái)獲得更接近或略優(yōu)于原生Fabric平臺(tái)的系統(tǒng)性能。

        6 結(jié)束語

        本文提出了對(duì)Fabric平臺(tái)實(shí)現(xiàn)國(guó)密嵌入的思路,并基于該思路針對(duì)長(zhǎng)期穩(wěn)定版本Fabric release1.4開展了國(guó)密算法的嵌入工作:①基于同濟(jì)開源國(guó)密實(shí)現(xiàn)源碼,在Fabric平臺(tái)的BCCSP下添加SM2、SM3和SM4算法模塊與接口;②將Fabric平臺(tái)的各組件上層調(diào)用的密碼算法接口與對(duì)應(yīng)國(guó)密算法接口相關(guān)聯(lián),實(shí)現(xiàn)上層應(yīng)用對(duì)國(guó)密算法調(diào)用的支持。實(shí)驗(yàn)結(jié)果表明,F(xiàn)abric平臺(tái)國(guó)密嵌入后,測(cè)試網(wǎng)絡(luò)啟動(dòng)、交易以及動(dòng)態(tài)證書生成等過程都成功調(diào)用了基于國(guó)密算法實(shí)現(xiàn)的加解密、簽名驗(yàn)簽及哈希接口,與原系統(tǒng)相比,改造后的系統(tǒng)時(shí)間開銷和系統(tǒng)運(yùn)算性能開銷均在可接受范圍。此外,本文對(duì)系統(tǒng)性能影響的原因進(jìn)行對(duì)比實(shí)驗(yàn)分析,國(guó)密算法本身效率和原生Fabric平臺(tái)的密碼算法之間存在差異性,且不同版本的國(guó)密算法實(shí)現(xiàn)同樣存在差異性,從而可能對(duì)平臺(tái)的性能造成一定的影響。未來,將已嵌入國(guó)密的Fabric-gm平臺(tái)與產(chǎn)業(yè)應(yīng)用相結(jié)合,加速產(chǎn)業(yè)應(yīng)用落地并提升生產(chǎn)效益。

        [1] hyperledger-fabricdocs documentation[EB].

        [2] 董友康,張大偉,韓臻,等. 基于聯(lián)盟區(qū)塊鏈的董事會(huì)電子投票系統(tǒng)[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2017, 3(12): 31-37.

        DONG Y K, ZHANG D W, HAN Z, et al. Board voting system based on the consortium blockchains[J]. Chinese Journal of Network and Information Security, 2017, 3(12): 31-37.

        [3] 潘晨, 劉志強(qiáng), 劉振, 等. 區(qū)塊鏈可擴(kuò)展性研究:問題與方法[J]. 計(jì)算機(jī)研究與發(fā)展, 2018, 55(10):7-18.

        PAN C, LIU Z Q, LIU Z, et al. Research on scalability of blockchain technology:problems and methods[J]. Journal of Computer Research and Development, 2018, 55(10):7-18.

        [4] GUEGAN D. Public blockchain versus private blockhain[J]. documents de travail du centre deconomie de la sorbonne, 2017.

        [5] An introduction to hyperledger[EB].

        [6] 中華人民共和國(guó)金融行業(yè)標(biāo)準(zhǔn). 金融分布式賬本技術(shù)安全規(guī)范[EB].

        Financial industry standard of the people's Republic of China. Security specification for financial distributed ledger technology[EB].

        [7] 國(guó)家密碼管理局. SM2橢圓曲線公鑰密碼算法[EB].

        State Cryptography Administration. Public key cryptographic algorithm sm2 based on elliptic curves[EB].

        [8] 郭青霄,張大偉,常亮,等. 基于SM2的代理保護(hù)代理簽名的設(shè)計(jì)與實(shí)現(xiàn)[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2017, 3(9): 47-54.

        GUO Q X, ZHANG D W, CHANG L, et al. Design and implementation of proxy-protected proxy signature based on SM2[J]. Chinese Journal of Network and Information Security, 2017, 3(9): 47-54.

        [9] 國(guó)家密碼管理局. SM3密碼雜湊算法[EB].

        State Cryptography Administration. SM3 Cryptographic hash algorithm[EB].

        [10] 邵夢(mèng)麗,殷新春,李艷梅. SM3雜湊算法的SoPC組件實(shí)現(xiàn)[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2017, 3(5): 47-53.

        SHAO M L, YIN X C, LI Y M. Implementation of SM3 algorithm based on SoPC component[J]. Chinese Journal of Network and Information Security, 2017, 3(5): 47-53.

        [11] Tongji blockchain Research Institute. Hyperledger-Fabric-gm[EB].

        [12] 張青禾. 區(qū)塊鏈中的身份識(shí)別和訪問控制技術(shù)研究[D]. 北京:北京交通大學(xué),2018.

        ZHANG Q H. Research on identification and acess control in blockchain[D]. Beijing: Beijing Jiaotong University, 2018.

        [13] 張夢(mèng)一. 基于區(qū)塊鏈的通用積分管理系統(tǒng)[D]. 濟(jì)南: 山東大學(xué), 2019.

        ZHANG M Y. General integration management system based on blockchain[D]. Jinan: Shandong University, 2019.

        [14] 國(guó)家密碼管理局. SM4分組密碼算法[EB].

        State Cryptography Administration. SM4 Block cipher algorithm[EB].

        [15] ANDROULAKI E, BARGER A, BORTNIKOV V, et al. Hyperledger Fabric: a distributed operating system for permissioned blockchains[C]//Proceedings of the Thirteenth EuroSys Conference (EuroSys '18). Association for Computing Machinery.2018: 1-15.

        [16] hyperledger-fabric-ca documentation[EB].

        [17] Hyperledger Fabric SDKs[EB].

        [18] 陳劍雄, 張董朱, 深度探索區(qū)塊鏈Hyperledger技術(shù)與應(yīng)用[M]. 北京: 機(jī)械工業(yè)出版社, 2018.

        CHEN J X, ZHANG D Z. In-depth exploration of blockchain Hyperledger technology and application[M],BeiJing:China Machine Press,2018.

        [19] 同濟(jì)區(qū)塊鏈研究院. 國(guó)密SM2、SM3和SM4算法實(shí)現(xiàn)[EB].

        Suzhou Tongji blockchain Research Institute. Implementation of SM2, SM3 and SM4 algorithms[EB].

        [20] GUAN Z. GmSSL[EB].

        [21] SM2算法與原生RSA、ECDSA算法的比較[EB].

        Comparison of SM2 algorithm with RSA and ECDSA[EB].

        Embedding of national cryptographic algorithm in Hyperledger Fabric

        CAO Qi, RUAN Shuhua, CHEN Xingshu, LAN Xiao, ZHANG Hongxia, JIN Hongjian

        1. School of Cyber Science and Engineering, Sichuan University, Chengdu 610065, China 2. Cybersecurity Research Institute, Sichuan University, Chengdu 610065, China

        Hyperledger Fabric is an extensible alliance blockchain platform and provides support for enterprise-level commercial blockchain projects. The cryptographic algorithm is the core technologies of the platform, ensuring the security and non-tampering of the data on the chain. But the original Fabric platform lacks the national cryptographic algorithm support. The embedding and support of the national cryptographic algorithm of the Fabric platform was designed and implemented. Firstly, the interaction logic of between components and the invocation scenario of each type of cryptographic algorithm in the Fabric platform were analyzed, an idea of embedding national cryptographic algorithm support for the platform was proposed. Secondly, the modules and interfaces for SM2, SM3 and SM4 were added to BCCSP of the Fabric platform based on the open source code of national cryptographic algorithm implementation. Thirdly, the interface of cryptographic algorithm invoked by the upper layer of each component is associated to the interface of corresponding national cryptographic algorithms, which realized the invocation support of national cryptographic algorithm for the upper layer applications. Finally, the correctness and effectiveness of the embedded national cryptographic algorithm were verified by creating a fabric-gm test instance. And compared with the performances of the test instance built by the mirror of the native Fabric platform. The experimental results show that the embedded national cryptographic algorithm interfaces are corrected and the generated national cryptographic certificates are effective. Moreover, compared with the native Fabric platform, the network start up time increases by about 3%. In the millisecond unit, the transaction time cost increases by about one time, the dynamic certificate generation time increases by about 9%, and all the performance are within the acceptable range.

        blockchain, Hyperledger Fabric, SM2, SM3, SM4

        TP309.2

        A

        10.11959/j.issn.2096?109x.2021007

        2020?05?24;

        2020?09?18

        阮樹驊,ruanshuhua@scu.edu.cn

        國(guó)家自然科學(xué)基金(61802270);中央高?;A(chǔ)研究經(jīng)費(fèi)(SCU2018D018, 2019SCU12069)

        The National Natural Science Foundation of China(61802270), The Fundamental Research Funds for the Central Universities (SCU2018D018, 2019SCU12069)

        曹琪, 阮樹驊, 陳興蜀, 等. Hyperledger Fabric平臺(tái)的國(guó)密算法嵌入研究[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2021, 7(1): 65-75.

        CAO Q, RUAN S H, CHEN X S, et al. Embedding of national cryptographic algorithm in Hyperledger Fabric[J]. Chinese Journal of Network and Information Security, 2021, 7(1): 65-75.

        曹琪(1996? ),女,四川廣安人,四川大學(xué)碩士生,主要研究方向?yàn)閰^(qū)塊鏈安全及應(yīng)用、網(wǎng)絡(luò)行為分析。

        阮樹驊(1966? ),女,浙江紹興人,四川大學(xué)副教授、碩士生導(dǎo)師,主要研究方向?yàn)樵朴?jì)算與大數(shù)據(jù)安全、區(qū)塊鏈安全。

        陳興蜀(1968? ),女,貴州六枝人,博士,四川大學(xué)教授、博士生導(dǎo)師,主要研究方向?yàn)樵朴?jì)算與大數(shù)據(jù)安全、可信計(jì)算與信息保障。

        蘭曉(1990? ),女, 四川自貢人,博士,四川大學(xué)助理研究員,主要研究方向?yàn)閼?yīng)用密碼學(xué)、安全多方計(jì)算、認(rèn)證密鑰協(xié)商協(xié)議、區(qū)塊鏈安全。

        張紅霞(1996? ),女,河北邢臺(tái)人,四川大學(xué)碩士生,主要研究方向?yàn)閰^(qū)塊鏈安全及應(yīng)用、網(wǎng)絡(luò)行為分析。

        金泓鍵(1996? ),男,重慶人,四川大學(xué)碩士生,主要研究方向?yàn)閰^(qū)塊鏈安全及應(yīng)用、大數(shù)據(jù)分析。

        猜你喜歡
        國(guó)密哈希調(diào)用
        基于國(guó)密的氣象數(shù)據(jù)業(yè)務(wù)安全架構(gòu)研究
        國(guó)密技術(shù)在智能燃?xì)獗硐到y(tǒng)的應(yīng)用與分析
        煤氣與熱力(2021年7期)2021-08-23 01:11:14
        核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
        自助終端設(shè)備國(guó)密改造方法探究
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        基于國(guó)密算法的銀行移動(dòng)營(yíng)銷終端安全系統(tǒng)研究
        基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
        基于OpenCV與均值哈希算法的人臉相似識(shí)別系統(tǒng)
        基于維度分解的哈希多維快速流分類算法
        基于同態(tài)哈希函數(shù)的云數(shù)據(jù)完整性驗(yàn)證算法
        欧美国产日韩a在线视频| 可以免费看亚洲av的网站| 97精品久久久久中文字幕 | 亚洲av无码一区二区三区鸳鸯影院| 久久综合国产乱子伦精品免费 | 侵犯了美丽丰满人妻中文字幕| 香港三级午夜理论三级| 亚洲国产激情一区二区三区| 久久婷婷色香五月综合激情| 中文字幕人妻激情在线视频| 邻居少妇张开腿让我爽了一夜| 国产成人啪精品视频免费软件| 啪啪视频一区二区三区入囗| 国产精品视频白浆免费看| 亚洲国产精品无码久久一区二区| 欲色天天网综合久久| 精品久久亚洲一级α| 亚洲综合一区二区三区在线观看| 国产又色又爽无遮挡免费软件| 性一交一乱一伦| 亚洲24小时在线免费视频网站| 亚洲中文字幕日韩综合| 无码丰满熟妇一区二区| 亚洲国产午夜精品乱码| 伊人久久综合狼伊人久久| 亚洲线精品一区二区三区| 国产成人一区二区三区在线观看| 肥臀熟女一区二区三区| 亚洲成a人片在线网站| 国产一区二区三区免费在线播放| 国产精品久久久久久久久久红粉| 亚洲国产精品久久亚洲精品| 久久99久久99精品免视看国产成人| 亚洲福利二区三区四区| 国产a∨天天免费观看美女| 免费观看又污又黄的网站| 亚洲AV无码乱码一区二区三区| 人妻久久一区二区三区| 一本一道波多野结衣av中文 | 国内自拍愉拍免费观看| 性生交大全免费看|