JP2020508593A - コンセンサス検証方法およびデバイス - Google Patents

コンセンサス検証方法およびデバイス Download PDF

Info

Publication number
JP2020508593A
JP2020508593A JP2019535847A JP2019535847A JP2020508593A JP 2020508593 A JP2020508593 A JP 2020508593A JP 2019535847 A JP2019535847 A JP 2019535847A JP 2019535847 A JP2019535847 A JP 2019535847A JP 2020508593 A JP2020508593 A JP 2020508593A
Authority
JP
Japan
Prior art keywords
transaction
node
data
determining
signature
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
JP2019535847A
Other languages
English (en)
Other versions
JP6789397B2 (ja
Inventor
チャン・タン
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2020508593A publication Critical patent/JP2020508593A/ja
Application granted granted Critical
Publication of JP6789397B2 publication Critical patent/JP6789397B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/3247Cryptographic 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 involving digital signatures
    • 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/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography

Abstract

コンセンサス検証方法およびデバイスが開示される。方法は、取引要求が正当であるか否かを監督ノードが検証すること、取引要求が正当である場合、取引データ内の指定データに従って要約を生成すること、ならびに取引データに含まれる要約および非指定データをコンセンサス検証のための各コンセンサスノードに送ること、コンセンサス検証が各コンセンサスノードによって認められた後、要約および非指定データをブロックチェーンに格納することを含む。したがって、コンセンサスノードは指定データを受け取らず、したがって指定データはブロックチェーンに格納されず、指定データは漏れない。さらに要約は、ブロックチェーンに格納されない指定データが改ざんされているか否かを検証するために使用されることが可能である。

Description

本出願はブロックチェーン技術の分野に関し、詳細には、コンセンサス検証方法およびデバイスに関する。
ブロックチェーンネットワークは分散型台帳ネットワークとも呼ばれ、非集中化、開放性、および透明性によって特徴づけられる。各ブロックチェーンノードは、ブロックチェーンと同期する。ブロックチェーンネットワークは、ブロックチェーンノードを含む。各ブロックチェーンノードは、取引要求を始めること、および取引要求に対するコンセンサス検証に参加することの両方を行うことができる。
既存のコンセンサス検証方法は、ブロックチェーンネットワーク内の各コンセンサスノードに、取引に参加するブロックチェーンノードが取引に対する取引要求をブロードキャストするというようなものである。コンセンサスノードは、コンセンサス検証に責任があるブロックチェーンノードであり、取引要求は、取引の取引データを含む。各コンセンサスノードは、各コンセンサスノードによって行われる、取引要求に対するコンセンサス検証が成功した後、取引データをブロックチェーンに格納する。
しかし、各ブロックチェーンノードは、ブロックチェーンに格納された各取引の取引データを得るためにブロックチェーンと同期することができる。必然的に、取引に参加するブロックチェーンノードの取引データに含まれるプライバシーは、開示されやすい。
本出願の実装形態はコンセンサス検証方法およびデバイスを提供し、既存のコンセンサス検証方法を使用するときに、取引に参加するブロックチェーンノードのプライバシーが開示されやすいという問題を軽減させる。
先の技術的問題を軽減させるために、本出願の実装形態は以下のように実装される。
本出願の1つの実装形態は、コンセンサス検証方法を提供し、ここで方法は、規制ノードにより、取引要求を入手するステップであって、取引要求が、取引データ、および少なくとも1つの取引ノードの署名を含む、ステップと、取引データ、および各取引ノードの署名に基づいて、取引要求が有効であるかどうかを判断するステップと、取引要求が有効である場合、取引データに含まれる指定データに基づいてダイジェストを生成するステップと、各コンセンサスノードがコンセンサス検証を行うように、取引データに含まれるダイジェストおよび非指定データを各コンセンサスノードに送るステップと、を含む。
本出願の1つの実装形態は、コンセンサス検証デバイスを提供し、ここでデバイスは、取引要求を入手するように構成された第1の取得モジュールであって、取引要求が、取引データ、および少なくとも1つの取引ノードの署名を含む、第1の取得モジュールと、取引データ、および各取引ノードの署名に基づいて、取引要求が有効であるかどうかを判断し、取引要求が有効である場合、取引データに含まれる指定データに基づいてダイジェストを生成し、各コンセンサスノードがコンセンサス検証を行うように、取引データに含まれるダイジェストおよび非指定データを各コンセンサスノードに送るように構成された判断および処理モジュールと、を含む。
本出願の実装形態において、規制ノードには、取引要求が有効であるかどうかを検証する責任があるということが、本出願の実装形態において提供される技術的解決策からわかる。取引要求が有効である場合、規制ノードは、取引データ内の指定データに基づいてダイジェストを生成し、取引データに含まれるダイジェストおよび非指定データをコンセンサス検証のための各コンセンサスノードに送る。各コンセンサスノードは、コンセンサス検証が成功した後、ダイジェストおよび非指定データをブロックチェーンに格納する。したがって、コンセンサスノードは指定データを受け取らず、したがって指定データをブロックチェーンに格納しない。結果として、指定データは開示されない。さらにダイジェストは、ブロックチェーンに格納されない指定データが、改ざんされているかどうかを検証するために使用されることが可能である。
本出願の実装形態における技術的解決策、または既存技術における技術的解決策をさらに明確に説明するために、以下は、実装形態または既存技術を説明するために必要な添付の図面を簡単に説明する。明らかに、以下の説明における添付の図面は、本出願のいくつかの実装形態を示すにすぎないが、当業者は、それでもなお、創造的な努力をすることなく、これらの添付の図面から他の図面を導き出すことができる。
本出願の1つの実装形態による、コンセンサス検証方法を示す流れ図である。 本出願の1つの実装形態による、ブロックチェーンネットワークを示す概略図である。 本出願の1つの実装形態による、ブロックチェーンネットワークを示す概略図である。 本出願の1つの実装形態による、コンセンサス検証デバイスを示す概略図である。
本出願の実装形態は、コンセンサス検証方法およびデバイスを提供する。
本出願における技術的解決策を当業者にさらに理解させるために、以下は、本出願の実装形態における添付の図面を参照しながら、本出願の実装形態における技術的解決策を明確かつ包括的に説明する。明らかに、説明される実装形態は、本出願の実装形態のすべてではなく、いくつかにすぎない。創造的な努力なく、本出願の実装形態に基づいて当業者によって得られた他のすべての実装形態は、本出願の保護範囲に含まれる。
本出願の実装形態において提供される技術的解決策が、添付の図面を参照しながら下記で詳細に説明される。
図1は、本出願の1つの実装形態による、コンセンサス検証方法を示す流れ図である。方法は以下のステップを含む。
S101。規制ノードが取引要求を入手する。
方法は規制ノードによって行われる。規制ノードは、取引を規制する責任があるブロックチェーンノードである。規制ノードは公共の信用を有し、規制ノードによって検証されたアイテムは、ネットワーク全体の中にあるブロックチェーンノードによって承認される。
ブロックチェーンネットワークにおいて、取引に参加するブロックチェーンノードは取引ノードであり、コンセンサスに参加するブロックチェーンノードはコンセンサスノードである。ブロックチェーンノードは、取引ノードとコンセンサスノードの両方であることが可能であり、取引に参加するだけでなく、取引に対するコンセンサス検証にも参加することが可能であるということを強調する価値がある。
図2は、本出願の1つの実装形態による、ブロックチェーンネットワークを示す概略図である。図2に示されるように、黒いブロックチェーンノードは規制ノードである。白いブロックチェーンノードはコンセンサスノードである。陰がつけられたノードは取引ノードであり、コンセンサス検証に参加することもできる。
本出願の本実装形態において、取引要求は、取引データ、および少なくとも1つの取引ノードの署名を含む。取引ノードは、取引において資産を支払うブロックチェーンノードであることが可能である。取引において資産を受け入れるブロックチェーンノードは、本出願において説明される取引ノードであることも可能である。説明の容易性のために、取引ノードが、取引において資産を支払うブロックチェーンノードであるという例を使用してすることによって下記で説明が行われる。さらに本出願は、取引ノードが同時にコンセンサスノードでもあるかどうかに対して制限を課すものではない。
取引データは、取引ノードの識別情報、取引において必要な資産の詳細内容、取引において必要な資産の資産番号、および取引ノードのアカウントアドレスなどの、取引の詳細データである。
本出願の本実装形態において、取引ノードの署名は、取引データに対する取引ノードによって生成され、取引ノードが取引データを承認する証拠および記録として使用される。取引ノードが参加する取引の取引データを取引ノードが承認すると、取引の証拠および記録を後に残しておくために、取引ノードは、まず、ダイジェストアルゴリズムに基づいて取引データのダイジェストを構築し、署名アルゴリズムおよび秘密鍵を通じて取引データのダイジェストをさらに処理し、取引ノードの署名を生成することができる。
複数のダイジェストアルゴリズムが存在することができるが、ダイジェストアルゴリズムの共通の特徴は、プレーンテキストを計算することによって得られたダイジェストから、以前のプレーンテキストが逆に導き出されることが不可能であるというものである、ということに留意する価値がある。プレーンテキストに対する何らかの修正がある場合、修正後のプレーンテキストを計算することによって得られたダイジェストは、異なる可能性もある。取引データのダイジェストは、各取引を識別するための、取引データの一意の識別子として使用されることが可能であるということがわかる。したがって、取引ノードが取引データに署名する場合、このことは、取引ノードが取引データを承認することを示すことができ、したがって取引データを後で拒否することを取引ノードが妨げられることが可能である。
本出願の本実装形態において、取引要求において、取引ノードの署名は、取引データ内の、取引ノードによって使用される資産の資産番号に対応する。取引ノードは、署名を使用して、取引ノードによって使用される資産の資産番号を宣言する。取引ノードは、取引ノードの署名、および取引ノードによって使用される資産番号が、例えば「資産番号001(署名A)」といった特定のデータ構造を形成するのを可能にするか、別の方法を使用して、署名と、取引ノードによって使用される資産番号との間のマッピング関係を確立することができる。間違いなく、取引ノードの署名に対応する資産番号は、必ずしも、取引ノードによって実際に所有される資産番号ではない。言い換えると、取引ノードは、別のノードによって所有される資産番号を、不当かつ詐欺的に使用することができる。リスクを回避する方法は、取引要求の有効性を検証する以下の説明の一部である。
本出願の本実装形態において、1つの取引要求は、複数の取引ノードの署名を含むことができる。すなわち、任意の取引ノードは、取引ノードの署名を収集すること、取引要求を生成すること、および取引要求を規制ノードに送ることができる。署名を収集するための方法は、取引データが取引ノード間で順序正しく送信されること、各取引ノードが取引ノードの署名を取引データに添付すること、および最後に、取引データが送信される最後の取引ノードが取引要求を生成すること、というようなものであることが可能である。一方、取引ノードは、互いの取引ノードによって送られた署名を受け取り、その後、取引要求を生成することができる。説明の容易性のために、取引要求が複数の取引ノードの署名を含む例を使用することによって下記で説明が行われる。
S102。取引データ、および各取引ノードの署名に基づいて、取引要求が有効であるかどうかを判断し、取引要求が有効である場合、ステップS103を行うか、取引要求が無効である場合、ステップS104を行う。
本出願の本実装形態において、取引要求の有効性を検証するための複数の方法が存在する。例えば、ケース1において、規制ノードは、規制ノードによって格納される各取引ノードの信用記録に基づいて、署名する各取引ノードの信用力を採点することができ、各取引ノードの信用力の点数が所定の点数より低い場合、取引要求が無効であると判断するか、各取引ノードの信用力の点数が所定の点数以上である場合、取引要求が有効であると判断する。別の例として、ケース2において、規制ノードは一方で、取引データ、各取引ノードの署名、および各取引ノードの公開鍵を使用して、取引ノードが、取引データを改ざんしているか、別の人物の資産を詐欺的に使用しているかを検証することができる。間違いなく、取引要求の有効性を検証する他のケースが存在することが可能である。詳細は、簡略化のために、ここでは省略される。
ケース2において、規制ノードは、各取引ノードの公開鍵を予め保持することができ、または取引要求は、各取引ノードの公開鍵を含むことができる。各取引ノードの公開鍵は、取引ノードの署名を復号して、取引データのダイジェストを得るために使用されることが可能であり、このことにより、署名者が取引データを改ざんしているかどうかを検証する。取引ノードによって提供された公開鍵を使用することによって取引ノードの署名を復号することによって規制ノードによって得られた復号結果が取引データのダイジェストと矛盾する場合、このことは、別のブロックチェーンノードの秘密鍵を詐欺的に使用することによって取引ノードが署名を生成しているということ、または取引ノードが取引データを改ざんしているということ、およびしたがって取引要求が無効であるということを示す。取引要求の有効性は、取引ノードが取引データを改ざんしていない場合、後でさらに検証されることが可能である。
本出願の本実装形態において、その後の有効性検証は、取引ノードが別の人物の資産を詐欺的に使用しているかどうかを検証することを含むことができる。一般的なブロックチェーンネットワークにおいて、各ブロックチェーンノードによって所有される資産の資産番号は、ブロックチェーンノードの公開鍵と関連付けられ、外部に開示された識別情報の特徴としての役割を果たす、ブロックチェーンノードの公開鍵は、ブロックチェーンノードの識別情報を一意に識別することができる。言い換えると、ブロックチェーンノードの公開鍵と関連付けられた資産番号は、ブロックチェーンノードによって実際に所有される資産番号である。
したがって、本出願の本実装形態において、規制ノードは、各取引ノードの公開鍵に基づいて各取引ノードによって実際に所有される資産の資産番号を決定し、その後、取引データ内の取引ノードの署名に対応する資産番号(取引ノードによって使用される資産番号)を、取引ノードによって実際に所有される資産番号と比較して、別のブロックチェーンノードによって所有される資産番号を取引ノードが不当かつ詐欺的に使用しているかどうかを判断する。別のブロックチェーンノードによって所有される資産番号を少なくとも1つの取引ノードが不当かつ詐欺的に使用している場合、取引要求は無効である。各取引ノードによって使用される資産番号が、取引ノードによって所有される資産番号である場合、取引要求は有効である。
結論として、規制ノードが取引要求の有効性を検証するケース2において、進行式に(in a progressive way)検証が行われ、取引要求が有効であると判断するために、以下の2つの態様が連続的に確認される必要があるということがわかる。1.取引データが改ざんされていない。2.別のブロックチェーンノードによって所有される資産番号を取引ノードが詐欺的に使用していない。
S103。取引データ内のプライバシーデータに基づいてプライバシーダイジェストを生成し、各コンセンサスノードがコンセンサス検証を行うように、取引データ内のプライバシーダイジェストおよび非プライバシーデータを各コンセンサスノードに送る。
本出願の本実装形態において、指定データはプライバシーデータであることが可能であり、非指定データは非プライバシーデータであることが可能である。プライバシーデータは、取引ノードのプライバシーを含み、取引ノードによって指定され、規制ノードに通知されることが可能であり、また規制ノードによって指定されることが可能である。例えば、プライバシーデータは、取引ノードのプライバシーとみなされる取引ノードの識別情報、資産の詳細内容、およびアカウントアドレス等を含むことができる。
上述のように、プレーンテキストは、プレーンテキストのダイジェストから逆に導き出されることが不可能である。したがって、プライバシーデータに対するダイジェストが生成された後、ダイジェストは、信頼できるブロックチェーンに格納されることが可能であり、プライバシーデータは、プライバシーデータの信頼できる証拠および記録が残されることが可能なように、またプライバシーデータが保護されることが可能なように、隠されることが可能である。
ダイジェストおよび非プライバシーデータを受け取った後、各コンセンサスノードは、例えば非プライバシーデータに基づいてコンセンサス検証を行うことができ、非プライバシーデータ内の資産番号に基づいて、重複支出があるかどうかを検証することができる。コンセンサス検証が成功すると、プライバシーダイジェストおよび非プライバシーデータは、ブロックチェーンに格納される。取引要求の有効性は、規制ノードによって予め検証され、保証される。
したがって、取引に対するコンセンサス検証は完了する。ブロックチェーンに格納されたダイジェストは、取引ノード間の争いを解決するために、取引ノードによって主張されるプライバシーデータが真であるかどうかを検証するために使用されることが可能である。
本出願の本実装形態において、規制ノードは、各取引ノードの署名を各コンセンサスノードにさらに送ることができ、その結果、各コンセンサスノードによって行われる、取引に対するコンセンサス検証が成功した後、コンセンサスノードは、各取引ノードが署名を後で拒否するのを防ぐために、各取引ノードの署名もブロックチェーンに格納する。
さらに本出願の本実装形態において、規制ノードは、取引要求が有効である場合、取引データまたは取引データに含まれる指定データを格納することを少なくとも1つの取引ノードに命令することができる。間違いなく、一方、規制ノードは、各コンセンサスノードによって行われる、取引に対するコンセンサス検証が成功した後、およびダイジェストがブロックチェーンに格納された後、取引ノードに対応するプライベートデータベースに取引データまたは指定データを格納することを少なくとも1つの取引ノードに命令することができる。結論として、各取引ノードは、各取引ノード自体によって指定データまたは取引データを格納する。本出願において実装形態は限定されない。
取引ノードは、取引ノードによって格納された指定データを密かに改ざんすることができるが、ブロックチェーンに格納されたダイジェストは、指定データの信憑性を検証するためにいつでも使用され、このことにより、取引ノードによって指定データを密かに改ざんすることによって引き起こされるリスクを回避することができる。
図3は、本出願の1つの実装形態による、ブロックチェーンネットワークを示す概略図である。図に示されるように、ブロックチェーンネットワークにおいて、各ブロックチェーンノードはブロックチェーンを維持し、各ブロックチェーンノードは、ブロックチェーンノードが参加する取引のプライバシーデータを格納するための自分自身のプライベートデータベースを有する。取引Aに対して、取引Aに参加するブロックチェーンノード(取引ノード)のプライベートデータベースのみが、取引Aに対応するプライバシーデータを格納し、取引Aに参加しないブロックチェーンノード(非取引ノード)のプライベートデータベースは、取引Aに対応するプライバシーデータを格納しない。
S104。取引要求を拒否する。
図1に示されたコンセンサス検証方法によれば、規制ノードは、取引要求が有効であるかどうかを検証する責任がある。取引要求が有効である場合、規制ノードは、取引データ内の指定データに基づいてダイジェストを生成し、取引データに含まれるダイジェストおよび非指定データをコンセンサス検証のための各コンセンサスノードに送る。各コンセンサスノードは、コンセンサス検証が成功した後、ダイジェストおよび非指定データをブロックチェーンに格納する。したがって、コンセンサスノードは指定データを受け取らず、したがって指定データをブロックチェーンに格納しない。結果として、指定データは開示されない。さらにダイジェストは、ブロックチェーンに格納されない指定データが改ざんされていないかどうかを検証するために使用されることが可能である。
さらに、コンソーシアムブロックチェーンネットワークなどの特定のブロックチェーンネットワークに対して、コンソーシアムブロックチェーンネットワーク内の各ブロックチェーンノードは、証明機関によって発行されたデジタル証明書を有し、ここで、デジタル証明書は、ブロックチェーンノードの本物の識別情報を保証するために使用される。デジタル証明書は、ブロックチェーンノードの識別情報(ID)、および公開鍵を含む。重要なことには、一般的なブロックチェーンネットワークとは異なり、コンソーシアムブロックチェーンネットワークにおいて、ブロックチェーンノードによって所有される資産番号は、ブロックチェーンノードのIDと関連付けられる。
コンソーシアムブロックチェーンネットワークの応用シナリオにおいて、規制ノードは、取引ノードのデジタル証明書を入手し、取引ノードのデジタル証明書、各取引ノードの署名、および取引データに基づいて、取引要求が有効であるかどうかを判断することができる。
規制ノードは、取引ノードのデジタル証明書に含まれる公開鍵に基づいて各取引ノードの署名を復号すること、および各取引ノードに対応する復号結果が取引データのダイジェストと同じであると判断するとき、各取引ノードのデジタル証明書に含まれる識別情報に基づいて識別情報に対応する資産番号を決定すること、前記資産番号を、取引ノードによって所有される資産番号として使用すること、ならびに各取引ノードによって所有される資産番号、各取引ノードの署名、および取引データに基づいて、取引要求が有効であるかどうかを判断すること、または少なくとも1つの取引ノードに対応する復号結果が取引データのダイジェストとは異なると判断するとき、取引要求が無効であると判断することができる。
さらに規制ノードは、取引データ内の各取引ノードの署名に対応する資産番号を取引ノードの署名に基づいて決定することと、前記資産番号を、取引ノードによって使用される資産番号として使用することと、取引ノードによって所有される資産番号が、取引ノードによって使用される少なくとも1つの資産番号を含まない場合、取引ノードが無効であると判断すること、または取引ノードによって所有される資産番号が、取引ノードによって使用されるすべての資産番号を含む場合、取引ノードが有効であると判断することと、少なくとも1つの取引ノードが無効であるとき、取引要求が無効であると判断すること、またはすべての取引ノードが有効であるとき、取引要求が有効であると判断することと、が可能である。
取引ノードが有効であるということは、不当で違法な行為(別の人物の署名を詐欺的に使用すること、または別の人物の資産を詐欺的に使用することなど)を取引ノードが行っていないということを意味する。現在の取引において、取引ノードによって使用される少なくとも1つの資産番号が、取引ノードによって所有される資産番号ではないということが判断されるとき、別の人物の資産番号を詐欺的に使用する違法な行為を取引ノードが行っており、したがって無効であるとみなされることが可能である。
言い換えると、コンソーシアムブロックチェーンネットワークの応用シナリオにおいて、取引ノードは、取引ノードの公開鍵の代わりに、取引ノードのデジタル証明書を規制ノードに提供する。さらに、取引ノードによって実際に所有される資産番号は、取引ノードのIDに基づいて確認される必要がある。したがって、規制ノードが、取引要求の有効性を検証するために確認する必要がある上述の2つの態様(1.取引データが改ざんしていない。2.取引ノードが、別のブロックチェーンノードによって所有される資産番号を詐欺的に使用していない)にわずかな相違があることがある。
規制ノードは、まず、取引ノードのデジタル証明書に含まれる公開鍵に基づいて各取引ノードの署名を復号しようと試みる。復号結果が取引データのダイジェストと一致している場合、このことは、取引ノードが取引データを改ざんしていないことを示す。すべての取引ノードの識別情報が真であると判断した後、規制ノードは、取引ノードのデジタル証明書に含まれるIDに対応する資産番号(すなわち、取引ノードによって実際に所有される資産番号)に基づいて、取引データ内の各取引ノードの署名に対応する資産番号(すなわち、取引における各取引ノードによって使用される資産番号)が、取引ノードの資産番号であるかどうかを判断し続けることができる。このことは、取引ノードが別の人物の資産番号を詐欺的に使用していない場合、取引要求が有効であるということを示す。
コンソーシアムブロックチェーンネットワークの応用シナリオにおいて、取引ノードのデジタル証明書に含まれる取引ノードのIDは、実際に取引ノードのプライバシーであるということを強調する価値がある。本出願の本実装形態において、規制ノードは、取引ノードのデジタル証明書をコンセンサスノードに送らず、このことにより、取引ノードのIDが開示されないことを保証する。
図1に示されたコンセンサス検証方法に基づいて、本出願の1つの実装形態は、それに対応して、コンセンサス検証デバイスをさらに提供する。図4に示されるように、デバイスは、取引要求を入手するように構成された第1の取得モジュール401であって、取引要求が、取引データ、および少なくとも1つの取引ノードの署名を含む、第1の取得モジュール401と、取引データ、および各取引ノードの署名に基づいて、取引要求が有効であるかどうかを判断すること、ならびに取引要求が有効である場合、取引データに含まれる指定データに基づいてダイジェストを生成すること、ならびに各コンセンサスノードがコンセンサス検証を行うように、取引データに含まれるダイジェストおよび非指定データを各コンセンサスノードに送ること、を行うように構成された判断および処理モジュール402と、を含む。
デバイスは、取引要求が無効である場合、取引要求を拒否するように構成された拒否モジュール403をさらに含む。
デバイスは、取引データ、および各取引ノードの署名に基づいて、取引要求が有効であるかどうかが判断される前に、各取引ノードのデジタル証明書を入手するように構成された第2の取得モジュール404をさらに含む。
判断および処理モジュール402は、取引データ、各取引ノードの署名、および各取引ノードのデジタル証明書に基づいて、取引要求が有効であるかどうかを判断するように構成される。
判断および処理モジュール402は、取引ノードのデジタル証明書に含まれる公開鍵に基づいて各取引ノードの署名を復号すること、および各取引ノードに対応する復号結果が取引データのダイジェストと同じであると判断すると、各取引ノードのデジタル証明書に含まれる識別情報に基づいて識別情報に対応する資産番号を決定すること、前記資産番号を、取引ノードによって所有される資産番号として使用すること、ならびに各取引ノードによって所有される資産番号、各取引ノードの署名、および取引データに基づいて、取引要求が有効であるかどうかを判断すること、または少なくとも1つの取引ノードに対応する復号結果が取引データのダイジェストとは異なると判断すると、取引要求が無効であると判断すること、を行うように構成される。
判断および処理モジュール402は、取引データ内の各取引ノードの署名に対応する資産番号を取引ノードの署名に基づいて決定することと、前記資産番号を、取引ノードによって使用される資産番号として使用することと、取引ノードによって所有される資産番号が、取引ノードによって使用される少なくとも1つの資産番号を含まない場合、取引ノードが無効であると判断すること、または取引ノードによって所有される資産番号が、取引ノードによって使用されるすべての資産番号を含む場合、取引ノードが有効であると判断することと、少なくとも1つの取引ノードが無効であるとき、取引要求が無効であると判断すること、またはすべての取引ノードが有効であるとき、取引要求が有効であると判断することと、を行うように構成される。
デバイスは、取引要求が有効である場合、取引データまたは取引データに含まれる指定データを格納することを少なくとも1つの取引ノードに命令するように構成された通知モジュール405をさらに含む。
1990年代において、技術的な改良が、ハードウェア改良(例えば、ダイオード、トランジスタ、またはスイッチなどの回路構造に対する改良)であるか、ソフトウェア改良(方法手順に対する改良)であるかは、明確に区別されることが可能である。しかし、技術が発展するにつれて、多くの方法手順に対する現在の改良は、ハードウェア回路構造への直接的な改良とみなされることが可能である。設計者は通常、改良された方法手順をハードウェア回路にプログラムし、対応するハードウェア回路構造を得る。したがって方法手順は、ハードウェアエンティティモジュールを使用することによって改良されることが可能である。例えば、プログラマブルロジックデバイス(PLD:programmable logic device)(例えば、フィールドプログラマブルゲートアレイ(FPGA))はこのような集積回路であり、PLDの論理機能は、デバイスプログラミングを通じてユーザによって決定される。設計者はプログラミングを行い、特定用途向け集積回路チップを設計して製造することをチップ製造業者にリクエストすることなく、デジタルシステムをPLDに「統合する」。さらに、現在のところ、集積回路チップを手動で製造する代わりに、「ロジックコンパイラ」ソフトウェアを使用することによって、このようなプログラミングが主として実装される。ロジックコンパイラソフトウェアは、プログラムを開発するため、および書くために使用されるソフトウェアコンパイラに類似している。元のコードは、コンパイルのための特定のプログラミング言語で書かれる必要がある。言語は、ハードウェア記述言語(HDL:hardware description language)と呼ばれる。Advanced Boolean Expression Language(ABEL)、Altera Hardware Description Language(AHDL)、Confluence、Cornell University Programming Language(CUPL)、HDCal、Java(登録商標) Hardware Description Language(JHDL)、Lava、Lola、MyHDL、PALASM、およびRuby Hardware Description Language(RHDL)など、多くのHDLがある。超高速集積回路ハードウェア記述言語(VHDL:very-high-speed integrated circuit hardware description language)およびVerilogが最も一般的に使用される。いくつかの説明されたハードウェア記述言語を使用することによって方法手順が論理的にプログラムされ、集積回路にプログラムされると、論理的な方法手順を実装するハードウェア回路が容易に得られることが可能であるということも当業者は理解するはずである。
コントローラは、任意の妥当な方法を使用することによって実装されることが可能である。例えば、コントローラは、マイクロプロセッサもしくはプロセッサ、およびマイクロプロセッサもしくはプロセッサ、論理ゲート、スイッチ、特定用途向け集積回路(ASIC)、プログラマブルロジックコントローラ、またはビルトインマイクロコントローラによって実行されることが可能な(ソフトウェアもしくはファームウェアなどの)コンピュータ可読プログラムコードを格納するコンピュータ可読媒体であることが可能である。コントローラの例は、ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20、およびSilicone Labs C8051F320などのマイクロプロセッサを含むがこれらに限定されない。メモリコントローラは、メモリの制御ロジックの一部として実装されることも可能である。コンピュータ可読プログラムコードを使用することによってコントローラを実装することの他に、ロジックプログラミングは、論理ゲート、スイッチ、特定用途向け集積回路、プログラマブルロジックコントローラ、およびビルトインマイクロコントローラの形で同じ機能をコントローラが実装できるようにするための方法ステップに対して行われることが可能であるということも当業者は知っている。したがってコントローラは、ハードウェア構成要素とみなされることが可能であり、コントローラに含まれ、様々な機能を実装するように構成されたデバイスは、ハードウェア構成要素内の構造とみなされることも可能である。または様々な機能を実装するように構成されたデバイスは、方法を実装するソフトウェアモジュールと、ハードウェア構成要素内の構造の両方とみなされることさえ可能である。
先の実装形態において示されたシステム、デバイス、モジュール、またはユニットは、コンピュータチップまたはエンティティを使用することによって実装されることが可能であり、また一定の機能を有する製品を使用することによって実装されることが可能である。典型的な実行デバイスはコンピュータである。コンピュータは、例えば、パーソナルコンピュータ、ラップトップコンピュータ、セルラー電話、カメラフォン、スマートフォン、パーソナルデジタルアシスタント、メディアプレーヤ、ナビゲーションデバイス、eメールデバイス、ゲーム機、タブレット型コンピュータ、ウェアラブルデバイス、またはこれらのデバイスのいずれかの組合せであることが可能である。
説明の容易性のために、上記のデバイスは、様々なユニットに機能を分割することによって説明される。間違いなく、本出願が実行されると、ユニットの機能が、1つまたは複数のソフトウェアおよび/またはハードウェアにおいて実行されることが可能である。
本開示の実装形態は、方法、システム、またはコンピュータプログラム製品として提供されることが可能であるということを当業者は理解するはずである。したがって本開示は、ハードウェアのみの実装形態、ソフトウェアのみの実装形態、またはソフトウェアとハードウェアの組合せによる実装形態の形式を使用することができる。さらに本開示は、コンピュータ使用可能プログラムコードを含む(ディスクメモリ、CD-ROM、光メモリ、等を含むがこれらに限定されない)1つまたは複数のコンピュータ使用可能ストレージ媒体上に実装されるコンピュータプログラム製品の形式を使用することができる。
本開示は、本開示の実装形態に基づいて、方法、デバイス(システム)、およびコンピュータプログラム製品の流れ図および/またはブロック図を参照しながら説明される。コンピュータプログラム命令は、流れ図および/またはブロック図における各処理および/または各ブロック、ならびに流れ図および/またはブロック図における処理および/またはブロックの組合せを実行するために使用されることが可能であるということに留意する価値がある。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、ビルトインプロセッサ、または機械を生成するための別のプログラマブルデータ処理デバイスのプロセッサに提供されることが可能であり、その結果、コンピュータ、または別のプログラマブルデータ処理デバイスのプロセッサによって実行される命令は、流れ図における1つもしくは複数の処理における特定の機能、および/またはブロック図における1つもしくは複数のブロックにおける特定の機能を実行するためのデバイスを生成する。
コンピュータまたは別のプログラマブルデータ処理デバイスに、特定の方式で動くように命令することができる、これらのコンピュータプログラム命令は、コンピュータ可読メモリに格納されることが可能であり、その結果、コンピュータ可読メモリに格納された命令は、命令デバイスを含むアーチファクトを生成する。命令デバイスは、流れ図における1つもしくは複数の処理における特定の機能、および/またはブロック図における1つもしくは複数のブロックにおける特定の機能を実行する。
これらのコンピュータプログラム命令は、コンピュータまたは別のプログラマブルデータ処理デバイス上にロードされることが可能であり、その結果、コンピュータまたは別のプログラマブルデバイス上で一連の動作ならびに動作およびステップが行われ、このことにより、コンピュータ実行処理を生成する。したがって、コンピュータまたは別のプログラマブルデバイス上で実行される命令は、流れ図における1つもしくは複数の処理における特定の機能、および/またはブロック図における1つもしくは複数のブロックにおける特定の機能を実行するためのステップを提供する。
典型的な構成において、コンピューティングデバイスは、1つまたは複数のプロセッサ(CPU)、1つまたは複数の入出力インターフェース、1つまたは複数のネットワークインターフェース、および1つまたは複数のメモリを含む。
メモリは、非持続的メモリ、ランダムアクセスメモリ(RAM)、不揮発性メモリ、および/または例えばリードオンリメモリ(ROM)もしくはフラッシュメモリ(フラッシュRAM)といった、コンピュータ可読媒体内にある別の形式を含むことができる。メモリは、コンピュータ可読媒体の例である。
コンピュータ可読媒体は、任意の方法または技術を使用することによって情報を格納することができる持続的媒体、非持続的媒体、可動媒体、および非可動媒体を含む。情報は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータであることが可能である。コンピュータストレージ媒体の例は、パラメータランダムアクセスメモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、別のタイプのランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、フラッシュメモリもしくは別のメモリ技術、コンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)もしくは別の光ストレージ、カセット磁気テープ、磁気テープ/磁気ディスクストレージもしくは別の磁気ストレージデバイス、または他の任意の非送信媒体を含むがこれらに限定されない。コンピュータストレージ媒体は、コンピューティングデバイスによってアクセス可能な情報を格納するために使用されることが可能である。本明細書における定義に基づくと、コンピュータ可読媒体は、変調されたデータ信号および担体などの一時コンピュータ可読媒体(一時媒体)を含まない。
用語「含む(include)」、「備える(comprise)」、またはこれらの他の任意の変形物は、非排他的な包含をカバーすることを意図するものであるので、要素の一覧を含む処理、方法、製品、もしくはデバイスは、これらの要素を含むだけでなく、明確に挙げられていない他の要素も含むということ、またはこのような処理、方法、製品、もしくはデバイスに固有の要素をさらに含むということにさらに留意する価値がある。さらなる制限なく、「〜を含む(includes a ...)」の前にある要素は、要素を含む処理、方法、製品、またはデバイスにおけるさらなる同一要素の存在を排除しない。
本出願の1つの実装形態は、方法、システム、またはコンピュータプログラム製品として提供されることが可能であるということを当業者は理解するはずである。したがって本出願は、ハードウェアのみの実装形態、ソフトウェアのみの実装形態、またはソフトウェアとハードウェアの組合せによる実装形態の形式を使用することができる。さらに本出願は、コンピュータ使用可能プログラムコードを含む(ディスクメモリ、CD-ROM、光メモリ、等を含むがこれらに限定されない)1つまたは複数のコンピュータ使用可能ストレージ媒体上に実装されるコンピュータプログラム製品の形式を使用することができる。
本出願は、例えばプログラムモジュールといった、コンピュータによって実行されるコンピュータ実行可能命令の一般的な文脈で説明されることが可能である。一般に、プログラムモジュールは、特定のタスクを実行するか、特定の抽象データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、等を含む。本出願は、分散コンピューティング環境において実践されることも可能である。分散コンピューティング環境において、タスクは、通信ネットワークを通じて接続されたリモート処理デバイスによって行われる。分散コンピューティング環境において、プログラムモジュールは、ストレージデバイスを含む、ローカルとリモート両方のコンピュータストレージ媒体に配置されることが可能である。
本明細書における実装形態は進行式に(in a progressive way)説明される。実装形態の同じまたは類似の部分に対して、実装形態に対する参照が行われることが可能である。各実装形態は、他の実装形態との相違を重点的に取り扱う。特に、システムの実装形態は、方法の実装形態に基本的に類似しており、したがって簡単に説明される。関連部分に対しては、方法の実装形態における関連説明に対する参照が行われることが可能である。
先の実装形態は本出願の実装形態であり、本出願を限定することを意図するものではない。当業者は、本出願に対する様々な修正および変更を行うことができる。本出願の精神および原理から逸脱することなく行われる任意の修正、同等の置換、または改良は、本出願における特許請求の範囲の範囲に含まれる。
401 第1の取得モジュール
402 判断および処理モジュール
403 拒否モジュール
404 第2の取得モジュール
405 通知モジュール

Claims (12)

  1. 規制ノードにより、取引要求を入手するステップであって、前記取引要求が、取引データ、および少なくとも1つの取引ノードの署名を含む、ステップと、
    前記取引データ、および各取引ノードの署名に基づいて、前記取引要求が有効であるかどうかを判断するステップと、
    前記取引要求が有効であるという判断に応答して、前記取引データに含まれる指定データに基づいてダイジェストを生成するステップと、
    各コンセンサスノードがコンセンサス検証を行うように、前記取引データに含まれる前記ダイジェストおよび非指定データを各コンセンサスノードに送るステップと、
    を含む、コンセンサス検証方法。
  2. 前記取引要求が無効であるという判断に応答して、前記取引要求を拒否するステップ
    をさらに含む、請求項1に記載の方法。
  3. 前記取引データ、および各取引ノードの署名に基づいて、前記取引要求が有効であるかどうかを判断する前記ステップの前に、前記方法が、
    各取引ノードのデジタル証明書を入手するステップ
    をさらに含み、
    前記取引データ、および各取引ノードの署名に基づいて、前記取引要求が有効であるかどうかを判断する前記ステップが、
    前記取引データ、各取引ノードの前記署名、および各取引ノードの前記デジタル証明書に基づいて、前記取引要求が有効であるかどうかを判断するステップ
    を含む、請求項1に記載の方法。
  4. 前記取引データ、各取引ノードの前記署名、および各取引ノードの前記デジタル証明書に基づいて、前記取引要求が有効であるかどうかを判断する前記ステップが、
    前記取引ノードの前記デジタル証明書に含まれる公開鍵に基づいて各取引ノードの前記署名を復号するステップと、
    各取引ノードに対応する復号結果が前記取引データの前記ダイジェストと同じであるという判断に応答して、各取引ノードの前記デジタル証明書に含まれる識別情報に基づいて前記識別情報に対応する資産番号を決定するステップと、
    前記資産番号を、前記取引ノードによって所有される資産番号として決定するステップと、
    各取引ノードによって所有される前記資産番号、各取引ノードの前記署名、および前記取引データに基づいて、前記取引要求が有効であるかどうかを判断するステップ、または、
    少なくとも1つの取引ノードに対応する復号結果が前記取引データの前記ダイジェストとは異なると判断するとき、前記取引要求が無効であると判断するステップと、
    を含む、請求項3に記載の方法。
  5. 各取引ノードによって所有される前記資産番号、各取引ノードの前記署名、および前記取引データに基づいて、前記取引要求が有効であるかどうかを判断する前記ステップが、
    前記取引データ内の各取引ノードの前記署名に対応する資産番号を前記取引ノードの前記署名に基づいて決定するステップと、
    前記資産番号を、前記取引ノードによって使用される資産番号として決定するステップと、
    前記取引ノードによって所有される前記資産番号が、前記取引ノードによって使用される少なくとも1つの資産番号を含まないという判断に応答して、前記取引ノードが無効であると判断するステップ、または、
    前記取引ノードによって所有される前記資産番号が、前記取引ノードによって使用されるすべての資産番号を含むという判断に応答して、前記取引ノードが有効であると判断するステップと、
    少なくとも1つの取引ノードが無効であるという判断に応答して、前記取引要求が無効であると判断するステップ、または
    すべての取引ノードが有効であるという判断に応答して、前記取引要求が有効であると判断するステップと、
    を含む、請求項4に記載の方法。
  6. 前記取引要求が有効であるという判断に応答して、前記取引データ、または前記取引データに含まれる前記指定データを格納することを前記少なくとも1つの取引ノードに命令するステップ
    をさらに含む、請求項1から5のいずれか一項に記載の方法。
  7. 取引要求を入手するように構成された第1の取得モジュールであって、前記取引要求が、取引データ、および少なくとも1つの取引ノードの署名を含む、第1の取得モジュールと、
    前記取引データ、および各取引ノードの署名に基づいて、前記取引要求が有効であるかどうかを判断し、
    前記取引要求が有効であるという判断に応答して、前記取引データに含まれる指定データに基づいてダイジェストを生成し、
    各コンセンサスノードがコンセンサス検証を行うように、前記取引データに含まれる前記ダイジェストおよび非指定データを各コンセンサスノードに送る
    ように構成された判断および処理モジュールと、
    を備える、コンセンサス検証デバイス。
  8. 前記取引要求が無効であるという判断に応答して、前記取引要求を拒否するように構成された拒否モジュール
    をさらに備える、請求項7に記載のデバイス。
  9. 前記取引データ、および各取引ノードの前記署名に基づいて、前記取引要求が有効であるかどうかが判断される前に、各取引ノードのデジタル証明書を入手するように構成された第2の取得モジュールをさらに備え、
    前記判断および処理モジュールが、前記取引データ、各取引ノードの前記署名、および各取引ノードの前記デジタル証明書に基づいて、前記取引要求が有効であるかどうかを判断するように構成された、請求項7に記載のデバイス。
  10. 前記判断および処理モジュールが、
    前記取引ノードの前記デジタル証明書に含まれる公開鍵に基づいて各取引ノードの前記署名を復号し、
    各取引ノードに対応する復号結果が前記取引データの前記ダイジェストと同じであるという判断に応答して、各取引ノードの前記デジタル証明書に含まれる識別情報に基づいて前記識別情報に対応する資産番号を決定し、
    前記資産番号を、前記取引ノードによって所有される資産番号として決定し、
    各取引ノードによって所有される前記資産番号、各取引ノードの前記署名、および前記取引データに基づいて、前記取引要求が有効であるかどうかを判断するか、または、
    少なくとも1つの取引ノードに対応する復号結果が前記取引データの前記ダイジェストとは異なるという判断に応答して、前記取引要求が無効であると判断する
    ように構成された、請求項9に記載のデバイス。
  11. 前記判断および処理モジュールが、
    前記取引データ内の各取引ノードの前記署名に対応する資産番号を前記取引ノードの前記署名に基づいて決定し、
    前記資産番号を、前記取引ノードによって使用される資産番号として決定し、
    前記取引ノードによって所有される前記資産番号が、前記取引ノードによって使用される少なくとも1つの資産番号を含まないという判断に応答して、前記取引ノードが無効であると判断するか、または、
    前記取引ノードによって所有される前記資産番号が、前記取引ノードによって使用されるすべての資産番号を含むという判断に応答して、前記取引ノードが有効であると判断し、
    少なくとも1つの取引ノードが無効であるという判断に応答して、前記取引要求が無効であると判断するか、または、
    すべての取引ノードが有効であるという判断に応答して、前記取引要求が有効であると判断する
    ように構成された、請求項10に記載のデバイス。
  12. 前記取引要求が有効であるという判断に応答して、前記取引データ、または前記取引データに含まれる前記指定データを格納することを前記少なくとも1つの取引ノードに命令するように構成された通知モジュールをさらに備える、請求項7から11のいずれか一項に記載のデバイス。
JP2019535847A 2017-04-28 2018-04-26 コンセンサス検証方法およびデバイス Active JP6789397B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710292517.6A CN107392040B (zh) 2017-04-28 2017-04-28 一种共识验证的方法及装置
CN201710292517.6 2017-04-28
PCT/CN2018/084624 WO2018196813A1 (zh) 2017-04-28 2018-04-26 一种共识验证的方法及装置

Publications (2)

Publication Number Publication Date
JP2020508593A true JP2020508593A (ja) 2020-03-19
JP6789397B2 JP6789397B2 (ja) 2020-11-25

Family

ID=60338454

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019535847A Active JP6789397B2 (ja) 2017-04-28 2018-04-26 コンセンサス検証方法およびデバイス

Country Status (14)

Country Link
US (1) US20190354977A1 (ja)
EP (1) EP3547199B1 (ja)
JP (1) JP6789397B2 (ja)
KR (2) KR102281558B1 (ja)
CN (1) CN107392040B (ja)
AU (1) AU2018257226B2 (ja)
BR (1) BR112019013367B1 (ja)
CA (1) CA3048743A1 (ja)
MX (1) MX2019007807A (ja)
PH (1) PH12019501503A1 (ja)
RU (1) RU2728524C1 (ja)
TW (1) TWI698820B (ja)
WO (1) WO2018196813A1 (ja)
ZA (1) ZA201904221B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021511558A (ja) * 2018-01-19 2021-05-06 アドバンスド ニュー テクノロジーズ カンパニー リミテッド 規制検査のための方法、装置、および電子デバイス

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107392040B (zh) * 2017-04-28 2019-08-09 阿里巴巴集团控股有限公司 一种共识验证的方法及装置
CN107395665B (zh) * 2017-05-22 2020-04-24 创新先进技术有限公司 一种区块链业务受理及业务共识方法及装置
CN107592293A (zh) * 2017-07-26 2018-01-16 阿里巴巴集团控股有限公司 区块链节点间通讯方法、数字证书管理方法、装置和电子设备
US11372847B2 (en) * 2018-01-19 2022-06-28 Nippon Telegraph and Telephone Corporatioin Block verification device, block verification method, and program
CN110084068B (zh) * 2018-01-26 2023-09-29 阿里巴巴集团控股有限公司 区块链系统及用于区块链系统的数据处理方法
CN108389129B (zh) 2018-02-27 2020-12-04 创新先进技术有限公司 基于区块链的交易执行方法及装置、电子设备
GB201806448D0 (en) * 2018-04-20 2018-06-06 Nchain Holdings Ltd Computer-implemented methods and systems
CN108648081B (zh) * 2018-05-07 2020-08-18 北京柏链基石科技有限公司 一种基于区块链的交易处理方法、装置和电子设备
CN108711052B (zh) * 2018-05-18 2021-04-30 电子科技大学 一种基于区块链的信息验证系统
CN109067539B (zh) * 2018-06-13 2021-09-28 深圳前海微众银行股份有限公司 联盟链交易方法、设备及计算机可读存储介质
CN109011584A (zh) * 2018-06-22 2018-12-18 深圳市摩掌信息技术有限公司 一种基于游戏的虚拟资产的交易方法、装置及终端设备
CN109087098A (zh) * 2018-07-27 2018-12-25 杭州复杂美科技有限公司 一种许可链的交易处理方法、系统、设备和存储介质
CN109242483A (zh) 2018-08-07 2019-01-18 阿里巴巴集团控股有限公司 一种基于中心化与去中心化的双重交易方法及系统
CN109040271B (zh) * 2018-08-15 2020-12-29 深圳市引方科技有限公司 一种分布式环境下的网络设备完整性保护方法
CN109213806B (zh) * 2018-09-12 2023-09-05 国际商业机器(中国)投资有限公司 基于区块链的企业排污数据处理方法及系统
CN109391480A (zh) * 2018-10-19 2019-02-26 微梦创科网络科技(中国)有限公司 一种数据存储方法、装置及电子设备
CN112805961A (zh) 2018-10-25 2021-05-14 索尼公司 由区块链支持的隐私保护移动即服务
CN112381646A (zh) * 2018-10-31 2021-02-19 创新先进技术有限公司 基于区块链的隐私交易及其应用方法和装置
CN109327528B (zh) * 2018-10-31 2020-10-20 创新先进技术有限公司 一种基于区块链的节点管理方法和装置
KR102266206B1 (ko) * 2018-11-07 2021-06-21 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 합의 노드와 클라이언트 노드 간의 통신을 관리하는 방법
RU2723308C1 (ru) * 2018-11-07 2020-06-09 Алибаба Груп Холдинг Лимитед Управление приватными транзакциями в сетях цепочек блоков на основе потока обработки
CN109598149B (zh) * 2018-11-20 2020-04-07 阿里巴巴集团控股有限公司 业务处理的方法和装置
CN110020854B (zh) * 2018-11-27 2020-11-17 创新先进技术有限公司 一种基于多个区块链网络的数据存证方法及系统
CN111899104B (zh) * 2018-11-27 2023-12-01 创新先进技术有限公司 一种业务执行方法及装置
CN110033259B (zh) * 2018-11-28 2021-08-31 创新先进技术有限公司 基于区块链的数据存证方法及装置、电子设备
WO2019072287A2 (en) * 2018-11-30 2019-04-18 Alibaba Group Holding Limited USING A TABLE OF NUTS TO RESOLVE SIMULTANEOUS BLOCK CHAIN TRANSACTION FAILURE
CN111327564B (zh) * 2018-12-13 2022-03-08 航天信息股份有限公司 一种联盟链的准入方法及装置
CN109886712A (zh) * 2019-02-25 2019-06-14 众安信息技术服务有限公司 基于区块链的数据处理方法与装置
CN111614709B (zh) * 2019-02-26 2022-12-16 傲为有限公司 基于区块链的分区交易方法及系统
KR102322646B1 (ko) * 2019-03-01 2021-11-10 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 블록체인 내의 스마트 계약에 기초하여 거래 활동의 민감한 데이터를 보호하기 위한 방법 및 디바이스
EP3590084B1 (en) * 2019-03-04 2022-05-11 Advanced New Technologies Co., Ltd. Methods and devices for testing signature verification for blockchain system
CN110070359B (zh) * 2019-03-19 2020-12-01 创新先进技术有限公司 基于区块链的数据核对系统、方法、计算设备及存储介质
CN110009353A (zh) * 2019-04-01 2019-07-12 北京柏链基石科技有限公司 一种基于区块链的账号注册方法、装置及电子设备
CN110222529A (zh) * 2019-05-21 2019-09-10 平安普惠企业管理有限公司 基于联盟链的资产管理方法、电子设备及计算机存储介质
CN111767337B (zh) * 2019-05-24 2024-04-05 北京沃东天骏信息技术有限公司 区块的验证方法、装置及设备
TW202143136A (zh) * 2019-08-09 2021-11-16 英商路昂有限公司 使用者媒體平台伺服器系統
EP4055774A1 (en) * 2019-12-05 2022-09-14 Huawei Technologies Co., Ltd. System and method of establishing a trusted relationship in a distributed system
CN111325585A (zh) * 2020-01-17 2020-06-23 腾讯科技(深圳)有限公司 一种资产转移方法、装置及计算机可读存储介质
CN111444211B (zh) * 2020-03-26 2021-07-13 腾讯科技(深圳)有限公司 区块链共识节点校验方法、装置、设备以及存储介质
CN111415161B (zh) * 2020-04-27 2024-03-19 财付通支付科技有限公司 基于区块链的数据验证方法、装置及计算机可读存储介质
CN111667268B (zh) * 2020-05-29 2024-01-23 中国工商银行股份有限公司 基于区块链的交易方法、节点及系统
CN111724153B (zh) * 2020-06-08 2023-02-03 交通银行股份有限公司 一种基于区块链的预付式消费监管系统、方法及存储介质
WO2022000482A1 (en) * 2020-07-03 2022-01-06 Alipay (Hangzhou) Information Technology Co., Ltd. System and method for providing privacy and security protection in blockchain-based private transactions
CN112235379B (zh) * 2020-09-30 2021-09-24 电子科技大学 一种区块链底层共享存储方法
CN112600672B (zh) * 2020-11-30 2022-02-25 清华大学 基于真实身份的域间可信度共识方法和装置
CN112650735B (zh) * 2020-12-28 2022-05-24 杭州趣链科技有限公司 联盟链的丢失区块确定方法、装置、设备及存储介质
CN112865959B (zh) * 2020-12-30 2022-05-31 杭州趣链科技有限公司 分布式节点设备的共识方法、节点设备及分布式网络
CN112884579A (zh) * 2021-02-08 2021-06-01 京东数科海益信息科技有限公司 区块链交易共识方法和装置
CN113114634A (zh) * 2021-03-24 2021-07-13 武汉卓尔信息科技有限公司 一种基于联盟链的可信数据管理方法及联盟链
CN113240418B (zh) * 2021-04-23 2024-01-12 上海和数软件有限公司 基于区块链的隐私数据智能访问控制方法和设备
CN113761071B (zh) * 2021-10-09 2023-07-11 支付宝(杭州)信息技术有限公司 一种共识方法、区块链系统和共识节点
CN113821474A (zh) * 2021-11-22 2021-12-21 武汉龙津科技有限公司 一种数据处理方法、装置、设备和存储介质
CN114338053B (zh) * 2022-03-16 2022-05-13 成都信息工程大学 一种动态的基于信誉的区块链共识方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003105002A1 (ja) * 2002-06-11 2003-12-18 株式会社帝国データバンク 汎用的組織内個人認証システム
JP2016162431A (ja) * 2015-03-05 2016-09-05 ブラザー工業株式会社 情報処理装置、コンテンツ配信システム、情報処理方法、及びプログラム
CN105976232A (zh) * 2016-06-24 2016-09-28 深圳前海微众银行股份有限公司 资产交易方法和装置
WO2018004527A1 (en) * 2016-06-28 2018-01-04 Intel Corporation Cell for n-negative differential resistance (ndr) latch
JP2018530175A (ja) * 2015-07-02 2018-10-11 ナスダック, インコーポレイテッドNasdaq, Inc. 分散トランザクションデータベースにおける出所保証のシステムおよび方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0229894D0 (en) * 2002-12-21 2003-01-29 Ibm Methods, apparatus and computer programs for generating and/or using conditional electronic signatures and/or for reporting status changes
US20180253727A1 (en) * 2016-07-02 2018-09-06 Royal Bank Of Canada Secure funding of electronic payments
GB2509055B (en) * 2012-12-11 2016-03-23 Gurulogic Microsystems Oy Encoder and method
CA2981952A1 (en) * 2015-04-06 2016-10-13 Bitmark, Inc. System and method for decentralized title recordation and authentication
US20160342977A1 (en) * 2015-05-20 2016-11-24 Vennd.io Pty Ltd Device, method and system for virtual asset transactions
GB2539430A (en) * 2015-06-16 2016-12-21 The Provost Fellows Found Scholars & The Other Members Of Board Of The College Of The Holy & Unidv T Digital token exchange system
US20170085555A1 (en) * 2015-07-14 2017-03-23 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems
AU2015403302A1 (en) * 2015-07-28 2018-02-22 Razer (Asia-Pacific) Pte. Ltd. Servers for a reward-generating distributed digital resource farm and methods for controlling a server for a reward-generating distributed digital resource farm
AU2016100059A4 (en) * 2016-01-24 2016-03-03 The Trustee For The Mckeon Family Trust integratedCONTRACT is a process of embedding dynamic data characteristics into financial and other instruments using Blockchain technology and a unique method for transacting on online peer to peer and marketplace exchanges.
US9849364B2 (en) * 2016-02-02 2017-12-26 Bao Tran Smart device
SG11201808657TA (en) * 2016-04-01 2018-10-30 Jpmorgan Chase Bank Na Systems and methods for providing data privacy in a private distributed ledger
US10204341B2 (en) * 2016-05-24 2019-02-12 Mastercard International Incorporated Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees
CN106385315B (zh) * 2016-08-30 2019-05-17 北京三未信安科技发展有限公司 一种数字证书管理方法及系统
CN106375317A (zh) * 2016-08-31 2017-02-01 北京明朝万达科技股份有限公司 一种基于区块链的大数据安全认证方法和系统
CN106411901B (zh) * 2016-10-08 2018-01-23 北京三未信安科技发展有限公司 一种数字身份标识管理方法及系统
CN106503098B (zh) * 2016-10-14 2021-11-12 中金云金融(北京)大数据科技股份有限公司 内置于Paas服务层的区块链云服务框架系统
US10764259B2 (en) * 2017-02-07 2020-09-01 Microsoft Technology Licensing, Llc Transaction processing for consortium blockchain network
CN107392040B (zh) * 2017-04-28 2019-08-09 阿里巴巴集团控股有限公司 一种共识验证的方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003105002A1 (ja) * 2002-06-11 2003-12-18 株式会社帝国データバンク 汎用的組織内個人認証システム
JP2016162431A (ja) * 2015-03-05 2016-09-05 ブラザー工業株式会社 情報処理装置、コンテンツ配信システム、情報処理方法、及びプログラム
JP2018530175A (ja) * 2015-07-02 2018-10-11 ナスダック, インコーポレイテッドNasdaq, Inc. 分散トランザクションデータベースにおける出所保証のシステムおよび方法
CN105976232A (zh) * 2016-06-24 2016-09-28 深圳前海微众银行股份有限公司 资产交易方法和装置
WO2018004527A1 (en) * 2016-06-28 2018-01-04 Intel Corporation Cell for n-negative differential resistance (ndr) latch

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021511558A (ja) * 2018-01-19 2021-05-06 アドバンスド ニュー テクノロジーズ カンパニー リミテッド 規制検査のための方法、装置、および電子デバイス

Also Published As

Publication number Publication date
KR20210081444A (ko) 2021-07-01
AU2018257226A1 (en) 2019-07-11
AU2018257226B2 (en) 2021-06-24
TW201839682A (zh) 2018-11-01
BR112019013367B1 (pt) 2022-03-03
BR112019013367A2 (pt) 2019-12-31
EP3547199B1 (en) 2021-09-22
CA3048743A1 (en) 2018-11-01
CN107392040A (zh) 2017-11-24
TWI698820B (zh) 2020-07-11
EP3547199A1 (en) 2019-10-02
PH12019501503A1 (en) 2020-06-08
EP3547199A4 (en) 2020-01-01
ZA201904221B (en) 2022-06-29
CN107392040B (zh) 2019-08-09
JP6789397B2 (ja) 2020-11-25
KR20190090832A (ko) 2019-08-02
KR102281558B1 (ko) 2021-07-27
MX2019007807A (es) 2019-09-06
US20190354977A1 (en) 2019-11-21
RU2728524C1 (ru) 2020-07-30
WO2018196813A1 (zh) 2018-11-01
KR102541219B1 (ko) 2023-06-08

Similar Documents

Publication Publication Date Title
JP6789397B2 (ja) コンセンサス検証方法およびデバイス
US11438165B2 (en) Method and apparatus for processing transaction requests
JP6859506B2 (ja) デジタル証明書管理方法、装置、およびシステム
WO2021068636A1 (zh) 基于区块链的可验证声明的创建方法、装置、设备及系统
JP6675518B1 (ja) サービス要求を処理するための方法およびデバイス
EP3945696B1 (en) Blockchain data processing method, apparatus, and device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190823

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190823

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200930

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201005

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201102

R150 Certificate of patent or registration of utility model

Ref document number: 6789397

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250