(57)【要約】  暗号通貨を記憶し、保護するためのデジタルウォレット装置であって、デジタルウォレット装置は他のデジタル装置から電子的に切り離されており、どのコンピュータインタフェースからも分離された暗号通貨集積回路（ＩＣ）と、暗号通貨ＩＣに搭載され、暗号通貨の公開鍵および暗号通貨の秘密鍵を記憶する非一時的なコンピュータ可読記憶媒体と、ユーザから入力を受信するためのマンマシンインターフェース（ＭＭＩ）と、入力に基づいて暗号通貨動作を生成し、秘密鍵を使用して署名するためのコードを実行するための暗号通貨ＩＣに搭載された少なくとも１つのプロセッサと、ネットワークを介してトランザクションをブロードキャストするための通信装置にトランザクションを送信するための単方向通信ハードウェアと、を備える。
2021514125.tif 000002
【特許請求の範囲】
【請求項１】
暗号通貨を記憶および管理するためのデジタルウォレット装置であって、デジタルウォレット装置は他のデジタル装置から電子的に切り離されており、
どのコンピュータインタフェースからも隔離された暗号通貨管理集積回路（ＩＣ）と、前記暗号通貨管理ＩＣに搭載され、暗号通貨の公開鍵および前記暗号通貨の秘密鍵を記憶する非一時的なコンピュータ可読記憶媒体と、
ユーザから入力を受信するためのマンマシンインタフェース（ＭＭＩ）と、
前記入力に基づいて前記暗号通貨のトランザクションを作成し、前記秘密鍵を使用して前記トランザクションに署名するためのトランザクションコードを実行するための前記暗号通貨管理ＩＣに搭載された少なくとも１つのプロセッサと、
ネットワークを介して前記トランザクションをブロードキャストするための通信装置に前記トランザクションを送信するための単方向通信ハードウェアと、
を備える、デジタルウォレット装置。
【請求項２】
前記単方向通信ハードウェアは、データダイオードを含む、請求項１に記載のデジタルウォレット装置。
【請求項３】
前記単方向通信ハードウェアは、センサによってキャプチャされ、前記通信装置によって復号される、前記トランザクションを符号化した機械可読コードを提示する提示ユニットを含む、請求項１に記載のデジタルウォレット装置。
【請求項４】
前記機械可読コードは、視覚的機械可読コードであり、前記センサは、イメージング装置である、請求項３に記載のデジタルウォレット装置。
【請求項５】
前記提示ユニットがスクリーンである、請求項３に記載のデジタルウォレット装置。
【請求項６】
前記提示ユニットが、前記ユーザによって使用されるユーザインタフェースをさらに提示する、請求項３に記載のデジタルウォレット装置。
【請求項７】
前記通信装置は、モバイル装置であり、前記センサは、前記モバイル装置のカメラであり、前記復号および前記ブロードキャストは、前記モバイル装置にインストールされたソフトウェアプリケーションによって行われる、請求項３に記載のデジタルウォレット装置。
【請求項８】
前記入力が、前記トランザクションのための宛先アカウントアドレスおよび前記トランザクションの量の少なくとも１つを含む、請求項１に記載のデジタルウォレット装置。
【請求項９】
前記トランザクションの宛先アカウントアドレスを符号化した宛先機械可読コードをキャプチャするためのセンサをさらに含み、前記宛先機械可読コードは前記少なくとも１つのプロセッサによって復号され、前記トランザクションの前記作成は前記宛先アカウントアドレスにさらに基づく、請求項１に記載のデジタルウォレット装置。
【請求項１０】
前記トランザクションコードを記憶する取り外し可能な非一時的なコンピュータ可読記憶媒体をさらに含む、請求項１に記載のデジタルウォレット装置。
【請求項１１】
前記非一時的なコンピュータ可読記憶媒体は、前記秘密鍵を記憶する取り外し可能な書き込み専用データストレージカードを含む、請求項１に記載のデジタルウォレット装置。
【請求項１２】
前記秘密鍵を記憶するハードウェアセキュリティモジュール（ＨＳＭ）をさらに備える、請求項１に記載のデジタルウォレット装置。
【請求項１３】
前記暗号通貨管理ＩＣから隔離された入力ＩＣと、
前記入力ＩＣに搭載されたセンサと、
をさらに備える、請求項１に記載のデジタルウォレット装置。
【請求項１４】
前記暗号通貨管理ＩＣに接続され、どの他のコンピュータインタフェースからも隔離された入力コンポーネントと、
前記入力コンポーネントから電子的に切り離された出力コンポーネントと、
をさらに備え、
前記出力コンポーネントは前記入力ＩＣからデータ片を受信し、前記入力コンポーネントの物理的な構成に従った前記ユーザによる所望の入力動作を示す、前記データ片の表現をユーザに提示する、請求項１３に記載のデジタルウォレット装置。
【請求項１５】
前記ＭＭＩがキーボードである、請求項１に記載のデジタルウォレット装置。
【請求項１６】
前記ＭＭＩがタッチスクリーンである、請求項１に記載のデジタルウォレット装置。
【請求項１７】
前記少なくとも１つのプロセッサが、前記秘密鍵および前記公開鍵を作成するためのコードをさらに実行する、請求項１に記載のデジタルウォレット装置。
【請求項１８】
前記秘密鍵は、前記単方向通信ハードウェアを介してさらに送信される、請求項１に記載のデジタルウォレット装置。
【請求項１９】
前記少なくとも１つのプロセッサは前記入力に基づいてメッセージリクエストを作成し、前記秘密鍵を使用して前記メッセージリクエストに署名するためのコードをさらに実行し、前記メッセージリクエストは、前記公開鍵に基づいて暗号通貨を管理することができるスマートコントラクトに送信するために、前記単方向通信ハードウェアによって前記通信装置に送信される、請求項１に記載のデジタルウォレット装置。
【請求項２０】
前記少なくとも１つのプロセッサは暗号通貨の規則または定義を作成し、前記秘密鍵を使用して前記規則または定義に署名するためのコードをさらに実行する、請求項１に記載のデジタルウォレット装置。
【請求項２１】
前記少なくとも１つのプロセッサはセキュアなマルチシグネチャ方式のためのポリシーを作成し、前記秘密鍵を使用して前記ポリシーに署名するためのコードをさらに実行し、前記ポリシーは前記マルチシグネチャ方式の共同署名者に送信するために、前記単方向通信ハードウェアによって前記通信装置に送信される、請求項１に記載のデジタルウォレット装置。
【請求項２２】
前記マルチシグネチャ方式は、規格ブロックチェーンマルチシグネチャおよび暗号鍵分割メカニズムの１つに基づく、請求項２１に記載のデジタルウォレット装置。
【請求項２３】
機械的に符号化されたデータを読み取るための機械的入力コンポーネントをさらに備え、前記トランザクションの前記作成は、前記機械的に符号化されたデータにさらに基づく、請求項１に記載のデジタルウォレット装置。
【請求項２４】
どのコンピュータインタフェースからも隔離された暗号通貨管理集積回路（ＩＣ）に接続されたマンマシンインタフェース（ＭＭＩ）を介してユーザから入力を受信するステップと、
前記暗号通貨管理ＩＣに搭載された少なくとも１つのプロセッサによって、前記入力に基づいて暗号通貨のトランザクションを作成し、前記暗号通貨管理ＩＣに搭載された非一時的なコンピュータ可読記憶媒体に記憶された、前記暗号通貨の秘密鍵を使用して前記トランザクションに署名するステップと、
ネットワークを介して前記トランザクションをブロードキャストするための通信装置に単方向通信ハードウェアによって前記トランザクションを送信するステップと、
を備える、どのデジタル装置からも電子的に切り離されたデジタルウォレット装置によって暗号通貨を転送するための方法。
【請求項２５】
入力集積回路（ＩＣ）に接続された入力コンポーネントであって、前記入力ＩＣはどのコンピュータインタフェースからも隔離された入力コンポーネントと、
前記入力コンポーネントから電子的に切断された出力コンポーネントであって、出力ＩＣからデータ片を受信し、前記入力コンポーネントの物理的な構成に従ったユーザによる所望の入力動作を示す、前記データ片の表現を前記ユーザに提示する出力コンポーネントと、
を備える、電子的に切り離された計算装置間で複合データを転送するための入力システム。
【請求項２６】
前記出力コンポーネントは、前記ユーザの前記入力動作の指示を受信する入力機能も含む、請求項２５に記載の入力システム。
【請求項２７】
前記出力コンポーネントは、前記入力動作の前記指示に従って調整された表現を前記ユーザにさらに提示する、請求項２６に記載の入力システム。
【請求項２８】
前記入力コンポーネントおよび前記出力コンポーネントが１つの物理装置に統合された、請求項２５に記載の入力システム。
【請求項２９】
前記入力コンポーネントはキーボードであり、前記出力コンポーネントは複数の光源を有する表面であり、前記光源の各々は前記キーボードのキーに隣り合い、前記表現は、前記光源の隣り合うキーの前記ユーザによる所望の押下を指示するために、前記複数の光源のうちの１つをオンにすることを含む、請求項２５に記載の入力システム。
【請求項３０】
前記隣り合うキーが押された場合、前記複数の光源の次の１つがオンになり、前記次の光源の次の隣り合うキーの前記ユーザによる所望の押下を指示する、請求項２９に記載の入力システム。
【請求項３１】
前記入力ＩＣは、デジタルウォレット装置に含まれる、請求項２５に記載の入力システム。
【請求項３２】
前記出力ＩＣは、ネットワークに接続された通信装置に含まれることを特徴とする、請求項２５に記載の入力システム。
【請求項３３】
前記出力コンポーネントは、前記入力コンポーネントから物理的に切り離されたリモートインジケータを含む、請求項２５に記載の入力システム。
【請求項３４】
前記入力ＩＣは、前記ユーザの前記入力動作の指示を、単方向通信ハードウェアを介して前記出力ＩＣに送る、請求項２５に記載の入力システム。
【請求項３５】
前記入力ＩＣは第１のデジタルウォレット装置に含まれ、前記出力ＩＣは第２のデジタルウォレット装置に含まれる、請求項２５に記載の入力システム。
【請求項３６】
出力集積回路（ＩＣ）から出力コンポーネントによってデータ片を受信するステップと、前記データ片の表現をユーザに提示するステップと、
を備え、
前記表現は入力コンポーネントの物理構成に従った前記ユーザによる所望の入力動作を示し、前記入力コンポーネントは前記出力コンポーネントから電子的に切り離されており、前記入力はコンポーネント入力ＩＣに接続され、前記入力ＩＣはどのコンピュータインタフェースからも隔離された、電子的に切り離された計算装置間で複合データを転送する方法。
【請求項３７】
どのコンピュータインタフェースからも隔離された集積回路（ＩＣ）に搭載された少なくとも１つのプロセッサを使用して、
暗号通貨アカウントのための秘密鍵および公開鍵を生成するステップと、
前記暗号通貨のブロックチェーンに追加される前記公開鍵のハッシュの送信を命令するステップと、
装置のマンマシンインタフェース（ＭＭＩ）を介して前記ハッシュが前記ブロックチェーンに追加される固有のタイムスロット内の時間のタイムスタンプを受信するステップと、
前記固有のタイムスロットが経過したことを検証するステップと、
前記ブロックチェーンに登録される前記公開鍵の送信を命令するステップと、
を備え、
前記暗号通貨アカウントの公開アドレスは前記タイムスタンプを表しかつ前記公開鍵を表す複数のビットを含む、短い公開アドレスを有する暗号通貨アカウントを作成する方法。
【請求項３８】
前記公開アドレスは、前記タイムスタンプおよび前記公開鍵の少なくとも１つで動作する関数によって作成される複数のビットを含む、請求項３７に記載の方法。
【請求項３９】
前記公開鍵を表現することが、前記公開鍵のハッシュを含む、請求項３７に記載の方法。
【請求項４０】
前記固有のタイムスロットは、１カレンダ日である、請求項３７に記載の方法。
【請求項４１】
前記公開アドレスのそれぞれの所定の数の複数のビットは、所定の単語の一覧からの単語によって表される、請求項３７に記載の方法。
【請求項４２】
複数のビットの前記所定の数が１３である、請求項４１に記載の方法。
【請求項４３】
前記公開アドレスは、前記タイムスタンプを表す１３ビットと、前記公開鍵を表す３８ビットと、前記暗号通貨アカウントを作成するために使用される方法を表す１ビットと、を含む、請求項３７に記載の方法。
【請求項４４】
前記ハッシュの前記送信は、単方向通信ハードウェアを介して前記ハッシュを送信することによって行われる、請求項３７に記載の方法。
【請求項４５】
前記ハッシュの前記送信は、前記装置の提示ユニットによって前記ハッシュを符号化し、装置のセンサによってキャプチャされ、ネットワークを介して前記ハッシュをブロードキャストするための通信装置によって復号される、機械可読コードを提示することによって行われる、請求項３７に記載の方法。
【請求項４６】
前記公開鍵の前記送信は、単方向通信ハードウェアを介して前記公開鍵を送信することによって行われる、請求項３７に記載の方法。
【請求項４７】
前記公開鍵の前記送信は前記装置の提示ユニットによって前記公開鍵を符号化し、装置センサによってキャプチャされ、ネットワークを介して前記公開鍵をブロードキャストするための通信装置によって復号される、機械可読コードを提示することによって行われる、請求項３７に記載の方法。
【請求項４８】
短い公開アドレスを有する暗号通貨アカウントを作成する方法であって、
他のデジタル装置から電子的に切り離された装置から前記装置によって暗号通貨アカウントのために生成された公開鍵のハッシュを受信するステップと、
前記暗号通貨のブロックチェーンに追加される前記ハッシュをブロードキャストするステップと、
前記ハッシュが前記ブロックチェーンに追加される固有のタイムスロット内のカレンダ時間のタイムスタンプを受信するステップと、
前記タイムスタンプをマンマシンインタフェース（ＭＭＩ）を介して前記装置に入力するためにユーザに提示するステップと、
前記固有のタイムスロットが経過した後に前記装置から前記公開鍵を受信するステップと、
前記ブロックチェーンに登録される前記公開鍵を送信するステップと、
を備え、
前記暗号通貨アカウントの公開アドレスは、前記タイムスタンプを表しかつ前記公開鍵を表す複数のビットを含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願］
本出願は平成３０年２月１５日に出願された米国仮特許出願第６２／６３０，９２３号の優先権の利益を主張し、その内容は、その全体が参照により本明細書に組み込まれる。
【０００２】
本実施形態はハードウェア暗号通貨ウォレットに関し、より詳細には電子的に隔離されたハードウェア暗号通貨ウォレットおよび暗号通貨アカウント管理の方法に関するが、これに限定されるものではない。
【０００３】
暗号通貨は、非特許文献１に記されているブロックチェーン技術をベースに、ブロックと呼ばれる、暗号を使ってリンクされセキュリティが確保された、記録が継続的に成長するリストである。ブロックチェーンはトランザクション（取引）の一覧を記憶するデータ構造であり、トランザクションを記録する分散型電子台帳と考えることができる。トランザクションはブロックにバンドルされ、全てのブロック（最初のブロックを除く）は、チェーン内の前のブロックに戻って参照するか、またはリンクされる。コンピュータノードはブロックチェーンを維持し、それぞれの新規のブロックと、対応するブロックに含まれるトランザクションを暗号法的に検証する。
【０００４】
各ブロックは、前のブロックの暗号ハッシュ値を参照または含むので、データに対する小さな修正がブロック全体のハッシュ値に影響を与えるので、そこに含まれるデータ（トランザクション）を修正または改ざんすることは困難になる。したがって、ブロックチェーンのコンテンツは、すべてが見ることができるにもかかわらず、実質的に不変になる。
【０００５】
暗号通貨はブロックチェーンを使用してそのトランザクションのセキュリティを確保し、追加ユニットの作成を制御し、資産の転送を検証する、トランザクション媒体として機能するように設計されたデジタル資産である。
【０００６】
暗号通貨資金は、典型的には一対の鍵を含むデジタルウォレットに記憶される。ウォレットの公開アドレスは公開鍵から作成され、秘密暗号鍵はウォレットパスワードであり、その所持者にウォレットに含まれる暗号通貨を消費することを許可する。これらの暗号通貨ウォレットは、ハードディスク、スマートフォン、またはインターネットアクセス可能なサーバなど、さまざまな方法で保存およびアクセスできる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】サトシ・ナカモト，Ｂｉｔｃｏｉｎ：Ａ  Ｐｅｅｒ−ｔｏ−Ｐｅｅｒ  Ｅｌｅｃｔｒｏｎｉｃ  Ｃａｓｈ  Ｓｙｓｔｅｍ，２００８
【発明の概要】
【課題を解決するための手段】
【０００８】
本発明のいくつかの実施形態の態様によれば、暗号通貨を記憶および管理するためのデジタルウォレット装置が提供され、デジタルウォレット装置は、他のデジタル装置から電子的に切り離されており、どのコンピュータインタフェースからも隔離された暗号通貨管理集積回路（ＩＣ）と、暗号通貨管理ＩＣに搭載され、暗号通貨の公開鍵および暗号通貨の秘密鍵を記憶する非一時的なコンピュータ可読記憶媒体と、ユーザからの入力を受信するためのマンマシンインタフェース（ＭＭＩ）と、入力に基づいて暗号通貨のトランザクションを作成し、秘密鍵を使用してトランザクションに署名するためのトランザクションコードを実行するための暗号通貨管理ＩＣに搭載された少なくとも１つのプロセッサと、ネットワークを介してトランザクションをブロードキャストするための通信装置にトランザクションを送信するための単方向通信ハードウェアと、を備える。
【０００９】
任意選択で、単方向通信ハードウェアは、データダイオードを含む。
【００１０】
任意選択で、単方向通信ハードウェアは、センサによってキャプチャされ、通信装置によって復号されるトランザクションを符号化する機械可読コードを提示する提示ユニットを含む。
【００１１】
任意選択で、機械可読コードは視覚的機械可読コードであり、センサはイメージング装置である。
【００１２】
任意選択で、提示ユニットはスクリーンである。
【００１３】
任意選択で、提示ユニットは、ユーザによって使用されるユーザインタフェースをさらに提示する。
【００１４】
任意選択で、通信装置はモバイル装置であり、センサはモバイル装置のカメラであり、復号およびブロードキャストは、モバイル装置にインストールされたソフトウェアプリケーションによって行われる。
【００１５】
任意選択で、入力は、トランザクションの宛先アカウントアドレスおよびトランザクション量のうちの少なくとも１つを含む。
【００１６】
任意選択で、本デジタルウォレット装置はトランザクションの宛先アカウントアドレスを符号化する宛先機械可読コードをキャプチャするセンサをさらに含み、宛先機械可読コードは少なくとも１つのプロセッサによって復号され、トランザクションの作成はさらに宛先アカウントアドレスに基づく。
【００１７】
任意選択で、デジタルウォレット装置は、トランザクションコードを記憶する取り外し可能な非一時的なコンピュータ可読記憶媒体をさらに備える。
【００１８】
任意選択で、非一時的なコンピュータ可読記憶媒体は、秘密鍵を記憶する取り外し可能な書き込み専用データ記憶カードを含む。
【００１９】
任意選択で、デジタルウォレット装置は、暗号通貨管理ＩＣから隔離された入力ＩＣと、入力ＩＣ上に実施されたセンサとをさらに備える。
【００２０】
さらに任意選択で、デジタルウォレット装置は、暗号通貨管理ＩＣに接続され、どの他のコンピュータインタフェースからも隔離された入力コンポーネントと、入力コンポーネントから電子的に切り離された出力コンポーネントとをさらに備え、出力コンポーネントは入力ＩＣからデータ片を受信し、入力コンポーネントの物理構成に従ってユーザによる所望の入力動作を示すデータ片の表現をユーザに提示する。
【００２１】
任意選択で、マンマシンインタフェース（ＭＭＩ）はキーボードである。
【００２２】
任意選択で、ＭＭＩはタッチスクリーンである。
【００２３】
任意選択で、少なくとも１つのプロセッサが、さらにコードを実行して秘密鍵と公開鍵を作成する。
【００２４】
任意選択で、秘密鍵は、単方向通信ハードウェアを介してさらに送られる。
【００２５】
任意選択で、少なくとも１つのプロセッサはさらに、入力に基づいてメッセージリクエストを作成し、秘密鍵を使用してメッセージリクエストに署名するためのコードを実行しており、メッセージリクエストは単方向通信ハードウェアによって、公開鍵に基づいて暗号通貨を管理することができるスマートコントラクトに送信するために、通信装置に送信される。
【００２６】
任意選択で、少なくとも１つのプロセッサがさらにコードを実行して、暗号通貨の規則または定義を作成し、秘密鍵を使用して規則または定義に署名する。
【００２７】
任意選択で、少なくとも１つのプロセッサはさらに、セキュアなマルチシグネチャスキームのためのポリシーを作成し、秘密鍵を使用してポリシーに署名するためのコードを実行し、ポリシーはマルチシグネチャスキームの共同署名者に送信するために、単方向通信ハードウェアによって通信装置に送信される。
【００２８】
任意選択で、マルチシグネチャ方式は、規格ブロックチェーンマルチシグネチャおよび暗号鍵分割メカニズムのうちの１つに基づく。
【００２９】
任意選択で、デジタルウォレット装置は機械的に符号化されたデータを読み取るための機械的入力コンポーネントをさらに含み、トランザクションの作成は、機械的に符号化されたデータにさらに基づく。
【００３０】
本発明のいくつかの実施形態の態様によれば、他のデジタル装置から電子的に切り離されたデジタルウォレット装置によって暗号通貨を転送するための方法であって、どのコンピュータインタフェースからも隔離された暗号通貨管理集積回路（ＩＣ）に接続されたマンマシンインタフェース（ＭＭＩ）を介してユーザから入力を受信するステップと、暗号通貨管理ＩＣに搭載された少なくとも１つのプロセッサによって、入力に基づいて暗号通貨のトランザクションを作成し、暗号通貨管理ＩＣに搭載された非一時的なコンピュータ可読記憶媒体に記憶された、暗号通貨の秘密鍵を使用してトランザクションに署名するステップと、ネットワークを介してトランザクションをブロードキャストするために、単方向通信ハードウェアによってトランザクションを通信装置に送信するステップとを含む、方法が提供される。
【００３１】
どのコンピュータインタフェースからも隔離された入力集積回路（ＩＣ）に接続された入力コンポーネントと、入力コンポーネントから電子的に切り離された出力コンポーネントとを備え、出力コンポーネントは、出力ＩＣからデータ片を受信し、入力コンポーネントの物理的な構成に従ったユーザによる所望の入力動作を示すデータ片の表現をユーザに提示する、電子的に切り離された計算装置間で複合データ（ｃｏｍｐｌｅｘ  ｄａｔａ）を転送するための入力システムが提供される。
【００３２】
任意選択で、出力コンポーネントは、ユーザの入力動作の指示を受け取る入力機能も含む。
【００３３】
さらに任意選択で、出力コンポーネントは、入力動作の指示に従って調整された表現をユーザにさらに提示する。
【００３４】
任意選択で、入出力コンポーネントは、１つの物理装置に統合される。
【００３５】
任意選択で、入力コンポーネントはキーボードであり、出力コンポーネントは複数の光源を有する面であり、光源の各々はキーボードのキーに隣接し、表現は、複数の光源のうちの１つをオンにして、光源の隣り合うキー上のユーザによる所望の押下を指示することを含む。
【００３６】
より任意選択で、隣り合うキーが押されると、前記複数の光源のうちの次の１つがオンにされて、次の光源の次の隣り合うキー上のユーザによる所望の押下を指示する。
【００３７】
任意選択で、入力ＩＣは、デジタルウォレット装置に含まれる。
【００３８】
任意選択で、出力ＩＣはネットワークに接続された通信装置に含まれる。
【００３９】
任意選択で、出力コンポーネントは、入力コンポーネントから物理的に切り離されたリモートインジケータを含む。
【００４０】
任意選択で、入力ＩＣは、単方向通信ハードウェアを介して出力ＩＣにユーザの入力動作の指示を送る。
【００４１】
任意に、入力ＩＣは第１のデジタルウォレット装置に含まれ、出力ＩＣは第２のデジタルウォレット装置に含まれる。
【００４２】
本発明のいくつかの実施形態の態様によれば、出力集積回路（ＩＣ）から出力コンポーネントによってデータ片を受信するステップと、データ片の表現をユーザに提示するステップとを含み、表現は入力コンポーネントの物理構成に従ったユーザによる所望の入力動作を示し、入力コンポーネントは出力コンポーネントから電子的に切り離されており、入力はコンポーネント入力ＩＣに接続され、入力ＩＣは、どのコンピュータインタフェースからも隔離された、電子的に切り離されたコンピュータ装置間で複合データを転送する方法が提供される。
【００４３】
本発明のいくつかの実施形態の態様によれば、どのコンピュータインタフェースからも隔離された集積回路（ＩＣ）上に搭載された少なくとも１つのプロセッサを使用して、暗号通貨アカウントのための秘密鍵および公開鍵を生成するステップと、暗号通貨のブロックチェーンに追加される公開鍵のハッシュの送信を命令するステップと、ハッシュが暗号通貨アカウントに追加される固有のタイムスロット内のタイムスタンプを装置のマンマシンインタフェース（ＭＭＩ）を介して受信するステップと、固有のタイムスロットが経過したことを検証するステップと、ブロックチェーンに登録される公開鍵の送信を命令するステップと、を備え、暗号通貨アカウントの公開アドレスは、タイムスタンプを表しかつ公開鍵を表す複数のビットを含む、短い公開アドレスを有する暗号通貨アカウントを作成するための方法が提供される。
【００４４】
任意選択で、公開アドレスは、タイムスタンプおよび公開鍵のうちの少なくとも１つで動作する関数によって作成される複数のビットを含む。
【００４５】
任意選択で、公開鍵の表現には公開鍵のハッシュが含まれる。
【００４６】
任意選択で、固有のタイムスロットは、１カレンダ日である。
【００４７】
任意選択で、公開アドレスのそれぞれの所定の個数のビットは、単語の所定の一覧からの単語によって表される。
【００４８】
より任意選択で、複数のビットの所定の個数は１３である。
【００４９】
任意選択で、公開アドレスは、タイムスタンプを表す１３ビット、公開鍵を表す３８ビット、および暗号通貨アカウントを作成するために使用される方法を表す１ビットを含む。
【００５０】
任意選択で、ハッシュの転送は、単方向通信ハードウェアを介してハッシュを送信することによって行われる。
【００５１】
任意選択で、ハッシュの転送は、装置センサによってキャプチャされ、ネットワークを介してハッシュをブロードキャストするために通信装置によって復号されるハッシュを、装置の提示ユニットによって符号化する機械可読コードを提示することによって行われる。
【００５２】
任意選択で、公開鍵の転送は、単方向通信ハードウェアを介して公開鍵を送信することによって行われる。
【００５３】
任意選択で、公開鍵の転送は、装置センサによってキャプチャされ、ネットワークを介して公開鍵をブロードキャストするために通信装置によって復号される公開鍵を、装置の提示ユニットによって符号化する機械可読コードを提示することによって行われる。
【００５４】
本発明のいくつかの実施形態の態様によれば、装置によって暗号通貨アカウントのために生成された公開鍵のハッシュを他のデジタル装置から電子的に切り離された装置から受信するステップと、暗号通貨のブロックチェーンに追加されるハッシュをブロードキャストするステップと、ハッシュがブロックチェーンに追加される固有のタイムスロット内のカレンダ時間のタイムスタンプを受信するステップと、マンマシンインタフェース（ＭＭＩ）を介してタイムスタンプを装置に入力するためのユーザに提示するステップと、固有のタイムスロットが通過した後に装置から公開鍵を受信するステップと、ブロックチェーンに登録される公開鍵を送信するステップとを備え、暗号通貨アカウントの公開アドレスはタイムスタンプを表しかつ公開鍵を表す複数のビットを含む、短い公開アドレスを有する暗号通貨アカウントを作成する方法が提供される。
【００５５】
別段の定義がない限り、本明細書で使用される全ての技術用語および／または科学用語は、本発明が関係する技術分野の当業者によって一般に理解されるものと同じ意味を有する。本明細書に記載されるものと類似または同等の方法および材料を、本発明の実施形態の実施または試験において使用することができるが、例示的な方法および／または材料を以下に記載する。矛盾する場合には、定義を含む特許明細書が優先する。さらに、材料、方法、および実施例は、例示にすぎず、必ずしも限定することを意図するものではない。
【００５６】
本発明の実施形態の方法および／またはシステムの実施は選択されたタスクを手動で、自動的に、またはそれらの組合せで実行または完了することを含むことができる。さらに、本発明の方法および／またはシステムの実施形態の実際の道具および機器によれば、いくつかの選択されたタスクは、ハードウェア、ソフトウェア、またはファームウェア、またはオペレーティングシステムを使用するそれらの組合せによって実施することができる。
【００５７】
例えば、本発明の実施形態による選択されたタスクを実行するためのハードウェアは、チップまたは回路として実施することができる。ソフトウェアとして、本発明の実施形態による選択されたタスクは、任意の適切なオペレーティングシステムを使用してコンピュータによって実行される複数のソフトウェア命令として実施することができる。本発明の例示的な実施形態では、本明細書で説明する方法および／またはシステムの例示的な実施形態による１つまたは複数のタスクが複数の命令を実行するためのコンピューティングプラットフォームなどのデータプロセッサによって実行される。任意選択で、データプロセッサは命令および／またはデータを記憶するための揮発性メモリ、および／または命令および／またはデータを記憶するための、磁気ハードディスクおよび／または取り外し可能メディアなどの不揮発性記憶装置を含む。任意選択で、ネットワーク接続も同様に提供される。ディスプレイおよび／またはキーボードやマウスなどのユーザ入力装置も、任意選択で提供される。
【００５８】
本発明のいくつかの実施形態は、添付の図面を参照して、例示としてのみ、本明細書に記載される。ここで図面を詳細に参照すると、示された詳細は例示のためであり、実施形態の例示的な議論の目的のためであることが強調される。この点に関して、図面を参照した説明は、本発明の実施形態がどのように実施され得るかを当業者に明らかにする。
【図面の簡単な説明】
【００５９】
【図１】図１は、本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された、暗号通貨を保存および管理するためのデジタルウォレット装置の概略図である。
【図２】図２は、本発明のいくつかの実施形態による、デジタルウォレット装置により暗号通貨を転送するための方法を概略的に示したフローチャートである。
【図３】図３は、本発明のいくつかの実施形態による、デジタルウォレット装置により暗号通貨を転送するための方法を概略的に示すシーケンス図である。
【図４】図４は、本発明のいくつかの実施形態による、デジタルウォレット装置がスマートコントラクトを介して暗号通貨を転送するための方法を概略的に示すシーケンス図である。
【図５】図５は、本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された、暗号通貨を保存および管理するためのイメージング装置を有するデジタルウォレット装置の概略図である。
【図６】図６は、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置によって暗号通貨を転送するための方法を概略的に表すフローチャートである。
【図７】図７は、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置により暗号通貨を転送するための方法を概略的に示すシーケンス図である。
【図８】図８は、本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された、暗号通貨を記憶し管理するための２つのデジタルウォレット装置の概略図である。
【図９】図９は、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置のためのイメージング装置なしにデジタルウォレット装置によって暗号通貨アカウントを生成し、トランザクションを遂行する過程を概略的に示すシーケンス図である。
【図１０】図１０は、本発明のいくつかの実施形態による、電子的に切り離された計算装置間で複合データを転送するための入力システムの概略図である。
【図１１】図１１は、本発明のいくつかの実施形態による、電子的に切り離された計算装置間で複合データを転送するための入力システムを使用するための方法を概略的に表すシーケンス図である。
【図１２】図１２は、本発明のいくつかの実施形態による、暗号通貨管理集積回路（ＩＣ）および電子的に切り離された入力ＩＣを有するデジタルウォレット装置の概略図である。
【図１３】図１３は、本発明のいくつかの実施形態による、暗号通貨管理ＩＣおよび入力ＩＣを有する通信装置を有するデジタルウォレット装置の概略図である。
【図１４】図１４は、本発明のいくつかの実施形態による、電子的に切り離されたデジタルウォレット装置間で複合データを転送するための入力装置を使用するための手順を概略的に示すシーケンス図である。
【図１５】図１５は、本発明のいくつかの実施形態による、電子的に切り離された装置によってショート公開アカウントアドレスを提供する暗号通貨プロトコルを使用して暗号通貨アカウントを作成するための方法を概略的に表すシーケンス図である。
【図１６】図１６は、本発明のいくつかの実施形態による、オンライン装置によってショート公開アカウントアドレスを提供する暗号通貨プロトコルを使用して暗号通貨アカウントを作成するための方法を概略的に表すシーケンス図である。
【発明を実施するための形態】
【００６０】
本発明は、ハードウェア暗号通貨ウォレットに関し、より詳細には電子的に隔離されたハードウェア暗号通貨ウォレットおよび暗号通貨アカウント管理の方法に関するが、これに限定されるものではない。
【００６１】
本発明のいくつかの実施形態によると、暗号通貨ウォレット装置は、他の電子装置から完全に隔離され、マンマシンインタフェース（ＭＭＩ）を介したユーザのみによる入力を受信する。これにより、ウォレット装置に遠隔でハッキングする方法がなくなるので、ウォレット装置に格納された秘密鍵に最大限のセキュリティが提供される。
【００６２】
電子ウォレットの１つの脆弱性は、ウォレットが存在するマシンへの物理的なアクセスがなくても、悪意のあるエンティティが悪意のあるコードを使用してウォレットへのアクセスを獲得し、全ての資金を第三者のアカウントに転送し、資金を効率的に盗む可能性があることである。ウォレットは暗号化される可能性があるため、秘密鍵またはパスワードが存在する場合にのみアクセスして使用することができるが、これらの暗号化はリモートハッキングに対しても潜在的に脆弱である。既存のハードウェア暗号通貨ウォレットはほとんどの場合、インターネットから切断することができるが、このような接続（直接的であろうと間接的であろうと）はトランザクションがブロードキャストされるために依然として必要とされる。
【００６３】
ウォレット装置に記憶されたアカウントから暗号通貨を転送するために、ユーザは、キーボードのようなウォレット装置のＭＭＩを介して、転送されるべき暗号通貨の量と、暗号通貨が転送されるべきアカウントのアドレスとを手動で入力する。ウォレット装置内のプロセッサはトランザクションを作成し、ウォレット装置の記憶装置に記憶されているアカウントの秘密鍵を使用してそれに署名する。トランザクションをブロードキャストするために、トランザクションは、単方向通信ハードウェアを介して、トランザクションをブロックチェーンシステムにブロードキャストする通信装置に送信され、ブロックチェーンに追加される。単方向通信ハードウェアは電子的な隔離を提供し、一方に送信専用コンポーネントを持ち、他方に受信専用コンポーネントを持つことによってデータを転送している。
【００６４】
例えば、単方向通信ハードウェアは、ウォレット装置（送信専用コンポーネント）の提示ユニットと、通信装置（受信専用コンポーネント）のセンサとを含むことができる。例えば、トランザクションを符号化した機械可読コード（例えば、クイックレスポンス（ＱＲ）コード（登録商標）または線形バーコードなどの視覚コード）が、ウォレット装置の提示ユニット（スクリーンなど）上に提示される。このコードは、センサ（例えば、カメラなどのイメージング装置）によって取り込まれ、復号され、通信装置によってブロックチェーンシステムにブロードキャストされる。これは、例えば、携帯電話上のアプリケーションによって行われてもよい。
【００６５】
あるいは、単方向通信ハードウェアは、データダイオードのような単方向ネットワークコンポーネントであってもよく、これは隔離された送信機（ウォレット装置側）および受信機（通信装置側）を有し、単方向にのみ連続的なデータ移動を可能にしたネットワークハードウェアである。
【００６６】
任意に、ウォレット装置は、センサ、例えば、カメラ等のイメージング装置も含む。これにより、通常、誤りなく人間が入力することが困難な長いコードである宛先アカウントアドレスや、トランザクションに求められる他のデータの入力が容易になる。これは、例えば、携帯電話機のスクリーン上に提示される宛先アカウントアドレスを符号化した機械可読コードをスキャンすることによって行われてもよい。センサを有するこのウォレット装置は、機械可読コードを生成する装置がハッキングされ、機械可読コード内に別のアカウントアドレスまたは悪意のあるコードさえも符号化される可能性があるため、センサを有さないウォレット装置よりもセキュアではない。
【００６７】
任意選択で、センサ（セキュア）を有さないものとセンサ（よりセキュアでない）を有するものとの２つのウォレット装置を組み合わせて使用して、様々なレベルのセキュリティを提供することができる。センサを有するウォレット装置は都合のよい頻繁な使用のために、より少量の暗号通貨を有するアカウントを保存するために使用されてもよく、一方、より多量の暗号通貨は、センサを有さず最大限のセキュリティを提供するウォレット装置に保存されたアカウントに保存されてもよい。この構成では、セキュアでないウォレット装置のための新規の暗号通貨アカウントがセキュアなウォレット装置によって作成され、セキュアでないウォレットのアカウントに転送されてもよく、したがって、セキュアなウォレット装置はこの新規の暗号通貨アカウントのアドレスを記憶し、さらなる宛先アカウントアドレス入力を必要とせずに、このアカウントに暗号通貨を容易に転送する。任意選択で、非常に少量の暗号通貨を通信装置上のセキュアでないアカウントに記憶することができる。
【００６８】
本発明のいくつかの実施形態によれば、電子的に切り離された計算装置間で複合データを転送するための入力システムが提供される。これにより、データを伝送するための直接的な電子接続が不可能な場合、例えば、暗号通貨ウォレット装置において、ユーザは、複雑なおよび／または長いデータ片を計算装置に入力することができる。このシステムは（任意選択で、他のデジタル装置から電子的に切り離された計算装置に含まれる）どのコンピュータインタフェースからも隔離された集積回路（ＩＣ）に接続された入力コンポーネントと、（任意選択で、入力機能も含む）入力コンポーネントから電子的に切り離された出力コンポーネントであって、よりセキュアでない可能性がある（任意選択で、計算装置に含まれる）別のＩＣからデータを受信する出力コンポーネント、を含む。出力コンポーネントは、入力コンポーネントの物理的な構成に従って、どのようにデータ片を入力コンポーネントに入力するかをユーザに示すデータ片の表現をユーザに提示する。例えば、システムは、キーボード入力コンポーネントと、キーボードに取り付けられ、それぞれがキーボードのキーに隣り合う光源を含む表面出力コンポーネントとを含んでもよい。光源がオンにされ、キーに隣り合うものが押されるべきであることをユーザに示す。ユーザがキーを押すと、表面も押され、次のキーのための次の光源、または、ユーザの間違ったキーの押下の指示を提示することができる。例えば、システムは、キーボード入力コンポーネントと、キーボード上のキーを指すレーザのようなリモートインジケータとを含んでもよい。
【００６９】
本実施形態によれば、他の電子装置から完全に隔離され、互いに完全に隔離された２つのＩＣを含む暗号通貨ウォレット装置が提供される。ウォレット装置は、クレジットカード形状の装置のような一体化された装置であってもよい。暗号通貨管理ＩＣは、記憶装置、プロセッサを搭載し、提示ユニットに接続され、入力ＩＣは、イメージング装置のようなセンサを搭載する。任意選択で、ウォレット装置は上述のような入力装置を含み、したがって、入力は出力コンポーネントに接続され、暗号通貨管理ＩＣは入力コンポーネントに接続される。センサによって取得されたデータの表現はユーザに提示され、したがって、ユーザは入力コンポーネントを介してプロセッサにそれを入力することができる。
【００７０】
本発明のいくつかの実施形態によれば、アカウントアドレスが短く、記憶可能であり、かつ／または入力が容易である暗号通貨および暗号通貨プロトコルが提供される。現存する暗号通貨プロトコル、例えばイーサリアムではアカウントアドレスがアカウントに関連する公開鍵のハッシュ（ｓｈａ３−２５６）の最後の１６０ビットであり、これは、例えば他の電子装置から完全に隔離されたウォレット装置のＭＭＩにおいて、人間がエラーなしにタイプすることが困難である。使用するビットを減らすために、ハッシュの同じ最後の複数のビットを持つ２つのアカウントが作成されるのを防ぎながら、公開鍵をアナウンスすることによって新規のアカウントにブロックチェーンへの登録を要求することが可能である。しかしながら、ブロックチェーンシステムに公開鍵をアナウンスするために侵害された通信装置上で中継するデジタルウォレット装置においてそのようなプロトコルを使用するとき、侵害された通信装置はハッシュの同じ最後の複数のビットを有する第２のアカウントを生成し、代わりにブロックチェーンシステムに第２のアカウントの公開鍵をアナウンスすることができる。
【００７１】
ウォレット装置が、まず、新規に作成されたアカウントの（アドレスハッシュとは異なる）公開鍵のハッシュを、侵害される可能性のある通信装置を介してブロックチェーンシステムにブロードキャストする、新規の暗号通貨プロトコルが提案されている。ハッシュは、公開鍵に暗号化ハッシュ関数を実施することによって作成される。ハッシュは、ユーザによってウォレット装置に入力される固有のタイムスロット内の特定の時間にブロックチェーンシステムに追加される。その固有のタイムスロットが通過した後にのみ、ウォレット装置は、ハッシュされていない公開鍵をブロックチェーンシステムにアナウンスする。そして、ブロックチェーンシステムに追加されたハッシュが本当に正しい公開鍵のものであることが検証されうる。アカウントアドレスには、公開鍵の固有のタイムスロットとハッシュされた複数のビットとを表す複数のビットが含まれる。任意選択で、公開アカウントアドレスの複数のビットのそれぞれの値は、リストからの単語によって表されるので、ユーザにとって、ＭＭＩを介して単語をタイプすることおよび／または公開アカウントアドレスを記憶することがより容易である。例えば、それぞれの１３ビットは単語で表され、５２ビットの公開アカウントアドレスは４単語のみで表され、ＭＭＩに入力することが容易である。
【００７２】
本発明の少なくとも１つの実施形態を詳細に説明する前に、本発明は、その応用において、以下の記載に記載され、かつ／または図面および／または実施例に示されるコンポーネントおよび／または方法の構成および配置の詳細に必ずしも限定されないことを理解されたい。本発明は他の実施形態が可能であり、または様々な方法で実施または実行されることが可能である。
【００７３】
本発明は、システム、方法、および／またはコンピュータプログラム製品とすることができる。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体を含みうる。
【００７４】
コンピュータ可読記憶媒体は、命令実行装置によって使用される命令を保持し記憶することができる有形装置であってもよい。コンピュータ可読記憶媒体は例えば、電子記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置、または前述の任意の適切な組合せとすることができるが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストには、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、消去可能プログラマブル読出し専用メモリ（ＥＰＲＯＭまたはフラッシュメモリ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ポータブルコンパクトディスク読出し専用メモリ（ＣＤ−ＲＯＭ）、デジタルバーサタイルディスク（ＤＶＤ）、メモリスティック、フロッピーディスク、コンピュータ可読命令を有するパンチカードまたは溝内の隆起構造といった機械的に符号化された装置、および上記の任意の適切な組み合わせが含まれる。本明細書で使用されるコンピュータ可読記憶媒体は、電波または他の自由に伝播する電磁波、導波管または他の伝送媒体を通って伝播する電磁波（例えば、光ファイバケーブルを通過する光パルス）、またはワイヤを通って伝送される電気信号など、それ自体が一時的な信号であると解釈されるべきではない。
【００７５】
本明細書に記載するコンピュータ可読プログラム命令は、ネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワークおよび／または無線ネットワークを介して、コンピュータ可読記憶媒体からそれぞれのコンピューティング／処理装置に、或いは、外部のコンピュータまたは外部の記憶装置に、ダウンロードすることができる。ネットワークは、銅線伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および／またはエッジサーバを含むことができる。各演算／処理装置内のネットワークアダプタカードまたはネットワークインタフェースはネットワークからコンピュータ可読プログラム命令を受信し、それぞれの演算／処理装置内のコンピュータ可読記憶媒体に格納するために、コンピュータ可読プログラム命令を転送する。
【００７６】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ（ＩＳＡ）命令、機械語、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはＳｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または類似のプログラミング言語などの従来の手続き型プログラミング言語を含む、１つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたはオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、スタンドアロンソフトウェアパッケージとして、全体的にユーザのコンピュータ上で、或いは、部分的にユーザのコンピュータ上で、或いは、部分的にユーザのコンピュータ上でかつ部分的にリモートコンピュータ上で、或いは、全体的にリモートコンピュータまたはサーバ上で実行することができる。後者のシナリオでは、遠隔コンピュータがローカルエリアネットワーク（ＬＡＮ）またはワイドエリアネットワーク（ＷＡＮ）を含む任意の種類のネットワークを介してユーザのコンピュータに接続されてもよく、または（例えば、インターネットサービスプロバイダを使用してインターネットを介して）外部コンピュータに接続されてもよい。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、またはプログラマブル論理アレイ（ＰＬＡ）を含む電子回路は、本発明の態様を実行するために、電子回路をパーソナライズするためにコンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行することができる。
【００７７】
本明細書では、本発明の実施形態による方法、機器（システム）、およびコンピュータプログラムプロダクトのフローチャートおよび／または構成図を参照して、本発明の態様を説明する。フローチャートおよび／またはブロック図の各ブロック、ならびに、フローチャートおよび／またはブロック図のブロックの組合せは、コンピュータ可読プログラム命令によって実施できることを理解されたい。
【００７８】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供されて、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令がフローチャートおよび／またはブロック図の１つまたは複数のブロックで指定された機能／動作を実施するための手段を作成するように、機械を生成することができる。これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラマブルデータ処理装置、および／または他の装置が特定の方法で機能するように指示することができるコンピュータ可読記憶媒体に格納されてもよく、その結果、その中に格納された命令を有するコンピュータ可読記憶媒体は、フローチャートおよび／またはブロック図の１つまたは複数のブロックで指定された機能／動作の態様を実施する命令を含む製品を備える。
【００７９】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、または他の装置上にロードされて、コンピュータ、他のプログラマブル装置、または他の装置上で実行される命令がフローチャートおよび／またはブロック図の１つまたは複数のブロックで指定された機能／動作を実施するように、一連の動作ステップをコンピュータ、他のプログラマブル装置、または他の装置上で実行させて、コンピュータ実施プロセスを生成することができる。
【００８０】
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータプログラム製品の可能な実施アーキテクチャ、機能、および動作を示す。この点に関して、フローチャートまたはブロック図の各ブロックは、指定された論理機能を実施するための１つまたは複数の実行可能命令を備える、モジュール、セグメント、または命令の一部を表すことができる。いくつかの代替な実施では、ブロックに記載されている機能が図に記載されている順序外で発生する場合がある。例えば、連続して示される２つのブロックは、実際には実質的に同時に実行されてもよく、または含まれる機能に応じて、時には逆の順序で実行されてもよい。また、ブロック図および／またはフローチャート図の各ブロック、ならびにブロック図および／またはフローチャート図のブロックの組み合わせは、指定された機能または動作を実行するか、または特殊目的ハードウェアおよびコンピュータ命令の組み合わせを実行する特殊目的ハードウェアベースのシステムによって実施され得ることにも留意されたい。
【００８１】
次に、図面を参照すると、図１は本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された暗号通貨を記憶および管理するデジタルウォレット装置の概略図である。
【００８２】
デジタルウォレット装置１００は、いかなるコンピュータインタフェースからも隔離された暗号通貨管理ＩＣ  １０１を含む。コンピュータインタフェースは、データを転送する物理的または無線のいずれかの別のコンピュータ装置への任意の直接デジタル接続を含むことができる。これは、暗号通貨管理ＩＣ  １０１が、デジタルウォレット装置１００の外部の任意のＩＣに接続される任意の電子コネクタ、ワイヤレスインタフェース、ソケット、および／または電子接続を含まないことを意味する。デジタルウォレット装置１００は、コンピュータ、デジタルコンポーネントおよび／またはＩＣ、ＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）装置、および／または任意の他の電子装置など、他の電子装置との双方向デジタル通信を有さない。デジタルウォレット装置１００は非対話型であり、データを提示または送信するだけで、別の電子装置から直接的にデータを受信することはできない。
【００８３】
暗号通貨管理ＩＣ  １０１は、暗号通貨の秘密鍵と公開鍵の１つ以上の対を記憶する、非一時的なコンピュータ可読記憶媒体（またはメモリ）１０２を搭載する。メモリ１０２は例えば、ハードドライブ、フラッシュアレイおよび／または同様のもののような、１つ以上の非一時的な永続的な記憶装置を含んでもよい。
【００８４】
暗号通貨は、ブロックチェーンに基づく任意の種類の互換性のある暗号通貨、例えば、イーサ、リップル、ネオ、および／または任意の他の暗号通貨であってもよい。暗号通貨はまた、上記および下記されるように、デジタルウォレット装置１００を用いて最良の性能のために特別に設計されうる。
【００８５】
ブロックチェーンはブロックチェーンシステムによって管理され、これは単一のブロックチェーンを維持する異なるエンティティによって操作される多くの異なる個々のコンピュータシステムを含む公開ブロックチェーンコンピュータシステムであってもよい。代替的に、ブロックチェーンシステムはすべてが単一のエンティティ（例えば、プライベートまたはクローズドなブロックチェーンコンピュータシステム）によって動作される１つまたは複数の個々のコンピュータシステムを含むことができる。ブロックチェーンシステムはそれぞれが「マイニング」し、それによってブロックチェーンに提出されたトランザクションを検証するように動作する多数の異なったコンピュータノードを含む。トランザクションがブロックチェーンシステムにブロードキャストされると、少なくとも１つのノードがトランザクションを受信し、ブロックチェーンシステム内の他のノードにトランザクションを伝搬することができる。暗号通貨は、転送するトランザクションをブロックチェーンに登録することによって、１つの暗号通貨アカウントから別のものに転送されてもよい。
【００８６】
また、暗号通貨管理ＩＣ  １０１には、少なくとも１つのプロセッサ１０３が搭載されている。プロセッサ１０３はクラスタおよび／または１つまたは複数のマルチコアプロセッサといった、並列処理のために構成された１つまたは複数のプロセッサ、ニューラルネットワークハードウェア、および／または任意の他の処理ハードウェアを含むことができる。
【００８７】
デジタルウォレット装置１００はまた、ユーザから入力を受信するためのＭＭＩ  １０４を含む。ＭＭＩ  １０４は例えば、物理的ボタンを有する物理的キーボードであってもよいキーボード、またはタッチスクリーン上に提示される仮想キーボードであってもよいキーボード、コンピュータマウス等のポインティング装置、ジョイスティックコントローラ、および／または人間による直接入力のための他の任意の装置を含んでもよい。
【００８８】
デジタルウォレット装置１００はまた、単方向通信ハードウェアを含む。単方向通信ハードウェアは例えば、提示ユニット１０５であってもよい。提示ユニット１０５は機械可読コードを提示し、任意選択でユーザインタフェースも提示する。提示ユニット１０５は、スクリーン、プロッタ、プリンタ、スピーカのような音声出力装置、三次元グラフィック装置、ラジオのような電磁波を送信するためのアンテナ、並びに／或いは、人間および／または機械に提示するための他の出力装置であってもよい。
【００８９】
デジタルウォレット装置１００はまた、電源、例えば、バッテリおよび／または外部電源への接続を含む。
【００９０】
任意選択で、デジタルウォレット装置１００は、メモリカード、フラッシュカード、または取り外し可能なハードディスクなどの取り外し可能な非一時的なコンピュータ可読記憶媒体（メモリ）１０６も含む。取り外し可能メモリ１０６はトランザクションコードおよび／または他の任意のソフトウェアモジュール、例えば、ＯＳ、アプリケーションコード、ツール、エージェント、サービス、スクリプトおよび／またはこれらに類するものを記憶することができ、それぞれは、プロセッサ１０３によって実行されてもよい複数のプログラム命令を含む。これは、例えば、新規の動作を追加するため、および／または新規のタイプの暗号通貨のサポートを追加するために、取り外し可能メモリ１０６を取り外しおよび交換することによって、これらのソフトウェアモジュールのいずれかをアップデート、アップグレード、および／またはその他交換するための選択肢を提供する。あるいは、これらのソフトウェアモジュールの一部または全部がメモリ１０２に記憶される。
【００９１】
任意選択で、デジタルウォレット装置１００および／またはメモリ１０２はまた、スマートカード、チップカード、または集積回路カード（ＩＣＣ）などの取り外し可能な書き込み専用データストレージカード、および／または埋め込み集積回路を有する任意のポケットサイズのカードを含む。任意選択で、デジタルウォレット装置１００および／またはメモリ１０２はまた、ハードウェアセキュリティモジュール（ＨＳＭ）を含む。書き込み専用カードまたはＨＳＭを使用して、アカウントの公開鍵および秘密鍵を作成し、保存することができる。書き込み専用カードまたはＨＳＭは、秘密鍵を使用して署名する命令、例えばトランザクションに署名する命令を実行することができる統合型プロセッサを含む。秘密鍵は書き込み専用カードからコピーできないため、秘密鍵の物理的な盗難からのセキュリティが強化される。また、これにより、ユーザはデジタルウォレット装置１００内のアカウント情報を容易に挿入または交換することができ、任意選択で、物理的な盗難を防止するために、書き込み専用カードを別個に格納することができる。
【００９２】
任意選択で、デジタルウォレット装置１００は、改ざん防止エンクロージャ内に物理的に収容される。任意選択で、エンクロージャは改ざんを検出し、例えばメモリ１０２内のデータを削除することによって反応するように設計される。
【００９３】
次に、本発明のいくつかの実施形態による、デジタルウォレット装置による暗号通貨の転送方法を概略的に表すフローチャートである図２を参照する。また、本発明のいくつかの実施形態による、デジタルウォレット装置によって暗号通貨を転送するための方法を概略的に表すシーケンス図である図３も参照する。
【００９４】
まず、２０１および３０１に示すように、ユーザからの入力がＭＭＩ  １０４によって受信される。入力は、トランザクションのための宛先アカウントアドレスおよびトランザクションのための量を含むことができる。また、入力は、暗号通貨の種類に応じて、所望のトランザクション手数料および／またはトランザクションの作成に必要な任意の他の情報を含んでもよい。宛先アカウントアドレスは例えば、メモリ１０２に記憶されている連絡先リストから、既知の宛先アカウントアドレスから選択することができる。
【００９５】
入力は任意のデータ型、例えば、整数、ブール値、文字、英数字文字列および／または他の任意の型であってもよい。任意選択で、入力データ型には、暗号通貨で一般的に使用される十六進数体系が含まれるか、またはそれらに変換されてもよい。
【００９６】
次に、２０２に示すように、トランザクションコードを実行することによって、暗号通貨のトランザクションが作成され、プロセッサ１０３によって署名される。トランザクションの作成は、宛先アカウントアドレスと量（ユーザから受け取った入力）と、任意選択でガスリミット、（全てのトランザクションで増加する）ナンス、および／または他のメタデータなどの他の情報を使用して行われる。本トランザクションは具体的な暗号通貨に関連するプロトコル、例えば、イーサ暗号通貨のためのイーサリアムプロトコルに基づく。これは、Ｓｈａ３などの暗号ハッシュ関数、または暗号通貨の種類に応じた任意の他の関数を実施することを含むことができる。トランザクションは、メモリ１０２に記憶されている暗号通貨の秘密鍵を使用して署名される。署名は例えば、楕円曲線デジタル署名アルゴリズム（ＥＣＤＳＡ）、Ｒｉｖｅｓｔ−Ｓｈａｍｉｒ−Ａｄｌｅｍａｎ（ＲＳＡ）暗号システム、デジタル署名アルゴリズム（ＤＳＡ）、Ｒａｂｉｎ暗号システム、および／または暗号通貨の種類に基づく任意の他のアルゴリズムもしくはプロトコルを使用して行われる。
【００９７】
次に、２０３に示すように、前記トランザクションを符号化した機械可読符号が提示ユニット１０５に提示される。機械可読コードは、例えば、線形バーコードまたはＱＲコードのようなマトリックスバーコード、色符号化された画像、および／またはコンピュータによって識別され得るデータの他の視覚的表現といったような視覚コードであってもよい。機械可読コードはまた、音波、電磁波、および／または任意の他の出力を含み得る。
【００９８】
次に、２０４および３０２に示されるように、機械可読コードはイメージング装置１２１などのセンサによってキャプチャされ、３０３に示されるように、ブロックチェーンに追加されるように、ブロックチェーンシステムにネットワーク１３０を介してトランザクションをブロードキャストするために通信装置１２０によって復号される。
【００９９】
あるいは、トランザクションデータが任意の他の単方向通信ハードウェアを介して、例えば、データダイオードを介して、通信装置１２０に転送されてもよい。
【０１００】
任意選択で、通信装置１２０は、トランザクションを実行するのに十分な暗号通貨が暗号通貨アカウント内に残っていることを検証する。これは、アカウントに関する情報がブロックチェーンシステム内に位置し、取得するためにネットワーク通信を必要とするので、デジタルウォレット装置１００によっては行うことができない。任意選択で、トランザクションを実行するのに十分な暗号通貨が暗号通貨アカウントに残っていない場合、通信装置１２０は、例えばトランザクションをブロードキャストせずにトランザクションを削除することによって、トランザクションをキャンセルする。
【０１０１】
イメージング装置１２１は１つまたは複数の光キャプチャセンサ、例えば、モバイルクライアント装置の単一または双対のセンサカメラ、ウェブカメラ、一眼レフカメラ（ＳＬＲ）、アクションカメラ、奥行き検出カメラ、全方位カメラ、「スマートグラス」などのウェアラブル装置に含まれるカメラ、および／または任意の種類のデジタルカメラを含むことができる。
【０１０２】
センサはまた、マイクロホンなどの音響または音声センサ、振動センサ、電磁センサ、電磁波を受信することができるアンテナ、および／またはその周囲を検出することを目的とする任意の他の装置、モジュール、および／またはサブシステムを含むことができる。
【０１０３】
通信装置１２０は、メインフレームコンピュータ、エンタプライズサーバ、ワークステーション、多数の接続されたコンピュータ、１つ以上の仮想マシンおよび／またはパーソナルコンピュータのような１つ以上の計算装置を含むことができる。通信装置１２０は例えば、プロセッシングノード、コンピュータ、ラップトップ、サーバ、モバイル装置、「スマートメガネ」等のウェアラブル装置および／または任意の処理装置であってもよい。
【０１０４】
機械可読コードを復号する動作および／またはトランザクションをブロードキャストする動作は、通信装置１２０上にインストールされたソフトウェアプリケーションによって実行されてもよい。アプリケーションは他の動作、例えば、任意の暗号通貨アカウント（デジタルウォレット装置１００に格納されたアカウントを含む）に関する情報を提示すること、非セキュアな暗号通貨アカウントを作成および／または管理すること、実行された動作のログを提示すること、および／または任意の他の動作といった、既存の暗号通貨ウォレットアプリケーションによって実行される動作と同様の動作を実行することができる。
【０１０５】
通信装置１２０はイメージング装置１２１に接続されていてもよいし、イメージング装置１２１を含んでいてもよい。通信装置１２０は、ネットワークカード、通信チップおよび／またはネットワーク１３０に接続するための他の任意の通信コンポーネントのような通信モジュールを含む。
【０１０６】
ネットワーク１３０は、例えば、ローカルエリアネットワーク（ＬＡＮ）、モバイルネットワークのような無線ネットワーク、無線ＬＡＮ（ＷｉＦｉ）のような無線ローカルエリアネットワーク、Ｂｌｕｅｔｏｏｔｈプロトコルのような無線パーソナルエリアネットワーク（ＷＰＡＮ）、近距離無線通信（ＮＦＣ）および／または任意の他のネットワークを含むことができる。
【０１０７】
任意選択で、秘密鍵と公開鍵の対を生成することによって、プロセッサ１０３によって暗号通貨の新規のアカウントを作成することができる。新規のアカウントの鍵は別の装置に転送されてもよく、したがって、アカウントアドレスはデジタルウォレット装置１００に既知である。
【０１０８】
任意選択で、現存する暗号通貨アカウントをデジタルウォレット装置１００に挿入し、メモリ１０２に記憶することができる。これは、ユーザがＭＭＩ  １０４を介してアカウントの秘密鍵を入力することによって行うことができる。
【０１０９】
任意選択で、既存の暗号通貨アカウントは、メモリ１０２から別の装置に抽出されてもよい。これは、例えば、現存する暗号通貨アカウントの秘密鍵を符号化した機械可読コードを提示ユニット１０５に提示することによって、単方向通信ハードウェアを介して行われてもよい。
【０１１０】
任意選択で、デジタルウォレット装置１００および／または通信装置１２０を使用するには、ユーザ認証処理が必要であり、例えば、パスワードおよびバイオメトリクスデータを含む２要素認証が必要である。
【０１１１】
任意選択で、トランザクションを作成するためにブロックチェーンシステムからの入力を必要とする暗号通貨（ＮＥＯなど）の場合、ブロックチェーンシステムに基づくスマートコントラクトを使用することができる。これは、ユーザによるこのブロックチェーンシステム入力を入力しないようにするためになされる。デジタルウォレット装置１００に記憶されているアカウントによって所有されている暗号通貨を保持する、ブロックチェーンシステム上のスマートコントラクトが作成される。コントラクトはデジタルウォレット装置１００によって作成されたトランザクションなしに、アカウントから暗号通貨を転送することができる。第三者からそのアカウントに暗号通貨を転送するために、第三者は暗号通貨をコントラクトに転送する。
【０１１２】
本発明のいくつかの実施形態によれば、スマートコントラクトを介してデジタルウォレット装置によって暗号通貨を転送するための方法を概略的に表すシーケンス図である図４も参照される。ユーザはアカウントから暗号通貨を転送したい場合には上述したように、宛先アカウントアドレスおよび量をデジタルウォレット装置１００に入力する。４０１に示すように、デジタルウォレット装置１００は、メッセージリクエストを（任意選択でプロセッサ１０３によって）作成する。メッセージリクエストには、宛先アカウントアドレス、量、ナンスが含まれ、アカウントの秘密鍵を使用して署名される。次に、４０２に示すように、メッセージリクエストは（任意選択で提示ユニット１０５を介して）通信装置１２０に転送される。次に、４０３に示すように、通信装置１２０はトランザクションによってメッセージリクエストをラップし、メッセージリクエストをコントラクトに転送する。４０４に示すように、コントラクトは、アカウントの公開鍵を使用することによってアカウントのシグネチャを検証する。４０５に示すように、メッセージリクエストが全ての必要なデータを含む正しい形式であり、署名が検証された場合、コントラクトは、それをブロックチェーンに追加することによってトランザクションを実行する。ユーザの観点からは、この処理は、トランザクションを作成することによってデジタルウォレット装置１００から直接的に暗号通貨を転送することと同一である。
【０１１３】
任意選択で、デジタルウォレット装置１００は（任意選択でプロセッサ１０３によって）トランザクション規則および／または定義、例えば、スマートコントラクトを作成するための規則、スマートコントラクトを作成するためのメッセージリクエスト、マルチシグネチャ方式のためのポリシー、および／またはブロックチェーンにブロードキャストされ、かつ／または任意の他のエンティティに送信される任意の他の規則および／または定義を作成する。マルチシグネチャスキームのポリシーには、例えば、標準的なブロックチェーンマルチシグネチャ規則（例えばビットコインスクリプトを使用すること）や、多当事者計算（ＭＰＣ）に基づくマルチシグネチャのような暗号鍵分割メカニズムのポリシーが含まれることがある。デジタルウォレット装置１００は、秘密鍵を使用してトランザクション規則および／または定義に署名する。デジタルウォレット装置１００はインターネットから切断されているので、これにより、トランザクション規則および／または定義が真正であることが保証される。次いで、トランザクション規則および／または定義は通信装置１２０に送信されてもよく、通信装置１２０は、トランザクション規則および／または定義をブロックチェーンにブロードキャストし、かつ／またはトランザクション規則および／または定義を他のエンティティに送信する。例えば、デジタルウォレット装置１００はマルチシグネチャのための規則を作成する（例えば、一日にウォレットによってブロックチェーンにブロードキャストされる全てのトランザクションの合計は、１００コイン未満である）。規則は、秘密鍵によって署名された後、マルチシグネチャ方式の共同署名者（マルチシグネチャ処理の参加者）に送信され、侵害または変更することができない。各共同署名者は、規則に基づいて、署名するか否かを決定する。例えば、通信装置１２０によって接続され、配置され、および／または使用されてもよい、よりセキュアでないデジタルウォレットは、次いで、規則を安全に使用してもよい。これにより、通信装置１２０が侵害される状況、例えば、ハッカーの攻撃によって、よりセキュアでないデジタルウォレットによって作成された規則は欠陥があり、欠陥のある規則に基づいて共同署名者に不正なトランザクションに署名させる状況を防止する。
【０１１４】
任意選択で、デジタルウォレット装置１００はまた、機械可読コードをキャプチャするために、イメージング装置１０７などのセンサ、または上述の任意の他のセンサを含む。ここで、本発明のいくつかの実施形態に従う、他のデジタル装置から電子的に切り離された、暗号通貨を記憶し管理するイメージング装置を有するデジタルウォレット装置の概略図である図５を参照する。また、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置によって暗号通貨を転送するための方法を概略的に表すフローチャートである図６を参照する。また、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置による暗号通貨を転送するための方法を概略的に表すシーケンス図である図７を参照する。
【０１１５】
イメージング装置１０７はイメージング装置１２１について上述したように、任意の１つ以上の光キャプチャセンサを含んでもよい。
【０１１６】
まず、６０１に示すように、トランザクションの宛先アカウントアドレス、および任意選択でトランザクションの量などの任意の他の入力を符号化する機械可読コードが、例えば通信装置１２０の提示ユニット１２２上に提示される。提示ユニット１２２は例えば、提示ユニット１０５について上述したようなスクリーンであってもよい。宛先アカウントアドレス、量および／または他の入力は、通信装置１２０にインストールされたアプリケーションにおいて、ユーザによって事前に挿入または選択されてもよい。この場合、機械可読コードを使用すること（例えば、データダイオードのような連続的な単方向通信ハードウェアを使用することとは対照的に）は転送されるデータの量に対する固有の制限を提供し、したがって、セキュリティを向上させる。
【０１１７】
次に、６０２および７０１に示すように、機械可読コードはイメージング装置１０７によってキャプチャされ、プロセッサ１０３によって復号される。
【０１１８】
次に、６０３に示すように、プロセッサ１０３によって、（機械可読符号から復号された）宛先アカウントアドレスと量を用いて暗号通貨のトランザクションが作成され、２０２および３０２について上述したように、そのトランザクションが署名される。
【０１１９】
６０４〜６０５および７０２〜７０３に示すステップは、２０３〜２０４および３０２〜３０３について上述したように実行される。
【０１２０】
任意選択で、例えば通信装置１２０によって提示される既存のアカウントの秘密鍵を符号化する機械可読コードを取り込むことによって、イメージング装置１０７を有するデジタルウォレット装置に既存の暗号通貨アカウントを挿入することができる。
【０１２１】
任意選択で、１つがイメージング装置のようなセンサを有し、１つがセンサを有さない、２つのデジタルウォレット装置を併用して、様々なレベルのセキュリティを提供してもよい。
【０１２２】
次に、本発明のいくつかの実施形態による、他のデジタル装置から電子的に切り離された、暗号通貨を記憶し管理するための２つのデジタルウォレット装置の概略図である図８を参照する。この構成では、デジタルウォレット装置８０１に格納されたアカウントに大量の暗号通貨を保存することができ、一方、イメージング装置を有し、したがってセキュリティが低く、より頻繁に使用され、宛先アカウントアドレスを入力するためのイメージング装置を容易に使用する、デジタルウォレット装置８０２に格納されたアカウントに、より少量の暗号通貨を保存することができる。
【０１２３】
任意選択で、デジタルウォレット装置８０１から頻繁に使用するデジタルウォレット装置８０２に暗号通貨を転送する便宜のために、デジタルウォレット装置８０２で使用するための新規のアカウントをデジタルウォレット装置８０１によって作成することができ、したがって、このアカウントアドレスはデジタルウォレット装置８０１に既知であり、入力は必要とされない。
【０１２４】
ここで、本発明のいくつかの実施形態による、イメージング装置を有するデジタルウォレット装置に対してイメージング装置を持たないデジタルウォレット装置により暗号通貨アカウントを作成してトランザクションを実行するための方法を概略的に表したシーケンス図である図９を参照する。
【０１２５】
新規の暗号通貨アカウントは、秘密鍵と公開鍵の対を生成することによって、デジタルウォレット装置８０１のプロセッサによって作成される（９０１）。鍵はデジタルウォレット装置８０２（９０２）に転送され、例えば、鍵を符号化した機械可読コードをデジタルウォレット装置８０１の提示ユニットに提示し、デジタルウォレット装置８０２のイメージング装置によってコードをキャプチャする。暗号通貨は、トランザクションをブロックチェーンシステムにブロードキャストする通信装置８０３（９０３）を使用して、上述のようにトランザクションによって、デジタルウォレット装置８０１に格納された現行の暗号通貨アカウントからデジタルウォレット装置８０２に格納された新規のアカウントに転送されうる（９０４）。デジタルウォレット装置８０１はアカウントアドレスを知っており、入力は必要とされないので、トランザクションの作成はユーザにとって簡単である。ここで、７０１〜７０３について上述したように、デジタルウォレット装置８０２（９０５〜９０７）に格納された新規の暗号通貨アカウントから暗号通貨を転送することができる。
【０１２６】
任意選択で、デジタルウォレット装置１００は有限数の文字を有する機械的に符号化されたデータ、例えば、トランザクションの宛先アカウントアドレス、および／または暗号通貨の種類に従ってトランザクションに必要な任意の他のデータを読み取る機械的入力コンポーネントも含む。これは、例えば、パンチカード、パンチテープ、磁気インク文字認識（ＭＩＲＣ）、および／またはデータの他の読み取り可能な機械的記憶装置を含むことができる。ユーザは機械的入力コンポーネントに符号化されたデータを見て、それが正しいデータであることを検証してから、それをデジタルウォレット装置１００に入力することができる。データは、任意選択で通信装置１２０に接続された装置、例えば穿孔機によって機械的に符号化することができる。
【０１２７】
任意選択で、ＭＭＩ  １０４はユーザに指示を提供し、宛先アカウントアドレスの入力を案内する入力システムを含む。
【０１２８】
次に、本発明のいくつかの実施形態による、電子的に切り離された計算装置間で複合データを転送するための入力システムの概略図である図１０を参照する。本発明のいくつかの実施形態による、電子的に切り離された計算装置間で複合データを転送するための入力システムを使用する方法を概略的に示すシーケンス図である図１１を参照する。
【０１２９】
この方法はデータを転送するための直接的な電子接続が不可能な場合に、複雑なおよび／または長いデータ片を計算装置に入力するための解決策を提供する。
【０１３０】
入力装置１０００は、他のデジタル装置、例えばデジタルウォレット装置１００から電子的に切り離された入力ＩＣ１０１０に接続された入力コンポーネント１００１を含む。入力装置１０００はまた、入力コンポーネント１００１から電子的に切り離されており、例えば通信装置１２０に含まれるセキュアでない出力ＩＣ  １０２０に接続された出力コンポーネント１００２を含む。入力コンポーネント１００１および出力コンポーネント１００２は、別個であっても、隣り合っていても、同じ物理装置に一体化されていてもよい。
【０１３１】
まず、出力コンポーネント１００２は、入力ＩＣ  １０１０に入力されるべき出力ＩＣ  １０２０からのデータ片を受信する（１１０１）。次に、出力コンポーネント１００２は、データ片の表現をユーザに提示する（１１０２）。この表現は、入力コンポーネント１００１の物理的な構成に従った、前記ユーザによる入力動作を示す。表現は例えば、入力コンポーネント１００１上のユーザによって押されるべきボタンを示す一連の光、模様、入力コンポーネント１００１のタッチスクリーン上のユーザによって描かれるべきスクリーン上に提示される１つ以上の単一のスクライブルまたは形などの視覚的表現、一連の音、および／または任意の他の指示を含んでもよい。表現はデータ片の符号化版であることがある。
【０１３２】
次に、ユーザは表現（１１０３）に従って入力コンポーネント１００１を介してデータを入力し、データ片は入力集積回路１０１０に転送される（１１０４）。任意選択で、ユーザによって入力されたデータ片の指示も、例えば、出力コンポーネント１００２が入力機能も含む場合、出力コンポーネント１００２（１１０５）を介して、または、単方向通信を介して入力ＩＣ  １０１０から直接的に、出力ＩＣ  １０２０（１１０６）に転送される。次いで、出力コンポーネント１００２は、ユーザの入力に基づいて調整された表現を提示することができる。任意選択で、ユーザが正しいデータ片を入力したとき、入力集積回路１０１０に入力される次のデータ片の次の表現が出力コンポーネント１００２によって提示される（１１０７）。任意選択で、ユーザが誤ったデータ片を入力した場合、エラー表示が出力コンポーネント１００２によって提示される（１１０８）。次に、ユーザは処理を再開するコマンドを入力することができ（１１０９および１１１０）、したがって、ユーザがデータ片を正しく再入力するために、元の表現が出力コンポーネント１００２によって再度提示される。
【０１３３】
例えば、入力コンポーネント１００１はキーボードであってもよく、出力コンポーネント１００２はキーボードに取り付けられた表面を含んでもよい。例えば、表面をキーボードの上に配置し、キーボードが透明である場合、キーボードを吹く（ｂｌｏｗ）することができる。表面は、それぞれキーボード上のキーに隣り合う発光ダイオード（ＬＥＤ）などの光源を含んでもよい。表面上の光源は、隣のキーが次に押されるべきであることをユーザに示すためにオンにされる。ユーザがキーを押すと、表面も押され、入力は出力ＩＣ  １０２０に戻される。ユーザが正しいキーを押すと、次のキーに近接する光源がオンになり、ユーザは一連のキーを押すように案内される。ユーザが間違ったキーを押すと、例えば、全ての光源を同時にオンにさせてエラーを示し、ユーザがキーを押して処理を再開した後、第１の光源をオンにさせてシーケンスを再開することができる。
【０１３４】
別の例として、入力コンポーネント１００１はキーボードであってもよく、出力コンポーネント１００２は、ユーザを次のデータ片に向けるリモートインジケータを含んでもよい。例えば、リモートインジケータは、次に押すべき正しいキーに向けられたレーザ、ユーザの視覚上にキーボードのイメージ表示を提示する拡張現実装置、押すべきキーをユーザに読み聞かせる音声スピーカ、および／または入力コンポーネント１００１から物理的に切り離された他の表示装置を含むことができる。
【０１３５】
他の例では、入力コンポーネント１００１は、パターンがユーザによって描かれ得るタッチスクリーンであってもよく、出力コンポーネント１００２は所望のパターンをユーザに提示するスクリーンであってもよい。２つの画面は、１つの物理装置に統合されてもよい。
【０１３６】
本発明のいくつかの実施形態による、暗号通貨管理ＩＣおよび電子的に切り離されたＩＣを有するデジタルウォレット装置の概略図である図１２を参照する。
【０１３７】
任意に、デジタルウォレット装置１００は、イメージング装置１０７のようなセンサを搭載する、入力ＩＣ  １０８も含む。入力ＩＣ  １０８は、暗号通貨管理ＩＣ  １０１から隔離され、任意選択で、どのコンピュータインタフェースからも隔離される。あるいは、入力ＩＣ  １０８がデータダイオードなどの他の単方向通信ハードウェアを介してデータを受信する。両方のＩＣは、同じ物理装置、例えばクレジットカード形状の装置に一体化されてもよい。任意選択で、入力ＩＣ  １０８は提示ユニットに接続され、イメージング装置１０７によって取得されたデータ、たとえばトランザクションの宛先アカウントアドレスをユーザに提示し、したがってユーザはＭＭＩ  １０４を介してデータを入力することができる。
【０１３８】
任意選択で、デジタルウォレット装置１００は上述のように、電子的に切り離された計算装置間で複合データを転送し、２つの隔離された部分を有する入力システム１０９を含む。入力ＩＣは入力システム１０９の出力コンポーネントに接続され、暗号通貨管理ＩＣ  １０１は入力システム１０９の入力コンポーネントに接続される。データ片が単方向通信ハードウェアを介して、例えばイメージング装置１０７によって取得されると、データ片の表現が入力システム１０９の出力コンポーネントによって提示され、ユーザは入力システム１０９の入力コンポーネントを介してデータ片を入力することができる。
【０１３９】
次に、本発明のいくつかの実施形態による、暗号通貨管理ＩＣを有するデジタルウォレット装置および入力ＩＣを有する通信装置の概略図である図１３を参照する。
【０１４０】
この例示的な構成では、（例えば、デジタルウォレット装置１００と同等の）よりセキュアなデジタルウォレット装置１３０１への入力は（例えば、通信装置１２０と同等の）ネットワークまたは（例えば、デジタルウォレット装置８０２と同等の）よりセキュアでないデジタルウォレット装置に接続されうる通信装置１３０２のような、よりセキュアでない装置の入力ＩＣ  １３０３からの指示に基づく。入力ＩＣ  １３０３は、デジタルウォレット装置１３０１のキーボード１０４を指し示す、例えばレーザ装置のようなリモートインジケータ１３０４を使用する。リモートインジケータ１３０４はデジタルウォレット装置１３０１の一部（物理的に接続されているが、電子的には切り離された）であってもよく、通信装置１３０２の一部であってもよく、または別個の装置であってもよい。
【０１４１】
本発明のいくつかの実施形態による、電子的に切り離されたデジタルウォレット装置間で複合データを転送するための入力システムを使用するための方法を概略的に示すシーケンス図である図１４を参照する。
【０１４２】
まず、入力ＩＣ  １３０３は、例えばユーザ（１４０１）によって入力されるデータ列を作成する。次に、入力ＩＣ  １３０３は、第１のデータ片をリモートインジケータ１３０４に送る（１４０２）。次いで、リモートインジケータ１３０４は例えば、レーザ光線をＭＭＩ  １０４上の鍵に向けることによって、ユーザにデータ片を指示する（１４０３）。そして、ユーザは、指示に従ってＭＭＩ  １０４を介して入力し（１４０４）、データ片は、暗号通貨管理ＩＣ  １０１に転送される（１４０５）。そして、ユーザ（または現在入力されているデータ列）によって入力されたデータ片の指示が、単方向通信ハードウェア（１４０６）を介して、暗号通貨管理ＩＣ  １０１から入力ＩＣ  １３０３に送られる。例えば、データ片の指示は、データダイオード１３０５を介して入力ＩＣ  １３０３に送られる。あるいは、デジタルウォレット装置１３０１の提示ユニットが通信装置１３０２のイメージング装置によってキャプチャされる指示を提示する。この方法で指示を送信すると、エラーに対して脆弱であるが、悪意のある攻撃に対して安全である。
【０１４３】
次に、ユーザが正しいデータ片を入力すると、入力ＩＣ  １３０３は、リモートインジケータ１３０４にデータ片の次のデータ片を送り、リモートインジケータ１３０４は、データ片のユーザに示す（１４０７）。任意選択で、ユーザが誤ったデータ片を入力すると、エラーの指示がリモートインジケータ１３０４によって提示される（１４０８）。そして、ユーザは最後のデータ片（１４０９）に対して削除コマンドを入力することができ、これは暗号通貨管理ＩＣ  １０１（１４１０）に転送される。そして、暗号通貨管理ＩＣ  １０１は、現在入力されているデータ列を誤ったデータ片なしに入力ＩＣ  １３０３に送信する（１４１１）。次に、入力ＩＣ  １３０３は、データ片のユーザを示すリモートインジケータ１３０４に正しいデータ片を再度送る（１４１２）。
【０１４４】
任意選択で、デジタルウォレット装置１３０１は、リモートインジケータ１３０４を非アクティブ化および／または遮断することができる。任意選択で、デジタルウォレット装置１３０１は、リモートインジケータ１３０４が非アクティブであるべきであるという指示を、例えば提示ユニット上に提示されることによって、ユーザに提示することができる。これは、例えば、機密情報がＭＭＩ  １０４を使用して入力されたときに、通信装置１３０２を介して制御を得たハッカーが誤った情報を入力するようにユーザを案内することを防止するのに役立つ。
【０１４５】
任意選択で、短いおよび／または記憶可能なアカウントアドレスを有する暗号通貨を使用することができ、したがって、ユーザがＭＭＩ  １０４を介してトランザクションの宛先アカウントアドレスを入力することがより容易になる。
【０１４６】
現存の暗号通貨プロトコル、例えばイーサリアムでは、アカウントアドレスは、そのアカウントに関連する公開鍵のハッシュの最後の１６０ビットである。使用するビットが少ない場合、例えば５２ビットの場合、（約２２６＝３２００万アカウント後に）同じ５２ビットのハッシュのアカウントが２つ作成される可能性が高くなる。これは、ブロックチェーンシステムとユーザが区別できず、資金が間違ったアカウントに転送されるので問題である。この課題を解決するために考えられる選択肢は、公開鍵をアナウンスすることによってブロックチェーンに登録するために新規のアカウントを要求することである。既存のアカウントと同じ５２ビットのハッシュを持つアカウントが作成されると、新規のアカウントは拒否され、登録されない。しかしながら、ブロックチェーンシステムにブロードキャストするために通信装置を中継するデジタルウォレット装置においてそのようなプロトコルを使用することはセキュアでないかもしれず、アカウントが生成された後、公開鍵はブロックチェーンシステムに公開鍵をアナウンスするために通信装置に転送される。その段階では、悪意のあるソフトウェアに感染しているかハッキングされた通信装置が新規のアカウントと同じ５２ビットのハッシュを持つ２番目のアカウントを作成しようとし、その２番目のアカウントの公開鍵をブロックチェーンシステムにアナウンスする可能性がある。次に、新規のアカウントに指定された資金は、代わりに第２のアカウントに転送される。信頼されていない通信装置上を中継するデジタルウォレット装置を容易かつセキュアに使用することを可能にする暗号通貨プロトコルが求められる。
【０１４７】
本発明のいくつかの実施形態による、短い公開アカウントアドレスを電子的に切り離された装置によって提供する暗号通貨プロトコルを用いて暗号通貨アカウントを作成するための方法を概略的に表したシーケンス図である図１５を参照する。
【０１４８】
まず、他のデジタル装置（１５０１）、例えばデジタルウォレット装置１００から電子的に切り離された装置によって、暗号通貨アカウント用の秘密鍵および公開鍵が生成される。公開鍵のハッシュは、提示ユニット１０５上に提示され、イメージング装置１２１によってキャプチャされ（１５０２）、通信装置１２０によって送信され、ブロックチェーンに追加される（１５０３）。このハッシュは、ｓｈａ３−２５６以外など、アカウントアドレスの公開鍵を表すハッシュとは異なる。ハッシュがブロックチェーンに追加されたカレンダ時間のタイムスタンプは、通信装置１２０によって受信され（１５０４）、ＭＭＩ  １０４を介してデジタルウォレット装置１００に入力するためにユーザに提示される（１５０５）。タイムスタンプの標準時間（グリニッジ標準時（ＧＭＴ）など）を使用できる。カレンダ時間は、プロトコルで定義された固有のタイムスロット内である。固有のタイムスロットは例えば、１時間、１日、１週間、および／または任意の他のより短い、より長い、もしくは中間のタイムスロットであってもよい。ブロックチェーンに追加するこの固有のタイムスロットが経過されたことを検証した後にのみ（１５０６）、ハッシュされていない公開鍵が提示ユニット１０５上に提示され、イメージング装置１２１によってキャプチャされ（１５０７）、通信装置１２０によって送信されてブロックチェーンに登録される（１５０８）。これで、公開鍵がブロックチェーンに追加された公開鍵のハッシュと照合され、同じアカウントであることが確認され、新規のアカウントと同じハッシュの複数のビットを持つ他のアカウントが存在しないことが確認される。
【０１４９】
任意選択で、正確なカレンダ時間がデジタルウォレット装置１００に知られることを確実にするために、デジタルウォレット装置１００は例えば、バッテリなどの別個の予備電源によって給電され得る時計を含んでもよい。
【０１５０】
次いで、公開アカウントアドレスは、例えば、ハッシュによって、タイムスタンプを表す複数のビットと公開鍵を表すより少ない複数のビットとを含むことができる。公開アカウントアドレスはタイムスタンプおよび／または公開鍵で動作し、例えば、タイムスタンプと公開鍵の両方の組み合わせのハッシュを表す複数のビットを生成する関数によって作成されるビットを含むことができる。例えば、公開アカウントアドレスは５２ビットを含むことができ、ここで１３ビットはタイムスタンプを表し、３９ビットは公開鍵のハッシュである。たとえば、１３ビットで表される日付のタイムスタンプは、約２２年間は繰り返されない。ブロックチェーンは公開アカウントアドレスに関する全ての情報、すなわち、最初のハッシュがブロックチェーンに追加されたタイムスタンプおよび公開鍵を含む。公開アカウントアドレスの作成には、他のステップ、例えば、ハッシュの結果に対してハッシュ（例えば、ＲＩＰＥＭＤ−１６０ハッシュ）を実行するステップ、バージョンを表すバイトを追加するステップ、バイト列からの結果をｂａｓｅ５８文字列のような別のフォーマットに変換する、および／または他の任意の機能またはアルゴリズムも含まれる。
【０１５１】
任意選択で、通信装置１２０などのオンライン装置によって、プロトコルを使用して暗号通貨アカウントを作成することもできる。この場合、公開アカウントアドレスが公開鍵のハッシュの最初の３８ビットのみを含むことができ、１ビットはアカウントが作成された方式を示すことができる。この方法は、固有のタイムスロットが通過するのを待つ時間を節約する。
【０１５２】
次に、本発明のいくつかの実施形態による、オンライン装置によって短い公開アカウントアドレスを提供する暗号通貨プロトコルを使用して暗号通貨アカウントを作成するための方法を概略的に示すシーケンス図である図１６を参照する。
【０１５３】
通信装置１２０にインストールされたアプリケーションは、暗号通貨アカウント用の秘密鍵および公開鍵を生成する（１６０１）。公開鍵はブロックチェーンに追加され（１６０２）、確認が受信される（１６０３）。しばらく経過し、いくつかのブロックがブロックチェーン内に作成された（１６０４）後、公開鍵およびいくつかの後続のブロックを含むブロックが受信され（１６０５）、通信装置１２０によって検証されて（１６０６）、アカウントが登録されていることが検証される。いくつかのブロックを作成する必要があるため、待機時間は固有のタイムスロットの長さより短くなる場合がある。
【０１５４】
任意選択で、（例えば、待ち時間がない場合、および／またはトランザクション料金を回避するために）ブロックチェーンに登録せずにプロトコルを使用して暗号通貨アカウントを作成することもできる。このケースでは、公開アカウントアドレスが公開鍵のハッシュの通常の最後の１６０ビットを含むことができる。
【０１５５】
任意選択で、公開アカウントアドレスのハッシュの複数のビットの各々の数は、一覧からの単語によって表現されるので、ユーザにとって、ＭＭＩを介して単語を入力し、および／または公開アカウントアドレスを記憶することがより容易である。例えば、それぞれの１３ビットは２１３＝８１９２個の単語の一覧からの単語によって表現されてもよく、したがって、５２ビットの公開アカウントアドレスは４つの単語によって表現される。公開鍵のハッシュの最後の１６０ビットを含む公開アカウントアドレスは、１３ワードで表されてもよい。
【０１５６】
任意選択で、登録されていないアドレスへのトランザクションは、ブロックチェーンシステムによって受け入れられない。これは、ハッキングされた通信装置が、ブロックチェーンにアドレスを登録しないまま登録されているとユーザに誤って確認し、アカウントがそれに転送された暗号通貨を受信できない状況を防止するために、または、悪意のあるエンティティが転送された暗号通貨を受信することを目的としてトランザクションに基づいてアカウントを作成することを防止するために必要である。任意選択で、トランザクションは有効期限を含み、それ以降は、もはや受け入れられなくてもよい。
【０１５７】
本発明の様々な実施形態の説明は例示の目的で提示されているが、網羅的であることも、開示された実施形態に限定されることも意図されていない。記載された実施形態の範囲および主旨から逸脱することなく、多くの修正例および変形例が当業者には明らかであろう。本明細書で使用される用語は実施形態の原理、市場で見出される技術に対する実際の適用または技術的改善を最もよく説明するように、または当業者が本明細書で開示される実施形態を理解することを可能にするように選択された。
【０１５８】
本出願から始まる特許の存続期間中に、多くの関連するデジタルウォレットが開発されることが予想され、デジタルウォレットという用語の範囲は、全てのそのような新規の技術を先験的に含むことが意図される。
【０１５９】
用語「備える」、「備えている」、「含む」、「含んでいる」、「有する」、およびそれらの活用形は、「含むが、限定されない」を意味する。この用語は、用語「からなる」および「から本質的になる」を包含する。
【０１６０】
「から本質的になる」という語句は、組成物または方法が追加の成分および／またはステップを含んでもよいことを意味するが、追加の成分および／またはステップが特許請求される組成物または方法の基本的かつ新規な特徴を実質的に変更しない場合に限る。
【０１６１】
本明細書で使用されるように、単数形「ａ」、「ａｎ」および「ｔｈｅ」は文脈が明確にそうでないことを指示しない限り、複数の参照を含む。例えば、「化合物」または「少なくとも１つの化合物」という語は、それらの混合物を含む複数の化合物を含むことができる。
【０１６２】
「例示的」という語は、本明細書では「例、事例、または例示として働く」ことを意味するために使用される。「例示的」として説明される任意の実施形態は必ずしも、他の実施形態よりも好ましい、または有利であると解釈されるべきではなく、かつ／または、他の実施形態からの特徴の組み込みを排除するように解釈されるべきではない。
【０１６３】
用語「任意選択で」は、本明細書では「いくつかの実施形態で提供され、他の実施形態では提供されない」を意味するために使用される。本発明の任意の特定の実施形態はそのような特徴が矛盾しない限り、複数の「任意選択される」特徴を含むことができる。
【０１６４】
本出願を通して、本発明の様々な実施形態は、範囲の形式で提示されてもよい。範囲の形式での説明は単に便宜および簡潔さのためであり、本発明の範囲に対する柔軟性のない限定として解釈されるべきではないことを理解されたい。したがって、範囲の説明は、その範囲内の全ての可能な部分範囲ならびに個々の数値を具体的に開示したものとみなされるべきである。例えば、１〜６などの範囲の記載は、１〜３、１〜４、１〜５、２〜４、２〜６、３〜６などの具体的に開示した部分範囲、ならびにその範囲内の個々の数、例えば、１、２、３、４、５、および６などを有すると考えるべきである。これは、範囲の幅に関係なく適用される。
【０１６５】
数値範囲が本明細書で示されるときはいつでも、それは、示された範囲内の任意の引用された数字（分数または整数）を含むことを意味する。第１の指示数および第２の指示数の「間の」「範囲に亘っている／範囲に亘る」との語句と、第１の指示数「から」第２の指示数「まで」の「範囲に亘っている／範囲に亘る」との語句と、は、本明細書では互換的に使用され、第１の指示数および第２の指示数ならびにそれらの間の全ての小数および整数を含むことを意味する。
【０１６６】
明確にするために、別個の実施形態の文脈で説明される本発明の特定の特徴は、単一の実施形態において組み合わせて提供されてもよいことが理解される。逆に、簡潔にするために、単一の実施形態の文脈で説明されている本発明の様々な特徴は別々に、または任意の適切な部分的な組み合わせで、または説明された本発明の任意の他の実施形態で適切なものとして提供されてもよい。様々な実施形態の文脈で説明される特定の特徴は、実施形態がそれらの要素なしで動作不能でない限り、それらの実施形態の本質的な特徴と見なされるべきではない。
【０１６７】
本発明をその特定の実施形態に関連して説明してきたが、多くの代替例、修正例、および変形例が当業者には明らかであろうことは明白である。したがって、本発明は、添付の請求項の主旨および広い範囲内にある、代替例、修正例、および変形例のすべてを包含することが意図される。
【０１６８】
本明細書で言及される全ての刊行物、特許および特許出願は、あたかも個々の刊行物、特許または特許出願が参照により本明細書に組み込まれるように具体的かつ個別に示されたかのように、その全体が本明細書に参照により組み込まれる。さらに、本出願における任意の参照の引用または特定は、そのような参照が本願の先行技術として利用可能であることを自認するものとして解釈されるべきではない。節の見出しが使用される限りにおいて、それらは必ずしも限定するものと解釈されるべきではない。
【０１６９】
さらに、本出願の全ての優先権に係る書面は、その全体が参照により本明細書に組み込まれる。
【図１】
2021514125.tif 000003
【図２】
2021514125.tif 000004
【図３】
2021514125.tif 000005
【図４】
2021514125.tif 000006
【図５】
2021514125.tif 000007
【図６】
2021514125.tif 000008
【図７】
2021514125.tif 000009
【図８】
2021514125.tif 000010
【図９】
2021514125.tif 000011
【図１０】
2021514125.tif 000012
【図１１】
2021514125.tif 000013
【図１２】
2021514125.tif 000014
【図１３】
2021514125.tif 000015
【図１４】
2021514125.tif 000016
【図１５】
2021514125.tif 000017
【図１６】
2021514125.tif 000018
【国際調査報告】
2021514125.tif 000019
2021514125.tif 000020
2021514125.tif 000021
2021514125.tif 000022