JP7454616B2 - 分散型元帳におけるdagベースのトランザクション処理方法およびシステム - Google Patents
分散型元帳におけるdagベースのトランザクション処理方法およびシステム Download PDFInfo
- Publication number
- JP7454616B2 JP7454616B2 JP2022136003A JP2022136003A JP7454616B2 JP 7454616 B2 JP7454616 B2 JP 7454616B2 JP 2022136003 A JP2022136003 A JP 2022136003A JP 2022136003 A JP2022136003 A JP 2022136003A JP 7454616 B2 JP7454616 B2 JP 7454616B2
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- transactions
- bcs
- fabric
- ledger
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title description 7
- 238000000034 method Methods 0.000 claims description 89
- 238000012545 processing Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 5
- 230000002860 competitive effect Effects 0.000 claims 2
- 239000004744 fabric Substances 0.000 description 194
- 239000008186 active pharmaceutical agent Substances 0.000 description 56
- 238000003860 storage Methods 0.000 description 54
- 238000007726 management method Methods 0.000 description 52
- 230000006870 function Effects 0.000 description 29
- 230000008520 organization Effects 0.000 description 26
- 230000008569 process Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 15
- 239000003795 chemical substances by application Substances 0.000 description 14
- 238000013475 authorization Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 12
- 230000007246 mechanism Effects 0.000 description 12
- 230000008901 benefit Effects 0.000 description 9
- 230000004044 response Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 6
- 230000002688 persistence Effects 0.000 description 6
- 238000010200 validation analysis Methods 0.000 description 6
- 230000015654 memory Effects 0.000 description 5
- 238000005192 partition Methods 0.000 description 5
- 101000942681 Rattus norvegicus Clusterin Proteins 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000012550 audit Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000013468 resource allocation Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 102100022523 Acetoacetyl-CoA synthetase Human genes 0.000 description 1
- 108090000197 Clusterin Proteins 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 1
- 101000678027 Homo sapiens Acetoacetyl-CoA synthetase Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 230000002147 killing effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 150000003839 salts Chemical class 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 239000007858 starting material Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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/3239—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Description
この特許文献の開示の一部は、著作権によって保護される資料を含む。この特許文献または特許開示が特許商標庁の特許ファイルまたは記録に記載されているため、著作権保有者は、何人による複製に対して異議しないが、その他の場合には全ての著作権を保有する。
本願は、2019年1月29日に出願され、「分散型元帳におけるDAGベースのトランザクション処理方法およびシステム」と題された米国特許出願第16/261371号、および2018年8月24日に出願され、「分散型元帳におけるDAGベースのトランザクション処理方法およびシステム」と題された米国仮特許出願第62/722595号に基づく優先権の利益を主張し、各々の出願の全体が参照により本明細書に組み込まれる。
本開示は、一般的に、分散型元帳(distributed ledger)を提供するためのシステムおよび方法に関する。より詳しくは、本開示は、分散型元帳における有向非循環グラフ(Directed Acyclic Graph:DAG)ベースのトランザクション処理方法およびシステム並びにそのコンポーネントを開示する。
分散型元帳は、大まかに、資産所有権のデジタル記録として称される。元帳は、中央管理者を有しなく、中央データストアを有しない。代わりに、元帳は、コンピューティング環境において、複数の場所、複数の国、または複数の施設にわたって地理的に分布され得る多くの参加ノードにわたって複製される。コンセンサスプロトコルは、元帳の各ノードのコピーと他の全てのノードのコピーとの同一性を保証する。同様に、1組のコピーは、1つの共有元帳として見なされてもよい。資産所有者は、分散型元帳を用いて、例えば、暗号署名技術に基づいて、一部の資産所有者の口座の負債を記入し、別の資産所有者の口座の信用度を評価することができる。
とを可能にすることによって、信用レベルおよび説明責任を可能にする。許可型元帳は、より柔軟な管理およびコンセンサスメカニズムのより広い選択をサポートする。他のトランザクションよりも一部のトランザクションを好む参加者は、2種類の分散型元帳を容易に操作することができる。しかしながら、許可有り元帳の基礎となる説明責任は、参加者に制約を与える機会を提供する。
すべきトランザクションを決定することを可能にする。これらのマイナーは、常により多くの報酬を有するトランザクションを好むため、事実上インセンティブモデルを選択する。しかしながら、部分的にインセンティブモデルによって、公衆ブロックチェーンは、非常に遅くなる。
本明細書は、一実施形態に従って、分散型元帳におけるDAGベースのトランザクション処理システムおよび方法およびそのコンポーネントを記載する。
ェクトとして達成された共同成果である。ハイパーレッジャファブリックは、スマートコントラクトを実行するための分散型元帳プラットフォームの実装である。ハイパーレッジャファブリックは、コンテナ技術を利用して、システムのアプリケーションロジックを含む「チェーンコード」と呼ばれるスマートコントラクトをホストする。
クのメンバが登録される。また、ハイパーレッジャファブリックは、チャネルを作成する機能を提供することができる。各チャネルは、特定のグループの参加者に可視である個別のトランザクション元帳を含むことができる。これによって、トランザクションプライバシを可能にする。
一実施形態によれば、本明細書は、ブロックチェーンファブリックにおいてSQLベースのリッチクエリをサポートするためのシステムおよび方法を記載する。一実施形態によれば、本明細書に記載されたシステムおよび方法は、SQLクエリを実行することによって、より容易およびより管理可能な方法で複雑なスマートコントラクトを作成することができる。また、データ選別を(スマートコントラクトレベルで実行するではなく)ストレージエンジンに戻すことおよびデータの同時読み出しおよび書き込みアクセスをサポートするリレーショナルエンジンに依存することによって、性能を改善することができる。また、ワールドデータベースのステートは、同時読み出し/書き込みアクセスを提供することができる。
たがって、要素が他の場所に記載されている場合、図面に使用された参照番号は、その図面に関連する詳細な説明において、言及されてもよく、言及されなくてもよい。
一実施形態によれば、ハイパーレッジャファブリック(hyperledger fabric)は、高度の機密性、回復性、柔軟性、および拡張性を提供するモジュラアーキテクチャによって支持される分散型元帳ソリューションのプラットフォームである。ハイパーレッジャファブリックは、異なるコンポーネントのプラグ可能な実装をサポートし、実用のエコシステムに存在する複雑性および混雑性に適応するように設計される。
一実施形態によれば、ブロックチェーンネットワークは、ネットワーク上で行われている全てのトランザクションを記録する分散型元帳を含むことができる。
一実施形態によれば、情報の一貫した更新および特定の元帳機能(トランザクション、クエリなど)をサポートするために、ブロックチェーンネットワークは、スマートコントラクトを使用することによって、元帳へのアクセスを制御する。
一実施形態によれば、ネットワークの全体において元帳トランザクションを同期状態に保持する(例えば、適切な参加者がトランザクションを承認する場合のみ、元帳を更新し
、元帳を更新する場合、同様のトランザクションと共に同様の順序で元帳を更新することを保証する)ためのプロセスは、コンセンサスと称されてもよい。
一実施形態によれば、現在利用可能なトランザクションネットワークは、ビジネス記録を保持する時に存在していたバージョンのネットワークである。ビジネスネットワークのメンバが互いに取引をするが、各メンバは、各自の取引記録を管理する。同様に、品物を販売する企業がその品物の所有権を確認するための権原連鎖を保有することを保証するために、取引の対象物を販売する度に、出所を確認することができる。
ハイパーレッジャファブリックは、他のブロックチェーン技術と同様に、元帳を有し、スマートコントラクトを使用し、参加者がトランザクションを管理するシステムである。
一実施形態によれば、ハイパーレッジャファブリックは、2つのコンポーネント、すなわち、ワールドステートおよびトランザクションログを含む元帳サブシステムを有する。各参加者は、所属する全てのハイパーレッジャファブリックネットワークの元帳のコピーを有する。
ハイパーレッジャファブリックスマートコントラクトは、チェーンコードで書かれ、ブロックチェーンの外部のアプリケーションが元帳と対話する必要があるときに、そのアプリケーションによって呼び出される。殆どの場合、チェーンコードは、トランザクションログではなく、ワールドステートである元帳のデータベースコンポーネントのみと対話する(例えば、データベースを検索する)。
一実施形態によれば、トランザクションは、ネットワーク内の異なるセットの参加者の間に実行されても、実行される順序で元帳に書き込まれる。このため、トランザクションの順序が確立され、誤った(または悪意で)元帳に挿入される悪いトランザクションを拒否することができる。
一実施形態によれば、チェーンコードは、1つ以上の資産と、資産を変更するためのトランザクション命令(ビジネスロジック)とを定義するソフトウェアを含むことができる。チェーンコードは、キー値対または他の状態データベース情報を読み取るまたは変更するための規則を実行する。チェーンコードの機能は、元帳の現在の状態データベースに対して実行され、トランザクション提案によって作動される。チェーンコードの実行は、ネットワークに提出され、全てのピア上の元帳に適用される一組のキー値の書き込み(書き
込みセット)をもたらす。
一実施形態によれば、元帳は、ファブリック内の全ての状態遷移のひと続きの耐タンパー性の記録である。状態遷移は、参加者がチェーンコードを実行すること(トランザクション)によってもたらした結果である。各トランザクションは、作成、更新、または削除として元帳にコミットする一組の資産キー値対を生成する。
一実施形態によれば、ハイパーレッジャファブリックは、チャネルごとに不変の元帳、および資産の現在の状態を処理および変更する(すなわち、キー値対を更新する)ことができるチェーンコードを利用する。元帳は、チャネルの範囲に存在する。元帳は、(全ての参加者が1つの共通チャネル上で動作している場合)ネットワーク全体にわたって共有されてもよく、または特定組の参加者のみを含むように私有化されてもよい。
一実施形態によれば、ハイパーレッジャファブリックは、全ての参加者が既知のアイデンティティを有するトランザクションネットワークを提供する。パブリックキーインフラストラクチャを用いて、組織、ネットワークコンポーネント、およびエンドユーザまたはクライアントアプリケーションに関連付ける暗号化証明書を作成する。したがって、より広いネットワークおよびチャネル上でデータのアクセスを制御および管理することができる。ハイパーレッジャファブリックのこの「許可」概念は、チャネルの存在および特性と共に、プライバシおよび機密性が重要であるシナリオに対処することができる。
一実施形態によれば、分散型元帳において、コンセンサスは、単にトランザクションの順序に対する合意よりも多くのものを含むことができる。この区別は、提案およびエンドースメントから、順序付け、検証およびコミットメントまでのハイパーレッジャファブリックのトランザクションフロー全体における基本的な役割によって強調される。コンセンサスは、ブロックを含む一組のトランザクションの正当性の完全検証として定義される。
ときに、コンセンサスが最終的に達成される。これらのチェックおよびバランスは、トランザクション中に行われ、特定のトランザクションに署名しなければならない特定のメンバを決定するためのエンドースメントポリシの使用、およびこれらのポリシを実行および遵守することを保証するためのシステムチェーンコードを含む。コミットメントの前に、ピアは、これらのシステムチェーンコードを利用して、エンドースメントが確実に存在し且つ適切なエンティティからのものであることを確認することができる。また、トランザクションを含む任意のブロックを元帳に付加する前に、元帳の現在の状態に合意または同意している間に、バージョンチェックを実行する。この最終チェックは、データの完全性を損なう可能性のある二重使用および他の脅威に対する保護を提供すると共に、非静的変数に対する関数の実行を可能にする。
一実施形態によれば、クラウドシステム(例えば、ブロックチェーンクラウドサービス(BCS))などのシステムは、上述したハイパーレッジャファブリックを出発点として利用することができる。このようなシステムは、高度に進歩した特異なエンタープライズ級の分散型元帳クラウドプラットフォームを提供することによって、新しいブロックチェーンベースのアプリケーションの作成および/または既存のSaaS、PaaSおよびIaaS並びにオンプレミスアプリケーションの拡張を可能にする。
することによって、ユーザがブロックチェーンを配置、設定、管理および監視することおよびブロックチェーンを企業に配置するためのコストを低減することを可能にする。また、システムは、ブロックチェーンアプリケーションの開発および他のプラットフォームとの統合を加速する。このシステムによって、SaaSクラウド利用者は、ブロックチェーンクラウドプラットフォームを使用する第三者アプリケーションおよび外部分散型元帳技術を用いて、調達、支払、貿易金融、会計、HR、CXなどの企業プロセスのデータを安全に共有することができ、分散トランザクションを実行することができる。
ん公開/配布されると、本質的に順序付けられ、不変である(なお、現在ブロックのハッシュは、過去ブロックのハッシュと現在ブロック内の他のデータとのハッシュであるため、チェーン内のブロックをリンクする)。コンセンサスは、矛盾を解消することができる。集中型データベースまたは仲介人と比較して、集中型権威者に過度の権限を与える必要はない。また、元帳の分散性質は、分散コピーおよびコンセンサスを使用することによって、(アルゴリズム的に可能であっても)変更が難しいため、ブロックチェーン記録技術の基本的な不変性を強化する。したがって、トランザクションの順序が一定であるため、誰かがチェーンの最新のブロックのコピーを有する場合、元帳のハッキングは、ほぼ不可能である。
明書を配信するCAサーバを含むことができる。ファブリックCAは、証明書を利用して、認証および許可を実施することができる。証明書は、以下の2つの種類、すなわち、認証用登録証明書および認可用トランザクション証明書を含む。一実施形態によれば、IDCSなどのアイデンティティサービスは、認証および認可を提供することもできる。
上述したように、一実施形態において、本開示のシステムは、スマートコントラクトを実行するための分散型元帳プラットフォームを提供するハイパーレッジャファブリックを実装することができる。ハイパーレッジャファブリックは、コンテナ技術を利用して、システムのアプリケーションロジックを含む「チェーンコード」と呼ばれるスマートコントラクトをホストする。代替的な実施形態において、ブロックチェーンクラウドサービスは、例えば、2016年5月31日に出願され、参照により本明細書に組み込まれる米国特許出願第15/169622号「分散型元帳システムにおける説明責任および信用」に記載された「Tendermint」元帳システムを含む代替的な分散型元帳プラットフォームを実装する。
は、トランザクションを実行しないが、トランザクションをシミュレートし、署名することができる。ピアの種類/機能の分離は、システムの拡張性を改善する。オーダリングサービスは、署名済みトランザクションを受信し、ブロックに順序付け、ブロックをコミッタピアに送信することができる。このような分散型元帳システムにおいて、コンセンサスは、元帳に追加される次のトランザクションセットの合意を形成するプロセスである。ハイパーレッジャファブリックにおいて、コンセンサスは、3つの別個のステップ、すなわち、トランザクションのエンドースメント、順序付け、並びに検証およびコミットメントを含む。
を用いて、ピアコンテナ180にアクセスすることによって、エンドーサ182からの署名を要求する。2.1において、エンドーサ182は、署名済みRWセット(読み出し/書き込みセット)を返信する。3において、クライアント160のファブリックSDK162は、RWセットおよびエンドーサの署名を含む署名済みTX(トランザクション)を、オーダリングコンテナ190のオーダリングサービスに提出する。4において、オーダ(orderer)192は、TXバッチをピアコンテナ180内のコミッタ184に配信する
。オーダは、トランザクションをブロックに順序付けるノードの所定集合である。オーダリングサービスは、ピアプロセスとは無関係に存在し、先着順でネットワーク上の全てのチャネルのトランザクションを順序付ける。コミッタ184は、5および5.1において、元帳186およびワールドステート188を変更する。ファブリック認証局170を用いて、ピアコンテナ180、スマートコントラクトコンテナ166およびスマートコントラクト168、並びにオーダ192の署名および認可を確認することができる。さらに、スマートコントラクト168は、エンドーサ182と通信することができる。
として利用することができる。カフカは、セマンティクスの公開および加入をサポートする分散型ストリーミングサービスである。カフカクラスタは、複数のサーバ上で動作し、一連の記録をトピックと呼ばれるカテゴリに記憶する。各記録は、キー、値およびタイムスタンプを含む。したがって、カフカは、オーダリングサービスノード(OSN-n)およびカフカクラスタを含むオーダリングサービスとして使用されてもよい。オーダリングサービスクライアントは、複数のOSNに接続されてもよい。OSNは、互いに直接に通信しない。これらのオーダリングサービスノード(OSN)は、(1)クライアント認証を行い、(2)クライアントが簡単なインターフェイスを用いてチェーン1に書き込むことまたはチェーン1から読み取ることを可能にし、および(3)既存のチェーンを再構成するまたは新しいチェーンを作成するための構成トランザクションに対してトランザクションの選別および検証を行う。カフカ内のメッセージ(記録)は、トピックパーティションに書き込まれる。カフカクラスタは、複数のトピックを有してもよく、各トピックは、複数のパーティションを有してもよい。各パーティションは、継続的に付加される、順序づけられた不変のひと続きの記録である。OSNは、クライアント認証およびトランザクション選別を実行した後、特定のチェーンに所属する入来クライアントトランザクションを対応するチェーンのパーティションに中継することができる。次いで、クライアントトランザクションは、そのパーティションで実行され、全てのオーダリングサービスノードに対して共通なトランザクションの順序づけられたリストを返信することができる。
、新しいブロックが利用可能になるまで中止する。イベントハブから切り出した新しいブロックが利用可能になると、オーダは、このブロックをローカルブロックファイルまたはRAMに入れ、次に、元帳からこのブロックを読み出す配布スレッドをピアに返信する。ピアは、このブロックを入手し、ローカル元帳にコミットし、ブロックの最新バージョンを他のピアにブロードキャストすることができる。
図1Bは、ブロックチェーンサービスを提供するシステムのファブリックに行われたトランザクションフローを示す。より具体的には、図1Bは、一実施形態に従って、ブロックチェーンクラウドサービス(BCS)システムを示す。図示のように、ブロックチェーンクラウドサービスコンポーネントは、例えば、オラクルPaaSサービスマネージャ(PSM)プラットフォーム上で、計算スペース120(例えば、外部計算スペース)に作成される。システムへのアクセスは、PSM API122およびブロックチェーンREST API124によって仲介される。外部計算スペース120は、負荷分散サービスLBaaS(load balancing as a service)126を利用して、入来トランザクション
を利用可能なリソースに適切に分散する。
)コンポーネントを提供するコンテナである。BCSピアコンテナ132は、元帳コンポーネントに対して読み出し/書き込み動作を実行するために、元帳コンポーネントを管理し、チェーンコードコンテナを実行するためのBCSピアネットワークエンティティが動作するコンテナである。BCSオーダコンテナ134は、トランザクションを全てのチャネルのブロックチェーンに順序付けるためのBCSオーダが動作するコンテナである。BCSチェーンコード実行コンテナ139は、ピアエンティティによって作成され、作動されるコンテナである。コンテナにおいて、チェーンコード実行ユニットは、親ピアエンティティと通信し、資産とブロックチェーン内の資産を変更するためのトランザクション命令との符号化を実行する。
一実施形態によれば、BCSゲートウェイ(BCSGW)は、ファブリックSDKを用いて、ファブリックネットワークと通信するネットワークノードを含む。BCSゲートウェイは、HTTPS REST APIをクライアント側利用者に提供することによって、クライアントアプリケーションとBCSのファブリック要素との対話を可能にする。
していないことを認識することができる。ゲートウェイは、トランザクションを継続して処理するために、バックグラウンドスレッドを起動する。クライアントは、未完了トランザクションを追跡することができる。ゲートウェイは、クライアントがトランザクションIDを用いてトランザクション状態をクエリするための「トランザクション」APIを提供することができる。
一実施形態によれば、ハイパーレッジャファブリックプロジェクトコードは、元帳をローカルファイルシステムに格納するためのブロック、および他のランタイムデータ、例えば、ブロックインデックス、ワールドステート、履歴、および(全ての元帳IDおよび回復ステータスを保持する)元帳プロバイダデータベースを同一のローカルファイルシステムに格納されているレベルDBに格納するためのブロック含む。ACCSにおいて、コンテナファイルシステムは、一過性である。これは、何らかのハードウェア障害によって、コンテナが停止され、新しいVM上で新しいコンテナが再起動される場合、ファイルシステムの内容が失われる可能性があることを意味する。全てのコンテナが失われた場合、元帳を回復することができない。したがって、元帳データをACCSコンテナの外部に格納しなければならない。このため、永続化ソリューションは、上述したハイパーレッジャファブリックのコンポーネントによって使用されるオブジェクト格納サービスとして提供される。
ジョンがオーダのバージョンよりも大きい場合、オーダの元帳が無くしており、イベントハブ(EventHub)から回復することができないことを示すエラーをピアに返信する(このシナリオにおいて、オーダは、適切な動作を継続することができない)。b)ピアのバージョンがオーダのバージョンより小さい場合、オーダは、RAMまたはローカルファイル内のローカル元帳からブロックを取り出し、ピアに返信する。c)両者が同様のバージョンを有する場合、オーダは、新しいブロックが利用可能になるまで遮断する。イベントハブから切り出した新しいブロックが利用可能になると、オーダは、このブロックをローカルブロックファイルまたはRAMに入れ、次に、元帳からこのブロックを読み出す配布スレッドをピアに返送する。ピアは、このブロックを入手し、ローカル元帳にコミットし、ブロックの最新バージョンを他のピアにブロードキャストすることができる。
ックデータが失われると、ピアは、オーダから他のブロックデータを読み取ることができる。
一実施形態によれば、設定ファイルおよび配置機能は、ピア、オーダ、CAサーバ、およびチェーンコードを含むアプリケーションを配置または更新するときに、アプリケーションに関する設定を配置、生成、更新、および取得する。これらの機能は、BCSコンソール(Node.js)およびファブリックコンテナ(ピア/オーダ/チェーンコードコンテナ
)の両方に常駐する。UIから要求されると、これらの機能は、設定を取得/更新し、必要に応じてSDK APIを呼び出すことによって、設定を変更する。BCSコンソールバックエンドの一部としてのこのコンポーネントは、BCSコンソールUI、IDCSバックエンドSDK、および全てのBCSアプリケーションと対話することによって、UIを操作するためSDKを提供し、要求された設定を取得/更新する。また、このコンポーネントは、BCSアプリケーションの作成を補助する。BCS作成コンポーネントは、BCSアプリケーションを、PSMを用いて作成されたVMのドッカ(docker)コンテナに配置する。この特徴は、BCSコンソールUIのSDK APIを実装し、BCS作成コ
ンポーネントは、後期作成段階において、BCSアプリケーション構成を取得または更新し、配置する。作成システムは、後期作成段階において、CAサーバ、オーダ、ピアなどのBCSアプリケーションをドッカ/スウォーム(swarm)に配置する。VMは、起動時
に、起動スクリプトを呼び出すことによって、後期作成作業およびVM初期作業を行う。
BCSアプリケーションコンテナが起動されると、まず、(各ドッカコンテナ内の)起動スクリプトが起動し、その後、アプリケーションの種類に関する設定を取得し、IDCS(シェル)からアプリ証明書を取得する。BCSコンソールUIは、BCSアプリケーションを再起動する場合、コンテナ内のアプリケーションを再起動するためのメッセージをドッカ/スウォームに送信する。
ージサービスから取得される。設定が変更されると、BCSコンソールは、バックエンドAPIを呼び出すことによって、設定をストレージサービスに保存し、関連するアプリケーションを再起動する。クライアントがBCSコンソールUIを介して設定項目を変更すると、UIは、設定をキー/値データにエンコードし、バックエンドコードは、それをファイルに変換し、ストレージサービスに保存する。BCSコンソールは、BCSアプリケーションを監視、起動および停止することができる。起動コマンドおよび停止コマンドは、ドッカ/スウォームAPIを用いて、この機能を実現する。
一実施形態によれば、ファブリックネットワークは、以下のエンティティ、すなわち、ピア、クライアント、オーダリングサービス、およびこれらのエンティティ間の通信を容易にするためのプロトコルセットを含む。組織は、ファブリックネットワークの関係者を構成する論理エンティティまたは企業である。ファブリックネットワークは、複数の参加組織を有する。メンバは、ネットワークの固有のルート証明書を所有する法的に独立するエンティティである。ピアノードおよびアプリケーションクライアントなどのネットワークコンポーネントは、メンバにリンクされる。各組織は、1つ以上のメンバを有してもよい。1つの組織は、オーダおよびピアの両方を構成することができ、オーダのみまたはピアのみを構成することができる。
ファブリックネットワークを起動する。オーダリングサービス(従って1つのファブリックネットワーク)のためにシステムチャネルが1つのみであるため、作成される(より正確には起動される)システムチャネルは、第1のチャネルである。システムチャネルは、ファブリックネットワークの以下の構成、すなわち、1つのオーダリングサービスと、1つ以上のコンソーシアムとを定義する。1つのオーダリングサービスは、1つ以上のオーダ組織(各組織は、MSP IDおよび証明書を含む)と、オーダリングサービスの属性(例えば、ソロまたはカフカなどの種類、オーダのアドレス、バッチサイズ/タイムアウト)と、(チャネルを作成するための)ポリシとを含む。各コンソーシアムは、1つ以上のピア組織を含み、このファブリックネットワークに参加することを望む各ピア組織は、コンソーシアムのうちの1つにおいて定義されなければならない。各組織は、MSP ID、証明書およびアンカーピアを含む。
よく、またはオーダ起動時に(一時的に)作成されてもよい。設定ファイル生成ツールを用いてジェネシスブロックを作成する場合、入力としての設定ファイルconfigtx.yamlを
作成しなければならない。このファイルは、以下の情報、すなわち、ファブリックネットワーク内の全てのオーダ組織のルート証明書と、全てのピア組織のルート証明書と、オーダの種類、アドレス、バッチタイムアウト、バッチサイズおよびカフカを含むオーダリングサービスの属性と、ポリシと、チャネル配信要求を認証および検証するためのチャネルリーダと、チャネルブロードキャスト要求を認証および検証するチャネルライタと、チェーン作成要求を評価するためのチェーン作成者と、チャネル再構成要求を認証および検証するための管理者とを含む。
図4は、BCS上のファブリックの例示的な配置を示す。
ィは、オフラインで議論し、様々なエンティティの責任を決定する。各エンティティは、OPC上で1つ以上のBCSインスタンスを作成する。
一実施形態によれば、上述したように、チェーンコードは、1つ以上の資産と、資産を変更するためのトランザクション命令(ビジネスロジック)とを定義するソフトウェアを含むことができる。チェーンコードは、キー値対または他の状態データベース情報を読み取るまたは変更するための規則を実行する。チェーンコードの機能は、元帳の現在の状態データベースに対して実行され、トランザクション提案によって作動される。チェーンコードの実行は、ネットワークに提出され、全てのピア上の元帳に適用される一組のキー値の書き込み(書き込みセット)をもたらす。
するときに、クライアント530は、ビルダエージェントを自動的に起動するビルダコンテナを起動し、ビルダコンテナが初期化を終了するのを待って、ピアを介してチェーンコードのソースコードをビルダコンテナに送信する(ステップ2)。ビルダエージェントは、チェーンコード(Javaビルド)を構築する。チェーンコードをソースコードとしてビルダコンテナに転送し、静的にリンクされた必要なライブラリ(「Javaビルド」)でコンパイルし、バイナリとしてピアに返送する。静的なリンクは、実際のチェーンコードコンテナをできる限り小さくすることを可能にする。チェーンコードパッケージ(tgzファイル)は、いったん構築されると、クラウドストレージ560にアップロードされる(ステップ3)。ビルダエージェントは、後で参照するために、クラウド記憶位置をピアに送信する(ステップ4.2)。
上述したように、BCSの各インスタンスは、管理コンソールを含み、管理コンソールを用いて、BCSゲートウェイ、BCSノード、およびBCSチャネルを含むBCSインスタンスを管理および監視することができる。
ブアプリケーションは、グラフィカルユーザインターフェイスフレームワークおよびウェブフレームワーク上で構築することができ、BCSインスタンス内の様々なノードまたはサービスと通信するための複数のカスタム機能またはAPIを含むことができる。ウェブアプリケーションは、BCSインスタンス内の様々なノードまたはサービスからの情報をビューオブジェクトに読み込み、コンソールユーザインターフェイスに表示することができる。また、管理コンソールは、BCSインスタンス内の1つ以上のノードを起動、停止、および更新するための機能を管理者に提供することができる。管理REST APIセットは、ウェブアプリケーションによって提供された機能と同様の機能をサポートするために、スクリプトランタイム環境によって提供されてもよく、またはスクリプトランタイム環境によってアクセスされてもよい。
図示のように、BCS管理コンソール136は、アプリケーションコンテナクラウドサービス128内のBCSインスタンスのコンポーネントとして提供されてもよい。BCS管理コンソールは、Node.jsによって提供されるランタイム環境であるスクリプトランタ
イム環境605に動作するウェブアプリケーションであってもよい。
)617およびウェブフレームワーク(例えば、express)619をさらに含むことがで
きる。GUIフレームワークは、管理コンソールウェブアプリケーションにおいて使用され得る様々なユーザインターフェイス(UI)コンポーネントおよび要素を提供することができる。例えば、UIコンポーネントおよび要素を用いて、フォームを作成し、データを収集し、データを視覚化することができる。ウェブフレームワークは、JAVAスクリプト(登録商標)で書かれることができ、ウェブアプリケーションおよびモバイルアプリケーションを開発するための一組のロバストな特徴を含むウェブアプリケーションフレームワークを提供することができる。
一実施形態によれば、2つのエンティティ、すなわち、BCS管理者およびBCSユーザは、管理コンソールを用いて、BCSインスタンスを管理することができる。各BCSインスタンスに対してBCS管理者アカウントが1つのみである。BCS管理者アカウントは、BCSインスタンスを作成するときに作成されてもよい。BCS管理者は、ファブリックCA管理者にバンドルされてもよい(すなわち、BCS管理者は、ファブリックCA管理者IDを使用して、BCSコンソールからまたはBCS管理REST APIを介して、全ての動作を実行する)。BCSユーザアカウントが2つ以上であってもよい。BCSユーザアカウントは、BCS管理者によって、ファブリックCAアイデンティティを登録することによって作成されてもよい。
1)チャネル:現在のゲートウェイノードを介して公開するチャネルを選択する。
2)チェーンコード:各チャネルにインスタンス化された全てのチェーンコードのリストから、公開するインスタンス化チェーンコードを選択する。
3)エンドーサ:各チェーンコードのエンドーサピアを定義する。
4)上記の設定に従ってBCSゲートウェイ設定を作成する。BCSゲートウェイの有効な設定ファイルが作成されると、ゲートウェイを起動することができる。
1)名前:ゲートウェイを作成する時に指定されたグローバル固有名。
2)ファブリック識別名:各BCSゲートウェイは、BCSゲートウェイを作成するとき
に登録されるファブリッククライアントの識別情報に関連付けることができる。このファブリッククライアントは、BCSゲートウェイによって実行される全ての動作(例えば、呼び出し、クエリ)を実行することができる。
3)ネットワークアドレス:アクセスポイントは、公衆インターネットワークアドレスを有する。
4)状態:作動中または停止中。
1)接続されているクライアント:クライアント名、アドレス、ログオン時間など。
2)現在のトランザクション情報:現在のトランザクション情報は、状態情報、すなわち、トランザクションの状態と共に利用可能である。現在のトランザクション情報は、フリーズしたトランザクションをデバッグするときに有用である。
3)トランザクション統計:トランザクション統計は、管理コンソールUIを介して利用可能である。例えば、トランザクション統計は、完了したトランザクションの数、受信したイベント通知の数、および送信したイベント通知の数を含むことができる。
4)メモリの使用率。
5)CPUの使用率。
6)ネットワークI/O。
7)ディスクI/O。
一実施形態によれば、BCSユーザは、現在のBCSインスタンスが参加している全てのチャネルをリストすることができる。BCS管理者は、チャネル名、コンソーシアム名、および1つ以上の組織名を入力とするチャネルを作成することができる。また、チャネル作成の成功または失敗を示すように、出力を表示することができる。
ドを更新することができる。更新動作は、以下の入力、すなわち、新しいバージョンのインストール済みチェーンコードを含むターゲットエンドーサピア、1つ以上のオーダ、チェーンコードバージョン、およびチェーンコードに固有の文字列引数であり得る選択的な引数を使用することができる。更新動作の出力は、成功であってもよく、またはエラーメッセージを含む失敗であってもよい。
一実施形態によれば、BCS管理者は、現在のBCSインスタンスの任意のピアにインストールされた全てのチェーンコードをリストすることができる。リストされた項目は、チェーンコードIDおよびバージョンを含む。また、BCS管理者は、インストール済みチェーンコードの以下の情報、すなわち、チェーンコードをインストールしたローカルピアノード、およびチェーンコードをインスタンス化したチャネルを閲覧することができる。
一実施形態によれば、BCS管理者は、現在のBCSインスタンス内の全てのIDをリストすることができ、現在のBCSインスタンスに新しいユーザ/IDを登録することができ、登録したIDを解除することができ、現在のBCSインスタンスからユーザを削除することができる。また、BCS管理者は、表1に示すように、識別情報の以下の属性を閲覧/編集することができる。
または再登録することを可能にする。これによって、ユーザの秘密キーおよび証明書を作成することができる。また、BCS管理者は、管理コンソールを介して、以前に登録されていたIDを無効化することができ、BCSユーザは、管理コンソールを介して、パスワードを変更することができる。
上述したように、ファブリックネットワーク内の異なるコンポーネントは、gRPCプロトコルに基づいて通信する。したがって、ファブリックネットワークに基づくBCSインスタンスの場合、クライアントアプリケーションは、ファブリックSDKを用いて、BCSインスタンス内のチェーンコードを呼び出す必要がある。
に許可されたか否かを判断することができる。
一実施形態によれば、BCSインスタンスのREST APIを呼び出す前に、RESTプロキシを起動して、動作させる必要がある。管理コンソールを介して、RESTプロキシの状態をチェックすることができる。RESTプロキシが立ち上げられておらず、動作していない場合、管理コンソールからRESTプロキシを作動する必要がある。
APIを介して指定される。トランザクションステータスの取得というREST APIは、チャネルにクエリすることによって、トランザクションのステータスを取得する。チャネルおよびトランザクションIDは、REST APIを介して指定される。BCSゲートウェイバージョンの取得というREST APIは、ゲートウェイバージョン情報を返信する。
一実施形態によれば、ファブリックCAサーバは、ファブリックメンバシップサービスを提供する。ファブリックメンバシップサービスは、以下の3つの部分、すなわち、ユーザの認証、ブロックチェーン(ピアおよびオーダのグループ)にアクセスするための許可、および証明書をアプリケーションクライアント、ピアおよびオーダに配信するためのCAサーバを含む。ファブリックCAは、証明書を使用して、認証および認可を実施する。証明書は、以下の2種類、すなわち、認証を行うための登録証明および認可を行うためのトランザクション証明を含む。また、IDCSも認証および認可を提供する。しかしながら、この認可は、OAuthによって実施される。すなわち、ピアは、オーダにアクセスしたい場合、IDCSからユーザのアクセストークンを取得し、このトークンを用いてオーダにアクセスする。
書、およびユーザの所属を保存する。パブリッククラウド(OPC)のエンドユーザは、従業員を管理するための1つの集中型IDCSインスタンスを利用して、従業員が利用した全てのパブリッククラウド(OPC)インスタンスにアクセスする。ブロックチェーンクラウドサービスBCSは、好ましくは、他のクラウドサービスに使用されるIDCSと一体化される。したがって、エンドユーザは、従業員を管理するための1つの集中型IDCSインスタンスを利用して、従業員が利用した(BCSを含む)全てのパブリッククラウド(OPC)インスタンスにアクセスすることができる。
る。
ができる。メンバシップサービスは、IDCS902からユーザの証明書を取得することができ、IDCSからの証明書を用いてユーザの署名を検証することができる。次いで、メンバシップサービスは、署名が検証済みという証明をピアに返信することができる。
一実施形態によれば、分散型元帳におけるDAGベースのトランザクション処理システムおよび方法を導入することができる。このモデルは、スループット性能を改善することができる。追加の重みメカニズムを用いて、様々なビジネス要件に基づいて最終性能を調節することができる。線形構造を使用した既存の作業とは異なり、より良好な性能を達成することができる。
きる。
いて変更される何らかのキーに依存する場合、トランザクション#1および#2は、競合していると見なされる。トランザクション#1と#2の間に辺(edge)を描画することができる。一連のトランザクションに対していくつかのDAGを描画することができる。
フを示す。
・C(#1,#2,#3)=#6
・C(#4,#5)=#7
・C(#6,#7)=#8
一実施形態によれば、上記の競合関係は、トランザクション#6がトランザクション#1、#2および#3と競合しているとして理解することができる。同様に、トランザクション#7は、トランザクション#4および#5と競合しており、トランザクション#8は、トランザクション#6および#7と競合している。
。
・C(#1,#2,#3)=#6
・C(#4,#5)=#7
・C(#3,#6,#7)=#8
一実施形態によれば、上記の競合関係は、トランザクション#6がトランザクション#1、#2および#3と競合しているとして理解することができる。同様に、トランザクション#7は、トランザクション#4および#5と競合しており、トランザクション#8は、トランザクション#3、#6および#7と競合している。
は、図に示される。図示では、コミット対象に選択されたトランザクションは、太い輪郭を有し、コミット対象に選択されないトランザクションは、破線で示されている。
・C(#1,#2,#3)=#6
・C(#4,#5)=#7
・C(#3,#6,#7)=#8
・C(#9,#10,#11,#13)=#14
・C(#11、#12)=#13
一実施形態によれば、この例に引き続き、自動的にまたは管理者によって設定された、初期重み「2」を有するトランザクション#10および初期重み「5」を有するトランザクション#13を除き、各トランザクションの重みが「1」に等しいと仮定する。
た順序と異なる順序で実行される。例えば、連続して示された2つのブロックは、関与する機能に応じて、実質的に同時に実行されてもよく、または逆の順序で実行されてもよい。フローチャートおよび/またはブロック図の各ブロック、またはフローチャートおよび/またはブロック図のブロックの組み合わせは、指定された機能を実行するコンピュータプログラム命令、および/または専用ハードウェア、および/またはハードウェアとコンピュータプログラム命令との組み合わせによって実装されてもよい。
第1項
分散型元帳における有向非循環グラフ(DAG)ベースのトランザクション処理システムであって、エンタープライズ級の分散型元帳フレームワークと、分散型元帳ファブリッ
クとを備え、当該分散型元帳ファブリックは、複数のトランザクションを処理し、競合検出器を備え、当該競合検出器は、複数のトランザクション間の複数の競合を検出し、ランキングジェネレータを備え、当該ランキングジェネレータは、複数の初期重みパラメータのうちの1つの初期重みパラメータを複数のトランザクションのうちの各トランザクションに追加し、当該ランキングジェネレータは、DAGを生成し、当該DAGの少なくとも1つの頂点は、ランキング値を含み、トランザクションピッカーを備え、当該トランザクションピッカーは、生成されたDAGに基づいて、複数のトランザクションから、コミット対象のトランザクションセットを選択する。
複数の初期重みパラメータは、入力を介して提供される、第1項に記載のシステム。
複数の初期重みパラメータは、自動的に導出される、第1項に記載のシステム。
複数の初期重みパラメータは、少なくとも複数のトランザクションの各々の相対重要度に基づいて導出される、第3項に記載のシステム。
生成されたDAGは、複数のトランザクションの各々のランキングを計算し、当該計算された複数のトランザクションの各々のランキングは、トランザクションに割り当てられた初期重みパラメータまたは修正重みパラメータのうちの1つである、先行する項のいずれか一項に記載のシステム。
各修正重みパラメータは、対象トランザクションの初期重みパラメータと、対象トランザクションと競合するトランザクションの少なくとも1つのランキングとに基づいて計算される、第5項に記載のシステム。
コミット対象の複数のトランザクションセット内の各トランザクションは、競合しない、第1項から第6項のいずれか一項に記載のシステム。
分散型元帳における有向非循環グラフ(DAG)ベースのトランザクション処理方法であって、エンタープライズ級の分散型元帳フレームワークにおいて、分散型元帳ファブリックを提供することを含み、当該分散型元帳ファブリックは、複数のトランザクションを処理し、競合検出器が、複数のトランザクション間の複数の競合を検出することと、ランキングジェネレータが、複数の初期重みパラメータのうちの1つの初期重みパラメータを複数のトランザクションのうちの各トランザクションに追加することとを含み、当該ランキングジェネレータは、DAGを生成し、当該DAGの少なくとも1つの頂点は、ランキング値を含み、トランザクションピッカーが、生成されたDAGに基づいて、複数のトランザクションから、コミット対象のトランザクションセットを選択することを含む。
複数の初期重みパラメータは、入力を介して提供される、第8項に記載の方法。
複数の初期重みパラメータは、自動的に導出される、第8項に記載の方法。
複数の初期重みパラメータは、少なくとも複数のトランザクションの各々の相対重要度に基づいて導出される、第10項に記載の方法。
当該生成されたDAGは、複数のトランザクションの各々のランキングを計算し、当該計算された複数のトランザクションの各々のランキングは、トランザクションに割り当てられた初期重みパラメータまたは修正重みパラメータのうちの1つである、第8項から第11項のいずれか一項に記載の方法。
各修正重みパラメータは、対象トランザクションの初期重みパラメータと、対象トランザクションと競合するトランザクションの少なくとも1つのランキングとに基づいて計算される、第12項に記載の方法。
コミット対象の複数のトランザクションセット内の各トランザクションは、競合しない、第8項から第13項のいずれか一項に記載の方法。
分散型元帳における有向非循環グラフ(DAG)ベースのトランザクション処理命令を担持するコンピュータ可読媒体であって、当該命令は、読み出されて実行されると、1つ以上のコンピュータに、以下を含むステップを実行させ、当該ステップは、
競合検出器が、複数のトランザクション間の複数の競合を検出することと、
ランキングジェネレータが、複数の初期重みパラメータのうちの1つの初期重みパラメータを複数のトランザクションのうちの各トランザクションに追加することとを含み、当該ランキングジェネレータは、DAGを生成し、当該DAGの少なくとも1つの頂点は、ランキング値を含み、
トランザクションピッカーが、生成されたDAGに基づいて、複数のトランザクションから、コミット対象のトランザクションセットを選択することを含む。
複数の初期重みパラメータは、入力を介して提供される、第15項に記載のコンピュータ可読媒体。
複数の初期重みパラメータは、自動的に導出される、第15項に記載のコンピュータ可読媒体。
複数の初期重みパラメータは、少なくとも複数のトランザクションの各々の相対重要度に基づいて導出される、第17項に記載のコンピュータ可読媒体。
当該生成されたDAGは、複数のトランザクションの各々のランキングを計算し、
当該計算された複数のトランザクションの各々のランキングは、トランザクションに割り当てられた初期重みパラメータまたは修正重みパラメータのうちの1つである、第15項から第18項のいずれか一項に記載のコンピュータ可読媒体。
各修正重みパラメータは、対象トランザクションの初期重みパラメータと、対象トランザクションと競合するトランザクションの少なくとも1つのランキングとに基づいて計算される、第19項に記載のコンピュータ可読媒体。
Claims (9)
- 分散型元帳における有向非循環グラフ(DAG)ベースのトランザクション処理を行うための方法であって、
コンピュータが、分散型元帳フレームワークにおいて、ブロックチェーン元帳を提供することを含み、前記ブロックチェーン元帳は、複数のブロックを含み、各ブロックは、複数のトランザクションのうち、少なくとも1つのトランザクションの記録を含み、
前記コンピュータが、複数の新しいトランザクションを前記ブロックチェーン元帳にコミットする命令を受信すると、前記複数の新しいトランザクション間の競合を検出することを含み、前記複数の新しいトランザクションの各々は、初期重みパラメータに関連付けられ、
前記コンピュータが、互いに競合関係を有するトランザクション間にエッジを描画することにより、前記複数の新しいトランザクションの各々を含む有向非循環グラフを生成することと、
前記コンピュータが、前記生成された有向非循環グラフの前記エッジに基づいて、前記初期重みパラメータの少なくとも1つを修正することと、
前記コンピュータが、前記初期重みパラメータおよび修正された重みパラメータに基づいて、前記複数の新しいトランザクションの中から一組のトランザクションを選択し、前記一組のトランザクションを前記ブロックチェーン元帳の少なくとも1つの新しいブロックに記録することとを含む、方法。 - 前記初期重みパラメータの少なくとも1つは、入力を介して提供される、請求項1に記載の方法。
- 前記初期重みパラメータの少なくとも1つは、前記関連付けられた新しいトランザクションに示される、請求項1に記載の方法。
- 前記有向非循環グラフの生成中に、前記複数の新しいトランザクションのうちの第1のトランザクションの前記修正された重みパラメータは、前記第1のトランザクションの前記初期重みパラメータと、前記第1のトランザクションと競合する第2のトランザクションの前記初期重みパラメータとに基づいて計算される、請求項1に記載の方法。
- 分散型元帳における有向非循環グラフ(DAG)ベースのトランザクション処理を行うためのシステムであって、
ブロックチェーン元帳を含む分散型元帳フレームワークを備え、前記ブロックチェーン元帳は、複数のブロックを含み、各ブロックは、複数のトランザクションのうち、少なくとも1つのトランザクションの記録を含み、
複数の新しいトランザクションを前記ブロックチェーン元帳にコミットする命令を受信すると、前記複数の新しいトランザクション間の競合を検出し、前記複数の新しいトランザクションの各々は、初期重みパラメータに関連付けられ、
互いに競合関係を有するトランザクション間にエッジを描画することにより、有向非循環グラフを生成し、前記有向非循環グラフは、前記複数の新しいトランザクションの各々を含み、
前記生成された有向非循環グラフの前記エッジに基づいて、前記初期重みパラメータの少なくとも1つを修正し、
前記初期重みパラメータおよび修正された重みパラメータに基づいて、前記複数の新しいトランザクションの中から一組のトランザクションを選択し、前記一組のトランザクションを前記ブロックチェーン元帳の少なくとも1つの新しいブロックに記録する、システム。 - 前記初期重みパラメータの少なくとも1つは、入力を介して提供される、請求項5に記載のシステム。
- 前記初期重みパラメータの少なくとも1つは、前記関連付けられた新しいトランザクションに示される、請求項5に記載のシステム。
- 前記有向非循環グラフの生成中に、前記複数の新しいトランザクションのうちの第1のトランザクションの前記修正された重みパラメータは、前記第1のトランザクションの前記初期重みパラメータと、前記第1のトランザクションと競合する第2のトランザクションの前記初期重みパラメータとに基づいて計算される、請求項5に記載のシステム。
- 請求項1から4のいずれか1項に記載の方法をコンピュータに実行させるためのコンピュータプログラム。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862722595P | 2018-08-24 | 2018-08-24 | |
US62/722,595 | 2018-08-24 | ||
US16/261,371 | 2019-01-29 | ||
US16/261,371 US11182379B2 (en) | 2018-08-24 | 2019-01-29 | DAG based methods and systems of transaction processing in a distributed ledger |
JP2021510064A JP7133706B2 (ja) | 2018-08-24 | 2019-02-01 | 分散型元帳におけるdagベースのトランザクション処理方法およびシステム |
PCT/US2019/016341 WO2020040809A1 (en) | 2018-08-24 | 2019-02-01 | Dag based methods and systems of transaction processing in a distributed ledger |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021510064A Division JP7133706B2 (ja) | 2018-08-24 | 2019-02-01 | 分散型元帳におけるdagベースのトランザクション処理方法およびシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022174127A JP2022174127A (ja) | 2022-11-22 |
JP7454616B2 true JP7454616B2 (ja) | 2024-03-22 |
Family
ID=69587067
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021510064A Active JP7133706B2 (ja) | 2018-08-24 | 2019-02-01 | 分散型元帳におけるdagベースのトランザクション処理方法およびシステム |
JP2022136003A Active JP7454616B2 (ja) | 2018-08-24 | 2022-08-29 | 分散型元帳におけるdagベースのトランザクション処理方法およびシステム |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021510064A Active JP7133706B2 (ja) | 2018-08-24 | 2019-02-01 | 分散型元帳におけるdagベースのトランザクション処理方法およびシステム |
Country Status (5)
Country | Link |
---|---|
US (3) | US11182379B2 (ja) |
EP (1) | EP3841489B1 (ja) |
JP (2) | JP7133706B2 (ja) |
CN (1) | CN112602076A (ja) |
WO (1) | WO2020040809A1 (ja) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10788998B2 (en) | 2017-07-07 | 2020-09-29 | Sap Se | Logging changes to data stored in distributed data storage system |
US10915521B2 (en) * | 2018-08-21 | 2021-02-09 | Syniverse Technologies, Llc | Blockchain gateway device and associated method of use |
US11182379B2 (en) | 2018-08-24 | 2021-11-23 | Oracle International Corporation | DAG based methods and systems of transaction processing in a distributed ledger |
JP7051648B2 (ja) * | 2018-09-05 | 2022-04-11 | 株式会社日立製作所 | 電子取引装置、電子取引検証装置、及び電子取引方法 |
US11720545B2 (en) * | 2018-12-19 | 2023-08-08 | International Business Machines Corporation | Optimization of chaincode statements |
PL3542494T3 (pl) * | 2018-12-29 | 2021-08-23 | Advanced New Technologies Co., Ltd. | System i sposób realizacji umowy wewnętrznej w łańcuchu bloków |
US10733152B2 (en) * | 2018-12-29 | 2020-08-04 | Alibaba Group Holding Limited | System and method for implementing native contract on blockchain |
US11934425B1 (en) * | 2019-02-04 | 2024-03-19 | Harbor Technologies, LLC | Synchronizing a centralized state on a distributed chain database with an off-chain state to improve trade authorization practices |
SG11201908890XA (en) | 2019-03-26 | 2019-10-30 | Alibaba Group Holding Ltd | System and method for implementing different types of blockchain contracts |
US11416548B2 (en) * | 2019-05-02 | 2022-08-16 | International Business Machines Corporation | Index management for a database |
US11777738B2 (en) * | 2019-06-04 | 2023-10-03 | International Business Machines Corporation | Metadata-based endorsement |
US11048693B2 (en) * | 2019-06-05 | 2021-06-29 | International Business Machines Corporation | Resolution of ordering inversions |
CN110532115B (zh) * | 2019-09-04 | 2021-03-05 | 北京海益同展信息科技有限公司 | 用于开发智能合约的系统、方法和装置 |
CN111352998B (zh) * | 2020-02-28 | 2021-09-21 | 中国计量科学研究院 | 一种可信联盟区块链数字校准证书系统及其操作方法 |
CN111506783B (zh) * | 2020-04-08 | 2023-12-22 | 百度在线网络技术(北京)有限公司 | 区块链中事务请求处理方法、装置、设备和介质 |
US11470158B2 (en) * | 2020-07-14 | 2022-10-11 | The Travelers Indemnity Company | Systems and methods for asynchronous API-driven external application services for a blockchain |
CN115398397A (zh) * | 2020-08-03 | 2022-11-25 | 支付宝(杭州)信息技术有限公司 | 区块链交易处理系统和方法 |
EP3977390B1 (en) * | 2020-08-03 | 2023-12-06 | Alipay (Hangzhou) Information Technology Co., Ltd. | Blockchain transaction processing systems and methods |
US11917088B2 (en) * | 2020-09-21 | 2024-02-27 | International Business Machines Corporation | Integrating device identity into a permissioning framework of a blockchain |
US11301463B1 (en) * | 2020-10-09 | 2022-04-12 | Blockpoint Systems Inc. | Multi-version database management system |
CN112256388A (zh) * | 2020-10-15 | 2021-01-22 | 深圳壹账通智能科技有限公司 | 基于容器的区块链网络部署方法、装置、设备及存储介质 |
US11822538B2 (en) | 2020-11-05 | 2023-11-21 | Oracle International Corporation | Systems and methods of transaction identification generation for transaction-based environment |
US11847710B2 (en) * | 2020-12-23 | 2023-12-19 | International Business Machines Corporation | Contract analytic binding and provenance |
CN113254419B (zh) * | 2021-01-19 | 2022-05-03 | 深圳市神州通在线科技有限公司 | 一种基于大数据微服务的物联网云平台管理系统及方法 |
US20220294788A1 (en) * | 2021-03-09 | 2022-09-15 | Oracle International Corporation | Customizing authentication and handling pre and post authentication in identity cloud service |
CN113704745A (zh) * | 2021-08-25 | 2021-11-26 | 史云凌 | 一种基于角色权限的utxo授权及证书管理的方法和系统 |
CN113805899B (zh) * | 2021-08-25 | 2024-01-26 | 浪潮卓数大数据产业发展有限公司 | 一种软件自动部署方法 |
CN114168685B (zh) * | 2021-12-15 | 2023-07-18 | 北京天德科技有限公司 | 一种基于区块链系统的新型数据库架构及运行方法 |
CN115037472B (zh) * | 2022-03-28 | 2023-06-23 | 湖南天河国云科技有限公司 | 基于双层dag共识机制的交易处理方法及系统、服务设备 |
CN114827165B (zh) * | 2022-05-30 | 2024-01-23 | 蚂蚁区块链科技(上海)有限公司 | 对多个交易进行分组的方法和区块链节点 |
US20240119041A1 (en) * | 2022-10-11 | 2024-04-11 | Oracle International Corporation | User-specified chains & row versions in a blockchain table |
CN116722966B (zh) * | 2023-07-26 | 2024-03-12 | 云南大学 | 一种基于dag预言机网络的高效可信链下数据馈送方法 |
CN116846916B (zh) * | 2023-09-01 | 2023-12-08 | 武汉趣链数字科技有限公司 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
CN116978509B (zh) * | 2023-09-22 | 2023-12-19 | 山东百康云网络科技有限公司 | 一种电子处方流转方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010510590A (ja) | 2006-11-17 | 2010-04-02 | マイクロソフト コーポレーション | ソフトウェアトランザクションのコミット順序および競合の管理 |
WO2017040313A1 (en) | 2015-08-28 | 2017-03-09 | Swirlds, Inc. | Methods and apparatus for a distributed database within a network |
JP2017520844A (ja) | 2014-06-26 | 2017-07-27 | アマゾン・テクノロジーズ・インコーポレーテッド | マルチアイテムトランザクションサポートを有するマルチデータベースログ |
JP2018511886A (ja) | 2015-04-01 | 2018-04-26 | アビニシオ テクノロジー エルエルシー | 分散型コンピューティングシステムにおけるデータベーストランザクションの処理 |
WO2018141792A1 (en) | 2017-01-31 | 2018-08-09 | Sony Corporation | Apparatus and method for providing a virtual device |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9253016B2 (en) | 2010-11-02 | 2016-02-02 | International Business Machines Corporation | Management of a data network of a computing environment |
US20130046894A1 (en) | 2011-08-18 | 2013-02-21 | Sap Ag | Model-driven rest consumption framework |
WO2013119841A1 (en) | 2012-02-10 | 2013-08-15 | Nimbula, Inc. | Cloud computing services framework |
US9519674B2 (en) | 2014-09-10 | 2016-12-13 | Amazon Technologies, Inc. | Stateless datastore-independent transactions |
JP6309442B2 (ja) | 2014-12-18 | 2018-04-11 | 株式会社日立製作所 | システムテンプレート保守システム及びシステムテンプレート保守方法 |
US10579974B1 (en) | 2015-02-16 | 2020-03-03 | AI Coin Inc. | Systems, methods, and program products for a distributed digital asset network with rapid transaction settlements |
US9652269B2 (en) | 2015-04-03 | 2017-05-16 | Oracle International Corporation | System and method for supporting representational state transfer services natively in a service bus runtime |
AU2016246428B2 (en) | 2015-04-05 | 2017-11-09 | Digital Asset (Switzerland) GmbH | Digital asset intermediary electronic settlement platform |
US9930103B2 (en) | 2015-04-08 | 2018-03-27 | Amazon Technologies, Inc. | Endpoint management system providing an application programming interface proxy service |
US10366247B2 (en) * | 2015-06-02 | 2019-07-30 | ALTR Solutions, Inc. | Replacing distinct data in a relational database with a distinct reference to that data and distinct de-referencing of database data |
CA2992458A1 (en) | 2015-07-14 | 2017-01-19 | Fmr Llc | Computationally efficient transfer processing, auditing, and search apparatuses, methods and systems |
US9912494B2 (en) | 2015-08-12 | 2018-03-06 | Cisco Technology, Inc. | Distributed application hosting environment to mask heterogeneity |
US20170116693A1 (en) | 2015-10-27 | 2017-04-27 | Verimatrix, Inc. | Systems and Methods for Decentralizing Commerce and Rights Management for Digital Assets Using a Blockchain Rights Ledger |
CA3014392C (en) | 2016-02-12 | 2024-04-16 | Royal Bank Of Canada | Methods and systems for digital reward processing |
AU2017225932C1 (en) | 2016-02-29 | 2021-06-24 | Securekey Technologies Inc. | Systems and methods for distributed identity verification |
WO2018006072A1 (en) * | 2016-06-30 | 2018-01-04 | Clause, Inc. | Systems and method for forming, storing, managing,and executing contracts |
US20180130034A1 (en) | 2016-11-07 | 2018-05-10 | LedgerDomain, LLC | Extended blockchains for event tracking and management |
US10691763B2 (en) | 2016-11-11 | 2020-06-23 | International Business Machines Corporation | Trustable web searching verification in a blockchain |
US10396997B2 (en) | 2016-12-14 | 2019-08-27 | International Business Machines Corporation | Container-based operating system and method |
US10311230B2 (en) * | 2016-12-24 | 2019-06-04 | Cisco Technology, Inc. | Anomaly detection in distributed ledger systems |
CN106982205B (zh) | 2017-03-01 | 2020-05-19 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 基于区块链的数字资产处理方法和装置 |
US10375105B2 (en) | 2017-03-03 | 2019-08-06 | International Business Machines Corporation | Blockchain web browser interface |
CN106952124A (zh) | 2017-03-16 | 2017-07-14 | 北京牛链科技有限公司 | 基于分布式记账的电子发票管理系统和方法 |
US10452998B2 (en) | 2017-03-19 | 2019-10-22 | International Business Machines Corporation | Cognitive blockchain automation and management |
US10757103B2 (en) | 2017-04-11 | 2020-08-25 | Xage Security, Inc. | Single authentication portal for diverse industrial network protocols across multiple OSI layers |
US10469460B2 (en) | 2017-04-17 | 2019-11-05 | Cisco Technology, Inc. | Data sharing in a blockchain-enabled trust domain |
US12026685B2 (en) | 2017-04-21 | 2024-07-02 | Blockdaemon Inc. | Method and apparatus for blockchain management |
US10833858B2 (en) | 2017-05-11 | 2020-11-10 | Microsoft Technology Licensing, Llc | Secure cryptlet tunnel |
US10601900B2 (en) | 2017-05-24 | 2020-03-24 | Red Hat, Inc. | Supporting distributed ledgers in a micro-services environment |
US9870508B1 (en) | 2017-06-01 | 2018-01-16 | Unveiled Labs, Inc. | Securely authenticating a recording file from initial collection through post-production and distribution |
GB201709188D0 (en) | 2017-06-09 | 2017-07-26 | Nchain Holdings Ltd | Computer-Implemented system and method |
US10789104B2 (en) | 2017-06-30 | 2020-09-29 | Vmware, Inc. | Methods and apparatus for deploying a distributed system using operating system virtualization |
US10581873B2 (en) | 2017-07-11 | 2020-03-03 | Cisco Technology, Inc. | Securing micro-services |
US10123202B1 (en) | 2017-07-11 | 2018-11-06 | Verizon Patent And Licensing Inc. | System and method for virtual SIM card |
US11343095B2 (en) | 2017-09-19 | 2022-05-24 | Microsoft Technology Licensing, Llc | Cryplet binding key graph |
US10528551B2 (en) | 2017-09-29 | 2020-01-07 | Oracle International Corporation | System and method for providing a representational state transfer proxy service for a blockchain cloud service |
CN108389129B (zh) * | 2018-02-27 | 2020-12-04 | 创新先进技术有限公司 | 基于区块链的交易执行方法及装置、电子设备 |
US11951400B2 (en) * | 2018-03-14 | 2024-04-09 | Sony Interactive Entertainment LLC | Secure decentralized video game transaction platform |
CN108764870B (zh) | 2018-05-29 | 2020-07-07 | 阿里巴巴集团控股有限公司 | 基于区块链的交易处理方法及装置、电子设备 |
US20200037158A1 (en) * | 2018-07-30 | 2020-01-30 | Hewlett Packard Enterprise Development Lp | Systems and methods for using smart contract and light and sound emitting assets provisioned with distributed ledger addresses to identify and locate assets |
US11182379B2 (en) | 2018-08-24 | 2021-11-23 | Oracle International Corporation | DAG based methods and systems of transaction processing in a distributed ledger |
US11048689B2 (en) | 2018-11-08 | 2021-06-29 | International Business Machines Corporation | Consensus transaction scheduler |
US11151558B2 (en) | 2018-12-12 | 2021-10-19 | American Express Travel Related Services Company, Inc | Zero-knowledge proof payments using blockchain |
US11694110B2 (en) | 2019-06-12 | 2023-07-04 | International Business Machines Corporation | Aggregated machine learning verification for database |
US11546425B2 (en) | 2020-04-23 | 2023-01-03 | Oracle International Corporation | Systems and methods of providing ledger as a service |
US11741075B2 (en) | 2020-06-04 | 2023-08-29 | Oracle International Corporation | Methods and system of tracking transactions for distributed ledger |
US11822538B2 (en) | 2020-11-05 | 2023-11-21 | Oracle International Corporation | Systems and methods of transaction identification generation for transaction-based environment |
-
2019
- 2019-01-29 US US16/261,371 patent/US11182379B2/en active Active
- 2019-02-01 EP EP19706835.6A patent/EP3841489B1/en active Active
- 2019-02-01 WO PCT/US2019/016341 patent/WO2020040809A1/en unknown
- 2019-02-01 CN CN201980055454.XA patent/CN112602076A/zh active Pending
- 2019-02-01 JP JP2021510064A patent/JP7133706B2/ja active Active
-
2021
- 2021-11-08 US US17/521,560 patent/US11921703B2/en active Active
-
2022
- 2022-08-29 JP JP2022136003A patent/JP7454616B2/ja active Active
-
2024
- 2024-02-28 US US18/590,537 patent/US20240248894A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010510590A (ja) | 2006-11-17 | 2010-04-02 | マイクロソフト コーポレーション | ソフトウェアトランザクションのコミット順序および競合の管理 |
JP2017520844A (ja) | 2014-06-26 | 2017-07-27 | アマゾン・テクノロジーズ・インコーポレーテッド | マルチアイテムトランザクションサポートを有するマルチデータベースログ |
JP2018511886A (ja) | 2015-04-01 | 2018-04-26 | アビニシオ テクノロジー エルエルシー | 分散型コンピューティングシステムにおけるデータベーストランザクションの処理 |
WO2017040313A1 (en) | 2015-08-28 | 2017-03-09 | Swirlds, Inc. | Methods and apparatus for a distributed database within a network |
WO2018141792A1 (en) | 2017-01-31 | 2018-08-09 | Sony Corporation | Apparatus and method for providing a virtual device |
Also Published As
Publication number | Publication date |
---|---|
WO2020040809A1 (en) | 2020-02-27 |
US20220058186A1 (en) | 2022-02-24 |
CN112602076A (zh) | 2021-04-02 |
JP7133706B2 (ja) | 2022-09-08 |
EP3841489A1 (en) | 2021-06-30 |
US20240248894A1 (en) | 2024-07-25 |
US11921703B2 (en) | 2024-03-05 |
JP2021534512A (ja) | 2021-12-09 |
JP2022174127A (ja) | 2022-11-22 |
US20200065300A1 (en) | 2020-02-27 |
EP3841489B1 (en) | 2022-09-07 |
US11182379B2 (en) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7454616B2 (ja) | 分散型元帳におけるdagベースのトランザクション処理方法およびシステム | |
JP7502393B2 (ja) | ハイパーレッジャファブリックブロックチェーンにおいてsqlベースのリッチクエリをサポートするためのシステムおよび方法 | |
US11544254B2 (en) | System and method for managing a blockchain cloud service | |
US11546425B2 (en) | Systems and methods of providing ledger as a service | |
US20240054125A1 (en) | Systems and methods of transaction identification generation for transaction-based environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220912 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220912 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230927 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231212 |
|
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: 20240213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240311 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7454616 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |