(57)【要約】  電子デバイスが鍵デバイス（５）と関連付けされる電子デバイスのおいてデータを暗号化する方法（４００）。各デバイスは、各ペアが第１の秘密鍵及び第１の公開鍵を含む非対称暗号ペアと関連付けされる。第２の秘密鍵及び公開鍵はそれぞれ、第１の秘密鍵、第１の公開鍵及び決定的鍵に基づき決定されてもよい。秘密は、第２の秘密鍵及び公開鍵に基づき決定されてもよい。電子デバイス（３）におけるデータは、決定された秘密又は秘密に基づく暗号鍵を利用して暗号化されてもよい。決定的鍵を示す情報は、当該情報が格納されうる鍵デバイス（５）に送信されてもよい。
2019511855.tif 000002
【特許請求の範囲】
【請求項１】
電子デバイスにおいてデータを暗号化するコンピュータによって実現される方法であって、前記電子デバイス（Ｓ）は鍵デバイス（Ｃ）と関連付けされ、前記電子デバイスは更に第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされ、前記鍵デバイスは第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされ、当該方法は、
前記電子デバイスにおいて、決定的鍵（ＤＫ）を決定するステップと、
前記電子デバイスにおいて、前記鍵デバイスから前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信するステップと、
前記電子デバイスにおいて、少なくとも前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び前記決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定するステップと、
前記電子デバイスにおいて、少なくとも前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び前記決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定するステップと、
少なくとも前記第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定するステップと、
前記電子デバイスにおいて、前記決定された秘密又は前記決定された秘密に基づく暗号鍵を利用して前記データを暗号化するステップと、
前記決定的鍵（ＤＫ）を示す情報を、前記情報を格納可能な前記鍵デバイスに送信するステップと、
を有する方法。
【請求項２】
前記鍵デバイスにおいて、前記決定的鍵（ＤＫ）を示す情報を格納するステップを更に有する、請求項１記載の方法。
【請求項３】
前記決定的鍵（ＤＫ）は、メッセージ（Ｍ）に基づく、請求項１又は２記載の方法。
【請求項４】
前記電子デバイスにおいて、前記メッセージ（Ｍ）を生成し、前記メッセージ（Ｍ）のハッシュを決定することに基づき前記決定的鍵（ＤＫ）を決定するステップを有する、請求項３記載の方法。
【請求項５】
少なくとも前記第１の電子デバイス公開鍵（Ｐ１Ｓ）及び前記決定的鍵（ＤＫ）に基づき第２の電子デバイス公開鍵（Ｐ２Ｓ）を決定するステップを有する、請求項１乃至４何れか一項記載の方法。
【請求項６】
共通の生成器（Ｇ）を備えた共通の楕円曲線暗号化（ＥＣＣ）システムを利用することを示す通知を前記電子デバイスから前記鍵デバイスに送信するステップを有する、請求項１乃至５何れか一項記載の方法。
【請求項７】
前記第１の電子デバイス公開鍵（Ｐ１Ｓ）及び前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）は、前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の鍵デバイス秘密鍵（Ｖ１Ｃ）のそれぞれと前記共通の生成器（Ｇ）との楕円曲線点乗算に基づく、請求項６記載の方法。
【請求項８】
前記共通のＥＣＣシステムにおいて指定される許容範囲におけるランダムな整数に基づき前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）を生成し、
Ｐ１Ｓ＝Ｖ１Ｓ×Ｇ
の式に従って前記第１の電子デバイス秘密鍵（Ｖ１Ｃ）と前記共通の生成器（Ｇ）との楕円曲線点乗算に基づき前記第１の電子デバイス公開鍵（Ｐ１Ｓ）を生成するステップを有する、請求項６又は７記載の方法。
【請求項９】
Ｖ２Ｓ＝Ｖ１Ｓ＋ＤＫ
の式に従って前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）と前記決定的鍵（ＤＫ）とのスカラ加算に基づき前記第２の電子デバイス秘密鍵（Ｖ２Ｓ）を生成するステップを有する、請求項６乃至８何れか一項記載の方法。
【請求項１０】
前記決定的鍵（ＤＫ）に対する楕円曲線点加算によって、少なくとも前記第１の電子デバイス公開鍵（Ｐ１Ｓ）に基づき第２の電子デバイス公開鍵（Ｐ２Ｓ）を生成するステップを有する、請求項６乃至９何れか一項記載の方法。
【請求項１１】
前記第２の電子デバイス公開鍵（Ｐ２Ｓ）は、
Ｐ２Ｓ＝Ｐ１Ｓ＋ＤＫ×Ｇ
の式に従って前記決定的鍵（ＤＫ）と前記共通の生成器（Ｇ）との楕円曲線点乗算に対する楕円曲線点加算によって、前記第１の電子デバイス公開鍵（Ｐ１Ｓ）に基づく、請求項１０記載の方法。
【請求項１２】
前記決定的鍵（ＤＫ）に対する楕円曲線点加算によって、少なくとも前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づき前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）を生成するステップを有する、請求項６乃至１１何れか一項記載の方法。
【請求項１３】
前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、
Ｐ２Ｃ＝Ｐ１Ｃ＋ＤＫ×Ｇ
の式に従って、前記決定的鍵（ＤＫ）と前記共通の生成器（Ｇ）との楕円曲線点乗算に対する楕円曲線点加算によって、前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づく、請求項１２記載の方法。
【請求項１４】
前記決定された秘密及び前記電子デバイスの識別情報に基づき前記暗号鍵を決定するステップを有する、請求項１乃至１３何れか一項記載の方法。
【請求項１５】
前記電子デバイスと関連付けされたデータストレージにおいて、前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）を格納するステップを有する、請求項１乃至１４何れか一項記載の方法。
【請求項１６】
電子デバイスにおいてデータを解読するコンピュータによって実現される方法であって、前記データは上述したデータを暗号化する方法に従って暗号化され、当該データを解読する方法は、
前記電子デバイスにおいて、前記鍵デバイスから前記決定的鍵（ＤＫ）を示す情報を受信するステップと、
前記受信した決定的鍵（ＤＫ）を示す情報に基づき前記秘密を決定するステップと、
前記電子デバイスにおいて、前記秘密又は前記秘密に基づく暗号鍵を利用して前記暗号化データを解読するステップと、
を有する方法。
【請求項１７】
前記電子デバイスにおいて、認証メッセージ（ＭＡ）を生成し、前記認証メッセージ（ＭＡ）を前記鍵デバイスに送信するステップを有する、請求項１６記載の方法。
【請求項１８】
前記メッセージ（ＭＡ）のハッシュを決定することによって、決定的認証鍵（ＤＫＡ）を決定するステップを有する、請求項１７記載の方法。
【請求項１９】
前記鍵デバイスにおいて、第２の鍵デバイス秘密鍵（Ｖ２Ｃ）及び第２の鍵デバイス公開鍵（Ｐ２Ｃ）を有する第２の非対称暗号ペアを生成するステップを有する、請求項１６乃至１８何れか一項記載の方法。
【請求項２０】
前記第２の鍵デバイス秘密鍵（Ｖ２Ｃ）は、決定的認証鍵（ＤＫＡ）及び前記第１の鍵デバイス秘密鍵（Ｖ１Ｃ）に基づき、前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、前記決定的認証鍵（ＤＫＡ）及び前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づく、請求項１８又は１９記載の方法。
【請求項２１】
前記鍵デバイスにおいて、決定的認証鍵（ＤＫＡ）及び前記第２の鍵デバイス秘密鍵（Ｖ２Ｃ）に基づき署名された認証メッセージ（ＳＭＡ）を生成するステップと、
前記電子デバイスにおいて、前記鍵デバイスから前記署名された認証メッセージ（ＳＭＡ）を受信するステップと、
前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）によって前記署名されたメッセージ（ＳＭＡ）を検証するステップと、
前記署名された認証メッセージ（ＳＭＡ）を検証した結果に基づき前記鍵デバイスを認証するステップと、
を有する、請求項２０記載の方法。
【請求項２２】
前記電子デバイスにおいて、前記鍵デバイスから前記決定的鍵（ＤＫ）を示す情報を要求するステップと、
前記鍵デバイスにおいて、前記メッセージ（Ｍ）に基づき署名されたメッセージ（ＳＭ）を生成するステップと、
前記署名されたメッセージ（ＳＭ）を前記電子デバイスに送信するステップと、
前記電子デバイスにおいて、前記署名されたメッセージ（ＳＭ）を検証するステップと、
前記電子デバイスにおいて、前記秘密が前記データを解読するため決定可能となるように、前記メッセージ（Ｍ）を抽出するステップと、
を有する、請求項１６乃至２１何れか一項記載の方法。
【請求項２３】
電子デバイスにおいてデータを暗号化するコンピュータシステムであって、
第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされた前記電子デバイスと、
第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされた鍵デバイスと、
を有し、
前記電子デバイスは、
決定的鍵（ＤＫ）を決定し、
前記鍵デバイスから前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信し、
少なくとも前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び前記決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定し、
少なくとも前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び前記決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定し、
少なくとも前記第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定し、
前記決定された秘密又は前記決定された秘密に基づく暗号鍵を利用して前記電子デバイス上で前記データを暗号化する、
よう構成されるプロセッサを有し、
前記決定的鍵（ＤＫ）を示す情報は、前記鍵デバイスに格納されるコンピュータシステム。
【請求項２４】
データを解読するよう更に構成され、
前記電子デバイスのプロセッサは、
前記鍵デバイスから前記決定的鍵（ＤＫ）を示す情報を受信し、
前記決定的鍵（ＤＫ）を示す情報に基づき前記秘密を決定し、
前記決定された秘密又は前記決定された秘密に基づく暗号鍵を利用して前記データを解読するよう構成される、請求項２３記載のコンピュータシステム。
【請求項２５】
データを暗号化する電子デバイスであって、当該電子デバイスは鍵デバイスと関連付けされ、当該電子デバイスは、第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされ、前記鍵デバイスは、第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされ、当該電子デバイスは、
決定的鍵（ＤＫ）を決定し、
前記関連付けされた鍵デバイスから前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信し、
少なくとも前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び前記決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定し、
少なくとも前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び前記決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定し、
少なくとも前記第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定し、
前記決定された秘密又は前記決定された秘密に基づく暗号鍵を利用して前記電子デバイス上で前記データを暗号化する、
よう構成されるプロセッサを有し、
前記決定的鍵（ＤＫ）を示す情報は、前記情報が格納可能な前記鍵デバイスに送信される電子デバイス。
【請求項２６】
請求項１乃至２２何れか一項記載の方法を電子デバイスの処理デバイスに実現させる機械可読な命令を有するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般にコンピュータ関連セキュリティ及び暗号化の分野に関する。より詳細には、それは、電子デバイス上に格納されているデータを暗号化する方法、システム及びデバイスを提供する。それは、特に、限定することなく、携帯電話、タブレットデバイス又はラップトップを含むパーソナル計算デバイス上のセキュリティをエンハンスするのに適している。本開示は更に、暗号化されたデータを解読する方法、システム及びデバイスに関する。
【背景技術】
【０００２】
暗号化は、例えば、電子デバイスが遺失又は盗難されたとき、電子デバイスのハードディスク上のデータをプロテクトするための技術に関する。電子デバイスは、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、モバイル通信デバイス及び他の何れかの形態の計算デバイスを含んでもよい。電子デバイスは、自然人、企業の従業員などの人間のグループ、バンキングシステムなどのシステムに関連付けされてもよい。
【０００３】
いくつかのケースでは、電子デバイスのハードディスク上のデータは、パスワード、パスフレーズ又はＰＩＮによってプロテクトされてもよい。しかしながら、４〜８文字のＰＩＮなどの短いコードは、異なる文字の組み合わせを試すことによって容易に決定できる。パスワード及びパスフレーズは、ＰＩＮよりもセキュアでありうる。しかしながら、セキュリティのレベルは、長いコードワードのセット又はセンテンスを記憶するユーザに依存する。
【０００４】
他のケースでは、暗号鍵は、電子デバイスのハードディスク上のデータをプロテクトするのに利用されうる。暗号鍵は、当該暗号鍵を送信するため電子デバイスに物理的に接続される必要があるＵＳＢドライブ上に格納されうる。しかしながら、ＵＳＢドライブから電子デバイスへの暗号鍵の送信中に生成される電磁信号のため、送信される鍵は依然として第三者によって取得されうる。
【０００５】
従って、そのような暗号データプロテクションにおける問題は、電子デバイスへの秘密鍵の送信である。
【０００６】
本明細書に含まれた文献、行為、物質、デバイス、物などの何れかの議論は、これらの題材の何れか又は全てが従来技術の基礎の一部を構成するか、あるいは、本出願の各請求項の優先日前に存在したかのように本開示に関連する分野における共通の一般的知識であったという自認としてとられるべきでない。
【０００７】
本明細書を通じて、“有する”という単語又は“有すること”などの変形は、説明された要素、整数若しくはステップ又は要素、整数若しくはステップのグループの包含を意味するが、他の何れかの要素、整数若しくはステップ又は要素、整数若しくはステップのグループの排除を意味すると理解される。
【０００８】
以下の文献、WO2015/175854  A2,  CN103440209  B,  US2007055880,  US2010023771,  DE102010002241,  US2012011362,  US2012100833,  US2012331287,  WO2013053058,  US8522011,  US2014082358,  US2015213433及びEP2975570は、本発明の技術的背景に関連する背景を提供する。
【発明の概要】
【０００９】
本発明は、コンピュータにより実現される方法を提供しうる。それは、セキュリティ方法を提供しうる。それは、電子デバイス（Ｓ）においてデータを暗号化する方法を提供し、電子デバイスは鍵デバイス（Ｃ）と関連付けされうる。電子デバイスは更に、第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされ、鍵デバイスは第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされてもよい。
【００１０】
当該方法は、
電子デバイスにおいて、決定的鍵（ＤＫ）を決定するステップ、
電子デバイスにおいて、鍵デバイスから第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信するステップ、
電子デバイスにおいて、少なくとも第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定するステップ、
電子デバイスにおいて、少なくとも第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定するステップ、
少なくとも第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定するステップ、
電子デバイスにおいて、決定された秘密又は決定された秘密に基づく暗号鍵を利用してデータを暗号化するステップ、及び／又は、
決定的鍵（ＤＫ）を示す情報を、当該情報を格納可能な鍵デバイスに送信するステップ、を有してもよい。
【００１１】
当該方法は、鍵デバイスにおいて、決定的鍵（ＤＫ）を示す情報を格納するステップを更に有してもよい。
【００１２】
決定的鍵（ＤＫ）は、メッセージ（Ｍ）に基づくものであってもよい。当該方法は、電子デバイスにおいて、メッセージ（Ｍ）を生成するステップを有してもよい。当該方法は更に、メッセージ（Ｍ）のハッシュを決定することに基づき決定的鍵（ＤＫ）を決定するステップを有してもよい。鍵デバイス上に決定的鍵を示す情報を格納するステップは、鍵デバイス上にメッセージ（Ｍ）を格納することを含んでもよい。
【００１３】
当該方法は、少なくとも第１の電子デバイス公開鍵（Ｐ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２の電子デバイス公開鍵（Ｐ２Ｓ）を決定するステップを有してもよい。
【００１４】
当該方法はまた、共通の生成器（Ｇ）を備えた共通の楕円曲線暗号化（ＥＣＣ）システムを利用することを示す通知を電子デバイスから鍵デバイスに送信するステップを有してもよい。
【００１５】
第１の電子デバイス公開鍵（Ｐ１Ｓ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）は、第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の鍵デバイス秘密鍵（Ｖ１Ｃ）のそれぞれと共通の生成器（Ｇ）との楕円曲線点乗算に基づくものであってもよい。
【００１６】
当該方法は、第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を生成するステップを有してもよい。例えば、第１の電子デバイス秘密鍵（Ｖ１Ｓ）は、共通のＥＣＣシステムにおいて指定された許容範囲におけるランダムな整数に基づき生成されてもよく、第１の電子デバイス公開鍵（Ｐ１Ｓ）は、
Ｐ１Ｓ＝Ｖ１Ｓ×Ｇ
の式に従って第１の電子デバイス秘密鍵（Ｖ１Ｃ）と共通の生成器（Ｇ）との楕円曲線点乗算に基づき生成されてもよい。
【００１７】
第２の電子デバイス秘密鍵（Ｖ２Ｓ）は、
Ｖ２Ｓ＝Ｖ１Ｓ＋ＤＫ
の式に従って第１の電子デバイス秘密鍵（Ｖ１Ｓ）と決定的鍵（ＤＫ）とのスカラ加算に基づくものであってもよい。
【００１８】
第２の電子デバイス公開鍵（Ｐ２Ｓ）は、決定的鍵（ＤＫ）に対する楕円曲線点加算によって、少なくとも第１の電子デバイス公開鍵（Ｐ１Ｓ）に基づくものであってもよい。具体例では、第２の電子デバイス公開鍵（Ｐ２Ｓ）は、
Ｐ２Ｓ＝Ｐ１Ｓ＋ＤＫ×Ｇ
の式に従って決定的鍵（ＤＫ）と共通の生成器（Ｇ）との楕円曲線点乗算に対する楕円曲線点加算によって、第１の電子デバイス公開鍵（Ｐ１Ｓ）に基づくものであってもよい。
【００１９】
第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、決定的鍵（ＤＫ）に対する楕円曲線点加算によって、少なくとも第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づくものであってもよい。具体例では、第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、
Ｐ２Ｃ＝Ｐ１Ｃ＋ＤＫ×Ｇ
の式に従って、決定的鍵（ＤＫ）と共通の生成器（Ｇ）との楕円曲線点乗算に対する楕円曲線点加算によって、第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づくものであってもよい。
【００２０】
当該方法は、決定された秘密に基づき暗号鍵を決定するステップを有してもよい。例えば、暗号鍵は、秘密及び電子デバイスの識別情報に基づくものであってもよい。当該識別情報は、電子デバイスのシリアル番号を有してもよい。
【００２１】
当該方法は、互いに通信するように電子デバイスと鍵デバイスとを接続するステップを有してもよい。例えば、電子デバイスは、ブルートゥース（登録商標）などの無線プロトコル、あるいは、例えば、インターネット又はローカル通信ネットワークなどの通信ネットワークを介し鍵デバイスに接続されてもよい。あるいは、電子デバイスは、例えば、電子デバイスの適切なポート又はケーブルを介し、配線によって鍵デバイスに接続されてもよい。
【００２２】
当該方法は更に、電子デバイスと関連付けされたデータストレージにおいて、第１の鍵デバイス公開鍵（Ｐ１Ｃ）を格納するステップを有してもよい。
【００２３】
さらに又はあるいは、本発明は、電子デバイスにおいてデータを解読するコンピュータによって実現される方法を提供してもよく、データは上述したデータを暗号化する方法に従って暗号化され、当該データを解読する方法は、
電子デバイスにおいて、鍵デバイスから決定的鍵（ＤＫ）を示す情報を受信するステップと、
受信した決定的鍵（ＤＫ）を示す情報に基づき秘密を決定するステップと、
電子デバイスにおいて、秘密又は秘密に基づく暗号鍵を利用して暗号化データを解読するステップと、
を有する。
【００２４】
当該方法は、鍵デバイスを認証するステップを有してもよい。このため、当該方法は、電子デバイスにおいて、認証メッセージ（ＭＡ）を生成し、認証メッセージ（ＭＡ）を鍵デバイスに送信するステップを有してもよい。
【００２５】
当該方法は、鍵デバイスにおいて、第２の鍵デバイス秘密鍵（Ｖ２Ｃ）及び第２の鍵デバイス公開鍵（Ｐ２Ｃ）を有する第２の非対称暗号ペアを生成するステップを有してもよい。第２の鍵デバイス秘密鍵（Ｖ２Ｃ）は、決定的認証鍵（ＤＫＡ）及び第１の鍵デバイス秘密鍵（Ｖ１Ｃ）に基づくものであってもよい。第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、決定的認証鍵（ＤＫＡ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づくものであってもよい。
【００２６】
当該方法は、決定的認証鍵（ＤＫＡ）を決定するステップを有してもよい。例えば、決定的認証鍵（ＤＫＡ）は、メッセージ（ＭＡ）のハッシュを決定するなどによって、認証メッセージ（ＭＡ）に基づき決定されてもよい。
【００２７】
当該方法は、鍵デバイスにおいて、決定的認証鍵（ＤＫＡ）及び第２の鍵デバイス秘密鍵（Ｖ２Ｃ）に基づき署名された認証メッセージ（ＳＭＡ）を生成するステップを有してもよい。
【００２８】
当該方法は更に、電子デバイスにおいて、鍵デバイスから署名された認証メッセージ（ＳＭＡ）を受信するステップと、第２の鍵デバイス公開鍵（Ｐ２Ｃ）によって署名されたメッセージ（ＳＭＡ）を検証するステップと、署名された認証メッセージ（ＳＭＡ）を検証した結果に基づき鍵デバイスを認証するステップとを有してもよい。
【００２９】
データを解読する方法は、電子デバイスにおいて、鍵デバイスから決定的鍵（ＤＫ）を示す情報を要求するステップを有してもよい。決定的鍵（ＤＫ）を示す情報がメッセージ（Ｍ）を有する実施例では、鍵デバイスにおいて当該要求を受信したことに応答して、鍵デバイスは、メッセージ（Ｍ）に基づき署名されたメッセージ（ＳＭ）を生成し、署名されたメッセージ（ＳＭ）を電子デバイスに送信してもよい。署名されたメッセージ（ＳＭ）は、メッセージ（Ｍ）及び第１又は第２の鍵デバイス秘密鍵に基づき生成されてもよい。
【００３０】
データを解読する方法は更に、電子デバイスにおいて、署名されたメッセージ（ＳＭ）を検証し、電子デバイスにおいて、秘密がデータを解読するため決定可能となるように、メッセージ（Ｍ）を抽出するステップを有してもよい。
【００３１】
本発明はまた、上述した方法の何れかの態様又は実施例の実現のためのコンピュータにより実現されるシステムを提供してもよい。それは、電子デバイスにおいてデータを暗号化するコンピュータシステムを提供してもよく、当該コンピュータシステムは、
第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされた電子デバイスと、
第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされた鍵デバイスと、
を有し、
電子デバイスは、
決定的鍵（ＤＫ）を決定し、
鍵デバイスから第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信し、
少なくとも第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定し、
少なくとも第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定し、
少なくとも第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定し、
決定された秘密又は決定された秘密に基づく暗号鍵を利用して電子デバイス上でデータを暗号化するよう構成されるプロセッサを有し、
決定的鍵（ＤＫ）を示す情報は、鍵デバイスに格納される。
【００３２】
決定的鍵（ＤＫ）は、メッセージ（Ｍ）に基づくものであってもよい。プロセッサは、メッセージ（Ｍ）を生成するよう構成されてもよい。プロセッサは更に、メッセージ（Ｍ）のハッシュを決定したことに基づき決定的鍵（ＤＫ）を決定するよう構成されてもよい。
【００３３】
プロセッサは、少なくとも第１の電子デバイス公開鍵（Ｐ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２の電子デバイス公開鍵（Ｐ２Ｓ）を決定するよう構成されてもよい。
【００３４】
システムでは、電子デバイスはインタフェースを有してもよく、鍵デバイスは、電子デバイスと鍵デバイスとの間の通信を確立するための鍵デバイスインタフェースを有してもよい。例えば、電子デバイスは、ブルートゥースなどの無線プロトコル、あるいは、例えば、インターネット又はローカル通信ネットワークなどの通信ネットワークを介し鍵デバイスに接続されてもよい。あるいは、電子デバイスは、例えば、電子デバイスの適切なポート又はケーブルを介し、配線によって鍵デバイスに接続されてもよい。
【００３５】
電子デバイスのインタフェースは、関連付けされた鍵デバイスの鍵デバイスインタフェースに、共通の生成器（Ｇ）を備えた共通の楕円曲線暗号化（ＥＣＣ）システムを利用したことを示す通知を送信するよう構成されてもよい。
【００３６】
第１の電子デバイス公開鍵（Ｐ１Ｓ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）は、第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の鍵デバイス秘密鍵（Ｖ１Ｃ）のそれぞれと生成器（Ｇ）との楕円曲線点乗算に基づくものであってもよい。
【００３７】
プロセッサは、第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を生成するよう構成されてもよい。例えば、第１の電子デバイス秘密鍵（Ｖ１Ｓ）は、共通のＥＣＣシステムにおいて指定された許容範囲におけるランダムな整数に基づき生成されてもよく、第１の電子デバイス公開鍵（Ｐ１Ｓ）は、
Ｐ１Ｓ＝Ｖ１Ｓ×Ｇ
の式に従って第１の電子デバイス秘密鍵（Ｖ１Ｃ）と共通の生成器（Ｇ）との楕円曲線点乗算に基づき生成されてもよい。
【００３８】
第２の電子デバイス秘密鍵（Ｖ２Ｓ）は、
Ｖ２Ｓ＝Ｖ１Ｓ＋ＤＫ
の式に従って第１の電子デバイス秘密鍵（Ｖ１Ｓ）と決定的鍵（ＤＫ）とのスカラ加算に基づくものであってもよい。
【００３９】
第２の電子デバイス公開鍵（Ｐ２Ｓ）は、決定的鍵（ＤＫ）に対する楕円曲線点加算によって、少なくとも第１の電子デバイス公開鍵（Ｐ１Ｓ）に基づくものであってもよい。具体例では、第２の電子デバイス公開鍵（Ｐ２Ｓ）は、
Ｐ２Ｓ＝Ｐ１Ｓ＋ＤＫ×Ｇ
の式に従って決定的鍵（ＤＫ）と共通の生成器（Ｇ）との楕円曲線点乗算に対する楕円曲線点加算によって、第１の電子デバイス公開鍵（Ｐ１Ｓ）に基づくものであってもよい。
【００４０】
第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、決定的鍵（ＤＫ）に対する楕円曲線点加算によって、少なくとも第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づくものであってもよい。具体例では、第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、
Ｐ２Ｃ＝Ｐ１Ｃ＋ＤＫ×Ｇ
の式に従って、決定的鍵（ＤＫ）と共通の生成器（Ｇ）との楕円曲線点乗算に対する楕円曲線点加算によって、第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づくものであってもよい。
【００４１】
プロセッサは、決定された秘密に基づき暗号鍵を決定するよう構成されてもよい。例えば、暗号鍵は、決定された秘密及び電子デバイスの識別情報に基づくものであってもよい。当該識別情報は、電子デバイスのシリアル番号を有してもよい。
【００４２】
電子デバイスは、第１の鍵デバイス公開鍵（Ｐ１Ｃ）が格納されうるデータストレージを有してもよい。
【００４３】
鍵デバイスは、決定的鍵を示す情報を少なくとも格納するための鍵デバイスデータストレージを有してもよい。
【００４４】
上述したコンピュータシステムは更に、データを解読するよう構成され、電子デバイスのプロセッサは、
鍵デバイスから決定的鍵（ＤＫ）を示す情報を受信し、
決定的鍵（ＤＫ）を示す情報に基づき秘密を決定し、
決定された秘密又は決定された秘密に基づく暗号鍵を利用してデータを解読するよう構成される。
【００４５】
プロセッサは、鍵デバイスを認証するよう構成されてもよい。このため、プロセッサは、認証メッセージ（ＭＡ）を生成し、認証メッセージ（ＭＡ）を鍵デバイスに送信してもよい。
【００４６】
鍵デバイスは、第２の鍵デバイス秘密鍵（Ｖ２Ｃ）及び第２の鍵デバイス公開鍵（Ｐ２Ｃ）を有する第２の非対称暗号ペアを生成するよう構成されうる鍵デバイスプロセッサを有してもよい。第２の鍵デバイス秘密鍵（Ｖ２Ｃ）は、決定的認証鍵（ＤＫＡ）及び第１の鍵デバイス秘密鍵（Ｖ１Ｃ）に基づくものであってもよい。第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、決定的認証鍵（ＤＫＡ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づくものであってもよい。
【００４７】
鍵デバイスプロセッサは更に、決定的認証鍵（ＤＫＡ）を決定するよう構成されてもよい。例えば、決定的認証鍵（ＤＫＡ）は、メッセージ（ＭＡ）のハッシュを決定するなどによって、認証メッセージ（ＭＡ）に基づき決定されてもよい。
【００４８】
鍵デバイスプロセッサは、決定的認証鍵（ＤＫＡ）及び第２の鍵デバイス秘密鍵（Ｖ２Ｃ）に基づき署名された認証メッセージ（ＳＭＡ）を生成するよう構成されてもよい。
【００４９】
電子デバイスのプロセッサは、鍵デバイスから署名された認証メッセージ（ＳＭＡ）を受信し、第２の鍵デバイス公開鍵（Ｐ２Ｃ）によって署名されたメッセージ（ＳＭＡ）を検証し、署名された認証メッセージ（ＳＭＡ）を検証した結果に基づき鍵デバイスを認証するよう構成されてもよい。
【００５０】
電子デバイスのプロセッサは、鍵デバイスから決定的鍵（ＤＫ）を示す情報を要求してもよい。決定的鍵（ＤＫ）を示す情報がメッセージ（Ｍ）を有する実施例では、鍵デバイスにおいて当該要求を受信したことに応答して、鍵デバイスは、メッセージ（Ｍ）に基づき署名されたメッセージ（ＳＭ）を生成し、署名されたメッセージ（ＳＭ）を電子デバイスに送信してもよい。署名されたメッセージ（ＳＭ）は、メッセージ（Ｍ）及び第１又は第２の鍵デバイス秘密鍵に基づき生成されてもよい。
【００５１】
電子デバイスのプロセッサは更に、署名されたメッセージ（ＳＭ）を検証し、秘密がデータを解読するため決定可能となるように、メッセージ（Ｍ）を抽出するよう構成されてもよい。
【００５２】
データを暗号化する電子デバイスであって、当該電子デバイスは鍵デバイスと関連付けされ、当該電子デバイスは、第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされ、鍵デバイスは、第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされ、当該電子デバイスは、
決定的鍵（ＤＫ）を決定し、
関連付けされた鍵デバイスから第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信し、
少なくとも第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定し、
少なくとも第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定し、
少なくとも第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定し、
決定された秘密又は決定された秘密に基づく暗号鍵を利用して電子デバイス上でデータを暗号化するよう構成されるプロセッサを有し、
決定的鍵（ＤＫ）を示す情報は、情報が格納可能な鍵デバイスに送信される電子デバイス。
【００５３】
上述した方法の何れか１つを電子デバイスの処理デバイスに実現させる機械可読な命令を有するコンピュータプログラム。
【００５４】
本発明の１つ以上の実施例又は態様は、第１のノード（Ｃ）において、第１のノード（Ｃ）及び第２のノード（Ｓ）と共通する共通の秘密（ＣＳ）を決定するコンピュータにより実現される方法を有するか、あるいは利用してもよい。第１のノード（Ｃ）は、第１のノードのマスタ秘密鍵（Ｖ１Ｃ）及び第１のノードのマスタ公開鍵（Ｐ１Ｃ）を有する第１の非対称暗号ペアと関連付けされてもよく、第２のノード（Ｓ）は、第２のノードのマスタ秘密鍵（Ｖ１Ｓ）及び第２のノードのマスタ公開鍵（Ｐ１Ｓ）を有する第２の非対称暗号ペアと関連付けされてもよい。当該方法は、
−少なくとも第１のノードのマスタ秘密鍵（Ｖ１Ｃ）及び決定的鍵（ＤＫ）に基づき第１のノードの第２秘密鍵（Ｖ２Ｃ）を決定するステップと、
少なくとも第２のノードのマスタ公開鍵（Ｐ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２のノードの第２公開鍵（Ｐ２Ｓ）を決定するステップと、
第１のノードの第２の秘密鍵（Ｖ２Ｃ）及び第２のノードの第２の公開鍵（Ｐ２Ｓ）に基づき共通の秘密（ＣＳ）を決定するステップとを有し、
第２のノード（Ｓ）は、第１のノードの第２の公開鍵（Ｐ２Ｃ）及び第２のノードの第２の秘密鍵（Ｖ２Ｓ）に基づき同一の共通の秘密（Ｓ）を有し、
第１のノードの第２の公開鍵（Ｐ２Ｃ）は、少なくとも第１のノードのマスタ公開鍵（Ｐ１Ｃ）及び決定的鍵（ＤＫ）に基づき、
第２のノードの第２の秘密鍵（Ｖ２Ｓ）は、少なくとも第２のノードのマスタ秘密鍵（Ｖ１Ｓ）及び決定的鍵（ＤＫ）に基づく。
【００５５】
決定的鍵（ＤＫ）は、メッセージ（Ｍ）に基づく。
【００５６】
従って、本発明は、電子デバイス及び／又はそこに格納されるデータのエンハンスされたセキュリティのための技術及びデバイスを提供しうる。本発明はまた、本発明のエンハンスされたセキュリティ機構のため、改良された電子デバイスを提供してもよい。
【図面の簡単な説明】
【００５７】
本開示の具体例が、以下を参照して説明される。
【図１】データを暗号化する一例となるシステムの概略図である。
【図２】図１の電子デバイス及び鍵デバイスを登録するコンピュータにより実現される方法のフローチャートである。
【図３】秘密を利用して図１の電子デバイスにおいてデータを暗号化するコンピュータにより実現される方法のフローチャートである。
【図４】図１の鍵デバイスを認証するコンピュータにより実現される方法のフローチャートである。
【図５】鍵デバイスの認証に続く電子デバイスにおける暗号化されたデータを解読するコンピュータにより実現される方法のフローチャートである。
【図６】一例となる処理デバイスの概略を示す。
【発明を実施するための形態】
【００５８】
概略
電子デバイスにおいてデータを暗号化する方法、デバイス及びシステムが説明される。
【００５９】
図１は、鍵デバイス５と通信する電子デバイス３を有するコンピュータシステム１を示す。電子デバイス３は関連付けされた第１処理デバイス２３を有し、鍵デバイス５は関連付けされた第２処理デバイス２５を有する。電子デバイス３は、ラップトップコンピュータ、デスクコンピュータ、タブレットコンピュータ、モバイル通信デバイス、コンピュータサーバ又はデータを処理可能な他の何れかの計算デバイスなどのパーソナル電子デバイスであってもよい。図１に示されるような本例では、電子デバイス３はラップトップコンピュータによって表される。
【００６０】
鍵デバイス５は、モバイル通信デバイス、ＵＳＢドライブなどのポータブルメモリデバイスなどの更なるパーソナル電子デバイスであってもよい。図１に示されるような本例では、鍵デバイス５はモバイル通信デバイスによって表される。
【００６１】
電子デバイス３は、ブルートゥースなどの無線プロトコル又はインターネットやローカル通信ネットワークなどの通信ネットワークを介し鍵デバイス５と通信してもよい。あるいは、電子デバイス３は、例えば、電子デバイスのＵＳＢポート又はケーブル接続を介し鍵デバイス５に物理的に接続されてもよい。図１に示されるような本例では、電子デバイス３はブルートゥース７を介し鍵デバイス５と通信する。
【００６２】
電子デバイス３は、電子デバイスマスタ秘密鍵（Ｖ１Ｓ）及び電子デバイスマスタ公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされる。鍵デバイス５は、鍵デバイスマスタ秘密鍵（Ｖ１Ｃ）及び鍵デバイスマスタ公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされる。第１及び第２の非対称暗号ペアは、登録中に生成されてもよい。電子デバイス３及び鍵デバイス５によって実行される登録方法２００，３００は、図２を参照して以下で更に詳細に説明される。各デバイスの公開鍵は、例えば、ブルートゥース７を介しパブリックにデバイス３と５との間で共有されてもよい。
【００６３】
本発明の実施例は、第１ノード（Ｃ）において、第１ノード（Ｃ）及び第２ノード（Ｓ）と共通する共通秘密（ＣＳ）を決定し、ここで、第１ノード（Ｃ）は第１ノードマスタ秘密鍵（Ｖ１Ｃ）及び第１ノードマスタ公開鍵（Ｐ１Ｃ）を有する第１の非対称暗号ペアと関連付けされ、第２ノード（Ｓ）は第２ノードマスタ秘密鍵（Ｖ１Ｓ）及び第２ノードマスタ公開鍵（Ｐ１Ｓ）を有する第２の非対称暗号ペアと関連付けされる、として全体的に提供される技術（又はその変形）を有してもよく、当該方法又は技術は、
−少なくとも第１ノードマスタ秘密鍵（Ｖ１Ｃ）及び決定的鍵（ＤＫ）に基づき第１ノード第２秘密鍵（Ｖ２Ｃ）を決定し、
−少なくとも第２ノードマスタ公開鍵（Ｐ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２ノード第２公開鍵（Ｐ２Ｓ）を決定し、
−第１ノード第２秘密鍵（Ｖ２Ｃ）及び第２ノード第２公開鍵（Ｐ２Ｓ）に基づく共通秘密（ＣＳ）を決定し、
ここで、第２ノード（Ｓ）は第１ノード第２公開鍵（Ｐ２Ｃ）及び第２ノード第２秘密鍵（Ｖ２Ｓ）に基づき同一の共通秘密（Ｓ）を有し、
−第１ノード第２公開鍵（Ｐ２Ｃ）は、少なくとも第１ノードマスタ公開鍵（Ｐ１Ｃ）及び決定的鍵（ＤＫ）に基づき、
第２ノード第２秘密鍵（Ｖ２Ｓ）は、少なくとも第２ノードマスタ秘密鍵（Ｖ１Ｓ）及び決定的鍵（ＤＫ）に基づく、を有する。
【００６４】
決定的鍵（ＤＫ）は、メッセージ（Ｍ）に基づくものであってもよい。
【００６５】
本発明の例示的な実施例によると、電子デバイス３においてデータを暗号化するため、秘密が上述したものと同様の技術に基づき決定される。当該秘密は、電子デバイス３の秘密暗号鍵及び鍵デバイス５の公開暗号鍵に関して決定される。秘密を決定することによって、データは、決定された秘密に基づく暗号鍵（Ｅ）を利用して暗号化できる。１つ以上の具体例では、秘密は暗号鍵（Ｅ）として利用されてもよい。本技術の効果の１つは、デバイス３，５の何れかに対する暗号鍵（Ｅ）又は秘密を送信又は格納する必要がないということである。これは、従来技術の構成と比較してはるかにセキュアな手段を提供する。
【００６６】
電子デバイス３において秘密を利用してデータを暗号化するため、方法４００は、図３を参照して更に詳細に説明されるデバイス３と５との間で秘密鍵の何れも通信することなく実行される。
【００６７】
一般に、電子デバイス３によって実行されるデータを暗号化する方法は、初期的には鍵デバイス５と通信するため、電子デバイス３と鍵デバイス５とを接続することを含む、当該通信は、ブルートゥース７などの有線接続又は無線接続を介し確立されてもよい。
【００６８】
当該方法は更に、電子デバイス３によって生成されるメッセージ（Ｍ）に基づくものであってもよい決定的鍵（ＤＫ）を決定することを含む。例えば、電子デバイス３の処理デバイス２３は、メッセージ（Ｍ）を生成してもよく、その後、標準的なアルゴリズムを利用して、決定的鍵（ＤＫ）を構成するメッセージのハッシュを生成する。
【００６９】
当該方法は更に、少なくとも電子デバイスマスタ秘密鍵（Ｖ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２電子デバイス秘密鍵（Ｖ２Ｓ）を決定し、鍵デバイスマスタ公開鍵（Ｐ１Ｃ）及び決定的鍵（ＤＫ）に基づき第２鍵デバイス公開鍵（Ｐ２Ｃ）を決定することを含む。その後、秘密が、第２電子デバイス秘密鍵（Ｖ２Ｓ）及び第２鍵デバイス公開鍵（Ｐ２Ｃ）に基づき決定される。任意的には、当該方法は、少なくとも電子デバイスマスタ公開鍵（Ｐ１Ｓ）及び決定的鍵（ＤＫ）に基づき第２電子デバイス公開鍵（Ｐ２Ｓ）を決定することを含んでもよい。
【００７０】
更なる方法ステップでは、その後、データは決定された秘密に基づく暗号鍵（Ｅ）を利用して暗号化可能である。上述されたように、決定された秘密自体は暗号鍵（Ｅ）として利用されてもよく、あるいは、暗号鍵（Ｅ）は秘密に基づき決定されてもよい。電子デバイス上でデータを暗号化した後、秘密は消去されてもよく、決定的鍵（ＤＫ）又はメッセージ（Ｍ）のみが、それがセキュアに格納可能な鍵デバイス５に送信されてもよい。鍵デバイス５上に格納される決定的鍵（ＤＫ）又はメッセージ（Ｍ）は、その後、暗号化されたデータを解読するのに利用可能である。
【００７１】
暗号化／解読対象のデータは、１つ以上の個別ファイル、ファイルを含む１つ以上のフォルダ、又は電子デバイスのハードドライブ全体を含んでもよいことが理解されるであろう。いくつかの具体例では、当該方法は、暗号化／解読されるべきファイル及び／又はフォルダを選択するようユーザを促すことを含んでもよい。その場合、鍵デバイス５は、各ファイル及びフォルダの決定的鍵を示す情報を格納し、それらをリンクさせてもよい。
【００７２】
登録方法２００，３００
登録方法２００，３００の具体例が図２を参照して説明され、方法２００は電子デバイス３によって実行され、方法３００は鍵デバイス５によって実行される。これは、各デバイス３，５の第１及び第２の非対称暗号ペアを確立することを含む。
【００７３】
非対称暗号ペアは、公開鍵暗号化において利用されるものなど、関連付けされた秘密鍵及び公開鍵を含む。本例では、非対称暗号ペアは、楕円曲線暗号化（ＥＣＣ）及び楕円曲線演算の性質を利用して生成される。
【００７４】
ＥＣＣの規格は、Standards  for  Efficient  Cryptography  Group  (www.sceg.org)によって記述されたものなどの既知の規格を含んでもよい。楕円曲線暗号化はまた、US  5,600,725,  US  5,761,305,  US  5889,865,  US  5,896,455,  US  5,933,504,  US  6,122,736,  US6,141,420,  US  6,618,483,  US  6,704,870,  US  6,785,813,  US  6,078,667,  US  6,792,530において説明される。
【００７５】
方法２００，３００では、これは、電子デバイス３及び鍵デバイス５が、共通のＥＣＣシステムに配置（２１０，３１０）され、共通の生成器（Ｇ）を利用することを含む。一例では、共通のＥＣＣシステムは、ビットコインによって利用されるＥＣＣシステムであるｓｅｃｐ２５６Ｋ１に基づくものであってもよい。共通の生成器（Ｇ）は、選択、ランダムに生成又は割り当てられてもよい。
【００７６】
電子デバイス３がラップトップコンピュータであり、鍵デバイス５がモバイル通信デバイスである図１に示される具体例では、各デバイス３，５の間の通信は、モバイル通信デバイス５にインストールされる専用アプリケーションと通信するアプリケーションプログラミングインタフェース（ＡＰＩ）によって実現される。このため、ソフトウェアは、モバイル通信デバイス上にインストールされた専用アプリケーションと互換的であるラップトップコンピュータにダウンロード及びインストールされてもよい。
【００７７】
具体例では、鍵デバイス５には、鍵デバイスのソフトウェアアプリケーションだけでなく、電子デバイスのソフトウェアもまた提供されてもよい。このようにして、鍵デバイスが電子デバイスに接続されると、ソフトウェアは、鍵デバイスからのインストールを実行することによって、電子デバイス上にインストール可能である。
【００７８】
電子デバイス３によって実行される方法２００に戻って、当該方法２００は、共通のＥＣＣシステム及び共通の生成器（Ｇ）に配置（２１０）されることを含む。これは、電子デバイス３から鍵デバイス５に共通のＥＣＣシステム及び共通の生成器を示す情報を送信するか、あるいは、リモートサーバコンピュータなどの第３のデバイスから当該情報を受信することを含んでもよい。例えば、電子デバイス３は、共通の生成器（Ｇ）を備えた共通のＥＣＣシステムを利用することを示す通知をブルートゥース７を介し鍵デバイス５に送信してもよい。その後、鍵デバイス５は、共通のＥＣＣシステム及び共通の生成器（Ｇ）を利用したことに対するアクノリッジメントを示す通知を送信することによって決定してもよい。
【００７９】
方法２００はまた、電子デバイス３において、電子デバイスマスタ秘密鍵（Ｖ１Ｓ）及び電子デバイスマスタ公開鍵（Ｐ１Ｓ）を含む第１の非対称暗号ペアを生成する（２２０）ことを含む。本例では、電子デバイスマスタ秘密鍵（Ｖ１Ｓ）は、少なくとも部分的に共通のＥＣＣシステムにおいて指定された許容範囲におけるランダムな整数に基づき決定される。その後、電子デバイスマスタ公開鍵（Ｐ１Ｓ）は、式
Ｐ１Ｓ＝Ｖ１Ｓ×Ｇ      （式１）
に従って電子デバイスマスタ秘密鍵（Ｐ１Ｓ）及び共通の生成器（Ｇ）の楕円曲線点乗算に基づき決定される。
【００８０】
従って、第１の非対称暗号ペアは、
Ｖ１Ｓ：電子デバイスによって秘密に保たれる電子デバイスマスタ秘密鍵
Ｐ１Ｓ：公開されている電子デバイスマスタ公開鍵
を含む。
【００８１】
電子デバイス３は、電子デバイス３に関連付けされた第１データストレージ１３に第１の非対称暗号ペアを格納してもよい。セキュリティのため、電子デバイスマスタ秘密鍵（Ｖ１Ｓ）は、鍵が秘密のままにされることを保証するため、第１データストレージ１３のセキュア部分に格納されてもよい。
【００８２】
本例では、方法２００は、電子デバイスマスタ公開鍵（Ｐ１Ｓ）を鍵デバイス３に送信する（２３０）を含む。しかしながら、電子デバイス３上でデータを暗号化するため、当該ステップは必要でなくてもよい。
【００８３】
鍵デバイス５によって実行される方法３００に戻って、この具体例では、鍵デバイス５は、電子デバイスマスタ公開鍵（Ｐ１Ｓ）を受信し（３２０）、鍵デバイス５のストレージ要素内に受信した電子デバイスマスタ公開鍵（Ｐ１Ｓ）を格納する（３３０）。
【００８４】
方法２００と同様に、鍵デバイス５における方法３００は、鍵デバイスマスタ秘密鍵（Ｖ１Ｃ）及び鍵デバイスマスタ公開鍵（Ｐ１Ｃ）を含む第２の非対称暗号ペアを生成する（３４０）ことを含む。鍵デバイスマスタ秘密鍵（Ｖ１Ｃ）はまた、共通のＥＣＣシステムにおいて指定された許容範囲内のランダムな整数である。次に、鍵デバイスマスタ公開鍵（Ｐ１Ｃ）は、以下の式によって決定される。
【００８５】
Ｐ１Ｃ＝Ｖ１Ｃ×Ｇ      （式２）
従って、第２の非対称暗号ペアは、
Ｖ１Ｃ：鍵デバイスによって秘密に保たれる鍵デバイスマスタ秘密鍵
Ｐ１Ｃ：公開されている鍵デバイスマスタ公開鍵
を含む。
【００８６】
鍵デバイス５は、鍵デバイスの第２データストア１５に第２の非対称暗号ペアを格納してもよい。方法３００は更に、それがストレージ１３に格納されうる電子デバイス３に鍵デバイスマスタ公開鍵（Ｐ１Ｃ）を送信する（３３０）ことを含む。
【００８７】
いくつかの代替では、各マスタ公開鍵は、信頼される第三者などの第３のデバイスに関連付けされた第３データストアにおいて受信及び格納されてもよい。これは、認証機関などの公開ディレクトリとして機能する第三者を含みうる。従って、いくつかの具体例では、鍵デバイスマスタ公開鍵（Ｐ１Ｃ）は、秘密の決定が必要とされるときに限って、電子デバイス３によって要求及び受信されてもよい。
【００８８】
登録ステップは、初期的なステップとして１回だけ行われる必要がある。その後、マスタ鍵は、特に決定的鍵（ＤＫ）に依存する秘密を決定するため、セキュアな問題において再利用可能である。
【００８９】
電子デバイス３におけるデータの暗号化
電子デバイス３の秘密鍵及び鍵デバイス５の公開鍵に基づく秘密を決定することによって電子デバイス３においてデータを暗号化する一例となる方法４００が、図３を参照して説明される。当該秘密は、１つのサイクルのみについて利用されてもよく、各サイクルはデータの暗号化及び解読の完全な一巡である。
【００９０】
新たな秘密鍵及び公開鍵が暗号化及び解読の各サイクルについて電子デバイスと鍵デバイスとの双方に対して決定されうることが理解されるであろう。新たな秘密鍵及び公開鍵は、例えば、参照することによってその全体がここに援用される上述されたような同時出願された出願において更に詳細に説明されるようなメッセージ（Ｍ）を再ハッシュすることによって決定されてもよい。このようにして、サブ鍵が生成されてもよく、各サブ鍵はマスタ鍵にリンクされる。
【００９１】
メッセージ（Ｍ）を生成４１０
本例では、方法４００は、電子デバイス３においてメッセージ（Ｍ）を生成する（４１０）ことを含む。メッセージ（Ｍ）は、ランダム、擬似ランダム又はユーザにより定義されてもよい。一例では、メッセージ（Ｍ）は、Ｕｎｉｘ時間及びナンス（及び任意の値）に基づく。例えば、メッセージ（Ｍ）は、
メッセージ（Ｍ）＝Ｕｎｉｘ時間＋ナンス      （式３）
として提供されてもよい。
【００９２】
いくつかの例では、メッセージ（Ｍ）は任意である。しかしながら、メッセージ（Ｍ）は、いくつかのアプリケーションにおいて有用となりうる選択的値（Ｕｎｉｘ時間など）を有してもよいことが理解されるべきである。
【００９３】
方法４００は、メッセージ（Ｍ）が格納される鍵デバイス５にブルートゥース７を介しメッセージ（Ｍ）を送信する（４２０）ことを含む。重要なことは、メッセージ（Ｍ）は、秘密鍵に関する情報を含まないとき、非セキュアなネットワークを介し鍵デバイス５に送信されてもよい。
【００９４】
メッセージ（Ｍ）は何れかの時間に鍵デバイス５に通信されてもよいことが理解されるであろう。例えば、メッセージ（Ｍ）は、データの暗号化が完了した後に鍵デバイス５に送信されてもよい。
【００９５】
決定的鍵を決定４３０
方法４００は更に、メッセージ（Ｍ）に基づき決定的鍵（ＤＫ）を決定する（４３０）ステップを含む。本例では、これは、メッセージの暗号化ハッシュを決定することを含む。暗号化ハッシュアルゴリズムの一例は、２５６ビットの決定的鍵（ＤＫ）を生成するＳＨＡ−２５６を含む。すなわち、
ＤＫ＝ＳＨＡ−２５６（Ｍ）      （式４）
メッセージの選択は、暗号鍵（Ｅ）を生成する目的に対して任意的であってもよく、各暗号化／解読サイクルに対して新たに選択されるであろう。本例では、メッセージ（Ｍ）は、メッセージ長を短く保つため、ハッシュ処理によって１６０ビットに減少させる。
【００９６】
他のハッシュアルゴリズムが利用されてもよいことが理解されるべきである。これは、セキュアハッシュアルゴリズム（ＳＨＡ）のファミリにおける他のハッシュアルゴリズムを含んでもよい。いくつかの具体例は、ＳＨＡ３−２２４，ＳＨＡ３−２５６，ＳＨＡ３−３８４，ＳＨＡ３−５１２，ＳＨＡＫＥ１２８，ＳＨＡＫＥ２５６を含むＳＨＡ−３サブセットにおけるインスタンスを含む。他のハッシュアルゴリズムは、ＲＩＰＥＭＤ（ＲＡＣＥ  Ｉｎｔｅｇｒｉｔｙ  Ｐｒｉｍｉｔｉｖｅｓ  Ｅｖａｌｕａｔｉｏｎ  Ｍｅｓｓａｇｅ  Ｄｉｇｅｓｔ）のファミリにおけるものを含んでもよい。特定の具体例は、ＲＩＰＥＭＤ−１６０を含んでもよい。他のハッシュ関数は、Ｚｅｍｏｒ−Ｔｉｌｌｉｃｈハッシュ関数及びナップザックベースハッシュ関数に基づくものであってもよい。
【００９７】
第２秘密鍵及び公開鍵４４０，４５０，４６０を決定
それから、方法４００は、決定的鍵（ＤＫ）、すなわち、メッセージ（Ｍ）のハッシュに基づき以下の第２鍵を決定する（４４０，４５０，４６０）ことを含む。
【００９８】
第２電子デバイス秘密鍵（Ｖ２Ｓ）は、電子デバイスマスタ秘密鍵（Ｖ１Ｓ）及びメッセージ（Ｍ）のハッシュに基づき決定される（４４０）。これは、以下の式、
Ｖ２Ｓ＝Ｖ１Ｓ＋ＳＨＡ−２５６（Ｍ）      （式５）
に従って電子デバイスマスタ秘密鍵（Ｖ１Ｓ）及びメッセージ（Ｍ）のハッシュのスカラ加算に基づくものとすることができる。
【００９９】
第２電子デバイス公開鍵（Ｐ２Ｓ）は、電子デバイスマスタ公開鍵（Ｐ１Ｓ）及びメッセージ（Ｍ）のハッシュに基づき決定される（４５０）。これは、以下の式
Ｐ２Ｓ＝Ｐ１Ｓ＋ＳＨＡ−２５６（Ｍ）×Ｇ      （式６）
に基づき決定できる。
【０１００】
第２鍵デバイス公開鍵（Ｐ２Ｃ）は、鍵デバイスマスタ公開鍵（Ｐ１Ｃ）及びメッセージ（Ｍ）のハッシュに基づき決定される（４６０）。これは、以下の式
Ｐ２Ｃ＝Ｐ１Ｃ＋ＳＨＡ−２５６（Ｍ）×Ｇ      （式７）
に従って決定可能である。
【０１０１】
楕円曲線暗号化が適用される本例では、“Ｇ”は生成器を表し、演算子“＋”は楕円曲線点加算を表し、演算子“×”は楕円曲線点乗算を表すことに留意すべきである。
【０１０２】
さらに、データの暗号化のため、第２電子デバイス公開鍵Ｐ２Ｓを決定する必要はなくてもよいことに留意すべきである。以下で更に詳細に説明されるように、第２電子デバイス公開鍵Ｐ２Ｓは必要でなくてもよい。
【０１０３】
秘密を決定４７０
電子デバイス３は、その後、決定された第２電子デバイス秘密鍵（Ｖ２Ｓ）及び決定された第２鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定してもよい（４７０）。当該秘密は、以下の式
ＣＳ＝Ｖ２Ｃ×Ｐ２Ｓ      （式８）
に従って電子デバイス３によって決定されうる。
【０１０４】
秘密及び暗号鍵
秘密は、対称暗号鍵として、あるいは、対称暗号鍵を決定するための基礎として利用されてもよい。
【０１０５】
本例では、方法４００は、決定された秘密に基づき暗号鍵（Ｅ）を決定する更なるステップ４８０を有する。暗号鍵（Ｅ）は更に、暗号鍵（Ｅ）が電子デバイス３に固有であることを保証するため、電子デバイスのシリアル番号に基づく。暗号鍵（Ｅ）は、以下の式
Ｅ＝ＳＨＡ２５６（ＳＨＡ２５６（ソルト＋秘密）＋シリアル番号）      （式９）
に従って決定される。
【０１０６】
ただし、ソルト＝メッセージ（Ｍ）
本例では、ランダムなソルトのコンセプトが、暗号鍵（Ｅ）を決定するのに利用される。決定された秘密に基づく暗号鍵（Ｅ）を計算するのに適した何れかの技術が利用されてもよい（存在する場合）ことが理解されるであろう。
【０１０７】
方法４００は更に、電子デバイス３において決定された暗号鍵（Ｅ）を利用してデータを暗号化する（４９０）ことを含む。暗号鍵（Ｅ）を利用してデータを暗号化する何れか適した方法が利用されてもよいことが理解されるであろう。
【０１０８】
重要なことは、電子デバイス３は、これが鍵デバイス５のデータストレージに格納されるメッセージ（Ｍ）に基づき再計算可能であるとき、暗号鍵（Ｅ）又は秘密を格納する必要がない。
【０１０９】
暗号化データの解読
電子デバイス３におけるデータの暗号化に続いて、電子デバイス３において暗号化データを解読する方法が、図４及び５を参照して説明される。データを解読するため、電子デバイス３は、データが暗号化されたときに以前に決定された秘密を再計算する。
【０１１０】
初期的には、電子デバイス３は、互いに通信するために鍵デバイス５に接続される。各デバイス３，５を接続するステップは、デバイス上で実行される各ソフトウェアが互換的であって、同期されているか判断することを含んでもよい。
【０１１１】
鍵デバイス５を認証５００
暗号化データが電子デバイス３において解読される前に、本例では、鍵デバイス５は、電子デバイス３によって初期的に認証される。
【０１１２】
鍵デバイス５を認証する（５００）方法が、図４を参照して説明される。鍵デバイス５を認証する（５００）方法は、電子デバイス３におけるデータの解読サイクルの一部であってもよい。
【０１１３】
方法５００は、鍵デバイス５が鍵デバイス５であることを認証するのに利用される電子デバイス３における認証メッセージ（ＭＡ）を生成する（５１０）ことを含む。生成されたメッセージ（ＭＡ）は鍵デバイス５の認証のためのみに利用されてもよいことが理解される。しかしながら、いくつかの具体例では、認証メッセージ（ＭＡ）は、次の暗号化解読サイクルの暗号化処理において利用される図３を参照して説明されるように、メッセージ（Ｍ）を構成してもよい。
【０１１４】
方法５００は、電子デバイス３からブルートゥース７を介し鍵デバイス５において認証メッセージ（ＭＡ）を受信する（５２０）ことを含む。
【０１１５】
その後、鍵デバイス５は、メッセージ（ＭＡ）に基づき決定的認証鍵（ＤＫＡ）を決定する。例えば、決定的認証鍵（ＤＫＡ）は、方法４００のステップ４３０と同様の認証メッセージのハッシュであってもよく、以下の式
ＤＫＡ＝ＳＨＡ−２５６（ＭＡ）      （式１０）
に従って決定可能である。
【０１１６】
その後、鍵デバイス５は、決定的認証鍵（ＤＫＡ）に基づき新たな非対称暗号ペアを決定する。本例に特有であり、方法５００は、以下の式
Ｖ２Ｃ＝Ｖ１Ｃ＋ＳＨＡ−２５６（ＭＡ）      （式１１）
に従って第２鍵デバイス秘密鍵Ｖ２Ｃを決定する（５４０）ことを含む。
【０１１７】
方法５００はまた、以下の式
Ｐ２Ｃ＝Ｐ１Ｃ＋ＳＨＡ−２５６（ＭＡ）×Ｇ      （式１２）
に従って第２鍵デバイス公開鍵Ｐ２Ｃを決定する（５５０）ことを含む、
方法３００は更に、認証メッセージ（ＭＡ）及び決定された第２鍵デバイス秘密鍵（Ｖ２Ｃ）に基づき署名されたメッセージ（ＳＭＡ）を生成する（５６０）ことを含む。署名されたメッセージを生成することは、デジタルシグネチャアルゴリズムを適用して、認証メッセージ（ＭＡ）をデジタル署名することを含む。一例では、これは、第２鍵デバイス秘密鍵（Ｖ２Ｃ）を楕円曲線デジタルシグネチャアルゴリズム（ＥＣＤＳＡ）におけるメッセージに適用して、署名されたメッセージ（ＳＭＡ）を取得することを含む。認証メッセージ（ＭＡ）は、以下の式
ＳＭＡ＝Ｓｉｇ−Ｖ２Ｃ＜ＭＡ＞      （式１３）
に従って署名されてもよい。
【０１１８】
ＥＣＤＳＡの具体例は、ｓｅｃｐ２５６ｋ１、ｓｅｃｐ２５６ｒ１、ｓｅｃｐ３８４ｒ１、ｓｅ３ｃｐ５２１ｒ１を備えたＥＣＣシステムに基づくものを含む。
【０１１９】
署名された認証メッセージ（ＳＭＡ）は、鍵デバイス５の認証のために電子デバイス３に以降に送信される（５７０）。
【０１２０】
方法５００は、鍵デバイス５から署名された認証メッセージ（ＳＭＡ）を受信する（５８０）ことを含む。電子デバイス３は、その後、ステップ５５０において決定された第２鍵デバイス公開鍵（Ｐ２Ｃ）によって署名された認証メッセージ（ＳＭＡ）上のシグネチャを検証してもよい。
【０１２１】
デジタルシグネチャの検証は、楕円曲線デジタルシグネチャアルゴリズム（ＥＣＤＳＡ）に従って実行されてもよい。重要なことは、第２鍵デバイス秘密鍵（Ｖ２Ｃ）により署名された署名付きの認証メッセージ（ＳＭＡ）は、Ｖ２Ｃ及びＰ２Ｃは暗号ペアを構成するため、対応する第２鍵デバイス公開鍵（Ｐ２Ｃ）によってのみ正しく検証されるべきである。これらの鍵は鍵デバイスの登録時に生成された鍵デバイスマスタ秘密鍵（Ｖ１Ｃ）及び鍵デバイスマスタ公開鍵（Ｐ１Ｃ）から決定的であるため、署名された認証メッセージ（ＳＭＡ）の検証は、署名されたメッセージ（ＳＭＡ）を送信した主張する鍵デバイス５が登録中と同じ鍵デバイス５であることを認証する基礎として利用可能である。
【０１２２】
暗号化データを解読するため暗号鍵（Ｅ）を再計算
鍵デバイス５の認証成功に続いて、電子デバイス３は、秘密及び暗号鍵（Ｅ）を再計算することによって暗号化データを解読する。暗号化データを解読する一例となる方法６００が、図５を参照して説明される。
【０１２３】
方法６００は、方法４００のステップ４２０において説明されたように、鍵デバイス５に格納され、暗号化サイクルにおいて以前に利用されたメッセージ（Ｍ）を要求する（６１０）ことを含む。
【０１２４】
その後、方法６００は、メッセージ（Ｍ）を受信する（６３０）ことを含む。本例では、メッセージ（Ｍ）は、電子デバイス３に送信される前に、第２鍵デバイス秘密鍵（Ｖ２Ｃ）を利用して鍵デバイス５によって署名される（６２０）。メッセージ（Ｍ）は、以下の式、
ＳＭ＝Ｓｉｇｎ−Ｖ２ｃ＜Ｍ＞      （式１４）
に従って署名されてもよい。
【０１２５】
方法６００は更に、署名されたメッセージ（ＳＭ）を検証する（６５０）ことを含む。これは、第２鍵デバイス公開鍵（Ｐ２Ｃ）を独立に決定し、その後、ＳＭ及びＰ２Ｃに楕円曲線デジタルシグネチャアルゴリズム（ＥＣＤＳＡ）を適用することによって実行されてもよい。第２鍵デバイス公開鍵は、以下の式、
Ｐ２Ｃ＝Ｐ１Ｃ＋ＳＨＡ−２５６（Ｍ）×Ｇ      （式１５）
に従って決定されてもよい。
【０１２６】
方法６００は、その後、電子デバイス３が図３を参照して説明されたように、ステップ４３０〜４７０に続いて秘密を再計算する（６７０）ことができるように、署名されたメッセージ（Ｍ）からメッセージ（Ｍ）を抽出する（６６０）ことを含む。
【０１２７】
更なるステップ６８０において、暗号鍵（Ｅ）は、方法４００のステップ４８０を参照して説明されるように、秘密及び電子デバイスのシリアル番号に基づき再決定される。暗号鍵（Ｅ）が決定されると、データは解読可能である（６９０）。
【０１２８】
暗号化データを解読するため、図４を参照して説明されるような認証方法はいくつかの実施例に対して必要でないことが理解されるであろう。
【０１２９】
処理デバイス
上述したように、電子デバイス３及び鍵デバイス５は、ラップトップコンピュータ、タブレットコンピュータ、モバイル通信デバイス、コンピュータサーバなどのパーソナル電子デバイスであってもよい。電子デバイスは、処理デバイス２３，２５。データストア１３，１５及びユーザインタフェース１４を含んでもよい。
【０１３０】
図６は、処理デバイス２３，２５の一例を示す。処理デバイス２３，２５は、電子デバイス３又は鍵デバイス５において利用されうる。処理デバイス２３，２５は、バス１５３０を介し互いに通信するプロセッサ１５１０、メモリ１５２０及びインタフェースデバイス１５４０を含む。メモリ１５２０は、上述した方法２００，３００，４００，５００及び６００を実現するための命令及びデータを格納し、プロセッサ１５１０は、方法２００，３００，４００，５００及び６００を実現するため、メモリ１５２０からの命令を実行する。インタフェースデバイス１５４０は、ブルートゥース７などの通信ネットワークと、いくつかの例では、ユーザインタフェース１４及びデータストア１３，１５などの周辺機器との通信を実現する通信モジュールを有してもよい。処理デバイス１５０１は独立したネットワーク要素であってもよいが、処理デバイス１５０１はまた、他のネットワーク要素の一部であってもよいことに留意すべきである。さらに、処理デバイス１５０１によって実行されるいくつかの機能は、複数のネットワーク要素の間に分散されてもよい。例えば、電子デバイス３は、電子デバイス３に関連付けされたセキュアローカルエリアネットワークにおいて方法２００，４００及び方法５００，６００の一部を実行するための複数の処理デバイス２３を有してもよい。
【０１３１】
本開示はユーザ、発行者、販売者、プロバイダ又は他のエンティティが特定のアクション（署名、発行、決定、計算、送信、受信、生成などを含む）を実行すると説明している場合、この単語は、提示の簡単化のため利用される。これらのアクションはこれらのエンティティによって運営される計算デバイスによって実行されると理解されるべきである。
【０１３２】
署名は、暗号化関数を実行することを含みうる。当該関数は、クリアテキストの入力と、秘密鍵などの鍵の入力とを有する。プロセッサは、シグネチャとして利用可能な数又は文字列を計算するための関数を実行してもよい。その後、シグネチャは、署名されたテキストを提供するため、クリアテキストと一緒に提供される。メッセージテキスト又は鍵が単一のビットだけ変わる場合、シグネチャは全く変わる。シグネチャの計算はほとんど計算パワーを必要としないが、所与のシグネチャを有するメッセージを再生成することは実際的に不可能である。このように、クリアテキストのみが変更可能であり、秘密鍵が利用可能である場合、有効なシグネチャによって伴うことができる。さらに、他のエンティティは、公衆に利用可能な公開鍵を利用してシグネチャを容易に検証できる。
【０１３３】
大部分の状況では、暗号化及び解読は、プロセッサが暗号化メッセージ又はクリアテキストメッセージをそれぞれ表す出力される文字列を計算するため、暗号化関数を実行することを含む。
【０１３４】
鍵、トークン、メタデータ、トランザクション、オファー、契約、シグネチャ、スクリプト、メタデータ、インビテーションなどは、“文字列”又は“整数”タイプのプログラムコードにおける変数又は他のタイプ若しくはテキストファイルなど、データメモリに格納される数、テキスト又は文字列として表されるバイナリデータを表す。
【０１３５】
ピア・ツー・ピア台帳の具体例は、ビットコインブロックチェーンである。ビットコイン通貨で資金を移転又は料金を支払うことは、資金又は料金がトランザクションから取得されることによってビットコインブロックチェーン上のトランザクションを生成することを含む。ビットコインブロックチェーンの一例は、入力されるトランザクションハッシュ、トランザクションの量、１つ以上のデスティネーション、受取人の公開鍵、及びシグネチャを計算するため支払人の秘密鍵及び入力メッセージとしての入力トランザクションを利用することによって生成されるシグネチャを含む。トランザクションは、入力トランザクションハッシュがビットコインブロックチェーンのコピーに存在し、シグネチャが公開鍵を利用して正しいことを確認することによって検証可能である。同一の入力トランザクションハッシュが他の何れかおいても利用されていないことを保証するため、トランザクションは計算ノード（マイナ）のネットワークにブロードキャストされる。マイナは、入力トランザクションハッシュがまだ接続されず、シグネチャが有効である場合に限って、ブロックチェーン上にトランザクションを受け付けて記録する。マイナは、入力トランザクションハッシュが異なるトランザクションに既にリンクされている場合、トランザクションを拒絶する。
【０１３６】
２つのアイテムが関連付けされているとき、これは、これらのアイテムの間に論理的な接続があることを意味する。データベースでは、例えば、２つのアイテムの識別子が、これら２つのアイテムを互いに関連付けするため、同じレコードに格納されてもよい。トランザクションでは、２つのアイテムの識別子が、２つのアイテムを互いに関連付けるため、トランザクション文字列に含まれてもよい。
【０１３７】
他のエンティティを認証することは、秘密鍵を利用してトランザクションのシグネチャ文字列を計算し、エンティティがシグネチャを利用してトランザクションを検証することを可能にするため、シグネチャ文字列をエンティティに提供することを有してもよい。
【０１３８】
他のエンティティによるアカウントを有するユーザは、エンティティが電子メールアドレス、名前及び潜在的な公開鍵などのユーザに関する情報を格納することを含んでもよい。例えば、エンティティは、ＳＱＬ、ＯｒｉｅｎｔＤＢ、ＭｏｎｇｏＤＢなどのデータベースを維持してもよい。いくつかの例では、エンティティはまた、ユーザの秘密鍵の１つ以上を格納してもよい。
【０１３９】
多数の変形及び／又は修正が本開示の広範な全体的な範囲から逸脱することなく、上述した実施例に対して行いうることが、当業者に理解されるであろう。従って、本実施例は、限定的でなく例示的なものとして全ての点においてみなされるべきである。
【図１】
2019511855.tif 000003
【図２】
2019511855.tif 000004
【図３】
2019511855.tif 000005
【図４】
2019511855.tif 000006
【図５】
2019511855.tif 000007
【図６】
2019511855.tif 000008
【手続補正書】
【提出日】平成30年10月5日(2018.10.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
電子デバイスにおいてデータを暗号化するコンピュータによって実現される方法であって、前記電子デバイス（Ｓ）は鍵デバイス（Ｃ）と関連付けされ、前記電子デバイスは更に第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされ、前記鍵デバイスは第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされ、当該方法は、
前記電子デバイスにおいて、決定的鍵（ＤＫ）を決定するステップと、
前記電子デバイスにおいて、前記鍵デバイスから前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信するステップと、
前記電子デバイスにおいて、少なくとも前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び前記決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定するステップと、
前記電子デバイスにおいて、少なくとも前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び前記決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定するステップと、
少なくとも前記第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定するステップと、
前記電子デバイスにおいて、前記決定された秘密又は前記決定された秘密に基づく暗号鍵を利用して前記データを暗号化するステップと、
前記決定的鍵（ＤＫ）を示す情報を、前記情報を格納可能な前記鍵デバイスに送信するステップと、
を有する方法。
【請求項２】
前記鍵デバイスにおいて、前記決定的鍵（ＤＫ）を示す情報を格納するステップを更に有する、請求項１記載の方法。
【請求項３】
前記決定的鍵（ＤＫ）は、メッセージ（Ｍ）に基づく、請求項１又は２記載の方法。
【請求項４】
前記電子デバイスにおいて、前記メッセージ（Ｍ）を生成し、前記メッセージ（Ｍ）のハッシュを決定することに基づき前記決定的鍵（ＤＫ）を決定するステップを有する、請求項３記載の方法。
【請求項５】
少なくとも前記第１の電子デバイス公開鍵（Ｐ１Ｓ）及び前記決定的鍵（ＤＫ）に基づき第２の電子デバイス公開鍵（Ｐ２Ｓ）を決定するステップを有する、請求項１乃至４何れか一項記載の方法。
【請求項６】
共通の生成器（Ｇ）を備えた共通の楕円曲線暗号化（ＥＣＣ）システムを利用することを示す通知を前記電子デバイスから前記鍵デバイスに送信するステップを有する、請求項１乃至５何れか一項記載の方法。
【請求項７】
前記第１の電子デバイス公開鍵（Ｐ１Ｓ）及び前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）は、前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の鍵デバイス秘密鍵（Ｖ１Ｃ）のそれぞれと前記共通の生成器（Ｇ）との楕円曲線点乗算に基づく、請求項６記載の方法。
【請求項８】
前記共通のＥＣＣシステムにおいて指定される許容範囲におけるランダムな整数に基づき前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）を生成し、
Ｐ１Ｓ＝Ｖ１Ｓ×Ｇ
の式に従って前記第１の電子デバイス秘密鍵（Ｖ１Ｃ）と前記共通の生成器（Ｇ）との楕円曲線点乗算に基づき前記第１の電子デバイス公開鍵（Ｐ１Ｓ）を生成するステップを有する、請求項６又は７記載の方法。
【請求項９】
Ｖ２Ｓ＝Ｖ１Ｓ＋ＤＫ
の式に従って前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）と前記決定的鍵（ＤＫ）とのスカラ加算に基づき前記第２の電子デバイス秘密鍵（Ｖ２Ｓ）を生成するステップを有する、請求項６乃至８何れか一項記載の方法。
【請求項１０】
前記決定的鍵（ＤＫ）に対する楕円曲線点加算によって、少なくとも前記第１の電子デバイス公開鍵（Ｐ１Ｓ）に基づき第２の電子デバイス公開鍵（Ｐ２Ｓ）を生成するステップを有する、請求項６乃至９何れか一項記載の方法。
【請求項１１】
前記第２の電子デバイス公開鍵（Ｐ２Ｓ）は、
Ｐ２Ｓ＝Ｐ１Ｓ＋ＤＫ×Ｇ
の式に従って前記決定的鍵（ＤＫ）と前記共通の生成器（Ｇ）との楕円曲線点乗算に対する楕円曲線点加算によって、前記第１の電子デバイス公開鍵（Ｐ１Ｓ）に基づく、請求項１０記載の方法。
【請求項１２】
前記決定的鍵（ＤＫ）に対する楕円曲線点加算によって、少なくとも前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づき前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）を生成するステップを有する、請求項６乃至１１何れか一項記載の方法。
【請求項１３】
前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、
Ｐ２Ｃ＝Ｐ１Ｃ＋ＤＫ×Ｇ
の式に従って、前記決定的鍵（ＤＫ）と前記共通の生成器（Ｇ）との楕円曲線点乗算に対する楕円曲線点加算によって、前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づく、請求項１２記載の方法。
【請求項１４】
前記決定された秘密及び前記電子デバイスの識別情報に基づき前記暗号鍵を決定するステップを有する、請求項１乃至１３何れか一項記載の方法。
【請求項１５】
前記電子デバイスと関連付けされたデータストレージにおいて、前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）を格納するステップを有する、請求項１乃至１４何れか一項記載の方法。
【請求項１６】
電子デバイスにおいてデータを解読するコンピュータによって実現される方法であって、前記データは請求項１乃至１５何れか一項記載の方法に従って暗号化され、当該データを解読する方法は、
前記電子デバイスにおいて、前記鍵デバイスから前記決定的鍵（ＤＫ）を示す情報を受信するステップと、
前記受信した決定的鍵（ＤＫ）を示す情報に基づき前記秘密を決定するステップと、
前記電子デバイスにおいて、前記秘密又は前記秘密に基づく暗号鍵を利用して前記暗号化データを解読するステップと、
を有する方法。
【請求項１７】
前記電子デバイスにおいて、認証メッセージ（ＭＡ）を生成し、前記認証メッセージ（ＭＡ）を前記鍵デバイスに送信するステップを有する、請求項１６記載の方法。
【請求項１８】
前記メッセージ（ＭＡ）のハッシュを決定することによって、決定的認証鍵（ＤＫＡ）を決定するステップを有する、請求項１７記載の方法。
【請求項１９】
前記鍵デバイスにおいて、第２の鍵デバイス秘密鍵（Ｖ２Ｃ）及び第２の鍵デバイス公開鍵（Ｐ２Ｃ）を有する第２の非対称暗号ペアを生成するステップを有する、請求項１６乃至１８何れか一項記載の方法。
【請求項２０】
前記第２の鍵デバイス秘密鍵（Ｖ２Ｃ）は、決定的認証鍵（ＤＫＡ）及び前記第１の鍵デバイス秘密鍵（Ｖ１Ｃ）に基づき、前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）は、前記決定的認証鍵（ＤＫＡ）及び前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）に基づく、請求項１８又は１９記載の方法。
【請求項２１】
前記鍵デバイスにおいて、決定的認証鍵（ＤＫＡ）及び前記第２の鍵デバイス秘密鍵（Ｖ２Ｃ）に基づき署名された認証メッセージ（ＳＭＡ）を生成するステップと、
前記電子デバイスにおいて、前記鍵デバイスから前記署名された認証メッセージ（ＳＭＡ）を受信するステップと、
前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）によって前記署名されたメッセージ（ＳＭＡ）を検証するステップと、
前記署名された認証メッセージ（ＳＭＡ）を検証した結果に基づき前記鍵デバイスを認証するステップと、
を有する、請求項２０記載の方法。
【請求項２２】
前記電子デバイスにおいて、前記鍵デバイスから前記決定的鍵（ＤＫ）を示す情報を要求するステップと、
前記鍵デバイスにおいて、前記メッセージ（Ｍ）に基づき署名されたメッセージ（ＳＭ）を生成するステップと、
前記署名されたメッセージ（ＳＭ）を前記電子デバイスに送信するステップと、
前記電子デバイスにおいて、前記署名されたメッセージ（ＳＭ）を検証するステップと、
前記電子デバイスにおいて、前記秘密が前記データを解読するため決定可能となるように、前記メッセージ（Ｍ）を抽出するステップと、
を有する、請求項１６乃至２１何れか一項記載の方法。
【請求項２３】
電子デバイスにおいてデータを暗号化するコンピュータシステムであって、
第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされた前記電子デバイスと、
第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされた鍵デバイスと、
を有し、
前記電子デバイスは、
決定的鍵（ＤＫ）を決定し、
前記鍵デバイスから前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信し、
少なくとも前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び前記決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定し、
少なくとも前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び前記決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定し、
少なくとも前記第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定し、
前記決定された秘密又は前記決定された秘密に基づく暗号鍵を利用して前記電子デバイス上で前記データを暗号化する、
よう構成されるプロセッサを有し、
前記決定的鍵（ＤＫ）を示す情報は、前記鍵デバイスに格納されるコンピュータシステム。
【請求項２４】
データを解読するよう更に構成され、
前記電子デバイスのプロセッサは、
前記鍵デバイスから前記決定的鍵（ＤＫ）を示す情報を受信し、
前記決定的鍵（ＤＫ）を示す情報に基づき前記秘密を決定し、
前記決定された秘密又は前記決定された秘密に基づく暗号鍵を利用して前記データを解読するよう構成される、請求項２３記載のコンピュータシステム。
【請求項２５】
データを暗号化する電子デバイスであって、当該電子デバイスは鍵デバイスと関連付けされ、当該電子デバイスは、第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び第１の電子デバイス公開鍵（Ｐ１Ｓ）を有する第１の非対称暗号ペアと関連付けされ、前記鍵デバイスは、第１の鍵デバイス秘密鍵（Ｖ１Ｃ）及び第１の鍵デバイス公開鍵（Ｐ１Ｃ）を有する第２の非対称暗号ペアと関連付けされ、当該電子デバイスは、
決定的鍵（ＤＫ）を決定し、
前記関連付けされた鍵デバイスから前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）を受信し、
少なくとも前記第１の電子デバイス秘密鍵（Ｖ１Ｓ）及び前記決定的鍵（ＤＫ）に基づき第２の電子デバイス秘密鍵（Ｖ２Ｓ）を決定し、
少なくとも前記第１の鍵デバイス公開鍵（Ｐ１Ｃ）及び前記決定的鍵（ＤＫ）に基づき第２の鍵デバイス公開鍵（Ｐ２Ｃ）を決定し、
少なくとも前記第２の電子デバイス秘密鍵（Ｖ２Ｓ）及び前記第２の鍵デバイス公開鍵（Ｐ２Ｃ）に基づき秘密を決定し、
前記決定された秘密又は前記決定された秘密に基づく暗号鍵を利用して前記電子デバイス上で前記データを暗号化する、
よう構成されるプロセッサを有し、
前記決定的鍵（ＤＫ）を示す情報は、前記情報が格納可能な前記鍵デバイスに送信される電子デバイス。
【請求項２６】
請求項１乃至２２何れか一項記載の方法を電子デバイスの処理デバイスに実現させる機械可読な命令を有するコンピュータプログラム。
【国際調査報告】
2019511855.tif 000009
2019511855.tif 000010
2019511855.tif 000011