JP7293314B2 - イーサリアム仮想マシンのトランザクション処理方法、装置、機器、プログラムおよび媒体 - Google Patents
イーサリアム仮想マシンのトランザクション処理方法、装置、機器、プログラムおよび媒体 Download PDFInfo
- Publication number
- JP7293314B2 JP7293314B2 JP2021186202A JP2021186202A JP7293314B2 JP 7293314 B2 JP7293314 B2 JP 7293314B2 JP 2021186202 A JP2021186202 A JP 2021186202A JP 2021186202 A JP2021186202 A JP 2021186202A JP 7293314 B2 JP7293314 B2 JP 7293314B2
- Authority
- JP
- Japan
- Prior art keywords
- contract
- data
- request
- virtual machine
- interface
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6227—Protecting 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 where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
ブロックチェーンノードで稼働中の仮想マシンインスタンスにおいて、処理待ちトランザクション要求を取得することと、
前記仮想マシンインスタンスは、前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送することと、
前記インタフェースモジュールは、前記データアクセス要求に応じて命令変換を行うことで、前記データアクセス要求機能に対応するブロックチェーンアクセス用インタフェースを確定することと、
前記インタフェースモジュールは、前記ブロックチェーンのデータストレージスペースに対して、前記ブロックチェーンアクセス用インタフェースを呼び出して、前記アクセス対象データに対するアクセス操作を行い、アクセス結果を前記仮想マシンインスタンスにフィードバックすることと、を含み、
前記データアクセス要求にデータ読取要求及び/又はデータ書込要求が含まれる、
イーサリアム仮想マシンに基づくトランザクション処理方法を提供する。
ブロックチェーンノードで稼働中の仮想マシンインスタンスにおいて、処理待ちトランザクション要求を取得するための、処理待ちトランザクション要求取得モジュールと、
前記仮想マシンインスタンスにおいて、前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送するための、データアクセス要求発生/転送モジュールと、
前記インタフェースモジュールにおいて、前記データアクセス要求に応じて命令変換を行うことで、前記データアクセス要求機能に対応するブロックチェーンアクセス用インタフェースを確定するための、命令変換モジュールと、
前記インタフェースモジュールにおいて、前記ブロックチェーンのデータストレージスペースに対して、前記ブロックチェーンアクセス用インタフェースを呼び出して、前記アクセス対象データに対するアクセス操作を行い、アクセス結果を前記仮想マシンインスタンスにフィードバックするための、ブロックチェーンアクセス用インタフェース呼出モジュールと、を備え、
前記データアクセス要求に、データ読取要求及び/又はデータ書込要求が含まれ、
イーサリアム仮想マシンに基づくトランザクション処理装置を提供する。
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信接続される記憶装置と、を備え、
前記記憶装置に、前記少なくとも1つのプロセッサにより実行できる命令が記憶されており、
前記命令は、前記少なくとも1つのプロセッサが本発明の実施例のいずれか1項に記載のイーサリアム仮想マシンのトランザクション処理方法を実現可能であるように、前記少なくとも1つのプロセッサにより実行される、電子機器を提供する。
コンピュータプログラムを備え、
前記コンピュータプログラムは、プロセッサより実行される際、本発明の実施例のいずれか1項に記載のイーサリアム仮想マシンのトランザクション処理方法を実現する、コンピュータプログラム製品を提供する。
Address string
Sequence uint
Pubkey string
Balance uint }
アカウントデータに対するアクセスに用いられるアカウントアクセス用インタフェースと、
コントラクトアカウントの操作に用いられるコントラクト操作用インタフェースと、
コントラクトデータの更新に用いられる記憶アクセス用インタフェースと、が含まれる。
コントラクトデータにおけるコントラクト内変数を読み取るためのコントラクト内変数読取インタフェースと、
アカウントデータにおけるアカウントトークン残額を読み取るためのアカウントトークン残額読取インタフェースと、
コントラクトアカウントにおけるコントラクトバイトコードを読み取るためのコントラクトバイトコード読取インタフェースと、
アカウントデータにおける取引のシーケンス番号を読み取るためのアカウントの取引シーケンス番号読取インタフェースと、
オンチェーンに記憶されるスマートコントラクトを照会するためのオンチェーンコントラクト照会インタフェースと、
オンチェーンに記憶されるアカウント情報を照会するためのオンチェーンアカウント照会インタフェースと、
ブロック高によってブロックハッシュ(Hash)を読み取るためのブロック高によるブロックハッシュ読取インタフェースと、のうちの少なくとも1項が含まれる。
コントラクトスペースにコントラクトアカウントを生成するためのコントラクトアカウント生成インタフェースと、
コントラクトスペースにおけるバイトコードを初期化するためのコントラクトバイトコード初期化インタフェースと、
コントラクトスペースにおけるコントラクトアカウントを削除するためのコントラクトアカウント削除インタフェースと、
コントラクト内変数を記憶するためのコントラクト内変数記憶インタフェースと、
アカウント残額を追加するためのアカウント残額追加インタフェースと、
アカウント残額を減少するためのアカウント残額減少インタフェースと、のうちの少なくとも1項が含まれる。
読取インタフェースであるアカウントトークン残額読取インタフェース、アカウントの取引のシーケンス番号読取インタフェース、およびオンチェーンアカウント照会インタフェースと、
書込インタフェースであるアカウント残額追加インタフェース、およびアカウント残額減少インタフェースと、が含まれ、
コントラクトアクセス用インタフェースには、
読取インタフェースであるコントラクトバイトコード読取インタフェース、オンチェーンコントラクト照会インタフェースおよびブロック高によってブロックハッシュを読み取る読取インタフェースと、
書込インタフェースであるコントラクトアカウント生成インタフェース、コントラクトバイトコード初期化インタフェース、およびコントラクトアカウント削除インタフェースと、が含まれ、
記憶アクセス用インタフェースには、
読取インタフェースであるコントラクト内変数読取インタフェースと、
書込インタフェースであるコントラクト内変数記憶インタフェースと、が含まれる。
前記仮想マシンインスタンスは、処理待ちトランザクション要求を取得した後、前記処理待ちトランザクション要求からコントラクトの呼び出し側の識別子および呼び出し待ちコントラクトの識別子を取得する。
前記仮想マシンインスタンスは、インタフェースモジュールからフィードバックされた照会結果が、オンチェーンアカウントおよびオンチェーンコントラクトが存在するという結果であると、前記呼び出し待ちコントラクトの識別子に基づいてコントラクトバイトコード読取要求を発生させ、インタフェースモジュールに転送する。
前記仮想マシンインスタンスは、前記インタフェースモジュールからフィードバックされたコントラクトバイトコードと、前記処理待ちトランザクション要求内のコントラクト引数およびトークンとに基づいて、前記処理待ちトランザクション要求を実行し、実行する過程においてコントラクト内変数読取要求を発生させ、前記インタフェースモジュールに転送する。ここで、コントラクト内変数に、スマートコントラクト稼働過程における変数および変数数値が含まれる。
前記仮想マシンインスタンスは、前記処理待ちトランザクション要求を実行する過程において、コントラクト内変数記憶要求を発生させ、インタフェースモジュールに転送する。
代替的に、アカウントスペースとコントラクトスペースのそれぞれにアカウントデータとコントラクトデータとをそれぞれ記憶させる場合、前記インタフェースモジュールは、コントラクト内変数の数値を書き込むために、前記ブロックチェーンのコントラクトスペースに対して、コントラクト内変数記憶インタフェースを呼び出す。
ブロックチェーンノードで稼働中の仮想マシンインスタンスにおいて、処理待ちトランザクション要求を取得するための、処理待ちトランザクション要求取得モジュール510と、
前記仮想マシンインスタンスが前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送するための、データアクセス要求発生/転送モジュール520と、
前記インタフェースモジュールにおいて、前記データアクセス要求に応じて命令変換を行うことで、前記データアクセス要求機能に対応するブロックチェーンアクセス用インタフェースを確定するための命令変換モジュール530と、
前記インタフェースモジュールにおいて、前記ブロックチェーンのデータストレージスペースに対して、前記ブロックチェーンアクセス用インタフェースを呼び出して、前記アクセス対象データに対するアクセス操作を行い、アクセス結果を前記仮想マシンインスタンスにフィードバックするためのブロックチェーンアクセス用インタフェース呼出モジュール540が備えられてもよく、
前記データアクセス要求にデータ読取要求及び/又はデータ書込要求が含まれる。
前記インタフェースモジュールが前記データアクセス要求の所属仮想マシン命令および命令引数を識別するためのデータアクセス要求識別サブモジュールと、
前記インタフェースモジュールがプリセットされた仮想マシン命令およびインタフェースマッピング関係に基づいて、前記データアクセス要求に対応するブロックチェーンアクセス用インタフェースを確定するためのブロックチェーンアクセス用インタフェース確定サブモジュールと、が備えられる。
アカウントデータに対するアクセスに用いられるアカウントアクセス用インタフェースと、
コントラクトデータの更新に用いられる記憶アクセス用インタフェースと、
コントラクトアカウントの操作に用いられるコントラクト操作インタフェースと、が備えられる。
コントラクト内変数読取インタフェースと、
アカウントトークン残額読取インタフェースと、
コントラクトバイトコード読取インタフェースと、
アカウントの取引シーケンス番号読取インタフェースと、
オンチェーンコントラクト照会インタフェースと、
オンチェーンアカウント照会インタフェースと、
ブロック高によってブロックハッシュを読み取る読取インタフェースと、のうちの少なくとも1項が備えられる。
前記仮想マシンインスタンスが処理待ちトランザクション要求を取得した場合、前記処理待ちトランザクション要求内におけるコントラクトの呼び出し側の識別子と呼び出し待ちコントラクト識別子とを取得するための識別子情報取得サブモジュールと、
前記仮想マシンインスタンスにおいて、前記コントラクトの呼び出し側の識別子と呼び出し待ちコントラクト識別子とに基づいて、呼び出し側のオンチェーンアカウント照会要求と、オンチェーンコントラクト照会要求をそれぞれ発生させ、前記インタフェースモジュールに転送するための照会要求発生サブモジュールと、が備えられる。
コントラクトアカウント生成インタフェースと、
コントラクトバイトコード初期化インタフェースと、
コントラクトアカウント削除インタフェースと、
コントラクト内変数記憶インタフェースと、
アカウント残額追加インタフェースと、
アカウント残額減少インタフェースと、のうちの少なくとも1項が備えられる。
Claims (16)
- ブロックチェーンノードに適用され、イーサリアム仮想マシンに基づくトランザクション処理方法であって、
前記ブロックチェーンノードで稼働中のイーサリアム仮想マシンインスタンスにおいて、処理待ちトランザクション要求を取得することと、
前記イーサリアム仮想マシンインスタンスが前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送することと、
前記インタフェースモジュールは、前記データアクセス要求に応じて命令変換を行うことで、前記データアクセス要求に対応するブロックチェーンアクセス用インタフェースを確定し、ここで、前記インタフェースモジュールは、非イーサリアムブロックチェーンノードのデータを読み取ることをサポートしないイーサリアム仮想マシン命令を、非イーサリアムブロックチェーンノードのデータを読み取ることをサポートする命令に変換するために用いられることと、
前記インタフェースモジュールは、前記ブロックチェーンアクセス用インタフェースを呼び出して、前記非イーサリアムブロックチェーンノードのデータストレージスペースにおける前記アクセス対象データに対するアクセス操作を行い、アクセス結果を前記イーサリアム仮想マシンインスタンスにフィードバックすることと、を含み、
前記データアクセス要求に、データ読取要求及び/又はデータ書込要求が含まれ、前記アクセス対象データとは、前記非イーサリアムブロックチェーンノードにおけるアカウントデータ及び/又はコントラクトデータであり、前記データアクセス要求はイーサリアム仮想マシン命令形態である、
イーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記インタフェースモジュールは、前記データアクセス要求に応じて命令変換を行うことで、前記データアクセス要求に対応するブロックチェーンアクセス用インタフェースを確定することは、
前記インタフェースモジュールは、前記データアクセス要求の所属仮想マシン命令および命令引数を識別することと、
前記インタフェースモジュールは、プリセットされた仮想マシン命令およびインタフェースマッピング関係に基づいて、前記データアクセス要求に対応するブロックチェーンアクセス用インタフェースを確定することと、を含む、
請求項1に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 1つ又は複数の仮想マシン命令と1つのブロックチェーンアクセス用インタフェースとの間にインタフェースマッピング関係を有する、
請求項2に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記ブロックチェーンアクセス用インタフェースは、別のブロックチェーンアクセス用インタフェースを呼び出す機能を有する、
請求項1に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記アクセス対象データには、前記アカウントデータと前記コントラクトデータとが含まれ、
前記ブロックチェーンアクセス用インタフェースのタイプには、
前記アカウントデータのアクセスに用いられるアカウントアクセス用インタフェースと、
前記コントラクトデータの更新に用いられる記憶アクセス用インタフェースと、
コントラクトアカウントの操作に用いられるコントラクト操作インタフェースと、が含まれる、
請求項1に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記ブロックチェーンアクセス用インタフェースのうちのブロックチェーン読取インタフェースには、
コントラクト内変数読取インタフェースと、
アカウントトークン残額読取インタフェースと、
コントラクトバイトコード読取インタフェースと、
アカウントの取引シーケンス番号読取インタフェースと、
オンチェーンコントラクト照会インタフェースと、
オンチェーンアカウント照会インタフェースと、
ブロック高によってブロックハッシュを読み取る読取インタフェースと、のうちの少なくとも1項が備えられる、
請求項5に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記イーサリアム仮想マシンインスタンスは、前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送することは、
前記イーサリアム仮想マシンインスタンスは、処理待ちトランザクション要求を取得した場合、前記処理待ちトランザクション要求内におけるコントラクトの呼び出し側の識別子と呼び出し待ちコントラクト識別子とを取得することと、
前記イーサリアム仮想マシンインスタンスは、前記コントラクトの呼び出し側の識別子と、呼び出し待ちコントラクト識別子とに基づいて、呼び出し側のオンチェーンアカウント照会要求と、オンチェーンコントラクト照会要求をそれぞれ発生させ、前記インタフェースモジュールに転送することと、を含む、
請求項6に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記イーサリアム仮想マシンインスタンスは、前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送することは、
前記イーサリアム仮想マシンインスタンスは、前記インタフェースモジュールからフィードバックされた照会結果として、オンチェーンアカウントおよびオンチェーンコントラクトが存在するという結果を取得した場合、前記呼び出し待ちコントラクト識別子に基づいてコントラクトバイトコード読取要求を発生させ、前記インタフェースモジュールに転送することを含む、
請求項7に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記イーサリアム仮想マシンインスタンスは、前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送することは、
前記イーサリアム仮想マシンインスタンスは、前記インタフェースモジュールからフィードバックされたコントラクトバイトコードと、前記処理待ちトランザクション要求内のコントラクト引数およびトークンとに基づいて、前記処理待ちトランザクション要求を実行し、実行過程においてコントラクト内変数読取要求を発生させ、前記インタフェースモジュールに転送することを含み、
コントラクト内変数には、スマートコントラクト稼働過程における変数および変数数値が含まれる、
請求項8に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記ブロックチェーンアクセス用インタフェースのうちのブロックチェーン書込インタフェースには、
コントラクトアカウント生成インタフェースと、
コントラクトバイトコード初期化インタフェースと、
コントラクトアカウント削除インタフェースと、
コントラクト内変数記憶インタフェースと、
アカウント残額追加インタフェースと、
アカウント残額減少インタフェースと、のうちの少なくとも1項が含まれる、
請求項5に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記イーサリアム仮想マシンインスタンスは、前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送することは、
前記イーサリアム仮想マシンインスタンスは、前記処理待ちトランザクション要求を実行する過程において、コントラクト内変数記憶要求を発生させ、前記インタフェースモジュールに転送することを含み、
コントラクト内変数には、スマートコントラクト稼働過程における変数および変数数値が含まれる、
請求項10に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - 前記イーサリアム仮想マシンインスタンスは、前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送することは、
前記イーサリアム仮想マシンインスタンスは、前記処理待ちトランザクション要求がコントラクトアカウントに基づいたトランザクション要求であると識別した場合、コントラクトアカウント操作要求を発生させ、前記インタフェースモジュールに転送することを含み、
前記コントラクトアカウント操作要求にはコントラクトアカウント生成要求とコントラクトアカウント削除要求とが含まれる、
請求項10に記載のイーサリアム仮想マシンに基づくトランザクション処理方法。 - ブロックチェーンノードに適用され、請求項1~12のいずれか1項に記載のトランザクション処理方法を実行させるためのイーサリアム仮想マシンに基づくトランザクション処理装置であって、
前記ブロックチェーンノードで稼働中のイーサリアム仮想マシンインスタンスにおいて、処理待ちトランザクション要求を取得するための処理待ちトランザクション要求取得モジュールと、
前記イーサリアム仮想マシンインスタンスが前記処理待ちトランザクション要求を実行する過程において、アクセス対象データに対するデータアクセス要求を発生させ、インタフェースモジュールに転送するためのデータアクセス要求発生/転送モジュールと、
前記インタフェースモジュールにおいて、前記データアクセス要求に応じて命令変換を行うことで、前記データアクセス要求に対応するブロックチェーンアクセス用インタフェースを確定し、ここで、前記インタフェースモジュールは、非イーサリアムブロックチェーンノードのデータを読み取ることをサポートしないイーサリアム仮想マシン命令を、非イーサリアムブロックチェーンノードのデータを読み取ることをサポートする命令に変換するために用いられるための命令変換モジュールと、
前記インタフェースモジュールにおいて、前記ブロックチェーンアクセス用インタフェースを呼び出して、前記非イーサリアムブロックチェーンノードのデータストレージスペースにおける前記アクセス対象データに対するアクセス操作を行い、アクセス結果を前記イーサリアム仮想マシンインスタンスにフィードバックするためのブロックチェーンアクセス用インタフェース呼出モジュールと、が備えられ、
前記データアクセス要求に、データ読取要求及び/又はデータ書込要求が含まれ、前記アクセス対象データとは、前記非イーサリアムブロックチェーンノードにおけるアカウントデータ及び/又はコントラクトデータであり、前記データアクセス要求はイーサリアム仮想マシン命令形態である、
イーサリアム仮想マシンに基づくトランザクション処理装置。 - 少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサと通信接続される記憶装置と、を備え
前記記憶装置は、前記少なくとも1つのプロセッサにより実行できる命令が記憶されており、
前記命令は、前記少なくとも1つのプロセッサが請求項1~12のいずれか1項に記載のイーサリアム仮想マシンに基づくトランザクション処理方法を実行可能であるように、前記少なくとも1つのプロセッサにより実行される、
電子機器。 - 請求項1~12のいずれか1項に記載のイーサリアム仮想マシンに基づくトランザクション処理方法をコンピュータに実行させるためのコンピュータ命令が記憶されている、
非瞬時性コンピュータ可読記憶媒体。 - プロセッサにより実行される際、請求項1~12のいずれか1項に記載のイーサリアム仮想マシンに基づくトランザクション処理方法を実現する、
コンピュータプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011547907.1 | 2020-12-24 | ||
CN202011547907.1A CN112306645B (zh) | 2020-12-24 | 2020-12-24 | 以太坊虚拟机的事务处理方法、装置、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022101479A JP2022101479A (ja) | 2022-07-06 |
JP7293314B2 true JP7293314B2 (ja) | 2023-06-19 |
Family
ID=74487567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021186202A Active JP7293314B2 (ja) | 2020-12-24 | 2021-11-16 | イーサリアム仮想マシンのトランザクション処理方法、装置、機器、プログラムおよび媒体 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11397827B2 (ja) |
EP (1) | EP3933581A3 (ja) |
JP (1) | JP7293314B2 (ja) |
CN (1) | CN112306645B (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113419776B (zh) * | 2021-07-09 | 2022-09-13 | 杭州复杂美科技有限公司 | 应用兼容方法、计算机设备和存储介质 |
CN113973115B (zh) * | 2021-10-28 | 2024-02-27 | 南方电网科学研究院有限责任公司 | 一种自定义通证流通方法及其相关装置 |
CN114116067B (zh) * | 2021-12-02 | 2024-02-27 | 多点生活(武汉)科技有限公司 | 内外***的信息配置方法、装置、电子设备和可读存储介质 |
CN114710510A (zh) * | 2022-02-16 | 2022-07-05 | 深圳番多拉信息科技有限公司 | 基于区块链的Web3接口调用方法、***、装置以及存储介质 |
CN115187250B (zh) * | 2022-09-09 | 2022-11-29 | 南方科技大学 | 一种以太坊隐私交易的探测方法、终端及存储介质 |
CN117807157A (zh) * | 2022-09-26 | 2024-04-02 | 腾讯科技(深圳)有限公司 | 区块链的交易执行方法、装置、程序产品、设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190238525A1 (en) | 2018-01-31 | 2019-08-01 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing super community and community sidechains with consent management for distributed ledger technologies in a cloud based computing environment |
JP2019204216A (ja) | 2018-05-22 | 2019-11-28 | 株式会社日立製作所 | データ管理方法およびデータ管理システム |
US20200034453A1 (en) | 2018-07-29 | 2020-01-30 | International Business Machines Corporation | Smart contract input mapping |
JP2020509443A (ja) | 2018-12-29 | 2020-03-26 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | ブロックチェーン上のネイティブ契約を実施するためのシステムおよび方法 |
US20200133926A1 (en) | 2018-12-29 | 2020-04-30 | Alibaba Group Holding Limited | System and method for implementing native contract on blockchain |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106598490A (zh) | 2016-11-25 | 2017-04-26 | 深圳前海微众银行股份有限公司 | 区块链数据的访问方法和区块链管理*** |
CN108418795B (zh) | 2018-01-30 | 2019-05-28 | 百度在线网络技术(北京)有限公司 | 跨区块链的数据访问方法、装置、***及计算机可读介质 |
CN108765158B (zh) * | 2018-05-31 | 2020-11-24 | 杭州溪塔科技有限公司 | 一种基于区块链的智能合约引擎***及其合约执行方法 |
WO2020006138A1 (en) * | 2018-06-29 | 2020-01-02 | Arcblock, Inc. | Blockchain adapter, protocol, and access layer |
CN110321374B (zh) * | 2018-10-23 | 2022-03-25 | 开采夫(杭州)科技有限公司 | 基于分布式网络的标准文件io操作***及方法 |
CN109492053B (zh) | 2018-11-08 | 2023-07-18 | 北京百度网讯科技有限公司 | 用于访问数据的方法和装置 |
US20200201838A1 (en) * | 2018-12-20 | 2020-06-25 | Sri International | Middleware to automatically verify smart contracts on blockchains |
KR102008001B1 (ko) * | 2019-02-21 | 2019-08-06 | 주식회사 모파스 | 블록체인을 이용하여 스마트 계약을 생성하는 시스템 |
CN110297689B (zh) | 2019-05-06 | 2021-09-14 | 百度在线网络技术(北京)有限公司 | 智能合约执行方法、装置、设备及介质 |
CN116757843A (zh) | 2019-06-28 | 2023-09-15 | 创新先进技术有限公司 | 用于执行不同类型区块链合约的***和方法 |
RO134065A0 (ro) * | 2019-08-14 | 2020-04-30 | Ingenium Blockchain Technologies S.R.L. | Platformă şi metodă de conectare a unui motor de blockchain |
US20210304191A1 (en) * | 2020-03-27 | 2021-09-30 | Coinbase, Inc. | System and method for integration and validation |
CN111651169B (zh) * | 2020-05-19 | 2023-07-04 | 鼎链数字科技(深圳)有限公司 | 基于web容器的区块链智能合约运行方法及*** |
CN111381938B (zh) * | 2020-05-29 | 2020-09-25 | 支付宝(杭州)信息技术有限公司 | 一种基于基础指令集执行区块链中智能合约的方法及*** |
WO2021257826A1 (en) * | 2020-06-17 | 2021-12-23 | Coinbase, Inc. | Systems and methods for converting cryptocurrency |
CN111741026B (zh) * | 2020-08-07 | 2020-12-01 | 百度在线网络技术(北京)有限公司 | 一种跨链事务请求处理方法、装置、设备以及存储介质 |
-
2020
- 2020-12-24 CN CN202011547907.1A patent/CN112306645B/zh active Active
-
2021
- 2021-07-20 US US17/443,105 patent/US11397827B2/en active Active
- 2021-07-26 EP EP21187694.1A patent/EP3933581A3/en active Pending
- 2021-11-16 JP JP2021186202A patent/JP7293314B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190238525A1 (en) | 2018-01-31 | 2019-08-01 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing super community and community sidechains with consent management for distributed ledger technologies in a cloud based computing environment |
JP2021512416A (ja) | 2018-01-31 | 2021-05-13 | セールスフォース ドット コム インコーポレイティッド | クラウドベースのコンピューティング環境において分散台帳技術のためのインテリジェントな合意、スマートな合意、及び重み付き合意のモデルを実現するシステム、方法、及び装置 |
JP2019204216A (ja) | 2018-05-22 | 2019-11-28 | 株式会社日立製作所 | データ管理方法およびデータ管理システム |
US20200034453A1 (en) | 2018-07-29 | 2020-01-30 | International Business Machines Corporation | Smart contract input mapping |
JP2020509443A (ja) | 2018-12-29 | 2020-03-26 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | ブロックチェーン上のネイティブ契約を実施するためのシステムおよび方法 |
US20200133926A1 (en) | 2018-12-29 | 2020-04-30 | Alibaba Group Holding Limited | System and method for implementing native contract on blockchain |
Also Published As
Publication number | Publication date |
---|---|
CN112306645A (zh) | 2021-02-02 |
CN112306645B (zh) | 2021-05-04 |
US20210350019A1 (en) | 2021-11-11 |
JP2022101479A (ja) | 2022-07-06 |
EP3933581A3 (en) | 2022-02-23 |
US11397827B2 (en) | 2022-07-26 |
KR20210105316A (ko) | 2021-08-26 |
EP3933581A2 (en) | 2022-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7293314B2 (ja) | イーサリアム仮想マシンのトランザクション処理方法、装置、機器、プログラムおよび媒体 | |
US8359570B2 (en) | Adaptive scripting tool | |
US7624116B2 (en) | System and method for managing objects according to the common information model | |
US10635420B2 (en) | Overriding a migrated method in an updated type | |
US10303449B2 (en) | Compiling non-native constants | |
CN111949693B (zh) | 一种数据处理装置、数据处理方法、存储介质及电子设备 | |
WO2023056946A1 (zh) | 一种数据缓存方法、装置和电子设备 | |
JP7253603B2 (ja) | イーサリアム仮想マシンのトランザクション処理方法、装置、機器、および媒体 | |
JP7291759B2 (ja) | イーサリアム仮想マシンのトランザクション処理方法、装置、機器、プログラムおよび媒体 | |
JP7291764B2 (ja) | イーサリアム仮想マシンのトランザクション処理方法、装置、機器、プログラムおよび媒体 | |
TW200834419A (en) | Method and apparatus for administering a process filesystem with respect to program code conversion | |
KR102686247B1 (ko) | 이더리움 가상머신의 트랜잭션 처리 방법, 장치, 설비, 프로그램 및 매체 | |
KR102684495B1 (ko) | 이더리움 가상머신의 트랜잭션 처리 방법, 장치, 설비, 프로그램 및 매체 | |
JP2000347875A (ja) | ファイル移植技術 | |
Royer et al. | Trusted Remote Function Interface | |
CN115794955A (zh) | 一种智能合约的升级方法、装置、设备及存储介质 | |
CN114185556A (zh) | 一种智能合约部署方法、装置、设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230131 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230501 |
|
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: 20230516 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230607 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7293314 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |