JP7431934B2 - ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム - Google Patents
ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム Download PDFInfo
- Publication number
- JP7431934B2 JP7431934B2 JP2022195345A JP2022195345A JP7431934B2 JP 7431934 B2 JP7431934 B2 JP 7431934B2 JP 2022195345 A JP2022195345 A JP 2022195345A JP 2022195345 A JP2022195345 A JP 2022195345A JP 7431934 B2 JP7431934 B2 JP 7431934B2
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- locking script
- execution
- bytecode
- state
- 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
- 238000013515 script Methods 0.000 title claims description 480
- 238000000034 method Methods 0.000 title claims description 66
- 230000015654 memory Effects 0.000 claims description 72
- 238000012790 confirmation Methods 0.000 claims description 29
- 238000012546 transfer Methods 0.000 claims description 19
- 230000007704 transition Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 description 26
- 238000005516 engineering process Methods 0.000 description 16
- 238000004590 computer program Methods 0.000 description 11
- 238000010200 validation analysis Methods 0.000 description 8
- 238000012795 verification Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000013519 translation Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000010076 replication Effects 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 241000238876 Acari Species 0.000 description 1
- 101100379081 Emericella variicolor andC gene Proteins 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- 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/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, 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/401—Transaction verification
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- 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/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- 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
-
- 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
- G06Q20/0655—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed centrally
-
- 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/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
- G06Q20/123—Shopping for digital content
- G06Q20/1235—Shopping for digital content with control of digital rights management [DRM]
-
- 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/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
- 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/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
- G06Q20/38215—Use of certificates or encrypted proofs of transaction rights
-
- 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/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- 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/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- 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
- G06Q2220/00—Business processing using cryptography
-
- 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
- G06Q2220/00—Business processing using cryptography
- G06Q2220/10—Usage protection of distributed data files
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computing Systems (AREA)
- Devices For Executing Special Programs (AREA)
Description
少なくとも1つのデジタルアセットまたはその一部の制御を移転するために第1ブロックチェーントランザクション(「支出トランザクション(“spending transaction”)」)を受信するステップであり、第1ブロックチェーントランザクションは、バイトコードシーケンスによって表される(第1)ロッキングスクリプトを含み、かつ、第1ブロックチェーントランザクションは、第1および第2ロッキングスクリプトが同一のバイトコードシーケンスを共有するように、バイトコードシーケンスによって表される(第2)ロッキングスクリプトを含む以前(ブロックチェーン)トランザクションを参照する、ステップを含む。第1トランザクションは、「支出」トランザクションとして参照され得る。それは、ブロックチェーンネットワーク内のノードで受信され得る。それは、デジタルアセット(「デジタルリソース(“digital resource”)」としても参照され得るもの)制御を、ネットワークを介してエンティティ、パーティ、またはノードへ移転するように構成され得る。
第1ロッキングスクリプトのバイトコードシーケンスが、以前トランザクションのロッキングスクリプト(すなわち、第2ロッキングスクリプト)のバイトコードシーケンスと一致することを検証することによって、第1(支出)ブロックチェーントランザクションを確認するステップ。
プロセッサと、
プロセッサによる実行の結果、上記実施形態のうちいずれか1つのコンピュータ実施方法を本システムに実行させる、実行可能な命令を含むメモリと、を含んでよい。
・特定のロ-レベル(low-level)オペレーションコードによって提供される機能性が、オペレーションコードスクリプト/命令セットを実行するシステムにおいて存在し、かつ、使用可能とされていること。及び/又は、
・特定のハイレベル(high-level)オペレーションコード(または、ハイレベルバイトコードオペレーション)によって提供される機能性が、所望の振る舞い(behavior)を提供するように記載されているカスタマイズされたファンクション(function)の作成によって実現され得ること。これらのカスタマイズされたファンクションは、言語の中に存在するが無効にされているop_codesの機能性を実装するために記載されているか、または、スクリプト言語において本来提供されていない特定の機能性を提供する「新たな(“new”)」op_codesであってよい。
・OP_1SUB、スタックのトップアイテムから値「1」が差し引かれる
・OP_2DUP、スタックの上位2つのアイテムを複製する
・OP_ADD、スタックに上位2つのアイテムを追加する
・OP_CAT、スタックの上位2つのアイテムを連結(concatenate)する
・OP_CHECKSIG、スタックから公開鍵および署名がポップされ、そして、SIGHASHタイプに従ってトランザクションフィールドの署名に対して検証される。署名が妥当である場合は1、そうでない場合は0を返す
・OP_CHECKSIGVERIFY、OP_CHECKSIGと同様に機能するが、その後でOP_VERIFYが実行される
・OP_DROP、スタックのトップアイテムを削除またはポップ(pop)する
・OP_DUP、スタックのトップアイテムを複製する
・OP_ELSE、先行するOP_IF、OP_NOTIF、またはOP_ELSEが実行されなかった場合に、これらのステートメントが実行され、そうでなければ、先行するOP_IF、OP_NOTIF、またはOP_ELSEが実行された場合に、これらのステートメントは実行されない
・OP_ENDIF、if/elseブロックを終了する
・OP_EQUAL、入力が正確に等しい場合には1、そうでなければ0を返す
・OP_EQUALVERIFY 、OP_EQUALと同様であるが、その後でOP_VERIFYを実行する
・OP_FROMALTSTACK、入力をメインスタックのトップの上に置き、そして、それを代替スタックから削除する
・OP_HASH256、入力が2回ハッシュされる、最初はSHA-256を用い、そして、次いで、RIPEMD-160を用いる
・OP_IF、スタックのトップの値(top stack value)が誤り(False)でない場合に、ステートメントが実行され、そして、スタックのトップの値が削除される
・OP_LEFT、文字列において指定されたポイントの左側の文字だけを保持する
・OP_MUL、スタックの上位2つのアイテムを乗算する
・OP_NOTIF、スタックのトップの値が誤りである場合に、ステートメントが実行され、そして、スタックのトップの値が削除される
・OP_RIGHT、文字列において指定されたポイントの右側の文字だけを保持する
・OP_ROLL、スタックにおける深さがn個アイテムであるアイテムがトップに移動される
・OP_ROT、スタックの上位3つのアイテムを左に回転させる
・OP_SIZE、スタックのトップエレメントの文字列長を(ポップアップすることなく)プッシュする
・OP_SUBSTR、文字列のセクションを返す
・OP_SWAP、スタックの上位2つのアイテムが交換される
・OP_TOALTSTACK、入力を代替スタックのトップの上に置き、そして、それをメインスタックから削除する
・OP_TUCK、スタックのトップにあるアイテムがコピーされ、かつ、トップ2番目のアイテムの前に挿入される
・OP_VERIFY、スタックのトップの値が真(true)でない場合に、無効なものとしてトランザクションをマークする
・OP_ECPX、楕円曲線点のx座標を返す
・OP_BIGMOD、スタックにおける上位2つのアイテムを分割した後で余り(remainder)を返す
・OP_BIGMODADD、スタックモジュラスの上位2つのアイテムモジュラス加算(modulus addition)をスタックの3番目のアイテムに実行する
・OP_BIGMODINVERSE、モジュラス負の指数演算(exponent operation)を実行する
・OP_BIGMODMUL、スタックモジュラスの上位2つのアイテムモジュラス乗算(modulus multiplication)をスタックの3番目のアイテムに実行する
・OP_DERENCODE、スタックにおける上位2つのアイテムをDER形式でエンコードする
・OP_ECPMULT、スタックにおける上位2つのアイテムの楕円曲線点乗算(楕円曲線スカラ乗算としても参照されるもの)を実行する
・OP_TOALTSTACK:トップアイテムをメインスタックから代替スタックのトップへ移動する
・OP_FROMALTSTACK:トップアイテムを代替スタックからメインスタックのトップへ移動する
・OP_SWAP:スタックの上位2つのアイテムを入れ替える(swap)
・OP_PICK:スタック内の特定のアイテムを取得し、トップへコピーする
・OP_ROLL:スタック内の特定のアイテムを取得し、トップへ置く
-スタック高さフィールド、バイト文字列内のスタックアイテムの数をエンコードする
-それぞれがサイズフィールドとデータフィールドを含むいくつかのスタックアイテム、ここで、サイズフィールドはスタックアイテムのデータフィールドのバイト数を示す
102 ノード
202 第1トランザクション
204 第2トランザクション
206 第3トランザクション
208 ブロックチェーン
304 ロッキングスクリプト
306 状態マシン
308 支出トランザクション
312 ロッキングスクリプト
314 状態ルールのセット
2600 コンピューティングデバイス
Claims (15)
- コンピュータで実施される方法であって、
少なくとも1つのデジタルアセットまたはその一部の制御を移転するために支出ブロックチェーントランザクションを受信するステップであり、支出トランザクションは、バイトコードシーケンスを含むロッキングスクリプトを含み、前記支出トランザクションは、第1および第2ロッキングスクリプトが同一のバイトコードシーケンスを共有するように、バイトコードシーケンスを含むロッキングスクリプトを含む以前トランザクションを参照する、ステップと、
前記支出トランザクションのロッキングスクリプトのバイトコードシーケンスが、前記以前トランザクションのロッキングスクリプトのバイトコードシーケンスと一致することを検証することによって、前記支出トランザクションを確認するステップと、
を含み、
前記バイトコードシーケンスは、良好に定義された状態のセットを用いて状態ルールのセットを具現化する状態マシンであり、かつ、前記バイトコードシーケンスの実行は、前記状態マシンの状態間の遷移を提供する、
方法。 - 前記支出トランザクションは、さらに、インタープリタコードを含み、
前記以前トランザクションは、さらに、前記支出トランザクションおよび前記以前トランザクションが、前記ロッキングスクリプトのバイトコードシーケンスを解釈するために同一のインタープリタコードを共有するように、インタープリタコードを含み、
前記支出トランザクションを確認するステップは、さらに、前記支出トランザクションのインタープリタコードが、前記以前トランザクションのインタープリタコードと一致することを検証するステップを含む、
請求項1に記載の方法。 - 前記以前トランザクションは、ブロックチェーンにおいて保管されており、かつ/あるいは、
前記インタープリタコードは、前記支出トランザクションおよび前記以前トランザクション両方のロッキングスクリプトの一部として含まれており、かつ/あるいは、
前記インタープリタコードは、少なくとも1つのハイレベルバイトコードオペレーションを、ノードによって実行されるローレベルバイトコードオペレーションへと変換することをサポートする、
請求項2に記載の方法。 - 前記以前トランザクションのロッキングスクリプトおよび前記支出トランザクションのロッキングスクリプトは、さらに、前記以前トランザクションのロッキングスクリプトおよび前記支出トランザクションのロッキングスクリプトによって共有される前記バイトコードシーケンスの異なる実行状態に関するデータを含み、前記データは、前記支出トランザクションを確認するときに、前記バイトコードシーケンスの解釈の実行を制御するために使用される、
請求項1乃至3いずれか一項に記載の方法。 - 前記以前トランザクションのロッキングスクリプトは、さらに、前記ロッキングスクリプトのバイトコードシーケンスの現在の実行状態に対する状態データ、並びに、前記ロッキングスクリプトのバイトコードシーケンスの前記現在の実行状態に対応する実行ポインタを含み、
前記支出トランザクションのロッキングスクリプトは、さらに、前記ロッキングスクリプトのバイトコードシーケンスの次の実行状態に対する状態データ、並びに、前記ロッキングスクリプトのバイトコードシーケンスの前記次の実行状態に対応する実行ポインタを含み、かつ、
前記支出トランザクションを確認するステップは、さらに、
i)前記バイトコードシーケンスの前記現在の実行状態を復元するために、前記ロッキングスクリプトのバイトコードシーケンスの前記現在の実行状態を表しているデータを使用すること、
ii)前記バイトコードシーケンスの前記現在の実行状態に対応する前記実行ポインタにおいて開始し、かつ、前記バイトコードシーケンスの前記次の実行状態に対応する前記実行ポインタにおいて終了する、前記ロッキングスクリプトのバイトコードシーケンスを実行すること、および、
iii)状態データが一致することを検証するために、前記ロッキングスクリプトのバイトコードシーケンスの実行から結果として生じる状態データを、前記支出トランザクションに含まれる前記ロッキングスクリプトのバイトコードシーケンスの前記次の実行状態の状態データと比較すること、
を含む、請求項4に記載の方法。 - 前記支出トランザクションを確認するステップは、さらに、
前記ロッキングスクリプトのバイトコードシーケンスの前記現在の実行状態に対する前記状態データを、仮想メモリから読み出すステップと、
前記ロッキングスクリプトのバイトコードシーケンスの前記現在の実行状態に対応する前記実行ポインタを、仮想メモリから読み出すステップと、
前記ロッキングスクリプトのバイトコードシーケンスの前記次の実行状態に対応する前記実行ポインタを、仮想メモリから読み出すステップと、
を含む、請求項5に記載の方法。 - 前記仮想メモリは、前記バイトコードシーケンスの異なる実行状態に関するデータを、異なる第1および第2フォーマットで保管し、
前記第1フォーマットは、前記ロッキングスクリプトの一部として、前記データを保管するために使用され、かつ、
前記第2フォーマットは、前記ロッキングスクリプトのバイトコードシーケンスを実行するときに、前記仮想メモリ内のデータを操作するのに適している、
請求項6に記載の方法。 - 前記仮想メモリは、少なくとも1つのスタックデータ構造を含み、前記第1フォーマットは、シリアル化バイトフォーマットを含み、かつ、前記第2フォーマットは、スタックフォーマットを含む、
請求項7に記載の方法。 - 前記方法は、さらに、
前記バイトコードシーケンスの前記現在の実行状態を表すデータを、バイトフォーマットからスタックフォーマットへ非シリアル化することによって、前記仮想メモリから前記ロッキングスクリプトのバイトコードシーケンスの現在の実行状態に対する状態データを抽出するステップ、及び/又は、
前記ロッキングスクリプトのバイトコードシーケンスの実行の結果として生じる状態データを、スタックフォーマットからバイトフォーマットへ、前記ロッキングスクリプトのバイトコードシーケンスの実行の結果として生じる前記状態データをシリアル化することにより前記支出トランザクションに含まれる、前記ロッキングスクリプトのバイトコードシーケンスの前記次の実行状態の状態データと、比較するステップ、
を含む、請求項8に記載の方法。 - 前記少なくとも1つのデジタルアセットまたはその一部の制御は、前記ロッキングスクリプトの実行の結果として移転され、かつ、前記ロッキングスクリプトは、前記支出トランザクションの確認のための一連の条件を課す、
請求項1乃至9いずれか一項に記載の方法。 - 前記支出トランザクションは、さらに、アンロッキングスクリプトを含み、
前記アンロッキングスクリプトの実行は、前記支出トランザクションの確認のための一連の条件を導出するために使用されるデータを提供する、
請求項10に記載の方法。 - 前記支出トランザクションの少なくとも一部は、終了条件が満たされるまで、新たな支出トランザクションを生成するために複製される、
請求項1乃至11いずれか一項に記載の方法。 - 前記支出トランザクションおよび前記以前トランザクションは、スマートコントラクトの一部を構成する、
請求項1乃至12いずれか一項に記載の方法。 - システムであって、
プロセッサと、
前記プロセッサによる実行の結果、請求項1乃至13いずれか一項に記載の方法を前記システムに実行させる、実行可能な命令を含むメモリと、
を含む、システム。 - 実行可能な命令を保管した有形のコンピュータで読取り可能な記憶媒体であって、コンピュータシステムのプロセッサによって実行される結果として、前記コンピュータシステムに請求項1乃至13いずれか一項に記載の方法を少なくとも実行させる、コンピュータで読取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2024014541A JP2024045394A (ja) | 2017-08-15 | 2024-02-02 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB1713046.9A GB201713046D0 (en) | 2017-08-15 | 2017-08-15 | Computer-implemented system and method |
GB1713046.9 | 2017-08-15 | ||
PCT/IB2018/055892 WO2019034959A1 (en) | 2017-08-15 | 2018-08-06 | METHODS AND SYSTEMS FOR OCTETS INTERPRETATION BASED ON SCRIPT IMPLEMENTED BY BLOCK CHAIN |
JP2020507073A JP7191934B2 (ja) | 2017-08-15 | 2018-08-06 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020507073A Division JP7191934B2 (ja) | 2017-08-15 | 2018-08-06 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024014541A Division JP2024045394A (ja) | 2017-08-15 | 2024-02-02 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023027185A JP2023027185A (ja) | 2023-03-01 |
JP7431934B2 true JP7431934B2 (ja) | 2024-02-15 |
Family
ID=59895908
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020507073A Active JP7191934B2 (ja) | 2017-08-15 | 2018-08-06 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
JP2022195345A Active JP7431934B2 (ja) | 2017-08-15 | 2022-12-07 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
JP2024014541A Pending JP2024045394A (ja) | 2017-08-15 | 2024-02-02 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020507073A Active JP7191934B2 (ja) | 2017-08-15 | 2018-08-06 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024014541A Pending JP2024045394A (ja) | 2017-08-15 | 2024-02-02 | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム |
Country Status (6)
Country | Link |
---|---|
US (1) | US20210035212A1 (ja) |
EP (2) | EP3669313B1 (ja) |
JP (3) | JP7191934B2 (ja) |
CN (1) | CN111033544A (ja) |
GB (1) | GB201713046D0 (ja) |
WO (1) | WO2019034959A1 (ja) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10298585B1 (en) * | 2018-01-26 | 2019-05-21 | Accenture Global Solutions Limited | Blockchain interoperability |
EP3715981A1 (de) * | 2019-03-27 | 2020-09-30 | Siemens Aktiengesellschaft | Verfahren und steuersystem zum steuern einer ausführung von transaktionen |
GB201907347D0 (en) * | 2019-05-24 | 2019-07-10 | Nchain Holdings Ltd | In-script functions within a blockchain transaction |
IT201900008991A1 (it) * | 2019-06-14 | 2020-12-14 | Ailia Sa | Metodo di esecuzione di uno smart contract |
US11991298B2 (en) | 2019-06-14 | 2024-05-21 | Ailia Sa | Method for the execution of an instance of a smart contract by means of a blockchain |
WO2020177298A1 (zh) * | 2019-09-20 | 2020-09-10 | 钟山 | 数字资产价值管理及运营方法、装置、介质和计算设备 |
EP3907644B1 (en) | 2020-05-07 | 2022-10-05 | Cambridge Cryptographic Ltd | Blockchain |
CN111597268B (zh) * | 2020-05-21 | 2023-09-12 | 昆明大棒客科技有限公司 | 一种区块链扩展方法、区块链节点及区块链系统 |
CN111694851B (zh) * | 2020-05-28 | 2023-06-16 | 平安科技(深圳)有限公司 | 分布式事务的交易处理方法及相关设备 |
CN111770204B (zh) * | 2020-08-31 | 2021-10-22 | 支付宝(杭州)信息技术有限公司 | 一种执行智能合约的方法、区块链节点和存储介质 |
CN111815310B (zh) * | 2020-08-31 | 2021-08-17 | 支付宝(杭州)信息技术有限公司 | 一种执行智能合约的方法、区块链节点和存储介质 |
CN111768184A (zh) | 2020-08-31 | 2020-10-13 | 支付宝(杭州)信息技术有限公司 | 一种执行智能合约的方法及区块链节点 |
CN111768183B (zh) | 2020-08-31 | 2024-04-19 | 支付宝(杭州)信息技术有限公司 | 一种执行智能合约的方法、区块链节点和存储介质 |
CN111770205B (zh) * | 2020-08-31 | 2020-12-04 | 支付宝(杭州)信息技术有限公司 | 一种执行智能合约的方法、区块链节点、系统和存储介质 |
CN111770202B (zh) * | 2020-08-31 | 2021-10-29 | 支付宝(杭州)信息技术有限公司 | 一种执行智能合约的方法、区块链节点和存储介质 |
CA3091660A1 (en) * | 2020-08-31 | 2021-11-03 | Polymath Inc. | Method, system, and medium for blockchain-enabled atomic settlement |
GB2599735A (en) | 2020-10-12 | 2022-04-13 | Cambridge Cryptographic Ltd | Blockchain |
CN112214223B (zh) * | 2020-10-29 | 2024-02-09 | Oppo广东移动通信有限公司 | 应用启动方法、装置、终端设备及计算机可读存储介质 |
WO2022118263A1 (en) | 2020-12-02 | 2022-06-09 | Trock Stanislav | Blockchain |
GB2602010A (en) * | 2020-12-15 | 2022-06-22 | Nchain Holdings Ltd | Generating and validating blockchain transactions |
WO2022140947A1 (zh) * | 2020-12-28 | 2022-07-07 | 杭州趣链科技有限公司 | 智能合约的部署方法、执行方法、装置及终端设备 |
JPWO2022224365A1 (ja) * | 2021-04-20 | 2022-10-27 | ||
GB2618106A (en) * | 2022-04-27 | 2023-11-01 | Nchain Licensing Ag | Messaging protocol for compact script transactions |
CN116012150A (zh) * | 2022-07-25 | 2023-04-25 | 天津理工大学 | 一种比特币交易自治消息提取及解析方法 |
GB2622240A (en) * | 2022-09-08 | 2024-03-13 | Nchain Licensing Ag | Blockchain state machine |
GB2622241A (en) * | 2022-09-08 | 2024-03-13 | Nchain Licensing Ag | Blockchain state machine |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017098806A (ja) | 2015-11-26 | 2017-06-01 | 株式会社bitFlyer | 電子データの存在証明プログラムおよび存在証明サーバ |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3018378A1 (fr) * | 2014-03-12 | 2015-09-11 | Enrico Maim | Systeme et procede transactionnels a architecture repartie fondees sur des transactions de transferts d'unites de compte entre adresses |
EP3140979A4 (en) * | 2014-05-09 | 2017-12-27 | Veritaseum Inc. | Devices, systems, and methods for facilitating low trust and zero trust value transfers |
US20220237696A1 (en) * | 2015-04-28 | 2022-07-28 | Domus Tower, Inc. | Settlement of securities trades using append only ledgers |
US20170132621A1 (en) * | 2015-11-06 | 2017-05-11 | SWFL, Inc., d/b/a "Filament" | Systems and methods for autonomous device transacting |
US10803537B2 (en) * | 2016-04-18 | 2020-10-13 | R3 Ltd. | System and method for managing transactions in dynamic digital documents |
US10715331B2 (en) * | 2016-12-28 | 2020-07-14 | MasterCard International Incorported | Method and system for providing validated, auditable, and immutable inputs to a smart contract |
CN107451175B (zh) * | 2017-05-23 | 2020-01-31 | 创新先进技术有限公司 | 一种基于区块链的数据处理方法及设备 |
US20180365764A1 (en) * | 2017-06-15 | 2018-12-20 | Sweetbridge | Solo-party collateralized liquidity |
US10839379B2 (en) * | 2017-07-20 | 2020-11-17 | Chicago Mercantile Exchange Inc. | Blockchain including linked digital assets |
-
2017
- 2017-08-15 GB GBGB1713046.9A patent/GB201713046D0/en not_active Ceased
-
2018
- 2018-08-06 WO PCT/IB2018/055892 patent/WO2019034959A1/en unknown
- 2018-08-06 CN CN201880053431.0A patent/CN111033544A/zh active Pending
- 2018-08-06 EP EP18769230.6A patent/EP3669313B1/en active Active
- 2018-08-06 US US16/639,517 patent/US20210035212A1/en active Pending
- 2018-08-06 JP JP2020507073A patent/JP7191934B2/ja active Active
- 2018-08-06 EP EP23164820.5A patent/EP4224393A3/en active Pending
-
2022
- 2022-12-07 JP JP2022195345A patent/JP7431934B2/ja active Active
-
2024
- 2024-02-02 JP JP2024014541A patent/JP2024045394A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017098806A (ja) | 2015-11-26 | 2017-06-01 | 株式会社bitFlyer | 電子データの存在証明プログラムおよび存在証明サーバ |
Non-Patent Citations (2)
Title |
---|
MOESER, Malte et al.,Bitcoin Covenants,Financial Cryptography and Data Security. FC 2016,LNSC,volume 9604,ドイツ,Springer, Berlin, Heidelberg,2016年08月31日,pp.126-141,https://doi.org/10.1007/978-3-662-53357-4_9,ISBN978-3-662-53356-7 |
株式会社ストーンシステム、石黒尚久、河除光瑠,最新ブロックチェーンがよ~くわかる本,第1版,日本,株式会社秀和システム,2017年08月01日,pp.108-118, 147,ISBN978-4-7980-5118-5 C3055 |
Also Published As
Publication number | Publication date |
---|---|
EP3669313A1 (en) | 2020-06-24 |
EP4224393A3 (en) | 2023-08-23 |
JP7191934B2 (ja) | 2022-12-19 |
JP2020531955A (ja) | 2020-11-05 |
CN111033544A (zh) | 2020-04-17 |
GB201713046D0 (en) | 2017-09-27 |
US20210035212A1 (en) | 2021-02-04 |
JP2023027185A (ja) | 2023-03-01 |
WO2019034959A1 (en) | 2019-02-21 |
EP4224393A2 (en) | 2023-08-09 |
JP2024045394A (ja) | 2024-04-02 |
EP3669313B1 (en) | 2023-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7431934B2 (ja) | ブロックチェーン実装スクリプトベースのバイト解釈のための方法とシステム | |
JP7450678B2 (ja) | アンロッキングトランザクションバイトコードの制約注入 | |
KR20200096785A (ko) | 동시적 바이트코드 해석을 위한 블록체인 구현 시스템 및 방법 | |
JP7493571B2 (ja) | トラストレスな決定論的ステートマシン |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221207 |
|
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: 20231205 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20231227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240202 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7431934 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |