国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種區(qū)塊鏈數(shù)據(jù)處理方法、裝置及系統(tǒng)與流程

      文檔序號:12037598閱讀:1372來源:國知局
      一種區(qū)塊鏈數(shù)據(jù)處理方法、裝置及系統(tǒng)與流程

      本申請屬于計算機數(shù)據(jù)處理技術領域,尤其涉及一種區(qū)塊鏈數(shù)據(jù)處理方法、裝置及系統(tǒng)。



      背景技術:

      業(yè)內常常使用的區(qū)塊鏈技術是構建在點對點(p2p)網(wǎng)絡上,利用鏈式數(shù)據(jù)結構來驗證與存儲數(shù)據(jù),利用分布式節(jié)點共識算法來生成和更新數(shù)據(jù),利用密碼學的方式保證數(shù)據(jù)傳輸和訪問的安全,利用由自動化腳本代碼組成的智能合約來編程和操作數(shù)據(jù)的一種全新的分布式基礎架構與計算范式。

      區(qū)塊鏈是一種防篡改的、共享的數(shù)字化賬本,用于記錄公有或私有對等網(wǎng)絡中的交易,區(qū)塊鏈中的某個節(jié)點將賬本分發(fā)給網(wǎng)絡中的所有成員節(jié)點,在區(qū)塊中永久記錄網(wǎng)絡中的對等節(jié)點之間發(fā)生的資產(chǎn)交易的歷史記錄。圖1是一種利用區(qū)塊鏈存儲交易數(shù)據(jù)示意圖。區(qū)塊鏈天然就是一種去中心化、去信任、防篡改的分布式數(shù)據(jù)存儲技術。如圖1所示,每個區(qū)塊記錄著上一個區(qū)塊的摘要值、本區(qū)塊中的交易記錄集合以及其他數(shù)據(jù)。由于每個區(qū)塊都有上一區(qū)塊的摘要值,區(qū)塊間由這個摘要值兩兩串聯(lián),形成區(qū)塊鏈。由于區(qū)塊鏈的鏈式數(shù)據(jù)結構,保證了數(shù)據(jù)的變更只能通過增量的方式進行。已經(jīng)記錄的數(shù)據(jù)將會一直保持創(chuàng)建時的狀態(tài),不會被覆蓋。同時,區(qū)塊鏈通過特定的共識算法,確認了每一個區(qū)塊的數(shù)據(jù)記錄職責歸屬,并且取得了其他節(jié)點的認同。

      但在實際應用中,常常涉及一些不需要對外公開的交易賬單。例如涉及一些敏感信息或者基于特定需要/要求需要進行隱私保護的交易信息。但目前基于區(qū)塊鏈的數(shù)據(jù)存儲方式中,區(qū)塊鏈上的交易對所有節(jié)點都是公開透明的,還無法針對特殊交易提供隱私保護能力。



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

      本申請目的在于提供一種區(qū)塊鏈數(shù)據(jù)處理方法、裝置及系統(tǒng),可以將存儲在區(qū)塊鏈中的信息數(shù)據(jù)加密為特定成員才可以解密查看,實現(xiàn)對特殊交易信息提供安全、可靠的隱私保護的目的。

      本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法、裝置及系統(tǒng)是包括如下的方式實現(xiàn)的:

      一種區(qū)塊鏈數(shù)據(jù)處理方法,所述方法包括:

      第一節(jié)點識別接收的區(qū)塊信息是否需要進行隱私保護處理;

      若是,則生成明文加密算法的密鑰,利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息;

      采用約定方式加密所述密鑰,生成密鑰密文,所述約定方式包括使所述第一節(jié)點和區(qū)塊鏈中與所述第一節(jié)點關聯(lián)的第二節(jié)點按照預設方式加密解密所述密鑰密文的算法;

      將包括所述加密后的區(qū)塊信息和密鑰密文的數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)存儲在區(qū)塊鏈相應的區(qū)塊中;

      第二節(jié)點解密區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù)時,采用所述約定方式解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰;

      基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      一種區(qū)塊鏈數(shù)據(jù)處理方法,所述方法包括:

      對于需要進行隱私保護區(qū)塊信息,第一節(jié)點生成明文加密算法的密鑰,利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息;

      采用約定方式加密所述密鑰,生成密鑰密文,所述約定方式包括使所述第一節(jié)點和區(qū)塊鏈中與所述第一節(jié)點關聯(lián)的第二節(jié)點按照預設方式加密解密所述密鑰密文的算法;

      將包括所述加密后的區(qū)塊信息和密鑰密文的數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)存儲在區(qū)塊鏈相應的區(qū)塊中。

      一種區(qū)塊鏈數(shù)據(jù)處理方法,包括:

      第二節(jié)點獲取第一節(jié)點存儲在區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù);

      采用約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰,所述約定方式包括使區(qū)塊鏈中的第一節(jié)點與第二節(jié)點按照預設方式加密解密所述密鑰密文的算法,所述第二節(jié)點與所述第一節(jié)點相關聯(lián);

      基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      一種區(qū)塊鏈數(shù)據(jù)處理裝置,所述裝置包括:

      明文加密模塊,用于對于需要進行隱私保護區(qū)塊信息,第一節(jié)點生成明文加密算法的密鑰,利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息;

      密鑰加密模塊,用于采用約定方式加密所述密鑰,生成密鑰密文,所述約定方式包括使所述第一節(jié)點和區(qū)塊鏈中與所述第一節(jié)點關聯(lián)的第二節(jié)點按照預設方式加密解密所述密鑰密文的算法;

      節(jié)點數(shù)據(jù)存儲模塊,用于將包括所述加密后的區(qū)塊信息和密鑰密文的數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)存儲在區(qū)塊鏈相應的區(qū)塊中。

      一種區(qū)塊鏈數(shù)據(jù)處理裝置,所述裝置包括:

      數(shù)據(jù)獲取模塊,用于獲取第一節(jié)點存儲在區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù);

      密鑰解密模塊,用于采用約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰,所述約定方式包括使區(qū)塊鏈中的第一節(jié)點與第二節(jié)點按照預設方式加密解密所述密鑰密文的算法,所述第二節(jié)點與所述第一節(jié)點相關聯(lián);

      明文解密模塊,用于基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      一種區(qū)塊鏈數(shù)據(jù)處理裝置,包括處理器以及用于存儲處理器可執(zhí)行指令的存儲器,所述處理器執(zhí)行所述指令時實現(xiàn):

      識別第一節(jié)點接收的區(qū)塊信息是否需要進行隱私保護處理;

      若是,則生成明文加密算法的密鑰,利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息;

      采用約定方式加密所述密鑰,生成密鑰密文,所述約定方式包括使所述第一節(jié)點和區(qū)塊鏈中與所述第一節(jié)點關聯(lián)的第二節(jié)點按照預設方式加密解密所述密鑰密文的算法;

      將包括所述加密后的區(qū)塊信息和密鑰密文的數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)存儲在區(qū)塊鏈相應的區(qū)塊中。

      一種區(qū)塊鏈數(shù)據(jù)處理裝置,包括處理器以及用于存儲處理器可執(zhí)行指令的存儲器,所述處理器執(zhí)行所述指令時實現(xiàn):

      獲取第一節(jié)點存儲在區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù);

      采用約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰,所述約定方式包括使區(qū)塊鏈中的第一節(jié)點與第二節(jié)點按照預設方式加密解密所述密鑰密文的算法,所述第二節(jié)點與所述第一節(jié)點相關聯(lián);

      基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      一種區(qū)塊鏈數(shù)據(jù)系統(tǒng),包括至少一個處理器以及用于存儲處理器可執(zhí)行指令的存儲器,所述處理器執(zhí)行所述指令時實現(xiàn)上述任意一項所述方法的步驟。

      本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法、裝置及系統(tǒng),可以將需要隱私保護的交易信息通過特定算法加密,并且對加密算法所使用的密鑰也采用約定方式的加密,加密后的交易數(shù)據(jù)和密鑰密文數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)保存在區(qū)塊鏈上面。本申請中可以使用當前節(jié)點與若干關聯(lián)節(jié)點共同約定的方式進行加密。在當前節(jié)點加密并存儲后,區(qū)塊鏈中實現(xiàn)關聯(lián)節(jié)點可以基于約定的方式解密對區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,而非關聯(lián)的節(jié)點僅能獲取區(qū)塊鏈數(shù)據(jù)但無法查看原始的區(qū)塊信息,達到隱私保護的目的。并且,本申請采用了一處加密、多處解密的實施方案,在區(qū)塊信息隱私保護處理的節(jié)點進行一處加密后的數(shù)據(jù)在多個關聯(lián)節(jié)點可以被解密,不僅實現(xiàn)安全可靠的保護了隱私交易,而且可加密和解密處理方式更加簡單、快速、高效,降低傳輸消耗,提高整個系統(tǒng)在區(qū)塊信息隱私保護時的數(shù)據(jù)處理性能。

      附圖說明

      為了更清楚地說明本申請實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

      圖1是一種區(qū)塊鏈數(shù)據(jù)存儲的數(shù)據(jù)結構示意圖;

      圖2是本申請所述一種區(qū)塊鏈數(shù)據(jù)處理方法實施例的流程示意圖;

      圖3是本申請所述方法的一個場景中加密區(qū)塊信息后的數(shù)據(jù)示意圖;

      圖4為本申請一種利用非對稱加密算法加密密鑰的數(shù)據(jù)信息示意圖;

      圖5是本申請一個實施例中實現(xiàn)一處加密、多處解密的隱私保護處理后的區(qū)塊鏈數(shù)據(jù);

      圖6是本申請一個實施例中單個節(jié)點完成隱私保護并廣播給其他節(jié)點后的區(qū)塊鏈數(shù)據(jù)示意圖;

      圖7是本申請一個實施例中多節(jié)點處理多交易后的各個區(qū)塊鏈的數(shù)據(jù)結構示意圖;

      圖8是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法實施例的方法流程示意圖。

      圖9是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法種實施例的方法流程示意圖;

      圖10是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理裝置實施例的模塊結構示意圖;

      圖11是本申請所述裝置中密鑰加密模塊實施例模塊結構示意圖;

      圖12是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理裝置實施例的模塊結構示意圖;

      圖13是本申請所述裝置另一種實施例模塊結構示意圖;

      圖14是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)系統(tǒng)結構示意圖。

      具體實施方式

      為了使本技術領域的人員更好地理解本申請中的技術方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├?,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本申請保護的范圍。

      圖2是本申請所述一種區(qū)塊鏈數(shù)據(jù)處理方法實施例的流程示意圖。雖然本申請?zhí)峁┝巳缦率鰧嵤├蚋綀D所示的方法操作步驟或裝置結構,但基于常規(guī)或者無需創(chuàng)造性的勞動在所述方法或裝置中可以包括更多或者部分合并后更少的操作步驟或模塊單元。在邏輯性上不存在必要因果關系的步驟或結構中,這些步驟的執(zhí)行順序或裝置的模塊結構不限于本申請實施例或附圖所示的執(zhí)行順序或模塊結構。所述的方法或模塊結構的在實際中的裝置、服務器或終端產(chǎn)品應用時,可以按照實施例或者附圖所示的方法或模塊結構進行順序執(zhí)行或者并行執(zhí)行(例如并行處理器或者多線程處理的環(huán)境、甚至包括分布式處理、服務器集群的實施環(huán)境)。

      具體的一種實施例如圖2所示,本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法的一種實施例中,所述方法可以包括:

      s2:第一節(jié)點識別接收的區(qū)塊信息是否需要進行隱私保護處理。

      一般的,一條區(qū)塊鏈數(shù)據(jù)可以多個節(jié)點,每個節(jié)點可以在區(qū)塊鏈中以增量的方式添加區(qū)塊鏈數(shù)據(jù)。當某個交易需要進行隱私保護處理時,區(qū)塊鏈參與該交易的一個節(jié)點或者多個節(jié)點可以根據(jù)交易的信息識別并確認存儲在區(qū)塊鏈中的交易信息需要進行隱私保護處理。

      例如,在a節(jié)點參與的交易b1涉及商家a的敏感信息,需要進行隱私保護處理,則可以在交易b1中添加類似“private”的標識,表示為需要進行隱私保護處理的交易??蛻舳藢⒔灰譩1流轉到a節(jié)點時,a節(jié)點可以根據(jù)“private”的標識確認該交易b1需要進行隱私保護處理,進而確認交易b1對應的區(qū)塊信息需要進行隱私保護處理。

      當然,還可以包括其他的識別是否需要進行隱私保護處理的實施方式。例如客戶端也可以直接通知a節(jié)點,交易單號為“b1”的交易信息對應的區(qū)塊信息在存儲在區(qū)塊鏈中時需要進行隱私保護處理,那么第一節(jié)點可以根據(jù)交易單號識別處交易“b1”的區(qū)塊信息需要進行隱私保護處理。

      本實施例中所述的第一節(jié)點可以理解為包括具體的對區(qū)塊中信息進行隱私保護處理的一側,相應的,下述描述的第二節(jié)點可以理解為包括解密區(qū)塊鏈中進行了隱私保護處理的區(qū)塊鏈數(shù)據(jù)的一側。在本實施例中,所述的第一節(jié)點加密區(qū)塊信息并進行隱私保護處理的描述并不限定是具體的某一個節(jié)點,也不限于是一個節(jié)點的處理。例如,a節(jié)點需要對區(qū)塊信息進行隱私保護處理,則a節(jié)點屬于所述的第一節(jié)點,下一次處理時節(jié)點c對區(qū)塊信息進行隱私保護處理,則此時節(jié)點c屬于所述的第一節(jié)點。a節(jié)點和c都對相應的區(qū)塊信息進行隱私保護處理,則此時a節(jié)點和節(jié)點c都可以屬于所述的第一節(jié)點。同理,所述的第二節(jié)點也不限定是具體的某一個節(jié)點,也不限于是一個節(jié)點的處理,尤其是本申請實現(xiàn)一處節(jié)點加密、多處節(jié)點解密的技術效果的實施方案中。

      另外,需要說明的,如果第一節(jié)點沒有相關聯(lián)的第二節(jié)點,例如第一節(jié)點隱私保護的區(qū)塊信息僅第一節(jié)點的客戶端或作業(yè)人員可以查看,則此時可以認為進行區(qū)塊信息界面的第二節(jié)點與第一節(jié)點為同一個節(jié)點,不應當將所述第一節(jié)點和第二節(jié)點理解為兩個物理上不同的節(jié)點。

      s4:若是,則生成明文加密算法的密鑰,利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息。

      第一節(jié)點確定區(qū)塊信息需要進行隱私保護處理后,然后利用選取的明文加密算法對區(qū)塊信息進行加密,生成加密后的區(qū)塊信息。本實施例中所述的明文加密算法可以包括多種加密方式,如openpgp加密算法或者類似aes處理方法。為保障隱私保護處理的安全性,這里所述的明文加密算法可以使用至少一個密鑰,因此,在本實施例中可以先生成明文加密算法的密鑰,然后明文加密算法使用生成的所述密鑰對區(qū)塊信息進行加密。

      生成密鑰具體的實施過程中,可以按照預設的方式依次生成密鑰,如從某個起始密鑰開始按照預定步長每次生成不同的密鑰或者采用某個算法生成相應的密鑰等。本申請?zhí)峁┑囊环N實施例中,所述的密鑰可以為隨機的字符串數(shù)據(jù),這樣每次隱私保護處理時生成的密鑰隱蔽性更強,難以被破解,可以有效提高區(qū)塊信息隱私保護的安全性。具體的,本申請?zhí)峁┑乃鲆环N區(qū)塊鏈數(shù)據(jù)處理方式的一個實施例中,所述密鑰可以包括:

      隨機產(chǎn)生的字符串數(shù)據(jù)。

      具體的一個示例中,例如采用openpgp加密算法時,可以每次加密前隨機產(chǎn)生一組數(shù)據(jù),如uuid(universallyuniqueidentifier,通用唯一識別碼)??梢砸評uid作為此次存儲隱私保護的區(qū)塊信息的會話處理的sessionkey(會話密鑰)。然后利用明文加密算法如aes,根據(jù)該生成的uuid對區(qū)塊信息(具體的內容可以包括交易信息)tx1進行加密,生成加密后的區(qū)塊信息。加密后的區(qū)塊信息數(shù)據(jù)如圖3所示,圖3是本申請所述方法的一個場景中加密區(qū)塊信息后的數(shù)據(jù)示意圖。

      在本實施例中,當?shù)谝还?jié)點識別出當前交易的區(qū)塊信息需要進行隱私保護處理時,可以生成明文加密算法的密鑰,然后利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息。

      s6:采用約定方式加密所述密鑰,生成密鑰密文,所述約定方式包括使所述第一節(jié)點和區(qū)塊鏈中與所述第一節(jié)點關聯(lián)的第二節(jié)點按照預設方式加密解密所述密鑰密文的算法。

      本實施例的實施方案中,加密區(qū)塊信息后,可以進一步的對加密所述區(qū)塊信息所使用的密鑰進行加密。在本實施例的實施場景中,第一節(jié)點使用密鑰加密區(qū)塊信息后,可以使與所述第一節(jié)點關聯(lián)的第二節(jié)點能夠解密獲取區(qū)塊信息,實現(xiàn)一處加密、多處解密的效果。具體的對所述密鑰加密所采用的方式可以預先與關聯(lián)節(jié)點約定,如第一節(jié)點采用某個加密解密算法m1加密密鑰后,可以將該算法m1通知到關聯(lián)的第二節(jié)點,或者第一節(jié)點與所有關聯(lián)的第二節(jié)點共同約定使用m1加密解密算法來對密鑰進行加密解密。具體的,本申請?zhí)峁┧龇椒ㄖ幸环N具體的所述約定方式的實施方式,可以包括:

      s301:設置對應于所述第一節(jié)點和第二節(jié)點的非對稱密鑰對;

      相應的,所述加密密鑰時,分別使用所述第一節(jié)點和第二節(jié)點的非對稱密鑰對的公鑰加密所述密鑰,生成相應的第一密鑰密文、第二密鑰密文。

      本實施例采取的實施方式中,每個節(jié)點可以分別設置有自己節(jié)點的非對稱密鑰對,包括公鑰(pubkey)和私鑰(prikey),或者也可以僅在需要進行隱私保護處理的節(jié)點設置非對稱私鑰對,如設置對應于所述第一節(jié)點和第二節(jié)點的非對稱密鑰對。對同一個區(qū)塊信息進行隱私保護處理的相關聯(lián)的各個節(jié)點可以互相存儲有其他節(jié)點公鑰,這樣,在對所述密鑰進行加密處理時,可以分別使用各個節(jié)點的公鑰進行加密,并相應的產(chǎn)生對應的密鑰密文。

      openpgp使用公開密鑰加密算法加密郵件的一個非私有協(xié)議,是一種近年來得到廣泛使用成型的端到端的安全郵件標準。openpgp定義了對信息的加密解密、簽名、公鑰私鑰和數(shù)字證書等格式,通過對信息的加密、簽名、以及編碼變換等操作對信息提供安全保密服務。openpgp數(shù)字簽名通常指用戶用自己的秘密密鑰對報文的數(shù)字指紋(由散列函數(shù)產(chǎn)生的摘要)進行加密后所得的數(shù)據(jù),數(shù)字簽名從技術上標識了簽名者對該電文的數(shù)字指紋的責任。因為簽名者的秘密密鑰只有他本人所擁有,所以他一旦完成了簽名便保證了簽名者無法抵賴曾發(fā)過該信息(即不可抵賴性),所以也是用來描述數(shù)據(jù)與某個公開密鑰的綁定關系,使用秘密密鑰加密數(shù)據(jù)的過程就是簽名的過程,這個簽名可以通過與簽名密鑰對應的公開密鑰以及原始信息一起得到驗證。發(fā)信者需要私鑰對一段數(shù)據(jù)或者文檔進行簽名,可以采用一種算法算出一段數(shù)據(jù),而這段數(shù)據(jù)代表文檔獨一無二的特征,一旦文檔有任何改變這段數(shù)據(jù)都會變化,這個簽名將會失去作用。本申請?zhí)峁┑囊粋€實施例中,所述利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密可以包括:

      基于openpgp算法中隨機生成的會話密鑰對所述區(qū)塊信息進行加密。

      具體的一個示例如圖4所示,圖4為本申請一種利用非對稱加密算法加密密鑰的數(shù)據(jù)信息示意圖。第一節(jié)點為a節(jié)點,a節(jié)點與節(jié)點c共同參與了一筆需要隱私保護的交易tx1,此時節(jié)點c為與第一a節(jié)點關聯(lián)的第二節(jié)點??蛻舳藢x1發(fā)送給a節(jié)點后,a節(jié)點識別到該交易需要進行隱私保護,則可以基于openpgp的加密算法先隨機生成一個uuid作為此次對交易tx1進行隱私保護處理的會話密鑰sessionkey。然后可以在第一節(jié)點一側分別使用a節(jié)點的公鑰a_pubkey和節(jié)點c的公鑰c_pubkey來加密會話密鑰sessionkey,分別生成對應于a節(jié)點的第一密鑰密文和節(jié)點c的第二密鑰密文。這樣一來,由于使用了第一節(jié)點和關聯(lián)節(jié)點的公鑰來加密密鑰,最終生成的密鑰密文同樣可以由a節(jié)點使用a節(jié)點的私鑰來解密第一密鑰密文,而關聯(lián)節(jié)點c也可以直接使用自己的節(jié)點的私鑰來解密第二密鑰密文。對于其他節(jié)點如b節(jié)點,雖然可以獲取得到加密后的密鑰密文,但卻無法得到sessionkey,因而也無法得到tx1的內容信息。同理可以得知,當?shù)谝还?jié)點的關聯(lián)節(jié)點較多時,則可以在第一節(jié)點分別使用各個關聯(lián)節(jié)點的公鑰來加密密鑰,生成相應的第三密鑰密文、第四密鑰密文…。這樣,在第一節(jié)點一處加密,多處關聯(lián)節(jié)點使用相應的算法解密,可以實現(xiàn)一處加密、多處解密,并且這種處理方式簡單、高效,保障隱私保護處理安全性的同時可以使得加密解密處理設計簡單,系統(tǒng)處理效率更加高效。

      當然,進一步的,其他的實施方式中,所述的約定方式還可以包括針對不同區(qū)塊信息或者不同類型的區(qū)塊信息分別設置不同的加密解密所述密鑰的算法。例如根據(jù)交易tx1的交易類型確認是使用公鑰a_pubkey來加密密鑰,還是使用特定轉化規(guī)則將sessionkey轉換為其他數(shù)據(jù)格式的字符串(如添加擾碼)等?;蛘撸鳂I(yè)人員可以根據(jù)數(shù)據(jù)處理需求采取其他的約定方式確認加密解密密鑰的算法。

      s8:將包括所述加密后的區(qū)塊信息和密鑰密文的數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)存儲在區(qū)塊鏈相應的區(qū)塊中。

      通過上述操作后,可以將區(qū)塊信息加密的加密后的區(qū)塊信息和密鑰加密的密鑰密文組裝在一起,如圖5所示,圖5是本申請一個實施例中實現(xiàn)一處加密、多處解密的隱私保護處理后的區(qū)塊鏈數(shù)據(jù)。然后第一節(jié)點可以將該組裝在一起的交易信息作為區(qū)塊鏈數(shù)據(jù)存儲在相應的區(qū)塊中。同樣的,如果節(jié)點c識別接收的交易信息tx2需要進行隱私保護處理,而tx2的參與方包括b、c、d三個節(jié)點,則c節(jié)點此時作為第一節(jié)點可以先隨機生成一個sessionkey2,然后分別使用b節(jié)點、c、d的公鑰b_prikey、c_prikey、d_prikey對sessionkey2加密,連同tx2的加密后的區(qū)塊信息組裝后存儲在區(qū)塊鏈相應的區(qū)塊中。

      如a節(jié)點的公鑰a_pubkey用非對稱加密算法,比如rsa將sessionkey加密,此加密信息僅a節(jié)點用a_prikey能解密。c節(jié)點同上,以上兩步操作結束后將密文和加密后的交易信息組裝在一起,如圖5所示。

      a、c節(jié)點利用本節(jié)點的私鑰可以得到sessionkey,利用sessionkey可以解密交易信息tx1。其他節(jié)點無法得到sessionkey,因此無法得知tx1的內容。sessionkey每次加密都可以隨機產(chǎn)生,可以達到很好的保密效果。

      一般的,參與同一個區(qū)塊鏈的不同節(jié)點的區(qū)塊鏈應當是相同的,如a、b、c、d節(jié)點共同使用同一個區(qū)塊鏈,則需要保障每個節(jié)點的區(qū)塊鏈的數(shù)據(jù)是一致的。因此,在一些應用場景中,區(qū)塊鏈包括多個節(jié)點時,某個節(jié)點新增區(qū)塊鏈數(shù)據(jù)時,可以通過廣播的方式發(fā)送給其他節(jié)點。例如上述示例中,a節(jié)點識別交易需要隱私保護并完成相應的加密處理后,將加密后的交易信息廣播給b、c、d節(jié)點,廣播完成后各個節(jié)點的賬本(區(qū)塊鏈)的情況如圖5所示。

      s10:第二節(jié)點解密區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù)時,采用所述約定方式解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰。

      保存在區(qū)塊鏈中的隱私保護處理的區(qū)塊鏈數(shù)據(jù),如果某個節(jié)點需要查詢獲取其中的區(qū)塊信息(具體的可以是其中的交易信息),則可以采用前述步驟s3中所描述的對應的約定方式進行解密,獲取區(qū)塊鏈數(shù)據(jù)中的密鑰。如節(jié)點c可以獲取a節(jié)點隱私保護處理后存儲的區(qū)塊鏈數(shù)據(jù),然后使用節(jié)點c的私鑰c_prikey可以解密“c_pubkey(sessionkey)”這個密鑰密文,并獲取加密tx1時所使用的密鑰sessionkey。

      需要理解的是,如果是a節(jié)點自己查看a節(jié)點存儲的隱私保護處理的區(qū)塊鏈數(shù)據(jù),則此時的a節(jié)點可以理解為屬于所述第二節(jié)點的范疇,即與第一節(jié)點關聯(lián)的節(jié)點可以是自己的節(jié)點(或者理解為關聯(lián)度100%)。

      s12:基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      解密獲取密鑰后,可以利用該密鑰解密獲取加密后的區(qū)塊信息,得到原始明文的解密后區(qū)塊信息。

      本申請的一種實施例可以基于openpgp的區(qū)塊鏈隱私保護方案,通過將受到隱私保護的交易通過openpgp算法加密,加密后的數(shù)據(jù)作為交易的信息保存在區(qū)塊鏈上面。下面是本申請具體的一個基于openpgp的區(qū)塊鏈隱私保護的數(shù)據(jù)處理示例,以a、b、c、d四個節(jié)點為例,每個節(jié)點都可以有一對非對稱密鑰對,比如a節(jié)點有a_pubkey和a_prikey,a_pubkey對外公開,a_prikey保密。client(客戶端)將一筆a和c節(jié)點參與的需要隱私的交易tx1發(fā)送給a節(jié)點,a節(jié)點識別到交易需要隱私保護后,利用openpgp加密算法,將交易加密然后廣播給b、c、d節(jié)點,廣播完成后各節(jié)點賬本情況如圖6所示,圖6是本申請一個實施例中單個節(jié)點完成隱私保護并廣播給其他節(jié)點后的區(qū)塊鏈數(shù)據(jù)示意圖。

      進一步的,client發(fā)送一筆普通交易tx2給d節(jié)點,最后client發(fā)送一筆b、c、d參與的需要隱私保護的交易tx3給b節(jié)點。上述兩筆交易依次按照前述任意一個實施例處理并完成廣播后,各個節(jié)點賬本情況如圖7所示,圖7是本申請一個實施例中多節(jié)點處理多交易后的各個區(qū)塊鏈的數(shù)據(jù)結構示意圖。

      三筆交易完成后,所有節(jié)點賬本完全一致,其中tx2是公開的普通交易,所有節(jié)點都可以看到。而tx1僅ac節(jié)點可以解密,b、d節(jié)點雖然可以看到加密后的tx1,但是無法解密其內容。同樣a節(jié)點也無法解密tx3。這樣,通過上述示例可以看出,本申請?zhí)峁┑膶嵤┓桨笇⒋鎯υ趨^(qū)塊鏈中的信息數(shù)據(jù)加密為特定成員才可以解密查看,實現(xiàn)為特殊交易信息提供安全、可靠的隱私保護的目的。

      本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法,可以將受到隱私保護的交易信息通過特定算法加密,并且對加密算法所使用的密鑰也采用約定方式的加密,加密后的交易數(shù)據(jù)和密鑰密文數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)保存在區(qū)塊鏈上面。本申請中可以使用當前節(jié)點與若干關聯(lián)節(jié)點共同約定的方式進行加密。在當前節(jié)點加密并存儲后,區(qū)塊鏈中實現(xiàn)關聯(lián)節(jié)點可以基于約定的方式解密對區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,而非關聯(lián)的節(jié)點僅能獲取區(qū)塊鏈數(shù)據(jù)但無法查看原始的區(qū)塊信息,達到隱私保護的目的。并且,本申請采用了一處加密、多處解密的實施方案,在區(qū)塊信息隱私保護處理的節(jié)點進行一處加密,加密后的數(shù)據(jù)可以在多個關聯(lián)節(jié)點直接被解密,不僅安全的保護了隱私交易,而且加密和解密處理方式更加簡單、快速、高效。并且在實現(xiàn)隱私保護處理時可以僅對密鑰進行加密,降低系統(tǒng)設計復雜度和數(shù)據(jù)處理量、傳輸消耗等,提高整個系統(tǒng)在區(qū)塊信息隱私保護時的數(shù)據(jù)處理性能。

      上述所述的方法從區(qū)塊鏈數(shù)據(jù)隱私保護時的加密存儲、讀取并解密區(qū)塊鏈數(shù)據(jù)的應用場景描述了本申請方案。具體的,對于區(qū)塊鏈中的單個節(jié)點而言,本申請?zhí)峁┮环N適用于區(qū)塊鏈中單個節(jié)點進行區(qū)塊信息的隱私保持處理的實現(xiàn)方案,這個單個節(jié)點可以為前述所述的識別交易后確定需要進行隱私保護的第一節(jié)點。圖8是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法另一種實施例的方法流程示意圖,如圖8所示,可以包括:

      s20:對于需要進行隱私保護區(qū)塊信息,第一節(jié)點生成明文加密算法的密鑰,利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息;

      s40:采用約定方式加密所述密鑰,生成密鑰密文,所述約定方式包括使所述第一節(jié)點和區(qū)塊鏈中與所述第一節(jié)點關聯(lián)的第二節(jié)點按照預設方式加密解密所述密鑰密文的算法;

      s60:將包括所述加密后的區(qū)塊信息和密鑰密文的數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)存儲在區(qū)塊鏈相應的區(qū)塊中。

      所述方法的其他實施例中,在接收到需要存儲到區(qū)塊鏈中的區(qū)塊信息時,可以先識別該區(qū)塊信息是否需要進行隱私保護。因此,所述方法的另一種實施例中,所述對于需要進行隱私保護區(qū)塊信息,第一節(jié)點生成明文加密算法的密鑰,可以包括:

      第一節(jié)點識別接收的區(qū)塊信息是否需要進行隱私保護處理;

      若是,則生成明文加密算法的密鑰。

      本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于上述區(qū)塊鏈中的單個節(jié)點實施例而言,參照前述區(qū)塊鏈數(shù)據(jù)隱私保護時的加密存儲、讀取并解密區(qū)塊鏈數(shù)據(jù)的應用場景的實施例還可以包括其他實施方式,如所述密鑰包括:隨機產(chǎn)生的字符串數(shù)據(jù),或者,所述約定方式包括:設置對應于所述第一節(jié)點和第二節(jié)點的非對稱密鑰對;相應的,所述加密密鑰時,分別使用所述第一節(jié)點和第二節(jié)點的非對稱密鑰對的公鑰加密所述密鑰,生成相應的第一密鑰密文、第二密鑰密文等。具體的實現(xiàn)方式可以前述相關方法實施例的描述,在此不做贅述。

      同樣的,本申請還可以提供所述方法另一種實施方式,即在所述第一節(jié)點存儲了隱私保護處理的區(qū)塊鏈數(shù)據(jù)后,其他節(jié)點(包括第一節(jié)點)需要解密獲取隱私保護處理的區(qū)塊信息時,可以采用對應前述隱私保護處理實施方案的解密處理的區(qū)塊鏈數(shù)據(jù)處理方案。具體的,圖9是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法另一種實施例的方法流程示意圖,如圖9所示,可以包括:

      s30:獲取第一節(jié)點存儲在區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù);

      s32:采用約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰,所述約定方式包括使區(qū)塊鏈中的第一節(jié)點與第二節(jié)點按照預設方式加密解密所述密鑰密文的算法,所述第二節(jié)點與所述第一節(jié)點相關聯(lián);

      s34:基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      如前述區(qū)塊鏈數(shù)據(jù)隱私保護時的加密存儲、讀取并解密區(qū)塊鏈數(shù)據(jù)的應用場景的實施例所述,所述方法的其他實施例中,所述約定方式可以包括:

      設置對應于所述第一節(jié)點和第二節(jié)點的非對稱密鑰對;加密密鑰時,分別使用所述第一節(jié)點和第二節(jié)點的非對稱密鑰對的公鑰加密所述密鑰,生成相應的第一密鑰密文、第二密鑰密文;

      相應的,所述采用加密所述區(qū)塊鏈數(shù)據(jù)中的密鑰所使用的約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰包括:

      采用第二節(jié)點的非對稱密鑰對的私鑰解密所述第二密鑰密文,獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰。

      基于上述所述的區(qū)塊鏈數(shù)據(jù)處理方法,本申請還提供一種區(qū)塊鏈數(shù)據(jù)處理裝置。所述的裝置可以包括使用了本申請所述方法的系統(tǒng)(包括分布式系統(tǒng))、軟件(應用)、模塊、組件、服務器、客戶端等并結合必要的實施硬件的裝置?;谕粍?chuàng)新構思,本申請?zhí)峁┑囊环N實施例中的裝置如下面的實施例所述。由于裝置解決問題的實現(xiàn)方案與方法相似,因此本申請具體的裝置的實施可以參見前述方法的實施,重復之處不再贅述。以下所使用的,術語“單元”或者“模塊”可以實現(xiàn)預定功能的軟件和/或硬件的組合。盡管以下實施例所描述的裝置較佳地以軟件來實現(xiàn),但是硬件,或者軟件和硬件的組合的實現(xiàn)也是可能并被構想的。具體的,圖10是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理裝置實施例的模塊結構示意圖,如圖10所示,所述裝置可以包括:

      明文加密模塊102,可以用于對于需要進行隱私保護區(qū)塊信息,第一節(jié)點生成明文加密算法的密鑰,利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息;

      密鑰加密模塊104,可以用于采用約定方式加密所述密鑰,生成密鑰密文,所述約定方式包括使所述第一節(jié)點和區(qū)塊鏈中與所述第一節(jié)點關聯(lián)的第二節(jié)點按照預設方式加密解密所述密鑰密文的算法;

      節(jié)點數(shù)據(jù)存儲模塊106,可以用于將包括所述加密后的區(qū)塊信息和密鑰密文的數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)存儲在區(qū)塊鏈相應的區(qū)塊中。

      本申請?zhí)峁┑乃鲅b置的其他實施例中,所述密鑰加密模塊104可以包括:

      密鑰生成模塊1040,可以用于隨機產(chǎn)生字符串數(shù)據(jù),以所述字符串數(shù)據(jù)作為密鑰。

      以及,參照前述方法實施例所述,所述明文加密模塊102可以包括:

      識別加密模塊,可以用于第一節(jié)點識別接收的區(qū)塊信息是否需要進行隱私保護處理;若是,則生成明文加密算法的密鑰。

      另一種實施例中,所述密鑰加密模塊104可以包括:

      非對稱密鑰存儲模塊1042,可以用于存儲所述第一節(jié)點的非對稱密鑰對和第二節(jié)點的非對稱密鑰對的公鑰;

      加密模塊1044,可以用于分別使用所述第一節(jié)點和第二節(jié)點的非對稱密鑰對的公鑰加密所述密鑰,生成相應的第一密鑰密文、第二密鑰密文。

      如圖11所示,圖11是本申請所述裝置中密鑰加密模塊104的一種實施例模塊結構示意圖,可以同時包括密鑰生成模塊1040、非對稱密鑰存儲模塊1042、加密模塊1044

      所述裝置的其他實施例中,所述明文加密模塊102可以包括:

      openpgp加密模塊,可以用于基于openpgp算法中隨機生成的會話密鑰對所述區(qū)塊信息進行加密。

      圖12是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理裝置實施例的模塊結構示意圖,如圖12所示,其他的實施例中,所述裝置還可以包括:

      密鑰解密模塊108,可以用于獲取第一節(jié)點存儲在區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù),以及使用所述約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰;

      明文解密模塊110,可以用于基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      前述實施例所述的裝置可以在節(jié)點的終端設備中結合必要的硬件實現(xiàn)。這樣,對于單個節(jié)點來說,不僅可以實現(xiàn)加密需要隱私保護處理的區(qū)塊數(shù)據(jù)并存儲在區(qū)塊鏈中,還可以實現(xiàn)從區(qū)塊鏈中讀取區(qū)塊鏈數(shù)據(jù),并根據(jù)相對應的約定方式解密獲取密鑰,并進一步得到解密后的原始的區(qū)塊信息。這樣,所述的第一節(jié)點的終端設備和與第一節(jié)點關聯(lián)的第二節(jié)點的終端設備均可以解密獲取交易信息,而其他節(jié)點僅能看到加密后的區(qū)塊信息(如交易摘要),達到隱私保護的目的。并且該方式一處加密、多處解密,且加密解密方式安全、簡單、高效、系統(tǒng)侵入性(改造)較小,有效降低系統(tǒng)隱私保護處理的設計復雜度和提供數(shù)據(jù)處理性能。

      基于上述中第二節(jié)點一側的應用描述,本申請還提供另一種區(qū)塊鏈數(shù)據(jù)處理裝置,所述裝置可以與存儲隱私保護處理的區(qū)塊鏈數(shù)據(jù)的第一節(jié)點相關聯(lián),如友盟節(jié)點或交易共同參與方,可以實現(xiàn)查看第一節(jié)點隱私保護的交易信息。具體的,例如第一節(jié)點加密交易信息使用的密鑰可以使用第二節(jié)點的公鑰進行加密,這樣第二節(jié)點則可以根據(jù)自己的使用解密獲取密鑰,然后使用區(qū)塊鏈數(shù)據(jù)公認的算法查看交易信息。具體的,圖13是本申請所述裝置另一種實施例模塊結構示意圖,如圖13所示,所述裝置可以包括:

      數(shù)據(jù)獲取模塊200,可以用于獲取第一節(jié)點存儲在區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù);

      密鑰解密模塊202,可以用于采用約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰,所述約定方式包括使區(qū)塊鏈中的第一節(jié)點與第二節(jié)點按照預設方式加密解密所述密鑰密文的算法,所述第二節(jié)點與所述第一節(jié)點相關聯(lián);

      明文解密模塊204,可以用于基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      參數(shù)前述方法實施例所述,所述裝置其他的實施例中,所述約定方式可以包括采用如下的實施方式:

      設置對應于所述第一節(jié)點和第二節(jié)點的非對稱密鑰對;加密密鑰時,分別使用所述第一節(jié)點和第二節(jié)點的非對稱密鑰對的公鑰加密所述密鑰,生成相應的第一密鑰密文、第二密鑰密文;

      相應的,所述密鑰解密模塊采用約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰包括:采用第二節(jié)點的非對稱密鑰對的私鑰解密所述第二密鑰密文,獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰。

      本申請?zhí)峁┑膮^(qū)塊鏈數(shù)據(jù)處理方法可以在計算機中由處理器執(zhí)行相應的程序指令來實現(xiàn),如使用windows操作系統(tǒng)的c++語言在pc端實現(xiàn),或其他例如linux、android、ios系統(tǒng)相應應用設計語言的實現(xiàn)等。本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理裝置的另一種實施例中,可以適用于對交易信息進行隱私保護的第一節(jié)點一側的終端設備,具體的,所述裝置可以包括處理器以及用于存儲處理器可執(zhí)行指令的存儲器,所述處理器執(zhí)行所述指令時實現(xiàn):

      識別第一節(jié)點接收的區(qū)塊信息是否需要進行隱私保護處理;

      若是,則生成明文加密算法的密鑰,利用使用所述密鑰的明文加密算法對所述區(qū)塊信息進行加密,生成加密后的區(qū)塊信息;

      采用約定方式加密所述密鑰,生成密鑰密文,所述約定方式包括使所述第一節(jié)點和區(qū)塊鏈中與所述第一節(jié)點關聯(lián)的第二節(jié)點按照預設方式加密解密所述密鑰密文的算法;

      將包括所述加密后的區(qū)塊信息和密鑰密文的數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)存儲在區(qū)塊鏈相應的區(qū)塊中。

      其他的實施例中,所述處理器執(zhí)行所述指令時還可以實現(xiàn):

      獲取區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù);

      采用所述約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰;

      基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理裝置的另一種實施例中,可以適用于與所述第一節(jié)點關聯(lián)的解密并獲取交易信息的第二節(jié)點一側的終端設備,具體的,本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理裝置,可以包括處理器以及用于存儲處理器可執(zhí)行指令的存儲器,所述處理器執(zhí)行所述指令時實現(xiàn):

      獲取第一節(jié)點存儲在區(qū)塊鏈中隱私保護處理的區(qū)塊鏈數(shù)據(jù);

      采用約定方式來解密獲取所述區(qū)塊鏈數(shù)據(jù)中的密鑰,所述約定方式包括使區(qū)塊鏈中的第一節(jié)點與第二節(jié)點按照預設方式加密解密所述密鑰密文的算法,所述第二節(jié)點與所述第一節(jié)點相關聯(lián);

      基于所述解密獲取的密鑰解密所述區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,得到解密后區(qū)塊信息。

      本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于硬件+程序類實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。

      本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理裝置,可以將受到隱私保護的交易信息通過特定算法加密,并且對加密算法所使用的密鑰也采用約定方式的加密,加密后的交易數(shù)據(jù)和密鑰密文數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)保存在區(qū)塊鏈上面。本申請中可以使用當前節(jié)點與若干關聯(lián)節(jié)點共同約定的方式進行加密。在當前節(jié)點加密并存儲后,區(qū)塊鏈中實現(xiàn)關聯(lián)節(jié)點可以基于約定的方式解密對區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,而非關聯(lián)的節(jié)點僅能獲取區(qū)塊鏈數(shù)據(jù)但無法查看原始的區(qū)塊信息,達到隱私保護的目的。并且,本申請采用了一處加密、多處解密的實施方案,在區(qū)塊信息隱私保護處理的節(jié)點進行一處加密,加密后的數(shù)據(jù)可以在多個關聯(lián)節(jié)點直接被解密,不僅安全的保護了隱私交易,而且加密和解密處理方式更加簡單、快速、高效。并且在實現(xiàn)隱私保護處理時可以僅對密鑰進行加密,降低系統(tǒng)設計復雜度和數(shù)據(jù)處理量、傳輸消耗等,提高整個系統(tǒng)在區(qū)塊信息隱私保護時的數(shù)據(jù)處理性能。

      上述所述的裝置或方法可以用于多種存儲區(qū)塊鏈數(shù)據(jù)的系統(tǒng)中,通常的一個節(jié)點內部可以包括多個終端裝置,可以是服務器和/或客戶端或其中的應用,每個裝置可以分別處理的不同的任務,可以將任務中需要存儲在區(qū)塊鏈中且需要進行隱私保護處理。本申請?zhí)峁┑囊粋€區(qū)塊鏈數(shù)據(jù)系統(tǒng)即可以包括所述節(jié)點中至少一個需要將交易數(shù)據(jù)(任務)存儲在區(qū)塊鏈中且需要進行隱私保護處理的終端裝置,以實現(xiàn)對交易信息的簡單、高效、安全的隱私保護。例如可以利用openpgp技術將賬本直接存儲在公共賬本上,只有特定成員才可以解密,達到隱私保護的目的。具體的,本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)系統(tǒng),可以包括處理器以及用于存儲處理器可執(zhí)行指令的存儲器,所述處理器執(zhí)行所述指令時實現(xiàn)上述任意一個方法實施例所述方法的步驟。

      圖14是本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)系統(tǒng)結構示意圖。需要說明的,上述所述的裝置或系統(tǒng)根據(jù)方法實施例的描述還可以包括其他的實施方式,具體的實現(xiàn)方式可以參照相關方法實施例的描述,在此不作一一贅述。

      本申請?zhí)峁┑囊环N區(qū)塊鏈數(shù)據(jù)處理方法、裝置及系統(tǒng),可以將受到隱私保護的交易信息通過特定算法加密,并且對加密算法所使用的密鑰也采用約定方式的加密,加密后的交易數(shù)據(jù)和密鑰密文數(shù)據(jù)作為區(qū)塊鏈數(shù)據(jù)保存在區(qū)塊鏈上面。本申請中可以使用當前節(jié)點與若干關聯(lián)節(jié)點共同約定的方式進行加密。在當前節(jié)點加密并存儲后,區(qū)塊鏈中實現(xiàn)關聯(lián)節(jié)點可以基于約定的方式解密對區(qū)塊鏈數(shù)據(jù)中的加密后的區(qū)塊信息,而非關聯(lián)的節(jié)點僅能獲取區(qū)塊鏈數(shù)據(jù)但無法查看原始的區(qū)塊信息,達到隱私保護的目的。并且,本申請采用了一處加密、多處解密的實施方案,在區(qū)塊信息隱私保護處理的節(jié)點進行一處加密,加密后的數(shù)據(jù)可以在多個關聯(lián)節(jié)點直接被解密,不僅安全的保護了隱私交易,而且加密和解密處理方式更加簡單、快速、高效。并且在實現(xiàn)隱私保護處理時可以僅對密鑰進行加密,降低系統(tǒng)設計復雜度和數(shù)據(jù)處理量、傳輸消耗等,提高整個系統(tǒng)在區(qū)塊信息隱私保護時的數(shù)據(jù)處理性能。

      盡管本申請內容中提到openpgp算法、隨機生成密鑰、aes加密算法、區(qū)塊數(shù)據(jù)存儲方式、密鑰加密方式的等之類的數(shù)據(jù)/方式定義、獲取、交互、計算、判斷等描述,但是,本申請并不局限于必須是符合行業(yè)通信標準、標準區(qū)塊鏈數(shù)據(jù)存儲、計算機處理和存儲規(guī)則或本申請實施例所描述的情況。某些行業(yè)標準或者使用自定義方式或實施例描述的實施基礎上略加修改后的實施方案也可以實現(xiàn)上述實施例相同、等同或相近、或變形后可預料的實施效果。應用這些修改或變形后的數(shù)據(jù)獲取、存儲、判斷、處理方式等獲取的實施例,仍然可以屬于本申請的可選實施方案范圍之內。

      上述對本說明書特定實施例進行了描述。其它實施例在所附權利要求書的范圍內。在一些情況下,在權利要求書中記載的動作或步驟可以按照不同于實施例中的順序來執(zhí)行并且仍然可以實現(xiàn)期望的結果。另外,在附圖中描繪的過程不一定要求示出的特定順序或者連續(xù)順序才能實現(xiàn)期望的結果。在某些實施方式中,多任務處理和并行處理也是可以的或者可能是有利的

      在20世紀90年代,對于一個技術的改進可以很明顯地區(qū)分是硬件上的改進(例如,對二極管、晶體管、開關等電路結構的改進)還是軟件上的改進(對于方法流程的改進)。然而,隨著技術的發(fā)展,當今的很多方法流程的改進已經(jīng)可以視為硬件電路結構的直接改進。設計人員幾乎都通過將改進的方法流程編程到硬件電路中來得到相應的硬件電路結構。因此,不能說一個方法流程的改進就不能用硬件實體模塊來實現(xiàn)。例如,可編程邏輯器件(programmablelogicdevice,pld)(例如現(xiàn)場可編程門陣列(fieldprogrammablegatearray,fpga))就是這樣一種集成電路,其邏輯功能由用戶對器件編程來確定。由設計人員自行編程來把一個數(shù)字系統(tǒng)“集成”在一片pld上,而不需要請芯片制造廠商來設計和制作專用的集成電路芯片。而且,如今,取代手工地制作集成電路芯片,這種編程也多半改用“邏輯編譯器(logiccompiler)”軟件來實現(xiàn),它與程序開發(fā)撰寫時所用的軟件編譯器相類似,而要編譯之前的原始代碼也得用特定的編程語言來撰寫,此稱之為硬件描述語言(hardwaredescriptionlanguage,hdl),而hdl也并非僅有一種,而是有許多種,如abel(advancedbooleanexpressionlanguage)、ahdl(alterahardwaredescriptionlanguage)、confluence、cupl(cornelluniversityprogramminglanguage)、hdcal、jhdl(javahardwaredescriptionlanguage)、lava、lola、myhdl、palasm、rhdl(rubyhardwaredescriptionlanguage)等,目前最普遍使用的是vhdl(very-high-speedintegratedcircuithardwaredescriptionlanguage)與verilog。本領域技術人員也應該清楚,只需要將方法流程用上述幾種硬件描述語言稍作邏輯編程并編程到集成電路中,就可以很容易得到實現(xiàn)該邏輯方法流程的硬件電路。

      控制器可以按任何適當?shù)姆绞綄崿F(xiàn),例如,控制器可以采取例如微處理器或處理器以及存儲可由該(微)處理器執(zhí)行的計算機可讀程序代碼(例如軟件或固件)的計算機可讀介質、邏輯門、開關、專用集成電路(applicationspecificintegratedcircuit,asic)、可編程邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmelat91sam、microchippic18f26k20以及siliconelabsc8051f320,存儲器控制器還可以被實現(xiàn)為存儲器的控制邏輯的一部分。本領域技術人員也知道,除了以純計算機可讀程序代碼方式實現(xiàn)控制器以外,完全可以通過將方法步驟進行邏輯編程來使得控制器以邏輯門、開關、專用集成電路、可編程邏輯控制器和嵌入微控制器等的形式來實現(xiàn)相同功能。因此這種控制器可以被認為是一種硬件部件,而對其內包括的用于實現(xiàn)各種功能的裝置也可以視為硬件部件內的結構?;蛘呱踔?,可以將用于實現(xiàn)各種功能的裝置視為既可以是實現(xiàn)方法的軟件模塊又可以是硬件部件內的結構。

      上述實施例闡明的系統(tǒng)、裝置、模塊或單元,具體可以由計算機芯片或實體實現(xiàn),或者由具有某種功能的產(chǎn)品來實現(xiàn)。一種典型的實現(xiàn)設備為計算機。具體的,計算機例如可以為個人計算機、膝上型計算機、車載人機交互設備、蜂窩電話、相機電話、智能電話、個人數(shù)字助理、媒體播放器、導航設備、電子郵件設備、游戲控制臺、平板計算機、可穿戴設備或者這些設備中的任何設備的組合。

      雖然本申請?zhí)峁┝巳鐚嵤├蛄鞒虉D所述的方法操作步驟,但基于常規(guī)或者無創(chuàng)造性的手段可以包括更多或者更少的操作步驟。實施例中列舉的步驟順序僅僅為眾多步驟執(zhí)行順序中的一種方式,不代表唯一的執(zhí)行順序。在實際中的裝置或終端產(chǎn)品執(zhí)行時,可以按照實施例或者附圖所示的方法順序執(zhí)行或者并行執(zhí)行(例如并行處理器或者多線程處理的環(huán)境,甚至為分布式數(shù)據(jù)處理環(huán)境)。術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、產(chǎn)品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、產(chǎn)品或者設備所固有的要素。在沒有更多限制的情況下,并不排除在包括所述要素的過程、方法、產(chǎn)品或者設備中還存在另外的相同或等同要素。

      為了描述的方便,描述以上裝置時以功能分為各種模塊分別描述。當然,在實施本申請時可以把各模塊的功能在同一個或多個軟件和/或硬件中實現(xiàn),也可以將實現(xiàn)同一功能的模塊由多個子模塊或子單元的組合實現(xiàn)等。以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。

      本領域技術人員也知道,除了以純計算機可讀程序代碼方式實現(xiàn)控制器以外,完全可以通過將方法步驟進行邏輯編程來使得控制器以邏輯門、開關、專用集成電路、可編程邏輯控制器和嵌入微控制器等的形式來實現(xiàn)相同功能。因此這種控制器可以被認為是一種硬件部件,而對其內部包括的用于實現(xiàn)各種功能的裝置也可以視為硬件部件內的結構。或者甚至,可以將用于實現(xiàn)各種功能的裝置視為既可以是實現(xiàn)方法的軟件模塊又可以是硬件部件內的結構。

      本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。

      這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。

      這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。

      在一個典型的配置中,計算設備包括一個或多個處理器(cpu)、輸入/輸出接口、網(wǎng)絡接口和內存。

      內存可能包括計算機可讀介質中的非永久性存儲器,隨機存取存儲器(ram)和/或非易失性內存等形式,如只讀存儲器(rom)或閃存(flashram)。內存是計算機可讀介質的示例。

      計算機可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現(xiàn)信息存儲。信息可以是計算機可讀指令、數(shù)據(jù)結構、程序的模塊或其他數(shù)據(jù)。計算機的存儲介質的例子包括,但不限于相變內存(pram)、靜態(tài)隨機存取存儲器(sram)、動態(tài)隨機存取存儲器(dram)、其他類型的隨機存取存儲器(ram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、快閃記憶體或其他內存技術、只讀光盤只讀存儲器(cd-rom)、數(shù)字多功能光盤(dvd)或其他光學存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設備或任何其他非傳輸介質,可用于存儲可以被計算設備訪問的信息。按照本文中的界定,計算機可讀介質不包括暫存電腦可讀媒體(transitorymedia),如調制的數(shù)據(jù)信號和載波。

      本領域技術人員應明白,本申請的實施例可提供為方法、系統(tǒng)或計算機程序產(chǎn)品。因此,本申請可采用完全硬件實施例、完全軟件實施例或結合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、cd-rom、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。

      本申請可以在由計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務或實現(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結構等等。也可以在分布式計算環(huán)境中實踐本申請,在這些分布式計算環(huán)境中,由通過通信網(wǎng)絡而被連接的遠程處理設備來執(zhí)行任務。在分布式計算環(huán)境中,程序模塊可以位于包括存儲設備在內的本地和遠程計算機存儲介質中。

      本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本申請的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特征進行結合和組合。

      以上所述僅為本申請的實施例而已,并不用于限制本申請。對于本領域技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本申請的權利要求范圍之內。

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