(57)【特許請求の範囲】
【請求項１】
暗号動作をセキュアに実行するためのコンピュータで実行される方法であって、前記コンピュータで実行される方法は、
ユーザに関連付けられた生体情報と、ID暗号チップ(ICC)のメモリに記憶されている1つまたは複数の暗号鍵に基づいて1つまたは複数の暗号動作を実行する要求とを、前記ICCによって受信するステップであって、前記要求が、所定の時間内または所定の回数の少なくとも一方で、前記1つまたは複数の暗号動作を実行するためのものである、ステップと、
前記ユーザに関連付けられた前記生体情報を、事前記憶生体情報として前記ICCの前記メモリに事前に記憶されている生体情報と比較するステップと、
前記生体情報が前記事前記憶生体情報と一致すると判定するステップと、
前記生体情報が前記事前記憶生体情報と一致するとの判定に応じて、前記所定の回数または前記所定の時間の前記少なくとも一方を記録するトークンを、前記ICCによって生成するステップと、
前記トークンが満了するまで、前記ICCによって前記トークンを一時的に記憶するステップであって、前記所定の時間の経過または前記所定の回数での前記1つまたは複数の暗号動作の実行に応答して、前記トークンが満了する、ステップと、
前記トークンを、前記ICCと通信可能に結合された計算デバイスに送信するステップと、
前記トークンが満了するまで、前記ユーザに関連付けられた生体情報を検証することなく、前記1つまたは複数の暗号動作が実行されることを許可するステップと、
第2のユーザと関連付けられた新たな生体情報を受信するステップと、
前記ICCの前記メモリを消去するステップと、
前記ICCの前記メモリの消去に続いて、前記新たな生体情報を前記メモリに書き込むステップであって、前記メモリが消去される前では、前記新たな生体情報が、前記メモリに書き込みできない、ステップとを含む、
コンピュータで実行される方法。
【請求項２】
動作結果を生成するために、前記1つまたは複数の暗号動作を実行するステップと、
前記ユーザに提示されるように、前記動作結果を前記ICCと通信可能に結合された前記計算デバイスに送信するステップとをさらに含む、
請求項１に記載のコンピュータで実行される方法。
【請求項３】
前記要求が、第1の要求であり、
動作結果が、第1の動作結果であり、
前記コンピュータで実行される方法は、
暗号動作を実行するための第2の要求を受信するステップと、
前記トークンが満了していないと判定するステップと、
第2の動作結果を生成するために、前記暗号動作を実行するステップとをさらに含む、
請求項１に記載のコンピュータで実行される方法。
【請求項４】
前記第1の要求が、第1のデータを解読するためのものであり、
前記第2の動作結果が、前記第1のデータの平文であり、
前記生体情報が、第1の生体情報であり、
前記コンピュータで実行される方法が、
第2の生体情報、および前記第1のデータの前記平文と関連付けられた第2のデータを暗号化するための第3の要求を受信するステップと、
前記第2の生体情報が前記事前記憶生体情報と一致するとの判定に応答して、暗号化された第2のデータを提供するために、前記第2のデータを暗号化するステップと、
前記暗号化された第2のデータを前記計算デバイスに送信するステップとをさらに含む、
請求項３に記載のコンピュータで実行される方法。
【請求項５】
前記生体情報と前記事前記憶生体情報との比較が、生体認識に基づいて実行され、
前記生体認識が、指紋認識、声紋認識、虹彩スキャン、顔認識、および心拍認識のうちの1つまたは複数を含む、
請求項１〜４のいずれか一項に記載のコンピュータで実行される方法。
【請求項６】
前記1つまたは複数の暗号動作が、前記ユーザと関連付けられた非対称鍵ペアに基づいて実行され、
前記1つまたは複数の暗号動作が、暗号化動作、復号動作、またはデジタル署名生成動作のうちの1つまたは複数を含む、
請求項１〜５のいずれか一項に記載のコンピュータで実行される方法。
【請求項７】
前記メモリが、プログラマブルリードオンリメモリ(PROM)、電気的消去可能PROM(EEPROM)、またはフラッシュメモリであり、
前記生体情報および非対称鍵ペアが、前記メモリの別々の記憶ユニットに記憶される、
請求項１〜６のいずれか一項に記載のコンピュータで実行される方法。
【請求項８】
前記ユーザに関連付けられた前記生体情報が、前記ICCの前記メモリに記憶されているID検証アルゴリズムを使用して、前記ICCの前記メモリに事前に記憶されている前記生体情報と比較され、
前記コンピュータで実行される方法が、
前記ICCの前記メモリに記憶されている暗号動作アルゴリズムを使用して、前記1つまたは複数の暗号動作を実行するステップをさらに含み、
前記ID検証アルゴリズムおよび前記暗号動作が、暗号化された形式で記憶されている、
請求項１に記載のコンピュータで実行される方法。
【請求項９】
暗号動作をセキュアに実行するためのシステムであって、
1つまたは複数のプロセッサと、
前記1つまたは複数のプロセッサと結合した1つまたは複数のコンピュータ可読メモリであって、請求項１〜８のいずれか一項に記載の方法を実行するために、前記1つまたは複数のプロセッサによって実行可能である命令を記憶しているメモリとを備えた、
システム。
【請求項１０】
暗号動作をセキュアに実行するための装置であって、前記装置は、請求項１〜８のいずれか一項に記載の方法を実行するための複数のモジュールを備える、
装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、アイデンティティ(ID)認証技術およびデータセキュリティに関する。
【背景技術】
【０００２】
ユーザIDを検証しかつデータセキュリティを保証するために、コンピュータネットワークにおいてID認証技術が一般的に使用される。ID情報は、コンピュータネットワークにおいてデジタル的に記憶または通信される他の情報のように、一組のデータによって表せる。コンピュータは、ユーザのデジタルIDに基づいてユーザを識別および認証できる。データセキュリティに関しては、デジタルIDが正規ユーザに属する、または言い換えれば、デジタルIDが実際のIDと一致することを保証することが重要である。
【０００３】
技術が進展したため、ブロックチェーンネットワークおよびモノのインターネット(IoT)ネットワークなどの分散化システムが出現した。分散化システム下では、個人が自分自身のID情報を安全に自己格納することが可能である。例えば、ユーザはデジタルウォレットを保有できるが、それは、ブロックチェーンネットワークにおいてまたはIoTデバイス上で取引を認可するために、ユーザが使用してデジタル署名を追加できる秘密鍵を記憶する。秘密鍵は、通常は計算デバイスに暗号セマンティクスを持つデータ列として記憶され、かつユーザだけがアクセス可能であると意図される。他のデータ列のように、秘密鍵は潜在的に複製および共有され得る。秘密鍵を有するユーザは誰でも、秘密鍵と関連するデジタル資産を制御し得る。その上、秘密鍵が失われるとデジタル資産は取り出せない。したがって、暗号鍵のセキュアな保管および効率的な使用が重要であり得る。
【０００４】
暗号鍵を安全に管理し、そしてユーザの真のIDに基づいて暗号動作を行える鍵管理技術を開発することが望ましいであろう。
【発明の概要】
【課題を解決するための手段】
【０００５】
本明細書は、暗号鍵をセキュアに管理し、そしてユーザID情報に基づいて暗号動作を行うための技術を記載する。これらの技術は概して、ユーザと関連する生体情報、および1つまたは複数の暗号動作を行う要求を受け取ることと、生体情報が事前に記憶された生体情報と一致するとの判定に応じて、1つまたは複数の暗号動作が行われることを認可することとを伴う。
【０００６】
本明細書は、1つまたは複数のプロセッサに結合され、かつ1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに本明細書で提供される方法の実施形態に従う動作を行わせる命令が記憶された、1つまたは複数の非一時的コンピュータ可読記憶媒体も提供する。
【０００７】
本明細書は、本明細書で提供される方法を実装するためのシステムをさらに提供する。本システムは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに本明細書で提供される方法の実施形態に従う動作を行わせる命令が記憶された、1つまたは複数のプロセッサに結合されるコンピュータ可読記憶媒体とを含む。
【０００８】
本明細書に従う方法が本明細書に記載される態様および特徴のいかなる組合せも含んでよいことが認識される。すなわち、本明細書に従う方法は、本明細書に具体的に記載される態様および特徴の組合せに限定されるのではなく、提供される態様および特徴のいかなる組合せも含む。
【０００９】
本明細書の1つまたは複数の実施形態の詳細が添付図面および以下の説明に記載される。本明細書の他の特徴および利点は同説明および図面から、ならびに請求項から明らかであろう。
【図面の簡単な説明】
【００１０】
【図１】本明細書の実施形態を実行するために使用できるプロセスを行うためのID暗号チップの一例を例示する図である。
【図２】本明細書の実施形態に従う、ID暗号チップ(ICC)を使用して暗号動作を行うためのプロセスの一例を例示するフローチャートである。
【図３】本明細書の実施形態に従う、ICCを使用して1つまたは複数の暗号動作を行うためのトークンを生成するためのプロセスの一例を例示するフローチャートである。
【図４】本明細書の実施形態に従う、トークンに基づいてICCを使用して1つまたは複数の暗号動作を行うためのプロセスの一例を例示するフローチャートである。
【図５】本明細書の実施形態に従う、鍵管理デバイスの一例を例示する図である。
【図６】本明細書の実施形態に従う、ID情報カード(IIC)を使用してデータ暗号化および復号を行うためのプロセスの一例を例示するスイムレーン図である。
【図７】本明細書の実施形態に従う、IICが挿入、統合または通信可能に結合できる計算デバイスの例を表す。
【図８】本明細書の実施形態に従う、プロセスの一例を例示するスイムレーン図である。
【図９】本明細書の実施形態に従って実行できる方法の一例を表す。
【図１０】本明細書の実施形態に従う、装置のモジュールの例を表す。
【発明を実施するための形態】
【００１１】
様々な図面における同様の参照番号および記号は同様の要素を示す。
【００１２】
本明細書は、暗号鍵をセキュアに管理し、そしてユーザID情報に基づいて暗号動作を行うための技術を記載する。これらの技術は概して、ユーザと関連する生体情報、および1つまたは複数の暗号動作を行う要求を受け取ることと、生体情報が事前に記憶された生体情報と一致するとの判定に応じて、1つまたは複数の暗号動作が行われることを認可することとを伴う。
【００１３】
図1は、本明細書の実施形態を実行するために使用できるプロセスを行うためのICC100の一例を例示する図である。高レベルでは、ICC100は、メモリ102および論理計算コンポーネント104を含むコンピュータチップであることができる。ICC100は、暗号動作をセキュアに行うために使用できる。一部の実施形態において、ICC100は、1つまたは複数のチップコンポーネントを含むチップセットであることができる。メモリ102および論理計算コンポーネント104は異なるチップコンポーネントに集積できる。一部の実施形態において、メモリ102は、恒久的な記憶を提供するために使用できる。一部の例では、メモリ102は、一度書き込むことができ、その後は読出し専用であるプログラマブルリードオンリメモリ(PROM)であることができる。一部の例では、メモリ102は、再フォーマットおよび再プログラムできる電気的消去可能プログラマブルリードオンリメモリ(EEPROM)またはフラッシュメモリであることができる。一部の実施形態において、論理計算コンポーネント104は、特定用途向け集積回路(ASIC)またはシングルチップマイクロコンピュータ(SCM)であることができる。
【００１４】
高レベルでは、ICC100は、メモリ102および論理計算コンポーネント104を含むコンピュータチップであることができる。ICC100は、暗号動作をセキュアに行うために使用できる。一部の実施形態において、ICC100は、1つまたは複数のチップコンポーネントを含むチップセットであることができる。メモリ102および論理計算コンポーネント104は異なるチップコンポーネントに集積できる。一部の実施形態において、メモリ102は、恒久的な記憶を提供するために使用できる。一部の例では、メモリ102は、一度書き込むことができ、その後は読出し専用であるプログラマブルリードオンリメモリ(PROM)であることができる。一部の例では、メモリ102は、再フォーマットおよび再プログラムできる電気的消去可能プログラマブルリードオンリメモリ(EEPROM)またはフラッシュメモリであることができる。一部の実施形態において、論理計算コンポーネントは、特定用途向け集積回路(ASIC)またはシングルチップマイクロコンピュータ(SCM)であることができる。
【００１５】
一部のコンピュータネットワークでは、データまたはトランザクションのプライバシーを守るために暗号通信が実装される。例えば、ブロックチェーンネットワークでは、2つのノードがトランザクションをプライベートに保ちたければ、ブロックチェーンネットワークにおける他のノードがトランザクションの詳細を認められないように、ノードはトランザクションデータを暗号化できる。暗号動作例には、限定することなく、対称鍵暗号化および非対称鍵暗号化を含む。対称暗号化は、暗号化(平文から暗号文を生成)のためにも復号(暗号文から平文を生成)のためにも単一の鍵を使用する暗号化プロセスを指す。
【００１６】
非対称暗号化は、各々秘密鍵および公開鍵であって、それぞれのユーザだけに知られている秘密鍵および公然と広めることができる公開鍵を含む鍵ペアを使用する。ユーザが別のユーザの公開鍵を使用してデータを暗号化でき、そして暗号化データはその別のユーザの秘密鍵を使用して復号できる。
【００１７】
非対称暗号化はデジタル署名を提供するために使用できるが、それは、取引の参加者が取引の他の参加者の他に取引の有効性を確認することを可能にする。例えば、ユーザがメッセージにデジタル署名でき、そして別のユーザが、デジタル署名に基づいてメッセージがそのユーザによって送信されたことを確認できる。デジタル署名は、メッセージが転送中に改竄されていないことを保証するためにも使用できる。例えば、ユーザAがユーザBにメッセージを送信することになる。ユーザAは、メッセージのハッシュを生成し、次いで、その秘密鍵を使用して、ハッシュを暗号化して暗号化ハッシュとしてデジタル署名を提供する。ユーザAは、メッセージにデジタル署名を添付し、そしてユーザBにデジタル署名付きメッセージを送信する。ユーザBは、ユーザAの公開鍵を使用してデジタル署名を復号し、そしてハッシュを抽出する。ユーザBは、メッセージをハッシュし、そして両ハッシュを比較する。両ハッシュが同じであれば、ユーザBは、メッセージが実際にユーザAからであり、かつ改竄されなかったことを確認できる。
【００１８】
ICC100は、ユーザの暗号鍵をセキュアに管理し、そしてユーザのID情報を検証することに基づいて暗号動作を行うために使用できる。一部の実施形態において、ID情報は、指紋、声紋、心拍情報および虹彩情報などの、ユーザの生体情報であることができる。メモリ102は、ICC100ユーザのID情報および暗号鍵を記憶するために使用できる。メモリ102は、ID認証アルゴリズム(例えば、コンピュータ実行可能コードとして)および暗号動作アルゴリズム(例えば、コンピュータ実行可能コードとして)も記憶できる。一部の実施形態において、メモリ102に記憶される情報およびアルゴリズムは、ICC100がリバースエンジニアリングされたときでも漏洩を防止するために暗号化される。暗号動作を行うことの要求がユーザから受け取られると、論理計算コンポーネント104は、ID認証アルゴリズムに基づいて、ユーザから収集されるID情報およびメモリ102に記憶された信頼されたユーザID情報を使用してユーザのIDを検証できる。例えば、ID情報がユーザの指紋のユーザの指紋画像であれば、ID認証アルゴリズムは、ユーザから収集される指紋画像および記憶された指紋画像を比較するローカル認証アルゴリズムであることができる。収集された指紋画像が記憶された指紋画像と一致すれば、ユーザのIDは検証成功とされ、論理計算コンポーネント104は次いで、暗号鍵が記憶されるようにできる、またはメモリ102に記憶された既存の暗号鍵を使用して、要求された暗号動作を行える。暗号動作が行われた後に、動作結果がICC100によって出力できる。ICC100を使用することによって、暗号動作は、ユーザのIDが検証または認証された後にだけ記憶できるまたは行える。そのため、ICC100を使用するユーザの権限が保証できる。その上、暗号鍵が暗号文としてICC100に記憶されるので、暗号動作はICC100内部で行われる。動作結果だけがICC100から出力される。このように、暗号鍵のセキュリティが保証できる。
【００１９】
108で、暗号動作アルゴリズムがICC100に書き込まれる。暗号動作アルゴリズムは、データ暗号化、データ復号およびデジタル署名検証などの暗号動作を行うために使用できる。110で、ID検証アルゴリズムをICC100に書き込める。ID検証アルゴリズムは、ユーザのIDを検証して、ユーザが暗号動作を行うためにICC100を使用するのを許可できるかどうかを判定するために使用できる。
【００２０】
112で、認可ID情報がICC100に入力される。認可ID情報はICC100の初期化中にICC100に入力できる。一部の実施形態において、認可ID情報は、指紋、声紋、心拍情報または虹彩情報などの、ユーザの生体情報であることができる。一部の実施形態において、認可ID情報はICC100の所有者によって入力できる。本明細書の実施形態で更に論じられることになるように、認可ID情報を入力したユーザは、それを使用して、ICC100への暗号鍵入力を制御できる。認可ID情報に基づいてユーザIDが検証できない限り、暗号鍵はICC100に入力できない。
【００２１】
認可ID情報は、暗号鍵を格納するまたは暗号動作を行うことの認可を提供するように、ID検証を行うために使用できる。ID情報は、ICC100と通信可能に結合される計算デバイスによって収集できる。例えば、計算デバイスは、ユーザの生体情報を検出できるスマートウォッチであることができる。
【００２２】
一部の実施形態において、メモリ102の内容がクリアされ、そして認可ID情報がメモリ102に書き込まれる。一部の実施形態において、メモリ102は永久記憶メモリである。一部の実施形態において、改竄を防止するために、ユーザのID情報は、一度メモリ102の記憶ユニットに書き込めるだけである。既存のID情報を置き換えるために新たなID情報が使用される必要があれば、新たなID情報が書き込める前にメモリ102の内容が消去されてよい。一部の実施形態において、認可ID情報は、メモリ102への書込み前に暗号化されてセキュリティを強化できる。
【００２３】
114で、1つまたは複数の暗号鍵がICC100のメモリ102に書き込まれる。一部の実施形態において、1つまたは複数の暗号鍵がメモリに書き込まれる前に、ユーザのID情報およびメモリ102に1つまたは複数の暗号鍵を書き込むことの要求が受け取られる。ID情報は、指紋、声紋、心拍情報または虹彩情報などの、生体情報であることができる。ID情報は、ICC100と通信可能に結合される計算デバイスによって収集できる。一部の実施形態において、認可ID情報がメモリ102から読み出されてユーザのIDを検証する。検証は、114で受け取られるユーザのID情報を認可ID情報と照合することに基づいて行える。ID情報が一致すれば、検証は成功である。ユーザは次いで、ICC100の正規ユーザとして判定され、そして1つまたは複数の暗号鍵は、メモリ102に書き込まれるのを許可される。そうでなければ、要求は却下される。一部の実施形態において、1つまたは複数の暗号鍵は、メモリ102への書込み前に暗号化されてセキュリティを強化する。一部の実施形態において、1つまたは複数の暗号鍵は、認可情報を記憶した記憶ユニットと別々のメモリ102の記憶ユニットに書き込める。
【００２４】
一部の実施形態において、ICC100は、ユーザのID情報および暗号動作を行うことの要求を受け取ってよい。ID情報は、ICC100と通信可能に結合される計算デバイスによって収集できる。例えば、計算デバイスは、ユーザの生体情報を検出できるスマートウォッチであることができる。ID情報が収集された後に、それはICC100に送信できる。一部の実施形態において、暗号動作が行われることになるデータもICC100に送信できる。例えば、暗号動作が暗号化であれば、対応するデータは、暗号化されることになるデータファイルであることができる。その後、112でメモリ102に書き込まれた認可ID情報がメモリ102から読み出されてID検証を行える。ID検証は、114で受け取られるID情報を認可ID情報と比較することに基づいて行える。ID情報が一致すれば、検証は成功であり、そして対応する暗号鍵情報がメモリ102から読み出されて暗号動作を行う。ID情報が一致しなければ、検証は不成功である。次いで暗号動作を行うことの要求は拒否できる。一部の実施形態において、ID検証は、特定の種類の受け取られたID情報に基づいて110でICC100に書き込まれたID検証アルゴリズムを使用して行える。一部の実施形態において、暗号動作は、108でICC100に書き込まれた暗号動作アルゴリズムに基づいて行える。上記したように、暗号動作は、暗号化、復号、またはデータにデジタル署名を追加することであることができる。暗号動作を行った後に、動作結果が116で出力できる。
【００２５】
図2は、本明細書の実施形態に従うICCを使用して暗号動作を行うためのプロセス200の一例を例示するフローチャートである。202で、暗号動作を行うことの要求が受け取られる。暗号動作の例には、データ暗号化、復号、およびデジタル署名を追加することを含むことができる。
【００２６】
204で、ユーザのID情報が受け取られる。図1の説明で論じたように、ID情報は、計算デバイスによって収集され、そしてICCに送信できる。206で、ID情報が検証できる。一部の実施形態において、ID情報は、ICCのメモリに記憶されたID情報と比較できる。ID情報が記憶されたID情報と一致すれば、検証は成功であり、次いで要求された暗号動作が、ICCのメモリに記憶されたユーザの暗号鍵を使用して208で行える。そうでなければ、プロセス200は212で終了する。208の後に、プロセス200は、動作結果が返される210に進む。動作結果は、208で行われた暗号動作次第であり得る。例えば、暗号動作がファイル暗号化であれば、ユーザの公開鍵を使用して暗号化されたファイルが返され得る。同様に、暗号動作がファイル復号であれば、ユーザの秘密鍵を使用して復号されたファイルが返され得る。暗号動作がデジタル署名を追加することであれば、その秘密鍵によって生成されたユーザのデジタル署名付きファイルが返され得る。210の後に、プロセスは212で終了する。
【００２７】
図3は、本明細書の実施形態に従うICCを使用して1つまたは複数の暗号動作を行うためのトークンを生成するためのプロセス300の一例を例示するフローチャートである。302で、1つまたは複数の暗号動作を行う認可の要求がICCによって受け取られる。要求される認可は、或る回数または所定の期間の間暗号動作を行うことの認可の1つまたは複数であることができる。例えば、ユーザのIDが検証された後に、ユーザはICCを使用して、そのIDを再び検証する必要なく暗号動作を要求回数または要求時間内に行える。暗号動作例には、データ暗号化、復号、またはデジタル署名を追加することを含むことができる。
【００２８】
304で、ユーザのID情報がICCによって受け取られる。ID情報は、ICC100と通信可能に結合される計算デバイスによって収集できる。例えば、計算デバイスは、心拍または指紋情報などの、ユーザの生体情報を検出できるスマートウォッチであることができる。ID情報が収集された後に、それはICC100に送信できる。
【００２９】
306で、受け取ったID情報が検証できる。検証は、ユーザのID情報を認可ID情報と照合することに基づいて行える。ID情報が一致すれば、検証は成功である。ユーザは次いで、ICC100の正規ユーザとして判定され、そして1つまたは複数の暗号鍵が、メモリ102に書き込まれるのを許可される。そうでなければ、検証は不成功であり、プロセス300は312で終了する。ID情報が検証成功とされれば、308でトークンが生成されてICCに一時的に記憶される。トークンは、302で受け取った要求に基づいて生成できる。一部の実施形態において、トークンは、ユーザIDを検証する必要なく或る回数または所定の時間に暗号動作を行うことの認可を提供できる。例えば、トークンは、どちらの条件が最初に満たされようとも、次の5つの受け取られるファイルにまたは次の3時間内にデジタル署名を追加することの認可を提供するために生成できる。一部の実施形態において、トークンは、それが満了するまたは尽きるとクリアされてICCから除去できる。
【００３０】
310で、トークン情報が返される。一部の実施形態において、返されたトークン情報は、ICCが挿入または統合または通信可能に結合される計算デバイスを通じてユーザによって見ることができる。例えば、ユーザIDを検証することなく5回ファイル暗号化を行うことの要求に基づいてトークンが生成されれば、そのような情報が返されてユーザによって見ることができる。310の後に、プロセス300は312で終了する。トークンが生成された後に、トークンによって示されるユーザ認可に基づいて暗号動作が行える。プロセスの1つのそのような例が図4の説明で論じられる。
【００３１】
図4は、本明細書の実施形態に従うトークンに基づいてICCを使用して1つまたは複数の暗号動作を行うためのプロセス400の一例を例示するフローチャートである。402で、暗号動作を行うことの要求が受け取られる。404で、ICCに一時的に記憶されたトークンが取り出される。406で、要求された暗号動作がトークンに基づいて認可されるかどうかが判定される。yesであれば、プロセス400は408に進み、暗号動作が行われる。プロセス400が412で終了する前に、410で暗号動作結果が返され得る。例えば、ユーザID検証を必要とする前に3回の暗号化動作が行えることをトークンが示し、かつデータ暗号化を行うことが要求であれば、データ暗号化動作は認可されて、行える。410で復号データが返され得る。次の30分内にファイル復号動作が行えることをトークンが示す場合、トークンは30分後に満了することになり、その後受け取られるファイル復号を行うことの要求は不認可であり、拒否されることになる。要求された動作が不認可であると406で判定されれば、プロセス400は412で終了する。一部の実施形態において、412でプロセス400を終了させる代わりに、ユーザは、そのID情報を再び検証して、要求された暗号動作を行うことの認可を得るように促され得る。
【００３２】
図5は、本明細書の実施形態に従う鍵管理デバイス500の一例を例示する図である。一部の実施形態において、ユーザのための暗号動作を行うためにICCによって使用される暗号鍵は鍵管理デバイス500によって管理できる。鍵管理デバイス500は鍵管理504およびアルゴリズム管理514を行える。鍵管理504は、暗号鍵を記憶する506、書き込む508、ランダムに生成する510、および削除する512ことを含むことができる。暗号鍵は、暗号動作を行うためにICCの正規ユーザと関連付けられる鍵である。
【００３３】
アルゴリズム管理514によって管理されるアルゴリズムには、ID検証アルゴリズム516、デジタル署名検証アルゴリズム518、暗号化および復号アルゴリズム520ならびにトークンアルゴリズム522を記憶および管理することを含むことができる。ID検証アルゴリズム516は、図3のステップ306の説明で論じたようにID検証を行うために使用できる。デジタル署名検証アルゴリズム518は、デジタル署名検証を行うために使用できる。暗号化および復号アルゴリズム520は、図2のステップ208および図4の408で論じたように要求された暗号動作を行うために使用できる。トークンアルゴリズム522は、図3および図4の説明で論じたように、ユーザIDを検証する必要なく要求された暗号動作を行うことの時間制限または数量制限を管理するために使用できる。
【００３４】
一部の実施形態において、鍵管理デバイス500はICCのバックアップとして役立つことができる。たとえICCが紛失または破壊されても、暗号動作を行うための暗号鍵およびアルゴリズムは鍵管理デバイス500から取り出せる。
【００３５】
一部の実施形態において、鍵管理デバイス500は入力管理524も行える。鍵管理デバイス500は、ICCに通信可能に結合されて、アルゴリズム入力526、ID情報入力528、暗号鍵入力530、デジタル署名生成532およびID検証534を管理できる。
【００３６】
図6は、本明細書の実施形態に従うID情報カード(IIC)604を使用してデータ暗号化および復号を行うためのプロセス600の一例を例示するスイムレーン図である。高レベルでは、プロセス600は、計算デバイス602とIIC604との間で行われる。計算デバイス602は、IIC604に暗号化ファイルを復号するように要求し、そのためそれはファイルを更新できる。ファイルが更新された後に、計算デバイス602は、更新ファイルがIIC604によって暗号化されるように要求し、そして暗号化ファイルを記憶できる。
【００３７】
計算デバイス602は、図7に表されるものなど、いかなる計算デバイスであることもできる。図7は、本明細書の実施形態に従うIICが挿入、統合または通信可能に結合できる計算デバイスの例700を表す。一部の実施形態において、IIC702は、計算デバイスに便宜に挿入できる電子カードであることができる。一部の実施形態において、IIC702は、IIC702を収容するシェルまたはハードウェアパッケージであることができる。一部の実施形態において、ICC704はIIC702に統合できるまたは組み込める。
【００３８】
IIC702が統合または挿入または通信可能に結合できる計算デバイス例には、モノのインターネット(IoT)デバイス706、スマートバンド708、スマートウォッチ710、ラップトップ712(もしくはデスクトップコンピュータ)またはスマートフォン714を含むことができるが、これに限定されない。IIC702は、有線または無線接続を通じて計算デバイスと通信できる。
【００３９】
図6に戻って参照すると、606で、計算デバイス602がファイル復号要求を開始または受信する。一部の実施形態において、計算デバイス602はファイル復号の要求を開始することが可能である。計算デバイス602には、コンピュータ、サーバまたはスマートフォンを含むことができる。一部の実施形態において、計算デバイス602は、スマートバンドまたはスマートウォッチなどのウェアラブルデバイスであることができるが、それは、要求を開始することが可能である別の計算デバイスから復号要求を受信できる。608で、計算デバイス602は、復号されることになるファイルを取り出す。610で、計算デバイス602は、IIC604に含まれるICCを使用するID検証のためにID情報を収集する。一部の実施形態において、ID情報は、指紋、声紋、心拍情報および虹彩情報などの、ユーザの生体情報であることができる。計算デバイス602は、生体情報を収集する指紋センサ、マイクロホン、心拍センサまたは虹彩スキャナを含むことができる。ファイル復号要求、ファイルおよび収集されたID情報は次いでIIC604に送信できる。
【００４０】
612で、IIC604がファイル復号要求、ファイルおよびID情報を受信する。614で、IIC604は、受信したID情報が事前に記憶された認可ID情報と一致するかどうかを検証する。検証を行うことに関する詳細は図1の説明で論じられている。検証が成功であれば、616でファイルは、IIC604に含まれるICCによって復号できる。そうでなければ、プロセスは632で終了する。復号ファイルは計算デバイス602に返送できる。復号ファイルを受信した後に、618でファイルは計算デバイス602に表示できる。一部の実施形態において、ファイルはコンピュータまたは別々のディスプレイデバイスに送られて表示できる。620で、表示されたファイルは更新でき、そして暗号化のためにIIC604に要求を送り返せる。622で、計算デバイスは、ファイル暗号化のためにIICによって検証されることになるユーザのID情報を収集できる。
【００４１】
624で、IIC604は、ファイル暗号化要求、更新ファイルおよびID情報を受信する。626で、IIC604は、ID情報が事前に記憶された認可ID情報と一致するかどうかを検証する。検証が成功であれば、プロセス600は、IIC604が更新ファイルを暗号化し、そして計算デバイス602に暗号化された更新ファイルを返送する628に進む。そうでなければ、プロセス600は632で終了する。630で、計算デバイス602は暗号化ファイルを受信および記憶する。一部の実施形態において、計算デバイス602は、暗号化ファイルを保管のために別の計算デバイスに転送できる。
【００４２】
図8は、本明細書の実施形態に従うプロセス800の一例を例示するスイムレーン図である。特に、プロセス800は、ブロックチェーントランザクションにデジタル署名をセキュアかつ便宜に追加するために行える。高レベルでは、プロセス800は、ウェアラブルデバイス802、スマート端末804およびブロックチェーンノード806によって行える。スマート端末804は、コンピュータ、スマートフォンまたは販売時点端末などの計算デバイスであることができる。ウェアラブルデバイス802は、スマートウォッチまたはスマートバンドなどのウェアラブル計算デバイスであることができる。ウェアラブルデバイス802は、図1の説明で論じられたICCなどの、統合、組込または挿入型ICCを含むことができる。ブロックチェーンノード806はコンセンサスノードと称することができ、コンセンサスノードは、それぞれのエンティティ(例えば、ブロックチェーンユーザ、金融機関、保険会社)によって動作できる。ブロックチェーンにおけるコンセンサスノードは、コンセンサスプロトコルを実行して、ブロックチェーンにトランザクションを追加し、そしてブロックチェーンネットワークの全体的な状態を更新できる。
【００４３】
808で、スマート端末804が取引要求を受け取る。810で、スマート端末は、ブロックチェーン上で取引を行うためにトランザクションデータを収集する。トランザクションデータは2者以上の参加者間の取引を表すことができる。取引の例には、限定することなく、価値があるもの(例えば、資産、製品、サービス、通貨)の交換を含むことができる。
【００４４】
812で、スマート端末804はトランザクションデータのハッシュ値を計算する。ハッシングは、トランザクションデータ(列データとして提供される)を固定長ハッシュ値(同じく列データとして提供される)へ変換するプロセスである。ハッシュ値を非ハッシュ化してトランザクションデータを得ることは可能でない。ハッシングは、トランザクションデータの僅かな変更さえ結果として完全に異なるハッシュ値になることを保証する。更には、上記したように、ハッシュ値は固定長である。すなわち、トランザクションデータのサイズにかかわらず、ハッシュ値の長さは固定される。ハッシングは、ハッシュ関数を通じてトランザクションデータを処理してハッシュ値を生成することを含む。ハッシュ関数の一例としては、限定することなく、セキュアハッシュアルゴリズム(SHA)-256を含み、これは256ビットハッシュ値を出力する。
【００４５】
814で、スマート端末は、ハッシュ化トランザクションデータにデジタル署名を追加するようにウェアラブルデバイスに要求する。デジタル署名は非対称暗号化を使用して生成できるが、それは、取引の参加者が取引の別の参加者の他に取引の有効性を確認することを可能にする。例えば、スマート端末804のユーザが秘密鍵を使用してハッシュ化トランザクションデータにデジタル署名でき、そして受信者は、デジタル署名に基づいてハッシュ化トランザクションデータがそのユーザによって送信されたことを確認できる。デジタル署名は、メッセージが転送中に改竄されていないことを保証するためにも使用できる。
【００４６】
816で、ウェアラブルデバイス802が組込型ICCを使用してユーザのIDを検証できる。ユーザのID情報はスマート端末804またはウェアラブルデバイス802によって収集できる。収集されたID情報は、ウェアラブルデバイス802に事前に記憶された認可ID情報と比較できる。使用されたIDが検証成功とされれば、ウェアラブルデバイス802のICCが使用されて、818でハッシュ化トランザクションデータにデジタル署名を追加し、そしてスマート端末804にデジタル署名されたハッシュ化トランザクションデータを返せる。
【００４７】
820で、スマート端末804は取引準備を完了する。822で、スマート端末804は取引を開始する。824で、ブロックチェーンノードが取引を行う。826で、ブロックチェーンノードはスマート端末804に取引結果を返す。その後、プロセス800は828で終了する。
【００４８】
図9は、本明細書の実施形態に従って実行できる方法900の一例を表す。提示を明確にするため、以降の説明は、本説明におけるその他の図との関連で方法900を全般的に記載する。しかしながら、方法900が、例えば、任意のシステム、環境、ソフトウェア、ならびにハードウェア、または適宜、システム、環境、ソフトウェアおよびハードウェアの組合せによって行えることが理解されるであろう。一部の実施形態において、方法900の様々なステップが並列に、組合せて、ループして、または任意の順に実行できる。一部の実施形態において、方法900は、本明細書の実施形態に従って記載されるICCによって行える。
【００４９】
902で、ユーザと関連する生体情報、およびICCのメモリに記憶される1つまたは複数の暗号鍵に基づいて1つまたは複数の暗号動作を行う要求が受け取られる。一部の実施形態において、1つまたは複数の暗号動作は、ユーザと関連する非対称鍵ペアに基づいて行われ、そして暗号動作には、暗号化動作、復号動作またはデジタル署名生成動作の1つまたは複数を含む。一部の実施形態において、メモリはプログラマブルリードオンリメモリ(PROM)、電気的消去可能PROM(EEPROM)またはフラッシュメモリであり、ここでは生体情報および非対称鍵ペアはメモリの別々の記憶ユニットに記憶される。
【００５０】
904で、ユーザと関連する生体情報は、事前記憶生体情報としてICCのメモリに事前に記憶された生体情報と比較される。
【００５１】
906で、生体情報が事前記憶生体情報と一致するとの判定に応じて、1つまたは複数の暗号動作が行われることを認可する。一部の実施形態において、1つまたは複数の暗号動作が行われて動作結果を発生させる。動作結果は、ICCに通信可能に結合される計算デバイスに送信されてユーザに提示される。
【００５２】
一部の実施形態において、要求は、所定の回数または所定の時間の少なくとも一方で1つまたは複数の暗号動作を行うことであり、1つまたは複数の暗号動作は、所定の回数または所定の時間の少なくとも一方で行われることが認可され、そしてコンピュータで実施される方法900は、所定の回数または所定の時間の少なくとも一方を記録するトークンを生成するステップと、トークンが満了するまでトークンを一時的に記憶するステップであり、トークンが所定の回数の1つまたは複数の暗号動作の実行または所定の時間の経過に応じて満了する、ステップと、計算デバイスにトークンを送信するステップとをさらに含む。
【００５３】
一部の実施形態において、要求は第1の要求であり、動作結果は第1の動作結果であり、そして方法900は、暗号動作を行うことの第2の要求を受け取るステップと、トークンが満了していないと判定するステップと、暗号動作を行って第2の動作結果を発生させるステップとをさらに含む。一部の実施形態において、第1の要求は第1のデータを復号することであり、第2の動作結果は第1のデータの平文であり、生体情報は第1の生体情報であり、そしてコンピュータで実施される方法は、第2の生体情報および第1のデータの平文と関連する第2のデータを暗号化することの第3の要求を受け取るステップと、第2の生体情報が事前記憶生体情報と一致するとの判定に応じて、第2のデータを暗号化して暗号化された第2のデータを提供するステップと、計算デバイスに暗号化された第2のデータを送信するステップとをさらに含む。
【００５４】
一部の実施形態において、生体情報を、事前記憶生体情報と比較するステップは生体認識に基づいて行われ、そして生体認識には、指紋認識、声紋認識、虹彩スキャン、顔認識および心拍認識の1つまたは複数を含む。
【００５５】
図10は、本明細書の実施形態に従う装置のモジュールの例を表す。装置1000はICCの一実施形態の一例であることができる。装置1000は上記した実施形態に対応でき、そして装置1000は以下を含む:
【００５６】
ユーザと関連する生体情報、およびICCのメモリに記憶される1つまたは複数の暗号鍵に基づいて1つまたは複数の暗号動作を行う要求を受け取る受取モジュール1002。
【００５７】
ユーザと関連する生体情報を、事前記憶生体情報としてICCのメモリに事前に記憶された生体情報と比較するID情報比較モジュール1004。
【００５８】
生体情報が事前記憶生体情報と一致するとの判定に応じて、1つまたは複数の暗号動作が行われることを認可する認可モジュール1006。
【００５９】
任意選択の実施形態において、生体情報を、事前記憶生体情報と比較するステップは生体認識に基づいて行われ、そして生体認識には、指紋認識、声紋認識、虹彩スキャン、顔認識および心拍認識の1つまたは複数を含む。
【００６０】
任意選択の実施形態において、1つまたは複数の暗号動作は、ユーザと関連する非対称鍵ペアに基づいて行われ、そして暗号動作には、暗号化動作、復号動作またはデジタル署名生成動作の1つまたは複数を含む。
【００６１】
任意選択の実施形態において、メモリはプログラマブルリードオンリメモリ(PROM)、電気的消去可能PROM(EEPROM)またはフラッシュメモリであり、ここでは生体情報および非対称鍵ペアはメモリの別々の記憶ユニットに記憶される。
【００６２】
前述の実施形態に例示されるシステム、装置、モジュールまたはユニットは、コンピュータチップもしくはエンティティを使用することによって実装できる、または或る機能を有する製品を使用することによって実装できる。典型的な実施形態デバイスはコンピュータであり、コンピュータは、パーソナルコンピュータ、ラップトップコンピュータ、携帯電話、カメラ付き電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、電子メール送受信デバイス、ゲーム機、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスのいかなる組合せでもあることができる。
【００６３】
装置における各モジュールの機能および役割の実施プロセスについては、前述の方法における対応するステップの実施プロセスを参照できる。簡略化のために詳細はここでは省略される。
【００６４】
装置実施形態が基本的に方法実施形態に対応するので、関連部分については、方法実施形態における関連説明を参照できる。前述した装置実施形態は単に一例である。別々の部分として記載されるモジュールは物理的に別々であってもなくてもよく、そしてモジュールとして表示される部分は、物理的モジュールであってもなくてもよく、1つの位置に設けられてもよく、またはいくつかのネットワークモジュールに分散されてもよい。モジュールの一部または全部が、本明細書の解決策の目的を達成するように実需に基づいて選択できる。当業者は創意工夫なしに本出願の実施形態を理解および実装できる。
【００６５】
本明細書に記載される手法はいくつかの技術的効果をもたらす。例えば、対象の実施形態は、ICCのユーザが暗号動作をセキュアに行うために複数の暗号鍵を格納するのを許可する。暗号鍵は、ユーザのID情報を検証することに基づいてICCに記憶できる。ID情報検証が失敗すれば、ICCは暗号鍵情報入力を却下することになる。
【００６６】
ICCに暗号動作を行うことを要求するために、ユーザのID情報が収集され、そして既に認証されてICCに記憶されたID情報に対して検証される必要がある。そのため、暗号動作を要求したユーザが暗号鍵の所有者であることが保証できる。
【００６７】
その上、ID情報および暗号鍵は、ICCのメモリへの記憶前に暗号化できる。情報は、対応するID検証および暗号動作を行うために、ICCにおいて復号されるだけである。暗号動作はICCの内部で行われ、そして動作結果だけがICCから出力される。したがって、たとえICCがハッキングまたはリバースエンジニアリングされても、ICCユーザのID情報および暗号鍵はセキュアであり、暴露できない。一部の実施形態において、ID情報および暗号鍵を暗号文で保管するために鍵管理デバイスが使用されて、ICCにバックアップを提供し、更にデータセキュリティを強化できる。
【００６８】
ユーザID情報を収集し、そして暗号動作の要求を開始するために計算デバイスが使用できる。ICCは様々な通信プロトコルを通じてワイヤレスで計算デバイスと通信できる、またはそれは計算デバイスへ統合もしくは挿入されて、セキュアな暗号動作のために容易に使用できる。
【００６９】
本明細書に記載される対象ならびに行為および動作の実施形態は、デジタル電子回路網で、有形に具現化されたコンピュータソフトウェアもしくはファームウェアで、本明細書に開示される構造およびそれらの構造等価物を含め、コンピュータハードウェアで、またはそれらの1つもしくは複数の組合せで実装できる。本明細書に記載される対象の実施形態は、1つまたは複数のコンピュータプログラム、例えば、データ処理装置による実行のために、またはその動作を制御するためにコンピュータプログラムキャリアに符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装できる。例えば、コンピュータプログラムキャリアには、命令が符号化または記憶された1つまたは複数のコンピュータ可読記憶媒体を含むことができる。キャリアは、磁気、光磁気もしくは光ディスク、ソリッドステートドライブ、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)または他の種類の媒体などの有形の非一時的コンピュータ可読媒体でよい。代替的に、または加えて、キャリアは、データ処理装置による実行のために適切な受信機装置に伝送するための情報を符号化するために発生される人工発生伝搬信号、例えば、機械発生電気、光または電磁信号でよい。コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムもしくはシリアルアクセスメモリデバイス、またはそれらの1つもしくは複数の組合せである、またはその一部であることができる。コンピュータ記憶媒体は伝搬信号でない。
【００７０】
コンピュータプログラムは、プログラム、ソフトウェア、ソフトウェアアプリケーション、アプリ、モジュール、ソフトウェアモジュール、エンジン、スクリプトまたはコードとも称してまたは記載してよく、コンパイラ型もしくはインタープリタ型言語、または宣言型もしくは手続き型言語を含め、任意の形式のプログラミング言語で書くことができ、そしてそれは、スタンドアロンプログラムとして、あるいはモジュール、コンポーネント、エンジン、サブルーチン、または計算環境であって、1つもしくは複数の場所にデータ通信ネットワークによって相互接続される1つもしくは複数のコンピュータを含んでよい環境での実行に適する他のユニットとしてを含め、任意の形式に展開できる。
【００７１】
コンピュータプログラムは、ファイルシステムにおけるファイルに対応してよいが、しなくてもよい。コンピュータプログラムは、他のプログラムもしくはデータ、例えば、マークアップ言語文書に記憶される1つもしくは複数のスクリプトを保持するファイルの一部分に、当該プログラムに専用の単一のファイルに、または複数の連係ファイル、例えば、1つもしくは複数のモジュール、サブプログラムもしくはコードの一部分を記憶するファイルに記憶できる。
【００７２】
コンピュータプログラムの実行のためのプロセッサには、例として、汎用および専用の両マイクロプロセッサ、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、プロセッサに結合される非一時的コンピュータ可読媒体から実行するためのコンピュータプログラムの命令の他にデータを受け取ることになる。
【００７３】
用語「データ処理装置」は、例としてプログラマブルプロセッサ、コンピュータまたはマルチプロセッサもしくはコンピュータを含め、データを処理するための全ての種類の装置、デバイスおよび機械を包含する。データ処理装置は、専用論理回路網、例えば、FPGA(フィールドプログラマブルゲートアレイ)、ASIC(特定用途向け集積回路)またはGPU(グラフィック処理装置)を含むことができる。同装置は、ハードウェアに加えて、コンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの1つもしくは複数の組合せを構成するコードも含むことができる。
【００７４】
本明細書に記載されるプロセスおよび論理フローは、1つまたは複数のコンピュータプログラムを実行して、入力データを演算して出力を生成することによって動作を行う1つまたは複数のコンピュータまたはプロセッサによって行える。プロセスおよび論理フローは、専用論理回路網、例えば、FPGA、ASICもしくはGPUによって、または専用論理回路網および1つもしくは複数のプログラムされたコンピュータの組合せによっても行える。
【００７５】
コンピュータプログラムの実行に適するコンピュータは、汎用もしくは専用マイクロプロセッサもしくは両方、または任意の他の種類の中央処理装置に基づくことができる。一般に、中央処理装置は、リードオンリメモリまたはランダムアクセスメモリまたは両方から命令およびデータを受け取ることになる。コンピュータの要素には、命令を実行するための中央処理装置ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスを含むことができる。中央処理装置およびメモリは、専用論理回路網によって補足、またはそれに統合できる。
【００７６】
一般に、コンピュータは、1つまたは複数の記憶デバイスも含むか、または作動的に結合されてデータを受け取るもしくはデータを転送することになる。記憶デバイスは、例えば、磁気、光磁気もしくは光ディスク、ソリッドステートドライブ、または任意の他の種類の非一時的、コンピュータ可読媒体であることができる。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。したがって、コンピュータは、ローカルおよび/またはリモートである、1つまたは複数のメモリなどの、1つまたは複数の記憶デバイスに結合されてよい。例えば、コンピュータは、コンピュータの不可欠なコンポーネントである1つまたは複数のローカルメモリを含むことができる、またはコンピュータは、クラウドネットワークにある1つまたは複数のリモートメモリに結合できる。その上、コンピュータは、別のデバイス、例えば、いくつか挙げると、移動電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲーム機、全地球測位システム(GPS)受信機、またはポータブル記憶デバイス、例えば、ユニバーサルシリアルバス(USB)フラッシュドライブに組み込める。
【００７７】
コンポーネントは、直接か1つまたは複数の中間コンポーネントを介してか、互いに電気的または光学的になど通信可能に接続されることによって互い「に結合」できる。コンポーネントの一方が他方へ統合されても、コンポーネントは互い「に結合」できる。例えば、プロセッサへ統合された記憶コンポーネント(例えば、L2キャッシュコンポーネント)はプロセッサ「に結合」されている。
【００７８】
ユーザとの対話を提供するために、本明細書に記載される対象の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、例えば、LCD(液晶ディスプレイ)モニタ、ならびにユーザがコンピュータに入力を提供できる入力デバイス、例えば、キーボードおよびポインティングデバイス、例えば、マウス、トラックボールまたはタッチパッドを有するコンピュータに実装できる、またはそれと通信するように構成できる。ユーザとの対話を提供するために他の種類のデバイスも使用でき、例えば、ユーザに提供されるフィードバックは任意の形態の感覚フィードバック、例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバックであることができ、そしてユーザからの入力は、音響、音声または触覚入力を含め、任意の形態で受け取れる。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、それから文書を受信することによって、例えば、ユーザのデバイス上のウェブブラウザから受信される要求に応じてウェブブラウザにウェブページを送信することによって、またはユーザデバイス、例えば、スマートフォンもしくは電子タブレット上で実行するアプリと対話することによって、ユーザと対話できる。また、コンピュータは、パーソナルデバイス、例えば、メッセージングアプリケーションを実行しているスマートフォンにテキストメッセージまたは他の形式のメッセージを送信し、そして折り返しユーザから応答メッセージを受信することによって、ユーザと対話できる。
【００７９】
本明細書は、システム、装置およびコンピュータプログラムコンポーネントに関して用語「ように構成される」を使用する。1つまたは複数のコンピュータのシステムが特定の動作または行為を行うように構成されることは、システムが自らに、動作に際してシステムに同動作または行為を行わせるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せをインストールしたことを意味する。1つまたは複数のコンピュータプログラムが特定の動作または行為を行うように構成されることは、1つまたは複数のプログラムが、データ処理装置によって実行されると、装置に同動作または行為を行わせる命令を含むことを意味する。専用論理回路網が特定の動作または行為を行うように構成されることは、回路網が同動作または行為を行う電子論理を有することを意味する。
【００８０】
本明細書が多くの具体的な実施詳細を含むが、これらは、請求項自体によって定められる、特許請求されるものの範囲への限定としてでなく、むしろ特定の実施形態に固有であり得る特徴の記述として解釈されるべきである。別々の実施形態の文脈で本明細書に記載される或る特徴が、組合せて単一の実施形態でも実現できる。反対に、単一の実施形態の文脈で記載される様々な特徴が、別々に複数の実施形態でも、または任意の適切な下位組合せでも実現できる。その上、特徴が或る組合せで作用すると上記され、しかも当初そのように特許請求され得るが、特許請求された組合せからの1つまたは複数の特徴が一部の場合に同組合せから削除でき、請求項は下位組合せまたは下位組合せの変形とされ得る。
【００８１】
同様に、動作が特定の順に図面に描かれかつ特許請求の範囲に列挙されるが、これは、望ましい結果を達成するために、そのような動作が図示される特定の順にもしくは順番に行われること、または全ての例示された動作が行われることを必要とすると理解されるべきでない。或る状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記した実施形態における様々なシステムモジュールおよびコンポーネントの分離は、全ての実施形態においてそのような分離を必要とすると理解されるべきでなく、記載されたプログラムコンポーネントおよびシステムが一般に単一のソフトウェア製品に共に統合できるまたは複数のソフトウェア製品へ実装できることが理解されるべきである。
【００８２】
対象の特定の実施形態が記載された。他の実施形態は以下の特許請求の範囲内である。例えば、特許請求の範囲に列挙される行為は異なる順に行え、それでも望ましい結果を達成できる。一例として、添付図に描かれるプロセスは、望ましい結果を達成するために、必ずしも図示される特定の順または順番を必要とするわけではない。一部の場合には、マルチタスキングおよび並列処理が有利であり得る。
【符号の説明】
【００８３】
100  ID暗号チップ(ICC)
102  メモリ
104  論理計算コンポーネント
500  鍵管理デバイス
504  鍵管理
506  記憶
508  書込み
510  ランダム生成
512  削除
514  アルゴリズム管理
516  ID検証アルゴリズム
518  デジタル署名検証アルゴリズム
520  暗号化および復号アルゴリズム
522  トークンアルゴリズム
524  入力管理
526  アルゴリズム入力
528  ID情報入力
530  暗号鍵入力
532  デジタル署名生成
534  ID検証
602  計算デバイス
604  ID情報カード(IIC)
702  IIC
704  ICC
706  モノのインターネット(IoT)デバイス
708  スマートバンド
710  スマートウォッチ
712  ラップトップ
714  スマートフォン
802  ウェアラブルデバイス
804  スマート端末
806  ブロックチェーンノード
1000  装置
1002  受取モジュール
1004  ID情報比較モジュール
1006  認可モジュール
【図１】
0006871411.tif 000002
【図２】
0006871411.tif 000003
【図３】
0006871411.tif 000004
【図４】
0006871411.tif 000005
【図５】
0006871411.tif 000006
【図６】
0006871411.tif 000007
【図７】
0006871411.tif 000008
【図８】
0006871411.tif 000009
【図９】
0006871411.tif 000010
【図１０】
0006871411.tif 000011