IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ オヨス インテグリティ コーポレーションの特許一覧

特表2022-525765分割型および分配型秘密暗号鍵を用いたユーザサービスアクセスのためのバイオメトリック認証ゲートウェイを使用したコンピューターシステムセキュリティーの改良
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-05-19
(54)【発明の名称】分割型および分配型秘密暗号鍵を用いたユーザサービスアクセスのためのバイオメトリック認証ゲートウェイを使用したコンピューターシステムセキュリティーの改良
(51)【国際特許分類】
   H04L 9/08 20060101AFI20220512BHJP
   G06F 21/32 20130101ALI20220512BHJP
   H04L 9/32 20060101ALI20220512BHJP
【FI】
H04L9/08 A
G06F21/32
H04L9/32 200Z
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021555584
(86)(22)【出願日】2019-06-24
(85)【翻訳文提出日】2021-11-12
(86)【国際出願番号】 US2019038667
(87)【国際公開番号】W WO2020185245
(87)【国際公開日】2020-09-17
(31)【優先権主張番号】62/818,629
(32)【優先日】2019-03-14
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/355,824
(32)【優先日】2019-03-17
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
2.SMALLTALK
3.ANDROID
4.QRコード
(71)【出願人】
【識別番号】521420130
【氏名又は名称】オヨス インテグリティ コーポレーション
(74)【代理人】
【識別番号】100102978
【弁理士】
【氏名又は名称】清水 初志
(74)【代理人】
【識別番号】100102118
【弁理士】
【氏名又は名称】春名 雅夫
(74)【代理人】
【識別番号】100160923
【弁理士】
【氏名又は名称】山口 裕孝
(74)【代理人】
【識別番号】100119507
【弁理士】
【氏名又は名称】刑部 俊
(74)【代理人】
【識別番号】100142929
【弁理士】
【氏名又は名称】井上 隆一
(74)【代理人】
【識別番号】100148699
【弁理士】
【氏名又は名称】佐藤 利光
(74)【代理人】
【識別番号】100128048
【弁理士】
【氏名又は名称】新見 浩一
(74)【代理人】
【識別番号】100129506
【弁理士】
【氏名又は名称】小林 智彦
(74)【代理人】
【識別番号】100205707
【弁理士】
【氏名又は名称】小寺 秀紀
(74)【代理人】
【識別番号】100114340
【弁理士】
【氏名又は名称】大関 雅人
(74)【代理人】
【識別番号】100121072
【弁理士】
【氏名又は名称】川本 和弥
(72)【発明者】
【氏名】オヨス ヘクター
(57)【要約】
安全なコンピューターシステムアーキテクチャは、ネットワーク対応のエンドユーザデバイス、エンドユーザデバイスに利用可能なサービス、およびバイオメトリック認証ゲートウェイから構成されることができる。各サービスは、予め定められた最低レベルのコンピューターおよびネットワークセキュリティーを満たす1つまたは複数の適切に構成されたサーバならびに/またはブロックチェーンネットワークを介して提供されることができる。バイオメトリック認証ゲートウェイは、予め確立されたバイオメトリックベクターに対するユーザのバイオメトリックベクターの検証に基づいて、サービスへのアクセスを制御することができる。アーキテクチャは、秘密暗号鍵を3つの部分に分けて、その3つの部分をエンドユーザデバイスとバイオメトリック認証ゲートウェイとの間で分配する、改良型公開鍵基盤(PKI)アプローチを利用することができる。3つの部分のうちの2つは、ユーザのバイオメトリックベクターに基づいて、ファジーボールト内に入れることができる。ファジーボールトから鍵部分を取り出すことは、ユーザのバイオメトリック認証の成功なしに実施されることはなく、ユーザのみがサービスを実行することができることを確実にする。
【特許請求の範囲】
【請求項1】
複数のネットワーク対応のエンドユーザデバイスと、
前記エンドユーザデバイスに利用可能な複数のサービスであって、各サービスが、予め定められた最低レベルのコンピューターおよびネットワークセキュリティーを満たす少なくとも1つの適切に構成されたサーバならびにブロックチェーンネットワークを介して提供され、前記ブロックチェーンネットワークは、非ネイティブアプリケーション、デジタルコントラクト、および非ネイティブトークンの使用をサポートし、前記複数のサービスは、各エンドユーザデバイス上で動作する対応するソフトウェアアプリケーションを介してアクセスされる、前記複数のサービスと、
エンドユーザデバイスのユーザのバイオメトリックベクターの検証に基づいて、前記複数のエンドユーザデバイスによる前記複数のサービスへのアクセスを制御するバイオメトリック認証ゲートウェイであって、各エンドユーザデバイスおよびそれらのそれぞれのユーザによるバイオメトリック認証ゲートウェイへの登録が必要とされ、前記登録は、前記ユーザの登録バイオメトリックベクターと、前記それぞれのエンドユーザデバイスの識別名に対する関係とを確立し、前記複数のエンドユーザデバイスと、前記サービスを提供するサーバまたはコンピューティングシステムと、前記バイオメトリック認証ゲートウェイとの間のネットワーク通信は、前記ユーザ用に生成された秘密暗号鍵を3つの部分に分けかつ前記3つの部分を前記それぞれのエンドユーザデバイスと前記バイオメトリック認証ゲートウェイとの間で分配する改良型公開鍵基盤(PKI)アプローチを使用してセキュリティー保護され、前記3つの部分のうちの2つは、前記ユーザのそれぞれのバイオメトリックベクターに基づいてファジーボールト内に入れられ、再構築のために前記ファジーボールトから前記ユーザのそれぞれの秘密暗号鍵の前記2つの部分を取り出すことは、前記ユーザのそれぞれの登録バイオメトリックベクターに対する前記ユーザのバイオメトリック認証の成功なしに実施されることはできず、前記ユーザのみが前記複数のサービスを実行することができることを確実にする、前記バイオメトリック認証ゲートウェイと
を含む、安全なコンピューターシステムアーキテクチャ。
【請求項2】
中にユーザの秘密暗号鍵のそれぞれの部分を有するローカルに格納されたファジーボールトのためのセキュリティーをさらに高める、安全なリアルタイムオペレーティングシステム(RTOS)を、エンドユーザデバイスが利用し、前記安全なRTOSはINTEGRITYである、請求項1記載のシステムアーキテクチャ。
【請求項3】
バイオメトリックベクターのために使用されるバイオメトリックデータが、近赤外線(NIR)虹彩スキャン、顔認識のためのユーザの顔の画像、指紋/手形、DNAプロファイル、および音声認識のための音声サンプルのうちの少なくとも1つを含む、請求項1記載のシステムアーキテクチャ。
【請求項4】
複数のサービスのうちの少なくともサブセットは、エンドユーザデバイス上で動作する対応するソフトウェアアプリケーション間で伝達される、ネットワーク通信、ブロックチェーントランザクション、およびデータファイルのうちの少なくとも1つの内に、バイオメトリックベクターまたはユーザの登録バイオメトリックベクターを埋め込み、この伝達へのアクセスは、アクセスのためのバイオメトリック認証を必要とする、請求項1記載のシステムアーキテクチャ。
【請求項5】
対応するソフトウェアアプリケーションが、ブロックチェーンネットワークに応じた暗号通貨ウォレットを自動的に生成する、請求項1記載のシステムアーキテクチャ。
【請求項6】
非ネイティブトークンの生成および割当てを管理するように構成された非ネイティブアプリケーションによって支配される際、少なくとも1つのサービスが、前記非ネイティブトークンの所有権を必要とし、前記非ネイティブアプリケーションは、エンドユーザデバイス上で動作する対応するソフトウェアアプリケーションによってアクセス可能である、請求項1記載のシステムアーキテクチャ。
【請求項7】
バイオメトリック認証ゲートウェイが、米国電気電子技術者協会(Institute of Electrical and Electronics Engineers)(IEEE)によって維持されるバイオメトリックオープンプロトコル標準(Biometric Open Protocol Standard)(BOPS)を利用する、請求項1記載のシステムアーキテクチャ。
【請求項8】
ブロックチェーンネットワークが、ETHEREUMブロックチェーンネットワークである、請求項1記載のシステムアーキテクチャ。
【請求項9】
公開鍵基盤(PKI)を介してセキュリティー保護された通信を交換するために、コンピューターシステムによる使用のための秘密暗号鍵を生成する工程であって、前記コンピューターシステムは、前記コンピューターシステムのコンポーネントおよびサービスの少なくとも1つへのアクセスを制御するためにバイオメトリック認証ゲートウェイを利用する安全なシステムアーキテクチャに従って構成され、前記コンピューターシステムのユーザは、それぞれの登録バイオメトリックベクターおよびそれぞれのエンドユーザデバイスの識別を確立するために、前記バイオメトリック認証ゲートウェイに登録することを要求される、工程;
生成された秘密暗号鍵を予め定められた長さの3つの部分に分ける工程;
前記それぞれのユーザの登録バイオメトリックベクターから一意的な要素を組み込む所定の暗号化技術を使用して、前記分けられた秘密暗号鍵の第一の部分および第二の部分を暗号化する工程であって、前記第一および第二の部分へのその後のアクセスは、前記それぞれのユーザによる成功したバイオメトリック認証を必要とする、工程;および
前記バイオメトリック認証ゲートウェイと前記エンドユーザデバイスとの間で前記秘密暗号鍵の前記3つの部分を格納する工程であって、前記3つの部分のうちの1つまたは2つが危険にさらされた場合、前記秘密暗号鍵は、危険にさらされないままである、工程
を含む、秘密暗号鍵をセキュリティー保護するための方法。
【請求項10】
第一および第二の部分を暗号化する工程が、
ファジーボールトフレームワークに適合するそれぞれのユーザの登録バイオメトリックベクターにアクセスする工程;
所定のファジーボールトアルゴリズム、前記第一の部分、および前記登録バイオメトリックベクターを使用して第一のファジーボールトを作成する工程;および
前記所定のファジーボールトアルゴリズム、前記第二の部分、および前記登録バイオメトリックベクターを使用して第二のファジーボールトを作成する工程
をさらに含む、請求項9記載の方法。
【請求項11】
3つの部分を格納する工程が、
エンドユーザデバイスに対してローカルに第二のファジーボールトを格納する工程;および
バイオメトリック認証ゲートウェイに関連するデータストアに第一のファジーボールトおよび秘密暗号鍵の第三の部分を格納する工程
をさらに含む、請求項10記載の方法。
【請求項12】
コンピューターシステムの復元サービスの一環として、ブロックチェーンネットワークによって維持されるブロックチェーン内に、第二のファジーボールトのコピーを格納する工程であって、前記ブロックチェーンネットワークは、非ネイティブアプリケーション、デジタルコントラクト、および非ネイティブトークンをサポートする、工程
をさらに含む、請求項11記載の方法。
【請求項13】
安全なリアルタイムオペレーティングシステム(RTOS)をエンドユーザデバイスが実行するとき、前記生成する工程、分ける工程、および暗号化する工程は、前記エンドユーザデバイスによって実施される、請求項9記載の方法。
【請求項14】
安全なリアルタイムオペレーティングシステム(RTOS)をエンドユーザデバイスが欠くとき、前記生成する工程、分ける工程、および暗号化する工程は、バイオメトリック認証ゲートウェイによって実施される、請求項9記載の方法。
【請求項15】
コンピューターシステムのタスクが、秘密暗号鍵の使用を必要とするとき、バイオメトリック認証ゲートウェイおよびエンドユーザデバイスから前記秘密暗号鍵の3つの部分を取得する工程;
前記秘密暗号鍵の第一および第二の部分を解読する工程;および
前記秘密暗号鍵を前記3つの部分から再構築する工程
をさらに含む、請求項9記載の方法。
【請求項16】
ユーザおよびそれぞれのエンドユーザデバイスを安全なコンピューターシステムのバイオメトリック認証ゲートウェイに登録する工程であって、前記登録は、前記ユーザのための登録バイオメトリックベクターおよび前記エンドユーザデバイスのための一意的なデバイスIDを生成し、バイオメトリックベクターは、前記エンドユーザデバイスによって取り込まれたとおりの前記ユーザのバイオメトリックデータの少なくとも1つの項目から抽出されたデータ点の一意的なサブセットであり、前記バイオメトリックベクターは、前記バイオメトリックベクターを利用する所定の暗号化技術を使用して暗号化され、前記エンドユーザデバイスに対してローカルに格納される、工程;
前記秘密暗号鍵を3つの部分に分け、前記3つの部分を前記エンドユーザデバイスと前記安全なコンピューターシステムの少なくとも1つのコンポーネントとの間で分配することによって、前記ユーザに属する公開鍵基盤(PKI)秘密暗号鍵をセキュリティー保護する工程であって、前記3つの部分の少なくとも2つは、前記ユーザの登録バイオメトリックベクターを利用する前記所定の暗号化技術を使用して暗号化され、前記3つの部分のうちの1つまたは2つが危険にさらされた場合、前記秘密暗号鍵は、危険にさらされないままである、工程;
前記安全なコンピューターシステムによって提供されるサービスにアクセスするため、または前記ユーザのセキュリティー保護された秘密暗号鍵の使用を必要とするタスクを実行するための要求に応答して、前記ユーザのための新たに取り込まれたバイオメトリックベクターを前記ユーザのそれぞれの登録バイオメトリックベクターに対して認証する工程であって、前記バイオメトリック認証を実施しないと、前記要求の自動拒否が起こる、工程;
バイオメトリック認証が成功したら、前記バイオメトリック認証ゲートウェイによって示されるように、前記要求を取り扱う工程;および
バイオメトリック認証が失敗したら、前記バイオメトリック認証ゲートウェイによって示されるように、前記要求を拒否する工程
を含む、コンピューターシステムセキュリティー方法。
【請求項17】
登録が、
ユーザのバイオメトリックデータの少なくとも1つの項目を取り込む工程;
必要ならば、消費のために、前記バイオメトリックデータの取り込まれた少なくとも1つの項目を処理する工程;
前記バイオメトリックデータの少なくとも1つの項目からバイオメトリックベクターを生成する工程;
3つのバイオメトリックベクターのセットを生成するために、前記取り込む工程、処理する工程、および生成する工程を、追加的かつ別々に2回実施する工程;ならびに
前記3つのバイオメトリックベクターのセットについて平均バイオメトリックベクターを計算する工程であって、前記平均バイオメトリックベクターは、前記ユーザの登録バイオメトリックベクターとして使用される、工程
をさらに含む、請求項16記載のセキュリティー方法。
【請求項18】
バイオメトリック認証が、
ユーザのバイオメトリックデータの少なくとも1つの項目をリアルタイムで取り込む工程;
必要ならば、消費のために、前記バイオメトリックデータの取り込まれた少なくとも1つの項目を処理する工程;
前記取り込まれたバイオメトリックデータの少なくとも1つの項目からバイオメトリックベクターを生成する工程;
前記生成されたバイオメトリックベクターを使用して、登録バイオメトリックベクターを解読するよう試みる工程;
前記登録バイオメトリックベクターの解読に成功したら、新たに取り込まれたバイオメトリックベクターと前記登録バイオメトリックベクターとの間の同等性を量的に表す類似性スコアを生成するために、前記新しいバイオメトリックベクターと前記登録バイオメトリックベクターを比較する工程;
前記類似性スコアが予め定められた閾値を満たしたとき、前記バイオメトリック認証が成功したことを示す工程;
前記類似性スコアが予め定められた閾値を満たしていないとき、前記バイオメトリック認証が失敗したことを示す工程;
所定の暗号化技術および前記新しいバイオメトリックベクターを使用して、前記登録バイオメトリックベクターを暗号化する工程;ならびに
その不正アクセスから守るために、前記生成されたバイオメトリックベクターをローカルメモリから消去する工程
をさらに含む、請求項16記載のセキュリティー方法。
【請求項19】
要求が、ユーザのセキュリティー保護された秘密暗号鍵の使用を必要とするタスクを実行することであり、かつバイオメトリック認証が成功したとき、前記方法が、
エンドユーザデバイスおよび安全なコンピューターシステムの少なくとも1つのコンポーネントから前記秘密暗号鍵の3つの部分を取得する工程;
暗号化された前記秘密暗号鍵の前記3つの部分のうちの少なくとも2つを解読する工程;ならびに
前記3つの部分から前記秘密暗号鍵を再構築する工程
をさらに含む、請求項16記載のセキュリティー方法。
【請求項20】
所定の暗号化技術がファジーボールトであり、登録バイオメトリックベクターを含むすべてのバイオメトリックベクターが、前記ファジーボールトと共に使用可能な所定のフォーマットに適合する、請求項16記載のセキュリティー方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本願は、2019年3月17日に出願された米国出願第16/355,824号の継続出願であり、2019年3月14日に出願された、「IMPROVING COMPUTER SYSTEM SECURITY USING A BIOMETRIC AUTHENTICATION GATEWAY FOR USER SERVICE ACCESS WITH A DIVIDED AND DISTRIBUTED PRIVATE ENCRYPTION KEY」を名称とする、出願番号第62/818,629号の優先権を主張するものであり、本明細書にその全体が組み入れられる。
【0002】
本発明は、コンピューターシステムセキュリティーの分野に関し、より具体的には、分割型および分配型秘密暗号鍵を用いたユーザサービスアクセスのためのバイオメトリック認証ゲートウェイを使用するコンピューターシステムセキュリティーの改良に関する。
【背景技術】
【0003】
セキュリティーは、カスタマーサービス応答時間および費用のような他のビジネス推進要素とバランスをとらなければならない、大抵のコンピューターシステムにとっての主要な関心事である。コンピューターシステムの複雑さが増すにつれて、そのセキュリティー問題も増す。あらゆるハードウェアおよびソフトウェアが、コンピューターシステムを脆弱性にさらす可能性を有する。物理的セキュリティー、伝送セキュリティー、データセキュリティー、機能セキュリティー、またはデジタルセキュリティーにおける脆弱性は、悪意のある存在によって利用され得る。
【0004】
ビジネスまたは組織が直接制御するコンピューターシステムの要素に加えて、システムは、それに接続する外部デバイスからの攻撃から自身を守ることができなければならない。エンドユーザデバイスはしばしば、財務データまたは他の貴重なデータ(例えば、銀行資金、投資ポートフォリオ等)へのアクセスを提供するであろう機密情報(例えば、ユーザ名、パスワード、暗号鍵等)にアクセスする、悪意ある攻撃の標的である。主要な市販オペレーティングシステム(OS)は、セキュリティーではなく利便性および使い勝手を最大限にすることを目標として消費者用に設計されたことは周知であるので、コンピューターシステムにとってそれらのユーザのデバイスからの攻撃をかわす継続的な必要性が存在するであろう。
【0005】
これらのセキュリティー問題への種々のアプローチが何年にもわたって開発されてきた。典型的には、そのようなアプローチは、物理的またはデータセキュリティーのようなコンピューターシステムのセキュリティーニーズの一局面のみに集中するものであり、システムの機能のその局面、例えば物理的セキュリティーのためのバイオメトリックの使用、またはデータ暗号化のための公開鍵基盤(PKI)のみを改良する。バイオメトリックセキュリティーは、最高レベルのセキュリティーを提供すると考えられるが、その適用はしばしば、ソフトウェアまたは通信ではなく、場所またはデバイスの物理的アクセス制御に限定される。
【0006】
PKIは依然として、通信の暗号化/解読のために使用される。比較的安全であると考えられるが、ユーザの秘密暗号鍵を安全に保つには、根本的な欠陥が残る。すなわち、ユーザの秘密暗号鍵のセキュリティーが危険にさらされた(すなわち、マルウェアによってアクセスされた)場合、秘密鍵を有するいかなる存在もユーザになりすますことができる。PKIのような大抵の電子セキュリティープロトコルは、秘密鍵を使用する人物が実際のユーザであることを確認しない。
【0007】
したがって、必要とされているのは、コンピューターシステムのサービスおよびユーザの秘密暗号鍵にバイオメトリックセキュリティーアクセス制御を組み込んだアプローチである。そのような解決策は、提供されたサービスにアクセスするためにユーザの身元のバイオメトリック照合を必要とする、認証ゲートウェイを有するであろう。ユーザの秘密暗号鍵は、3つの部分に分割され、その部分は、別個のシステムコンポーネント上に格納されるであろう。
【発明の概要】
【0008】
簡単な概要
本発明の一局面は、ネットワーク対応のエンドユーザデバイス、エンドユーザデバイスに利用可能なサービス、およびバイオメトリック認証ゲートウェイから構成される安全なコンピューターシステムアーキテクチャを含むことができる。各サービスは、予め定められた最低レベルのコンピューターおよびネットワークセキュリティーを満たす1つまたは複数の適切に構成されたサーバならびに/またはブロックチェーンネットワークを介して提供されることができる。ブロックチェーンネットワークは、非ネイティブアプリケーション、デジタルコントラクト、および非ネイティブトークンの使用をサポートすることができる。前記サービスは、各エンドユーザデバイス上で動作する対応するソフトウェアアプリケーションを介してアクセスされることができる。バイオメトリック認証ゲートウェイは、ユーザのバイオメトリックベクターの確認に基づいて、エンドユーザデバイスによるサービスへのアクセスを制御することができる。各エンドユーザデバイスおよびそれらのそれぞれのユーザによる、バイオメトリック認証ゲートウェイへの登録が必要とされる場合がある。この登録は、ユーザ用の登録バイオメトリックベクターと、それぞれのエンドユーザデバイスの識別名に対する関係とを確立することができる。エンドユーザデバイスと、サーバおよび/または前記サービスを提供するコンピューティングシステムと、バイオメトリック認証ゲートウェイとの間のネットワーク通信は、ユーザ用に生成された秘密暗号鍵を3つの部分に分けその3つの部分をそれぞれのエンドユーザデバイスとバイオメトリック認証ゲートウェイとの間で分配する改良型公開鍵基盤(PKI)アプローチを使用してセキュリティー保護されることができる。3つの部分のうちの2つは、ユーザのそれぞれのバイオメトリックベクターに基づいてファジーボールト内に入れられることができる。再構築のためにファジーボールトからユーザのそれぞれの秘密暗号鍵の2つの部分を取り出すことは、ユーザのそれぞれの登録バイオメトリックベクターに対するユーザのバイオメトリック認証の成功なしに実施されることはなく、ユーザのみがサービスを実行できることを確実にする。
【0009】
本発明の別の局面は、公開鍵基盤(PKI)を介してセキュリティー保護された通信を交換するために、コンピューターシステムによる使用のための秘密暗号鍵の生成で始まる秘密暗号鍵をセキュリティー保護するための方法を含むことができる。コンピューターシステムは、そのコンポーネントおよび/またはサービスへのアクセスを制御するためにバイオメトリック認証ゲートウェイを利用する安全なシステムアーキテクチャにしたがって構成されることができる。コンピューターシステムのユーザは、それぞれの登録バイオメトリックベクターおよびそれぞれのエンドユーザデバイスの識別を確立するために、バイオメトリック認証ゲートウェイに登録することを要求される場合がある。生成された秘密暗号鍵は、予め定められた長さの3つの部分に分けられることができる。分けられた秘密暗号鍵の第一の部分および第二の部分は、それぞれのユーザの登録バイオメトリックベクターから一意的な要素を組み込む所定の暗号化技術を使用して、暗号化されることができる。第一および第二の部分へのその後のアクセスは、それぞれのユーザによるバイオメトリック認証の成功を必要とする場合がある。秘密暗号鍵の3つの部分は次に、バイオメトリック認証ゲートウェイとエンドユーザデバイスとの間で格納されることができる。3つの部分のうちの1つまたは2つが危険にさらされた場合、秘密暗号鍵は、危険にさらされないままでいることができる。
【0010】
本発明のさらに別の局面は、ユーザおよびそれぞれのエンドユーザデバイスの、安全なコンピューターシステムのバイオメトリック認証ゲートウェイへの登録で始まる、コンピューターシステムセキュリティー方法を含むことができる。この登録は、ユーザのための登録バイオメトリックベクターおよびエンドユーザデバイスのための一意的なデバイスIDを生成することができる。バイオメトリックベクターは、エンドユーザデバイスによって取り込まれたとおりのユーザのバイオメトリックデータの1つまたは複数の項目から抽出されたデータ点の一意的なサブセットであることができる。バイオメトリックベクターは、バイオメトリックベクターを利用する所定の暗号化技術を使用して暗号化されることができ、エンドユーザデバイスに対してローカルに格納されることができる。ユーザに属する公開鍵基盤(PKI)秘密暗号鍵は、秘密暗号鍵を3つの部分に分け、3つの部分をエンドユーザデバイスと安全なコンピューターシステムの1つまたは複数のコンポーネントとの間で分配することによって、セキュリティー保護されることができる。3つの部分の少なくとも2つは、ユーザの登録バイオメトリックベクターを利用する所定の暗号化技術を使用して暗号化されることができる。3つの部分のうちの1つまたは2つが危険にさらされた場合、秘密暗号鍵は、危険にさらされないままであることができる。安全なコンピューターシステムによって提供されるサービスにアクセスするため、またはユーザのセキュリティー保護された秘密暗号鍵を必要とするタスクを実行するための要求に応答して、ユーザ用の新たに取り込まれたバイオメトリックベクターは、ユーザのそれぞれの登録バイオメトリックベクターに対して認証されることができる。このバイオメトリック認証を実施しないと、その要求の自動拒否が起こることがある。バイオメトリック認証が成功したら、バイオメトリック認証ゲートウェイによって示されるように、その要求が取り扱われることができる。バイオメトリック認証が失敗したら、バイオメトリック認証ゲートウェイによって示されるように、その要求が拒否されることができる。
【図面の簡単な説明】
【0011】
図面の幾つかの見方の簡単な説明
図1】本明細書において開示される発明の様相の態様にしたがう、バイオメトリック認証ゲートウェイを特徴とする安全なコンピューターシステムアーキテクチャの図である。
図2】本明細書において開示される発明の様相の態様にしたがう、安全なコンピューターシステムアーキテクチャを実装するシステムのブロック線図である。
図3】本明細書において開示される発明の様相の態様にしたがう、安全なエンドユーザデバイスの基本的内部通信アーキテクチャを例証する。
図4】本明細書において開示される発明の様相の態様にしたがう、安全なコンピューターシステムアーキテクチャを用いる使用のための安全なエンドユーザデバイスの概略図である。
図5】本明細書において開示される発明の様相の態様にしたがう、ユーザの秘密暗号鍵のための改良型セキュリティーを描写する図を提示する。
図6】本明細書において開示される発明の様相の態様にしたがう、RISENと相互作用するためにBIBLOSエンドユーザデバイスをバイオメトリック認証ゲートウェイに登録するプロセスを説明する相互作用図を提示する。
図7】本明細書において開示される発明の様相の態様にしたがう、RISENと相互作用するために安全でないエンドユーザデバイスをバイオメトリック認証ゲートウェイに登録するプロセスを説明する相互作用図を提示する。
図8】本明細書において開示される発明の様相の態様にしたがう、バイオメトリック登録プロセスを詳述する方法のフローチャートである。
図9】本明細書において開示される発明の様相の態様にしたがう、バイオメトリック認証プロセスを説明する方法のフローチャートである。
図10】本明細書において開示される発明の様相の態様にしたがう、BIBLOSエンドユーザデバイスのブロックチェーンジェネシスプロセスを説明する相互作用図を提示する。
図11】本明細書において開示される発明の様相の態様にしたがう、データを新しいBIBLOSデバイスに復元するためのプロセスを説明する相互作用図を提示する。
図12】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのための特徴図である。
図13】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションの残高を見る機能を説明する相互作用図である。
図14】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのウォレットを作成する機能を説明する相互作用図を提示する。
図15】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのウォレット名を変更する機能を説明する方法のフローチャートである。
図16】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのクリップボードにコピーする特徴を説明する方法のフローチャートである。
図17】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのERC20トークンを追加する機能を説明する相互作用図を示す。
図18】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのERC20トークンを削除する機能を説明する方法のフローチャートである。
図19】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのトランザクション履歴を得る機能を説明する相互作用図を提示する。
図20】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのERC20トークンを転送する機能を説明する相互作用図を提示する。
図21】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのRISENトークンを転送する機能を説明する相互作用図を提示する。
図22】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのRISENトークントランザクションを取り消す機能を説明する相互作用図を提示する。
図23】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのガス(gas)を計算する機能を説明する相互作用図を提示する。
図24】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションの公開アドレスQRコードを示す機能を説明する方法のフローチャートである。
図25】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのガスリミットを設定する機能を説明する方法のフローチャートである。
図26】本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのガス価格を設定する機能を説明する方法のフローチャートである。
【発明を実施するための形態】
【0012】
詳細な説明
開示される発明の態様は、コンポーネント/サービスアクセスを制御するためにバイオメトリックを使用すること、および秘密暗号鍵をセキュリティー保護するための改良されたアプローチと共にバイオメトリックを使用することによって、コンピューターシステムアーキテクチャのセキュリティーを改良するための解決策を提示することができる。第一に、バイオメトリック認証ゲートウェイは、リアルタイム・インテグリティ安全環境(Real-time Integrity Secure Environment)(RISEN)によって提供される安全なサービスへのエンドユーザデバイスのアクセスを許可する/拒否するための制御点として使用されることができる。許可または拒否は、ユーザのバイオメトリック認証に基づくことができる。バイオメトリック認証は、エンドユーザデバイスによってリアルタイムで取り込まれたバイオメトリックベクターが、ユーザがバイオメトリック認証ゲートウェイに登録するときに作り出された登録バイオメトリックベクターと比較されることを必要とする場合がある。
【0013】
改良された秘密暗号鍵セキュリティーは、鍵を3つの部分に分割することができる。3つの部分のうちの2つは、暗号化されることができる。暗号化技術は、ファジーボールトスキームなど、基礎としてユーザのバイオメトリックベクターを使用することができる。2つのファジーボールトおよび1つの非暗号化された部分は次に、バイオメトリック認証ゲートウェイおよびブロックチェーンネットワークのようなRISENの2つ以上のコンポーネントによって格納されることができる。
【0014】
当技術分野における当業者によって認識されるであろうように、本発明の局面は、システム、方法またはコンピュータープログラム製品として具現化され得る。したがって、本発明の局面は、すべて概して本明細書において「回線」、「モジュール」もしくは「システム」と称され得る、完全にハードウェアの実施態様、完全にソフトウェアの実施態様(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、またはソフトウェア局面およびハードウェア局面を組み合わせた実施態様の形態をとり得る。さらに、本発明の局面は、1つまたは複数のコンピューター可読媒体(そこに具現化されたコンピューター可読プログラムコードを有する)に具現化されたコンピュータープログラム製品の形態をとり得る。
【0015】
1つまたは複数のコンピューター可読媒体の任意の組み合わせが利用され得る。コンピューター可読媒体は、コンピューター可読信号媒体またはコンピューター可読記憶媒体であり得る。コンピューター可読記憶媒体は例えば、非限定的に電子、磁気、光学、電磁気、赤外線または半導体のシステム、装置、またはデバイス、あるいは前述のものの任意の適切な組み合わせであり得る。コンピューター可読記憶媒体のさらに特定の例(非網羅的なリスト)は以下を含むであろう:1つまたは複数のワイヤを有する電気的接続、携帯用コンピューターディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)、消去可能プログラマブル読出し専用メモリ(EPROMまたはフラッシュメモリ)、光ファイバー、携帯用コンパクトディスク読出し専用メモリ(CD-ROM)、光学式記憶デバイス、磁気記憶デバイス、または前述のものの任意の適切な組み合わせ。本文書の文脈において、コンピューター可読記憶媒体は、命令実行システム、装置もしくはデバイスによる、またはそれと関連する使用のためのプログラムを含むかまたは格納することができる、任意の有形的表現媒体であり得る。
【0016】
コンピューター可読信号媒体は、例えばベースバンド内にまたは搬送波の一部として、そこに具現化されたコンピューター可読プログラムコードを有する伝搬データ信号を含み得る。そのような伝搬信号は、非限定的に、電磁気的、光学的、またはそれらの任意の適切な組み合わせを含む、任意の様々の形態をとり得る。コンピューター可読信号媒体は、コンピューター可読記憶媒体ではなく、かつ命令実行システム、装置もしくはデバイスによるかまたはそれと関連する使用のためのプログラムを通信する、伝搬する、または運搬することができる、任意のコンピューター可読媒体であり得る。
【0017】
コンピューター可読媒体上に具現化されたプログラムコードは、非限定的にワイヤレス、有線、光ファイバーケーブル、RFなど、または前述のものの任意の適切な組み合わせを含む、任意の適切な媒体を使用して伝送され得る。本発明の局面のための動作を行うためのコンピュータープログラムコードは、Java、Smalltalk、C++等のようなオブジェクト指向プログラミング言語、および「C」プログラミング言語または類似のプログラミング言語のような従来の手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組み合わせで書かれ得る。プログラムコードは、完全にユーザのコンピューター上で、部分的にユーザのコンピューター上で、スタンドアローンのソフトウェアパッケージとして、部分的にユーザのコンピューター上かつ部分的にリモートコンピューター上で、または完全にリモートコンピューターもしくはサーバ上で、実行され得る。後者の場面では、リモートコンピューターは、ローカルエリアネットワーク(LAN)または広域ネットワーク(WAN)を含む任意のタイプのネットワークを通じてユーザのコンピューターに接続され得るか、あるいは接続は、外部コンピューターに対して行われ得る(例えば、インターネットサービスプロバイダーを使用してインターネットを通じて)。
【0018】
本発明の局面は、本発明の態様にしたがう方法、装置(システム)およびコンピュータープログラム製品のフローチャート図および/またはブロック線図を参照して以下で説明される。フローチャート図および/またはブロック線図の各ブロック、ならびにフローチャート図および/またはブロック線図中のブロックの組み合わせは、コンピュータープログラム命令によって実現されることができることは理解されるであろう。これらのコンピュータープログラム命令は、汎用コンピューター、専用コンピューター、または他のプログラマブルデータ処理装置のプロセッサーに提供されて機械を生産し得、その結果、コンピューターまたは他のプログラマブルデータ処理装置のプロセッサーを介して実行する命令は、フローチャートおよび/またはブロック線図の1つまたは複数のブロックにおいて指定される機能/動作を実現するための手段を作成する。
【0019】
これらのコンピュータープログラム命令はまた、コンピューター、他のプログラマブルデータ処理装置、または他のデバイスに特定の方法で機能するように指示することができるコンピューター可読媒体中に格納され得、その結果、コンピューター可読媒体中に格納された命令は、フローチャートおよび/またはブロック線図の1つまたは複数のブロックにおいて指定される機能/動作を実現する命令を含む、製造物品を生産する。
【0020】
コンピュータープログラム命令はまた、コンピューターまたは他のプログラマブル装置上で実行する命令が、フローチャートおよび/またはブロック線図の1つまたは複数のブロックにおいて特定される機能/動作を実現するためのプロセスを提供するように、コンピューター、他のプログラマブルデータ処理装置、または他のデバイス上にロードされ、一連の動作工程がコンピューター、他のプログラマブル装置または他のデバイス上で実施されるようにして、コンピューター実現型プロセスを生成し得る。
【0021】
図1は、本明細書において開示される発明の様相の態様にしたがう、バイオメトリック認証ゲートウェイ125を特徴とする安全なコンピューターシステムアーキテクチャの図100である。図100において、種々のエンドユーザデバイス105は、リアルタイム・インテグリティ安全環境またはRISEN120にアクセスするために、ローカルネットワーク110を使用してインターネット115に接続することができる。RISEN120は、安全なコンピューターシステムアーキテクチャの実施態様であることができる。
【0022】
エンドユーザデバイス105は、RISEN120と相互作用するように構成された種々のコンピューティングデバイスを意味することができる。最高レベルのセキュリティーのために、エンドユーザデバイス105は、INTEGRITYコンピューターまたはBIBLOS(Biometrics BLOckchain Secure)デバイス(例えば、スマートフォンまたはタブレットコンピューター)のような特別に構成されたHOYOSデバイスであることができる。これらのデバイス105は、最高のセキュリティーを必要とする軍事および商用システムのために使用されるINTEGRITY-178Bに基づく、高度に安全なINTEGRITYオペレーティングシステムを利用することができる。INTEGRITY以外のオペレーティングシステム、例えばANDROID OSを実行するエンドユーザデバイス105は、それらそれぞれのオペレーティングシステムに固有の既存および潜在的な脆弱性に起因して、より低い程度のエンドツーエンドのシステムセキュリティーで利用される場合がある。
【0023】
ローカルネットワーク110は、エンドユーザデバイス105をインターネット115にリンクするネットワークノードを形成するハードウェアおよび/またはソフトウェア要素を意味することができる。図100に示されるように、ローカルネットワーク110は、ワイヤレスネットワーキング要素だけでなく、セルラー方式の要素を含むことができる。エンドユーザデバイス105および利用可能な通信オプションの位置に依存して、ローカルネットワーク110は、複数のネットワークおよび/または異なるタイプのネットワークから構成されることができる。例えば、エンドユーザデバイス105は、セルラーネットワークに接続し、次に光ファイバーネットワークに接続して、インターネット115に到達することができ;ここでローカルネットワーク110はセルラーおよび光ファイバーネットワークである。
【0024】
バイオメトリック認証ゲートウェイ125は、ユーザのバイオメトリックデータに基づいてRISEN120中で実行する安全なサービス130~150へのアクセスを制御するのに必要なハードウェアおよび/またはソフトウェアコンポーネントであることができる。バイオメトリック認証ゲートウェイ125は、国際電気電子技術者協会(International Electrical and Electronics Engineers Association)(IEEE)、特にIEEE2410によって維持されているバイオメトリックオープンプロトコル標準(Biometric Open Protocol Standard)(BOPS)を利用することができる。
【0025】
ユーザは、Genesisと呼ばれるプロセスにおいてバイオメトリック認証ゲートウェイ125に登録することができる。Genesisの間に、ユーザは、ユーザのエンドユーザデバイス105上のアプリケーションでデフォルトのSSL証明書を使用して登録することができる。引き換えに、エンドユーザデバイス105は、バイオメトリック認証ゲートウェイ125からその後の双方向SSL通信のための一意的なクライアント証明書を受信することができる。バイオメトリック認証ゲートウェイ125は、複数のサービスを管理することができ、ここで、各サービスは、ユーザ毎に一意的なクライアント証明書を利用する。追加のセキュリティーのために、バイオメトリック認証ゲートウェイ125は、各プロセスのメモリを守る、ソフトウェア・ガード・エクステンションズ(Software Guard eXtensions)(SGX)プロセッサーのトラステッド実行環境(Trusted Execution Environment)(TEE)において実行することができる。
【0026】
バイオメトリック認証ゲートウェイ125は、RISEN120内の安全なサービス130~150のいずれかにアクセスするためにユーザのエンドユーザデバイス105を介してそれらのバイオメトリックベクターを成功裡に認証するようユーザに要求することができ、これにより、登録されたユーザのみがアクセスを許可されることを確実にする。図100に示されるように、これらのサービスは、メッセージおよびVoIPサービス130、メンバーポータルサービス135、暗号通貨サービス140、データインテグリティサービス145、およびプッシュトゥトーク(PTT)サービス150を含むことができる。安全なサービス130~150のすべては、それらの動作において、バイオメトリック認証ゲートウェイ125を介して提供される、バイオメトリックセキュリティーを組み込むように構成されることができる。
【0027】
図2は、本明細書において開示される発明の様相の態様にしたがう、安全なコンピューターシステムアーキテクチャを実現するシステム200のブロック線図である。システム200は、図100の安全なコンピューティングアーキテクチャの実施態様を表すことができる。
【0028】
システム200において、ユーザ205は、安全なサービスサーバ270によって提供されるサービスにアクセスするために、ユーザのエンドユーザデバイス210上で動作する安全なサービスアプリケーション215を利用してバイオメトリック認証ゲートウェイ230と相互作用することができる。エンドユーザデバイス210は、非限定的にモバイルデバイス、スマートフォン、ラップトップコンピューター、デスクトップコンピューター、タブレットコンピューター、ノートブック型コンピューター等を含む、ネットワーク280通信ができるコンピューティングデバイスであることができる。
【0029】
エンドユーザデバイス210は、ユーザ205のバイオメトリックベクター227を格納するためのデータストア225だけでなく、ユーザ205のバイオメトリックデータを取り込むための1つまたは複数のバイオメトリックセンサセンサ220を含むことができる。バイオメトリックセンサ220の例は、デジタルカメラ、マイクロホン、赤外線センサ、指紋読み取り機等を非限定的に含むことができる。エンドユーザデバイス210はまた、バイオメトリックセンサ220によって必要とされる、任意の必要とされる処理ソフトウェアを含むことができる。
【0030】
安全なサービスアプリケーション215は、図100に示されるような提供される安全なサービスを利用するために、RISENを構成するコンポーネントと相互作用するための手段をユーザ205に提供することができる。安全なサービスアプリケーション215は、RISENコンポーネントと相互作用するために必要とされるすべての機能性を包含することができる。例えば、安全なサービスアプリケーション215は、ユーザ205がブロックチェーンネットワーク245と相互作用するために、暗号通貨ウォレットコンポーネントを含むことができる。
【0031】
これらの安全なサービスは、対応する安全なサービスサーバ270によって表されることができ、ブロックチェーンネットワーク245との相互作用を含むことができる。安全なサービスサーバ270にアクセスするおよび/またはブロックチェーンネットワーク245を利用する機能を実施するという要求は、バイオメトリック認証ゲートウェイ230に、ユーザ205の暗号化されたバイオメトリックベクター227のリアルタイム照合を実施するよう要求することができる。ユーザ205のバイオメトリックベクター227は、バイオメトリック認証ゲートウェイ230への登録の間に確立されることができる。バイオメトリックベクター227は、エンドユーザデバイス210に固有のおよび/またはそれに取り付けられたバイオメトリックセンサ220によって取り込まれたとおりの、ユーザ205のバイオメトリックデータの1つまたは複数の項目から合成される一意的なデジタルファイルであることができる。
【0032】
バイオメトリックベクター227は、エンドユーザデバイス210に対してローカルに格納されているので、それは追加のセキュリティーのために暗号化されることが推奨される場合がある。ユーザ205のバイオメトリックベクター227に基づくファジーボールト暗号化技術が利用されることがさらに推奨される場合がある。特定の多項式関数が選択されて、バイオメトリックベクター227のデータを一セットの点に投影するために使用されることができる。この一セットの点は次に、多数の無関係の点(すなわち、チャフ)内に隠されて、ファジーボールトを構築することができる。そのボールトが、特定の一セットのバイオメトリック特徴に対応付ける一セットの点を含むと仮定すれば、類似の一セットのバイオメトリック特徴のみが使用されて、多項式補間を使用してファジーボールトをロック解除することができる。
【0033】
バイオメトリック認証ゲートウェイ230は、エンドユーザデバイス210相互作用のためにマルチレベルのバイオメトリックベースのセキュリティープロトコルを提供し、かつユーザ205のバイオメトリックベクター227のための検証機関として働くように構成された、遠隔設置されたコンピューティングデバイスであることができる。バイオメトリック認証ゲートウェイ230は、ユーザ205のバイオメトリックベクター227の検証の結果に基づいて、安全なサービスサーバ270のサービスおよび/またはブロックチェーンネットワーク245へのアクセスを許可する/拒否することができる。バイオメトリック認証ゲートウェイ230は、バイオメトリックオープンプロトコル標準(Biometric Open Protocol Standard)(BOPS)、IEEE-2410を利用することができる。バイオメトリック認証ゲートウェイ230はまた、予め定められた許容可能レベルのセキュリティーを提供する、ハードウェアおよび/またはソフトウェアコンポーネントを利用することができる。
【0034】
バイオメトリック認証ゲートウェイ230は、登録されたユーザ205のためのデバイスデータ240が格納されるデータストア235を含むことができる。デバイスデータ240は、ユーザ205およびユーザ205のエンドユーザデバイス210を非機密的な方法で関連付ける、格納された情報を意味することができる。すなわち、ユーザ205およびユーザ205のエンドユーザデバイス210を関連付けるために使用される情報は、デバイスデータ240への不正アクセスがユーザ205および/またはユーザ205のエンドユーザデバイス210への直接的なリンクを提供しないように、バイオメトリック認証ゲートウェイ230に特有である、および/または非個人データに基づくことができる。
【0035】
加えて、デバイスデータ240は、他の、ユーザ205に関連する非個人情報、例えば非限定的に、ユーザ205の秘密暗号鍵の1つまたは複数のセグメント、ユーザ205の公開ブロックチェーンアドレス、それらの個人のセキュア・ソケット・レイヤー(secure sockets layer)(SSL)証明書のためのパスワード等を格納することができる。
【0036】
バイオメトリック認証ゲートウェイ230は、もし危険にさらされた場合にユーザ205を悪用可能な脆弱性にさらすであろう機密性のデータを格納しないということが留意されるべきである。加えて、ユーザ205のエンドユーザデバイス210とバイオメトリック認証ゲートウェイ230との間の通信は、相互(双方向)認証および571ビットSSL楕円曲線トランスポート層暗号化を利用することができる。
【0037】
ブロックチェーンネットワーク245は、その固有の高レベルのデータセキュリティーのために利用されることができる。当技術分野において公知であるように、ブロックチェーンネットワーク245は、チェーン内の数学的にリンクされたブロック-ブロックチェーン260としてトランザクションを検証および格納する、ノード250で構成されることができ;各ノード250は、関連したデータストア255内にブロックチェーン260の少なくとも一部分を格納する。ブロックチェーンネットワーク245は、非ネイティブアプリケーション、デジタルコントラクト、および非ネイティブトークン、例えばETHEREUM、STELLAR、NEO、NEM、QTUM、HYPERLEDGER、CARDANO、EOS、QUORUM等をサポートすることが可能であることができる。一つの実施態様では、エンドユーザデバイス210はまた、ブロックチェーンネットワーク245のノード250として機能することができる。
【0038】
ブロックチェーン260は、復旧目的のために、デバイス所有権情報262およびユーザ205の秘密暗号鍵の1つまたは複数の部分264を格納するために使用されることができる。加えて、RISENは、その安全なサービスにアクセスする/それを購入するための特定の非ネイティブトークンに対してブロックチェーンネットワーク245を利用することができる。安全なサービスアプリケーション215は、ユーザ205がそれらの非ネイティブトークン上にバイオメトリックロック266を置くことを許可することができ、非ネイティブトークンの所有権を譲渡するトランザクションが発生した場合、ブロックチェーンネットワーク245にトークン所有者のバイオメトリック認証を作動させるように要求する。
【0039】
システム200の高度なセキュリティー実施態様において、エンドユーザデバイス210およびバイオメトリック認証ゲートウェイ230は、大抵の市販のオペレーティングシステム、例えばINTEGRITYリアルタイムオペレーティングシステム(RTOS)よりも、より高程度のセキュリティーを有するオペレーティングシステムを利用することができる。
【0040】
本明細書で使用されるように、提示されたデータストア225、235、および255は、デジタル情報を格納するように構成された物理的または仮想の記憶スペースであることができる。データストア225、235、および255は、非限定的に磁気ディスク、光学ディスク、半導体メモリ、デジタルコード化プラスチックメモリ、ホログラムメモリ、または任意の他の記録媒体を含む、任意のタイプのハードウェア内に物理的に実現されることができる。データストア225、235、および255は、複数の物理的デバイスから形成される記憶ユニットだけでなく、スタンドアローンの記憶ユニットであることができる。加えて、情報は、様々の方法でデータストア225、235、および255内に格納されることができる。例えば、情報は、データベース構造内に格納されることができるか、またはファイル記憶システムの1つまたは複数のファイル内に格納されることができ、ここで、各ファイルは、情報検索目的のためにインデックス化されてもよいし、あるいはされなくてもよい。さらに、データストア225、235、および/または255は、格納された情報を不正アクセスから守るために、1つまたは複数の暗号化機構を利用することができる。
【0041】
ネットワーク280は、搬送波内の符号化されたデータを伝達するために必要な、任意のハードウェア/ソフトウェア/およびファームウェアを含むことができる。データは、アナログまたはデジタル信号内に含まれ、データまたは音声チャネルを通じて伝達されることができる。ネットワーク280は、通信がコンピューティングデバイスコンポーネント間で、および統合デバイスコンポーネントと周辺デバイスとの間で交換されるために必要なローカルコンポーネントおよびデータ経路を含むことができる。ネットワーク280はまた、データネットワーク、例えばインターネットを一緒に形成する、ネットワーク機器、例えばルーター、データ回線、ハブおよび仲介サーバを含むことができる。ネットワーク280はまた、回路ベースの通信コンポーネントおよびモバイル通信コンポーネント、例えば電話方式スイッチ、モデム、セルラー方式通信塔等を含むことができる。ネットワーク280は、回線ベースおよび/またはワイヤレス通信経路を含むことができる。
【0042】
図3は、本明細書において開示される発明の様相の態様にしたがう、安全なエンドユーザデバイス300の基本的内部通信アーキテクチャを例証する。安全なエンドユーザデバイス300は、図1のINTEGRITYコンピューターまたはBIBLOSデバイスを意味することができ、システム200のエンドユーザデバイスとして使用されることができる。
【0043】
安全なエンドユーザデバイス300は、ハードウェア305、INTEGRITYのような安全なリアルタイムOS(RTOS)310、一セットの安全なサービス315、およびユーザ空間320で構成されることができる。ハードウェア305は、エンドユーザデバイス300を構成する種々の電子コンポーネントおよび回路構成を意味することができる。安全なRTOS310は、CPUサイクルおよびメモリのようなハードウェア305によって提供されるリソースを安全に管理するように設計された、ソフトウェアアプリケーションを意味することができる。
【0044】
ユーザ空間320は、ユーザソフトウェアアプリケーションが実行するメモリ領域を意味する抽象概念であることができる。ユーザ空間320のソフトウェアアプリケーションは、ユーザによって直接インストールされることができる(すなわち、ユーザがアプリストア(app store)から購入およびダウンロードするアプリケーション)、またはエンドユーザデバイス300の製造業者/販売業者によって直接インストールされることができる(すなわち、スマートフォン上ですぐに利用可能な電話機能)。さらに、ユーザ空間320は、ソフトウェアアプリケーションが機能する必要があるドライバーまたはライブラリーのような、補助的アプリケーションを含むことができる。
【0045】
ユーザ空間320から安全なRTOS310またはハードウェア305への通信は、一セットの安全なサービス315によって評価されることを必要とされる場合がある。安全なエンドユーザデバイス300に対してローカルで実行する安全なサービス315は、RISENによって提供される安全なサービスとは別個であることが留意されるべきである。すなわち、エンドユーザデバイス300上の安全なサービス315は、パスワード管理またはファイアーウォールセキュリティーのような特殊なローカルデバイス機能を実施することができる;RISENによって提供される安全なサービスとの相互作用は、生じることができるが、前提とされないか、または必ずしも必要とされない。
【0046】
従来のエンドユーザデバイスにおいて、ユーザ空間320内の要素は、OSまたはハードウェアコンポーネントと直接通信することができ、このことは、これらのコンポーネントが危険にさらされることを可能にする。安全なサービスのセット315は、ユーザ空間320によって要求される安全なRTOS310またはハードウェア305との相互作用が、潜在的に有害であるかどうかを判断することができる。さらに、要求された相互作用に関連する特権のレベルに依存して、安全なサービス320は、ユーザの身元のバイオメトリック照合を必要とする場合がある。
【0047】
例えば、ユーザは、安全なエンドユーザデバイス300のためのセッション管理機能にアクセスするよう試みることができる。これらの機能によって取り扱われる情報は、機密である場合があり、ユーザのみに制限されるべきである。したがって、安全なサービス315のうちの1つは、アクセスを許可する前に、ユーザのバイオメトリックベクターの即時バイオメトリック照合を要求するように設計されることができる。
【0048】
ユーザ空間320内にインストールされるソフトウェアアプリケーションが安全なRTOS310およびハードウェア305と自由に相互作用する能力を除去することによって、安全なエンドユーザデバイス300の全体的なセキュリティーは、追加のハードウェアを必要とすることなく、またはユーザ空間320を再設計することなく、改良されることができる。
【0049】
図4は、本明細書において開示される発明の様相の態様にしたがう、安全なコンピューターシステムアーキテクチャと共に使用するための安全なエンドユーザデバイス400の概略図である。安全なエンドユーザデバイス400は、図1からのHOYOS BIBLOSデバイスまたはINTEGRITYコンピューターの特定の実施態様を意味することができる。
【0050】
安全なエンドユーザデバイス400は、ハードウェア405およびソフトウェア435コンポーネントで構成されることができる。ハードウェア405は、1つまたは複数のプロセッサー410、メモリおよびストレージ415、インプット/アウトプット(I/O)コンポーネント425、トランシーバー430等を含むことができる。プロセッサー410は、算術的、論理的およびインプット/アウトプット操作を実施することによってソフトウェア435の機械可読命令を実行するセントラルプロセッサーユニット(CPU)を指す場合がある。複数のプロセッサー410コンポーネントが、コンピューティング能力を高め、負荷を分配させるために使用されることができる。さらに、特殊なまたは専用のプロセッサー410またはプロセッサー410領域は、特定の機能、例えばトラステッド実行環境(Trusted Execution Environment)(TEE)を作り出すための主要プロセッサー410の安全な領域を取り扱うために使用されることができる。
【0051】
INTEL SKYLAKEプロセッサー410は、それらがトラステッド実行環境(TEE)をサポートするソフトウェア・ガード・エクステンションズ、SGXを特徴とするので、好ましい場合がある。TEEは、コード、およびコードが共に働くデータの両方が守られ、それらの秘密性(システム上の他に何もそれらをスパイすることはできない)およびインテグリティ(コードまたはデータのいかなる改ざんも検出されることができる)を確実にする、安全な環境である。SGXは、コードおよびデータを含むメモリ415の安全なブロック:孤立領域、と呼ばれるものを作り出すために使用される。孤立領域のコンテンツは、それらがRAMに書き込まれるたびに透過的に暗号化され、読み取られると解読される。プロセッサー410は、孤立領域メモリへのアクセスを支配し:孤立領域の外部から孤立領域のメモリ415にアクセスするいかなる試みもブロックされるべきである。
【0052】
SGXが提供する価値は、それがこれらの安全な環境を安全なRTOS440、マルチバイザー(mulitvisor)445、またはシステムの任意の他の層のインテグリティを信頼する必要なしに作り出されることを可能にすることである。プロセッサー410それ自体は、孤立領域を検証し、守る;したがって、プロセッサー410が信頼されている限り、孤立領域は信頼されることができる。
【0053】
メモリ/ストレージ415は、ソフトウェア435の機械可読命令を格納するために使用されることができる。メモリ/ストレージ415は、非一時的およびリムーバブルメディアだけでなく、揮発性および非揮発性要素を含むことができる。
【0054】
I/Oコンポーネント425は、インプットデータを受信し、アウトプットデータを提示するための様々の手段を意味することができる。I/Oコンポーネント425の例は、マイクロホン、スピーカ、ディスプレー、キーボード、タッチスクリーン、デジタルカメラ、センサ等を非限定的に含むことができる。安全なエンドユーザデバイサービス400内に含まれるI/Oコンポーネント425は、ソフトウェア435および/または安全なサービス455の機能をサポートすることができる。
【0055】
例えば、バイオメトリック認証サービス460は、顔認識を利用することができる。したがって、I/Oコンポーネント425は、ユーザの写真を撮るためのカメラ、および画像を処理するための顔認識ソフトウェア435を含むことを必要とされる場合がある。
【0056】
トランシーバー430は、データをワイヤレスで送信および受信することができるコンポーネントであることができる。複数のトランシーバー430が、複数の接続手段を可能にするために、安全なエンドユーザデバイス400内に含まれることができる。そのような実施態様において、安全なエンドユーザデバイス400は、予め定められたルールおよび/またはユーザに設定された好みにしたがって、利用可能な通信ネットワークを利用するように構成されることができる。
【0057】
安全なエンドユーザデバイス400のソフトウェア435コンポーネントは、メモリ/ストレージ415内に格納される機械可読命令を意味し、プロセッサー410によって実行されたとき安全なエンドユーザデバイス400に種々のタスクを実施させることができる。主要ソフトウェア435コンポーネントは、安全なリアルタイムオペレーティングシステム(RTOS)440、安全なマルチバイザー445、および安全なパーティション450を含むことができる。
【0058】
安全なRTOS440は、安全なエンドユーザデバイス400のリソース、ハードウェア405およびソフトウェア435を管理するシステムプログラムを意味することができ、共通のサービスを安全なマルチバイザー445および安全なパーティション3450に提供する。INTEGRITY RTOSは、好ましい安全なRTOS310であることができる。INTEGRITY RTOSは、Green Hills Softwareによって開発された安全なEAL6+認定オペレーティングシステムであることができる。HOYOS INTEGRITY CORPORATIONは、その種々のエンドユーザデバイス(すなわち、BIBLOSデバイスおよびINTEGRITYコンピューター)にこのオペレーティングシステムを使用するための専有権を有することができる。
【0059】
INTEGRITY RTOS440は、埋め込み開発者がそれらのアプリケーションをセキュリティー、信頼性およびパフォーマンスに対して可能な限り高い要件を満たすことを確認することができるように設計された。これを達成するために、INTEGRITY RTOS440は、埋め込みアプリケーションを隔離して守るために、ハードウェアメモリ保護を使用する。安全なパーティション450は、各タスクはそれが必要なリソースを有して、安全なRTOS440およびユーザタスクを正確に実行し、かつそれらをサービス妨害攻撃、ワームおよびトロイの木馬を含む、誤ったおよび悪質なコードから完全に守ることを保証する。
【0060】
安全なマルチバイザー445は、仮想化を作り出し管理するために必要なハードウェアおよび/またはソフトウェアコンポーネント、安全なパーティション450、例えばINTEGRITYマルチバイザーを意味することができる。当技術分野において、安全なマルチバイザー445のための他の用語は、ハイパーバイザーまたは仮想マシンモニタ(VMM)であることができる。安全なパーティション450は、機能および/またはデータを分離する仮想コンテナであることができる。各安全なパーティション450は、それ自身の専用ハードウェア405リソースのセットを有することができ;このハードウェア405分離は、プロセッサー410の機能だけでなく安全なマルチバイザー445によって強化されることができる。
【0061】
安全なパーティション450は、ローカルの安全なサービス455(それらの対応する重要データ420、例えばユーザのバイオメトリックベクターを含む)およびユーザ空間465を提供するために使用されることができる。安全なサービス455は、エンドユーザデバイス400のセキュリティーを改良し、サポートする、コアの特徴および付加価値サービスを意味することができる。安全なサービス455の例は、安全なキーボード、セッションマネージャー、ファイアーウォールおよび/またはプロキシサービス、暗号化サービス、パスワードマネージャー、脅威分析、侵入検出、ゴールデンイメージサービス、コンテンツストレージサービス等を非限定的に含むことができる。
【0062】
例えば、バイオメトリックセキュリティーサービス460は、ユーザのためのバイオメトリックデータを取り込み、バイオメトリックベクターを生成し、そして生成されたバイオメトリックベクターをユーザの格納されているバイオメトリックベクター420に対して照合するために利用される、安全なサービス455であることができる。ユーザのバイオメトリックベクター420は、バイオメトリックセキュリティーサービス460から分離した安全なパーティション450内に格納され、他の安全なパーティション450からの不正アクセスからこの重要データ420を守ることができる(バイオメトリックベクター420を収容する安全なパーティション450へのアクセスは、安全なマルチバイザー445によって強化されることができる)。
【0063】
ユーザのバイオメトリックベクター420を定義するために使用されるバイオメトリックは、近赤外線(NIR)虹彩スキャン、指紋、手形、またはそれらの組み合わせ、DNAプロファイル、顔認識、音声認識等を非限定的に含むことができる。これらのバイオメトリックの取込みは、安全なエンドユーザデバイス400に追加および/または特定のI/Oコンポーネント425を含むよう要求することができる。
【0064】
この例のバイオメトリックセキュリティーサービス460は、バイオメトリック認証ゲートウェイとの相互作用だけでなく、他の安全なサービス455、データ、クライアントソフトウェアアプリケーション475、安全なマルチバイザー445、安全なRTOS440機能、ハードウェア405コンポーネントおよび/または安全なエンドユーザデバイス400へのアクセスを守るための手段として、ローカルで使用されることができる。異なるレベルのバイオメトリック識別が、異なる項目へアクセスするために必要とされる場合がある。例えば、ロックされた安全なエンドユーザデバイス400にアクセスすることは、指紋照合を必要とする場合がある一方で、バイオメトリックベクター420を更新することは、指紋照合および顔認識を必要とする場合がある。
【0065】
もう一つの企図される実施態様において、バイオメトリックセキュリティーサービス460は、安全なエンドユーザデバイス400のメモリ/ストレージ415内に格納されているファイルへのアクセスをセキュリティー保護するために使用されることができる。これらのファイルは、システムファイルおよび/またはクライアントソフトウェアアプリケーション475によって生成されたファイルであることができる。
【0066】
もう一つの実施態様では、バイオメトリックセキュリティーサービス460は、クライアントソフトウェアアプリケーション475(例えば、スカイプ、フェイスブック、インスタグラム、スナップチャットなど)の通信機能(例えば、ボイスチャット、テキストチャット、ビデオチャットなど)をセキュリティー保護するために、またはRISENによって安全なエンドユーザデバイス400に提供される安全なサービス(例えば音声通信、テキストメッセージング、ビデオ会議など)の一部として、使用されることができる。例えば、電話をすることは、ユーザに音声認識をパスするよう要求し、安全なエンドユーザデバイス400のユーザのみに電話をかけることを許可することができる。
【0067】
さらに別の企図される実施態様において、バイオメトリックセキュリティーサービス460は、ユーザグループレベルのルールを組み込むことができる。例えば、安全なエンドユーザデバイス400は、一チームのユーザ間で共有されるリソースであることができる。バイオメトリックセキュリティーサービス460は、アクセスをこのグループのみに制限することができる。グループ内部のアクセス特権の追加の細分化もサポートされることができる。
【0068】
さらに別の実施態様において、バイオメトリックセキュリティーサービス460は、位置情報サービス(例えば、GPS、RF三角測量、固定RF/オーディオビーコン、コンピュータービジョンを備えたカメラ/ビデオ取得など)と共に動作して、アプリケーション475、コンテンツ(データ)および、安全なエンドユーザデバイス400の通信機能性をセキュリティー保護することができる。ゆえに、アクセスは、ユーザのバイオメトリックベクター420に加えて、地理的な位置によって支配されることができる。
【0069】
ユーザ空間465安全なパーティション450は、ゲストオペレーティングシステム(OS)を実行する仮想マシン(VM)470を提供するために使用されることができる。ゲストOSは、安全なRTOS440、例えばANDROID OSとは異なることができる。安全なエンドユーザデバイス400のユーザは、ゲストOS VM470内に種々のクライアントソフトウェアアプリケーション475をインストールすることができる。
【0070】
複数のゲストOS VM470は、安全なエンドユーザデバイス400上にインスタンス生成されることができる。ゲストOSは、同一または異なることができる。この状況において、各ゲストOS VM470は、パーソナルクライアントソフトウェアアプリケーション475のビジネスまたはエンタープライズクライアントソフトウェアアプリケーション475からの論理的および機能的分離を表すことができる。パーソナルクライアントソフトウェアアプリケーション475によって行われた障害または侵害がエンタープライズクライアントソフトウェアアプリケーション475に影響を与えることができないため、この分離は、エンタープライズアプリケーション475のためのセキュリティーをさらに改良することができる。
【0071】
さらに、複数のエンタープライズゲストOS VM470は、安全なエンドユーザデバイス400上で動作して、別個のセットのエンタープライズクライアントソフトウェアアプリケーション475を意味することができる。そのような状況において、安全なサービス455は、異なるセキュリティーポリシーを各エンタープライズゲストOS VM470に適用することができる。すなわち、一方のエンタープライズゲストOS VM470は、他方よりも制限される(より高い程度のセキュリティーを有する)ことができる。そのようなアプローチは、より高いレベルのセキュリティーを必要とするエンタープライズクライアントソフトウェアアプリケーション475が他のアプリケーション475を過度に制限することなく動作することを許可することができる。
【0072】
もう一つの実施態様では、ゲストOS VM470を実行するユーザ空間465は、複数のユーザ空間465における周辺デバイスドライバの冗長な仮想化を避けるために、周辺デバイスドライバーを他のゲストOS VM470に仮想化するために使用されることができる。
【0073】
本質的に、スマートフォンを使用するときに体験される典型的なユーザ環境は、ユーザ空間465安全なパーティション450において仮想化されることができる。クライアントソフトウェアアプリケーション475またはVM470が安全なRTOS440と相互作用する必要があるとき、その相互作用は最初に、適切な安全なサービス455によって精査されることができる。特定の特権レベルの要求される相互作用は、バイオメトリックセキュリティーサービス460および対応するバイオメトリック認証ゲートウェイを介する、ユーザの即時バイオメトリックベクター照合を必要とする場合がある。ユーザ空間465は、安全なRTOS440および他の安全なパーティション450から隔離されるので、ユーザ空間465において使用される危険にさらされたいかなるクライアントソフトウェアアプリケーション475も、その他の安全なパーティション450および/または安全なRTOS440のデータおよび/またはプロセスに影響を与えることはできない。
【0074】
図5は、本明細書において開示される発明の様相の態様にしたがう、ユーザの秘密暗号鍵505のための改良されたセキュリティーを描写する図を提示する。この改良されたセキュリティーアプローチは、安全なコンピューターシステムアーキテクチャのコンテキスト内において利用されることができる。
【0075】
当技術分野において公知であるように、公開鍵基盤(PKI)通信は、公開-秘密対の暗号鍵に基づくことができる。公開暗号鍵は公然と配布されるが、ユーザの秘密暗号鍵505は、守られたままであることが重要である場合があり、これは、ユーザの秘密暗号鍵505を持った誰もが前記ユーザになりすますことが可能であるからである。ゆえに、多くのセキュリティー攻撃のためのアプローチは、秘密暗号鍵505への、直接的かまたはそれらを維持するソフトウェアを通じてかのいずれかでのアクセスを得ることである場合がある。
【0076】
したがって、ユーザの秘密暗号鍵505がどのように安全なコンピューターシステムアーキテクチャ内で守られるかを改良することが、最重要である場合がある。この改良されたアプローチにおいて、ユーザの生成された秘密暗号鍵505は、3つの部分 - A 510、B 515、およびC 520に分割されることができる。部分A 510およびB 515はさらに、ファジーボールトスキームなどの暗号化を介して守られることができる。
【0077】
この改良されたアプローチにおいて、ファジーボールト525および530は、ユーザのバイオメトリックベクター内に含まれるデータのすべてまたは一部分に基づくことができる。すなわち、ユーザの秘密暗号鍵505の部分510および515を隠すために、多項式関数が選択されることができ、その係数は、鍵505内の特徴の各々を表す。次に、選択された機能を使用して、ユーザのバイオメトリックベクターからのデータは、一セットの点に投影されることができ、その一セットの点は、多数の混乱させる(throw off)「チャフ」点と一緒に組み合わされると、ファジーボールト525および530と称される構造を構成する。ボールト525および530が、特定の一セットのバイオメトリックデータに対応付ける一セットの点を含むと仮定すれば、類似の一セットのデータのみが、ボールト525および530からの取り出しを可能にし、これは、多項式補間を介して、元の多項式関数および鍵部分510および515を取り出すことを可能にする。要するに、鍵部分510および515を格納するファジーボールト525および530は、ユーザのバイオメトリックベクターでのみ開かれることができる。
【0078】
秘密暗号鍵505のためのセキュリティーをさらに増すために、各ファジーボールト525および530は、システムアーキテクチャ内の分離した安全な場所で格納されることができる。この例において、部分A 510を収容するファジーボールト525は、部分C 520と共にバイオメトリック認証ゲートウェイ545上に格納されることができる。部分B 515を収容するファジーボールト530は、BIBLOSデバイス535または他の安全なエンドユーザデバイスに対してローカルに格納されることができる。追加されるセキュリティーのために、部分B 515のファジーボールト530のコピーが、バックアップのように、ブロックチェーンネットワーク540内部に格納されることができる。
【0079】
より低いセキュリティーのエンドユーザデバイスが使用されるならば、部分A 510を含むファジーボールト525は、後の図において提示されるように、エンドユーザデバイスに対してローカルの代わりに、バイオメトリック認証ゲートウェイ545上に格納されることができる。
【0080】
もう一つの実施態様では、部分C 520も暗号化されることができる。しかしながらそのような実施態様は、3つの部分510~520すべてが暗号化/解読を必要とするので、リソースの点から見て、より高価である場合がある。3つの部分510~520のうちの2つが暗号化されることは、1つの部分C 520へのアクセスと同じくらい十分であるとみなすことができ、その他の部分510および520にアクセスすることに利点を与えない。
【0081】
図6は、本明細書において開示される発明の様相の態様にしたがう、RISENと相互作用するためにBIBLOSエンドユーザデバイス602をバイオメトリック認証ゲートウェイ606に登録するプロセスを説明する、相互作用図600を提示する。図600中に説明されているプロセスは、システム200のコンテキスト内で実施される、および/または図1中に提示された安全なコンピューターシステムアーキテクチャを利用することができる。
【0082】
プロセスは、本明細書においてBIBLOSデバイス602と称されるBIBLOSエンドユーザデバイス602で始まり、本明細書においてバイオメトリックゲートウェイ606と称されるバイオメトリック認証ゲートウェイ606へ登録すること610ができる。BIBLOSデバイス602によってとられる行動は、バイオメトリックゲートウェイ606および/またはRISENと相互作用するために、安全なサービスアプリケーションまたはBIBLOSデバイス602にインストールされた他のソフトウェアアプリケーションの使用を含むことができる。
【0083】
バイオメトリックゲートウェイ606への登録は、図8において説明されるであろう、バイオメトリック登録を実施するだけでなく、ユーザ名およびパスワードのような一般情報を提供することをユーザに促すことができる。登録プロセスの間の通信交換は、当技術分野において公知のとおり、委任代理人によってBIBLOSデバイス602に提供される、シングルユース証明書を利用することができる。
【0084】
バイオメトリックゲートウェイ606は次に、BIBLOSデバイス602がすでに登録されたかどうかを判断するために、ブロックチェーンネットワーク604に質問する615ことができる。答えを提供するために、ブロックチェーンネットワーク604は、BIBLOSデバイス602に一致する情報に関してブロックチェーンのデータをチェックする620ことができる。ブロックチェーンネットワーク604は、バイオメトリックゲートウェイ606にその答え(この例ではBIBLOSデバイス602がまだ登録されていないことである)を提供する625ことができる。
【0085】
この時点で、バイオメトリックゲートウェイ606は、第三者サービス毎にユーザの身元を照合する630ことができる。身元の照合が申し分なければ、バイオメトリックゲートウェイ606は、今やユーザの識別データをそれらのBIBLOSデバイス602およびそれらのバイオメトリックの識別情報と結び付けるすべての情報を記録することによって、登録プロセスを完了する635ことができる。バイオメトリックゲートウェイ606は次に、ユーザのための一意的なクライアント証明書をBIBLOSデバイス602に戻す640ことができる。このクライアント証明書は、バイオメトリックゲートウェイ606とのその後の通信のために使用されることができる。
【0086】
クライアント証明書の戻しは、ブロックチェーンネットワーク604と相互作用するためのユーザ暗号通貨ウォレットを作成する645ように、BIBLOSデバイス602を作動させることができる。ウォレット作成645は、ユーザのための秘密暗号鍵を生成することを含むことができる。ひとたびウォレットが作成されたら、ユーザは、RISENのウォレットサービスを申し込む650ことができる。サービス申し込みは、ユーザのバイオメトリック認証655を必要とする場合がある。
【0087】
バイオメトリック認証に成功したら、秘密暗号鍵は、図5で詳述されたとおり、3つの部分(A、B、およびC)に分割される660ことができる。秘密暗号鍵の部分AおよびBは、別々のファジーボールト内に入れられる665ことができる。BIBLOSデバイス602は次に、一意的なクライアント証明書を使用して、部分Aを含むファジーボールトおよび非暗号化された部分Cをバイオメトリックゲートウェイ606に送信する670ことができ;秘密暗号鍵の部分Bを格納するファジーボールトは、BIBLOSデバイス602上に格納されたままであることができる。バイオメトリックゲートウェイ606は、部分Cおよびファジーボールトをそれらの指定された場所に格納し375、ウォレットサービスのための一意的なサービス証明書をBIBLOSデバイス602に戻す680。
【0088】
図7は、本明細書において開示される発明の様相の態様にしたがう、RISENと相互作用するために、安全でないエンドユーザデバイス702をバイオメトリック認証ゲートウェイ706に登録するプロセスを説明する、相互作用図700を提示する。図700において説明されるプロセスは、システム200のコンテキストにおいて実施される、および/または図1に提示された安全なコンピューターシステムアーキテクチャを利用することができる。
【0089】
相互作用図700は、安全でないエンドユーザデバイスまたはBIBLOSデバイス702よりも低い程度のセキュリティーを有するエンドユーザデバイスを使用する場合の、一般プロセス差異を強調するために使用されることができる。プロセスの基本的なステップは同じであるが、セキュリティーにおけるこの差異は、非常に機密の情報を取り扱うオペレーションが実施される場所を変更することができる。BIBLOSデバイスのみが残りの図において参照されるように、相互作用図600と700との間のプロセス差異は、推定され、残りのプロセスに適用されることができる。
【0090】
プロセスは、本明細書において安全でないデバイス702と称される安全でないエンドユーザデバイス702で始まり、本明細書においてバイオメトリックゲートウェイ706と称されるバイオメトリック認証ゲートウェイ706に登録する710ことができる。安全でないデバイス702によって起こされる行動は、バイオメトリックゲートウェイ706および/またはRISENと相互作用するために、安全なサービスアプリケーションまたは安全でないデバイス702上にインストールされた他のソフトウェアアプリケーションの使用を含むことができる。
【0091】
バイオメトリックゲートウェイ706への登録は、バイオメトリック登録を実施するだけでなく、ユーザ名およびパスワードのような一般情報を提供するようユーザに促すことができ、それは図8において説明される。登録プロセスの間の通信交換は、当技術分野において公知であるように、認証エージェントによって安全でないデバイス702に提供される、シングルユース証明書を利用することができる。
【0092】
バイオメトリックゲートウェイ706は次に、安全でないデバイス702がすでに登録されたかどうかを判断するために、ブロックチェーンネットワーク704に質問する715ことができる。答えを提供するために、ブロックチェーンネットワーク704は、安全でないデバイス702に一致する情報に関して、ブロックチェーンのデータをチェックする720ことができる。ブロックチェーンネットワーク704は、バイオメトリックゲートウェイ706にその答え(この例では、安全でないデバイス702は、まだ登録されていないことである)を提供する725ことができる。
【0093】
この時点で、バイオメトリックゲートウェイ706は、第三者サービス毎にユーザの身元を照合する730ことができる。身元の照合が申し分なければ、バイオメトリックゲートウェイ706は、ブロックチェーンネットワーク704と相互作用するためのユーザ暗号通貨ウォレットを作成する735ことができる。ウォレット作成735は、ユーザのための秘密暗号鍵を生成することを含むことができる。ひとたびウォレットが作成されたら、登録プロセスは、完了される740ことができ;ユーザの識別データをそれらの安全でないデバイス702およびそれらのバイオメトリックの識別情報と結び付ける情報が、記録されることができる。バイオメトリックゲートウェイ706は次に、ユーザのための一意的なクライアント証明書を安全でないデバイス702に戻す745ことができる。このクライアント証明書は、バイオメトリックゲートウェイ706とのその後の通信のために、安全でないデバイス702によって使用されることができる。
【0094】
クライアント証明書の戻しは、RISENのウォレットサービスを申し込む750ために、安全でないデバイス702を作動させることができる。サービス申し込みは、ユーザのバイオメトリック認証755を必要とする場合がある。認証の間に安全でないデバイス702によって生成されたバイオメトリックベクターは、バイオメトリックゲートウェイ706に送信される760ことができる。
【0095】
ウォレット生成735の間に生成された秘密暗号鍵は次に、図5において詳述されたとおり、3つの部分(A、B、およびC)に分割される765ことができる。秘密暗号鍵の部分AおよびBは、受信されたバイオメトリックベクターを使用して別々のファジーボールト内に入れられる770ことができる。バイオメトリックゲートウェイ706は次に、追加のセーフガードとして、そのメモリからバイオメトリックベクターを消去する775ことができる。最後に、バイオメトリックゲートウェイ706は、部分Bを含むファジーボールトおよびウォレットサービスのための一意的なサービス証明書を安全でないデバイス702に戻す780ことができ;部分Aを格納するファジーボールトおよび部分Cは、バイオメトリックゲートウェイ706上に格納されたままであることができる。
【0096】
プロセスにおける主要な差異は、ユーザの秘密暗号鍵を取り扱う安全なコンピューターシステムアーキテクチャのコンポーネントであることができる。BIBLOSデバイス602であれば、秘密暗号鍵生成およびその後の取扱いは、BIBLOSデバイス602に対してローカルで起こることができる。安全でないデバイス702であれば、秘密暗号鍵取扱いは、安全でないデバイス702に固有のセキュリティー脆弱性によって秘密暗号鍵を危険にさらす可能性を減らすために、バイオメトリックゲートウェイ706によって実施されることができる。
【0097】
図8は、本明細書において開示される発明の様相の態様にしたがう、バイオメトリック登録プロセスを詳述する方法800のフローチャートである。方法800は、先の図のコンテキスト内で実施されることができる。
【0098】
方法800は、バイオメトリックベクターが3回生成される工程805で始まることができる。工程805は、サブステップ810~820の実施を3度必要とする場合がある。バイオメトリックベクター生成は最初に、サブステップ810のとおりユーザのバイオメトリックデータが取り込まれることを必要とする場合がある。サブステップ810はまた、分析および消費のために取り込まれた生データを準備する必要がある任意のデータ処理タスクの実施を含むことができる。
【0099】
例えば、指紋バイオメトリックデータを使用するとき、サブステップ810は、ユーザの指のデジタル画像を取り込むことができる。種々の画像処理タスク(例えば、エッジ検出、照度標準化、補正、サイズ変更など)が次に、取り込まれた画像に実施されて、データの標準評価を確実にすることができる。BIBLOSデバイスは、指紋の取り込みおよび認証のために、MANOと呼ばれる専有プロセスを利用することができる。
【0100】
サブステップ815において、バイオメタデータは、取り込まれたバイオメトリックデータのための、およびそれに関連するエンドユーザデバイスから集められることができる。バイオメタデータは、タイムスタンプ、デバイス識別情報、ジオロケーションデータ等を非限定的に含むバイオメトリックデータの取り込みに関するメタデータを意味することができる。バイオメタデータは、バイオメトリックデータがリアルタイムベースで登録されたデバイスから獲得されることを確実にするために、使用されることができる。バイオメタデータはまた、悪意のある存在が、先の成功した認証からのシステムデータを提示することによってバイオメトリック認証を迂回しようとする「リプレー攻撃」からの保護を提供することができる。
【0101】
バイオメタデータの結び付けは、様々の形をとることができる。バイオメトリックデータが画像である実施態様では、バイオメタデータは、最新式のステガノグラフィー技術を使用して画像内に埋め込まれることができる。もう一つの実施態様では、バイオメタデータは、典型的なメタデータのようなバイオメトリックデータを含むデジタルファイルのヘッダー領域に追加されることができる。
【0102】
バイオメトリックベクターのためのデータは次に、サブステップ820において、取り込まれたバイオメトリックデータから抽出されることができる。3つのバイオメトリックベクターの生成後に、3つのバイオメトリックベクターの平均値および分散が、工程825において計算されることができる。一つの実施態様では、3つのバイオメトリックベクターは、予め定められた分散を満たすことを必要とされる場合があり、そうでなければ満たされるまで、工程805の実施が繰り返される。
【0103】
工程830において、計算された平均バイオメトリックベクターは、ユーザのバイオメトリック登録ベクターとして選択されることができる。本明細書で使用する、用語「登録バイオメトリックベクター」、「登録ベクター」および「バイオメトリック登録ベクター」は、バイオメトリック認証ゲートウェイへの登録プロセスの間にユーザのために作成されたバイオメトリックベクターに言及するために互換可能に使用されることができる。これらの用語は、登録ベクターに対する認証のためにその後に取り込まれるバイオメトリックベクターからバイオメトリック登録ベクターを区別するために必要である場合がある。
【0104】
ファジーボールトは次に、登録ベクターを含むように工程835において作成されることができる。ファジーボールトは、3つの生成されたバイオメトリックベクターのいずれも登録ベクターの分散内にあることがすでに知られるので、3つの生成されたバイオメトリックベクターのうちの任意の1つを使用して作り出されることができる。
【0105】
方法800の工程は、エンドユーザデバイスによって提供されるセキュリティーの程度に依存して、ユーザのエンドユーザデバイスまたはバイオメトリック認証ゲートウェイのいずれかによって実施されることができることが留意されるべきである。
【0106】
図9は、本明細書において開示される発明の様相の態様にしたがう、バイオメトリック認証プロセスを説明する方法900のフローチャートである。方法900は、バイオメトリック認証タスクが示されていれば、先および後のどの図においても実施されることができる。
【0107】
方法900は、ユーザのバイオメトリックデータがユーザのエンドユーザデバイスを介して取り込まれる工程905で始まることができる。取り込まれたバイオメトリックデータのためのバイオメタデータは、工程910において集められ、検証されることができる。バイオメタデータの検証は、取り込まれたバイオメトリックデータがリアルタイムで取り込まれたことを確実にするために、バイオメタデータを試験することを意味することができる。
【0108】
工程915において、取り込まれたバイオメトリックデータは、必要に応じて、かつ登録プロセスと同じ方法で、処理されることができる。バイオメトリックベクターは、工程920において、処理されたバイオメトリックデータから生成されることができる。工程925において、ユーザの登録ベクターを含むファジーボールトは、登録ベクターを検索するために、生成されたバイオメトリックベクターを使用して開かれることができる。生成されたバイオメトリックベクターがファジーボールトを開くことができない場合(すなわち、デバイスにとって正しくないユーザ、デバイス破損、ユーザエラーなど)、工程905~920は、所定の回数繰り返されることができ;継続する失敗は、方法900の実行を終了することができる。
【0109】
生成されたバイオメトリックベクターがファジーボールトを開くと仮定すると、生成されたバイオメトリックベクターは、工程930において、検索された登録ベクターと比較されることができる。工程935において、類似性スコアが生成されて、生成されたバイオメトリックベクターがどれだけよく登録ベクターと一致したかを数量化することができる。生成された類似性スコアが、工程940において、予め定められた閾値を満たすかどうかが判断されることができる。予め定められた閾値は、システムによって定義されることができ、いくつかの実施態様においてユーザによって調節可能であることができる。
【0110】
類似性スコアが閾値を満たしたとき、工程945は実行することができ、ここで、バイオメトリック認証が成功したとみなされる。類似性スコアが閾値を満たしていないとき、バイオメトリック認証は、工程950において失敗とみなされることができる。工程945または工程950のいずれかから、工程955が実施されることができ、ここで、生成されたバイオメトリックベクターおよびバイオメタデータがメモリから消去されて、それらがメモリへの攻撃によって危険にさらされることがないことを確実にすることができる。
【0111】
図10は、本明細書において開示される発明の様相の態様にしたがう、BIBLOSエンドユーザデバイス1002のブロックチェーンジェネシスプロセスを説明する相互作用図1000を提示する。相互作用図1000において提示される行動は、先の図のコンテキスト内で実施されることができる。
【0112】
BIBLOSデバイス1002は、ブロックチェーンジェネシスを実施するようユーザに促す1010ことができる。促すことは、BIBLOSデバイス1002上で動作する対応するソフトウェアが、ブロックチェーンジェネシスがユーザによってまだ実施されていないことを検出したときに、起こることができる。ユーザはまた、ネイティブおよび非ネイティブトークンを含むブロックチェーンジェネシストランザクションを実施するために、ブロックチェーンネットワーク1004内に予想される量の暗号通貨を有することを必要とされる場合がある。
【0113】
ブロックチェーンジェネシスプロセスは、一般に、将来の使用のために(すなわち、安全なデータバックアップ)、ブロックチェーンネットワーク1004においてユーザおよびそれらのBIBLOSデバイス1002に属する機密情報を守るために実施される工程を意味することができる。ユーザは、BIBLOSデバイス1002上の対応するユーザインターフェースを介してこのプロセスを開始する1015ことができる。BIBLOSデバイス1002は次に、ブロックチェーンネットワーク1004に、ユーザの秘密暗号鍵の部分Bを含むファジーボールト、ユーザの登録ベクター、BIBLOSデバイス1002のための一意的なデバイスIDを送信する1020ことができる。
【0114】
このデータの受取り後、ブロックチェーンネットワーク1004は、ジェネシスデジタルまたはスマートコントラクトを作成する1025ことができる。受信されたデータは次に、ジェネシスコントラクトに書き込まれる1030ことができる。完了されたジェネシスコントラクトは、ブロックチェーンネットワーク1004の検証ルール毎に、ブロックチェーンにおいてコミットされることができる。
【0115】
図11は、本明細書において開示される発明の様相の態様にしたがう、データを新しいBIBLOSデバイス1102に復元するためのプロセスを説明する相互作用図1100を提示する。相互作用図1100において提示される行動は、先の図のコンテキスト内において実施されることができる。
【0116】
相互作用図1100の機能は、ユーザが新しいBIBLOSデバイス1102を得たか、あるいはそれらの既存のBIBLOSデバイス1102がエラーまたは、RISENのコンポーネントと相互作用するために必要とされるローカルに格納されているデータを削除するか、もしくは破損する状況(すなわち、不適切なシャットダウン、先の構成への復元など)に遭遇した事象において実施されることができる。ユーザが、ブロックチェーンネットワーク1104、バイオメトリックゲートウェイ1106、および/またはRISENの他のコンポーネントとの通信に必要とされる適切なソフトウェアアプリケーション(例えば、安全なサービスアプリケーション215)を再インストールすることが想定されることができる。
【0117】
ユーザは、このプロセスを開始するために、それらのBIBLOSデバイス1102上でウォレットを復元する1110機能を実行することができる。この機能は、それらの既存のアカウントのため、ユーザのユーザ名およびパスワードをバイオメトリックゲートウェイ1106に伝達する1115ことができる。バイオメトリックゲートウェイ1106は次に、登録プロセスと同様に、指定された第三者サービスを介してユーザの身元を照合する1120ことができる。
【0118】
ユーザ/BIBLOSデバイス1102は、相互作用図1000において説明されたように、ブロックチェーンジェネシスをすでに実施しているので、バイオメトリックゲートウェイ1106は、ブロックチェーンネットワーク1104からブロックチェーン内に格納されているユーザのジェネシスコントラクトデータを要求する1125ことができる。ブロックチェーンネットワーク1104は、ジェネシスコントラクトデータ(ユーザの秘密暗号鍵の部分Bを含むファジーボールト、ユーザの登録ベクター、および先のBIBLOSデバイスのデバイスID)を検索し、バイオメトリックゲートウェイ1106に戻す1130ことができる。
【0119】
次に、バイオメトリックゲートウェイ1106は、ユーザからのバイオメトリック認証の要求をBIBLOSデバイス1102に送信する1135ことができる。ユーザは、バイオメトリック認証1140プロセスを実施するために、BIBLOSデバイス1102を使用することができる。バイオメトリック認証1140によって生成されたバイオメトリックベクターは、バイオメトリックゲートウェイ1106に送信される1145ことができる。
【0120】
バイオメトリックゲートウェイ1106は、検索されたユーザの登録ベクターに対して、受信されたバイオメトリックベクターを検証する1150ことができる。受信されたバイオメトリックベクターの成功した1155検証は、ユーザの暗号通貨ウォレットを新しいBIBLOSデバイス1102識別情報とリンクさせる1160ように、バイオメトリックゲートウェイ1106を作動させることができる。暗号通貨ウォレットをリンクさせる1160ことは、バイオメトリックゲートウェイ1106によって格納されたデータを更新することができる。
【0121】
ユーザのバイオメトリックベクターの成功した1155検証は、実際のユーザが復元プロセスを許可することを示すので、バイオメトリックゲートウェイ1106は次に、ユーザの秘密暗号鍵の部分Bを収容するファジーボールトをBIBLOSデバイス1102に送信する1165ことができる。BIBLOSデバイス1102は、適切な場所内に受信されたファジーボールトを格納し1170、自動的にブロックチェーンジェネシス1175を作動させて、ジェネシスコントラクト内に格納されたデバイスIDを更新することができる。
【0122】
図12は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーション1210のための特徴図1200である。図1200内に提示される例示的特徴は、先の図のコンテキスト内で実施されることができる。
【0123】
暗号通貨ウォレット1210は、安全なサービスアプリケーションにおいて利用可能なブロックチェーンネットワークと相互作用するための機能セットを意味することができる。この機能セットは、別個のソフトウェアアプリケーションとして、または安全なサービスアプリケーションのモジュールとしてパッケージ化されることができる。
【0124】
暗号通貨ウォレット1210を介して、ユーザ1204は、RISEN内での相互作用に許可される、および/または必要とされる様々の特徴1215~1275へのアクセスを有することができる。これらの特徴は、基本的なブロックチェーンネットワーク動作:残高を見る1215、ウォレットを作成する1220、ウォレット名を変更する1225、ERC20トークンを追加する1235、ERC20トークンを削除する1240、トランザクション履歴1245、およびトークンを転送する1255;非ネイティブブロックチェーンアプリケーション動作:RISENトークントランザクションを転送する/取り消す1250、ガスを計算する1260、ガスリミットを設定する1270、およびガス価格を設定する1275;ならびにユーティリティー機能:クリップボードにコピーする1230およびQRコードを示す1265、を意味することができる。これらの特徴1215~1275の各々は、以下の図においてさらに詳細を説明されることができる。
【0125】
図13は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションの残高を見る機能を説明する、相互作用図1300を提示する。相互作用図1300において提示される行動は、先の図のコンテキスト内で実施されることができる。
【0126】
始めに、ユーザは、彼らがBIBLOSデバイス1302上の暗号通貨ウォレットユーザインターフェースにおいて残高を見ることを望むウォレットを選択する1310ことができる。この工程1310は、ユーザが複数の分離した暗号通貨ウォレットを有することができるので必要である場合がある。ユーザは次に、ユーザインターフェースから残高を見る1315機能を選択することができる。
【0127】
BIBLOSデバイス1302は、選択された暗号通貨ウォレットのアドレスをブロックチェーンネットワーク1304に送信する1320ことができる。ブロックチェーンネットワーク1304は次に、ブロックチェーン内の受信されたウォレットアドレスに関連するトークンを識別し1325、各タイプのトークンの総残高を総計することができる。トークンのタイプおよびそれらそれぞれの残高は、BIBLOSデバイス1302に戻される1330ことができ、そこでそれらはユーザインターフェースにおいてユーザに表示される1335。
【0128】
図14は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのウォレットを作成する機能を説明する、相互作用図1400を提示する。相互作用図1400において提示される機能は、先の図のコンテキスト内で実施されることができる。
【0129】
ユーザは、BIBLOSデバイス1402上の暗号通貨ウォレットアプリケーションユーザインターフェースからウォレットを作成する1410機能を選択することができる。この機能選択は、適切なユーザがその機能を実行していることを確実にするために、ユーザのためのバイオメトリック認証1415を作動させることができる。
【0130】
BIBLOSデバイス1402は次に、新しい暗号通貨ウォレットおよび新しい秘密暗号鍵のための公開アドレス(すなわち、公開暗号鍵)を生成する1420ことができる。この機能によって生成された秘密暗号鍵が、バイオメトリック認証ゲートウェイへの登録時にユーザのために生成された秘密暗号鍵とは別であることを見分けることが重要である場合がある。ユーザが有する各暗号通貨ウォレットは、当技術分野において知られているとおり、別個の公開/秘密暗号鍵対を有することが必要とされる場合がある。
【0131】
安全なコンピューターシステムアーキテクチャがどのように秘密暗号鍵のセキュリティーを取り扱うかにしたがって、BIBLOSデバイス1402は、暗号通貨ウォレットの秘密暗号鍵を3つの部分-A、B、およびCに分割する1425ことができる。秘密暗号鍵の部分AおよびBは、別々のファジーボールト内に入れられる1430ことができる。
【0132】
部分Aを含むファジーボールトおよび部分Cは、そこでストレージ1440のために、バイオメトリックゲートウェイ1406に送信される1435ことができる。次に、新しく作成された暗号通貨ウォレットについての情報は、BIBLOSデバイス1402上のユーザに表示される1445ことができる。
【0133】
図15は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのウォレット名を変更する機能を説明する方法1500のフローチャートである。方法1500は、先の図のコンテキスト内で実施されることができる。
【0134】
方法1500は、暗号通貨ウォレットアプリケーションがユーザインターフェース内で名前変更されるウォレットのユーザ選択を受信する工程1505で始まることができる。ウォレット名を変更する機能のユーザ選択は、工程1510において受信されることができる。工程1515において、ユーザは、新しいウォレット名について促される場合がある。
【0135】
新しい、ユーザが入力したウォレット名は、工程1520において受信されることができる。工程1525において、既存のウォレット名は、受信された新しいウォレット名で置換されることができる。新しいウォレット名を示すウォレット情報は、工程1530においてユーザに表示されることができる。
【0136】
図16は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのクリップボードにコピーする機能を説明する方法1600のフローチャートである。方法1600は、先の図のコンテキスト内で実施されることができる。
【0137】
方法1600は、暗号通貨ウォレットアプリケーションがユーザインターフェースにおいて特定の暗号通貨ウォレットのユーザ選択を受信することができる工程1605で始まることができる。選択されたウォレットの公開アドレスをエンドユーザデバイスのクリップボードにコピーするためのコマンド(すなわち、機能)のユーザ選択は、工程1610において受信されることができる。工程1615において、暗号通貨ウォレットアプリケーションは、ウォレットの公開アドレスをエンドユーザデバイスのクリップボードにコピーすることができる。
【0138】
クリップボードにコピーする機能は、ユーザの暗号通貨ウォレットの公開アドレスのみに作用するので、方法1600の工程は、BIBLOSデバイスまたは安全なエンドユーザデバイスだけでなく、安全でないエンドユーザデバイス上で実施されることができる。
【0139】
図17は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのERC20トークンを追加する機能を説明する、相互作用図1700を提示する。相互作用図1700において提示される行動は、先の図のコンテキスト内で実施されることができる。
【0140】
ERC20トークンは、ETHEREUMブロックチェーンネットワークと共に使用するように設計された暗号通貨トークンであることができ、予め定められた規格のリストに従う。ERC20トークンは、非ネイティブトークンであることができ、RISENにおいて使用されるRSNトークンのようなETHEREUMプラットフォームのネイティブ暗号通貨(ETHER)ではない場合がある。スマートコントラクトは、ERC20トークンを作成し、それらへの動作を取り扱うために使用されることができる。当技術分野において知られているように、スマートコントラクトは、パラメーターを定義し、ブロックチェーントランザクションの実施を強化する、自己実行型のコードセットであることができる。
【0141】
ユーザのBIBLOSデバイス1702上で動作するユーザインターフェースにおいて、ユーザは、彼らがERC20トークンを追加することを望む暗号通貨ウォレットを選択する1710ことができる。ERC20トークンはすでにブロックチェーン内に存在し、新たに生成されるものではないということが留意されるべきである。既存のERC20トークンは、ユーザに属することができるが、彼らが所有する異なる暗号通貨ウォレットと関連するか、または異なるブロックチェーンユーザに関連する。
【0142】
ユーザは次に、ERC20トークンを追加する機能を実行する1715ことができる。暗号通貨ウォレットアプリケーションは、ユーザからERC20トークンの公開ブロックチェーンアドレスを受信する1720ことができる。ERC20トークンのアドレスは、ユーザインターフェースにおいて手動で入力されることができるか、またはアドレスをコード化するQRコードがスキャンされることができる。
【0143】
BIBLOSデバイス1702は、受信されたトークンアドレスをブロックチェーンネットワーク1704に送信する1725ことができる。ブロックチェーンネットワーク1704は次に、受信されたアドレスでブロックチェーン内のトランザクションを識別することができる。トークン自体(例えば、名前、小数位、シンボル、画像、残高など)だけでなく、ERC20トークンを定義するスマートコントラクトについての情報は、ブロックチェーンネットワーク1704によってBIBLOSデバイス1702へ戻される1735ことができる。暗号通貨ウォレットアプリケーションは次に、受信された情報を適切に記録し1740、BIBLOSデバイス1702上で更新されたウォレット情報をユーザに表示する1745ことができる。
【0144】
図18は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのERC20トークンを削除する機能を説明する方法1800のフローチャートである。方法1800は、先の図のコンテキスト内で実施されることができる。
【0145】
方法1800は、暗号通貨ウォレットアプリケーションがユーザが削除することを望むERC20トークンを有する暗号通貨ウォレットのユーザ選択を受信する工程1805で始まることができる。次に、選択されたウォレットから所望のERC20トークンを削除するためのコマンドのユーザ選択が、工程1810において受信されることができる。工程1815において、ユーザは、トークン削除を確認するように促されることができる。
【0146】
確認後、ERC20トークンは、工程1820においてローカルデータから削除されることができる。工程1825において、ウォレットについてのトークン情報は、更新されることができる。ウォレット情報は、工程1830において、削除を反映する新しいトークン情報と共にユーザに表示されることができる。
【0147】
図19は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのトランザクション履歴を得る機能を説明する、相互作用図1900を提示する。相互作用図1900において提示される機能は、先の図のコンテキスト内で実施されることができる。
【0148】
ユーザのBIBLOSデバイス1902上で動作するユーザインターフェースにおいて、ユーザは、彼らが彼らのトランザクション履歴を見ることを望む暗号通貨ウォレットを選択する1910ことができる。ユーザは次に、トランザクション履歴機能を実行する1915ことができる。BIBLOSデバイス1902は、バイオメトリックゲートウェイ1906に選択された暗号通貨ウォレットの公開アドレスおよびその履歴の要求を送信する1920ことができる。
【0149】
バイオメトリックゲートウェイ1906は次に、そのデータベース内に格納されている受信されたアドレスに対応するトランザクションを検索する1925ことができる。検索されたトランザクション履歴は、バイオメトリックゲートウェイ1906によってBIBLOSデバイス1902に戻される1930ことができる。暗号通貨ウォレットアプリケーションは次に、BIBLOSデバイス1902上で受信されたトランザクション履歴データをユーザに表示する1935ことができる。
【0150】
図20は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのERC20トークンを転送する機能を説明する、相互作用図2000を提示する。相互作用図2000において提示される機能は、先の図のコンテキスト内で実施されることができる。
【0151】
ユーザのBIBLOSデバイス2002上で動作するユーザインターフェースにおいて、ユーザは、彼らが転送することを望む暗号通貨ウォレット内のERC20トークンを選択する2010ことができる。ユーザは次に、転送のために必要とされる詳細(例えば、受信者アドレス、額など)をインプットする2015ことができる。この時点で、ユーザは、登録されたユーザが転送を始めていることを確実にするために、バイオメトリック認証2020を実施するよう促されることができる。
【0152】
バイオメトリック認証に成功したら、暗号通貨ウォレットは、バイオメトリックゲートウェイ2006からユーザの秘密暗号鍵の部分Aを含むファジーボールトおよび非暗号化された部分Cを要求する2025ことができる;部分Bを含むファジーボールトは、ローカルで利用可能であることができる。バイオメトリックゲートウェイ2006は、ファジーボールトおよび部分CをBIBLOSデバイス2002に戻す2030ことができる。
【0153】
部分Aを収容するファジーボールトおよび部分Bを収容するファジーボールトは、バイオメトリック認証の間に生成されたユーザのバイオメトリックベクターを使用して開かれる2035ことができる。今や3つの部分すべてが解読されたので、BIBLOSデバイス2002は、ユーザの秘密暗号鍵を構築する2040ことができる。転送トランザクションは、ユーザにインプットされた詳細を使用して作成される2045ことができる。次に、トランザクションは、ユーザの秘密暗号鍵で署名される2050ことができる。トランザクションに署名した後、BIBLOSデバイス2002はすぐに、メモリからユーザの秘密暗号鍵を消去してそれが盗まれる危険性を最小にすることができる。
【0154】
署名されたトランザクションは、ブロックチェーンネットワーク2004に送信される2055ことができる。ブロックチェーンネットワーク2004は次に、そのルールセットにしたがってトランザクションを処理する2060(すなわち、ブロックチェーンのブロックを検証し、コミットする)ことができる。
【0155】
安全でないエンドユーザデバイスの場合、エンドユーザデバイスは、バイオメトリックゲートウェイ2006に部分Bを含むファジーボールトを送信することができるということが留意されるべきである。次に、バイオメトリックゲートウェイ2006は、ファジーボールトを開き2035、秘密暗号鍵を構築し2040、署名し2045、トランザクションを送信する2055ことができる。秘密暗号鍵の部分は、安全でないエンドユーザデバイスから遠ざけることができる。
【0156】
図21は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのRISENトークンを転送する機能を説明する相互作用図2100を提示する。相互作用図2100において提示される機能は、先の図のコンテキスト内で実施されることができる。
【0157】
RISENトークンは、RISENにおいて使用される非ネイティブトークンであることができる。RISENトークンは、相互作用図2100に示されるように、追加のセキュリティーを持って取り扱われ、転送の前に、ユーザによる追加のバイオメトリック認証を必要とする場合がある。
【0158】
ユーザのBIBLOSデバイス2102上で動作するユーザインターフェースにおいて、ユーザは、RISENトークンを転送する機能を選択して2110、ブロックチェーントランザクションを作り出すための基本工程を経ることができる。RISENトークンを転送するためのトランザクションは、ブロックチェーンネットワーク2104に送信される2115ことができる。受信されたトランザクションを処理する代わりに、ブロックチェーンネットワーク2104は、トランザクションを保持し2120、RISEN事象2125を作動させることができる。
【0159】
バイオメトリックゲートウェイ2106のリスナーコンポーネントは、RISEN事象を「聞き」、バイオメトリックゲートウェイ2106に、ユーザのBIBLOSデバイス2102にユーザバイオメトリック認証のための要求を送信する2130ようにさせることができる。ユーザは、BIBLOSデバイス2102を介して彼らのバイオメトリック認証2135を実施することができる。
【0160】
バイオメトリック認証に成功したら、BIBLOSデバイス2102は、バイオメトリックゲートウェイ2106に部分Aを含むファジーボールトおよび部分Cを要求する2140ことができる。バイオメトリックゲートウェイ2106は、その認可を示す手段としてトランザクションのハッシュ(SHA)を署名する2145ことができる。バイオメトリックゲートウェイ2106は次に、ファジーボールトおよび部分Cを署名されたトランザクションと共にBIBLOSデバイス2102に戻す2150ことができる。
【0161】
部分Aを収容するファジーボールトおよび部分Bを収容するファジーボールトは、バイオメトリック認証の間に生成されたユーザのバイオメトリックベクターを使用して開かれる2155ことができる。今や3つの部分すべてが解読されたので、BIBLOSデバイス2102は、ユーザの秘密暗号鍵を構築する2160ことができる。トランザクション解放は、詳細および/または署名されたトランザクションを使用して作り出され2165、ユーザの秘密暗号鍵で署名されることができる。トランザクションに署名した後、BIBLOSデバイス2102はすぐに、メモリからユーザの秘密暗号鍵を消去してそれが盗まれる危険性を最小にすることができる。
【0162】
トランザクション解放は次に、ブロックチェーンネットワーク2104に送信される2170ことができる。ブロックチェーンネットワーク2104は、保持されたトランザクションを解放する2175ことができ、それは次に処理される2180(すなわち、ブロックチェーンのブロックを検証し、コミットする)。
【0163】
安全でないエンドユーザデバイスの場合、エンドユーザデバイスは、バイオメトリックゲートウェイ2106に部分Bを含むファジーボールトを送信することができることが留意されるべきである。次に、バイオメトリックゲートウェイ2106は、ファジーボールトを開き2155、秘密暗号鍵を構築し2160、署名し、トランザクション解放を送信する2165ことができる。秘密暗号鍵の部分は、安全でないエンドユーザデバイスから遠ざけることができる。
【0164】
RISENトークンを転送する前にバイオメトリック認証を必要とすることによって、安全なコンピューターシステムアーキテクチャは、トランザクションを取り扱うためのブロックチェーンネットワーク2104のプロセスにおける弱点に対抗することができる。この問題点は、ブロックチェーンネットワーク2104が、トークン/暗号通貨の所有者がトランザクションを始めた証拠として、秘密暗号鍵の使用を盲目的に認めてしまうことである可能性がある。ゆえに、別のトークン/暗号通貨にアクセスするのに悪意のある存在にとって必要なものは、秘密暗号鍵のみである可能性がある。
【0165】
トランザクションを処理する前の、この追加のバイオメトリック認証工程は、トークン所有者が実際にトランザクションを始めていることを確実にし、不正転送を彼らに通知することができる(所有者が、かれらのトークンを失うことなく、トランザクションを終了することを可能にする)。この追加の工程は、追加の時間および処理リソースを招くであろうが、これらの追加のリソースは、それらが提供するセキュリティーレベルの向上のために適切に費やされていると感じられることができる。
【0166】
図22は、本明細書において開示される発明の様相の態様にしたがう、安全なウォレットアプリケーションのRISENトークントランザクションを取り消す機能を説明する、相互作用図2200を提示する。相互作用図2200において提示される機能は、先の図のコンテキスト内で実施されることができる。
【0167】
RISENトークンは、RISENにおいて使用される非ネイティブトークンであることができる。RISENトークンは、相互作用図2200に示されるように、トランザクションを取り消す前に(それが使用される場合)ユーザによる追加のバイオメトリック認証を必要とする追加のセキュリティーを持って取り扱われることができる。
【0168】
ユーザのBIBLOSデバイス2202上で動作するユーザインターフェースにおいて、ユーザは、RISENトークントランザクションを取り消す機能を選択し2210、ブロックチェーントランザクションを作り出すための基本工程を経ることができる。RISENトークントランザクションを取り消すためのトランザクションは、ブロックチェーンネットワーク2204に送信される2215ことができる。受信されたトランザクションを処理する代わりに、ブロックチェーンネットワーク2204は、トランザクションを保持し2220、RISEN事象2225を作動させることができる。
【0169】
バイオメトリックゲートウェイ2206のリスナーコンポーネントは、RISEN事象を「聞き」、バイオメトリックゲートウェイ2206に、ユーザのBIBLOSデバイス2202にユーザバイオメトリック認証のための要求を送信する2230ようにさせることができる。ユーザは、BIBLOSデバイス2202を介してそれらのバイオメトリック認証2235を実施することができる。
【0170】
バイオメトリック認証に成功したら、BIBLOSデバイス2202は、バイオメトリックゲートウェイ2206に部分Aを含むファジーボールトおよび部分Cを要求する2240ことができる。バイオメトリックゲートウェイ2206は、その認可を示す手段としてトランザクションのハッシュ(SHA)を署名する2245ことができる。バイオメトリックゲートウェイ2206は次に、ファジーボールトおよび部分Cを署名されたトランザクションと共にBIBLOSデバイス2202に戻す2250ことができる。
【0171】
部分Aを収容するファジーボールトおよび部分Bを収容するファジーボールトは、バイオメトリック認証の間に生成されたユーザのバイオメトリックベクターを使用して開かれる2255ことができる。今や3つの部分すべてが解読されたので、BIBLOSデバイス2202は、ユーザの秘密暗号鍵を構築する2260ことができる。トランザクション取り消しは、詳細および/または署名されたトランザクションを使用して作り出され2265、ユーザの秘密暗号鍵で署名されることができる。トランザクションに署名した後、BIBLOSデバイス2202はすぐに、メモリからユーザの秘密暗号鍵を消去してそれが盗まれる危険性を最小にすることができる。
【0172】
トランザクション取り消しは次に、ブロックチェーンネットワーク2204に送信される2270ことができる。ブロックチェーンネットワーク2204は、保持されたトランザクションを解放する2275ことができ、それは次に取り消される2280)。
【0173】
安全でないエンドユーザデバイスの場合、エンドユーザデバイスは、バイオメトリックゲートウェイ2206に部分Bを含むファジーボールトを送信することができることが留意されるべきである。次に、バイオメトリックゲートウェイ2206は、ファジーボールトを開き2255、秘密暗号鍵を構築し2260、署名し、トランザクション解放を送信する2265ことができる。秘密暗号鍵の部分は、安全でないエンドユーザデバイスから遠ざけることができる。
【0174】
ここでもまた、エキストラのバイオメトリック認証に必要とされる追加のリソースは、セキュリティーレベルの向上のために適切に費やされているとみなされることができる。
【0175】
図23は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのガスを計算する機能を説明する、相互作用図2300を提示する。相互作用図2300において提示される機能は、先の図のコンテキスト内で実施されることができる。例示目的のために、ガソリンが、非ネイティブアプリケーションのための暗号通貨ウォレットアプリケーション機能の対象として使用されることができる。
【0176】
ユーザのBIBLOSデバイス2302上で動作するユーザインターフェースにおいて、ユーザは、彼らが転送することを望む、暗号通貨ウォレット内のトークンを選択する2310ことができる。ユーザは次に、転送のために必要とされる詳細(例えば、受信者アドレス、額など)をインプットする2315ことができる。ユーザは次に、ガスを計算する機能を選択する2320ことができ、それは、そのトランザクションにはどのくらいのガスがかかるのかを、ユーザに通知することを意味する。
【0177】
この時点で、ユーザは、登録されたユーザが転送を始めていることを確実にするために、バイオメトリック認証2325を実施するよう促されることができる。バイオメトリック認証に成功したら、暗号通貨ウォレットは、バイオメトリックゲートウェイ2306に、ユーザの秘密暗号鍵の部分Aを含むファジーボールトおよび非暗号化された部分Cを要求する2330ことができる;部分Bを含むファジーボールトは、ローカルで利用可能であることができる。バイオメトリックゲートウェイ2306は、ファジーボールトおよび部分CをBIBLOSデバイス2302に戻す2335ことができる。
【0178】
部分Aを収容するファジーボールトおよび部分Bを収容するファジーボールトは、バイオメトリック認証の間に生成されたユーザのバイオメトリックベクターを使用して開かれる2340ことができる。今や3つの部分すべてが解読されたので、BIBLOSデバイス2302は、ユーザの秘密暗号鍵を構築する2345ことができる。ガス計算を要求するトランザクションは、ユーザにインプットされた詳細を使用して作り出される2350ことができる。すべての他のトランザクションと同様に、このトランザクションはまた、ユーザの秘密暗号鍵で署名されることができ、ユーザの秘密暗号鍵はすぐに、BIBLOSデバイス2302のメモリから消去される。
【0179】
署名されたトランザクションは、ブロックチェーンネットワーク2304に送信される2355ことができる。ブロックチェーンネットワーク2304は次に、その予め定められたルールセットにしたがって、トランザクションのためのガスの量を計算する2360ことができる。ブロックチェーンネットワーク2304は、計算されたガス量をBIBLOSデバイス2302に戻す2365ことができ、そこでそれはユーザに表示される2370ことができる。
【0180】
安全でないエンドユーザデバイスの場合、エンドユーザデバイスは、バイオメトリックゲートウェイ2306に部分Bを含むファジーボールトを送信することができるということが留意されるべきである。次に、バイオメトリックゲートウェイ2306は、ファジーボールトを開き2340、秘密暗号鍵を構築し2345、署名し、トランザクションを送信する2350ことができる。秘密暗号鍵の部分は、安全でないエンドユーザデバイスから遠ざけることができる。
【0181】
図24は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションの公開アドレスQRコードを示す機能を説明する、方法2400のフローチャートである。方法2400は、先の図のコンテキスト内で実施されることができる。
【0182】
方法2400は、暗号通貨ウォレットアプリケーションが暗号通貨ウォレットのユーザ選択を受信する、工程2405で始まることができる。選択されたウォレットのQRコードをその公開アドレスのために表示するためのコマンドのユーザ選択は、工程2410において受信されることができる。
【0183】
工程2415において、選択されたウォレットに関連するQRコードが検索されることができる。QRコードは、ウォレットが作成されたとき生成されて、ウォレットのデータの部分として格納されることができるか、あるいはQRコードが、工程2415の部分として自動的に生成されることができる。ウォレットのためのQRコードは次に、工程2420において表示されることができる。
【0184】
図25は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのガスリミットを設定する機能を説明する、方法2500のフローチャートである。方法2500は、先の図のコンテキスト内で実施されることができる。
【0185】
方法2500は、暗号通貨ウォレットがガスリミットを設定するためのコマンドのユーザ選択を受信する、工程2505で始まることができる。ガスリミットのためのインプットボックスは次に、工程2510においてユーザインターフェース内に提示されることができる。工程2515において、ガスリミットのための値が、インプットボックスを介して受信されることができる。受信されたガスリミット値は、工程2520において格納され、表示されることができる。
【0186】
図26は、本明細書において開示される発明の様相の態様にしたがう、暗号通貨ウォレットアプリケーションのガス価格を設定する機能を説明する、方法2600のフローチャートである。方法2600は、先の図のコンテキスト内で実施されることができる。
【0187】
方法2600は、暗号通貨ウォレットアプリケーションがガス価格を設定するためのコマンドのユーザ選択を受信することができる、工程2605で始まることができる。ガス価格のためのインプットボックスは次に、工程2610において、ユーザインターフェース内に提示されることができる。工程2615において、ガス価格のための値は、インプットボックスを介して受信されることができる。受信されたガス価格値は、工程2620において、格納され、表示されることができる。
【0188】
図中の線図は、本発明の種々の態様にしたがう、システムおよび方法の可能性のある実現のアーキテクチャ、機能性、および動作を例証するものである。ブロック線図の各ブロック、およびブロック線図中のブロックの組み合わせは、特定の機能または行為を実施する特殊用途のハードウェアベースのシステム、または特殊用途のハードウェアおよびコンピューター命令の組み合わせによって実現されることができることもまた留意されるであろう。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
【国際調査報告】