JP7116090B2 - ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法 - Google Patents

ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法 Download PDF

Info

Publication number
JP7116090B2
JP7116090B2 JP2019564821A JP2019564821A JP7116090B2 JP 7116090 B2 JP7116090 B2 JP 7116090B2 JP 2019564821 A JP2019564821 A JP 2019564821A JP 2019564821 A JP2019564821 A JP 2019564821A JP 7116090 B2 JP7116090 B2 JP 7116090B2
Authority
JP
Japan
Prior art keywords
time
agent
computer
client
implemented method
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
Application number
JP2019564821A
Other languages
English (en)
Other versions
JP2020524425A (ja
Inventor
トレヴェサン,トーマス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nchain Holdings Ltd
Original Assignee
Nchain Holdings Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nchain Holdings Ltd filed Critical Nchain Holdings Ltd
Publication of JP2020524425A publication Critical patent/JP2020524425A/ja
Priority to JP2022120410A priority Critical patent/JP7436580B2/ja
Application granted granted Critical
Publication of JP7116090B2 publication Critical patent/JP7116090B2/ja
Priority to JP2024017554A priority patent/JP2024050855A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)

Description

本願明細書は、概して、タイムリリース暗号化のためのデジタルタイムロックコントラクトに関する。本発明は、限定ではないが、特にビットコインブロックチェーンと共に使用することに適する。
本願明細書で、用語「ブロックチェーン」は、あらゆる形式の電子的な、コンピュータに基づく、分散台帳を含むよう使用される。これらは、総意に基づくブロックチェーン及びトランザクションチェーン技術、許可及び未許可台帳、共有台帳、及びそれらの変形を含む。最も広く知られているブロックチェーン技術の用途はビットコイン台帳であるが、他のブロックチェーンの実装が提案され開発されている。ビットコインは便宜上及び説明を目的として本願明細書において言及されるが、本発明はビットコインのブロックチェーンと共に使用することに限定されず、代替のブロックチェーンの実装及びプロトコルが本発明の範囲に含まれることに留意すべきである。
ブロックチェーンは、ブロックにより構成される、コンピュータに基づく非集中型の分散型システムとして実装される総意に基づく電子台帳である。また、ブロックはトランザクション及び他の情報により構成される。ビットコインの場合には、各トランザクションは、ブロックチェーンシステム内で参加者間のデジタルアセットの制御の転送を符号化するデータ構造であり、少なくとも1つのインプット及び少なくとも1つのアウトプットを含む。各ブロックは前のブロックのハッシュを含み、ブロックは共にチェーンになって、その発端からブロックチェーンに書き込まれている全てのトランザクションの永久的な変更不可能なレコードを生成する。トランザクションは、そのインプット及びアウトプットに組み込まれたスクリプトとして知られる小さなプログラムを含む。スクリプトは、トランザクションのアウトプットがどのように及び誰によりアクセス可能かを指定する。ビットコインプラットフォーム上で、これらのスクリプトは、スタックに基づくスクリプト言語を用いて記述される。
トランザクションがブロックチェーンに書き込まれるために、「検証され」なければならない。幾つかのネットワークノードは、マイナーとしての機能を果たし、各トランザクションが有効であることを保証するために作業を実行し、無効なトランザクションはネットワークから拒否される。例えば、ノードにインストールされたソフトウェアクライアントは、未使用トランザクションアウトプット(unspent transaction outputs:UTXO)を参照するトランザクションに対して、この検証作業を実行する。検証は、そのロック及びアンロックスクリプトを実行することにより実行されてよい。ロック及びアンロックスクリプトの実行が真と評価した場合、及び特定の他の条件が満たされた場合、トランザクションは有効であり、トランザクションはブロックチェーンに書き込まれる。したがって、トランザクションがブロックチェーンに書き込まれるためには、トランザクションは、i)トランザクションを受信したノードにより検証され、トランザクションが検証された場合に、ノードは該トランザクションをネットワーク内の他のノードに中継し、ii)マイナーにより構築された新しいブロックに追加し、iii)マイニングされ、つまり過去のトランザクションの公開台帳に追加されなければならない。トランザクションは、充分な数のブロックがブロックチェーンに追加されて、トランザクションが事実上不可逆にされると、確認されたと見なされる。
ブロックチェーン技術は、暗号通貨実装の使用で最も広く知られているが、デジタル起業家が、新しいシステムを実装するために、ビットコインの基づく暗号通貨セキュリティシステム、及びブロックチェーンに格納可能なデータの両方の使用を探索し始めている。ブロックチェーンが、暗号通貨の領域に限定されない自動タスク及びプロセスのために使用できれば、非常に有利である。このようなソリューションは、それらの用途において一層多様でありながら、ブロックチェーンの利点(例えば、永久的、イベントの耐タンパレコード、分散プロセス、等)を利用できる。
研究の一分野は、「スマートコントラクト(smart contracts)」の実装のためのブロックチェーンの使用である。これらは、機械可読取引又は合意の条件の実行を自動化するために設計されたコンピュータプログラムである。自然言語で記述され得る従来の取引と異なり、スマートコントラクトは、結果を生成するためにインプットを処理できるルールを含み、該結果に依存して動作を実行させることのできる、機械実行可能プログラムである。
ブロックチェーンに関連する関心の他の分野は、ブロックチェーンを介する現実世界のエンティティの表現及び転送のための「トークン」(又は「カラードコイン」)の使用である。潜在的に機密な又は秘密のアイテムは、識別可能な意味又は値を有しないトークンにより表現できる。したがって、トークンは、現実世界のアイテムをブロックチェーンから参照できるようにする識別子として機能する。
前述のように、本願明細書は、概して、タイムリリース暗号化のためのデジタルタイムロックコントラクトに関する。タイムリリース暗号化の基本的目的は、メッセージが現時点では暗号化できるが、将来の何らかの指定された時間まで誰にも復号できないことである。これは、事実上、「将来にメッセージを送る」又はメッセージを「タイムカプセル」に入れる方法である。以下を含む、この種の機能の多くの可能な用途がある。
・秘密ビッドオークション
・鍵エスクロー方式
・受理証不要の投票
・機密データのタイムリリース
・政治的に慎重を期する情報の「デッドマン装置」
タイムリリース暗号化システムを実装するための2つの一般的アプローチがあり、これらは1996年のRivest, Shamir、及びWagnerによる着想についての最初の詳細な論文[Rivest1996]に概説された。これらは以下の通りである。
1.「タイムロックパズル」の使用。復号するために時間の掛かる計算作業を必要とする情報の暗号化。
2.将来の指定時間まで、秘密情報を漏らさないことを約束する信頼できるエージェントの使用。
これらのアプローチのうちの前者は、第三者の関与を必要としないが、2つの深刻且つ不可避な欠点がある。つまり、第1に、計算ハードウェアの性能差及び未知の将来の技術革新のために、特定のパズルを解くためにどれくらい長く掛かるかを高精度に予測することができないことである。第2に、復号を実行するパーティは、タイムロックの期間全体の間、連続する高コストな計算作業を実行しなければならない。
後者のアプローチは、公開のタイミングにおいて正確且つ精密である潜在能力を有し、また、任意のパーティに高価な計算を実行することを要求しない。しかしながら、正しい時間に正しい鍵を公開するために、信頼されなければならない第三者エージェントに依存する。正しく動作を実行するようエージェントが効果的に奨励されない限り、エージェントにおける信頼は、従って重大である。
ブロックチェーンネットワーク上のタイムロック暗号化に関する背景情報は、以下に纏められる。
「Ethereum Alarm Clock」は、ユーザが、デポジットを提供した後に、スケジューリングされた時間期間にトランザクションを実行できることを提供する。例えば以下のURLを参照する:docs.ethereum-alarm-clock.com/en/latest/claiming.html#claim-deposit;及びhttps://github.com/pipermerriam/ethereum-alarm-clock/commits/master/docs/claiming.rst。これは、後の時点における及び特定時間ウインドウの間のイベントのスケジューリングを可能にする。さらに、実行者は、デポジットを取り戻すことができるが、指定時間ウインドウ内に実行が行われなかった場合にはデポジットを喪失し得る。支払は、また、スケジューリングされた時間にトランザクションを実行するアカウントに支払われるサービスに含まれる。
「μchain: How to Forget without Hard Forks」(URL: https://eprint.iacr.org/2017/106.pdf)は、タイムロック暗号化の一例を開示する。開示の使用例では、ユーザは機密書類を暗号化する。復号者は、期限tが経過したかどうかをチェックする機能をトリガするスマートコントラクトへトランザクションを送信することにより、復号鍵へのアクセスを要求する。時間が正しい場合、復号者は鍵を取得する。システムが、特定時間ウインドウ内に要求された場合にのみ復号鍵を利用可能にするような、より高度な機能を提供できることが、提案される。
「Secure Multiparty Computations on Bitcoin」(URL: https://eprint.iacr.org/2013/784.pdf)は、ビットコイン通貨を用いるマルチパーティくじ引きのためのプロトコルを開示する。この文献は、ビットコインシステムが、コミッターが彼の秘密を特定時間フレーム内に暴露しなければならない又は罰金を支払わなければならない、定時コミットメントのバージョンを構成するための魅力的な方法を提供することを示す。デポジットは、誠実に振る舞わない参加者によりゲームが早く終わる場合に、没収される参加者により提供される。
US2016086175は、資産にアクセスするブロックチェーンシステムを開示する。ルーム(room)は、特定期間の間、部屋を借りたいと望むユーザによりクレジットがデポジットされるアドレスと共に、秘密/公開鍵ペアを有し、これらのデータはトランザクションに含まれる。時間が正しいとき、解錠され、ユーザは部屋に入ることを許可される。部屋が要求された時間の間、利用可能でない場合、返金される部屋へのアクセスを得るために、ユーザにより部屋の提供者に料金が支払われる。
本願明細書は、タイムリリース暗号化サービスを許可無しパブリックブロックチェーンによりセキュアにすることを可能にするシステム及び方法を記載する。サービスは、公開鍵を生成し、次にサービスのクライアントにより指定された将来の時間に対応する秘密鍵を公開する。このサービスのセキュリティ及び信頼性は、新規なスマートコントラクトシステムから得られ、一例ではビットコインスクリプトとして実装される。これは、秘密鍵を正しい時間に公開することを奨励し、早い又は遅い公開又は鍵の漏洩に不利益をもたらす。サービスは、信頼できない設計である。つまり、クライアントは秘密鍵へのアクセスを与えられないが、彼らは、正しい値がコントラクト内で指定された時間にブロックチェーン上に公開されるという保証と共に、サービスの暗号化アセットを提供するだけである。一例では、これは、トランザクションアウトプットのタイムロック及びハッシュロックと組み合わされたゼロ知識証明により達成される。
本発明の第1の態様によると、ブロックチェーンネットワーク上で公開暗号鍵を生成し及び指定時間期間の後に対応する秘密暗号鍵へのアクセスを可能にする、コンピュータにより実施される方法であって、前記方法は、
前記ブロックチェーンネットワーク上のエージェントとクライアントとの間のデジタルタイムロックコントラクトを構成するステップであって、前記エージェントは前記ブロックチェーンネットワーク上のエージェントアドレスと関連するエージェント署名とを有し、前記クライアントは前記ブロックチェーンネットワーク上のクライアントアドレスと関連するクライアント署名とを有し、前記デジタルタイムロックコントラクトは、
(i)前記エージェントが、前記ブロックチェーンネットワーク上の前記公開暗号鍵に対応する前記秘密暗号鍵を保持し、次に前記暗号秘密を前記ブロックチェーンネットワークへ指定時間ウインドウ内に公開すること、
(ii)前記エージェントが、保持するために第1暗号化アセット(例えばデポジット)を提供し、次に前記暗号秘密鍵を前記ブロックチェーンネットワークに前記指定時間ウインドウ内に公開し、前記第1暗号化アセットは、前記暗号秘密鍵が前記ブロックチェーンネットワーク上に前記指定時間ウインドウ内に公開されるとき、前記ブロックチェーンネットワーク上の前記エージェントアドレスへ転送可能であること、
(iii)前記クライアントは、保持するために第2暗号化アセット(例えば料金)を前記エージェントに提供し、次に前記暗号秘密鍵を前記ブロックチェーンネットワークに前記指定時間ウインドウ内に公開し、前記第2暗号化アセットは、前記暗号秘密鍵が前記ブロックチェーンネットワークに前記指定時間ウインドウ内に公開されるとき、前記ブロックチェーンネットワーク上の前記エージェントアドレスへ転送可能であること、
(iv)前記暗号秘密鍵が前記時間ウインドウの始まる前に公開される場合、前記第2暗号化アセットは、前記ブロックチェーンネットワーク上の前記クライアントアドレスへ転送可能であること(前記クライアント又は他の誰かが、前記エージェントの前記第1暗号化アセットを取り込むために前記秘密鍵を使用してよい)、
(v)前記暗号秘密鍵が前記時間ウインドウの終わる前に公開されない場合、前記第2暗号化アセットは前記ブロックチェーンネットワーク上の前記クライアントアドレスへ転送可能であること(前記第1暗号化アセットは、前記ブロックチェーンネットワーク上の前記クライアントアドレスへも転送可能であってよい)、
を指定する、ステップ、
前記ブロックチェーン上でのマイニングのために、前記デジタルタイムロックコントラクトを前記ブロックチェーンネットワークへブロードキャストするステップ、
のうちの一方又は両方を含む、コンピュータにより実施される方法が提供される。
前記デジタルタイムロックコントラクトを構成するステップ、及び前記コントラクトをブロードキャストするステップは、同じエンティティにより実行されてよい。しかしながら、これらのステップは異なるエンティティにより実行され得ることも考えられる。ここで、前述の定義は、任意の単一エンティティにより要求されているステップの一方又は両方を指定する。
留意すべきことに、ここに記載される本発明は、ビジネスを行うより良い方法として、ブロックチェーンで実装されるタイムロックコントラクトを提供するだけではない。本発明の開始点は、暗号化方法を用いてタイムロックコントラクトを実装することが知られていることである。しかしながら、これらの従来のシステムは技術的問題を有する。従来技術に伴う技術的問題は、それらがセキュアでなく、又はそれらの使用が困難であり計算集約的であり得ることである。これらの問題は生来技術的である。本発明は、セキュアであり且つ利用が容易であり且つ計算効率的なソリューションを提供する。つまり、本発明は、タイムロックコントラクトを信頼不要な方法で実装するために、セキュリティと低計算オーバヘッドを組み合わせるシステムを提供するという観点で、より良いコンピュータシステムを提供する。セキュリティ、使用の容易さ、及び計算効率の組み合わせを提供することは、本発明の技術的貢献である。
前記コンピュータにより実施される方法は、前記クライアントが、デジタルタイムロックコントラクトを設定する要望を示す要求を送信することにより、開始され得る。前記クライアントは、前記第2暗号化アセット及び前記タイムウインドウを指定できる。前記エージェントは、次に、前記暗号公開鍵及び暗号秘密鍵ペアを構成できる。前記エージェントは、次に、前記デジタルタイムロックコントラクトも構成できる。前記デジタルタイムロックコントラクトは、前記ブロックチェーンに埋め込まれた後にアクティブになることができ、前記暗号公開鍵は、データを暗号化するために使用されるよう公に利用可能であり、該データは前記暗号秘密鍵が公開されるまで復号できない。
前記時間ウインドウは、前記時間ウインドウが始まる時間t及び時間期間Δtとして指定でき、Δtの後に前記時間ウインドウが終わる。前記デジタルタイムロックコントラクトは、以下の転送のうちの1つ以上が可能になるよう構成できる:
前記第2暗号化アセットは、任意の時間に、前記暗号秘密鍵、前記暗号秘密鍵から導出可能なタイムロックパズル値、及び前記クライアント署名により、前記クライアントアドレスへ転送可能である、
前記第2暗号化アセットは、時間tの後に、前記暗号秘密鍵及び前記エージェント署名により、前記エージェントアドレスへ転送可能である、
前記第2暗号化アセットは、時間t+Δtの後に、前記クライアント署名により、前記クライアントアドレスへ転送可能である、
前記第1暗号化アセットは、任意の時間に、前記暗号秘密鍵及び前記暗号秘密鍵から導出可能なタイムロックパズル値を提供することにより、任意のアドレスへ転送可能である、
前記第1暗号化アセットは、時間tの後に、前記暗号秘密鍵及び前記エージェント署名により、前記エージェントアドレスへ転送可能である、
前記第1暗号化アセットは、時間t+Δtの後に、前記クライアント署名により、前記クライアントアドレスへ転送可能である。
以上に鑑み、ブロックチェーンネットワーク上で公開暗号鍵を生成し、指定時間期間の後に対応する秘密暗号鍵へのアクセスを可能にする、コンピュータにより実施される方法の別の定義は、
前記ブロックチェーンネットワーク上のエージェントとクライアントとの間のデジタルタイムロックコントラクトを構成するステップであって、前記エージェントは前記ブロックチェーンネットワーク上のエージェントアドレスと関連するエージェント署名とを有し、前記クライアントは前記ブロックチェーンネットワーク上のクライアントアドレスと関連するクライアント署名とを有し、前記デジタルタイムロックコントラクトは、
前記エージェントからの第1暗号化アセット(例えばデポジット)、
前記クライアントからの第2暗号化アセット(例えば料金)、
暗号公開鍵、及び、
前記エージェントが前記暗号公開鍵に対応する暗号秘密鍵を公開すべき時間ウインドウであって、前記時間ウインドウは前記時間ウインドウが始まる時間tと時間期間Δtとにより定められ、前記時間期間Δtの後に前記時間ウインドウが終わる、時間ウインドウ、
を指定し、前記デジタルタイムロックコントラクトは、以下の転送が可能になるよう構成される:
前記第2暗号化アセットは、任意の時間に、前記暗号秘密鍵及び前記暗号鍵から導出可能なタイムロックパズル値、及び前記クライアント署名により、前記クライアントアドレスへ転送可能である、
前記第2暗号化アセットは、時間tの後に、前記暗号秘密鍵及び前記エージェント署名により、前記エージェントアドレスへ転送可能である、
前記第2暗号化アセットは、時間t+Δtの後に、前記クライアント署名により、前記クライアントアドレスへ転送可能である、
前記第1暗号化アセットは、任意の時間に、前記暗号秘密鍵及び前記暗号秘密鍵から導出可能なタイムロックパズル値を提供することにより、任意のアドレスへ転送可能である、
前記第1暗号化アセットは、時間tの後に、前記暗号秘密鍵及び前記エージェント署名により、前記エージェントアドレスへ転送可能である、及び、
前記第1暗号化アセットは、時間t+Δtの後に、前記クライアント署名により、前記クライアントアドレスへ転送可能である、ステップと、
前記デジタルタイムロックコントラクトを、前記ブロックチェーン上でのマイニングのために、前記ブロックチェーンネットワークへブロードキャストするステップと、のうちの一方又は両方を含む。
前記エージェントは、複数のクライアントと共に複数のデジタルタイムロックコントラクトに参加してよい。前記エージェントは、前記秘密鍵を保持する単一のエージェントであり得る。代替として、前記エージェントは、それぞれが前記暗号秘密鍵のシェアを保持する複数のエージェントを含んでよい。この場合、前記暗号秘密鍵の導出は、前記複数のエージェントにより提供される閾数の秘密鍵シェアにより有効になる。前記第1暗号化アセット及び前記第2暗号化アセットは、次に前記エージェントの間で分割される。サービスのセキュリティ及び信頼性は、中核のプロトコルを、それぞれ個別のコントラクトを有する独立したサービスプロバイダのグループに拡張し、ディーラー不要のシークレット共有(m-of-n)閾値方式を用いて秘密鍵のタイムリリースを分配することにより、更に強力にできる。したがって、サブ閾数の機能不全のサービスプロバイダに対して耐性がある。私達は、任意の料金が支払われる前にコントラクトを解除するために、共有公開鍵に対応する秘密鍵シェアが公開されることをクライアントが証明することを可能にする拡張ゼロ知識証明を記載する。
クライアントは、デジタルタイムロックコントラクトに基づき、複数のエンドユーザにサービスを提供できる。例えば、サービスは、秘密ビッドオークション、鍵エスクロー方式、投票方式、機密データのタイムリリース、のうちの1つ以上であってよい。
ここに記載のコンピュータにより実施される方法は、コンピュータ実行可能命令を含むコンピュータ可読記憶媒体であって、該命令は実行されると、ここに記載の方法を実行するようプロセッサを構成する、コンピュータ可読記憶媒体を提供することにより実施できる。さらに、電子装置であって、インタフェース装置と、前記インタフェース装置に結合されたプロセッサと、前記プロセッサに結合されたメモリであって、前記メモリは、実行されると、ここに記載の方法を実行するよう前記プロセッサを構成するコンピュータ実行可能命令を格納している、メモリと、を含む電子装置が提供され得る。
ここに記載の本発明は、前述の背景技術で議論した従来技術にとは異なる。
Ethereum Alarm Clockシステムは、エージェントが公開鍵に関連する秘密暗号鍵を保持し、及び次に指定時間ウインドウ内に秘密鍵を公開し、エージェントが適正な時間に秘密暗号鍵を公開することを保証するために、デジタルコントラクトが該システムを管理するために提供されることを開示していない点で、ここに記載のシステムと大きく異なる。さらに、従来のシステムは、使用に関連付けられたデータが暗号化される指定時間量の間、公開鍵の使用を可能にせず、次に使用に関連付けられたデータの復号を可能にするために秘密鍵を公開しない。
「μchain: How to Forget without Hard Forks」で記載されたシステムも、エージェントが公開鍵に関連する秘密暗号鍵を保持し、及び次に指定時間ウインドウ内に秘密鍵を公開し、エージェントが適正な時間に秘密暗号鍵を公開することを保証するために、デジタルコントラクトが該システムを管理するために提供されることを開示していない点で、ここに記載のシステムと大きく異なると考えられる。従来のシステムは、使用に関連付けられたデータが暗号化される指定時間量の間、公開鍵の使用を可能にせず、次に使用に関連付けられたデータの復号を可能にするために秘密鍵を公開しないと考えられる。ここで、秘密鍵の公開は、適正な時間における公開を保証する条項を前提とする。むしろ、μchainの文献では、復号鍵は、エージェントにより生成されるのではなく、システムのユーザにより生成される。つまり、ユーザは、復号鍵の公開を制御したままであり、したがって、システムはユーザを信頼することに依存する。ユーザは、したがって、直ちにセキュリティを侵害し得る。
同様に、「Secure Multiparty Computations on Bitcoin」及びUS2016086175も、エージェントが公開鍵に関連する秘密暗号鍵を保持し、及び次に指定時間ウインドウ内に秘密鍵を公開し、エージェントが適正な時間に秘密暗号鍵を公開することを保証するために、デジタルコントラクトが該システムを管理するために提供されることを開示していない点で、ここに記載のシステムと大きく異なる。
本発明の上述の及び他の態様は、本願明細書に記載される実施形態から明らかであり、それらの実施形態を参照して教示される。本発明の実施形態は、単なる例として添付の図面を参照して以下に説明される。
クライアントとエージェントとの間の通信チャネルの確立後に、クライアントとエージェントとの間でデジタルタイムロックコントラクトを設定する初期化プロトコルのフロー図を示す。 クライアントとエージェントとの間のデジタルタイムロックコントラクトを構成するトランザクションスクリプトの一例を示す。 時間期間に依存するデジタルタイムロックコントラクト及びアウトプットの宛先の概略時系列を示す。 マルチエージェントプロトコルの概略図を示す。
ビットコインブロックチェーンの出現は、(ブロックヘッダに記録されるような)現時点における分散型のグローバルな総意、及びコントラクトの信頼不要な(trustless)自動実行(scripts)の両方の存在するシステムをもたらした。これらは、セキュア且つ信頼できるタイムリリース暗号化サービスの実現のために活用可能な独特の特徴である。本願明細書では、私達は、ビットコインスクリプトに基づくスマートコントラクト、及びサービスプロバイダにおける完全な信頼に依存しないゼロ知識証明の組み合わを利用するタイムリリース暗号化サービスにためのシステムを記載する。さらに、私達は、単一の鍵公開に対して複数のエージェントを使用して、分散化を通じてサービスの回復力及びセキュリティを向上するために、プロトコルがディーラー無し閾値方式を用いてどのように拡張可能であるかを示す。
特定の構成は、プロトコルを完全に信頼不要にするための知識のゼロ知識証明(zero-knowledge proofs:ZKP)の概念を利用する。方式の部分として使用され得る2つの技術がある。つまり、非対話型証明、及びcut-and-chooseである。
非対話型ゼロ知識(Non-interactive zero-knowledge:NIZK)証明は、関与するパーティ間で必要な通信を最小化するので、本願にとって好ましい。しかしながら、それらは、実装が複雑且つ計算コストが高くなり得る。形式上、NIZK証明は、証明者(prover)から検証者(verifier)に直接提供可能であるが、この場合には彼らは信頼できる設定(σ)を必要とする。本願では、検証者は、信頼できる設定を実行し、次にこれを証明者へ送信する。次に、証明者は、証明(π)を計算し、これを検証者へ返送する。
第1の適用では、私達は、(検証者に提供される)ハッシュのプレイメージが楕円曲線公開鍵(検証者にも提供される)に対応する秘密鍵と等しいというゼロ知識証明を要求する。この特定のNIZKの数学的構造は、[Fuchsbauer 2008]で詳述される。このNIZK証明は、zk-SNARKS[Lundkvist 2017]により実施可能である。
拡張システムを用いる第2の適用では、効率的NIZK証明の構成は興味深い。この場合、ZKPの呼び出したcut-and-chooseの簡易相互作用タイプが利用可能である[Crepeau 2011]。本アプローチでは、証明者は、検証者に、異なるステートメントへの膨大な数のコミットメントを提供する。検証者は、次に、これらのコミットメントの部分集合をランダムに選択し、証明者がそれらを証明するための知識を送信することを要求する。ステートメントのこの部分集合が真であることが示されると、検証者は、残りのステートメントも真である確率が分かる。
特定の構成は、ビットコイントランザクションスクリプトの幾つかの標準的特徴を利用して、アウトプットのタイムロック及びハッシュロックの使用を可能にする。
ビットコインアウトプットは、(例えば、HASH256オペコードを用いて)指定された値にハッシュするシークレットを提供するよう、アンロックスクリプトが必要とされるように、構成可能である。つまり、アウトプットを使用するために、インプットは、該アウトプットの中で指定された別の値にハッシュする値を提供しなければならない[Maxwell 2016]。
アウトプットは、また、何らかの予め指定された将来の時点まで、使用不可能であるように構成可能である。これは、CHECKLOCKTIMEVERIFY(CLTV)オペコードを用いて達成される。該オペコードは、指定されたユニックスエポックタイム(unix epoch time)又は指定されたブロック高に達するまで、トランザクションの使用を防ぐために使用可能である[Todd 2014]。
スマートコントラクト構造を保証するために、短いタイムロックパズルの新規な適用が、「レース攻撃(race attack)」を防ぐために利用される。(アウトプットのロックを)設定するために無視できる計算作業しか必要としない連続二乗タイムロックパズル(successive squaring time-lockpuzzle)が使用可能である[Rivest 1996]。設定パラメータを所有しない第2パーティでは、パズルを解除し及びアウトプット値を明らかにするために、設定数の(特定時間量を要する)シリアル計算がインプットに対して実行されなければならない。
信頼できるエージェントによる時間公開暗号化方式の1つの構成では、エージェントは、(公開鍵暗号システムを用いる)公開秘密鍵ペアを生成し、情報を暗号化するために使用すべきクライアントの公開鍵を公開し、次に受信者へ送信する。次に、合意した時間で(エージェントにより決定される)、エージェントは、情報を復号するために、秘密鍵を受信者に公開する。この場合、エージェントは、この動作を実行するために完全に信頼され、及び秘密鍵をセキュアに保持する必要がある。
Rabin及びThorpe[Rabin 2006]は、鍵生成を何らかの信頼するに値するエージェントのグループの間で分散することにより、この構成のセキュリティ及び障害耐性を拡張するためにシステムを提案した。その結果、パーティのうちの幾つかが不誠実である又は情報漏洩した場合でも、秘密鍵を公開すべき適正な時間であると閾数のエージェントが合意するまで、彼らのうちの誰も完全な秘密鍵を知ることができない。
このシステムでは、ネットワーク接続されたエージェント(n)のグループは、ディーラー不要閾(m-of-n)シークレット共有方式を用いて協力して、共有秘密鍵及び対応する共有公開鍵を生成する。該共有公開鍵は、次にクライアントに公開される(クライアントは、次にメッセージを暗号化できる)。閾数(m)のエージェントが、鍵を公開すべき時間に達したことに合意するときのみ、完全な秘密鍵が再構成され、受信者へ送信され得る。
シャミアの秘密共有方式(Shamir's secret sharing scheme:SSSS)[Shamir 1979]は、多項式の次数tがt+1個の点の任意の集合に適合できるという概念に基づく。次数tの多項式f(x)は、共有秘密鍵により定数項として形成され(a=f(0))、残りの係数はランダムに選ばれる。曲線上のn個の点は、次に、各参加者に与えられる。m=t+1以上の参加者が次に彼らの点を結合する場合、これらの点に次数tの多項式を適合させる充分な情報があり、aはシークレットとして解明される。この方式は、任意の閾数を有する任意の膨大な数のパーティの間で、単一の秘密鍵の共有を可能にする。
標準的なSSSSは、多項式を生成し及び(単一障害点であり、したがって信頼不要ではない)シークレットシェアを分散するために、信頼できるディーラーの要件を除去するよう拡張可能である。このディーラー不要SSSSでは、各参加者Piは、彼ら自身のランダムな次数tの多項式fi(x)を生成し、次に、fi(j)を各々の他の参加者Pjへセキュアに送信する。各Piは、次に全ての受信点を加算し、f(i)+f(i)+...+fn(i)、彼らのシークレットシェアSi=f(i)を取得する。これは、共有多項式f(x)上のPi点である。
シークレットシェアが生成された後に、共有秘密鍵に対応する(どの参加者も知らない)公開鍵は、(楕円曲線生成器Gにより)以下のように計算される。
参加者Piは、彼らの公開鍵シェアをbisi×Gとして計算する。ここで、i=1,...,t+1であり、次式の通りである。
Figure 0007116090000001
これらの公開鍵シェアは、次に、ブロードキャストされ、共有公開鍵Aは、次に、単にt+1個のシェアの和として以下のように計算される。
Figure 0007116090000002
<単一エージェントプロトコル>
本章は、単一エージェントが時間公開暗号化サービスを提供する場合の構成を記載する。プロトコルは、ビットコイントランザクション及びその生来のスクリプト言語(Script)に関連して記載され、一般性を失わないが、パブリックブロックチェーン及び等価なスクリプト機能を有する任意の暗号化システムに適用可能である。
プロトコルは、2つのパーティに直接関連する。
・クライアントは、必要なロックタイム暗号化サービスのパラメータを指定し、そのための料金(F)を支払う。クライアントは、アドレスCAddrを制御する。
・エージェントは、タイムロック暗号化サービスを実行し、正常終了すると料金を受け取る。エージェントは、サービスが適正に実行されない場合に没収されるデポジット(D)を提供する。エージェントは、アドレスAAddrを制御する。
図1は、クライアントとエージェントとの間の通信チャネルの確立後に、クライアントとエージェントとの間でデジタルタイムロックコントラクトを設定する初期化プロトコルのフロー図を示す。設定は、以下の通り進行する。
1.クライアントは、パブリックフォーラムの中でタイムロックサービスのための要求を提出する。要求は、クライアントアドレス(CAddr)、彼らが支払いたい料金(F)、時間(T)であって、該時間の後に鍵が公開されること彼らが要求する時間(T)、及び必要な待ち時間(Δt)で構成される。
2.サービスを実行したいと望むエージェントは、クライアントと連絡を取り、セキュア通信チャネルを確立する。クライアントは、料金のために使用されるべきUTXOのトランザクションIDを送信する。
3.エージェントは、次に、ランダム暗号化秘密鍵(EPrivK)及び対応する公開鍵(EPubK)をセキュアに生成する。
4.エージェントは、次に、EPrivKから出力されるタイムロックパズルである値tlpEPrivKを計算し、インプットとしてのEPrivKから計算するために、約1時間の連続計算を必要とする(標準的なビットコインブロックチェーントランザクション確認時間である)。
5.エージェントは、次に、EPubK、対応する秘密鍵のSHA-256ハッシュH(EPrivK)及びH(tlpEPrivK)をクライアントへ送信する。
6.クライアントはNIZK証明設定を実行し:σ←Setup(1256)、結果をエージェントへ送信する。
7.エージェントは、証明π←Prove(σ,H(EPrivK),EPubK)、ここでH(EPrivK)のプレイメージはEPubKに対応するECC秘密鍵である、及び、証明π←Prove(σ,H(tlpEPrivK),H(EPrivK))、ここでH(tlpEPrivK)のプレイメージはH(EPrivK)のプレイメージである、を約1時間のタイムロックパズルで構成し、それらをクライアントへ送信する。
8.クライアントは、両方の証明を検証する:Verify(σ,H(EPrivK),π)=true及びVerify(σ,H(tlpEPrivK),π)=trueである。
9.エージェントは、次に、要求パラメータ、暗号化秘密鍵(EPrivK)のハッシュ、及びtlpEPrivKのハッシュを用いて、タイムロック暗号化スマートコントラクトとして機能するトランザクション(Tx0)を生成する。
Tx0は2つのインプットを有する。つまり、クライアント料金(F)UTXO、及びエージェントデポジット(D)UTXOである。
Tx0は3つのアウトプットを有する。つまり、料金量のためのアウトプット1、デポジット量のためのアウトプット2、及び暗号化公開鍵メタデータのためのアウトプット3である。
アウトプット1(Output1):
任意の時間における、EPrivK、tlpEPrivK、及びクライアント署名による、クライアントアドレスへの支払い(F)。
時間Tの後の、EPrivK、及びエージェント署名による、エージェントアドレスへの支払い(F)。
時間T+ΔTの後の、クライアント署名による、クライアントアドレスへの支払い(F)。
アウトプット2(Output2):
任意の時間における、EPrivK、及びtlpEPrivKによる、任意のアドレスへの支払い(D)。
時間Tの後の、EPrivK、及びエージェント署名による、エージェントアドレスへの支払い(D)。
時間T+ΔTの後の、クライアント署名による、クライアントアドレスへの支払い(D)。
アウトプット3(Output3):
メタデータとして暗号化公開鍵(EPubK)を含むOP_RETURN。
図2は、トランザクション構造全体を示す。図2では、明確化のために、<…PubKey>はOP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFYで置き換えられていることに留意する。ここで、pubKeyHashはアドレスと等価である。アウトプット1及び2は、関連パーティへ送信される及び/又は発行される対応するRedeemスクリプトを有するP2SH(pay-to-script-hash)scriptPubKeyとして実装されてよい。
10.エージェントは、トランザクションに署名し、該トランザクションをクライアントへ送信する。
11.クライアントは、トランザクションに署名し、該トランザクションをビットコインネットワークへブロードキャストする。
12.トランザクションがブロックチェーンに埋め込まれる(mined)と、タイムロックコントラクトが起動される。EPubKは、今や、任意のデータを暗号化するために使用されるよう、公に利用可能である。該データはEPrivKが公開されるまで復号できない。
図3は、時間期間に依存するデジタルタイムロックコントラクト及びアウトプットの宛先の概略時系列を示す。コントラクトは、料金及びデポジットの両方を請求するために、エージェントが暗号化秘密鍵(EPrivK)を時間間隔T~T+ΔTの範囲内で公開するよう、設計される。これを行うために、エージェントは、2つのトランザクションTx1(Tx0アウトプット1を使用する)及びTx2(Tx0アウトプット2を使用する)を生成する。アウトプットをアンロックすべきscriptSigは、<EPrivK> <AAddr Pubkey> <AAddr Sig>の両方を含む。Tx1及びTx2は、次に、F及びDの両方をエージェントにより選択されたアドレスに支払う。これらのトランザクションがブロックチェーンに埋め込まれると、EPrivKは、次に、公に公開され、誰にでも使用可能になる。
エージェントが時間tの前に誰かにEPrivKを(場合によっては賄賂と引き換えに)漏らすのを妨ぐために、コントラクトは、時間Tの前にEPrivKを知った者がハッシュプレイメージ(及び対応するタイムロックパズルtlpEPrivK、以下のレース攻撃保護を参照する)を署名無しで提供することによりアウトプット2を使用し、次にエージェントデポジット全体を請求できるように、設計される。このパーティは情報漏洩者(leaker)と呼ばれる。これが生じると、クライアントは、次にEPrivKも知り、時間Tの前にscriptSig <EPrivK> <CAddr Pubkey> <CAddr Sig>によりアウトプット1を使用でき、クライアント料金を再請求する。
これは、EPrivKをセキュアに保つよう、エージェントに対する強力な奨励構造を提供する。誰か(ハッカーを含む)が時間Tの前にEPrivKを発見した場合、彼らは、エージェントのデポジットを匿名で請求できる。エージェントが時間Tの前に情報漏洩者としてデポジットを請求した(又はそれを可能にした)場合、彼らは、料金を剥奪される(これは、クライアントへ返金される)。したがって、料金及びデポジットの値の選択は、システムのセキュリティに影響し、暗号化要求のための理由に対し適切であるべきである。
コントラクトは、また、確実にエージェントに時間Tの後、時間T+ΔTの前に(ここでΔTは必要な待ち時間である)、暗号化鍵を公開させるよう設計される。時間T+ΔTの後に、EPrivKが公開されていない場合、クライアントは、アウトプット1及びアウトプット2の両方をアンロックできる(料金を再請求し、さらにエージェントのデポジットを補償として取り入れる)。この場合、クライアントは、scriptSig <CAddr Pubkey> <CAddr Sig>により2つのトランザクションTxR1(Tx0アウトプット1を使用する)及びTxR2(アウトプット2を使用する)の両方を生成し、F及びDの両方をクライアントにより選択されたアドレスに支払う。
ビットコインスクリプト言語の特性は、(OP_CHECKLOCKTIMEVERIFYにより)アウトプットが特定の時点まで使用されることを防ぐことが可能であるが、ある時点の後にアウトプットが使用されることを防ぐことはできない(該時点の前に、使用可能であった場合)。したがって、scriptSigが有効になると、それは永久に有効なままである。これは、EPrivKを提供することにより、誰でもいつでも、時間Tの後でさえ、H(EPrivK)のプレイメージを要求されるだけで、アウトプット2を使用できる、アウトプット2のロックスクリプトに伴う問題を提示する。
これは、エージェントに対する「レース二重使用攻撃(race double spending attack)」を可能にし得る。つまり、エージェントがTx1及びTx2をビットコインネットワークに(時間Tの後に)適正にブロードキャストすると、任意のマイナーがそれらのいずれかからEPrivKを抽出し、先ずアウトプット2を使用し及びデポジットを盗むために、彼ら自身のanyone-can-spend(誰でも使用可能)トランザクションをブロックに含め得る(又は他の誰かが自由に取り替え可能である)。
この攻撃を防ぐためにここで実装されるソリューションは、常にアウトプット2をアンロックするためにEPrivKと一緒に提供されるべきtlpEPrivK(EPrivKから出力されるタイムロックパズル)に対する追加要件である。誰か(情報漏洩者)が時間Tの前にEPrivKを所有するようになった場合、彼らは、1時間の計算によりtlpEPrivKを内密に決定し、次にデポジットを請求できる(つまりアウトプット2を解除する)。EPrivKがmempoolの中でマイニングされるのを待っているTx1及びTx2に埋め込まれているとき、彼らが(時間Tの後に)最初にEPrivKを取得した場合、彼らがtlpEPrivKを導出する時まで(1時間の計算)、アウトプット2を使用するエージェントトランザクション(Tx2)は、ブロックチェーン内で既に確認されている。レース攻撃保護の結果は、tlpEPrivKが導出に1時間を要するので、デポジットを剥奪されるリスクを伴わずに、エージェントが時間Tの前に1時間未満でEPrivKを公開することが可能であることである。これは、コントラクトの「時間分解能」又は精度を1時間に制限する。
<複数エージェントプロトコル>
上述のスマートコントラクトプロトコルは、閾値秘密鍵による複数エージェントの場合に格納可能である。この場合、各エージェントは、彼ら自身のデポジット及び個別料金により、彼ら自身のTx0バージョンを生成する。唯一の違いは、秘密鍵(EPrivK)ハッシュ及び公開鍵(EPubK)が秘密鍵シェアのハッシュ及び共有公開鍵でそれぞれ置き換えられることである。各コントラクトは、独立に実行され、鍵シェアは時間Tの後にブロックチェーン上で明らかにされる。秘密鍵全体を再構成するためには閾数の鍵シェアが必要なので、システムは、サブ閾数のエージェントが機能不全であることに耐え、より重要な及び重大なアプリケーションに対して単一障害点(単一エージェント)を除去する。この拡張プロトコルのために必要な主要な技術的相違点は、ディーラー不要の共有鍵生成、エージェントのグループが彼らの秘密鍵シェアのハッシュのプレイメージが公開された共有公開鍵に対応することを協力して証明することを可能にする、複数パーティゼロ知識証明システム、に関連することである。
複数エージェントプロトコルは、次に、以下の参加者に関連する。
・必要なロックタイム暗号化サービスのパラメータを指定し、そのための合計料金(F)を支払う(n個のUTXOの間で分割する)クライアント。クライアントは、アドレスCAddrを制御する。
・n個の独立したエージェントが、サービスを協力して実行し、彼らがプロトコルを正しく実行した場合に、それぞれが料金の一部(F/n)を受け取る。各エージェントは、プロトコルが適正に実行されなかった場合に没収されるデポジット(D)を提供する。各エージェント(i=1,2,...,n)は、アドレスAAddriを制御する。
図4は、マルチエージェントプロトコルの概略図を示す。設定は、以下の通り進行する。
1.クライアントは、パブリックフォーラムの中でタイムロックサービスのための要求を提出する。要求は、クライアントアドレス(CAddr)、彼らが支払いたい料金(F)、時間(T)であって、該時間の後に鍵が公開されること彼らが要求する時間(T)、必要な待ち時間(Δt)、必要なエージェント数(n)、及び必要な閾(m)で構成される。
2.サービスを実行したいと望むn個のエージェントは、クライアントと連絡を取り、セキュア通信チャネルを確立する。クライアントは、料金のために使用されるべきUTXOのトランザクションIDを送信する。
3.クライアントは、次に、エージェントの各々の詳細な連絡先をグループにブロードキャストし、各エージェントは、グループ内の各々の他のエージェントと(公開鍵暗号システム又はDiffie-Hellman鍵交換により)セキュアな通信を確立する。
4.プレイヤは、次に、閾mでディーラー不要秘密共有プロトコルを共同で実行し、共有鍵EPrivK(暗号化秘密鍵)を生成する。各プレイヤ(i=1,...,n)は、次に鍵シェアsEPrivKiを処理する(EPrivKはいずれのパーティにも知られていない)。
5.n人のプレイヤのグループは、次に、各秘密鍵シェアに対する彼らの公開鍵シェアを計算し、これらのシェア(sEPubKi)をグループの残りの者にブロードキャストする。各プレイヤは、次に、対応する共有公開鍵EPubKを独立に計算できる。
6.エージェント(i=1,...,n)は、次に、sEPrivKiから出力されるタイムロックパズルである値tlpsEPrivKiを計算し、インプットとしてのsEPrivKiから計算するために、約1時間の連続計算を必要とする。
7.エージェント(i=1,...,n)は、次に、EPubK、彼らの対応する秘密鍵のSHA-256ハッシュH(sEPrivKi)及びH(tlpsEPrivKi)をクライアントへ送信する。
8.エージェントのグループは、次に、クライアントに、彼らの秘密鍵シェアのハッシュのプレイメージが、閾値mで、EpubKに対応する秘密鍵を再構成するために使用可能であることのゼロ知識証明を協力して提供する。このためのNIZK証明の展開は、相当量の作業であり、極めて高価なことがある。しかしながら、「cut-and-choose」法は、比較的効率的に利用可能である。この場合、n人のエージェントのグループは、ステップ4~7を多数回(N=100~1000)、繰り返す。クライアントは、次に、共有公開鍵のうちの1つをランダムに選択し、グループが残りのN-1個の公開鍵に対する秘密鍵シェアを明らかにすることを要求する。クライアントは、秘密鍵シェアが各共有公開鍵に対応する秘密鍵を再構成できること、及び秘密鍵シェアが送信されたハッシュのプレイメージであること、の両方を確認する。これは、次に、エージェントが不誠実であるという(N-1)/N未満の確率があることを裏付ける。任意のエージェントは、無効鍵シェア又はハッシュを提供することが、プロトコルから除去され置き換えられる(及び処理が繰り返される)ことが分かる。ランダムに選択された共有公開鍵(及び対応する秘密鍵シェアハッシュ)は、次に、n個のトランザクションのためのプロトコルの中で使用される。
9.エージェント(i=1,...,n)は、次に、要求パラメータ、暗号化秘密鍵(EPrivK)のハッシュ、及びtlpEPrivKのハッシュを用いて、図1と全く同じ構造のトランザクション(Tx0i)を生成する。
各Tx0iは2つのインプットを有する。つまり、クライアント料金シェア(F/n)UTXO、及びエージェントデポジット(D/n)UTXOである。
各Tx0iは3つのアウトプットを有する。つまり、(F/n)のためのアウトプット1、Dのためのアウトプット2、及びEPubKメタデータのためのアウトプット3である。
Tx0iアウトプット1(Output1):
sEPrivKi、tlpEPrivK、及びクライアント署名による、任意の時間における、クライアントアドレスへの支払い(F/n)。
時間Tの後の、sEPrivKi、及びエージェント署名による、エージェントアドレスへの支払い(F/n)。
時間T+ΔTの後の、クライアント署名による、クライアントアドレスへの支払い(F/n)。
Tx0iアウトプット2(Output2):
任意の時間における、sEPrivKi、及びtlpsEPrivKiによる、任意のアドレスへの支払い(D)。
時間Tの後の、sEPrivKi、及びエージェント署名による、エージェントアドレスへの支払い(D)。
時間T+ΔTの後の、クライアント署名による、クライアントアドレスへの支払い(D)。
Tx0iアウトプット3(Output3):
メタデータとして暗号化公開鍵(EPubK)を含むOP_RETURN。
10.各エージェントは、彼らの対応するトランザクションに署名し、該トランザクションをクライアントへ送信する。
11.クライアントは、n個のトランザクションの各々に署名し、それらをビットコインネットワークへブロードキャストする。
12.トランザクションがブロックチェーンに埋め込まれると、EPubKは今や任意のデータを暗号化するための使用のために公に入手可能になり、該データは、EPrivKがエージェントにより公開されているる閾数(m)の鍵シェアsEPrivKiから明らかにされるまで、復号できない。
各々の個別コントラクト(Tx0i)は、前述の単一エージェントコントラクトと同じ方法で実行される。各エージェントは、彼らの鍵シェアが時間Tより前に漏洩した場合、彼らのデポジットを失うリスクがある。彼らは、彼らのデポジット及び彼らの料金シェアを返すよう請求するために、時間Tの後に彼らの鍵シェアを公開することを、それぞれ個々に奨励される。各個別コントラクトの実行は、互いに完全に独立である。このシステムは、次に、サブ閾(n-m)数の参加者が彼らの鍵シェアを適正な時間に公開しないこと、又はそれらを早期に漏洩すること、に対して耐性があり、サービスのセキュリティ又は信頼性を危険に晒さない。彼らの鍵シェアを時間T+ΔTの前に公開しない各エージェントについて、クライアントは、彼らの料金シェア及び機能不全のエージェントデポジットを返すよう請求できる。
留意すべきことに、上述の実施形態は、本発明を限定するのではなく、当業者は添付の請求項により定められる本発明の範囲から逸脱することなく多数の代替の実施形態を考案できる。請求項中、括弧内に記載された如何なる参照符号も、請求項を制限すると見なされるべきではない。用語「有する(comprising又はcomprises)」等は、全体としていかなる請求項中に及び明細書に列挙された以外の要素又はステップの存在を排除するものではない。本願明細書において、「有する(comprises)」は「含む(includes)又は構成される(consists of)」を意味し、「有する(comprising)」は「含む(including)又は構成される(including of)」を意味する。要素の単数の参照は、該要素の複数の存在を排除するものではなく、逆も同様である。本発明は、複数の別個の要素を有するハードウェアにより又は適切にプログラムされたコンピュータにより、実施され得る。複数の手段を列挙している装置の請求項では、これらの複数の手段は、1つの同一のハードウェア要素により実装することができる。特定の量が相互に異なる従属請求項に記載されるという事実は、これらの量の組合せが有利に用いることが出来ないことを示すものではない。
参考文献
[Abliz200]: Abliz,Mehmud,andTaiebZnati."Aguidedtourpuzzlefordenialofserviceprevention."ComputerSecurityApplicationsConference,2009.ACSAC'09.Annual.IEEE,2009.
[Fuchsbauer2008]: Fuchsbauer,Georg,andDavidPointcheval."EncryptingProofsonPairingsandItsApplicationtoAnonymityforSignatures."IACRCryptologyePrintArchive2008(2008):528.
[Lundkvist2017]: https://media.consensys.net/introduction-to-zksnarks-with-examples-3283b554fc3b
[Crepeau2011]: Crepeau,Claude."Cut-and-chooseprotocol."EncyclopediaofCryptographyandSecurity.SpringerUS,2011.290-291.
[Maxwell2016]: https://bitcoincore.org/en/2016/02/26/zero-knowledge-contingent-payments-announcement/
[Todd2014]: https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki

Claims (23)

  1. ブロックチェーンネットワーク上で公開暗号鍵を生成し及び指定時間期間の後に対応する秘密暗号鍵へのアクセスを可能にする、コンピュータにより実施される方法であって、前記方法は、
    前記ブロックチェーンネットワーク上のエージェントとクライアントとの間のデジタルタイムロックコントラクトを構成するステップであって、前記エージェントは前記ブロックチェーンネットワーク上のエージェントアドレスと関連するエージェント署名とを有し、前記クライアントは前記ブロックチェーンネットワーク上のクライアントアドレスと関連するクライアント署名とを有し、前記デジタルタイムロックコントラクトは、
    (i)前記エージェントが、前記ブロックチェーンネットワーク上の前記公開暗号鍵に対応する前記秘密暗号鍵を保持し、次に前記秘密暗号鍵を前記ブロックチェーンネットワークへ指定時間ウインドウ内に公開すること、
    (ii)前記エージェントが、保持するために第1暗号化アセットを提供し、次に前記秘密暗号鍵を前記ブロックチェーンネットワークに前記指定時間ウインドウ内に公開し、前記第1暗号化アセットは、前記秘密暗号鍵が前記ブロックチェーンネットワーク上に前記指定時間ウインドウ内に公開されるとき、前記ブロックチェーンネットワーク上の前記エージェントアドレスへ転送可能であること、
    (iii)前記クライアントは、保持するために第2暗号化アセットを前記エージェントに提供し、次に前記秘密暗号鍵を前記ブロックチェーンネットワークに前記指定時間ウインドウ内に公開し、前記第2暗号化アセットは、前記秘密暗号鍵が前記ブロックチェーンネットワークに前記指定時間ウインドウ内に公開されるとき、前記ブロックチェーンネットワーク上の前記エージェントアドレスへ転送可能であること、
    (iv)前記秘密暗号鍵が前記時間ウインドウの始まる前に公開される場合、前記第2暗号化アセットは、前記ブロックチェーンネットワーク上の前記クライアントアドレスへ転送可能であり、前記秘密暗号鍵が前記時間ウインドウの終わる前に公開されない場合、前記第2暗号化アセットは前記ブロックチェーンネットワーク上の前記クライアントアドレスへ転送可能であること、
    を指定する、ステップ、
    を含む、コンピュータにより実施される方法。
  2. ステップ(iv)で、前記クライアント又は他人は、前記エージェントの前記第1暗号化アセットを取るために前記秘密暗号鍵を使用できる、請求項1に記載のコンピュータにより実施される方法。
  3. ステップ(v)で、前記第1暗号化アセットは、前記ブロックチェーンネットワーク上の前記クライアントアドレスへも転送可能である、請求項1又は2に記載のコンピュータにより実施される方法。
  4. 前記コンピュータにより実施される方法は、前記クライアントが、デジタルタイムロックコントラクトを設定する要望を示す要求を送信することにより、開始される、請求項1乃至3のいずれかに記載のコンピュータにより実施される方法。
  5. 前記クライアントは、前記第2暗号化アセット及び前記時間ウインドウを指定する、請求項4に記載のコンピュータにより実施される方法。
  6. 前記エージェントは、前記公開暗号鍵及び秘密暗号鍵ペアを構成する、請求項1乃至5のいずれかに記載のコンピュータにより実施される方法。
  7. 前記エージェントは、前記デジタルタイムロックコントラクトを構成する、請求項1乃至6のいずれかに記載のコンピュータにより実施される方法。
  8. 前記デジタルタイムロックコントラクトは、前記ブロックチェーンに埋め込まれた後にアクティブになり、前記公開暗号鍵は、データを暗号化するために使用されるよう公に利用可能であり、該データは前記秘密暗号鍵が公開されるまで復号できない、請求項1乃至7のいずれかに記載のコンピュータにより実施される方法。
  9. 前記時間ウインドウは、前記時間ウインドウが始まる時間t及び時間期間Δtとして指定され、Δtの後に前記時間ウインドウが終わる、請求項1乃至8のいずれかに記載のコンピュータにより実施される方法。
  10. 前記第2暗号化アセットは、前記秘密暗号鍵、前記秘密暗号鍵から導出可能なタイムロックパズル値、及び前記クライアント署名により、前記クライアントアドレスへ任意の時間に転送可能である、請求項9に記載のコンピュータにより実施される方法。
  11. 前記第2暗号化アセットは、前記秘密暗号鍵及び前記エージェント署名により、時間tの後に前記エージェントアドレスへ転送可能である、請求項9又は10に記載のコンピュータにより実施される方法。
  12. 前記第2暗号化アセットは、前記クライアント署名により、時間t+Δtの後に前記クライアントアドレスへ転送可能である、請求項9乃至11のいずれか一項に記載のコンピュータにより実施される方法。
  13. 前記第1暗号化アセットは、前記秘密暗号鍵と前記秘密暗号鍵から導出可能なタイムロックパズル値とを提供することにより、任意のアドレスへ任意の時間に転送可能である、請求項9乃至12のいずれか一項に記載のコンピュータにより実施される方法。
  14. 前記第1暗号化アセットは、前記秘密暗号鍵及び前記エージェント署名により、時間tの後に前記エージェントアドレスへ転送可能である、請求項9乃至13のいずれか一項に記載のコンピュータにより実施される方法。
  15. 前記第1暗号化アセットは、前記クライアント署名により、時間t+Δtの後に前記クライアントアドレスへ転送可能である、請求項9乃至14のいずれか一項に記載のコンピュータにより実施される方法。
  16. 前記エージェントは、複数のクライアントを共に複数の前記デジタルタイムロックコントラクトに参加する、請求項1乃至15のいずれかに記載のコンピュータにより実施される方法。
  17. 前記エージェントは、前記秘密暗号鍵を保持する単一のエージェントである、請求項1乃至16のいずれか一項に記載のコンピュータにより実施される方法。
  18. 前記エージェントは、それぞれ前記秘密暗号鍵のシェアを保持する複数のエージェントを含み、
    前記秘密暗号鍵の導出は、閾数の秘密鍵シェアが前記複数のエージェントにより提供されることにより有効にされ、
    前記第1暗号化アセット及び前記第2暗号化アセットは前記エージェントの間で分割される、請求項1乃至16のいずれか一項に記載のコンピュータにより実施される方法。
  19. 前記クライアントは、前記デジタルタイムロックコントラクトに基づき、複数のエンドユーザにサービスを提供する、請求項1乃至18のいずれかに記載のコンピュータにより実施される方法。
  20. 前記サービスは、秘密ビッドオークション、鍵エスクロー方式、投票方式、機密データのタイムリリース、のうちの1つ以上である、請求項19に記載のコンピュータにより実施される方法。
  21. 前記ブロックチェーン上でのマイニングのために、前記デジタルタイムロックコントラクトを前記ブロックチェーンネットワークへブロードキャストするステップ、を更に含む請求項1乃至20のいずれか一項に記載のコンピュータにより実施される方法。
  22. 実行されると、請求項1乃至21のいずれか一項に記載の方法を実行するようプロセッサを構成するコンピュータ実行可能命令を含むコンピュータ可読記憶媒体。
  23. 電子装置であって、
    インタフェース装置と、
    前記インタフェース装置に結合されたプロセッサと、
    前記プロセッサに結合されたメモリであって、前記メモリは、実行されると、請求項1乃至21のいずれか一項に記載の方法を実行するよう前記プロセッサを構成するコンピュータ実行可能命令を格納している、メモリと、
    を含む電子装置。
JP2019564821A 2017-06-19 2018-06-11 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法 Active JP7116090B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022120410A JP7436580B2 (ja) 2017-06-19 2022-07-28 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法
JP2024017554A JP2024050855A (ja) 2017-06-19 2024-02-08 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1709760.1 2017-06-19
GBGB1709760.1A GB201709760D0 (en) 2017-06-19 2017-06-19 Computer-Implemented system and method
PCT/IB2018/054202 WO2018234922A1 (en) 2017-06-19 2018-06-11 COMPUTER-IMPLEMENTED SYSTEM AND METHOD FOR TEMPORAL RELEASE ENCRYPTION ON A BLOCK CHAINS NETWORK

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022120410A Division JP7436580B2 (ja) 2017-06-19 2022-07-28 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法

Publications (2)

Publication Number Publication Date
JP2020524425A JP2020524425A (ja) 2020-08-13
JP7116090B2 true JP7116090B2 (ja) 2022-08-09

Family

ID=59462448

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2019564821A Active JP7116090B2 (ja) 2017-06-19 2018-06-11 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法
JP2022120410A Active JP7436580B2 (ja) 2017-06-19 2022-07-28 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法
JP2024017554A Pending JP2024050855A (ja) 2017-06-19 2024-02-08 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2022120410A Active JP7436580B2 (ja) 2017-06-19 2022-07-28 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法
JP2024017554A Pending JP2024050855A (ja) 2017-06-19 2024-02-08 ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法

Country Status (7)

Country Link
US (2) US11496300B2 (ja)
EP (2) EP4087183A1 (ja)
JP (3) JP7116090B2 (ja)
CN (2) CN110771094B (ja)
GB (1) GB201709760D0 (ja)
TW (2) TWI810118B (ja)
WO (1) WO2018234922A1 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118569851A (zh) * 2017-05-22 2024-08-30 区块链控股有限公司 将未确定来源的未确定数据安全地提供到区块链交易的锁定脚本中
GB201709760D0 (en) * 2017-06-19 2017-08-02 Nchain Holdings Ltd Computer-Implemented system and method
CN107862215B (zh) * 2017-09-29 2020-10-16 创新先进技术有限公司 一种数据存储方法、数据查询方法及装置
GB201721021D0 (en) * 2017-12-15 2018-01-31 Nchain Holdings Ltd Computer-implemented methods and systems
CN109241016B (zh) * 2018-08-14 2020-07-07 阿里巴巴集团控股有限公司 多方安全计算方法及装置、电子设备
US11048689B2 (en) * 2018-11-08 2021-06-29 International Business Machines Corporation Consensus transaction scheduler
WO2020123538A1 (en) * 2018-12-10 2020-06-18 Silvio Micali Using virtual blockchain protocols to implement a fair electronic exchange
US11924524B2 (en) * 2018-12-20 2024-03-05 Rovi Guides, Inc. Metadata distribution and management via transactional blockchain technology
GB201820947D0 (en) * 2018-12-21 2019-02-06 Nchain Holdings Ltd Computer-implemented system and method
CN110011959B (zh) * 2019-01-07 2021-09-10 诚镌科技有限公司 数据存储方法、数据查询方法和系统
US20200226677A1 (en) * 2019-01-11 2020-07-16 Bank Of America Corporation Syndicated loan distributed ledger pass-through processing
CN109768866B (zh) * 2019-03-05 2021-03-30 同济大学 基于椭圆曲线数字签名的区块链智能合约不可拆分签名方法
EP3948475A4 (en) * 2019-04-02 2022-11-16 Data Boiler Technologies LLC TRANSFORMATION AND COMPARISON OF TRADE DATA TO MUSIC REPRESENTATION AND METRIC TREES
GB201905198D0 (en) 2019-04-12 2019-05-29 Nchain Holdings Ltd Computer implemented method and system for knowledge proof in blockchain transactions
CN109981690B (zh) * 2019-04-29 2021-06-11 河南大学 一种基于区块链智能合约的防篡改定时数据保密传输方法
CN110166220B (zh) * 2019-05-06 2022-05-06 山东公链信息科技有限公司 一种根据分区键的散列值进行切分的分片方法
GB201907396D0 (en) 2019-05-24 2019-07-10 Nchain Holdings Ltd Hash function attacks
CN110266687B (zh) * 2019-06-21 2021-08-17 杭州云象网络技术有限公司 一种采用区块链技术的物联网安全代理数据共享模块设计方法
US11424916B2 (en) * 2019-07-19 2022-08-23 Fujitsu Limited Selectively private distributed computation for blockchain
US11303437B2 (en) 2019-08-19 2022-04-12 Red Hat, Inc. Proof-of-work key wrapping with key thresholding
US11316839B2 (en) 2019-08-19 2022-04-26 Red Hat, Inc. Proof-of-work key wrapping for temporally restricting data access
US11411938B2 (en) 2019-08-19 2022-08-09 Red Hat, Inc. Proof-of-work key wrapping with integrated key fragments
US11271734B2 (en) 2019-08-19 2022-03-08 Red Hat, Inc. Proof-of-work key wrapping for verifying device capabilities
US11411728B2 (en) 2019-08-19 2022-08-09 Red Hat, Inc. Proof-of-work key wrapping with individual key fragments
US11436352B2 (en) 2019-08-19 2022-09-06 Red Hat, Inc. Proof-of-work key wrapping for restricting data execution based on device capabilities
US11424920B2 (en) 2019-08-19 2022-08-23 Red Hat, Inc. Proof-of-work key wrapping for cryptographically controlling data access
US11232441B2 (en) * 2019-10-30 2022-01-25 Accenture Global Solutions Limited Cryptologic coordinated symmetric conditional key release
US11323269B2 (en) * 2020-01-20 2022-05-03 International Business Machines Corporation Preserving privacy of linked cross-network transactions
US11424911B2 (en) * 2020-03-03 2022-08-23 International Business Machines Corporation Storage and communication environment for cryptographic tags
US11669812B2 (en) * 2020-06-05 2023-06-06 Serge M Krasnyansky Contingent payments for virtual currencies
AU2021316961B2 (en) * 2020-07-30 2023-04-13 Dapper Labs Inc. Systems and methods providing specialized proof of confidential knowledge
CN111901108B (zh) * 2020-08-03 2023-02-10 东莞盟大集团有限公司 基于区块链的业务处理方法、装置和计算机设备
CN114078007A (zh) * 2020-08-19 2022-02-22 富泰华工业(深圳)有限公司 基于区块链的交易方法、装置及可读存储介质
CN112650734B (zh) * 2020-12-29 2023-03-24 杭州趣链科技有限公司 一种区块修复方法及相关装置
CN112950338B (zh) * 2021-02-26 2024-08-06 浙江工商大学 基于区块链的密封竞价域名拍卖方法
CN112804260B (zh) * 2021-03-17 2023-04-07 中国工商银行股份有限公司 基于区块链的信息传递方法和节点
US11538027B1 (en) 2021-07-07 2022-12-27 Ava Labs, Inc. Secure and trustworthy bridge for transferring assets across different networks with an updating pool of wardens
US11836714B2 (en) * 2021-07-07 2023-12-05 Ava Labs, Inc. Secure and trustworthy bridge for transferring assets across networks with different data architecture
US20230208648A1 (en) * 2021-12-29 2023-06-29 International Business Machines Corporation Htlc with proof of elapsed time
CN114785516B (zh) * 2022-03-31 2024-04-05 浙江数秦科技有限公司 基于区块链的限时加解密系统
GB2622357A (en) * 2022-09-08 2024-03-20 Nchain Licensing Ag Determining shared secrets using a blockchain
CN115204856B (zh) * 2022-09-13 2023-05-09 北京邮电大学 区块链跨链方法及相关设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006129340A (ja) 2004-11-01 2006-05-18 Oki Electric Ind Co Ltd 秘密情報管理装置、秘密情報管理システム、及び秘密情報管理方法
US20080310627A1 (en) 2007-06-15 2008-12-18 Microsoft Corporation Asynchronous download
JP2013506388A (ja) 2010-12-22 2013-02-21 インテル コーポレイション Ibeを有する効率的なnemoセキュリティ

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9398018B2 (en) * 2014-03-18 2016-07-19 nTrust Technology Solutions Corp. Virtual currency system
EP4148642A1 (en) 2014-05-09 2023-03-15 Veritaseum, Inc. Devices, systems, and methods for facilitating low trust and zero trust value transfers
US9853812B2 (en) * 2014-09-17 2017-12-26 Microsoft Technology Licensing, Llc Secure key management for roaming protected content
US20160086175A1 (en) 2014-09-22 2016-03-24 Qualcomm Incorporated Peer-to-peer transaction system
CN105469510B (zh) * 2014-10-12 2018-01-09 吴思进 可预告延时支付或找回的加密货币钱包
CN113946817A (zh) * 2015-01-30 2022-01-18 E·马伊姆 用于管理安全实体的连网承诺的系统和方法
US10592985B2 (en) 2015-03-02 2020-03-17 Dell Products L.P. Systems and methods for a commodity contracts market using a secure distributed transaction ledger
AU2016246428B2 (en) * 2015-04-05 2017-11-09 Digital Asset (Switzerland) GmbH Digital asset intermediary electronic settlement platform
WO2016164496A1 (en) * 2015-04-06 2016-10-13 Bitmark, Inc. System and method for decentralized title recordation and authentication
US11069000B1 (en) * 2015-06-16 2021-07-20 BitPagos, Inc. Payment processing service utilizing a distributed ledger digital asset
US11073960B2 (en) 2015-07-09 2021-07-27 Sensoriant, Inc. Method and system for creating adaptive user interfaces using user provided and controlled data
US20170048209A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Crypto Key Recovery and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
US20170046689A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Crypto Voting and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
US11488147B2 (en) * 2015-07-14 2022-11-01 Fmr Llc Computationally efficient transfer processing and auditing apparatuses, methods and systems
AU2015403302A1 (en) * 2015-07-28 2018-02-22 Razer (Asia-Pacific) Pte. Ltd. Servers for a reward-generating distributed digital resource farm and methods for controlling a server for a reward-generating distributed digital resource farm
US10504080B2 (en) 2015-09-14 2019-12-10 OX Labs Inc. Cryptographically managingtelecommunications settlement
WO2017079652A1 (en) * 2015-11-05 2017-05-11 Pulsifer Allen Cryptographic transactions system
US10269012B2 (en) * 2015-11-06 2019-04-23 Swfl, Inc. Systems and methods for secure and private communications
WO2017090041A1 (en) * 2015-11-24 2017-06-01 Ben-Ari Adi A system and method for blockchain smart contract data privacy
JP2018536957A (ja) * 2015-11-30 2018-12-13 シェイプシフト・アーゲーShapeShift AG ブロックチェーン資産取引におけるセキュリティを向上させるためのシステム及び方法
US20170214664A1 (en) * 2016-01-26 2017-07-27 Google Inc. Secure connections for low power devices
US10108812B2 (en) 2016-01-28 2018-10-23 Nasdaq, Inc. Systems and methods for securing and disseminating time sensitive information using a blockchain
EP3411824B1 (en) * 2016-02-04 2019-10-30 Nasdaq Technology AB Systems and methods for storing and sharing transactional data using distributed computer systems
US11120437B2 (en) * 2016-02-23 2021-09-14 nChain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts
US11593792B1 (en) * 2016-05-03 2023-02-28 Citibank, N.A. Distributed database methods and systems
CN107808288B (zh) * 2016-09-08 2024-05-28 立旃(上海)科技有限公司 金融供应链支付方法和系统
CN106682528B (zh) 2016-12-31 2019-06-11 杭州复杂美科技有限公司 区块链加密检索方法
CN106850654B (zh) * 2017-02-23 2020-08-21 布比(北京)网络技术有限公司 一种分布式信息的授权访问方法及系统
CN106960165B (zh) * 2017-03-13 2020-12-22 广东网金控股股份有限公司 一种基于区块链智能合约实现电子合同多方会签的方法
US10541886B2 (en) * 2017-05-24 2020-01-21 International Business Machines Corporation Decentralized change management based on peer devices using a blockchain
GB201709760D0 (en) * 2017-06-19 2017-08-02 Nchain Holdings Ltd Computer-Implemented system and method
GB201715423D0 (en) * 2017-09-22 2017-11-08 Nchain Holdings Ltd Computer-implemented system and method
WO2019148210A1 (en) * 2018-01-29 2019-08-01 Krnc, Inc. Cryptographic and fiat currency mechanics
US10373129B1 (en) * 2018-03-05 2019-08-06 Winklevoss Ip, Llc System, method and program product for generating and utilizing stable value digital assets
GB2576081A (en) * 2018-06-03 2020-02-05 Vvow Company Ltd Peer-to-peer cryptocurrency and crypto asset trading platform

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006129340A (ja) 2004-11-01 2006-05-18 Oki Electric Ind Co Ltd 秘密情報管理装置、秘密情報管理システム、及び秘密情報管理方法
US20080310627A1 (en) 2007-06-15 2008-12-18 Microsoft Corporation Asynchronous download
JP2013506388A (ja) 2010-12-22 2013-02-21 インテル コーポレイション Ibeを有する効率的なnemoセキュリティ

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PUDDU, I. et al.,μchain: How to Forget without Hard Forks,2017年02月10日,pp.1-21,Cryptology ePrint Archive: Report 2017/106,[令和4年2月8日検索],インターネット<URL:https://eprint.iacr.org/2017/106/20170214:155656>
三島 貴務,ブロックチェーンを用いた電子契約プロトコル,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2017年06月01日,第117巻,第79号,pp.31-35

Also Published As

Publication number Publication date
GB201709760D0 (en) 2017-08-02
JP2024050855A (ja) 2024-04-10
JP2020524425A (ja) 2020-08-13
CN110771094B (zh) 2024-03-01
JP7436580B2 (ja) 2024-02-21
TW201905791A (zh) 2019-02-01
WO2018234922A1 (en) 2018-12-27
TWI810118B (zh) 2023-07-21
EP3643000A1 (en) 2020-04-29
CN118018175A (zh) 2024-05-10
EP4087183A1 (en) 2022-11-09
US20200136815A1 (en) 2020-04-30
US20230171098A1 (en) 2023-06-01
EP3643000B1 (en) 2022-06-22
CN110771094A (zh) 2020-02-07
JP2022141947A (ja) 2022-09-29
TW202314615A (zh) 2023-04-01
TWI788368B (zh) 2023-01-01
US11496300B2 (en) 2022-11-08

Similar Documents

Publication Publication Date Title
JP7116090B2 (ja) ブロックチェーンネットワーク上のタイムリリース暗号化のためのコンピュータにより実施されるシステム及び方法
TWI809080B (zh) 用以移轉數位資產存取權之電腦實施方法及系統
Zaghloul et al. Bitcoin and blockchain: Security and privacy
Chen et al. Blockchain-based dynamic provable data possession for smart cities
JP7289298B2 (ja) 低エントロピーパスワードを用いてブロックチェーントランザクションを許可するためのコンピュータ実装されたシステム及び方法
Bentov et al. Tesseract: Real-time cryptocurrency exchange using trusted hardware
RU2735730C1 (ru) Способы и устройство эффективной реализации распределенной базы данных в сети
CN115660675A (zh) 由计算机设备执行的方法及相应系统和存储介质
JP2019511147A (ja) デジタルコンテンツの制御及び配信のためのブロックチェーンにより実施される方法
JP7414795B2 (ja) アセット混合のための、コンピュータにより実施されるシステム及び方法
Mohanty et al. n-htlc: Neo hashed time-lock commitment to defend against wormhole attack in payment channel networks
Vishwakarma et al. Crossledger: A pioneer cross-chain asset transfer protocol
WO2021185905A1 (en) Apparatus and method to produce notarized append-only memory
EhabZaghloul et al. Bitcoin and blockchain: Security and privacy
Zhao et al. Blockchain-Based Key Management Scheme Using Rational Secret Sharing.
Shams et al. MPC as a service using Ethereum Registry Smart Contracts-dCommon CIP

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220512

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: 20220607

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220706

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220728

R150 Certificate of patent or registration of utility model

Ref document number: 7116090

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150