JP2021520169A - 更新可能なスマートコントラクト - Google Patents
更新可能なスマートコントラクト Download PDFInfo
- Publication number
- JP2021520169A JP2021520169A JP2021501115A JP2021501115A JP2021520169A JP 2021520169 A JP2021520169 A JP 2021520169A JP 2021501115 A JP2021501115 A JP 2021501115A JP 2021501115 A JP2021501115 A JP 2021501115A JP 2021520169 A JP2021520169 A JP 2021520169A
- Authority
- JP
- Japan
- Prior art keywords
- updatable
- smart contract
- version
- contract
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 91
- 230000002085 persistent effect Effects 0.000 claims description 71
- 230000015654 memory Effects 0.000 claims description 51
- 230000008569 process Effects 0.000 claims description 45
- 238000004364 calculation method Methods 0.000 claims description 22
- 238000013500 data storage Methods 0.000 claims description 21
- 238000000926 separation method Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 8
- 238000012546 transfer Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 abstract description 6
- 230000006870 function Effects 0.000 description 60
- 238000007792 addition Methods 0.000 description 14
- 230000007246 mechanism Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 230000005291 magnetic effect Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000003068 static effect Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 206010003694 Atrophy Diseases 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000037444 atrophy Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- 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/12—Applying verification of the received information
-
- 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]
-
- 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
-
- 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/2358—Change logging, detection, and notification
-
- 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/20—Administration of product repair or maintenance
-
- 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/22—Payment schemes or models
- G06Q20/229—Hierarchy of users of accounts
- G06Q20/2295—Parent-child type, e.g. where parent has control on child rights
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Child & Adolescent Psychology (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Human Resources & Organizations (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Mobile Radio Communication Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Description
本出願は、2018年3月29日に出願された「更新可能なスマートコントラクト」と題された米国仮特許出願第62/650,183号の優先権を主張する。
ブロックチェーン:暗号化を使用してリンクおよび保護される、ブロックと呼ばれる継続的に増加するレコードのリスト。各ブロックには通常、前のブロックの暗号化ハッシュ、タイムスタンプ、およびトランザクションデータが含まれる。ブロックチェーンは、トランザクションデータの変更に対して本質的に強いように設計されている。分散型台帳として使用される場合、ブロックチェーンは通常、新しいブロックを検証するためのプロトコルに集合的に準拠するピアツーピアネットワークによって管理される。一度記録されると、特定のブロックのデータは、後続のすべてのブロックを変更せずに遡及的に変更することはできない。これには、ネットワークの過半数の談合が必要になる。
*以下に説明するいくつかの実施形態では、クライアントコントラクトとサービスコントラクトの役割が逆になり、サービスコントラクトが永続的な格納と取得を提供し、クライアントコントラクトが更新可能である。
ここで説明するシステムと方法は、イーサリアムのようなプログラム可能な分散型台帳プラットフォームの導入によって生じた固有の問題に部分的に対処する。これらのプラットフォームは、プログラム自体が分散型台帳ネットワークに展開された後、ユーザー提供の分散型プログラム(「コントラクト」)と各プログラムによって永続的に分散型台帳に保存されているデータを緊密に結合する。この結合の効果は、従来技術のシステムでコントラクトを更新されたバージョンで置き換えようとすると、以前のバージョンによって保存されたすべてのデータが更新されたコントラクトで読み取れなくなることである。当業者は、これが、ネットワークの通常の日常の操作の範囲外である、分散型台帳ネットワークプログラミングへの分岐などの特別な手段を含まないことを理解するであろう。ここで説明する手法は、このような分散型台帳プラットフォームに適用される。
初日に次の機能を備えた計算機を作成したいと仮定する。
二つの数値を加算する
二つの数値を乗算する
すべての演算結果を保存し、そのデータは決して失わない
上記の機能の計算機を作るには、次の特徴を有する親コントラクトが展開される。
・2つの数値を取り、1つの数値を返すことができる任意の子コントラクトを呼び出す
・コントラクトアドレスを保存する機能
・返された結果を状態変数に格納する機能
上記の機能を備えた親コントラクトを展開したら、2つの子コントラクトを展開する必要がある。1つは加算関数を使用し、もう1つは乗算関数を使用する。これらの関数は両方とも2つの数値を受け取り、結果を返し、状態変数には何も格納しない。子コントラクトが展開されると、これら2つのコントラクトのアドレスが親コントラクトに更新される。これで、親コントラクトはこれら2つのコントラクトを呼び出して、結果を保存できる。 親と子コントラクトを組み合わせることで、計算機を構築するという要件が満たされる。
加算の子コントラクトを呼び出す
乗算の子コントラクトを呼び出す
返された結果を状態変数に格納する
親コントラクトには状態変数が含まれ、子コントラクトにはビジネスロジックのみが存在する。設計段階では、親コントラクトは、現在使用され、将来使用できるすべての状態変数を識別する必要がある。
本明細書に記載のサンプル実施形態では、クライアントコントラクト、1つの更新可能なサービスコントラクト、およびサービスコントラクトの新しいバージョンが展開されるたびにサービスコントラクトのアドレスでクライアントコントラクトを設定するための外部呼出しのためのメカニズムが提供される。
pragma solidity ^0.4.18;
// Note import of version 1 will work fine for
// updated service contracts with same interface
import "./ServiceContractVersion1.sol";
contract ClientContract {
struct SampleData {
bytes32 Name;
uint256 Amount;
uint256 Tax;
}
address public ServiceContractAddress;
// Client contract stores instances of SampleData structure
// in a map, keyed with an integer.
mapping(uint256 => SampleData) public SampleDataMap;
// Represents "Interface A" for updating Client with the address
// of the Service Contract
function linkToServiceContract (address _newServiceContractAddress)
public {
ServiceContractAddress = _newServiceContractAddress;
}
// Main function called by external accounts
function insertSampleData(uint256 _id, bytes23 _name, uint256 _amount)
public {
uint256 calculatedTax;
// Call the Service Contract in order to get the
// current tax calculation
// (corresponds to calling "Interface B" shown in diagram)
ServiceContract objServiceContract=
ServiceContract(ServiceContractAddress);
calculatedTax = objServiceContract.calculateTax(_amount);
SampleDataMap[_id] = SampleData(
{Name:_name, Amount:_amount, Tax:calculatedTax});
}
}
サービスコントラクトのバージョン1は次のように実装される。
サービスコントラクト、バージョン1
pragma solidity ^0.4.18;
contract ServiceContract {
// The signature of this function represents "Interface B" in diagram
function calculateTax(uint256 _amount) public pure returns (uint256 Tax)
{
//initial tax calculation is 10 percent
return(_amount * 110);
}
}
サービスコントラクトのバージョン2は次のように実装される。
サービスコントラクト、バージョン2
pragma solidity ^0.4.18;
contract ServiceContract {
// The signature of this function also represents "Interface B" in diagram
// and must be identical to the signature in service contract version 1.
function calculateTax(uint256 _amount) public pure returns (uint256 Tax)
{
// version 2 tax calculation is 13 percent
return(_amount * 113);
}
}
変形例
上記の実施形態の第1の変形例は、複数の別個に更新可能なサービスコントラクトを含み、それぞれが、呼び出しのための独自のインターフェース、ならびに個別のメカニズム(特定のサービスコントラクトの新しいバージョンが展開される度に外部呼出し元がそのサービスコントラクトのアドレスでクライアントコントラクトを設定する)を有する。
上記の各実施形態で説明されたインターフェースは、2つのタイプがある。クライアントコントラクトとサービスコントラクト(B、B1...Bm、C)との間の機能インターフェース、及びブロックチェーン(A、A1...Am)に展開された後に更新不可能なクライアントコントラクトに更新されたサービスコントラクトを見つけて使用するために知っておく必要があることを通知するために使用される登録インターフェースである。どちらの場合も、インターフェースという用語はソフトウェア感覚で使用される。つまり、独立したソフトウェアエンティティが相互作用する論理的なポイントである。より具体的には、インターフェースには、他のスマートコントラクトを含む外部の呼び出し元に見え且つアクセスできる関数シグネチャが含まれている。シグニチャには、関数名、入力が予期されるデータ型、および返されるデータ型が含まれる。ただし、インターフェースは実装について何も提供する必要はなく、つまり、呼び出されたときに関数が実際に何をするかについては何も提供しない。
任意のサービスコントラクトについて、上記の実施形態のインターフェースは、クライアントコントラクトによって呼び出されるそのすべての関数のシグニチャを集合的に含む。各変形例で、クライアントコントラクトまたはサービスコントラクトのいずれかが更新されない可能性があるため、これらのシグニチャを変更することはできない。そうしないと、それらの間の呼び出しは失敗する。変形例で更新されたサービスコントラクトを許可する場合、同じ入力で計算を実行できる場合であれば、各関数が実際に実行することは変更できる。これらのインターフェースを構築する方法(つまり、それらを設計する方法)は、上記の各変形例に関して以下で説明されている。
単純なケースで、このインターフェースを設計するための基本的なアプローチは、上記のサンプルコードに示されている。この場合、関数{linkToServiceContract}のシグネチャはインターフェースAである。この関数は、サービスコントラクトのバージョンが展開されるたびに手動で呼び出される。イーサリアムの場合、「手動で呼び出される」は、関数を呼び出すオーダーを含み、提供されたパラメータとして新しいサービスコントラクトアドレスを含むトランザクションがプログラマによってブロックチェーンに送信されることにより実際に達成されることを当業者は理解するであろう。
function ServiceContract(address_clientContractAddress) public{
ClientContract objClientContract =
ClientContract(_clientContractAddress);
objClientContract.linkToServiceContract(this);
}
当業者は、このサンプルが、各展開中にプログラマによってコンストラクタに提供されるクライアントコントラクトのアドレスを必要とするが、クライアントコントラクトは変更されないので、それはまたハードコーディングできることを理解するであろう。
function ServiceContract1(address_clientContractAddress) public{
ClientContract objClientContract =
ClientContract(_clientContractAddress);
objClientContract.linkToServiceContract1(this);
}
複数サービスコントラクト、単純登録インターフェース − クライアントで複数登録関数を有する(すなわち, {linkToServiceContract1}, {linkToServiceContract2})代わりに以下の1関数が使用される。
mapping(uint256 => address) public ServiceContractAddressMap;
function linkToServiceContract (uint256 _serviceContractIndex,
address_newServiceContractAddress)
public {
ServiceContractAddressMap[_interfaceIndex] =
_newServiceContractAddress;
}
この場合、プログラマーは、サービスコントラクトの1つに新しいバージョンが展開されるたびに、その関数を呼び出すトランザクションを送信する。サンプルコードを使用して、サービスコントラクト2が新しいバージョンで展開された場合、プログラマーは次の呼び出しを行うトランザクションを発行する。
linkToServiceContract(2,)
複数クライアントコントラクト−この変形例は、上記の実施形態のいずれにも適用できる。登録インターフェースは、分割によって生じるすべてのクライアントコントラクトで繰り返す必要がある。これらのインターフェースはすべて、サービスコントラクトバージョンの展開時に呼び出す必要がある。それを呼び出す方法は、上記の変形例のいずれかが開始点として使用された方法と同じである。
当業者はまた、本明細書に記載の更新可能なスマートコントラクトが、本明細書に記載の方法およびシステムを実装するための命令を含むソフトウェアを格納する適切なコンピューティングリソース(例えば、1つまたは複数のプロセッサ)およびメモリリソースを使用して実装され得ることを理解するであろう。本明細書に記載のシステムおよび方法を実装するための命令を記憶するためのメモリには、ランダムアクセスメモリ(RAM)、およびいくつかの実施形態では、レジスタなどの半導体内の記憶場所を含む半導体メモリデバイスが含まれる。静的メモリの特定の例には、半導体メモリデバイス(例えば、電気的にプログラム可能な読み取り専用メモリ(EPROM)、電気的に消去可能なプログラム可能な読み取り専用メモリ(EEPROM))、フラッシュメモリデバイス、内蔵ハードディスクやリムーバブルディスクなどの磁気ディスク、光磁気ディスク、RAMおよびCD−ROMおよびDVD−ROMディスクなどの不揮発性メモリを含む。
様々なメモリ(すなわち、720、730、および/またはプロセッサユニット710のメモリ)および/または記憶装置740は、本明細書に記載した1つまたは複数の方法または関数を実施または利用する1つまたは複数の命令およびデータ構造(例えば、命令)724のセットを記憶することができる。これらの命令は、プロセッサユニット710によって実行されると、開示された例を実装するために様々な動作が行われる。
「信号媒体」または「伝送媒体」という用語は、任意の形式の変調データ信号、搬送波などを含むと解釈されるものとする。「変調データ信号」という用語は、信号内の情報を符号化する方法で、その特性の1つまたは複数が設定または変更されている信号を意味する。
「機械可読媒体」という用語は、1つまたは複数の機械によって実行するための命令を格納、符号化、または運ぶことができ、1つまたは複数の機械に本開示の1つまたは複数の手法を実行させ、またはそのような命令によって使用される、またはそのような命令に関連するデータ構造を格納、符号化、または運ぶことができる任意の媒体である。非限定的な機械可読媒体の例には、ソリッドステートメモリ、ならびに光学および磁気媒体が含まれ得る。機械可読媒体の特定の例には、半導体メモリデバイス(例えば、電気的にプログラム可能な読み取り専用メモリ(EPROM)、電気的に消去可能なプログラム可能な読み取り専用メモリ(EEPROM))およびフラッシュメモリデバイス)、内蔵ハードディスクやリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ランダムアクセスメモリ(RAM)、およびCD−ROMおよびDVD−ROMディスクなどの不揮発性メモリを含む。いくつかの例では、機械可読媒体は、非一時的な機械可読媒体を含み得る。本明細書で使用される場合、「機械可読媒体」は、一時的な伝播信号を除外する。
Claims (23)
- ブロックチェーンに実装されたスマートコントラクトを更新する方法であって、
前記スマートコントラクトを更新可能なスマートコントラクトと更新不可能なスマートコントラクトに分離する工程であって、前記更新不可能なスマートコントラクトは、永続的にアクセス可能の必要があるデータについて前記ブロックチェーンへの永続的なデータの格納及び取得を処理し、前記更新可能なスマートコントラクトは、前記ブロックチェーンへのデータ格納及び取得を含まない、分離する工程と、
前記更新不可能なスマートコントラクトと前記更新可能なスマートコントラクトの第1のバージョンを展開する工程と、
前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスを提供する工程と、
前記更新不可能なスマートコントラクトが、前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスを前記ブロックチェーンへ格納する工程と、
前記更新不可能なスマートコントラクトが前記ブロックチェーンから永続的なデータを取得し、前記永続的なデータを前記更新可能なスマートコントラクトの前記第1のバージョンに渡す工程と、
前記更新可能なスマートコントラクトが前記永続的なデータに対する計算を実行し、前記永続的なデータの計算に基づいて更新されたデータを前記更新不可能なスマートコントラクトに返す工程と、
前記更新不可能なスマートコントラクトが、前記更新されたデータを前記ブロックチェーンに格納する工程と、
を有する、方法。 - 請求項1記載の方法において、前記更新可能なスマートコントラクトと前記更新不可能なスマートコントラクトが固定インターフェースを介して接続され、前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスが、前記固定インターフェースを介して前記更新不可能なスマートコントラクトに提供され、前記更新不可能なスマートコントラクトは、前記固定インターフェースを介して前記永続的なデータを前記更新可能なスマートコントラクトの前記第1のバージョンに渡し、前記更新可能なスマートコントラクトは、前記永続的なデータの計算に基づいて更新されたデータを前記更新不可能なスマートコントラクトに返すものである、方法。
- 請求項1記載の方法において、前記更新不可能なスマートコントラクトに前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスを提供する工程は、前記更新不可能なスマートコントラクトのインターフェースを前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスで呼び出す工程を有するものである、方法。
- 請求項3に記載の方法において、さらに
前記更新可能なスマートコントラクトの第2のバージョンを展開する工程と、
前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを使用して、前記更新不可能なスマートコントラクトのインターフェースを呼び出す工程と、
前記更新不可能なスマートコントラクトが、前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを前記ブロックチェーンへ格納する工程と、
前記更新不可能なスマートコントラクトが、前記ブロックチェーンから前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを取得し、前記取得したアドレスで前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出すことにより、前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程と、
を有するものである、方法 - 請求項4記載の方法において、前記分離する工程は、前記スマートコントラクトを前記更新不可能なスマートコントラクトと複数の前記更新可能なスマートコントラクトに分離する工程を有し、前記展開する工程は、各更新可能なスマートコントラクトの第1および第2のバージョンを展開する工程を有し、前記呼び出す工程は、前記各更新可能なスマートコントラクトのそれぞれのバージョンのアドレスでそれぞれのインターフェースを呼び出す工程を有し、前記格納する工程は、前記各更新可能なスマートコントラクトの前記それぞれのバージョンのアドレスを前記ブロックチェーンに格納する工程を有し、前記呼び出す工程は、前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを前記ブロックチェーンから取得し、前記取得したアドレスで前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程を有するものである、方法。
- 請求項4記載の方法において、前記分離する工程は、前記スマートコントラクトを前記更新不可能なスマートコントラクトと複数の前記更新可能なスマートコントラクトに分離する工程を有し、前記展開する工程は、各更新可能なスマートコントラクトの第1および第2のバージョンを展開する工程を有し、前記呼び出す工程は、前記インターフェースを前記各更新可能なスマートコントラクトに関連づけられた識別子と前記各更新可能なスマートコントラクトの前記それぞれのアドレスを使用して呼び出す工程を有し、前記格納する工程は、前記識別子と、前記各更新可能なスマートコントラクトの前記それぞれのバージョンのアドレスとを前記ブロックチェーンに格納する工程を有し、
前記呼び出す工程は、前記ブロックチェーンから前記更新可能なスマートコントラクトの前記第2のバージョンの識別子及びアドレスを取得し、前記取得されたアドレスで前記識別子によって識別される前記更新可能なスマートコントラクトの前記第2バージョンを呼び出す工程を有すものである、方法。 - 請求項4記載の方法において、前記更新可能なスマートコントラクトは自己登録型であり、前記呼び出す工程は、前記自己登録型の更新可能なスマートコントラクトがそのそれぞれのバージョンのアドレスを用いて前記更新不可能なスマートコントラクトの前記インターフェースを呼び出す工程を有するものである、方法。
- 請求項4記載の方法において、前記分離する工程は、前記スマートコントラクトを前記更新不可能なスマートコントラクトと複数の前記更新可能なスマートコントラクトに分離する工程を有し、前記展開する工程は、各更新可能なスマートコントラクトの第1および第2のバージョンを展開する工程を有し、前記更新可能なスマートコントラクトは自己登録型であり、前記呼び出す工程は、前記自己登録型の更新可能スマートコントラクトが、前記更新不可能なスマートコントラクトのそれぞれのインターフェースを前記各自己登録型の更新可能スマートコントラクトの前記それぞれのバージョンのアドレスで呼び出す工程を有し、前記格納する工程は、前記各更新可能なスマートコントラクトの前記それぞれのバージョンのアドレスを前記ブロックチェーンへ格納する工程を有し、前記呼び出す工程は、前記ブロックチェーンから前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを取得し、前記取得されたアドレスで前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程を有するものである、方法。
- 請求項4記載の方法において、前記更新不可能なスマートコントラクトは、前記ブロックチェーンから永続的なデータを取得し、前記永続的なデータを前記更新可能なスマートコントラクトに渡し、前記更新可能なスマートコントラクトは、前記永続的なデータを計算し、その計算に基づいたデータを、前記ブロックチェーンへの永続的な格納のために前記更新不可能なスマートコントラクトに返すものである、方法。
- 請求項4記載の方法において、前記分離する工程は、前記スマートコントラクトを複数の更新不可能なスマートコントラクトに分離する工程を有するものである、方法。
- 請求項1に記載の方法において、
前記更新可能なスマートコントラクトの前記第1のバージョンを展開する前に、前記更新不可能なスマートコントラクトのアドレスを前記更新可能なスマートコントラクトの前記第1のバージョンにハードコーディングする工程と、
前記更新可能なスマートコントラクトの第2のバージョンを展開する工程と、
前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程と、
前記更新可能なスマートコントラクトの前記第2のバージョンが、前記ハードコードされたアドレスで前記更新不可能なスマートコントラクトを呼び出す工程と、
前記更新不可能なスマートコントラクトが任意の永続的なデータを前記ブロックチェーンに格納する工程と、をさらに有するものである、方法。 - ブロックチェーンにスマートコントラクトを実装するためのシステムであって、
命令を格納するためのメモリと、
前記メモリに格納された前記命令を使用して以下の操作を実行する1つ以上のプロセッサと、
を有し、この操作は、
前記スマートコントラクトを更新可能なスマートコントラクトと更新不可能なスマートコントラクトに分離する工程であって、前記更新不可能なスマートコントラクトは、永続的にアクセス可能の必要があるデータについて、ブロックチェーンへの永続的なデータの格納と取得を処理し、前記更新可能なスマートコントラクトには前記ブロックチェーンへのデータ格納と取得を含まない、分離する工程と、
前記更新不可能なスマートコントラクトと前記更新可能なスマートコントラクトの第1のバージョンを展開する工程と、
前記更新不可能なスマートコントラクトに、前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスを提供する工程と、
前記更新不可能なスマートコントラクトが、前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスを前記ブロックチェーンに格納する工程と、
前記更新不可能なスマートコントラクトが前記ブロックチェーンから永続的なデータを取得し、前記永続的なデータを前記更新可能なスマートコントラクトの前記第1のバージョンに渡す工程と、
前記更新可能なスマートコントラクトが、前記永続的なデータの計算を実行し、前記永続的なデータの計算に基づいた更新されたデータを前記更新不可能なスマートコントラクトに返す工程と、
前記更新不可能なスマートコントラクトが前記更新されたデータを前記ブロックチェーンに格納する工程と、を含むものである、システム。 - 請求項12記載のシステムにおいて、前記更新可能なスマートコントラクトと前記更新不可能なスマートコントラクトを接続する固定インターフェースをさらに有し、前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスが、前記固定インターフェースを介して前記更新不可能なスマートコントラクトに提供され、前記更新不可能なスマートコントラクトは、前記固定インターフェースを介して前記永続的なデータを前記更新可能なスマートコントラクトの前記第1のバージョンに渡し、前記更新可能なスマートコントラクトは、前記永続的なデータの計算に基づいて更新されたデータを前記固定インターフェースを介して前記更新不可能なスマートコントラクトに返すものである、システム。
- 請求項12記載のシステムにおいて、前記メモリは、前記更新不可能なスマートコントラクトのインターフェースを前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスで呼び出すことにより、前記更新不可能なスマートコントラクトに前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスを提供する工程を含む操作を実行するためのさらなる命令を格納するものである、システム。
- 請求項14記載のシステムにおいて、前記メモリは、
前記更新可能なスマートコントラクトの第2のバージョンを展開する工程と、
前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを使用して、前記更新不可能なスマートコントラクトの前記インターフェースを呼び出す工程と、
前記更新不可能なスマートコントラクトが、前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを前記ブロックチェーンへ格納する工程と、
前記更新不可能なスマートコントラクトが、前記ブロックチェーンから前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを取得し、前記取得したアドレスで前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出すことにより、前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程と、を
含む操作を実行するための指令をさらに格納するものである、システム。 - 請求項15記載のシステムにおいて、前記分離する工程は、前記スマートコントラクトを前記更新不可能なスマートコントラクトと複数の前記更新可能なスマートコントラクトに分離する工程を有し、前記展開する工程は、各更新可能なスマートコントラクトの第1および第2のバージョンを展開する工程を有し、前記呼び出す工程は、前記各更新可能なスマートコントラクトのそれぞれのバージョンのアドレスでそれぞれのインターフェースを呼び出す工程を有し、前記格納する工程は、前記各更新可能なスマートコントラクトの前記それぞれのバージョンのアドレスを前記ブロックチェーンに格納する工程を有し、前記呼び出す工程は、前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを前記ブロックチェーンから取得し、前記取得したアドレスで前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程を有するものである、システム。
- 請求項15記載のシステムにおいて、前記分離する工程は、前記スマートコントラクトを前記更新不可能なスマートコントラクトと複数の前記更新可能なスマートコントラクトに分離する工程を有し、前記展開する工程は、各更新可能なスマートコントラクトの第1および第2のバージョンを展開する工程を有し、前記呼び出す工程は、前記各更新可能なスマートコントラクトに関連付けられた識別子と前記それぞれのアドレスとで前記インターフェースを呼び出す工程を有し、前記格納する工程は、前記各更新可能なスマートコントラクトの前記それぞれのバージョンの識別子とアドレスを前記ブロックチェーンへ格納する工程を有し、前記呼び出す工程は、前記ブロックチェーンから前記更新可能なスマートコントラクトの前記第2のバージョンの識別子とアドレスを取得し、前記取得したアドレスの識別子によって識別される前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程を有する、ものであるシステム。
- 請求項15記載のシステムにおいて、前記更新可能なスマートコントラクトは自己登録型であり、前記呼び出す工程は、前記自己登録型の更新可能スマートコントラクトがそのそれぞれのバージョンのアドレスで前記更新不可能スマートコントラクトの前記インターフェースを呼び出す工程を有するものである、システム。
- 請求項15記載のシステムにおいて、前記分離する工程は、、前記スマートコントラクトを前記更新不可能なスマートコントラクトと複数の前記更新可能なスマートコントラクトに分離する工程を有し、前記展開する工程は、各更新可能なスマートコントラクトの第1および第2のバージョンを展開する工程を有し、前記更新可能なスマートコントラクトは、自己登録型であり、前記呼び出す工程は、前記自己登録型の更新不可能なスマートコントラクトが、それぞれの前記自己登録型の更新可能スマートコントラクトの前記それぞれのバージョンのアドレスを使用して、前記更新不可能なスマートコントラクトのそれぞれのインターフェースを呼び出す工程を有し、前記格納する工程は、前記ブロックチェーンへ前記各更新可能なスマートコントラクトの前記それぞれのバージョンのアドレスに格納する工程を有し、前記呼び出す工程は、前記ブロックチェーンから前記更新可能なスマートコントラクトの前記第2のバージョンのアドレスを取得し、前記取得されたアドレスで前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程を有するものである、システム。
- 請求項15記載のシステムにおいて、前記メモリは、前記更新不可能スマートコントラクトが前記ブロックチェーンから永続的なデータを取得して、前記永続的なデータを前記更新可能スマートコントラクトに渡す工程と、前記更新可能なスマートコントラクトが、前記永続的なデータに基づいたデータを計算して、前記ブロックチェーンへの永続的な保存のために前記更新不可能なスマートコントラクトに前記データを返す工程を含む、操作を実行するための指令をさらに格納するものである、システム。
- 請求項15記載のシステムにおいて、前記メモリは、前記スマートコントラクトを複数の前記更新不可能なスマートコントラクトに分離する工程を含む、操作を実行するためのさらなる命令を格納するものである、システム。
- 請求項12記載のシステムにおいて、前記メモリは、
前記更新可能なスマートコントラクトの前記第1のバージョンを展開する前に、前記更新不可能なスマートコントラクトのアドレスを前記更新可能なスマートコントラクトの前記第1のバージョンにハードコーディングする工程と、
前記更新可能なスマートコントラクトの第2のバージョンを展開する工程と、
前記更新可能なスマートコントラクトの前記第2のバージョンを呼び出す工程と、
前記更新可能なスマートコントラクトの前記第2のバージョンが前記ハードコードされたアドレスで前記更新不可能なスマートコントラクトを呼び出す工程と、
前記更新不可能なスマートコントラクトが、任意の永続的なデータを前記ブロックチェーンに格納する工程と、
を含む操作を実行するためのさらなる命令を格納するものである、システム。 - ブロックチェーンに実装されたスマートコントラクトを更新するためのコンピューター命令を格納する非一時的なコンピューター読み取り可能な媒体であって、前記命令は、1つ以上のプロセッサーによって実行されると、
前記スマートコントラクトを更新可能なスマートコントラクトと更新不可能なスマートコントラクトに分離する工程であって、 前記更新不可能なスマートコントラクトは、永続的にアクセス可能の必要があるデータについて、前記ブロックチェーンへの永続的なデータの格納と取得を処理し、前記更新可能なスマートコントラクトは、前記ブロックチェーンへのデータ格納と取得を含まない、分離する工程と、
前記更新不可能なスマートコントラクトと前記更新可能なスマートコントラクトの第1のバージョンを展開する工程と、
前記更新不可能なスマートコントラクトに、前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスを提供する工程と、
前記更新不可能なスマートコントラクトが、前記更新可能なスマートコントラクトの前記第1のバージョンのアドレスを前記ブロックチェーンへ格納する工程と、
前記更新不可能なスマートコントラクトが前記ブロックチェーンから永続的なデータを取得し、前記永続的なデータを前記更新可能なスマートコントラクトの前記第1のバージョンに渡す工程と、
前記更新可能なスマートコントラクトが、前記永続的なデータに対して計算を実行し、前記永続的なデータの計算に基づいて更新されたデータを前記更新不可能なスマートコントラクトに返す工程と、
前記更新不可能なスマートコントラクトが前記更新されたデータを前記ブロックチェーンに格納する工程と、
を前記1つ以上のプロセッサーに実行させるものである、システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862650183P | 2018-03-29 | 2018-03-29 | |
US62/650,183 | 2018-03-29 | ||
PCT/IB2019/000463 WO2019186282A1 (en) | 2018-03-29 | 2019-03-29 | Updateable smart contracts |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2021520169A true JP2021520169A (ja) | 2021-08-12 |
JP2021520169A5 JP2021520169A5 (ja) | 2021-11-04 |
JP7429015B2 JP7429015B2 (ja) | 2024-02-07 |
Family
ID=67226290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021501115A Active JP7429015B2 (ja) | 2018-03-29 | 2019-03-29 | 更新可能なスマートコントラクト |
Country Status (9)
Country | Link |
---|---|
US (1) | US11575518B2 (ja) |
EP (1) | EP3777089A1 (ja) |
JP (1) | JP7429015B2 (ja) |
KR (1) | KR20210005035A (ja) |
CN (1) | CN112514345B (ja) |
CA (1) | CA3094904A1 (ja) |
MX (1) | MX2020010029A (ja) |
SG (1) | SG11202009594QA (ja) |
WO (1) | WO2019186282A1 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10991021B2 (en) | 2013-08-16 | 2021-04-27 | Mdsave Shared Services Inc. | Provisioning medical resources triggered by a lifecycle event |
US11551276B2 (en) | 2013-08-16 | 2023-01-10 | Mdsave Shared Services Inc. | Selectively redeemable bundled healthcare services with discreet payment distribution |
US11341556B2 (en) | 2013-08-16 | 2022-05-24 | Mdsave Shared Services Inc. | CPT code search engine for backend bundling of healthcare services and a virtual payment system |
US11915287B2 (en) | 2013-08-16 | 2024-02-27 | Mdsave Shared Services Inc. | Backend bundled healthcare services payment systems and methods |
US11341555B2 (en) | 2013-08-16 | 2022-05-24 | Mdsave Shared Services Inc. | Creating digital health assets |
US11449913B2 (en) | 2013-08-16 | 2022-09-20 | Mdsave Shared Services Inc. | Prepaid bundled health, dental, and veterinary services with virtual payment distribution |
US11475499B2 (en) | 2013-08-16 | 2022-10-18 | Mdsave Shared Services Inc. | Backend bundled healthcare services payment systems and methods |
US11475498B2 (en) | 2013-08-16 | 2022-10-18 | Mdsave Shared Services Inc. | Prepaid bundled health, dental, and veterinary services with virtual payment distribution |
US11501352B2 (en) | 2013-08-16 | 2022-11-15 | Mdsave Shared Services Inc. | Backend bundled healthcare services payment systems and methods |
WO2021041879A1 (en) * | 2019-08-30 | 2021-03-04 | EnergyXchain, LLC | Managing energy transactions using distributed ledger technology |
JPWO2021125109A1 (ja) * | 2019-12-19 | 2021-06-24 | ||
CN111177777B (zh) * | 2019-12-20 | 2022-08-02 | 语联网(武汉)信息技术有限公司 | 智能合约部署方法及电子设备 |
CN111179086B (zh) * | 2019-12-31 | 2024-01-02 | 杭州趣链科技有限公司 | 一种基于WebAssembly的智能合约虚拟机 |
US11658816B2 (en) * | 2020-04-15 | 2023-05-23 | Philips North America Llc | Document control system for blockchain |
US20210390531A1 (en) * | 2020-06-15 | 2021-12-16 | Icecap, LLC | Diamond custody system with blockchain non-fungible tokens (nfts) |
CN111562969B (zh) * | 2020-07-15 | 2020-10-20 | 百度在线网络技术(北京)有限公司 | 一种区块链的智能合约实现方法、装置、设备和介质 |
CN111679902B (zh) * | 2020-08-14 | 2020-11-10 | 支付宝(杭州)信息技术有限公司 | 基于区块链的智能合约调用方法及装置、电子设备 |
CN113486114B (zh) * | 2021-06-30 | 2023-03-28 | 电子科技大学 | 一种区块链智能合约调用管理方法 |
CN114201206A (zh) * | 2021-07-19 | 2022-03-18 | 南京邮电大学 | 一种区块链中基于代理合约的智能合约动态升级方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018037971A (ja) * | 2016-09-02 | 2018-03-08 | 日本電信電話株式会社 | 通信サービス提供システムおよび通信サービス提供方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10402792B2 (en) * | 2015-08-13 | 2019-09-03 | The Toronto-Dominion Bank | Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers |
US9992028B2 (en) * | 2015-11-26 | 2018-06-05 | International Business Machines Corporation | System, method, and computer program product for privacy-preserving transaction validation mechanisms for smart contracts that are included in a ledger |
US10445698B2 (en) * | 2016-06-30 | 2019-10-15 | Clause, Inc. | System and method for forming, storing, managing, and executing contracts |
CN106919419A (zh) * | 2017-02-03 | 2017-07-04 | 中钞信用卡产业发展有限公司北京智能卡技术研究院 | 区块链上的智能合约程序的更新方法及装置 |
US10356102B2 (en) * | 2017-02-24 | 2019-07-16 | Verizon Patent And Licensing Inc. | Permissions using blockchain |
US10817953B1 (en) * | 2017-03-03 | 2020-10-27 | State Farm Mutual Automobile Insurance Company | Using a distributed ledger for tracking VIN recordkeeping |
CN107391527B (zh) * | 2017-03-28 | 2020-03-27 | 创新先进技术有限公司 | 一种基于区块链的数据处理方法及设备 |
CN107038242B (zh) * | 2017-04-24 | 2020-02-07 | 杭州趣链科技有限公司 | 一种面向区块链全局智能合约业务数据解析方法 |
US10601665B2 (en) * | 2017-07-26 | 2020-03-24 | International Business Machines Corporation | Using blockchain smart contracts to manage dynamic data usage requirements |
CN107622385A (zh) * | 2017-08-28 | 2018-01-23 | 南京邮电大学 | 一种基于区块链智能合约的数字作品发行方法 |
US20190080402A1 (en) * | 2017-09-11 | 2019-03-14 | Templum, Llc | System and method for providing a regulatory-compliant token |
US11010403B2 (en) * | 2018-04-24 | 2021-05-18 | Microsoft Technology Licensing, Llc | Relational distributed ledger for smart contracts |
KR20210050525A (ko) * | 2018-08-10 | 2021-05-07 | 티제로그룹, 인코포레이티드 | 분할 가능한 증권형 토큰 |
-
2019
- 2019-03-29 US US17/043,520 patent/US11575518B2/en active Active
- 2019-03-29 CA CA3094904A patent/CA3094904A1/en active Pending
- 2019-03-29 WO PCT/IB2019/000463 patent/WO2019186282A1/en active Application Filing
- 2019-03-29 EP EP19737868.0A patent/EP3777089A1/en active Pending
- 2019-03-29 CN CN201980023935.2A patent/CN112514345B/zh active Active
- 2019-03-29 SG SG11202009594QA patent/SG11202009594QA/en unknown
- 2019-03-29 JP JP2021501115A patent/JP7429015B2/ja active Active
- 2019-03-29 KR KR1020207031298A patent/KR20210005035A/ko active Search and Examination
- 2019-03-29 MX MX2020010029A patent/MX2020010029A/es unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018037971A (ja) * | 2016-09-02 | 2018-03-08 | 日本電信電話株式会社 | 通信サービス提供システムおよび通信サービス提供方法 |
Non-Patent Citations (5)
Title |
---|
DAVID RUGENDYKE: "Upgradable Solidity Contract Design", ROCKET POOL, JPN6022042636, 22 November 2017 (2017-11-22), ISSN: 0004893705 * |
ELENA DIMITROVA: "Writing Upgradable Contracts in Solidity", COLONY BLOG, JPN6022042638, 18 January 2016 (2016-01-18), ISSN: 0004893706 * |
HASSAN ABDEL-RAHMAN: "Upgradable Contracts in Solidity", CARDSTACK, JPN6022042634, 20 January 2018 (2018-01-20), ISSN: 0004893704 * |
HIMANSHU CHAWLA: "How to write upgradable smart contracts in solidity !", QUILLHASH, JPN6022042639, 25 April 2018 (2018-04-25), ISSN: 0004893707 * |
藤本 真吾 ほか: "ブロックチェーンの安全な連携方式の提案", 2018年 暗号と情報セキュリティシンポジウム, vol. 4F1−2, JPN6019034278, 23 January 2018 (2018-01-23), JP, pages 1 - 6, ISSN: 0004893703 * |
Also Published As
Publication number | Publication date |
---|---|
US20210124722A1 (en) | 2021-04-29 |
KR20210005035A (ko) | 2021-01-13 |
SG11202009594QA (en) | 2020-10-29 |
CN112514345A (zh) | 2021-03-16 |
MX2020010029A (es) | 2021-02-16 |
EP3777089A1 (en) | 2021-02-17 |
CA3094904A1 (en) | 2019-10-03 |
US11575518B2 (en) | 2023-02-07 |
CN112514345B (zh) | 2023-08-01 |
JP7429015B2 (ja) | 2024-02-07 |
WO2019186282A1 (en) | 2019-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2021520169A (ja) | 更新可能なスマートコントラクト | |
US10079818B2 (en) | Providing domain-joined remote applications in a cloud environment | |
KR101997176B1 (ko) | 피어-투-피어 소프트웨어 업데이트 | |
US11218421B1 (en) | Methods and systems for migrating virtual private cloud (VPC) resources across public cloud environments | |
JP2020526810A (ja) | ブロックチェーン上で高レベル演算を提供する方法及びシステム | |
US9378034B2 (en) | Dynamic bytecode modification of classes and class hierarchies | |
WO2014150590A1 (en) | Local store data versioning | |
KR102156439B1 (ko) | 클라우드-엣지 시스템 및 이의 데이터 처리 방법 | |
CN108228147A (zh) | 一种性能数据日志获取方法及装置 | |
WO2013162561A1 (en) | Platform runtime abstraction | |
US8887181B1 (en) | Application add-on platform | |
US9122559B2 (en) | Extensible dependency management framework and method | |
US9467532B2 (en) | Server, arithmatic processing method, and arithmatic processing system | |
US20170177395A1 (en) | Embedded architecture based on process virtual machine | |
Houacine et al. | MCC-OSGi: An OSGi-based mobile cloud service model | |
AU2014253672B2 (en) | Checking undoability of an API-controlled computing system | |
US20170322792A1 (en) | Updating of operating system images | |
CN104573496B (zh) | 一种禁止启动项启动的方法和装置 | |
CN109617713A (zh) | 资源分发的实现方法及服务器 | |
US20140280495A1 (en) | Managing and implementing web application data snapshots | |
CN114884880B (zh) | 数据传输方法以及系统 | |
CN114157658A (zh) | 镜像仓库部署方法、装置、电子设备和计算机可读介质 | |
CN116594678A (zh) | 开发联调隔离方法、装置、计算机设备、存储介质 | |
CN114787794A (zh) | 用于数据库通信的基于计算机的装置 | |
EP2979428A1 (en) | Efficient socket transfer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201007 Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210921 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210921 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220927 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221011 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230110 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230308 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230620 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231010 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231010 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20231114 |
|
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: 20231219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240118 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7429015 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |