JP2021111370A - ブロックチェーンに基づくデータ処理方法、装置、機器及び媒体 - Google Patents

ブロックチェーンに基づくデータ処理方法、装置、機器及び媒体 Download PDF

Info

Publication number
JP2021111370A
JP2021111370A JP2020205937A JP2020205937A JP2021111370A JP 2021111370 A JP2021111370 A JP 2021111370A JP 2020205937 A JP2020205937 A JP 2020205937A JP 2020205937 A JP2020205937 A JP 2020205937A JP 2021111370 A JP2021111370 A JP 2021111370A
Authority
JP
Japan
Prior art keywords
data
delayed
transaction request
disclosure
deferred
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020205937A
Other languages
English (en)
Other versions
JP7058710B2 (ja
Inventor
ウェイ シャオ,
Wei Xiao
ウェイ シャオ,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baidu Online Network Technology Beijing Co Ltd
Original Assignee
Baidu Online Network Technology Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Baidu Online Network Technology Beijing Co Ltd filed Critical Baidu Online Network Technology Beijing Co Ltd
Publication of JP2021111370A publication Critical patent/JP2021111370A/ja
Application granted granted Critical
Publication of JP7058710B2 publication Critical patent/JP7058710B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)

Abstract

【課題】ブロックチェーン内の書き込みデータに対する遅延開示を実現するために、ブロックチェーンに基づくデータ処理方法、装置、電子機器及び媒体を提供する。【解決手段】ブロックチェーンに基づくデータ処理方法において、装置は、遅延トランザクション要求を取得し、遅延トランザクション要求の実行をトリガするS110。次に、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶するS120。そして、設定された開示遅延条件が満たされる場合、遅延トランザクションデータを復号化処理するS130。【選択図】図1

Description

本発明はコンピュータ技術に関し、具体的にブロックチェーン技術に関し、特にブロックチェーンに基づくデータ処理方法、装置、機器及び媒体に関する。
ブロックチェーン技術は、分散型データ記憶、ピアツーピア送信、コンセンサスメカニズム、暗号化アルゴリズム等のコンピュータ技術を組み合わせる新しいアプリケーションパターンである。
複数のブロックチェーンノードから構成されるブロックチェーンネットワークにおいては、各ノードは、分散化の公平性を確保するために、各ブロック内のトランザクションデータを検証し、ブロックを記憶する。
様々なアプリケーションシナリオにおけるブロックチェーン技術の使用に伴い、データ開示の適時性に対する要件、アップリンクデータの遅延開示に対するニーズなど、より多くのニーズが求められるようになった。
従来技術では、アップリンクデータの遅延開示のための解決手段が未だに提供されていない。
本発明の実施例は、ブロックチェーン内の書き込みデータに対する遅延開示を実現するために、ブロックチェーンに基づくデータ処理方法、装置、電子機器及び媒体を提供する。
第1態様では、本発明の実施例は、ブロックチェーンノードによって実行される、ブロックチェーンに基づくデータ処理方法を提供し、当該方法は、遅延トランザクション要求を取得し、前記遅延トランザクション要求の実行をトリガするステップと、前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶するステップと、設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップと、を含む。
上記発明の一実施例は以下の利点又は有益な効果を有する。ブロックチェーンノードは、取得された遅延トランザクション要求の実行中に、準同型暗号化を導入することにより、決定された遅延開示対象のデータを処理し、データ検証に影響を与えることなく、得られた暗号化された遅延データの安全性を確保することができ、その後、暗号化された遅延データを含む遅延トランザクションデータをアップリンクに記憶し、設定された開示遅延条件が満たされると判定された場合、ブロックチェーンに記憶されている遅延トランザクションデータを復号化し、ブロックチェーン内のアップリンクデータに対する遅延開示を実現し、アップリンクデータの遅延開示に新たな考え方を提供する。
選択的に、前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得するステップが、前記遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータを決定するステップと、前記読み取りデータを準同型暗号化するステップと、暗号化された読み取りデータに基づいて前記遅延トランザクション要求を実行して、暗号化された書き込みデータを生成するステップと、暗号化された遅延データを、生成された遅延トランザクションデータに追加するステップであって、暗号化された遅延データは、暗号化された書き込みデータを含むか、又は暗号化された読み取りデータ及び書き込みデータを含むステップと、を含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。遅延トランザクション要求の実行中にデータに対して段階的に特性が決定されることに合わせて、遅延開示対象の読み取りデータ及び書き込みデータを処理して、暗号化された遅延データを取得することができ、暗号化された遅延データを決定するための選択可能な方式を提供する。
選択的に、前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化する前に、さらに、前記遅延トランザクション要求の実行中に、遅延開示対象のデータを決定するステップと、前記遅延開示対象のデータの実行操作タイプに基づいて、対応する暗号化アルゴリズムを決定するステップと、を含む。
選択的に、前記遅延開示対象のデータの実行操作タイプに基づいて、対応する暗号化アルゴリズムを決定するステップが、前記遅延開示対象のデータが、四則演算を実行するデジタルデータである場合、完全準同型暗号化アルゴリズムを選択するステップと、前記遅延開示対象のデータが、加算を実行するデジタルデータである場合、加算準同型暗号化アルゴリズムを選択するステップと、前記遅延開示対象のデータが、乗算を実行するデジタルデータである場合、乗算準同型暗号化アルゴリズムを選択するステップと、前記遅延開示対象のデータが、演算を必要としないテキストデータである場合、非対称暗号化アルゴリズムを選択するステップと、を含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。異なる暗号化アルゴリズムを導入することにより、異なる実行操作タイプの遅延開示対象のデータを処理し、技術案の柔軟性を向上させ、適用範囲を拡大する。
選択的に、設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップが、前記遅延トランザクション要求で指定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップ、又は、前記遅延トランザクション要求の開始ユーザから発送された開示指示を受信すると、設定された開示遅延条件が満たされると判定し、前記遅延トランザクションデータを復号化処理するステップを含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。開示遅延条件を導入することにより、ブロックチェーンにおけるアップリンクデータの遅延開示を実現することができ、同時に、実際の必要に応じて、遅延トランザクション要求において開示遅延条件を事前に指定するか、又は後に遅延トランザクション要求の開始ユーザによって送信するなどして、柔軟に対応して技術案の柔軟性を向上させる。
選択的に、前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化するステップが、前記遅延トランザクション要求の実行中に、前記遅延トランザクション要求の開始ユーザによって提供された暗号鍵を用いて、決定された遅延開示対象のデータを準同型暗号化するステップを含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。遅延開示対象のデータを準同型暗号化する暗号鍵が遅延トランザクション要求の開始ユーザによって提供されるように限定することにより、遅延開示対象のデータの安全性をさらに保証する。
選択的に、前記遅延トランザクションデータを復号化処理する前に、さらに、
前記開始ユーザによって開始された開示トランザクション要求を取得し、前記開示トランザクション要求から復号鍵を取得するステップを含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。復号鍵は遅延トランザクション要求の開始ユーザによって提供され、例えば、復号鍵が、遅延トランザクション要求の開始ユーザによって開始された開示トランザクション要求に運ばれ、復号鍵の安全性が保証される。ブロックチェーンノードは、開示トランザクション要求から復号鍵を取得することができ、復号鍵を取得するための選択可能な方式を提供する。
選択的に、設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップが、設定された開示遅延条件が満たされる場合、復号化処理を行うように、前記開始ユーザによって提供された復号鍵を前記遅延トランザクションデータの照会ユーザに提供するステップを含む。
選択的に、前記開始ユーザによって提供された復号鍵を前記遅延トランザクションデータの照会ユーザに提供するステップが、前記開始ユーザによって提供された復号鍵を開示されるようにアップリンクに記憶するステップ、又は、前記遅延トランザクションデータを照会する際に復号化処理を行うために、前記開始ユーザによって提供された復号鍵を前記遅延トランザクション要求に対応してローカルに関連付けて記憶するステップを含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。照会ユーザは、ブロックチェーン又はローカルのブロックチェーンノードから復号鍵を取得して、復号化処理を行い、さらに遅延データを取得することができる。
選択的に、決定された遅延開示対象のデータを準同型暗号化した後に、さらに、前記暗号鍵と前記暗号化された遅延データとの間の対応関係を確立し、双方向索引を作成するステップを含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。暗号鍵と暗号化された遅延データとの間の双方向索引を作成することにより、暗号鍵に対応する復号鍵を素早く照会するために新たな考え方を提供する。
選択的に、前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得するステップが、前記遅延トランザクション要求の実行中に、キー値ペアの形式で記憶される遅延開示対象の読み取りデータ及び書き込みデータを決定するステップと、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化するとともに、準同型暗号化アルゴリズムを用いてキー値ペアの値ドメインを暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得するステップと、を含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。遅延開示対象のデータ内の読み取りデータ及び書き込みデータがキー値ペアの形式で記憶される場合、実際のキー値ペアのキードメイン及び値ドメインの特性に合わせて、異なる暗号化アルゴリズムを選択して暗号化することにより、技術案の柔軟性をさらに向上させる。
選択的に、前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得するステップが、ローカルノードが前記遅延トランザクション要求の事前実行ノードである場合、平文状態の読み取りデータに対して前記遅延トランザクション要求を実行し、平文状態の書き込みデータを決定するステップと、前記読み取りデータ及び書き込みデータを準同型暗号化して、前記遅延開示対象のデータの暗号化された遅延データとして遅延トランザクションデータに追加するステップと、を含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。ブロックチェーンノードが遅延トランザクション要求の事前実行ノードであるシナリオでは、ブロックチェーンノードは、平文状態でのデータを演算した後に、平文状態での読み取りデータ及び書き込みデータを準同型暗号化することができ、最初に準同型暗号化してから演算を行う必要がなく、算出速度を高める。
選択的に、設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップが、設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータに対する照会要求を受信すると、前記暗号化された遅延データを含む遅延トランザクションデータを復号化して照会要求側にフィードバックするステップを含む。
上記選択可能な方式は以下の利点又は有益な効果を有する。遅延トランザクションデータを復号化処理するための選択可能な方式を提供し、オフラインのデータ伝送に一層適合している。
第2態様では、本発明の実施例は、ブロックチェーンノードに配置される、ブロックチェーンに基づくデータ処理装置を開示し、当該装置は、遅延トランザクション要求を取得し、前記遅延トランザクション要求の実行をトリガするための遅延トランザクション要求取得モジュールと、前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶するための準同型暗号化モジュールと、設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するための復号化モジュールと、を備える。
第3態様では、本発明の実施例はさらに電子機器を開示し、少なくとも1つのプロセッサと、該少なくとも1つのプロセッサと通信可能に接続されるメモリとを備え、前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令が前記少なくとも1つのプロセッサによって実行されることにより、前記少なくとも1つのプロセッサが、本発明のいずれかの実施例に記載のブロックチェーンに基づくデータ処理方法を実行することができる。
第4態様では、本発明の実施例はさらに、コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ命令は、コンピュータに本発明のいずれかの実施例に記載のブロックチェーンに基づくデータ処理方法を実行させる。
第5態様では、本発明の実施例はさらに、コンピュータプログラムを提供し、前記コンピュータプログラムは、コンピュータに本発明のいずれかの実施例に記載のブロックチェーンに基づくデータ処理方法を実行させる。
上記発明のうちの一実施例は以下の利点又は有益な効果を有する。ブロックチェーンノードは、取得された遅延トランザクション要求の実行中に、準同型暗号化を導入することにより、決定された遅延開示対象のデータを処理し、データ検証に影響を与えることなく、得られた暗号化された遅延データの安全性を確保することができ、その後、暗号化された遅延データを含む遅延トランザクションデータをアップリンクに記憶し、設定された開示遅延条件が満たされると判定された場合、ブロックチェーンに記憶されている遅延トランザクションデータを復号化し、ブロックチェーン内のアップリンクデータに対する遅延開示を実現し、アップリンクデータの遅延開示に新たな考え方を提供する。
上記選択可能な方式の他の効果は、以下に具体的な実施例と組み合わせて説明する。
図面は本技術案への理解を容易にするためのものであり、本発明を限定するものではない。
本発明の第1の実施例によって提供される、ブロックチェーンに基づくデータ処理方法のフローチャートである。 本発明の第2の実施例によって提供される、ブロックチェーンに基づくデータ処理方法のフローチャートである。 本発明の第3の実施例によって提供される、ブロックチェーンに基づくデータ処理方法のフローチャートである。 本発明の第4の実施例によって提供される、ブロックチェーンに基づくデータ処理方法のフローチャートである。 本発明の第5の実施例によって提供される、ブロックチェーンに基づくデータ処理装置の構造概略図である。 本発明の実施例のブロックチェーンに基づくデータ処理方法を実現するための電子機器のブロック図である。
以下に、図面に合わせて本発明の例示的な実施例を説明し、理解を促すために本発明の実施例の様々な詳細を含んでいるが、単なる例示的なものと見なすべきである。従って、当業者であれば、本発明の範囲及び精神を逸脱することなく、ここで説明された実施例に対して様々な変更と修正を行うことができる。同様に、明確さと簡潔さのために、以下の説明では公知の機能及び構造に対する説明は省略する。
第1の実施例
図1は、本発明の第1の実施例によって提供される、ブロックチェーンに基づくデータ処理方法のフローチャートである。本実施例は、データをどのように処理すればよいかという場合に適用可能であり、特に、データの遅延開示が求められる時、データ開示の適時性の要件を満たすために、どのようにデータを処理すればよいかという場合に適用される。本実施例におけるブロックチェーンに基づくデータ処理方法は、ブロックチェーンノードによって実行することができ、具体的には、トランザクション要求を開始するブロックチェーンノードによって実行するか、又はブロックチェーンネットワークにおいてトランザクション要求を取得した他のノードによって実行してもよい。
本発明の実施例の技術案は、ブロックチェーンに基づくデータ処理装置によって実行し、該装置はソフトウェア及び/又はハードウェアの方式で実現でき、ブロックチェーンノードを搭載したコンピューティングデバイスに集積することもできる。図1に示すように、本実施例によって提供されるブロックチェーンに基づくデータ処理方法は、以下のステップを含んでもよい。
S110において、遅延トランザクション要求を取得し、遅延トランザクション要求の実行をトリガする。
本実施例では、遅延トランザクション要求は、データの遅延開示が求められるトランザクション要求であってもよい。遅延開示が求められているかどうかの観点から考えれば、ブロックチェーンネットワークにおいて伝送されているトランザクション要求は、遅延トランザクション要求と通常のトランザクション要求の二種類に分けることができる。遅延トランザクション要求と通常のトランザクション要求を区別するために、さらに、遅延トランザクション要求に識別情報、例えば特定の識別子を追加することができる。選択的に、遅延トランザクション要求は、スマートコントラクトに基づくトランザクション要求であるか、又はフィールドフォーマットに基づくトランザクション要求であってもよい。
選択的に、ローカルノードは、ローカルで開始された遅延トランザクション要求を取得でき、例えば、ユーザは、データの遅延開示が求められている場合、ローカルノードを介して遅延トランザクション要求を開始でき、ローカルノードは、ローカルで開始された遅延トランザクション要求を取得することができる。又は、ローカルノードは、あるトリガメカニズム、例えばサードパーティ製品(例えばクライアント、端末装置又はサーバ等)から送信されてきた遅延トランザクション処理要件を受信した時、遅延トランザクション処理要件に応じて遅延トランザクション要求を生成して開始する。
ローカルノードはさらに、ブロックチェーンネットワークにおいて伝送されている他のブロックチェーンノードによって開始された遅延トランザクション要求を取得することもできる。
具体的に、ローカルノードは、遅延トランザクション要求を取得した後、当該遅延トランザクション要求を実行することができる。例えば、ローカルノードは、トランザクション要求を取得するたびに、取得されたトランザクション要求を実行し、従って、ローカルノードは、遅延トランザクション要求を取得した後、当該遅延トランザクション要求を実行することができる。又は、ローカルノードはさらに、トランザクション要求をバッチで処理することができ、例えば、ローカルノードは、現在の状態が、設定されたバッチ処理条件を満たしていると判定した場合、取得されたトランザクション要求を一括して処理する。現在の状態が設定されたバッチ処理条件を満たしていることは、取得されたトランザクション要求の数が設定された値に達するか、又は現在の時間が設定された処理周期に達する等であってもよい。従って、ローカルノードは、遅延トランザクション要求を取得した後、現在の状態が設定されたバッチ処理条件を満たしていると判定した場合、取得されたトランザクション要求を一括して処理すれば、遅延トランザクション要求を実行することができる。
S120において、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化することにより、暗号化された遅延データを含む遅延トランザクションデータを取得して、アップリンクに記憶する。
本実施例では、遅延トランザクション要求は実行中に、ブロックチェーン内の一部の既存のデータに依存する必要があり、さらに、一部のデータを変更、削除又は追加する可能性があり、これらのデータが、遅延トランザクション要求に関連するデータであり、遅延開示対象のデータが、遅延トランザクション要求に関連するデータのうち遅延開示が必要とされるデータである。選択的に、遅延トランザクション要求は、該遅延トランザクション要求に関連するデータにおいて、遅延開示を必要とするもの、及び遅延開示を必要としないものを規定することができる。さらに、遅延開示を必要とするデータは、遅延開示を必要としないデータと区別されるように、特定の識別子を含んでも良い。従って、ローカルノードは、遅延トランザクション要求を取得した後、遅延トランザクション要求の指示に従って、全部又は一部のトランザクション要求のデータを遅延開示対象のデータとして決定することができる。
準同型暗号化は、特殊な暗号化方式であり、即ち暗号文を直接処理するという方式であり、平文を処理した後に処理結果を暗号化するという方式と比べ、得られた結果は同じである。それに応じて、暗号化された遅延データは、遅延開示対象のデータを準同型暗号化して得られた暗号化データである。
選択的に、遅延トランザクション要求は、遅延開示対象のデータを準同型暗号化するための準同型暗号化アルゴリズムを指定することができ、従って、ローカルノードは、遅延トランザクション要求の実行中に、遅延トランザクション要求で指定された準同型暗号化アルゴリズムを用いて遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを取得し、暗号化された遅延データを遅延トランザクションデータに追加して、ブロックチェーンに記憶することができる。遅延トランザクションデータは、暗号化された遅延データを含んでもよく、遅延トランザクション要求の実行に係る、遅延開示を必要としない平文データや、遅延トランザクション要求のトランザクション識別子等を含んでもよい。
選択的に、ローカルノードはさらに、遅延開示対象のデータの実行操作タイプに基づいて、遅延開示対象のデータを暗号化するための暗号化アルゴリズムを決定することができる。さらに、遅延開示対象のデータの実行操作タイプが異なると、用いられる暗号化アルゴリズムは異なるものであってもよい。例えば、遅延開示対象のデータが、演算を必要とするデジタルデータであるならば、必要とされる演算のタイプ(例えば加算と減算、乗算と除算等)に基づいて、対応する準同型暗号化アルゴリズムを選択することができる。通常、テキストデータは具体的な演算処理を必要としないので、遅延開示対象のデータが、演算を必要としないテキストデータである場合、非対称暗号化アルゴリズム等の非準同型暗号化アルゴリズムを選択することができる。
例示的に、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化する前に、さらに、遅延トランザクション要求の実行中に、遅延開示対象のデータを決定するステップと、遅延開示対象のデータの実行操作タイプに基づいて、対応する暗号化アルゴリズムを決定するステップとを含んでもよい。具体的に、ローカルノードは、遅延トランザクション要求の指示に従って、遅延トランザクション要求の実行中に、遅延開示対象のデータを決定することができ、その後、ローカルノードは、遅延開示対象のデータの実行操作タイプを認識することにより、対応する暗号化アルゴリズムを選択して遅延開示対象のデータを暗号化することができる。選択的に、ローカルノードは、遅延開示対象のデータが演算を必要とするデジタルデータであると認識した場合、必要とされる演算のタイプ(例えば加算と減算、乗算と除算等)に基づいて、対応する準同型暗号化アルゴリズムを選択することができ、例えば、遅延開示対象のデータが、四則演算を行うデジタルデータである場合、完全準同型暗号化アルゴリズム、例えばGentryアルゴリズムを選択することができ、遅延開示対象のデータが、加算を実行するデジタルデータである場合、加算準同型暗号化アルゴリズム、例えばPaillierアルゴリズムを選択することができ、遅延開示対象のデータが、乗算を実行するデジタルデータである場合、乗算準同型暗号化アルゴリズム、例えばRSAアルゴリズム等を選択することができる。ローカルノードは、遅延開示対象のデータが、演算を必要としないテキストデータであると認識した場合、非対称暗号化アルゴリズムを選択することができる。
なお、本実施例は、異なる暗号化アルゴリズムを導入することにより、異なる実行操作タイプの遅延開示対象のデータを処理し、技術案の柔軟性を向上させ、適用範囲を拡大する。
なお、従来の暗号化記憶メカニズムは主に、ユーザによって開始されたトランザクション要求に対するものであり、トランザクション要求のコンテンツが暗号化された情報である場合、暗号化された情報をアップリンクに記憶して、適切なタイミングで復号鍵を開示する。ブロックチェーンネットワークが暗号化されたコンテンツを理解できないため、暗号化されたコンテンツのデータを処理できず、情報を暗号化した後に記憶することしかできない。通常、テキストデータは具体的な演算処理を必要とせず、暗号化して記憶することのみが必要とされるが、論理演算が必要とされる情報は、暗号化された状態で処理することができない。例えば、1つの論理情報の場合、例えば、あるデータに1を加えるとする場合、復号鍵が開示されていないため、ブロックチェーンネットワークは暗号化された情報を理解できず、データに1を加える操作をすることができない。そのため、当該暗号化された情報に対する処理は、暗号化された情報が復号化されるまで遅らせなければ実行できない。このように、暗号化された情報の処理が、他の処理済みのトランザクション要求との衝突をもたらし、さらにロールバックする必要がある場合においても、復号化されるときにのみ発見できるので、この前に処理されたすべてのトランザクション要求はロールバックする必要がある。つまり、1つのトランザクション要求は、暗号化された情報がアップリンクに記憶される際に、実質的に処理され且つ検証されておらず、復号化されるまで遅らせないと実質的に処理し且つ検証することができない。
しかし、本発明は、遅延開示対象のデータを準同型暗号化方式で処理し、遅延開示対象のデータ及び準同型暗号化アルゴリズムが決定される場合、遅延開示対象のデータを準同型暗号化することによって得られた暗号化された遅延データは一意性を有するので、本発明は、データに衝突が存在するか否かをリアルタイムに検証する効果を実現できる。例えば、ローカルノードは、処理済みの遅延トランザクション要求の準同型暗号化アルゴリズムを用いて、現在の取得されたトランザクション要求のデータを処理し、処理して得られた暗号化された遅延データと、ブロックチェーンに記憶されている暗号化された遅延データとの一致性を比較し、一致しない場合、処理済みの遅延トランザクション要求と現在の取得されたトランザクション要求との間に衝突が存在しないと決定することができ、そうでない場合、処理済みの遅延トランザクション要求と現在の取得されたトランザクション要求との間に衝突があると決定することができる。
S130において、設定された開示遅延条件が満たされる場合、遅延トランザクションデータを復号化処理する。本実施例で、開示遅延条件は、予め設定された開示ブロックチェーンに記憶されている暗号化された遅延データが満たす必要のある条件、又は他のユーザが暗号化された遅延データの平文を取得できるために満たす必要がある条件等である。例えば、以下の少なくとも1つを含んでもよい。1)現在のブロックの高さが設定された値に達する。2)現在の時間が設定された開示時間に達する。3)遅延トランザクションデータに対して受信された照会要求の数が設定された閾値に達する。4)他のトリガメカニズム、例えば遅延トランザクション要求を開始したユーザによって送信された開示指示等を受信する。
さらに、開示遅延条件は、遅延トランザクション要求で指定するか、遅延トランザクション要求の開始者が実際の状況に応じて随時決定するか、又はブロックチェーンネットワーク内のノードのネゴシエーションによって決定して、アップリンクに記憶してもよい。
選択的に、開示遅延条件が遅延トランザクション要求で指定されている場合、設定された開示遅延条件が満たされる時、遅延トランザクション要求を復号化処理するステップは、遅延トランザクション要求で指定された開示遅延条件が満たされる時、遅延トランザクションデータを復号化処理することであってもよい。例えば、遅延トランザクション要求で指定されている開示遅延条件が、遅延トランザクションデータに対して受信された照会要求の数が設定された閾値に達して、ローカルノードが、遅延トランザクションデータに対して受信された照会要求の数を統計でき、統計された数が設定された閾値に達する、例えば設定された閾値以上であると決定される場合、遅延トランザクションデータを復号化処理する。
例示的に、開示遅延条件が遅延トランザクション要求の開始者によって実際の状況に応じて随時決定される場合、開示遅延条件は遅延トランザクション要求の開始ユーザによって出される開示指示であってもよい。従って、設定された開示遅延条件が満たされる場合、遅延トランザクション要求を復号化処理するステップは、ローカルノードが遅延トランザクション要求の開始ユーザからの開示指示を受信した場合、設定された開示遅延条件が満たされると判定し、遅延トランザクションデータを復号化処理することであってもよい。
なお、本実施例において、開示遅延条件は、遅延トランザクション要求で事前に指定され、即ち遅延トランザクション要求の開始ユーザによって指定されるか、又は後で遅延トランザクション要求の開始ユーザによって出されるなどであり、ユーザデータ開示の適時性要件が満たされるうえで、ユーザの満足度をさらに向上させる。
また、開示遅延条件がブロックチェーンネットワーク内のノードのネゴシエーションによって決定され、アップリンクに記憶される場合、設定された開示遅延条件が満たされる場合、遅延トランザクション要求を復号化処理するステップは、例えば、現在の状態(現在のブロックの高さ及び現在の時間のうちの少なくとも1つを含んでもよい)が履歴ブロックに記憶されている開示遅延条件を満たすと判定された場合、遅延トランザクションデータを復号化処理すること、又は遅延トランザクションデータに対して受信された照会要求の数が履歴ブロックに記憶されている開示遅延条件を満たすと判定された場合、遅延トランザクションデータを復号化処理する等のことであってもよい。
具体的に、ローカルノードは、設定された開示遅延条件が満たされると判定された場合、ブロックチェーンに記憶されている遅延トランザクションデータを復号化処理し、その後、任意のユーザが復号化された処理結果をブロックチェーンから取得できるように、復号化された処理結果をアップリンクに記憶することができる。又は、ローカルノードは、復号化された処理結果を照会要求に対応する照会要求側など、復号化された処理結果を必要としているユーザに送信することができる。
従って、ローカルノードは、設定された開示遅延条件が満たされる場合、遅延トランザクションデータを復号化処理するステップは、さらに、設定された開示遅延条件が満たされる場合、遅延トランザクションデータに対する照会要求が受信されると、暗号化された遅延データを含む遅延トランザクションデータを復号化して、照会要求側にフィードバックすることであってもよい。具体的に、ローカルノードは、設定された開示条件が満たされると判定された場合、遅延トランザクションデータに対する任意の照会要求側からの照会要求を受信すると、照会要求内のトランザクション識別子に基づいて、対応する遅延トランザクションデータをブロックチェーンから取得し、遅延トランザクションデータ内の暗号化された遅延データを復号化し、復号化された処理結果を照会要求側にフィードバックすることができる。
本発明の実施例が提供する技術案によれば、ブロックチェーンノードは、取得された遅延トランザクション要求の実行中に、準同型暗号化を導入することにより、決定された遅延開示対象のデータを処理し、データ検証に影響を与えることなく、得られた暗号化された遅延データの安全性を確保することができ、その後、暗号化された遅延データを含む遅延トランザクションデータをアップリンクに記憶し、設定された開示遅延条件が満たされると判定された場合、ブロックチェーンに記憶されている遅延トランザクションデータを復号化し、ブロックチェーン内のアップリンクデータに対する遅延開示を実現し、アップリンクデータの遅延開示に新たな考え方を提供する。
第2の実施例
図2は、本発明の第2の実施例によって提供される、ブロックチェーンに基づくデータ処理方法のフローチャートである。本実施例は、上記実施例に基づいて、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化することにより、暗号化された遅延データを含む遅延トランザクションデータを取得するステップについてさらに説明する。図2に示すように、本実施例によって提供されるブロックチェーンに基づくデータ処理方法は以下のステップを含んでもよい。
S210において、遅延トランザクション要求を取得し、遅延トランザクション要求の実行をトリガする。
S220において、遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータを決定する。
本実施例では、遅延開示対象のデータは、遅延トランザクション要求に関連するデータを含んでもよい。さらに、遅延トランザクション要求に関連するデータは、読み取りデータ及び書き込みデータを含んでもよく、読み取りデータは、遅延トランザクション要求の実行中にローカルデータから読み取る必要があるデータを指し、書き込みデータは、遅延トランザクション要求の実行後に更新(例えば追加、変更又は削除等)されることになるデータを指す。従って、遅延トランザクション要求で、遅延開示対象のデータのうち、遅延開示の読み取りデータと、遅延開示の書き込みデータとを指定すること等ができる。即ち、遅延開示対象のデータは、遅延開示対象の読み取りデータを含んでもよく、さらに遅延開示対象の書き込みデータを含んでもよい。なお、読み取りデータ及び書き込みデータは1回で決定されるわけではなく、遅延トランザクション要求の実行中に段階的に決定される。
具体的に、ローカルノードは、遅延トランザクション要求の実行中に、遅延トランザクション要求内の指示に従って遅延開示対象の読み取りデータを最初に決定することができる。
S230において、読み取りデータを準同型暗号化する。
具体的に、ローカルノードは、読み取りデータが決定されると、読み取りデータの実行操作タイプに基づいて、対応する準同型暗号化アルゴリズムを選択し、読み取りデータを準同型暗号化することができる。例えば、読み取りデータが四則演算を行うデジタルデータである場合、完全準同型暗号化アルゴリズムを選択することができる。
S240において、暗号化された読み取りデータに基づいて遅延トランザクション要求を実行することにより、暗号化された書き込みデータを生成する。
選択的に、ローカルノードは、スマートコントラクトを呼び出すことによって、暗号化された読み取りデータに基づいて遅延トランザクション要求を実行して、暗号化された書き込みデータを生成することができる。又は、ローカルノードは、フィールドフォーマットのトランザクション要求の実行方式に基づいて、暗号化された読み取りデータに基づいて遅延トランザクション要求を実行して、暗号化された書き込みデータを生成することもできる。
S250において、暗号化された遅延データを、生成された遅延トランザクションデータに追加し、アップリンクに記憶する。
本実施例では、暗号化された遅延データは、暗号化された書き込みデータを含むか、又は暗号化された読み取りデータ及び書き込みデータを含んでもよい。暗号化された書き込みデータが暗号化された読み取りデータによって決定されることをより直観的に検証するために、本実施例の暗号化された遅延データは、好ましくは、暗号化された読み取りデータ及び書き込みデータを含む。
具体的に、ローカルノードは暗号化された遅延データが決定されると、暗号化された遅延データを遅延トランザクションデータに追加し、アップリンクに記憶することができる。
さらに、ローカルノードが、開始ユーザが遅延トランザクション要求を開始するブロックチェーンノードである場合、即ちローカルノードが遅延トランザクション要求の事前実行ノードである場合、ローカルノードは、平文状態でのデータを最初に演算してから、平文状態での読み取りデータ及び書き込みデータを準同型暗号化することもでき、最初に準同型暗号化してから演算する必要がないため、算出速度の向上に役立つ。例示的に、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化することにより、暗号化された遅延データを含む遅延トランザクションデータを取得するステップは、ローカルノードが遅延トランザクション要求の事前実行ノードである場合、平文状態の読み取りデータに対して遅延トランザクション要求を実行し、平文状態の書き込みデータを決定し、読み取りデータ及び書き込みデータを準同型暗号化して、遅延開示対象のデータの暗号化された遅延データとして遅延トランザクションデータに追加することであってもよい。
ローカルノードが、遅延トランザクション要求の事前実行ノードである場合、ローカルノードは、暗号化された遅延データを遅延トランザクションデータに追加した後、ブロックチェーンネットワーク内の他のノードが検証及び記憶するように、遅延トランザクション要求を遅延トランザクションデータに関連付けてブロックに記憶しブロックチェーンネットワークに送信することができる。
ローカルノードが、ブロックチェーンネットワークから遅延トランザクション要求を取得した他のノードである場合、即ちローカルノードが遅延トランザクション要求の検証ノードである場合、ローカルノードは、読み取りデータを準同型暗号化した後、読み取りデータの準同型暗号化結果と、事前実行ノードによって送信された遅延トランザクション要求に関連付けられた遅延トランザクションデータ内の暗号化された読み取りデータとの一致性を比較することができる。一致すると確認された場合、ローカルノードは、S240を実行して暗号化された書き込みデータを決定し、暗号化された書き込みデータと、事前実行ノードによって送信された遅延トランザクション要求に関連付けられた遅延トランザクションデータ内の暗号化された書き込みデータとの一致性を比較し、一致すると確認された場合、アップリンクに記憶することができる。本実施例は二段階検証の方式により、事前実行ノードの偽造の確率を低下させることができる。
S260において、設定された開示遅延条件が満たされる場合、遅延トランザクションデータを復号化処理する。
本発明の実施例が提供する技術案は、遅延トランザクション要求の実行中にデータに対して段階的に特性が決定されるということに合わせて、遅延開示対象の読み取りデータ及び書き込みデータを処理することにより、暗号化された遅延データを得ることができ、暗号化された遅延データを決定するために選択可能な方式を提供する。
第3の実施例
図3は、本発明の第3の実施例によって提供される、ブロックチェーンに基づくデータ処理方法のフローチャートである。本実施例は、上記実施例に基づいて、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化することにより、暗号化された遅延データを含む遅延トランザクションデータを取得するステップについてさらに説明し、具体的には、遅延開示対象のデータの記憶形式を説明する。図3に示すように、本実施例によって提供されるブロックチェーンに基づくデータ処理方法は以下のステップを含んでもよい。
S310において、遅延トランザクション要求を取得し、遅延トランザクション要求の実行をトリガする。
S320において、遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータ及び書き込みデータを決定する。
具体的に、ローカルノードは、遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータを最初に決定し、その後、読み取りデータに基づいて遅延トランザクション要求を実行して、書き込みデータを生成することができる。読み取りデータ及び書き込みデータは、キー値ペアの形式で記憶するか、又は他の形式で記憶してもよい。照会を容易にするために、本実施例で、読み取りデータ及び書き込みデータは、キー値ペアの形式で記憶されるのが好ましい。
S330において、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化し、準同型暗号化アルゴリズムを用いてキー値ペアの値ドメインを暗号化することにより、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶する。
読み取りデータ及び書き込みデータがキー値ペアの形式で記憶される場合、キー値ペアのキードメインは、識別に用いられ、通常はテキストデータであり、演算を必要としないので、非準同型暗号化アルゴリズム、例えば非対称暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化することができる。キー値ペアの値ドメインに対しては、値ドメインが、演算を必要としないテキストデータである場合、非準同型暗号化アルゴリズム、例えば非対称暗号化アルゴリズムを用いてキー値ペアの値ドメインを暗号化することができる。値ドメインがすべてデジタルデータであるか、又は少なくとも一部のデジタルデータを含む場合、準同型暗号化アルゴリズムを用いてキー値ペアの値ドメインを暗号化することができる。さらに、値ドメインがすべてデジタルデータであるか、又は少なくとも一部のデジタルデータを含む場合、遅延トランザクション要求に基づいて、今回の実行が演算を必要としないと判定すれば、非準同型暗号化アルゴリズムを用いてキー値ペアの値ドメインを暗号化することができる。
選択的に、ローカルノードが、ブロックチェーンネットワークから遅延トランザクション要求を取得した他のノードである場合、即ちローカルノードが遅延トランザクション要求の検証ノードである場合、ローカルノードは、遅延開示対象の読み取りデータが決定されると、非準同型暗号化アルゴリズムを用いて、読み取りデータに係るキー値ペアのキードメインを暗号化するとともに、準同型暗号化アルゴリズムを用いて、読み取りデータに係るキー値ペアの値ドメインを暗号化することができる。その後、暗号化された読み取りデータに基づいて遅延トランザクション要求を実行して、暗号化された書き込みデータを生成し、暗号化された書き込みデータ及び読み取りデータを、暗号化された遅延データとして遅延トランザクションデータに追加し、アップリンクに記憶することができる。
ローカルノードが遅延トランザクション要求の事前実行ノードである場合、ローカルノードは、平文状態での読み取りデータに対して遅延トランザクション要求を最初に実行し、平文状態での書き込みデータを決定することができる。読み取りデータ及び書き込みデータがキー値ペアの形式で記憶される場合、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化するとともに、準同型暗号化アルゴリズムを用いてキー値ペアの値ドメインを暗号化することにより、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶することができる。さらに、キードメイン及び値ドメインを暗号化するアルゴリズムが一意でない場合、ローカルノードは、ブロックチェーンネットワーク内の他のノードが検証して記憶するように、用いるアルゴリズムの識別子を遅延トランザクションデータに追加してから、遅延トランザクション要求を遅延トランザクションデータに関連付けてブロックに記憶しブロックチェーンネットワークに送信することができる。
S340において、設定された開示遅延条件が満たされる場合、遅延トランザクションデータを復号化処理する。
読み取りデータ及び書き込みデータがキー値ペアの形式で記憶される場合、選択的に、ローカルノードは、設定された開示遅延条件が満たされる場合、遅延トランザクションデータに対する照会要求を任意のユーザから受信すると、照会要求内のトランザクション識別子に基づいて、暗号化されたキードメイン(例えば、キードメインを暗号化するアルゴリズムがf1()である場合、暗号化されたキードメインをf1(key)として表すことができる)を決定でき、次に、暗号化されたキードメインに基づいて、暗号化された値ドメイン(例えば、値ドメインを暗号化するアルゴリズムがf2()である場合、暗号化された値ドメインをf2(value)として表すことができる)を決定し、その後、開始ユーザによって提供された復号鍵を用いて、暗号化された値ドメインを復号化することができ、即ちf2’(f2(value))を実行してvalueを取得し、その後valueを当該ユーザにフィードバックすることができる。
本発明の実施例によって提供される技術案は、遅延開示対象のデータ内の読み取りデータ及び書き込みデータがキー値ペアの形式で記憶される場合、実際のキー値ペアのキードメイン及び値ドメインの特性に合わせて、異なる暗号化アルゴリズムを選択して暗号化することにより、技術案の柔軟性をさらに向上させる。
さらに、ローカルノードはアプリケーションレイヤ、論理ストレージレイヤ及び物理ストレージレイヤ等の構造を含んでもよい。任意の機能を実現できるソフトウェアであってもよく、様々なデータ処理要求を生成する必要がある。好ましくは、アプリケーションレイヤは、ブロックチェーンノードの機能を実現するソフトウェアであり、具体的には、ブロックチェーンノードのローカルブロックチェーンの正常な動作を支持するために必要なソフトウェアを含み、例えば仮想マシン、及びブロックチェーンに関連する他のアプリケーションソフトウェア等を含んでもよい。ブロックチェーンアプリケーションレイヤのソフトウェアの主な機能は,トランザクション要求を生成することである。論理ストレージレイヤは、アプリケーションレイヤから取得したトランザクション要求を実行し、実行結果を物理ストレージレイヤに伝送して記憶するものである。
選択的に、ローカルノードがアプリケーションレイヤ、論理ストレージレイヤ及び物理ストレージレイヤを含む場合、遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータ及び書き込みデータを決定し、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化するステップは、遅延トランザクション要求の実行中に、論理ストレージレイヤにより遅延開示対象の読み取りデータ及び書き込みデータを決定し、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化することであってもよい。
具体的に、アプリケーションレイヤは遅延トランザクション要求内の遅延開示対象のデータを指定することができ、従って、論理ストレージレイヤは、アプリケーションレイヤから遅延トランザクション要求を取得した後、遅延トランザクション要求内の指示に従って、遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータ及び書き込みデータを決定することができ、さらに、S330の方式を用いて、キー値ペアのキードメイン及び値ドメインを暗号化して、暗号化された遅延データを取得し、その後、暗号化された遅延データを物理ストレージレイヤに伝送して記憶することができる。
第4の実施例
図4は、本発明の第4の実施例によって提供される、ブロックチェーンに基づくデータ処理方法のフローチャートである。本実施例は、上記実施例に基づき、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化するステップをさらに説明し、具体的には、遅延開示対象のデータを準同型暗号化する暗号鍵を説明する。図4に示すように、本実施例によって提供される、ブロックチェーンに基づくデータ処理方法は以下のステップを含んでもよい。
S410において、遅延トランザクション要求を取得し、遅延トランザクション要求の実行をトリガする。
S420において、遅延トランザクション要求の実行中に、遅延トランザクション要求の開始ユーザによって提供された暗号鍵を用いて、決定された遅延開示対象のデータを準同型暗号化することにより、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶する。
本実施例では、遅延開示対象のデータを暗号化することに用いられる暗号鍵は、開始ユーザによって提供され、例えば遅延トランザクション要求の開始ユーザの非対称鍵の公開鍵であってもよい。選択的に、開始ユーザは、暗号鍵をオフラインでローカルノードに提供するか、又はオンラインで提供することもできる。例えば、開始ユーザは、ローカルノードの公開鍵を用いて暗号鍵を暗号化して、遅延トランザクション要求に運んでローカルノードに送信することができる。データの安全性を保証するために、開始ユーザは、暗号鍵を定期的に変更して、ローカルノードに提供することができる。
具体的に、ローカルノードは、遅延トランザクション要求の実行中に、遅延トランザクション要求の開始ユーザによって提供された暗号鍵を用いて、決定された遅延開示対象のデータを準同型暗号化することによって暗号化された遅延データを取得し、その後、暗号化された遅延データを遅延トランザクションデータに追加し、アップリンクに記憶することができる。
なお、ユーザは通常自分が信頼するブロックチェーンノードを選択してトランザクション要求を開始し、ローカルノードが、開始ユーザが遅延トランザクション要求を開始するブロックチェーンノードである場合、即ちローカルノードが遅延トランザクション要求の事前実行ノードである場合においても、ローカルノードは、設定された鍵生成ルールに従って暗号鍵を生成することができる。例えば、ローカルノードは、暗号鍵が漏洩しないように、予め設定された信頼可能な領域において、鍵生成ルールに従って暗号鍵を生成することができる。
さらに、ローカルノードが、遅延トランザクション要求の事前実行ノードである場合、ローカルノードは、遅延トランザクション要求を取得した後、鍵生成ルールに従って暗号鍵を最初に生成してから、遅延トランザクション要求の実行中に、生成された暗号鍵を用いて、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを取得することができ、その後、暗号化された遅延データを遅延トランザクションデータに追加し、アップリンクに記憶することができる。
S430において、設定された開示遅延条件が満たされる場合、復号化処理が行われるように、開始ユーザによって提供された復号鍵を遅延トランザクションデータの照会ユーザに提供する。
実施例では、暗号鍵が開始ユーザによって提供される場合、対応する復号鍵も開始ユーザによって提供されてもよく、例えば開始ユーザの非対称鍵の秘密鍵であってもよい。例示的に、遅延トランザクションデータを復号化処理する前に、開始ユーザによって提供された復号鍵を取得するステップを含んでもよい。選択的に、開始ユーザは、復号鍵をオフラインでローカルノードに提供するか、又はオンラインで提供することもでき、例えば、開始ユーザは、復号鍵を開示トランザクション要求に追加して開始し、ローカルノードは、開始ユーザによって開始された開示トランザクション要求を取得し、開示トランザクション要求から復号鍵を取得することができる。復号鍵の安全性を保証するために、開始ユーザはさらに、ローカルノードの公開鍵を用いて復号鍵を暗号化した後、開示トランザクション要求に運んでローカルノードに送信することができる。
また、暗号鍵がローカルノードによって生成される場合、非対称鍵の特性に基づいて、ローカルノードは暗号鍵を生成すると同時に復号鍵を生成する。
具体的に、ローカルノードは復号鍵を取得した後、復号鍵を遅延トランザクション要求に関連付けて記憶し、設定された開示遅延条件が満たされると判定された場合、復号処理が行われるように、開始ユーザによって提供された復号鍵を遅延トランザクションデータの照会ユーザに提供することができる。
選択的に、ローカルノードは、以下のような選択可能な方式のいずれかを用いて、開始ユーザによって提供された復号鍵を遅延トランザクションデータの照会ユーザに提供することができる。1)開始ユーザによって提供された復号鍵を開示されるようにアップリンクに記憶するして、照会ユーザはブロックチェーンから照会して復号鍵を取得することができる。2)遅延トランザクションデータを照会する際に復号処理を行うために、開始ユーザによって提供された復号鍵を、遅延トランザクション要求に対応してローカルに関連付けて記憶して、照会ユーザはローカルノードから復号鍵を取得することができる。3)遅延トランザクションデータを照会する際に復号処理を行うために、他のノードが開始ユーザによって提供された復号鍵を遅延トランザクション要求に対応してローカルに関連付けて記憶するように、開始ユーザによって提供された復号鍵をローカルノードが信頼する他のノードに伝送して、照会ユーザは他のノードから復号鍵を取得することができる。
また、ローカルノードは復号化された処理結果を直接照会ユーザに提供することができる。例えば、ローカルノードは遅延トランザクションデータに対する照会要求を任意の照会ユーザから受信すると、照会要求のトランザクション識別子に基づいて、ターゲットの遅延トランザクション要求を決定することができる。その後、ローカルに記憶されている復号鍵と遅延トランザクション要求との間の関連関係に基づいて、ターゲットの遅延トランザクション要求に対応する遅延トランザクションデータを復号化するための復号鍵を決定して、復号鍵を用いてターゲットの遅延トランザクション要求に対応する遅延トランザクションデータを復号化し、復号化された処理結果を照会ユーザにフィードバックすることができ、又はローカルノードは復号化された処理結果をアップリンクに記憶することができる。
本発明の実施例によって提供される技術案は、遅延開示対象のデータを準同型暗号化する暗号鍵と、遅延トランザクションデータを復号化する復号鍵とが、遅延トランザクション要求の開始ユーザによって提供されるように限定することで、遅延開示対象のデータの安全性をさらに保証する。
後で素早く照会して復号鍵を特定することを容易にするために、選択的に、決定された遅延開示対象のデータを準同型暗号化した後、ローカルノードは、暗号鍵と暗号化された遅延データとの間の対応関係を確立し、双方向索引を作成することができ、例えば、暗号鍵を索引語とし、暗号化された遅延データを索引結果とする索引表を作成するか、又は暗号化された遅延データを索引語とし、暗号鍵を索引結果とする索引表を作成することができる。又は、ローカルノードは暗号鍵とトランザクション識別子との間の双方向索引を作成することもできる。
例えば、ローカルノードは、遅延トランザクションデータに対する照会要求を任意のユーザから受信すると、遅延トランザクションデータに基づいて、暗号化された遅延データを決定でき、その後、予め作成された暗号鍵と暗号化された遅延データとの間の索引表において照会することにより、暗号化された遅延データに関連付けられた暗号鍵を決定することができる。従って、暗号化された遅延データに関連付けられた暗号鍵に基づいて、復号鍵を決定し、復号鍵を用いて、暗号化された遅延データを復号化して当該ユーザにフィードバックすることができる。
第5の実施例
図5は、本発明の第5の実施例によって提供される、ブロックチェーンに基づくデータ処理装置の構造概略図である。当該装置はブロックチェーンノードに配置することができ、本発明のいずれかの実施例によって提供される、ブロックチェーンに基づくデータ処理方法を実行でき、実行方法に対応する機能モジュール及び有益な効果を有する。図5に示すように、当該ブロックチェーンに基づくデータ処理装置は、遅延トランザクション要求を取得し、遅延トランザクション要求の実行をトリガするための遅延トランザクション要求取得モジュール510と、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化することにより、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶するための準同型暗号化モジュール520と、設定された開示遅延条件が満たされる場合、遅延トランザクションデータを復号化処理するための復号化モジュール530と、を備える。
本発明の実施例によって提供される技術案において、ブロックチェーンノードは、取得された遅延トランザクション要求の実行中に、準同型暗号化を導入することにより、決定された遅延開示対象のデータを処理し、データ検証に影響を与えることなく、得られた暗号化された遅延データの安全性を確保することができ、その後、暗号化された遅延データを含む遅延トランザクションデータをアップリンクに記憶し、設定された開示遅延条件が満たされると判定された場合、ブロックチェーンに記憶されている遅延トランザクションデータを復号化し、ブロックチェーン内のアップリンクデータに対する遅延開示を実現し、アップリンクデータの遅延開示に新たな考え方を提供する。
例示的に、準同型暗号化モジュール520は、具体的に、遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータを決定し、読み取りデータを準同型暗号化し、暗号化された読み取りデータに基づいて遅延トランザクション要求を実行して、暗号化された書き込みデータを生成し、暗号化された遅延データを、生成された遅延トランザクションデータに追加し、暗号化された遅延データは、暗号化された書き込みデータを含むか、又は暗号化された読み取りデータ及び書き込みデータを含む。
例示的に、上記装置は、さらに、遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化する前に、遅延トランザクション要求の実行中に、遅延開示対象のデータを決定するための遅延開示対象のデータ決定ユニットと、遅延開示対象のデータの実行操作タイプに基づいて、対応する暗号化アルゴリズムを決定するための暗号化アルゴリズム決定ユニットと、を備える。
例示的に、暗号化アルゴリズム決定ユニットは、具体的に、遅延開示対象のデータが、四則演算を行うデジタルデータである場合、完全準同型暗号化アルゴリズムを選択し、遅延開示対象のデータが、加算を実行するデジタルデータである場合、加算準同型暗号化アルゴリズムを選択し、遅延開示対象のデータが、乗算を実行するデジタルデータである場合、乗算準同型暗号化アルゴリズムを選択し、遅延開示対象のデータが、演算を必要としないテキストデータである場合、非対称暗号化アルゴリズムを選択する。
例示的に、復号化モジュール530は、具体的に、遅延トランザクション要求で指定された開示遅延条件が満たされる場合、遅延トランザクションデータを復号化処理し、又は、遅延トランザクション要求の開始ユーザから送信された開示指示を受信した場合、設定された開示遅延条件が満たされると判定し、遅延トランザクションデータを復号化処理する。
例示的に、準同型暗号化モジュール520は、具体的に、遅延トランザクション要求の実行中に、遅延トランザクション要求の開始ユーザによって提供された暗号鍵を用いて、決定された遅延開示対象のデータを準同型暗号化する。
例示的に、上記装置は、さらに、遅延トランザクションデータを復号化処理する前に、開始ユーザによって開始された開示トランザクション要求を取得し、開示トランザクション要求から復号鍵を取得するための開示トランザクション要求取得モジュールを備えてもよい。
例示的に、復号化モジュール530は、設定された開示遅延条件が満たされる場合、復号処理を行うように、開始ユーザによって提供された復号鍵を遅延トランザクションデータの照会ユーザに提供するための復号鍵提供ユニットを備えてもよい。
例示的に、復号鍵提供ユニットは、具体的に、開始ユーザによって提供された復号鍵を開示されるようにアップリンクに記憶し、又は、遅延トランザクションデータを照会する際に復号処理を行うために、開始ユーザによって提供された復号鍵を遅延トランザクション要求に対応してローカルに関連付けて記憶する。
例示的に、上記装置は、さらに、決定された遅延開示対象のデータを準同型暗号化した後、暗号鍵と暗号化された遅延データとの間の対応関係を確立し、双方向索引を作成するための索引作成モジュールを備えてもよい。
例示的に、準同型暗号化モジュール520は、具体的に、遅延トランザクション要求の実行中に、キー値ペアの形式で記憶される遅延開示対象の読み取りデータ及び書き込みデータを決定し、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化するとともに、準同型暗号化アルゴリズムを用いてキー値ペアの値ドメインを暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得することができる。
例示的に、ブロックチェーンノードがアプリケーションレイヤ、論理ストレージレイヤ及び物理ストレージレイヤを含む場合、準同型暗号化モジュール520は、遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータ及び書き込みデータを決定し、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化する時、具体的に、遅延トランザクション要求の実行中に、論理ストレージレイヤにより遅延開示対象の読み取りデータ及び書き込みデータを決定し、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化することができる。
例示的に、上記装置は、さらに、遅延トランザクション要求を取得した後、遅延トランザクション要求の指示に従って、全部又は一部のトランザクション要求のデータを遅延開示対象のデータとして決定するための遅延開示対象のデータの決定モジュールを備えてもよい。
例示的に、準同型暗号化モジュール520は、具体的に、ローカルノードが遅延トランザクション要求の事前実行ノードである場合、平文状態の読み取りデータに対して遅延トランザクション要求を実行し、平文状態の書き込みデータを決定し、読み取りデータ及び書き込みデータを準同型暗号化して、遅延開示対象のデータの暗号化された遅延データとして遅延トランザクションデータに追加することができる。
例示的に、復号化モジュール530は、さらに、設定された開示遅延条件が満たされる場合、遅延トランザクションデータに対する照会要求を受信すると、暗号化された遅延データを含む遅延トランザクションデータを復号化して、照会要求側にフィードバックすることができる。
本発明の実施例によれば、本発明はさらに電子機器及び読み取り可能な記憶媒体を提供する。
また、本発明の実施例はさらに、コンピュータプログラムを提供し、前記コンピュータプログラムは、コンピュータに本発明のいずれかの実施例に記載のブロックチェーンに基づくデータ処理方法を実行させる。
図6に示すように、本発明の実施例によるブロックチェーンに基づくデータ処理方法の電子機器のブロック図である。電子機器は、様々なデジタルコンピュータ、例えば、ラップトップパソコン、デスクトップパソコン、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレームコンピュータ及び他の適切なコンピュータを表すことを意図している。電子機器はさらに、様々な形態のモバイル装置、例えば、携帯情報端末、携帯電話、スマートフォン、ウェアラブルデバイス及び他の同様なコンピューティングデバイスを表すことができる。本明細書に示す部品、それらの接続と関係、及びそれらの機能は例示的なものに過ぎず、本明細書で説明された及び/又は求められた本発明の実現を限定することを意図していない。
図6に示すように、当該電子機器は、1つ又は複数のプロセッサ601と、メモリ602と、各部品を接続するためのインターフェースとを備え、インターフェースは高速インターフェースと低速インターフェースとを備える。各部品は、異なるバスを用いて互いに接続されており、共通のマザーボードに実装されるか、又は必要に応じて他の方式で実装されてもよい。プロセッサは、電子機器内で実行される命令を処理することができ、前記命令は、外部入力/出力装置(例えば、インターフェースに結合される表示装置)にGUI(Graphical User Interface、GUI)の図形情報を表示するようにメモリ内又はメモリ上に記憶される命令を含む。他の実施形態において、必要に応じて、複数のプロセッサ及び/又は複数のバスを、複数のメモリと組み合わせて使用してもよい。同様に、複数の電子機器を接続してもよく、各機械は必要とされる操作の一部を提供する。例えば、サーバアレイ、1グループのブレードサーバ、又はマルチプロセッサシステムとする。図6では、1つのプロセッサ601を例として取り上げる。
メモリ602は、本発明によって提供される非一時的なコンピュータ読み取り可能な記憶媒体である。前記メモリには、少なくとも1つのプロセッサによって実行可能な命令が記憶され、それによって前記少なくとも1つのプロセッサが、本発明によって提供されるブロックチェーンに基づくデータ処理方法を実行する。本発明の非一時的なコンピュータ読み取り可能な記憶媒体には、コンピュータに本発明によって提供されるブロックチェーンに基づくデータ処理方法を実行させるためのコンピュータ命令が記憶されている。
メモリ602は、非一時的なコンピュータ読み取り可能な記憶媒体として、非一時的なソフトウェアプログラム、非一時的なコンピュータによって実行可能なプログラム及びモジュール、例えば本発明の実施例におけるブロックチェーンに基づくデータ処理方法に対応するプログラム命令/モジュールを記憶することができ、例えば、図5に示すトランザクション要求取得モジュール510、準同型暗号化モジュール520及び復号化モジュール530を記憶することができる。プロセッサ601は、メモリ602に記憶されている非一時的なソフトウェアプログラム、命令及びモジュールを実行することにより、サーバの様々な機能のアプリケーション及びデータの処理を実行し、即ち上記方法の実施例におけるブロックチェーンに基づくデータ処理方法を実現する。
メモリ602は、ストレージプログラムエリアと、ストレージデータエリアとを含んでも良く、ストレージプログラムエリアは、オペレーティングシステムと、少なくとも1つの機能に必要なアプリケーションプログラムを記憶することができ、ストレージデータエリアは、ブロックチェーンに基づくデータ処理方法を実現するための電子機器の使用によって作成されたデータ等を記憶することができる。また、メモリ602は、高速ランダムアクセスメモリだけではなく、非一時的なメモリ、例えば、少なくとも1つの磁気ディスクストレージデバイス、フラッシュメモリデバイス又は他の非一時的なソリッドステートストレージデバイスを備えてもよい。一部の実施例では、メモリ602は選択的に、プロセッサ601に対して遠隔的に設けられたメモリを備え、これらの遠隔メモリは、ネットワークを介して、ブロックチェーンに基づくデータ処理方法を実現するための電子機器に接続することができる。上記ネットワークの実例は、インターネット、イントラネット、ブロックチェーンネットワーク、ローカルエリアネットワーク、モバイル通信ネットワーク及びそれらの組み合わせを含むが、それらに限定されない。
ブロックチェーンに基づくデータ処理方法を実現するための電子機器はさらに、入力装置603と出力装置604を備えてもよい。プロセッサ601、メモリ602、入力装置603及び出力装置604は、バス又は他の方式で接続することができ、図6では、バスによる接続を例として取り上げる。
入力装置603は、入力された数字又は文字情報を受信できるだけではなく、ブロックチェーンに基づくデータ処理方法を実現するための電子機器のユーザの設定及び機能制御に関連するキー信号入力を生成することもでき、例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、ポインティングスティック、1つ又は複数のマウスボタン、トラックボール、ジョイスティック等の入力装置である。出力装置604は、表示装置、補助照明装置及び触覚フィードバック装置等を含んでもよく、補助照明装置は、発光ダイオード(Light Emitting Diode、LED)等であり、触覚フィードバック装置は振動モータ等である。当該表示装置は、液晶ディスプレイ(Liquid Crystal Display、LCD)、LEDディスプレイ及びプラズマディスプレイを含むが、それらに限定されない。一部の実施形態では、表示装置はタッチスクリーンであってもよい。
ここで説明されたシステムと技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせにおいて実現することができる。これらの様々な実施形態は以下を含んでもよい。1つ又は複数のコンピュータプログラムにおいて実施され、当該1つ又は複数のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムにおいて実行及び/又は解釈することができ、該プログラマブルプロセッサは、専用又は汎用のプログラマブルプロセッサであってもよく、ストレージシステム、少なくとも1つの入力装置及び少なくとも1つの出力装置からデータと命令を受信し、データと命令を当該ストレージシステム、当該少なくとも1つの入力装置及び当該少なくとも1つの出力装置に転送することができる。
これらのコンピューティングプログラムは、プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ばれ、プログラマブルプロセッサの機械命令を含み、且つ高レベルのプロセス及び/又はオブジェクト指向プログラミング言語、及び/又はアセンブリ言語/機械語を用いてこれらのコンピューティングプログラム実行することができる。本明細書で使用される用語の「機械読み取り可能な媒体」と「コンピュータ読み取り可能な媒体」は、機械命令及び/又はデータをプログラマブルプロセッサに提供するためのコンピュータプログラム製品、機器、及び/又は装置、例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(Programmable Logic Device、PLD)を指し、機械読み取り可能な信号としての機械命令を受信する機械読み取り可能な媒体を含む。用語の「機械読み取り可能な信号」は、機械命令及び/又はデータをプログラマブルプロセッサに提供するためのあらゆる信号を指す。
ユーザとのインタラクションを提供するために、ここで説明されたシステムと技術をコンピュータにおいて実施することができ、当該コンピュータは、ユーザに情報を表示するための表示装置、例えば、陰極線管(Cathode Ray Tube、CRT)又はLCDモニタと、キーボードとポインティングデバイス、例えば、マウス又はトラックボールとを有し、ユーザは当該キーボードと当該ポインティングデバイスを介して入力をコンピュータに提供することができる。他の種類のデバイスはさらに、ユーザとのインタラクションを提供することもでき、例えば、ユーザに提供されたフィードバックは、任意の形式のセンシングフィードバック、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであってもよく、ユーザからの入力を、音響入力、音声入力又は触覚入力を含む任意の形式で受信することもできる。
ここで説明されたシステムと技術を、バックグラウンドコンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェアコンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンドコンポーネントを含むコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータであり、ユーザは当該グラフィカルユーザインタフェース又は当該ウェブブラウザを介して、ここで説明されたシステムと技術の実施形態とインタラクションすることができる)、又はこれらのバックグラウンドコンポーネント、ミドルウェアコンポーネント又はフロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムにおいて実行することができる。任意の形式又は媒体のデジタルデータ通信、例えば通信ネットワークを介して、システムのコンポーネントを互いに接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク(Local Area Network、LAN)、ワイドエリアネットワーク(Wide Area Network、WAN)、インターネット及びブロックチェーンネットワークが含まれる。
コンピュータシステムはクライアント及びサーバ備えてもよい。一般的には、クライアントとサーバとは互いに離れており、通常は通信ネットワークを介してインタラクションを行う。対応するコンピュータで実行されると同時に互いにクライアント−サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。
本発明の実施例の技術案によれば、ブロックチェーンノードは、取得された遅延トランザクション要求の実行中に、準同型暗号化を導入することにより、決定された遅延開示対象のデータを処理し、データ検証に影響を与えることなく、得られた暗号化された遅延データの安全性を確保することができ、その後、暗号化された遅延データを含む遅延トランザクションデータをアップリンクに記憶し、設定された開示遅延条件が満たされると判定された場合、ブロックチェーンに記憶されている遅延トランザクションデータを復号化し、ブロックチェーン内のアップリンクデータに対する遅延開示を実現し、アップリンクデータの遅延開示に新たな考え方を提供する。
以上に示される様々な形式のプロセスを用いて、ステップを並べ替え、追加又は削除することができることを理解されたい。例えば、本発明に記載の各ステップは、並列に実行してもよいし、順次に実行してもよいし、異なる順序で実行してもよいが、本発明で開示されている技術案の所望の結果を実現することができれば、本明細書では限定されない。
上記具体的な実施形態は、本発明の保護範囲を制限するものではない。当業者であれば、設計の要件及び他の要因に応じて、様々な修正、組み合わせ、一部の組み合わせ及び置き換えを行うことができる。本発明の精神及び原則を逸脱しない限り、行われるすべての修正、同等の置換及び改善などは、いずれも本発明の保護範囲内に含まれるべきである。

Claims (19)

  1. ブロックチェーンノードによって実行されるブロックチェーンに基づくデータ処理方法であって、
    遅延トランザクション要求を取得し、前記遅延トランザクション要求の実行をトリガするステップと、
    前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶するステップと、
    設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップと、
    を含むブロックチェーンに基づくデータ処理方法。
  2. 前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得するステップが、
    前記遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータを決定するステップと、
    前記読み取りデータを準同型暗号化するステップと、
    暗号化された読み取りデータに基づいて前記遅延トランザクション要求を実行して、暗号化された書き込みデータを生成するステップと、
    暗号化された遅延データを、生成された遅延トランザクションデータに追加するステップであって、前記暗号化された遅延データは、暗号化された書き込みデータを含むか、又は暗号化された読み取りデータ及び書き込みデータを含むステップと、
    を含む請求項1に記載のブロックチェーンに基づくデータ処理方法。
  3. 前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化する前に、
    前記遅延トランザクション要求の実行中に、遅延開示対象のデータを決定するステップと、
    前記遅延開示対象のデータの実行操作タイプに基づいて、対応する暗号化アルゴリズムを決定するステップと、
    を含む請求項1又は2に記載のブロックチェーンに基づくデータ処理方法。
  4. 前記遅延開示対象のデータの実行操作タイプに基づいて、対応する暗号化アルゴリズムを決定するステップが、
    前記遅延開示対象のデータが、四則演算を実行するデジタルデータである場合、完全準同型暗号化アルゴリズムを選択するステップと、
    前記遅延開示対象のデータが、加算を実行するデジタルデータである場合、加算準同型暗号化アルゴリズムを選択するステップと、
    前記遅延開示対象のデータが、乗算を実行するデジタルデータである場合、乗算準同型暗号化アルゴリズムを選択するステップと、
    前記遅延開示対象のデータが、演算を必要としないテキストデータである場合、非対称暗号化アルゴリズムを選択するステップと、
    を含む請求項3に記載のブロックチェーンに基づくデータ処理方法。
  5. 設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップが、
    前記遅延トランザクション要求で指定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップ、又は、
    前記遅延トランザクション要求の開始ユーザから送信された開示指示を受信した場合、設定された開示遅延条件が満たされると判定し、前記遅延トランザクションデータを復号化処理するステップ、
    を含む請求項1又は2に記載のブロックチェーンに基づくデータ処理方法。
  6. 前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化するステップが、
    前記遅延トランザクション要求の実行中に、前記遅延トランザクション要求の開始ユーザによって提供された暗号鍵を用いて、決定された遅延開示対象のデータを準同型暗号化するステップを含む請求項1又は2に記載のブロックチェーンに基づくデータ処理方法。
  7. 前記遅延トランザクションデータを復号化処理する前に、
    前記開始ユーザによって開始された開示トランザクション要求を取得し、前記開示トランザクション要求から復号鍵を取得するステップを含む請求項6に記載のブロックチェーンに基づくデータ処理方法。
  8. 設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップが、
    設定された開示遅延条件が満たされる場合、復号処理を行うように、前記開始ユーザによって提供された復号鍵を前記遅延トランザクションデータの照会ユーザに提供するステップを含む請求項6に記載のブロックチェーンに基づくデータ処理方法。
  9. 前記開始ユーザによって提供された復号鍵を前記遅延トランザクションデータの照会ユーザに提供するステップが、
    前記開始ユーザによって提供された復号鍵を開示されるようにアップリンクに記憶するステップ、又は、
    前記遅延トランザクションデータを照会する際に復号化処理するために、前記開始ユーザによって提供された復号鍵を前記遅延トランザクション要求に対応してローカルに関連付けて記憶するステップ、
    を含む請求項8に記載のブロックチェーンに基づくデータ処理方法。
  10. 決定された遅延開示対象のデータを準同型暗号化した後に、
    前記暗号鍵と前記暗号化された遅延データとの間の対応関係を確立し、双方向索引を作成するステップを含む請求項6に記載のブロックチェーンに基づくデータ処理方法。
  11. 前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得するステップが、
    前記遅延トランザクション要求の実行中に、キー値ペアの形式で記憶される遅延開示対象の読み取りデータ及び書き込みデータを決定するステップと、
    非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化するとともに、準同型暗号化アルゴリズムを用いてキー値ペアの値ドメインを暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得するステップと、
    を含む請求項1又は2に記載のブロックチェーンに基づくデータ処理方法。
  12. 前記ブロックチェーンノードが、アプリケーションレイヤ、論理ストレージレイヤ及び物理ストレージレイヤを含み、
    前記遅延トランザクション要求の実行中に、遅延開示対象の読み取りデータ及び書き込みデータを決定し、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化するステップが、
    前記遅延トランザクション要求の実行中に、前記論理ストレージレイヤにより遅延開示対象の読み取りデータ及び書き込みデータを決定し、非準同型暗号化アルゴリズムを用いてキー値ペアのキードメインを暗号化するステップを含む請求項11に記載のブロックチェーンに基づくデータ処理方法。
  13. 遅延トランザクション要求を取得した後、
    前記遅延トランザクション要求の指示に従って、全部又は一部のトランザクション要求のデータを遅延開示対象のデータとして決定するステップを含む請求項1又は2に記載のブロックチェーンに基づくデータ処理方法。
  14. 前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得するステップが、
    ローカルノードが前記遅延トランザクション要求の事前実行ノードである場合、平文状態の読み取りデータに対して前記遅延トランザクション要求を実行し、平文状態の書き込みデータを決定するステップと、
    前記読み取りデータ及び書き込みデータを準同型暗号化して、前記遅延開示対象のデータの暗号化された遅延データとして遅延トランザクションデータに追加するステップと、
    を含む請求項1又は2に記載のブロックチェーンに基づくデータ処理方法。
  15. 設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するステップが、
    設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータに対する照会要求を受信すると、前記暗号化された遅延データを含む遅延トランザクションデータを復号化して照会要求側にフィードバックするステップを含む請求項1又は2に記載のブロックチェーンに基づくデータ処理方法。
  16. ブロックチェーンノードに配置されるブロックチェーンに基づくデータ処理装置であって、
    遅延トランザクション要求を取得し、前記遅延トランザクション要求の実行をトリガするための遅延トランザクション要求取得モジュールと、
    前記遅延トランザクション要求の実行中に、決定された遅延開示対象のデータを準同型暗号化して、暗号化された遅延データを含む遅延トランザクションデータを取得し、アップリンクに記憶するための準同型暗号化モジュールと、
    設定された開示遅延条件が満たされる場合、前記遅延トランザクションデータを復号化処理するための復号化モジュールと、
    を備えるブロックチェーンに基づくデータ処理装置。
  17. 少なくとも1つのプロセッサと、
    該少なくとも1つのプロセッサと通信可能に接続されるメモリと、
    を備え、
    前記メモリには、前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令が前記少なくとも1つのプロセッサによって実行されることにより、前記少なくとも1つのプロセッサが請求項1から15のいずれか一項に記載のブロックチェーンに基づくデータ処理方法を実行する電子機器。
  18. コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
    前記コンピュータ命令が、コンピュータに請求項1から15のいずれか一項に記載のブロックチェーンに基づくデータ処理方法を実行させる非一時的なコンピュータ読み取り可能な記憶媒体。
  19. コンピュータに請求項1から15のいずれか一項に記載のブロックチェーンに基づくデータ処理方法を実行させるコンピュータプログラム。
JP2020205937A 2019-12-31 2020-12-11 ブロックチェーンに基づくデータ処理方法、装置、機器及び媒体 Active JP7058710B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911420985.2 2019-12-31
CN201911420985.2A CN111131317B (zh) 2019-12-31 2019-12-31 一种基于区块链的数据处理方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
JP2021111370A true JP2021111370A (ja) 2021-08-02
JP7058710B2 JP7058710B2 (ja) 2022-04-22

Family

ID=70507513

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020205937A Active JP7058710B2 (ja) 2019-12-31 2020-12-11 ブロックチェーンに基づくデータ処理方法、装置、機器及び媒体

Country Status (3)

Country Link
US (1) US11418320B2 (ja)
JP (1) JP7058710B2 (ja)
CN (1) CN111131317B (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111639080B (zh) * 2020-06-01 2021-07-27 腾讯科技(深圳)有限公司 一种数据处理方法、装置、节点设备及存储介质
US11750363B2 (en) * 2020-11-04 2023-09-05 Bitdefender IPR Management Ltd. Privacy-preserving domain name service (DNS)
CN112953960B (zh) * 2021-03-10 2023-02-03 东软集团股份有限公司 一种区块链访问的身份认证方法、装置及设备
CN113591162B (zh) * 2021-09-29 2022-02-15 金蝶软件(中国)有限公司 区块链存证方法、装置和计算机设备
US20230136446A1 (en) * 2021-11-01 2023-05-04 Goldman Sachs & Co. LLC Fast robust oracles via decentralized autonomous organizations
US20230421351A1 (en) * 2022-06-27 2023-12-28 Nec Corporation Of America Homomorphic encryption using smart contracts
CN115271736B (zh) * 2022-07-11 2023-06-16 中电金信软件有限公司 验证事务一致性的方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108199842A (zh) * 2018-02-13 2018-06-22 克洛斯比尔有限公司 延迟公布信息的方法和系统
US20190058580A1 (en) * 2017-08-15 2019-02-21 Acronis International Gmbh System and method for publication of private data using a blockchain network
US20190296907A1 (en) * 2018-03-23 2019-09-26 Ca, Inc. Blockchain for time-based release of information
US20190379646A1 (en) * 2018-06-11 2019-12-12 Fujitsu Limited Delayed-access encryption for blockchain field
JP2020092414A (ja) * 2018-11-08 2020-06-11 アクセンチュア グローバル ソリューションズ リミテッド ブロックチェーンのための暗号化データ共有管理

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9313022B2 (en) * 2013-12-27 2016-04-12 Xerox Corporation Homomorphic cryptography modeling in support of privacy policies
US10075288B1 (en) * 2014-02-28 2018-09-11 The Governing Council Of The University Of Toronto Systems, devices, and processes for homomorphic encryption
US9973334B2 (en) * 2015-09-03 2018-05-15 Cisco Technology, Inc. Homomorphically-created symmetric key
CN106549749B (zh) * 2016-12-06 2019-12-24 杭州趣链科技有限公司 一种基于加法同态加密的区块链隐私保护方法
KR102024991B1 (ko) * 2017-09-26 2019-11-04 한양대학교 산학협력단 이동체 기기 및 이의 데이터 전송 방법
US10715317B2 (en) * 2017-12-12 2020-07-14 International Business Machines Corporation Protection of confidentiality, privacy and financial fairness in a blockchain based decentralized identity management system
US10990691B2 (en) * 2018-05-11 2021-04-27 Arris Enterprises Llc Secure deferred file decryption
GB201811773D0 (en) * 2018-07-19 2018-09-05 Nchain Holdings Ltd Computer-implemented system and method
CN109598506B (zh) * 2018-11-02 2023-06-09 克洛斯比尔有限公司 区块链精确延迟加密的方法、系统、计算设备及计算机可读存储介质
CN110034917A (zh) * 2019-04-11 2019-07-19 鸿秦(北京)科技有限公司 一种基于同态加密算法的联盟链数据处理方法及装置
CN110147994B (zh) * 2019-04-13 2020-12-22 山东公链信息科技有限公司 一种基于同态加密的区块链的即时执行方法
CN110348231B (zh) * 2019-06-18 2020-08-14 阿里巴巴集团控股有限公司 实现隐私保护的数据同态加解密方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190058580A1 (en) * 2017-08-15 2019-02-21 Acronis International Gmbh System and method for publication of private data using a blockchain network
CN108199842A (zh) * 2018-02-13 2018-06-22 克洛斯比尔有限公司 延迟公布信息的方法和系统
US20190296907A1 (en) * 2018-03-23 2019-09-26 Ca, Inc. Blockchain for time-based release of information
US20190379646A1 (en) * 2018-06-11 2019-12-12 Fujitsu Limited Delayed-access encryption for blockchain field
JP2020092414A (ja) * 2018-11-08 2020-06-11 アクセンチュア グローバル ソリューションズ リミテッド ブロックチェーンのための暗号化データ共有管理

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JIANTING NING他: "Keeping Time-Release Secrets through Smart Contracts", CRYPTOLOGY EPRINT ARCHIVE, JPN6021050564, 29 November 2018 (2018-11-29), pages 1 - 27, XP061027053, ISSN: 0004667392 *

Also Published As

Publication number Publication date
CN111131317A (zh) 2020-05-08
US20210203475A1 (en) 2021-07-01
JP7058710B2 (ja) 2022-04-22
CN111131317B (zh) 2022-04-26
US11418320B2 (en) 2022-08-16

Similar Documents

Publication Publication Date Title
JP7058710B2 (ja) ブロックチェーンに基づくデータ処理方法、装置、機器及び媒体
US11665000B2 (en) Method and apparatus for processing privacy data of block chain, device, and storage medium
US11909886B2 (en) Method, apparatus for blockchain-based multi-party computation, device and medium
JP7096920B2 (ja) ブロックチェーンネットワークに基づくデータ共有方法、装置、機器及び媒体
US10284372B2 (en) Method and system for secure management of computer applications
CN111737366B (zh) 区块链的隐私数据处理方法、装置、设备以及存储介质
JP2021189431A5 (ja)
JP7069286B2 (ja) プライバシーデータの処理方法、プライバシーデータの処理装置、機器及び媒体
CN110245942B (zh) 结合用户类型和判断条件的收据存储方法和节点
US8769302B2 (en) Encrypting data and characterization data that describes valid contents of a column
CN112989400B (zh) 一种隐私事务处理方法、装置、电子设备和介质
US9641328B1 (en) Generation of public-private key pairs
CN110909372A (zh) 数据处理方法、装置、设备和介质
CN113630412B (zh) 资源下载方法、资源下载装置、电子设备以及存储介质
CN111400743B (zh) 基于区块链网络的事务处理方法、装置、电子设备和介质
CN111459672B (zh) 基于区块链网络的事务处理方法、装置、设备及介质
US20230085367A1 (en) Authorization processing method, electronic device, and non-transitory computer-readable storage medium
CN115858914A (zh) 一种匿踪查询方法、装置、系统、终端设备及存储介质
JP2022141962A (ja) データの照会と書き込み方法、装置、電子機器、読み取り可能な記憶媒体およびコンピュータプログラム
TW201939415A (zh) 業務校驗方法和裝置
US20210336795A1 (en) Hassh profiling mechanism
CN112565156A (zh) 信息注册方法、装置和系统
CN113986940A (zh) 基于区块链公链的合约处理方法和装置
CN116594894A (zh) 一种接口测试方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201211

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220317

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220405

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220412

R150 Certificate of patent or registration of utility model

Ref document number: 7058710

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150