(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024056970
(43)【公開日】2024-04-23
(54)【発明の名称】デジタルウォレット装置
(51)【国際特許分類】
H04L 9/10 20060101AFI20240416BHJP
H04L 9/32 20060101ALI20240416BHJP
G06F 21/60 20130101ALI20240416BHJP
G06F 21/64 20130101ALI20240416BHJP
G06Q 20/38 20120101ALI20240416BHJP
G06F 21/76 20130101ALI20240416BHJP
【FI】
H04L9/10 A
H04L9/32 200B
G06F21/60 320
G06F21/64
G06Q20/38 310
G06F21/76
【審査請求】有
【請求項の数】32
【出願形態】OL
(21)【出願番号】P 2024023844
(22)【出願日】2024-02-20
(62)【分割の表示】P 2020542978の分割
【原出願日】2019-02-14
(31)【優先権主張番号】62/630,923
(32)【優先日】2018-02-15
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
2.BLUETOOTH
(71)【出願人】
【識別番号】524030776
【氏名又は名称】ギャラクシー デジタル トレーディング エルエルシー
【氏名又は名称原語表記】Galaxy Digital Trading LLC
【住所又は居所原語表記】300 Vesey Street, 13th floor, New York, NY, USA
(74)【代理人】
【識別番号】110002952
【氏名又は名称】弁理士法人鷲田国際特許事務所
(72)【発明者】
【氏名】ラメッシュ リオル
(57)【要約】 (修正有)
【課題】暗号通貨を記憶及び管理する電子的に隔離されたハードウェア暗号通貨ウォレット装置を提供する。
【解決手段】デジタルウォレット装置は、他のデジタル装置から電子的に切り離されており、どのコンピュータインタフェースからも隔離された暗号通貨管理IC、暗号通貨の公開鍵及び暗号通貨の秘密鍵を記憶する非一時的なコンピュータ可読記憶媒体106、キーボード104、タッチスクリーン及びポインティング装置の少なくとも1つと、入力を受信し、かつ、暗号通貨のトランザクションを作成し、秘密鍵を使用してトランザクションに署名するためのトランザクションコードを実行する1以上のプロセッサ及び通信装置に単方向チャネルを介してトランザクションを送信するための単方向通信ハードウェアである提示ユニット105を備え、画像をキャプチャするため或いは暗号通貨管理IC又はデジタルウォレットの周囲を検出するためのセンサは有しない。
【選択図】
図5
【特許請求の範囲】
【請求項1】
暗号通貨を記憶および管理するためのデジタルウォレット装置であって、デジタルウォレット装置は他のデジタル装置から電子的に切り離されており、
どのコンピュータインタフェースからも隔離された暗号通貨管理集積回路(IC)と、
前記暗号通貨管理ICに搭載され、暗号通貨の公開鍵および前記暗号通貨の秘密鍵を記憶する非一時的なコンピュータ可読記憶媒体と、
前記暗号通貨管理ICに接続され、どの他のコンピュータインタフェースからも隔離されており、ユーザから入力を受信するための、キーボード、タッチスクリーン、およびポインティング装置の少なくとも1つと、
キーボード、タッチスクリーン、およびポインティング装置の少なくとも1つのみを介して入力を受信するための、および、前記入力に基づいて前記暗号通貨のトランザクションを作成し、前記秘密鍵を使用して前記トランザクションに署名するためのトランザクションコードを実行するための前記暗号通貨管理ICに搭載された少なくとも1つのプロセッサと、
ネットワークを介して前記トランザクションをブロードキャストするための通信装置に単方向チャネルを介して前記トランザクションを送信するための単方向通信ハードウェアと、
を備え、
前記デジタルウォレット装置は、画像をキャプチャするための、または、前記暗号通貨管理ICまたは前記少なくとも1つのプロセッサに電子的に接続されているデジタルウォレットの周囲を検出するためのセンサを有しない、
デジタルウォレット装置。
【請求項2】
前記単方向通信ハードウェアは、データダイオードを含む、
請求項1に記載のデジタルウォレット装置。
【請求項3】
前記単方向通信ハードウェアは、センサによってキャプチャされ、前記通信装置によって復号される、前記トランザクションを符号化した機械可読コードを提示する提示ユニットを含む、
請求項1に記載のデジタルウォレット装置。
【請求項4】
前記機械可読コードは、視覚的機械可読コードであり、前記センサは、イメージング装置である、
請求項3に記載のデジタルウォレット装置。
【請求項5】
前記提示ユニットはスクリーンである、
請求項3に記載のデジタルウォレット装置。
【請求項6】
前記提示ユニットが、前記ユーザによって使用されるユーザインタフェースをさらに提示する、
請求項3に記載のデジタルウォレット装置。
【請求項7】
前記通信装置は、モバイル装置であり、前記センサは、前記モバイル装置のカメラであり、復号およびブロードキャストは、前記モバイル装置にインストールされたソフトウェアプリケーションによって行われる、
請求項3に記載のデジタルウォレット装置。
【請求項8】
前記入力が、前記トランザクションのための宛先アカウントアドレスおよび前記トランザクションの量の少なくとも1つを含む、
請求項1に記載のデジタルウォレット装置。
【請求項9】
前記トランザクションコードを記憶する取り外し可能な非一時的なコンピュータ可読記憶媒体をさらに含む、
請求項1に記載のデジタルウォレット装置。
【請求項10】
前記非一時的なコンピュータ可読記憶媒体は、前記秘密鍵を記憶する取り外し可能な書き込み専用データストレージカードを含む、
請求項1に記載のデジタルウォレット装置。
【請求項11】
前記秘密鍵を記憶するハードウェアセキュリティモジュール(HSM)をさらに備える、
請求項1に記載のデジタルウォレット装置。
【請求項12】
前記暗号通貨管理ICから隔離された入力ICと、
前記入力ICへの単方向チャネルを介してデータを受信するための単方向通信ハードウェアと、
をさらに備える、請求項1に記載のデジタルウォレット装置。
【請求項13】
前記キーボード、タッチスクリーン、およびポインティング装置の少なくとも1つから電子的に切り離された出力コンポーネントをさらに備え、
前記出力コンポーネントは、前記入力ICからデータ片を受信し、前記キーボード、タッチスクリーン、およびポインティング装置の少なくとも1つの物理的な構成に従ったユーザによる所望の入力動作を示す、前記データ片の表現を前記ユーザに提示する、
請求項12に記載のデジタルウォレット装置。
【請求項14】
前記出力コンポーネントは、前記ユーザの前記入力動作の指示を受信する入力機能も含む、
請求項13に記載のデジタルウォレット装置。
【請求項15】
前記出力コンポーネントは、前記入力動作の前記指示に従って調整された表現を前記ユーザにさらに提示する、
請求項14に記載のデジタルウォレット装置。
【請求項16】
前記キーボード、タッチスクリーン、およびポインティング装置の少なくとも1つおよび前記出力コンポーネントが1つの物理装置に統合された、
請求項13に記載のデジタルウォレット装置。
【請求項17】
前記出力コンポーネントは複数の光源を有する表面であり、前記光源の各々は前記キーボード、タッチスクリーン、およびポインティング装置の少なくとも1つのキーに隣り合い、前記表現は、前記光源の隣り合うキーの前記ユーザによる所望の押下を指示するために、前記複数の光源のうちの1つをオンにすることを含む、
請求項13に記載のデジタルウォレット装置。
【請求項18】
前記隣り合うキーが押された場合、前記複数の光源の次の1つがオンになり、前記次の光源の次の隣り合うキーの前記ユーザによる所望の押下を指示する、
請求項17に記載のデジタルウォレット装置。
【請求項19】
前記出力コンポーネントは、前記キーボード、タッチスクリーン、およびポインティング装置の少なくとも1つから物理的に切り離されたリモートインジケータを含む、
請求項13に記載のデジタルウォレット装置。
【請求項20】
前記暗号通貨管理ICは、前記ユーザの前記入力動作の指示を、前記データ片を提供し、前記通信装置に含まれる出力ICに、前記単方向通信ハードウェアを介して送信する、
請求項13に記載のデジタルウォレット装置。
【請求項21】
データを受信するための前記単方向通信ハードウェアは、データダイオードと前記入力ICに搭載されたセンサの少なくとも1つを含む、
請求項12に記載のデジタルウォレット装置。
【請求項22】
前記入力ICは、データを受信するための前記単方向通信ハードウェアを介して受信されたデータをユーザに提示する提示ユニットに接続されている、
請求項12に記載のデジタルウォレット装置。
【請求項23】
前記少なくとも1つのプロセッサが、前記秘密鍵および前記公開鍵を作成するためのコードをさらに実行する、
請求項1に記載のデジタルウォレット装置。
【請求項24】
前記秘密鍵は、前記単方向通信ハードウェアを介してさらに送信される、
請求項1に記載のデジタルウォレット装置。
【請求項25】
前記少なくとも1つのプロセッサは、前記入力に基づいてメッセージリクエストを作成し、前記秘密鍵を使用して前記メッセージリクエストに署名するためのコードをさらに実行し、前記メッセージリクエストは、前記公開鍵に基づいて暗号通貨を管理することができるスマートコントラクトに送信するために、前記単方向通信ハードウェアによって前記通信装置に送信される、
請求項1に記載のデジタルウォレット装置。
【請求項26】
前記少なくとも1つのプロセッサは、暗号通貨の規則または定義を作成し、前記秘密鍵を使用して前記規則または定義に署名するためのコードをさらに実行する、
請求項1に記載のデジタルウォレット装置。
【請求項27】
前記少なくとも1つのプロセッサは、セキュアなマルチシグネチャ方式のためのポリシーを作成し、前記秘密鍵を使用して前記ポリシーに署名するためのコードをさらに実行し、前記ポリシーは前記マルチシグネチャ方式の共同署名者に送信するために、前記単方向通信ハードウェアによって前記通信装置に送信される、
請求項1に記載のデジタルウォレット装置。
【請求項28】
前記マルチシグネチャ方式は、規格ブロックチェーンマルチシグネチャおよび暗号鍵分割メカニズムの1つに基づく、
請求項27に記載のデジタルウォレット装置。
【請求項29】
機械的に符号化されたデータを読み取るための機械的入力コンポーネントをさらに備え、前記トランザクションの作成は、前記機械的に符号化されたデータにさらに基づく、請求項1に記載のデジタルウォレット装置。
【請求項30】
前記暗号通貨管理ICから隔離された入力ICからのユーザによる所望の入力動作の指示に基づいて前記キーボード、タッチスクリーン、およびポインティング装置の少なくとも1つに向けるためのリモートインジケータに物理的に接続されている、
請求項1に記載のデジタルウォレット装置。
【請求項31】
前記入力ICは、前記デジタルウォレット装置から電子的に隔離された他の装置に存在する、
請求項30に記載のデジタルウォレット装置。
【請求項32】
前記暗号通貨管理ICは、前記ユーザにより入力されたデータ片の指示を、前記単方向通信ハードウェアを介して前記入力ICに送信する、
請求項31に記載のデジタルウォレット装置。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願]
本出願は平成30年2月15日に出願された米国仮特許出願第62/630,923号の優先権の利益を主張し、その内容は、その全体が参照により本明細書に組み込まれる。
【0002】
本実施形態はハードウェア暗号通貨ウォレットに関し、より詳細には電子的に隔離されたハードウェア暗号通貨ウォレットおよび暗号通貨アカウント管理の方法に関するが、これに限定されるものではない。
【0003】
暗号通貨は、非特許文献1に記されているブロックチェーン技術をベースに、ブロックと呼ばれる、暗号を使ってリンクされセキュリティが確保された、記録が継続的に成長するリストである。ブロックチェーンはトランザクション(取引)の一覧を記憶するデータ構造であり、トランザクションを記録する分散型電子台帳と考えることができる。トランザクションはブロックにバンドルされ、全てのブロック(最初のブロックを除く)は、チェーン内の前のブロックに戻って参照するか、またはリンクされる。コンピュータノードはブロックチェーンを維持し、それぞれの新規のブロックと、対応するブロックに含まれるトランザクションを暗号法的に検証する。
【0004】
各ブロックは、前のブロックの暗号ハッシュ値を参照または含むので、データに対する小さな修正がブロック全体のハッシュ値に影響を与えるので、そこに含まれるデータ(トランザクション)を修正または改ざんすることは困難になる。したがって、ブロックチェーンのコンテンツは、すべてが見ることができるにもかかわらず、実質的に不変になる。
【0005】
暗号通貨はブロックチェーンを使用してそのトランザクションのセキュリティを確保し、追加ユニットの作成を制御し、資産の転送を検証する、トランザクション媒体として機能するように設計されたデジタル資産である。
【0006】
暗号通貨資金は、典型的には一対の鍵を含むデジタルウォレットに記憶される。ウォレットの公開アドレスは公開鍵から作成され、秘密暗号鍵はウォレットパスワードであり、その所持者にウォレットに含まれる暗号通貨を消費することを許可する。これらの暗号通貨ウォレットは、ハードディスク、スマートフォン、またはインターネットアクセス可能なサーバなど、さまざまな方法で保存およびアクセスできる。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】サトシ・ナカモト,Bitcoin:A Peer-to-Peer Electronic Cash System,2008
【発明の概要】
【課題を解決するための手段】
【0008】
本発明のいくつかの実施形態の態様によれば、暗号通貨を記憶および管理するためのデジタルウォレット装置が提供され、デジタルウォレット装置は、他のデジタル装置から電子的に切り離されており、どのコンピュータインタフェースからも隔離された暗号通貨管理集積回路(IC)と、暗号通貨管理ICに搭載され、暗号通貨の公開鍵および暗号通貨の秘密鍵を記憶する非一時的なコンピュータ可読記憶媒体と、ユーザからの入力を受信するためのマンマシンインタフェース(MMI)と、入力に基づいて暗号通貨のトランザクションを作成し、秘密鍵を使用してトランザクションに署名するためのトランザクションコードを実行するための暗号通貨管理ICに搭載された少なくとも1つのプロセッサと、ネットワークを介してトランザクションをブロードキャストするための通信装置にトランザクションを送信するための単方向通信ハードウェアと、を備える。
【0009】
任意選択で、単方向通信ハードウェアは、データダイオードを含む。
【0010】
任意選択で、単方向通信ハードウェアは、センサによってキャプチャされ、通信装置によって復号されるトランザクションを符号化する機械可読コードを提示する提示ユニットを含む。
【0011】
任意選択で、機械可読コードは視覚的機械可読コードであり、センサはイメージング装置である。
【0012】
任意選択で、提示ユニットはスクリーンである。
【0013】
任意選択で、提示ユニットは、ユーザによって使用されるユーザインタフェースをさらに提示する。
【0014】
任意選択で、通信装置はモバイル装置であり、センサはモバイル装置のカメラであり、復号およびブロードキャストは、モバイル装置にインストールされたソフトウェアプリケーションによって行われる。
【0015】
任意選択で、入力は、トランザクションの宛先アカウントアドレスおよびトランザクション量のうちの少なくとも1つを含む。
【0016】
任意選択で、本デジタルウォレット装置はトランザクションの宛先アカウントアドレスを符号化する宛先機械可読コードをキャプチャするセンサをさらに含み、宛先機械可読コードは少なくとも1つのプロセッサによって復号され、トランザクションの作成はさらに宛先アカウントアドレスに基づく。
【0017】
任意選択で、デジタルウォレット装置は、トランザクションコードを記憶する取り外し可能な非一時的なコンピュータ可読記憶媒体をさらに備える。
【0018】
任意選択で、非一時的なコンピュータ可読記憶媒体は、秘密鍵を記憶する取り外し可能な書き込み専用データ記憶カードを含む。
【0019】
任意選択で、デジタルウォレット装置は、暗号通貨管理ICから隔離された入力ICと、入力IC上に実施されたセンサとをさらに備える。
【0020】
さらに任意選択で、デジタルウォレット装置は、暗号通貨管理ICに接続され、どの他のコンピュータインタフェースからも隔離された入力コンポーネントと、入力コンポーネントから電子的に切り離された出力コンポーネントとをさらに備え、出力コンポーネントは入力ICからデータ片を受信し、入力コンポーネントの物理構成に従ってユーザによる所望の入力動作を示すデータ片の表現をユーザに提示する。
【0021】
任意選択で、マンマシンインタフェース(MMI)はキーボードである。
【0022】
任意選択で、MMIはタッチスクリーンである。
【0023】
任意選択で、少なくとも1つのプロセッサが、さらにコードを実行して秘密鍵と公開鍵を作成する。
【0024】
任意選択で、秘密鍵は、単方向通信ハードウェアを介してさらに送られる。
【0025】
任意選択で、少なくとも1つのプロセッサはさらに、入力に基づいてメッセージリクエストを作成し、秘密鍵を使用してメッセージリクエストに署名するためのコードを実行しており、メッセージリクエストは単方向通信ハードウェアによって、公開鍵に基づいて暗号通貨を管理することができるスマートコントラクトに送信するために、通信装置に送信される。
【0026】
任意選択で、少なくとも1つのプロセッサがさらにコードを実行して、暗号通貨の規則または定義を作成し、秘密鍵を使用して規則または定義に署名する。
【0027】
任意選択で、少なくとも1つのプロセッサはさらに、セキュアなマルチシグネチャスキームのためのポリシーを作成し、秘密鍵を使用してポリシーに署名するためのコードを実行し、ポリシーはマルチシグネチャスキームの共同署名者に送信するために、単方向通信ハードウェアによって通信装置に送信される。
【0028】
任意選択で、マルチシグネチャ方式は、規格ブロックチェーンマルチシグネチャおよび暗号鍵分割メカニズムのうちの1つに基づく。
【0029】
任意選択で、デジタルウォレット装置は機械的に符号化されたデータを読み取るための機械的入力コンポーネントをさらに含み、トランザクションの作成は、機械的に符号化されたデータにさらに基づく。
【0030】
本発明のいくつかの実施形態の態様によれば、他のデジタル装置から電子的に切り離されたデジタルウォレット装置によって暗号通貨を転送するための方法であって、どのコンピュータインタフェースからも隔離された暗号通貨管理集積回路(IC)に接続されたマンマシンインタフェース(MMI)を介してユーザから入力を受信するステップと、暗号通貨管理ICに搭載された少なくとも1つのプロセッサによって、入力に基づいて暗号通貨のトランザクションを作成し、暗号通貨管理ICに搭載された非一時的なコンピュータ可読記憶媒体に記憶された、暗号通貨の秘密鍵を使用してトランザクションに署名するステップと、ネットワークを介してトランザクションをブロードキャストするために、単方向通信ハードウェアによってトランザクションを通信装置に送信するステップとを含む、方法が提供される。
【0031】
どのコンピュータインタフェースからも隔離された入力集積回路(IC)に接続された入力コンポーネントと、入力コンポーネントから電子的に切り離された出力コンポーネントとを備え、出力コンポーネントは、出力ICからデータ片を受信し、入力コンポーネントの物理的な構成に従ったユーザによる所望の入力動作を示すデータ片の表現をユーザに提示する、電子的に切り離された計算装置間で複合データ(complex data)を転送するための入力システムが提供される。
【0032】
任意選択で、出力コンポーネントは、ユーザの入力動作の指示を受け取る入力機能も含む。
【0033】
さらに任意選択で、出力コンポーネントは、入力動作の指示に従って調整された表現をユーザにさらに提示する。
【0034】
任意選択で、入出力コンポーネントは、1つの物理装置に統合される。
【0035】
任意選択で、入力コンポーネントはキーボードであり、出力コンポーネントは複数の光源を有する面であり、光源の各々はキーボードのキーに隣接し、表現は、複数の光源のうちの1つをオンにして、光源の隣り合うキー上のユーザによる所望の押下を指示することを含む。
【0036】
より任意選択で、隣り合うキーが押されると、前記複数の光源のうちの次の1つがオンにされて、次の光源の次の隣り合うキー上のユーザによる所望の押下を指示する。
【0037】
任意選択で、入力ICは、デジタルウォレット装置に含まれる。
【0038】
任意選択で、出力ICはネットワークに接続された通信装置に含まれる。
【0039】
任意選択で、出力コンポーネントは、入力コンポーネントから物理的に切り離されたリモートインジケータを含む。
【0040】
任意選択で、入力ICは、単方向通信ハードウェアを介して出力ICにユーザの入力動作の指示を送る。
【0041】
任意に、入力ICは第1のデジタルウォレット装置に含まれ、出力ICは第2のデジタルウォレット装置に含まれる。
【0042】
本発明のいくつかの実施形態の態様によれば、出力集積回路(IC)から出力コンポーネントによってデータ片を受信するステップと、データ片の表現をユーザに提示するステップとを含み、表現は入力コンポーネントの物理構成に従ったユーザによる所望の入力動作を示し、入力コンポーネントは出力コンポーネントから電子的に切り離されており、入力はコンポーネント入力ICに接続され、入力ICは、どのコンピュータインタフェースからも隔離された、電子的に切り離されたコンピュータ装置間で複合データを転送する方法が提供される。
【0043】
本発明のいくつかの実施形態の態様によれば、どのコンピュータインタフェースからも隔離された集積回路(IC)上に搭載された少なくとも1つのプロセッサを使用して、暗号通貨アカウントのための秘密鍵および公開鍵を生成するステップと、暗号通貨のブロックチェーンに追加される公開鍵のハッシュの送信を命令するステップと、ハッシュが暗号通貨アカウントに追加される固有のタイムスロット内のタイムスタンプを装置のマンマシンインタフェース(MMI)を介して受信するステップと、固有のタイムスロットが経過したことを検証するステップと、ブロックチェーンに登録される公開鍵の送信を命令するステップと、を備え、暗号通貨アカウントの公開アドレスは、タイムスタンプを表しかつ公開鍵を表す複数のビットを含む、短い公開アドレスを有する暗号通貨アカウントを作成するための方法が提供される。
【0044】
任意選択で、公開アドレスは、タイムスタンプおよび公開鍵のうちの少なくとも1つで動作する関数によって作成される複数のビットを含む。
【0045】
任意選択で、公開鍵の表現には公開鍵のハッシュが含まれる。
【0046】
任意選択で、固有のタイムスロットは、1カレンダ日である。
【0047】
任意選択で、公開アドレスのそれぞれの所定の個数のビットは、単語の所定の一覧からの単語によって表される。
【0048】
より任意選択で、複数のビットの所定の個数は13である。
【0049】
任意選択で、公開アドレスは、タイムスタンプを表す13ビット、公開鍵を表す38ビット、および暗号通貨アカウントを作成するために使用される方法を表す1ビットを含む。
【0050】
任意選択で、ハッシュの転送は、単方向通信ハードウェアを介してハッシュを送信することによって行われる。
【0051】
任意選択で、ハッシュの転送は、装置センサによってキャプチャされ、ネットワークを介してハッシュをブロードキャストするために通信装置によって復号されるハッシュを、装置の提示ユニットによって符号化する機械可読コードを提示することによって行われる。
【0052】
任意選択で、公開鍵の転送は、単方向通信ハードウェアを介して公開鍵を送信することによって行われる。
【0053】
任意選択で、公開鍵の転送は、装置センサによってキャプチャされ、ネットワークを介して公開鍵をブロードキャストするために通信装置によって復号される公開鍵を、装置の提示ユニットによって符号化する機械可読コードを提示することによって行われる。
【0054】
本発明のいくつかの実施形態の態様によれば、装置によって暗号通貨アカウントのために生成された公開鍵のハッシュを他のデジタル装置から電子的に切り離された装置から受信するステップと、暗号通貨のブロックチェーンに追加されるハッシュをブロードキャストするステップと、ハッシュがブロックチェーンに追加される固有のタイムスロット内のカレンダ時間のタイムスタンプを受信するステップと、マンマシンインタフェース(MMI)を介してタイムスタンプを装置に入力するためのユーザに提示するステップと、固有のタイムスロットが通過した後に装置から公開鍵を受信するステップと、ブロックチェーンに登録される公開鍵を送信するステップとを備え、暗号通貨アカウントの公開アドレスはタイムスタンプを表しかつ公開鍵を表す複数のビットを含む、短い公開アドレスを有する暗号通貨アカウントを作成する方法が提供される。
【0055】
別段の定義がない限り、本明細書で使用される全ての技術用語および/または科学用語は、本発明が関係する技術分野の当業者によって一般に理解されるものと同じ意味を有する。本明細書に記載されるものと類似または同等の方法および材料を、本発明の実施形態の実施または試験において使用することができるが、例示的な方法および/または材料を以下に記載する。矛盾する場合には、定義を含む特許明細書が優先する。さらに、材料、方法、および実施例は、例示にすぎず、必ずしも限定することを意図するものではない。
【0056】
本発明の実施形態の方法および/またはシステムの実施は選択されたタスクを手動で、自動的に、またはそれらの組合せで実行または完了することを含むことができる。さらに、本発明の方法および/またはシステムの実施形態の実際の道具および機器によれば、いくつかの選択されたタスクは、ハードウェア、ソフトウェア、またはファームウェア、またはオペレーティングシステムを使用するそれらの組合せによって実施することができる。
【0057】
例えば、本発明の実施形態による選択されたタスクを実行するためのハードウェアは、チップまたは回路として実施することができる。ソフトウェアとして、本発明の実施形態による選択されたタスクは、任意の適切なオペレーティングシステムを使用してコンピュータによって実行される複数のソフトウェア命令として実施することができる。本発明の例示的な実施形態では、本明細書で説明する方法および/またはシステムの例示的な実施形態による1つまたは複数のタスクが複数の命令を実行するためのコンピューティングプラットフォームなどのデータプロセッサによって実行される。任意選択で、データプロセッサは命令および/またはデータを記憶するための揮発性メモリ、および/または命令および/またはデータを記憶するための、磁気ハードディスクおよび/または取り外し可能メディアなどの不揮発性記憶装置を含む。任意選択で、ネットワーク接続も同様に提供される。ディスプレイおよび/またはキーボードやマウスなどのユーザ入力装置も、任意選択で提供される。
【0058】
本発明のいくつかの実施形態は、添付の図面を参照して、例示としてのみ、本明細書に記載される。ここで図面を詳細に参照すると、示された詳細は例示のためであり、実施形態の例示的な議論の目的のためであることが強調される。この点に関して、図面を参照した説明は、本発明の実施形態がどのように実施され得るかを当業者に明らかにする。
【図面の簡単な説明】
【0059】
【
図1】
図1は、本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された、暗号通貨を保存および管理するためのデジタルウォレット装置の概略図である。
【
図2】
図2は、本発明のいくつかの実施形態による、デジタルウォレット装置により暗号通貨を転送するための方法を概略的に示したフローチャートである。
【
図3】
図3は、本発明のいくつかの実施形態による、デジタルウォレット装置により暗号通貨を転送するための方法を概略的に示すシーケンス図である。
【
図4】
図4は、本発明のいくつかの実施形態による、デジタルウォレット装置がスマートコントラクトを介して暗号通貨を転送するための方法を概略的に示すシーケンス図である。
【
図5】
図5は、本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された、暗号通貨を保存および管理するためのイメージング装置を有するデジタルウォレット装置の概略図である。
【
図6】
図6は、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置によって暗号通貨を転送するための方法を概略的に表すフローチャートである。
【
図7】
図7は、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置により暗号通貨を転送するための方法を概略的に示すシーケンス図である。
【
図8】
図8は、本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された、暗号通貨を記憶し管理するための2つのデジタルウォレット装置の概略図である。
【
図9】
図9は、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置のためのイメージング装置なしにデジタルウォレット装置によって暗号通貨アカウントを生成し、トランザクションを遂行する過程を概略的に示すシーケンス図である。
【
図10】
図10は、本発明のいくつかの実施形態による、電子的に切り離された計算装置間で複合データを転送するための入力システムの概略図である。
【
図11】
図11は、本発明のいくつかの実施形態による、電子的に切り離された計算装置間で複合データを転送するための入力システムを使用するための方法を概略的に表すシーケンス図である。
【
図12】
図12は、本発明のいくつかの実施形態による、暗号通貨管理集積回路(IC)および電子的に切り離された入力ICを有するデジタルウォレット装置の概略図である。
【
図13】
図13は、本発明のいくつかの実施形態による、暗号通貨管理ICおよび入力ICを有する通信装置を有するデジタルウォレット装置の概略図である。
【
図14】
図14は、本発明のいくつかの実施形態による、電子的に切り離されたデジタルウォレット装置間で複合データを転送するための入力装置を使用するための手順を概略的に示すシーケンス図である。
【
図15】
図15は、本発明のいくつかの実施形態による、電子的に切り離された装置によってショート公開アカウントアドレスを提供する暗号通貨プロトコルを使用して暗号通貨アカウントを作成するための方法を概略的に表すシーケンス図である。
【
図16】
図16は、本発明のいくつかの実施形態による、オンライン装置によってショート公開アカウントアドレスを提供する暗号通貨プロトコルを使用して暗号通貨アカウントを作成するための方法を概略的に表すシーケンス図である。
【発明を実施するための形態】
【0060】
本発明は、ハードウェア暗号通貨ウォレットに関し、より詳細には電子的に隔離されたハードウェア暗号通貨ウォレットおよび暗号通貨アカウント管理の方法に関するが、これに限定されるものではない。
【0061】
本発明のいくつかの実施形態によると、暗号通貨ウォレット装置は、他の電子装置から完全に隔離され、マンマシンインタフェース(MMI)を介したユーザのみによる入力を受信する。これにより、ウォレット装置に遠隔でハッキングする方法がなくなるので、ウォレット装置に格納された秘密鍵に最大限のセキュリティが提供される。
【0062】
電子ウォレットの1つの脆弱性は、ウォレットが存在するマシンへの物理的なアクセスがなくても、悪意のあるエンティティが悪意のあるコードを使用してウォレットへのアクセスを獲得し、全ての資金を第三者のアカウントに転送し、資金を効率的に盗む可能性があることである。ウォレットは暗号化される可能性があるため、秘密鍵またはパスワードが存在する場合にのみアクセスして使用することができるが、これらの暗号化はリモートハッキングに対しても潜在的に脆弱である。既存のハードウェア暗号通貨ウォレットはほとんどの場合、インターネットから切断することができるが、このような接続(直接的であろうと間接的であろうと)はトランザクションがブロードキャストされるために依然として必要とされる。
【0063】
ウォレット装置に記憶されたアカウントから暗号通貨を転送するために、ユーザは、キーボードのようなウォレット装置のMMIを介して、転送されるべき暗号通貨の量と、暗号通貨が転送されるべきアカウントのアドレスとを手動で入力する。ウォレット装置内のプロセッサはトランザクションを作成し、ウォレット装置の記憶装置に記憶されているアカウントの秘密鍵を使用してそれに署名する。トランザクションをブロードキャストするために、トランザクションは、単方向通信ハードウェアを介して、トランザクションをブロックチェーンシステムにブロードキャストする通信装置に送信され、ブロックチェーンに追加される。単方向通信ハードウェアは電子的な隔離を提供し、一方に送信専用コンポーネントを持ち、他方に受信専用コンポーネントを持つことによってデータを転送している。
【0064】
例えば、単方向通信ハードウェアは、ウォレット装置(送信専用コンポーネント)の提示ユニットと、通信装置(受信専用コンポーネント)のセンサとを含むことができる。例えば、トランザクションを符号化した機械可読コード(例えば、クイックレスポンス(QR)コード(登録商標)または線形バーコードなどの視覚コード)が、ウォレット装置の提示ユニット(スクリーンなど)上に提示される。このコードは、センサ(例えば、カメラなどのイメージング装置)によって取り込まれ、復号され、通信装置によってブロックチェーンシステムにブロードキャストされる。これは、例えば、携帯電話上のアプリケーションによって行われてもよい。
【0065】
あるいは、単方向通信ハードウェアは、データダイオードのような単方向ネットワークコンポーネントであってもよく、これは隔離された送信機(ウォレット装置側)および受信機(通信装置側)を有し、単方向にのみ連続的なデータ移動を可能にしたネットワークハードウェアである。
【0066】
任意に、ウォレット装置は、センサ、例えば、カメラ等のイメージング装置も含む。これにより、通常、誤りなく人間が入力することが困難な長いコードである宛先アカウントアドレスや、トランザクションに求められる他のデータの入力が容易になる。これは、例えば、携帯電話機のスクリーン上に提示される宛先アカウントアドレスを符号化した機械可読コードをスキャンすることによって行われてもよい。センサを有するこのウォレット装置は、機械可読コードを生成する装置がハッキングされ、機械可読コード内に別のアカウントアドレスまたは悪意のあるコードさえも符号化される可能性があるため、センサを有さないウォレット装置よりもセキュアではない。
【0067】
任意選択で、センサ(セキュア)を有さないものとセンサ(よりセキュアでない)を有するものとの2つのウォレット装置を組み合わせて使用して、様々なレベルのセキュリティを提供することができる。センサを有するウォレット装置は都合のよい頻繁な使用のために、より少量の暗号通貨を有するアカウントを保存するために使用されてもよく、一方、より多量の暗号通貨は、センサを有さず最大限のセキュリティを提供するウォレット装置に保存されたアカウントに保存されてもよい。この構成では、セキュアでないウォレット装置のための新規の暗号通貨アカウントがセキュアなウォレット装置によって作成され、セキュアでないウォレットのアカウントに転送されてもよく、したがって、セキュアなウォレット装置はこの新規の暗号通貨アカウントのアドレスを記憶し、さらなる宛先アカウントアドレス入力を必要とせずに、このアカウントに暗号通貨を容易に転送する。任意選択で、非常に少量の暗号通貨を通信装置上のセキュアでないアカウントに記憶することができる。
【0068】
本発明のいくつかの実施形態によれば、電子的に切り離された計算装置間で複合データを転送するための入力システムが提供される。これにより、データを伝送するための直接的な電子接続が不可能な場合、例えば、暗号通貨ウォレット装置において、ユーザは、複雑なおよび/または長いデータ片を計算装置に入力することができる。このシステムは(任意選択で、他のデジタル装置から電子的に切り離された計算装置に含まれる)どのコンピュータインタフェースからも隔離された集積回路(IC)に接続された入力コンポーネントと、(任意選択で、入力機能も含む)入力コンポーネントから電子的に切り離された出力コンポーネントであって、よりセキュアでない可能性がある(任意選択で、計算装置に含まれる)別のICからデータを受信する出力コンポーネント、を含む。出力コンポーネントは、入力コンポーネントの物理的な構成に従って、どのようにデータ片を入力コンポーネントに入力するかをユーザに示すデータ片の表現をユーザに提示する。例えば、システムは、キーボード入力コンポーネントと、キーボードに取り付けられ、それぞれがキーボードのキーに隣り合う光源を含む表面出力コンポーネントとを含んでもよい。光源がオンにされ、キーに隣り合うものが押されるべきであることをユーザに示す。ユーザがキーを押すと、表面も押され、次のキーのための次の光源、または、ユーザの間違ったキーの押下の指示を提示することができる。例えば、システムは、キーボード入力コンポーネントと、キーボード上のキーを指すレーザのようなリモートインジケータとを含んでもよい。
【0069】
本実施形態によれば、他の電子装置から完全に隔離され、互いに完全に隔離された2つのICを含む暗号通貨ウォレット装置が提供される。ウォレット装置は、クレジットカード形状の装置のような一体化された装置であってもよい。暗号通貨管理ICは、記憶装置、プロセッサを搭載し、提示ユニットに接続され、入力ICは、イメージング装置のようなセンサを搭載する。任意選択で、ウォレット装置は上述のような入力装置を含み、したがって、入力は出力コンポーネントに接続され、暗号通貨管理ICは入力コンポーネントに接続される。センサによって取得されたデータの表現はユーザに提示され、したがって、ユーザは入力コンポーネントを介してプロセッサにそれを入力することができる。
【0070】
本発明のいくつかの実施形態によれば、アカウントアドレスが短く、記憶可能であり、かつ/または入力が容易である暗号通貨および暗号通貨プロトコルが提供される。現存する暗号通貨プロトコル、例えばイーサリアムではアカウントアドレスがアカウントに関連する公開鍵のハッシュ(sha3-256)の最後の160ビットであり、これは、例えば他の電子装置から完全に隔離されたウォレット装置のMMIにおいて、人間がエラーなしにタイプすることが困難である。使用するビットを減らすために、ハッシュの同じ最後の複数のビットを持つ2つのアカウントが作成されるのを防ぎながら、公開鍵をアナウンスすることによって新規のアカウントにブロックチェーンへの登録を要求することが可能である。しかしながら、ブロックチェーンシステムに公開鍵をアナウンスするために侵害された通信装置上で中継するデジタルウォレット装置においてそのようなプロトコルを使用するとき、侵害された通信装置はハッシュの同じ最後の複数のビットを有する第2のアカウントを生成し、代わりにブロックチェーンシステムに第2のアカウントの公開鍵をアナウンスすることができる。
【0071】
ウォレット装置が、まず、新規に作成されたアカウントの(アドレスハッシュとは異なる)公開鍵のハッシュを、侵害される可能性のある通信装置を介してブロックチェーンシステムにブロードキャストする、新規の暗号通貨プロトコルが提案されている。ハッシュは、公開鍵に暗号化ハッシュ関数を実施することによって作成される。ハッシュは、ユーザによってウォレット装置に入力される固有のタイムスロット内の特定の時間にブロックチェーンシステムに追加される。その固有のタイムスロットが通過した後にのみ、ウォレット装置は、ハッシュされていない公開鍵をブロックチェーンシステムにアナウンスする。そして、ブロックチェーンシステムに追加されたハッシュが本当に正しい公開鍵のものであることが検証されうる。アカウントアドレスには、公開鍵の固有のタイムスロットとハッシュされた複数のビットとを表す複数のビットが含まれる。任意選択で、公開アカウントアドレスの複数のビットのそれぞれの値は、リストからの単語によって表されるので、ユーザにとって、MMIを介して単語をタイプすることおよび/または公開アカウントアドレスを記憶することがより容易である。例えば、それぞれの13ビットは単語で表され、52ビットの公開アカウントアドレスは4単語のみで表され、MMIに入力することが容易である。
【0072】
本発明の少なくとも1つの実施形態を詳細に説明する前に、本発明は、その応用において、以下の記載に記載され、かつ/または図面および/または実施例に示されるコンポーネントおよび/または方法の構成および配置の詳細に必ずしも限定されないことを理解されたい。本発明は他の実施形態が可能であり、または様々な方法で実施または実行されることが可能である。
【0073】
本発明は、システム、方法、および/またはコンピュータプログラム製品とすることができる。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体を含みうる。
【0074】
コンピュータ可読記憶媒体は、命令実行装置によって使用される命令を保持し記憶することができる有形装置であってもよい。コンピュータ可読記憶媒体は例えば、電子記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置、または前述の任意の適切な組合せとすることができるが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストには、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、消去可能プログラマブル読出し専用メモリ(EPROMまたはフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読出し専用メモリ(CD-ROM)、デジタルバーサタイルディスク(DVD)、メモリスティック、フロッピーディスク、コンピュータ可読命令を有するパンチカードまたは溝内の隆起構造といった機械的に符号化された装置、および上記の任意の適切な組み合わせが含まれる。本明細書で使用されるコンピュータ可読記憶媒体は、電波または他の自由に伝播する電磁波、導波管または他の伝送媒体を通って伝播する電磁波(例えば、光ファイバケーブルを通過する光パルス)、またはワイヤを通って伝送される電気信号など、それ自体が一時的な信号であると解釈されるべきではない。
【0075】
本明細書に記載するコンピュータ可読プログラム命令は、ネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワークおよび/または無線ネットワークを介して、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理装置に、或いは、外部のコンピュータまたは外部の記憶装置に、ダウンロードすることができる。ネットワークは、銅線伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および/またはエッジサーバを含むことができる。各演算/処理装置内のネットワークアダプタカードまたはネットワークインタフェースはネットワークからコンピュータ可読プログラム命令を受信し、それぞれの演算/処理装置内のコンピュータ可読記憶媒体に格納するために、コンピュータ可読プログラム命令を転送する。
【0076】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械語、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または類似のプログラミング言語などの従来の手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたはオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、スタンドアロンソフトウェアパッケージとして、全体的にユーザのコンピュータ上で、或いは、部分的にユーザのコンピュータ上で、或いは、部分的にユーザのコンピュータ上でかつ部分的にリモートコンピュータ上で、或いは、全体的にリモートコンピュータまたはサーバ上で実行することができる。後者のシナリオでは、遠隔コンピュータがローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意の種類のネットワークを介してユーザのコンピュータに接続されてもよく、または(例えば、インターネットサービスプロバイダを使用してインターネットを介して)外部コンピュータに接続されてもよい。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブル論理アレイ(PLA)を含む電子回路は、本発明の態様を実行するために、電子回路をパーソナライズするためにコンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行することができる。
【0077】
本明細書では、本発明の実施形態による方法、機器(システム)、およびコンピュータプログラムプロダクトのフローチャートおよび/または構成図を参照して、本発明の態様を説明する。フローチャートおよび/またはブロック図の各ブロック、ならびに、フローチャートおよび/またはブロック図のブロックの組合せは、コンピュータ可読プログラム命令によって実施できることを理解されたい。
【0078】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供されて、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令がフローチャートおよび/またはブロック図の1つまたは複数のブロックで指定された機能/動作を実施するための手段を作成するように、機械を生成することができる。これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラマブルデータ処理装置、および/または他の装置が特定の方法で機能するように指示することができるコンピュータ可読記憶媒体に格納されてもよく、その結果、その中に格納された命令を有するコンピュータ可読記憶媒体は、フローチャートおよび/またはブロック図の1つまたは複数のブロックで指定された機能/動作の態様を実施する命令を含む製品を備える。
【0079】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、または他の装置上にロードされて、コンピュータ、他のプログラマブル装置、または他の装置上で実行される命令がフローチャートおよび/またはブロック図の1つまたは複数のブロックで指定された機能/動作を実施するように、一連の動作ステップをコンピュータ、他のプログラマブル装置、または他の装置上で実行させて、コンピュータ実施プロセスを生成することができる。
【0080】
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータプログラム製品の可能な実施アーキテクチャ、機能、および動作を示す。この点に関して、フローチャートまたはブロック図の各ブロックは、指定された論理機能を実施するための1つまたは複数の実行可能命令を備える、モジュール、セグメント、または命令の一部を表すことができる。いくつかの代替な実施では、ブロックに記載されている機能が図に記載されている順序外で発生する場合がある。例えば、連続して示される2つのブロックは、実際には実質的に同時に実行されてもよく、または含まれる機能に応じて、時には逆の順序で実行されてもよい。また、ブロック図および/またはフローチャート図の各ブロック、ならびにブロック図および/またはフローチャート図のブロックの組み合わせは、指定された機能または動作を実行するか、または特殊目的ハードウェアおよびコンピュータ命令の組み合わせを実行する特殊目的ハードウェアベースのシステムによって実施され得ることにも留意されたい。
【0081】
次に、図面を参照すると、
図1は本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された暗号通貨を記憶および管理するデジタルウォレット装置の概略図である。
【0082】
デジタルウォレット装置100は、いかなるコンピュータインタフェースからも隔離された暗号通貨管理IC 101を含む。コンピュータインタフェースは、データを転送する物理的または無線のいずれかの別のコンピュータ装置への任意の直接デジタル接続を含むことができる。これは、暗号通貨管理IC 101が、デジタルウォレット装置100の外部の任意のICに接続される任意の電子コネクタ、ワイヤレスインタフェース、ソケット、および/または電子接続を含まないことを意味する。デジタルウォレット装置100は、コンピュータ、デジタルコンポーネントおよび/またはIC、IoT(Internet of Things)装置、および/または任意の他の電子装置など、他の電子装置との双方向デジタル通信を有さない。デジタルウォレット装置100は非対話型であり、データを提示または送信するだけで、別の電子装置から直接的にデータを受信することはできない。
【0083】
暗号通貨管理IC 101は、暗号通貨の秘密鍵と公開鍵の1つ以上の対を記憶する、非一時的なコンピュータ可読記憶媒体(またはメモリ)102を搭載する。メモリ102は例えば、ハードドライブ、フラッシュアレイおよび/または同様のもののような、1つ以上の非一時的な永続的な記憶装置を含んでもよい。
【0084】
暗号通貨は、ブロックチェーンに基づく任意の種類の互換性のある暗号通貨、例えば、イーサ、リップル、ネオ、および/または任意の他の暗号通貨であってもよい。暗号通貨はまた、上記および下記されるように、デジタルウォレット装置100を用いて最良の性能のために特別に設計されうる。
【0085】
ブロックチェーンはブロックチェーンシステムによって管理され、これは単一のブロックチェーンを維持する異なるエンティティによって操作される多くの異なる個々のコンピュータシステムを含む公開ブロックチェーンコンピュータシステムであってもよい。代替的に、ブロックチェーンシステムはすべてが単一のエンティティ(例えば、プライベートまたはクローズドなブロックチェーンコンピュータシステム)によって動作される1つまたは複数の個々のコンピュータシステムを含むことができる。ブロックチェーンシステムはそれぞれが「マイニング」し、それによってブロックチェーンに提出されたトランザクションを検証するように動作する多数の異なったコンピュータノードを含む。トランザクションがブロックチェーンシステムにブロードキャストされると、少なくとも1つのノードがトランザクションを受信し、ブロックチェーンシステム内の他のノードにトランザクションを伝搬することができる。暗号通貨は、転送するトランザクションをブロックチェーンに登録することによって、1つの暗号通貨アカウントから別のものに転送されてもよい。
【0086】
また、暗号通貨管理IC 101には、少なくとも1つのプロセッサ103が搭載されている。プロセッサ103はクラスタおよび/または1つまたは複数のマルチコアプロセッサといった、並列処理のために構成された1つまたは複数のプロセッサ、ニューラルネットワークハードウェア、および/または任意の他の処理ハードウェアを含むことができる。
【0087】
デジタルウォレット装置100はまた、ユーザから入力を受信するためのMMI 104を含む。MMI 104は例えば、物理的ボタンを有する物理的キーボードであってもよいキーボード、またはタッチスクリーン上に提示される仮想キーボードであってもよいキーボード、コンピュータマウス等のポインティング装置、ジョイスティックコントローラ、および/または人間による直接入力のための他の任意の装置を含んでもよい。
【0088】
デジタルウォレット装置100はまた、単方向通信ハードウェアを含む。単方向通信ハードウェアは例えば、提示ユニット105であってもよい。提示ユニット105は機械可読コードを提示し、任意選択でユーザインタフェースも提示する。提示ユニット105は、スクリーン、プロッタ、プリンタ、スピーカのような音声出力装置、三次元グラフィック装置、ラジオのような電磁波を送信するためのアンテナ、並びに/或いは、人間および/または機械に提示するための他の出力装置であってもよい。
【0089】
デジタルウォレット装置100はまた、電源、例えば、バッテリおよび/または外部電源への接続を含む。
【0090】
任意選択で、デジタルウォレット装置100は、メモリカード、フラッシュカード、または取り外し可能なハードディスクなどの取り外し可能な非一時的なコンピュータ可読記憶媒体(メモリ)106も含む。取り外し可能メモリ106はトランザクションコードおよび/または他の任意のソフトウェアモジュール、例えば、OS、アプリケーションコード、ツール、エージェント、サービス、スクリプトおよび/またはこれらに類するものを記憶することができ、それぞれは、プロセッサ103によって実行されてもよい複数のプログラム命令を含む。これは、例えば、新規の動作を追加するため、および/または新規のタイプの暗号通貨のサポートを追加するために、取り外し可能メモリ106を取り外しおよび交換することによって、これらのソフトウェアモジュールのいずれかをアップデート、アップグレード、および/またはその他交換するための選択肢を提供する。あるいは、これらのソフトウェアモジュールの一部または全部がメモリ102に記憶される。
【0091】
任意選択で、デジタルウォレット装置100および/またはメモリ102はまた、スマートカード、チップカード、または集積回路カード(ICC)などの取り外し可能な書き込み専用データストレージカード、および/または埋め込み集積回路を有する任意のポケットサイズのカードを含む。任意選択で、デジタルウォレット装置100および/またはメモリ102はまた、ハードウェアセキュリティモジュール(HSM)を含む。書き込み専用カードまたはHSMを使用して、アカウントの公開鍵および秘密鍵を作成し、保存することができる。書き込み専用カードまたはHSMは、秘密鍵を使用して署名する命令、例えばトランザクションに署名する命令を実行することができる統合型プロセッサを含む。秘密鍵は書き込み専用カードからコピーできないため、秘密鍵の物理的な盗難からのセキュリティが強化される。また、これにより、ユーザはデジタルウォレット装置100内のアカウント情報を容易に挿入または交換することができ、任意選択で、物理的な盗難を防止するために、書き込み専用カードを別個に格納することができる。
【0092】
任意選択で、デジタルウォレット装置100は、改ざん防止エンクロージャ内に物理的に収容される。任意選択で、エンクロージャは改ざんを検出し、例えばメモリ102内のデータを削除することによって反応するように設計される。
【0093】
次に、本発明のいくつかの実施形態による、デジタルウォレット装置による暗号通貨の転送方法を概略的に表すフローチャートである
図2を参照する。また、本発明のいくつかの実施形態による、デジタルウォレット装置によって暗号通貨を転送するための方法を概略的に表すシーケンス図である
図3も参照する。
【0094】
まず、201および301に示すように、ユーザからの入力がMMI 104によって受信される。入力は、トランザクションのための宛先アカウントアドレスおよびトランザクションのための量を含むことができる。また、入力は、暗号通貨の種類に応じて、所望のトランザクション手数料および/またはトランザクションの作成に必要な任意の他の情報を含んでもよい。宛先アカウントアドレスは例えば、メモリ102に記憶されている連絡先リストから、既知の宛先アカウントアドレスから選択することができる。
【0095】
入力は任意のデータ型、例えば、整数、ブール値、文字、英数字文字列および/または他の任意の型であってもよい。任意選択で、入力データ型には、暗号通貨で一般的に使用される十六進数体系が含まれるか、またはそれらに変換されてもよい。
【0096】
次に、202に示すように、トランザクションコードを実行することによって、暗号通貨のトランザクションが作成され、プロセッサ103によって署名される。トランザクションの作成は、宛先アカウントアドレスと量(ユーザから受け取った入力)と、任意選択でガスリミット、(全てのトランザクションで増加する)ナンス、および/または他のメタデータなどの他の情報を使用して行われる。本トランザクションは具体的な暗号通貨に関連するプロトコル、例えば、イーサ暗号通貨のためのイーサリアムプロトコルに基づく。これは、Sha3などの暗号ハッシュ関数、または暗号通貨の種類に応じた任意の他の関数を実施することを含むことができる。トランザクションは、メモリ102に記憶されている暗号通貨の秘密鍵を使用して署名される。署名は例えば、楕円曲線デジタル署名アルゴリズム(ECDSA)、Rivest-Shamir-Adleman(RSA)暗号システム、デジタル署名アルゴリズム(DSA)、Rabin暗号システム、および/または暗号通貨の種類に基づく任意の他のアルゴリズムもしくはプロトコルを使用して行われる。
【0097】
次に、203に示すように、前記トランザクションを符号化した機械可読符号が提示ユニット105に提示される。機械可読コードは、例えば、線形バーコードまたはQRコードのようなマトリックスバーコード、色符号化された画像、および/またはコンピュータによって識別され得るデータの他の視覚的表現といったような視覚コードであってもよい。機械可読コードはまた、音波、電磁波、および/または任意の他の出力を含み得る。
【0098】
次に、204および302に示されるように、機械可読コードはイメージング装置121などのセンサによってキャプチャされ、303に示されるように、ブロックチェーンに追加されるように、ブロックチェーンシステムにネットワーク130を介してトランザクションをブロードキャストするために通信装置120によって復号される。
【0099】
あるいは、トランザクションデータが任意の他の単方向通信ハードウェアを介して、例えば、データダイオードを介して、通信装置120に転送されてもよい。
【0100】
任意選択で、通信装置120は、トランザクションを実行するのに十分な暗号通貨が暗号通貨アカウント内に残っていることを検証する。これは、アカウントに関する情報がブロックチェーンシステム内に位置し、取得するためにネットワーク通信を必要とするので、デジタルウォレット装置100によっては行うことができない。任意選択で、トランザクションを実行するのに十分な暗号通貨が暗号通貨アカウントに残っていない場合、通信装置120は、例えばトランザクションをブロードキャストせずにトランザクションを削除することによって、トランザクションをキャンセルする。
【0101】
イメージング装置121は1つまたは複数の光キャプチャセンサ、例えば、モバイルクライアント装置の単一または双対のセンサカメラ、ウェブカメラ、一眼レフカメラ(SLR)、アクションカメラ、奥行き検出カメラ、全方位カメラ、「スマートグラス」などのウェアラブル装置に含まれるカメラ、および/または任意の種類のデジタルカメラを含むことができる。
【0102】
センサはまた、マイクロホンなどの音響または音声センサ、振動センサ、電磁センサ、電磁波を受信することができるアンテナ、および/またはその周囲を検出することを目的とする任意の他の装置、モジュール、および/またはサブシステムを含むことができる。
【0103】
通信装置120は、メインフレームコンピュータ、エンタプライズサーバ、ワークステーション、多数の接続されたコンピュータ、1つ以上の仮想マシンおよび/またはパーソナルコンピュータのような1つ以上の計算装置を含むことができる。通信装置120は例えば、プロセッシングノード、コンピュータ、ラップトップ、サーバ、モバイル装置、「スマートメガネ」等のウェアラブル装置および/または任意の処理装置であってもよい。
【0104】
機械可読コードを復号する動作および/またはトランザクションをブロードキャストする動作は、通信装置120上にインストールされたソフトウェアプリケーションによって実行されてもよい。アプリケーションは他の動作、例えば、任意の暗号通貨アカウント(デジタルウォレット装置100に格納されたアカウントを含む)に関する情報を提示すること、非セキュアな暗号通貨アカウントを作成および/または管理すること、実行された動作のログを提示すること、および/または任意の他の動作といった、既存の暗号通貨ウォレットアプリケーションによって実行される動作と同様の動作を実行することができる。
【0105】
通信装置120はイメージング装置121に接続されていてもよいし、イメージング装置121を含んでいてもよい。通信装置120は、ネットワークカード、通信チップおよび/またはネットワーク130に接続するための他の任意の通信コンポーネントのような通信モジュールを含む。
【0106】
ネットワーク130は、例えば、ローカルエリアネットワーク(LAN)、モバイルネットワークのような無線ネットワーク、無線LAN(WiFi)のような無線ローカルエリアネットワーク、Bluetoothプロトコルのような無線パーソナルエリアネットワーク(WPAN)、近距離無線通信(NFC)および/または任意の他のネットワークを含むことができる。
【0107】
任意選択で、秘密鍵と公開鍵の対を生成することによって、プロセッサ103によって暗号通貨の新規のアカウントを作成することができる。新規のアカウントの鍵は別の装置に転送されてもよく、したがって、アカウントアドレスはデジタルウォレット装置100に既知である。
【0108】
任意選択で、現存する暗号通貨アカウントをデジタルウォレット装置100に挿入し、メモリ102に記憶することができる。これは、ユーザがMMI 104を介してアカウントの秘密鍵を入力することによって行うことができる。
【0109】
任意選択で、既存の暗号通貨アカウントは、メモリ102から別の装置に抽出されてもよい。これは、例えば、現存する暗号通貨アカウントの秘密鍵を符号化した機械可読コードを提示ユニット105に提示することによって、単方向通信ハードウェアを介して行われてもよい。
【0110】
任意選択で、デジタルウォレット装置100および/または通信装置120を使用するには、ユーザ認証処理が必要であり、例えば、パスワードおよびバイオメトリクスデータを含む2要素認証が必要である。
【0111】
任意選択で、トランザクションを作成するためにブロックチェーンシステムからの入力を必要とする暗号通貨(NEOなど)の場合、ブロックチェーンシステムに基づくスマートコントラクトを使用することができる。これは、ユーザによるこのブロックチェーンシステム入力を入力しないようにするためになされる。デジタルウォレット装置100に記憶されているアカウントによって所有されている暗号通貨を保持する、ブロックチェーンシステム上のスマートコントラクトが作成される。コントラクトはデジタルウォレット装置100によって作成されたトランザクションなしに、アカウントから暗号通貨を転送することができる。第三者からそのアカウントに暗号通貨を転送するために、第三者は暗号通貨をコントラクトに転送する。
【0112】
本発明のいくつかの実施形態によれば、スマートコントラクトを介してデジタルウォレット装置によって暗号通貨を転送するための方法を概略的に表すシーケンス図である
図4も参照される。ユーザはアカウントから暗号通貨を転送したい場合には上述したように、宛先アカウントアドレスおよび量をデジタルウォレット装置100に入力する。401に示すように、デジタルウォレット装置100は、メッセージリクエストを(任意選択でプロセッサ103によって)作成する。メッセージリクエストには、宛先アカウントアドレス、量、ナンスが含まれ、アカウントの秘密鍵を使用して署名される。次に、402に示すように、メッセージリクエストは(任意選択で提示ユニット105を介して)通信装置120に転送される。次に、403に示すように、通信装置120はトランザクションによってメッセージリクエストをラップし、メッセージリクエストをコントラクトに転送する。404に示すように、コントラクトは、アカウントの公開鍵を使用することによってアカウントのシグネチャを検証する。405に示すように、メッセージリクエストが全ての必要なデータを含む正しい形式であり、署名が検証された場合、コントラクトは、それをブロックチェーンに追加することによってトランザクションを実行する。ユーザの観点からは、この処理は、トランザクションを作成することによってデジタルウォレット装置100から直接的に暗号通貨を転送することと同一である。
【0113】
任意選択で、デジタルウォレット装置100は(任意選択でプロセッサ103によって)トランザクション規則および/または定義、例えば、スマートコントラクトを作成するための規則、スマートコントラクトを作成するためのメッセージリクエスト、マルチシグネチャ方式のためのポリシー、および/またはブロックチェーンにブロードキャストされ、かつ/または任意の他のエンティティに送信される任意の他の規則および/または定義を作成する。マルチシグネチャスキームのポリシーには、例えば、標準的なブロックチェーンマルチシグネチャ規則(例えばビットコインスクリプトを使用すること)や、多当事者計算(MPC)に基づくマルチシグネチャのような暗号鍵分割メカニズムのポリシーが含まれることがある。デジタルウォレット装置100は、秘密鍵を使用してトランザクション規則および/または定義に署名する。デジタルウォレット装置100はインターネットから切断されているので、これにより、トランザクション規則および/または定義が真正であることが保証される。次いで、トランザクション規則および/または定義は通信装置120に送信されてもよく、通信装置120は、トランザクション規則および/または定義をブロックチェーンにブロードキャストし、かつ/またはトランザクション規則および/または定義を他のエンティティに送信する。例えば、デジタルウォレット装置100はマルチシグネチャのための規則を作成する(例えば、一日にウォレットによってブロックチェーンにブロードキャストされる全てのトランザクションの合計は、100コイン未満である)。規則は、秘密鍵によって署名された後、マルチシグネチャ方式の共同署名者(マルチシグネチャ処理の参加者)に送信され、侵害または変更することができない。各共同署名者は、規則に基づいて、署名するか否かを決定する。例えば、通信装置120によって接続され、配置され、および/または使用されてもよい、よりセキュアでないデジタルウォレットは、次いで、規則を安全に使用してもよい。これにより、通信装置120が侵害される状況、例えば、ハッカーの攻撃によって、よりセキュアでないデジタルウォレットによって作成された規則は欠陥があり、欠陥のある規則に基づいて共同署名者に不正なトランザクションに署名させる状況を防止する。
【0114】
任意選択で、デジタルウォレット装置100はまた、機械可読コードをキャプチャするために、イメージング装置107などのセンサ、または上述の任意の他のセンサを含む。ここで、本発明のいくつかの実施形態に従う、他のデジタル装置から電子的に切り離された、暗号通貨を記憶し管理するイメージング装置を有するデジタルウォレット装置の概略図である
図5を参照する。また、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置によって暗号通貨を転送するための方法を概略的に表すフローチャートである
図6を参照する。また、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置による暗号通貨を転送するための方法を概略的に表すシーケンス図である
図7を参照する。
【0115】
イメージング装置107はイメージング装置121について上述したように、任意の1つ以上の光キャプチャセンサを含んでもよい。
【0116】
まず、601に示すように、トランザクションの宛先アカウントアドレス、および任意選択でトランザクションの量などの任意の他の入力を符号化する機械可読コードが、例えば通信装置120の提示ユニット122上に提示される。提示ユニット122は例えば、提示ユニット105について上述したようなスクリーンであってもよい。宛先アカウントアドレス、量および/または他の入力は、通信装置120にインストールされたアプリケーションにおいて、ユーザによって事前に挿入または選択されてもよい。この場合、機械可読コードを使用すること(例えば、データダイオードのような連続的な単方向通信ハードウェアを使用することとは対照的に)は転送されるデータの量に対する固有の制限を提供し、したがって、セキュリティを向上させる。
【0117】
次に、602および701に示すように、機械可読コードはイメージング装置107によってキャプチャされ、プロセッサ103によって復号される。
【0118】
次に、603に示すように、プロセッサ103によって、(機械可読符号から復号された)宛先アカウントアドレスと量を用いて暗号通貨のトランザクションが作成され、202および302について上述したように、そのトランザクションが署名される。
【0119】
604~605および702~703に示すステップは、203~204および302~303について上述したように実行される。
【0120】
任意選択で、例えば通信装置120によって提示される既存のアカウントの秘密鍵を符号化する機械可読コードを取り込むことによって、イメージング装置107を有するデジタルウォレット装置に既存の暗号通貨アカウントを挿入することができる。
【0121】
任意選択で、1つがイメージング装置のようなセンサを有し、1つがセンサを有さない、2つのデジタルウォレット装置を併用して、様々なレベルのセキュリティを提供してもよい。
【0122】
次に、本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された、暗号通貨を記憶し管理するための2つのデジタルウォレット装置の概略図である
図8を参照する。この構成では、デジタルウォレット装置801に格納されたアカウントに大量の暗号通貨を保存することができ、一方、イメージング装置を有し、したがってセキュリティが低く、より頻繁に使用され、宛先アカウントアドレスを入力するためのイメージング装置を容易に使用する、デジタルウォレット装置802に格納されたアカウントに、より少量の暗号通貨を保存することができる。
【0123】
任意選択で、デジタルウォレット装置801から頻繁に使用するデジタルウォレット装置802に暗号通貨を転送する便宜のために、デジタルウォレット装置802で使用するための新規のアカウントをデジタルウォレット装置801によって作成することができ、したがって、このアカウントアドレスはデジタルウォレット装置801に既知であり、入力は必要とされない。
【0124】
ここで、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置に対してイメージング装置を持たないデジタルウォレット装置により暗号通貨アカウントを作成してトランザクションを実行するための方法を概略的に表したシーケンス図である
図9を参照する。
【0125】
新規の暗号通貨アカウントは、秘密鍵と公開鍵の対を生成することによって、デジタルウォレット装置801のプロセッサによって作成される(901)。鍵はデジタルウォレット装置802(902)に転送され、例えば、鍵を符号化した機械可読コードをデジタルウォレット装置801の提示ユニットに提示し、デジタルウォレット装置802のイメージング装置によってコードをキャプチャする。暗号通貨は、トランザクションをブロックチェーンシステムにブロードキャストする通信装置803(903)を使用して、上述のようにトランザクションによって、デジタルウォレット装置801に格納された現行の暗号通貨アカウントからデジタルウォレット装置802に格納された新規のアカウントに転送されうる(904)。デジタルウォレット装置801はアカウントアドレスを知っており、入力は必要とされないので、トランザクションの作成はユーザにとって簡単である。ここで、701~703について上述したように、デジタルウォレット装置802(905~907)に格納された新規の暗号通貨アカウントから暗号通貨を転送することができる。
【0126】
任意選択で、デジタルウォレット装置100は有限数の文字を有する機械的に符号化されたデータ、例えば、トランザクションの宛先アカウントアドレス、および/または暗号通貨の種類に従ってトランザクションに必要な任意の他のデータを読み取る機械的入力コンポーネントも含む。これは、例えば、パンチカード、パンチテープ、磁気インク文字認識(MIRC)、および/またはデータの他の読み取り可能な機械的記憶装置を含むことができる。ユーザは機械的入力コンポーネントに符号化されたデータを見て、それが正しいデータであることを検証してから、それをデジタルウォレット装置100に入力することができる。データは、任意選択で通信装置120に接続された装置、例えば穿孔機によって機械的に符号化することができる。
【0127】
任意選択で、MMI 104はユーザに指示を提供し、宛先アカウントアドレスの入力を案内する入力システムを含む。
【0128】
次に、本発明のいくつかの実施形態による、電子的に切り離された計算装置間で複合データを転送するための入力システムの概略図である
図10を参照する。本発明のいくつかの実施形態による、電子的に切り離された計算装置間で複合データを転送するための入力システムを使用する方法を概略的に示すシーケンス図である
図11を参照する。
【0129】
この方法はデータを転送するための直接的な電子接続が不可能な場合に、複雑なおよび/または長いデータ片を計算装置に入力するための解決策を提供する。
【0130】
入力装置1000は、他のデジタル装置、例えばデジタルウォレット装置100から電子的に切り離された入力IC1010に接続された入力コンポーネント1001を含む。入力装置1000はまた、入力コンポーネント1001から電子的に切り離されており、例えば通信装置120に含まれるセキュアでない出力IC 1020に接続された出力コンポーネント1002を含む。入力コンポーネント1001および出力コンポーネント1002は、別個であっても、隣り合っていても、同じ物理装置に一体化されていてもよい。
【0131】
まず、出力コンポーネント1002は、入力IC 1010に入力されるべき出力IC 1020からのデータ片を受信する(1101)。次に、出力コンポーネント1002は、データ片の表現をユーザに提示する(1102)。この表現は、入力コンポーネント1001の物理的な構成に従った、前記ユーザによる入力動作を示す。表現は例えば、入力コンポーネント1001上のユーザによって押されるべきボタンを示す一連の光、模様、入力コンポーネント1001のタッチスクリーン上のユーザによって描かれるべきスクリーン上に提示される1つ以上の単一のスクライブルまたは形などの視覚的表現、一連の音、および/または任意の他の指示を含んでもよい。表現はデータ片の符号化版であることがある。
【0132】
次に、ユーザは表現(1103)に従って入力コンポーネント1001を介してデータを入力し、データ片は入力集積回路1010に転送される(1104)。任意選択で、ユーザによって入力されたデータ片の指示も、例えば、出力コンポーネント1002が入力機能も含む場合、出力コンポーネント1002(1105)を介して、または、単方向通信を介して入力IC 1010から直接的に、出力IC 1020(1106)に転送される。次いで、出力コンポーネント1002は、ユーザの入力に基づいて調整された表現を提示することができる。任意選択で、ユーザが正しいデータ片を入力したとき、入力集積回路1010に入力される次のデータ片の次の表現が出力コンポーネント1002によって提示される(1107)。任意選択で、ユーザが誤ったデータ片を入力した場合、エラー表示が出力コンポーネント1002によって提示される(1108)。次に、ユーザは処理を再開するコマンドを入力することができ(1109および1110)、したがって、ユーザがデータ片を正しく再入力するために、元の表現が出力コンポーネント1002によって再度提示される。
【0133】
例えば、入力コンポーネント1001はキーボードであってもよく、出力コンポーネント1002はキーボードに取り付けられた表面を含んでもよい。例えば、表面をキーボードの上に配置し、キーボードが透明である場合、キーボードを吹く(blow)することができる。表面は、それぞれキーボード上のキーに隣り合う発光ダイオード(LED)などの光源を含んでもよい。表面上の光源は、隣のキーが次に押されるべきであることをユーザに示すためにオンにされる。ユーザがキーを押すと、表面も押され、入力は出力IC 1020に戻される。ユーザが正しいキーを押すと、次のキーに近接する光源がオンになり、ユーザは一連のキーを押すように案内される。ユーザが間違ったキーを押すと、例えば、全ての光源を同時にオンにさせてエラーを示し、ユーザがキーを押して処理を再開した後、第1の光源をオンにさせてシーケンスを再開することができる。
【0134】
別の例として、入力コンポーネント1001はキーボードであってもよく、出力コンポーネント1002は、ユーザを次のデータ片に向けるリモートインジケータを含んでもよい。例えば、リモートインジケータは、次に押すべき正しいキーに向けられたレーザ、ユーザの視覚上にキーボードのイメージ表示を提示する拡張現実装置、押すべきキーをユーザに読み聞かせる音声スピーカ、および/または入力コンポーネント1001から物理的に切り離された他の表示装置を含むことができる。
【0135】
他の例では、入力コンポーネント1001は、パターンがユーザによって描かれ得るタッチスクリーンであってもよく、出力コンポーネント1002は所望のパターンをユーザに提示するスクリーンであってもよい。2つの画面は、1つの物理装置に統合されてもよい。
【0136】
本発明のいくつかの実施形態による、暗号通貨管理ICおよび電子的に切り離されたICを有するデジタルウォレット装置の概略図である
図12を参照する。
【0137】
任意に、デジタルウォレット装置100は、イメージング装置107のようなセンサを搭載する、入力IC 108も含む。入力IC 108は、暗号通貨管理IC 101から隔離され、任意選択で、どのコンピュータインタフェースからも隔離される。あるいは、入力IC 108がデータダイオードなどの他の単方向通信ハードウェアを介してデータを受信する。両方のICは、同じ物理装置、例えばクレジットカード形状の装置に一体化されてもよい。任意選択で、入力IC 108は提示ユニットに接続され、イメージング装置107によって取得されたデータ、たとえばトランザクションの宛先アカウントアドレスをユーザに提示し、したがってユーザはMMI 104を介してデータを入力することができる。
【0138】
任意選択で、デジタルウォレット装置100は上述のように、電子的に切り離された計算装置間で複合データを転送し、2つの隔離された部分を有する入力システム109を含む。入力ICは入力システム109の出力コンポーネントに接続され、暗号通貨管理IC 101は入力システム109の入力コンポーネントに接続される。データ片が単方向通信ハードウェアを介して、例えばイメージング装置107によって取得されると、データ片の表現が入力システム109の出力コンポーネントによって提示され、ユーザは入力システム109の入力コンポーネントを介してデータ片を入力することができる。
【0139】
次に、本発明のいくつかの実施形態による、暗号通貨管理ICを有するデジタルウォレット装置および入力ICを有する通信装置の概略図である
図13を参照する。
【0140】
この例示的な構成では、(例えば、デジタルウォレット装置100と同等の)よりセキュアなデジタルウォレット装置1301への入力は(例えば、通信装置120と同等の)ネットワークまたは(例えば、デジタルウォレット装置802と同等の)よりセキュアでないデジタルウォレット装置に接続されうる通信装置1302のような、よりセキュアでない装置の入力IC 1303からの指示に基づく。入力IC 1303は、デジタルウォレット装置1301のキーボード104を指し示す、例えばレーザ装置のようなリモートインジケータ1304を使用する。リモートインジケータ1304はデジタルウォレット装置1301の一部(物理的に接続されているが、電子的には切り離された)であってもよく、通信装置1302の一部であってもよく、または別個の装置であってもよい。
【0141】
本発明のいくつかの実施形態による、電子的に切り離されたデジタルウォレット装置間で複合データを転送するための入力システムを使用するための方法を概略的に示すシーケンス図である
図14を参照する。
【0142】
まず、入力IC 1303は、例えばユーザ(1401)によって入力されるデータ列を作成する。次に、入力IC 1303は、第1のデータ片をリモートインジケータ1304に送る(1402)。次いで、リモートインジケータ1304は例えば、レーザ光線をMMI 104上の鍵に向けることによって、ユーザにデータ片を指示する(1403)。そして、ユーザは、指示に従ってMMI 104を介して入力し(1404)、データ片は、暗号通貨管理IC 101に転送される(1405)。そして、ユーザ(または現在入力されているデータ列)によって入力されたデータ片の指示が、単方向通信ハードウェア(1406)を介して、暗号通貨管理IC 101から入力IC 1303に送られる。例えば、データ片の指示は、データダイオード1305を介して入力IC 1303に送られる。あるいは、デジタルウォレット装置1301の提示ユニットが通信装置1302のイメージング装置によってキャプチャされる指示を提示する。この方法で指示を送信すると、エラーに対して脆弱であるが、悪意のある攻撃に対して安全である。
【0143】
次に、ユーザが正しいデータ片を入力すると、入力IC 1303は、リモートインジケータ1304にデータ片の次のデータ片を送り、リモートインジケータ1304は、データ片のユーザに示す(1407)。任意選択で、ユーザが誤ったデータ片を入力すると、エラーの指示がリモートインジケータ1304によって提示される(1408)。そして、ユーザは最後のデータ片(1409)に対して削除コマンドを入力することができ、これは暗号通貨管理IC 101(1410)に転送される。そして、暗号通貨管理IC 101は、現在入力されているデータ列を誤ったデータ片なしに入力IC 1303に送信する(1411)。次に、入力IC 1303は、データ片のユーザを示すリモートインジケータ1304に正しいデータ片を再度送る(1412)。
【0144】
任意選択で、デジタルウォレット装置1301は、リモートインジケータ1304を非アクティブ化および/または遮断することができる。任意選択で、デジタルウォレット装置1301は、リモートインジケータ1304が非アクティブであるべきであるという指示を、例えば提示ユニット上に提示されることによって、ユーザに提示することができる。これは、例えば、機密情報がMMI 104を使用して入力されたときに、通信装置1302を介して制御を得たハッカーが誤った情報を入力するようにユーザを案内することを防止するのに役立つ。
【0145】
任意選択で、短いおよび/または記憶可能なアカウントアドレスを有する暗号通貨を使用することができ、したがって、ユーザがMMI 104を介してトランザクションの宛先アカウントアドレスを入力することがより容易になる。
【0146】
現存の暗号通貨プロトコル、例えばイーサリアムでは、アカウントアドレスは、そのアカウントに関連する公開鍵のハッシュの最後の160ビットである。使用するビットが少ない場合、例えば52ビットの場合、(約226=3200万アカウント後に)同じ52ビットのハッシュのアカウントが2つ作成される可能性が高くなる。これは、ブロックチェーンシステムとユーザが区別できず、資金が間違ったアカウントに転送されるので問題である。この課題を解決するために考えられる選択肢は、公開鍵をアナウンスすることによってブロックチェーンに登録するために新規のアカウントを要求することである。既存のアカウントと同じ52ビットのハッシュを持つアカウントが作成されると、新規のアカウントは拒否され、登録されない。しかしながら、ブロックチェーンシステムにブロードキャストするために通信装置を中継するデジタルウォレット装置においてそのようなプロトコルを使用することはセキュアでないかもしれず、アカウントが生成された後、公開鍵はブロックチェーンシステムに公開鍵をアナウンスするために通信装置に転送される。その段階では、悪意のあるソフトウェアに感染しているかハッキングされた通信装置が新規のアカウントと同じ52ビットのハッシュを持つ2番目のアカウントを作成しようとし、その2番目のアカウントの公開鍵をブロックチェーンシステムにアナウンスする可能性がある。次に、新規のアカウントに指定された資金は、代わりに第2のアカウントに転送される。信頼されていない通信装置上を中継するデジタルウォレット装置を容易かつセキュアに使用することを可能にする暗号通貨プロトコルが求められる。
【0147】
本発明のいくつかの実施形態による、短い公開アカウントアドレスを電子的に切り離された装置によって提供する暗号通貨プロトコルを用いて暗号通貨アカウントを作成するための方法を概略的に表したシーケンス図である
図15を参照する。
【0148】
まず、他のデジタル装置(1501)、例えばデジタルウォレット装置100から電子的に切り離された装置によって、暗号通貨アカウント用の秘密鍵および公開鍵が生成される。公開鍵のハッシュは、提示ユニット105上に提示され、イメージング装置121によってキャプチャされ(1502)、通信装置120によって送信され、ブロックチェーンに追加される(1503)。このハッシュは、sha3-256以外など、アカウントアドレスの公開鍵を表すハッシュとは異なる。ハッシュがブロックチェーンに追加されたカレンダ時間のタイムスタンプは、通信装置120によって受信され(1504)、MMI 104を介してデジタルウォレット装置100に入力するためにユーザに提示される(1505)。タイムスタンプの標準時間(グリニッジ標準時(GMT)など)を使用できる。カレンダ時間は、プロトコルで定義された固有のタイムスロット内である。固有のタイムスロットは例えば、1時間、1日、1週間、および/または任意の他のより短い、より長い、もしくは中間のタイムスロットであってもよい。ブロックチェーンに追加するこの固有のタイムスロットが経過されたことを検証した後にのみ(1506)、ハッシュされていない公開鍵が提示ユニット105上に提示され、イメージング装置121によってキャプチャされ(1507)、通信装置120によって送信されてブロックチェーンに登録される(1508)。これで、公開鍵がブロックチェーンに追加された公開鍵のハッシュと照合され、同じアカウントであることが確認され、新規のアカウントと同じハッシュの複数のビットを持つ他のアカウントが存在しないことが確認される。
【0149】
任意選択で、正確なカレンダ時間がデジタルウォレット装置100に知られることを確実にするために、デジタルウォレット装置100は例えば、バッテリなどの別個の予備電源によって給電され得る時計を含んでもよい。
【0150】
次いで、公開アカウントアドレスは、例えば、ハッシュによって、タイムスタンプを表す複数のビットと公開鍵を表すより少ない複数のビットとを含むことができる。公開アカウントアドレスはタイムスタンプおよび/または公開鍵で動作し、例えば、タイムスタンプと公開鍵の両方の組み合わせのハッシュを表す複数のビットを生成する関数によって作成されるビットを含むことができる。例えば、公開アカウントアドレスは52ビットを含むことができ、ここで13ビットはタイムスタンプを表し、39ビットは公開鍵のハッシュである。たとえば、13ビットで表される日付のタイムスタンプは、約22年間は繰り返されない。ブロックチェーンは公開アカウントアドレスに関する全ての情報、すなわち、最初のハッシュがブロックチェーンに追加されたタイムスタンプおよび公開鍵を含む。公開アカウントアドレスの作成には、他のステップ、例えば、ハッシュの結果に対してハッシュ(例えば、RIPEMD-160ハッシュ)を実行するステップ、バージョンを表すバイトを追加するステップ、バイト列からの結果をbase58文字列のような別のフォーマットに変換する、および/または他の任意の機能またはアルゴリズムも含まれる。
【0151】
任意選択で、通信装置120などのオンライン装置によって、プロトコルを使用して暗号通貨アカウントを作成することもできる。この場合、公開アカウントアドレスが公開鍵のハッシュの最初の38ビットのみを含むことができ、1ビットはアカウントが作成された方式を示すことができる。この方法は、固有のタイムスロットが通過するのを待つ時間を節約する。
【0152】
次に、本発明のいくつかの実施形態による、オンライン装置によって短い公開アカウントアドレスを提供する暗号通貨プロトコルを使用して暗号通貨アカウントを作成するための方法を概略的に示すシーケンス図である
図16を参照する。
【0153】
通信装置120にインストールされたアプリケーションは、暗号通貨アカウント用の秘密鍵および公開鍵を生成する(1601)。公開鍵はブロックチェーンに追加され(1602)、確認が受信される(1603)。しばらく経過し、いくつかのブロックがブロックチェーン内に作成された(1604)後、公開鍵およびいくつかの後続のブロックを含むブロックが受信され(1605)、通信装置120によって検証されて(1606)、アカウントが登録されていることが検証される。いくつかのブロックを作成する必要があるため、待機時間は固有のタイムスロットの長さより短くなる場合がある。
【0154】
任意選択で、(例えば、待ち時間がない場合、および/またはトランザクション料金を回避するために)ブロックチェーンに登録せずにプロトコルを使用して暗号通貨アカウントを作成することもできる。このケースでは、公開アカウントアドレスが公開鍵のハッシュの通常の最後の160ビットを含むことができる。
【0155】
任意選択で、公開アカウントアドレスのハッシュの複数のビットの各々の数は、一覧からの単語によって表現されるので、ユーザにとって、MMIを介して単語を入力し、および/または公開アカウントアドレスを記憶することがより容易である。例えば、それぞれの13ビットは213=8192個の単語の一覧からの単語によって表現されてもよく、したがって、52ビットの公開アカウントアドレスは4つの単語によって表現される。公開鍵のハッシュの最後の160ビットを含む公開アカウントアドレスは、13ワードで表されてもよい。
【0156】
任意選択で、登録されていないアドレスへのトランザクションは、ブロックチェーンシステムによって受け入れられない。これは、ハッキングされた通信装置が、ブロックチェーンにアドレスを登録しないまま登録されているとユーザに誤って確認し、アカウントがそれに転送された暗号通貨を受信できない状況を防止するために、または、悪意のあるエンティティが転送された暗号通貨を受信することを目的としてトランザクションに基づいてアカウントを作成することを防止するために必要である。任意選択で、トランザクションは有効期限を含み、それ以降は、もはや受け入れられなくてもよい。
【0157】
本発明の様々な実施形態の説明は例示の目的で提示されているが、網羅的であることも、開示された実施形態に限定されることも意図されていない。記載された実施形態の範囲および主旨から逸脱することなく、多くの修正例および変形例が当業者には明らかであろう。本明細書で使用される用語は実施形態の原理、市場で見出される技術に対する実際の適用または技術的改善を最もよく説明するように、または当業者が本明細書で開示される実施形態を理解することを可能にするように選択された。
【0158】
本出願から始まる特許の存続期間中に、多くの関連するデジタルウォレットが開発されることが予想され、デジタルウォレットという用語の範囲は、全てのそのような新規の技術を先験的に含むことが意図される。
【0159】
用語「備える」、「備えている」、「含む」、「含んでいる」、「有する」、およびそれらの活用形は、「含むが、限定されない」を意味する。この用語は、用語「からなる」および「から本質的になる」を包含する。
【0160】
「から本質的になる」という語句は、組成物または方法が追加の成分および/またはステップを含んでもよいことを意味するが、追加の成分および/またはステップが特許請求される組成物または方法の基本的かつ新規な特徴を実質的に変更しない場合に限る。
【0161】
本明細書で使用されるように、単数形「a」、「an」および「the」は文脈が明確にそうでないことを指示しない限り、複数の参照を含む。例えば、「化合物」または「少なくとも1つの化合物」という語は、それらの混合物を含む複数の化合物を含むことができる。
【0162】
「例示的」という語は、本明細書では「例、事例、または例示として働く」ことを意味するために使用される。「例示的」として説明される任意の実施形態は必ずしも、他の実施形態よりも好ましい、または有利であると解釈されるべきではなく、かつ/または、他の実施形態からの特徴の組み込みを排除するように解釈されるべきではない。
【0163】
用語「任意選択で」は、本明細書では「いくつかの実施形態で提供され、他の実施形態では提供されない」を意味するために使用される。本発明の任意の特定の実施形態はそのような特徴が矛盾しない限り、複数の「任意選択される」特徴を含むことができる。
【0164】
本出願を通して、本発明の様々な実施形態は、範囲の形式で提示されてもよい。範囲の形式での説明は単に便宜および簡潔さのためであり、本発明の範囲に対する柔軟性のない限定として解釈されるべきではないことを理解されたい。したがって、範囲の説明は、その範囲内の全ての可能な部分範囲ならびに個々の数値を具体的に開示したものとみなされるべきである。例えば、1~6などの範囲の記載は、1~3、1~4、1~5、2~4、2~6、3~6などの具体的に開示した部分範囲、ならびにその範囲内の個々の数、例えば、1、2、3、4、5、および6などを有すると考えるべきである。これは、範囲の幅に関係なく適用される。
【0165】
数値範囲が本明細書で示されるときはいつでも、それは、示された範囲内の任意の引用された数字(分数または整数)を含むことを意味する。第1の指示数および第2の指示数の「間の」「範囲に亘っている/範囲に亘る」との語句と、第1の指示数「から」第2の指示数「まで」の「範囲に亘っている/範囲に亘る」との語句と、は、本明細書では互換的に使用され、第1の指示数および第2の指示数ならびにそれらの間の全ての小数および整数を含むことを意味する。
【0166】
明確にするために、別個の実施形態の文脈で説明される本発明の特定の特徴は、単一の実施形態において組み合わせて提供されてもよいことが理解される。逆に、簡潔にするために、単一の実施形態の文脈で説明されている本発明の様々な特徴は別々に、または任意の適切な部分的な組み合わせで、または説明された本発明の任意の他の実施形態で適切なものとして提供されてもよい。様々な実施形態の文脈で説明される特定の特徴は、実施形態がそれらの要素なしで動作不能でない限り、それらの実施形態の本質的な特徴と見なされるべきではない。
【0167】
本発明をその特定の実施形態に関連して説明してきたが、多くの代替例、修正例、および変形例が当業者には明らかであろうことは明白である。したがって、本発明は、添付の請求項の主旨および広い範囲内にある、代替例、修正例、および変形例のすべてを包含することが意図される。
【0168】
本明細書で言及される全ての刊行物、特許および特許出願は、あたかも個々の刊行物、特許または特許出願が参照により本明細書に組み込まれるように具体的かつ個別に示されたかのように、その全体が本明細書に参照により組み込まれる。さらに、本出願における任意の参照の引用または特定は、そのような参照が本願の先行技術として利用可能であることを自認するものとして解釈されるべきではない。節の見出しが使用される限りにおいて、それらは必ずしも限定するものと解釈されるべきではない。
【0169】
さらに、本出願の全ての優先権に係る書面は、その全体が参照により本明細書に組み込まれる。