(57)【要約】  本発明の実施形態はデータ処理方法および装置を開示する。方法は、端末デバイスにより、第1の公開鍵および第1の秘密鍵を生成するステップと、鍵生成センタ（KGC）に第1の公開鍵を送信するステップであって、第1の公開鍵が、変換鍵を生成するためにKGCまたはサーバによって使用され、変換鍵が、端末デバイスの属性構造に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用される、ステップと、サーバによって送信された第2のデータを受信するステップであって、第2のデータが、サーバが変換鍵に従って第1のデータを処理した後に生成されたデータである、ステップと、第1の秘密鍵に従って第2のデータを復号するステップとを含む。本発明の実施形態において提供されるデータ処理方法および装置によれば、主な作業は、鍵を送信するために安全なチャネルを使用する必要なしにサーバによって完了され、サーバの信頼性は必要とされず、それにより、端末デバイスの性能に対する属性ベースの暗号化（ABE）システムの要件が低減される。
2019531673.tif 000002
【特許請求の範囲】
【請求項１】
データ処理システムであって、
端末デバイス、鍵生成センタKGC、およびサーバを備え、
前記端末デバイスが、第1の公開鍵および第1の秘密鍵を生成するように構成され、
前記端末デバイスが、前記鍵生成センタKGCに前記第1の公開鍵を送信するように構成され、
前記KGCが、前記端末デバイスから前記第1の公開鍵を受信し、システムパラメータ、マスタ鍵、前記KGCの内部状態情報、前記第1の公開鍵、および前記端末デバイスの属性情報に従って、前記第2の公開鍵を生成するように構成され、前記システムパラメータが前記KGCに関連する公開情報であり、前記マスタ鍵が前記KGCの秘密鍵であり、
前記KGCが、前記サーバに前記第2の公開鍵を送信するように構成され、
前記サーバが、前記KGCによって送信された前記第2の公開鍵を受信するように構成され、
前記サーバが、第1のデータを取得するように構成され、前記第1のデータが、前記端末デバイスの前記属性構造に基づいて暗号化されたデータであり、
前記サーバが、前記第2の公開鍵に従って前記第1のデータを第2のデータに変換するように構成され、
前記サーバが、前記端末デバイスに前記第2のデータを送信するようにさらに構成され、
前記端末デバイスが、前記サーバによって送信された前記第2のデータを受信し、前記第1の秘密鍵に従って前記第2のデータを復号するようにさらに構成される、システム。
【請求項２】
前記端末デバイスが、具体的に、前記システムパラメータおよび識別パラメータに従って前記第1の公開鍵および前記第1の秘密鍵を生成するように構成され、前記システムパラメータが前記KGCに関連する前記公開情報であり、前記識別パラメータが前記端末デバイスの識別情報である、請求項1に記載のシステム。
【請求項３】
前記KGCが、前記第2の公開鍵および鍵更新情報に従って変換鍵を生成するようにさらに構成され、
前記KGCが、前記端末デバイスが失効していることを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記エラープロンプトを生成し、前記サーバに前記エラープロンプトを送信するようにさらに構成され、または前記KGCが、前記端末デバイスが失効していないことを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵を生成し、前記サーバに前記変換鍵を送信するようにさらに構成され、
前記サーバが、具体的に、前記変換鍵に従って前記第1のデータを前記第2のデータに変換するように構成される、請求項1または2に記載のシステム。
【請求項４】
前記サーバが、前記KGCから鍵更新情報を受信するようにさらに構成され、前記鍵更新情報が、前記端末デバイスが失効しているかどうかを示すために使用され、
前記サーバが、前記端末デバイスが失効していることを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記エラープロンプトを生成するようにさらに構成され、または前記サーバが、前記端末デバイスが失効していないことを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵を生成し、前記変換鍵に従って前記第1のデータを前記第2のデータに変換するようにさらに構成される、請求項1または2に記載のシステム。
【請求項５】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項1から4のいずれか一項に記載のシステム。
【請求項６】
データ処理方法であって、
端末デバイスにより、第1の公開鍵および第1の秘密鍵を生成するステップと、
前記端末デバイスにより、鍵生成センタKGCに前記第1の公開鍵を送信するステップであって、その結果、サーバまたは前記KGCが前記第1の公開鍵に従って変換鍵を生成する、ステップと、
前記端末デバイスにより、前記サーバによって送信された第2のデータを受信するステップであって、前記第2のデータが、前記サーバが前記変換鍵に従って第1のデータを処理した後に生成されたデータであり、前記第1のデータが、前記端末デバイスの属性構造に基づいて暗号化され、前記サーバによって取得されたデータである、ステップと、
前記端末デバイスにより、前記第1の秘密鍵に従って前記第2のデータを復号するステップと
を含む方法。
【請求項７】
前記端末デバイスにより、KGCに前記第1の公開鍵を送信する前記ステップが、
前記端末デバイスにより、前記KGCに前記第1の公開鍵および認証情報を送信するステップであって、前記認証情報が、前記端末デバイスが前記第1の秘密鍵を記憶することを示すために使用される、ステップ
を含む、請求項6に記載の方法。
【請求項８】
端末デバイスにより、第1の公開鍵および第1の秘密鍵を生成する前記ステップが、
前記端末デバイスにより、システムパラメータに従って前記第1の公開鍵および前記第1の秘密鍵を生成するステップであって、前記システムパラメータが前記KGCに関連する公開情報である、ステップ
を含む、請求項6または7に記載の方法。
【請求項９】
前記端末デバイスにより、前記第1の秘密鍵に従って前記第2のデータを復号する前記ステップが、
前記端末デバイスにより、前記システムパラメータおよび前記第1の秘密鍵に従って前記第2のデータを復号するステップ
を含む、請求項8に記載の方法。
【請求項１０】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項6から9のいずれか一項に記載の方法。
【請求項１１】
データ処理方法であって、
鍵生成センタKGCにより、端末デバイスから第1の公開鍵を受信するステップと、
前記KGCにより、システムパラメータ、マスタ鍵、前記第1の公開鍵、前記端末デバイスの属性情報、および前記KGCの内部状態情報に従って、前記第2の公開鍵を生成するステップであって、前記システムパラメータが前記KGCに関連する公開情報であり、前記マスタ鍵が前記KGCの秘密鍵である、ステップと、
前記KGCにより、前記サーバに前記第2の公開鍵または変換鍵を送信するステップであって、前記変換鍵が前記第2の公開鍵および鍵更新情報に従って生成される、ステップと
を含む方法。
【請求項１２】
前記KGCにより、前記第2の公開鍵を生成する前記ステップの前に、前記方法が、
前記KGCにより、前記端末デバイスから認証情報を受信するステップであって、前記認証情報が、前記端末デバイスが前記第1の秘密鍵を記憶することを示すために使用される、ステップ
をさらに含む、請求項11に記載の方法。
【請求項１３】
前記変換鍵が前記第2の公開鍵および鍵更新情報に従って生成されることが、
前記KGCにより、前記第2の公開鍵、前記鍵更新情報、前記システムパラメータ、および前記識別パラメータに従って、前記変換鍵を生成することであって、前記鍵更新情報が、前記端末デバイスが失効していないことを示す、こと
を含む、請求項11に記載の方法。
【請求項１４】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項11から13のいずれか一項に記載の方法。
【請求項１５】
データ処理方法であって、
サーバにより、鍵生成センタKGCから第2の公開鍵を受信するステップであって、前記第2の公開鍵が、第1の公開鍵、端末デバイスの属性情報、システムパラメータ、マスタ鍵、および前記KGCの内部状態情報に従って、前記KGCによって生成され、前記システムパラメータが前記KGCに関連する公開情報であり、前記マスタ鍵が前記KGCの秘密鍵であり、前記第1の公開鍵が前記端末デバイスの公開鍵である、ステップと、
前記サーバにより、第1のデータを取得するステップであって、前記第1のデータが、前記端末デバイスの前記属性構造に基づいて暗号化されたデータである、ステップと、
前記サーバにより、前記第2の公開鍵に従って前記第1のデータを第2のデータに変換するステップと、
前記サーバにより、前記端末デバイスに前記第2のデータに送信するステップであって、その結果、前記端末デバイスが前記第1の秘密鍵に従って前記第2のデータを復号する、ステップと
を含む方法。
【請求項１６】
サーバにより、第2の公開鍵を受信する前記ステップの後に、前記方法が、
前記サーバにより、前記KGCから鍵更新情報を受信するステップであって、前記鍵更新情報が、前記端末デバイスが失効しているかどうかを示すために使用される、ステップ
をさらに含み、
前記サーバにより、前記第2の公開鍵に従って前記第1のデータを第2のデータに変換する前記ステップが、
前記端末デバイスが失効していないことを前記鍵更新情報が示すとき、前記サーバにより、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵を生成するステップと、
前記サーバにより、前記変換鍵に従って前記第1のデータを前記第2のデータに変換するステップと
を含む、請求項15に記載の方法。
【請求項１７】
前記サーバにより、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵を生成する前記ステップが、
前記サーバにより、前記第2の公開鍵、前記鍵更新情報、前記システムパラメータ、および識別パラメータに従って、前記変換鍵を生成するステップであって、前記システムパラメータが前記KGCに関連する前記公開情報であり、前記識別パラメータが前記端末デバイスまたは前記端末デバイスのユーザの識別情報である、ステップ
を含む、請求項16に記載の方法。
【請求項１８】
前記サーバにより、前記変換鍵に従って前記第1のデータを前記第2のデータに変換する前記ステップが、
前記サーバにより、前記変換鍵、前記システムパラメータ、前記端末デバイスの前記属性情報、前記識別パラメータ、または時間パラメータのうちの1つまたは複数に従って、前記第1のデータを前記第2のデータに変換するステップであって、前記システムパラメータが前記KGCに関連する前記公開情報であり、前記識別パラメータが前記端末デバイスまたは前記端末デバイスの前記ユーザの前記識別情報であり、前記時間パラメータが、前記サーバが前記変換鍵を使用することを許可された時間を示すために使用される、ステップ
を含む、請求項17に記載の方法。
【請求項１９】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項15から18のいずれか一項に記載の方法。
【請求項２０】
データ処理装置であって、
処理ユニットおよび通信ユニットを備え、
前記処理ユニットが、
第1の公開鍵および第1の秘密鍵を生成し、
前記通信ユニットを使用して鍵生成センタKGCに前記第1の公開鍵を送信し、その結果、前記KGCまたはサーバが前記第1の公開鍵に従って第2の公開鍵または変換鍵を生成し、
前記通信ユニットを使用して前記サーバによって送信された第2のデータを受信し、前記第2のデータが、前記サーバが前記第2の公開鍵または前記変換鍵に従って第1のデータを処理した後に生成されたデータであり、前記第1のデータが、前記端末デバイスの属性構造に基づいて暗号化され、前記サーバによって取得されたデータであり、
前記第1の秘密鍵に従って前記第2のデータを復号するように構成される、装置。
【請求項２１】
前記通信ユニットが、前記KGCに前記第1の公開鍵および認証情報を送信するようにさらに構成され、前記認証情報が、前記端末デバイスが前記第1の秘密鍵を記憶することを示すために使用される、請求項20に記載の装置。
【請求項２２】
前記処理ユニットが、具体的に、システムパラメータに従って前記第1の公開鍵および前記第1の秘密鍵を生成するように構成され、前記システムパラメータが前記KGCに関連する公開情報である、請求項20または21に記載の装置。
【請求項２３】
前記処理ユニットが、具体的に、前記システムパラメータおよび前記第1の秘密鍵に従って前記第2のデータを復号するように構成される、請求項22に記載の装置。
【請求項２４】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項20から23のいずれか一項に記載の装置。
【請求項２５】
データ処理装置であって、
処理ユニットおよび通信ユニットを備え、
前記処理ユニットが、
前記通信ユニットを使用して前記端末デバイスから第1の公開鍵を受信し、
システムパラメータ、マスタ鍵、前記KGCの内部状態情報、前記第1の公開鍵、および前記端末デバイスの属性情報に従って、前記第2の公開鍵を生成し、前記システムパラメータが前記KGCに関連する公開情報であり、前記マスタ鍵が前記KGCの秘密鍵であり、
前記通信ユニットを使用して前記サーバに前記第2の公開鍵を送信するように構成される、装置。
【請求項２６】
前記処理ユニットが前記第2の公開鍵を生成した後に、
前記処理ユニットが、前記第2の公開鍵および鍵更新情報に従って変換鍵またはエラープロンプトを生成し、前記端末デバイスが失効していることを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記エラープロンプトを生成し、もしくは前記端末デバイスが失効していないことを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵を生成し、前記通信ユニットを使用して前記サーバに前記変換鍵を送信するようにさらに構成されるか、または
前記処理ユニットが、前記通信ユニットを使用して前記サーバに前記第2の公開鍵および前記鍵更新情報を送信し、その結果、前記サーバが、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵または前記エラープロンプトを生成する、ようにさらに構成される、請求項25に記載の装置。
【請求項２７】
前記処理ユニットが、前記通信ユニットを使用して前記端末デバイスから認証情報を受信し、前記認証情報が、前記端末デバイスが前記第1の秘密鍵を記憶することを示すために使用され、前記認証情報に従って、前記第2の公開鍵を生成することを決定するようにさらに構成される、請求項25または26に記載の装置。
【請求項２８】
前記処理ユニットが、具体的に、前記第1の公開鍵、前記端末デバイスの前記属性情報、前記システムパラメータ、前記マスタ鍵、または前記装置の前記内部状態情報のうちの1つまたは複数に従って、前記第2の公開鍵および更新された内部状態情報を生成するように構成され、前記システムパラメータが前記処理ユニットに関連する前記公開情報であり、前記マスタ鍵が前記処理ユニットの前記秘密鍵である、請求項25から27のいずれか一項に記載の装置。
【請求項２９】
前記処理ユニットが、具体的に、前記第2の公開鍵、前記鍵更新情報、前記システムパラメータ、または識別パラメータのうちの1つまたは複数に従って、前記変換鍵を生成するように構成され、前記鍵更新情報が、前記端末デバイスが失効していないことを示し、前記識別パラメータが、前記端末デバイスまたは前記端末デバイスのユーザの識別情報である、請求項28に記載の装置。
【請求項３０】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項25から29のいずれか一項に記載の装置。
【請求項３１】
データ処理装置であって、
処理ユニットおよび通信ユニットを備え、
前記処理ユニットが、
前記通信ユニットを使用して鍵生成センタKGCから第2の公開鍵を受信し、前記第2の公開鍵が、システムパラメータ、マスタ鍵、前記KGCの内部状態情報、前記第1の公開鍵、および前記端末デバイスの属性情報に従って、前記KGCによって生成され、前記システムパラメータが前記KGCに関連する公開情報であり、前記マスタ鍵が前記KGCの秘密鍵であり、
前記通信ユニットを使用して第1のデータを取得し、前記第1のデータが、前記端末デバイスの前記属性構造に基づいて暗号化されたデータであり、
前記第2の公開鍵に従って前記第1のデータを第2のデータに変換し、
前記通信ユニットを使用して前記端末デバイスに前記第2のデータに送信し、その結果、前記端末デバイスが前記第1の秘密鍵に従って前記第2のデータを復号する、ように構成される、装置。
【請求項３２】
前記処理ユニットが、前記通信ユニットを使用して前記第2の公開鍵を受信した後に、前記処理ユニットが、前記通信ユニットを使用して前記KGCから鍵更新情報を受信し、前記端末デバイスが失効していることを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記エラープロンプトを生成し、または前記端末デバイスが失効していないことを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵を生成し、前記変換鍵に従って前記第1のデータを前記第2のデータに変換するようにさらに構成される、請求項31に記載の装置。
【請求項３３】
前記処理ユニットが、具体的に、前記第2の公開鍵、前記鍵更新情報、前記システムパラメータ、または識別パラメータのうちの1つまたは複数に従って、前記変換鍵を生成するように構成され、前記システムパラメータが、前記KGCによって生成された公開情報であり、前記識別パラメータが、前記端末デバイスまたは前記端末デバイスのユーザの識別情報である、請求項32に記載の装置。
【請求項３４】
前記処理ユニットが、具体的に、前記変換鍵、前記システムパラメータ、前記端末デバイスの前記属性情報、前記識別パラメータ、または時間パラメータのうちの1つまたは複数に従って、前記第1のデータを前記第2のデータに変換するように構成され、前記システムパラメータが、前記KGCに関連する前記公開情報であり、前記識別パラメータが、前記端末デバイスまたは前記端末デバイスの前記ユーザの前記識別情報であり、前記時間パラメータが、前記装置が前記変換鍵を使用することを許可された時間を示すために使用される、請求項33に記載の装置。
【請求項３５】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項31から34のいずれか一項に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信分野に関し、詳細には、データ処理方法および装置に関する。
【背景技術】
【０００２】
ABE（Attribute-Based Encryption、属性ベース暗号化）は、属性に基づいて暗号化が実行されるデータ処理方式である。ABEシステムは、大量のデータユーザ（簡潔にするために、以下では略して「ユーザ」と呼ばれる）にサービスすることができる。一部のユーザは、秘密鍵の暴露または会社からのユーザの退職などの理由で失効する必要がある。間接失効は、KGC（Key Generation Center、鍵生成センタ）が定期的に鍵更新作業を実行する、頻繁に使用されるABE失効方法であり、その結果、失効したユーザは、次の期間用の秘密鍵を取得することができず、したがって、データを復号することができない。
【発明の概要】
【課題を解決するための手段】
【０００３】
現在、ユーザは定期的にKGCに連絡して更新された鍵を入手する必要がある。したがって、鍵更新情報はユーザにとって比較的高いオーバーヘッドをもたらす。加えて、KGCは、安全なチャネルを使用してユーザに鍵情報を送信するために、常にオンラインである必要があり、鍵のサイズはシステム内のユーザ数に関係する。これは、ABEシステムの性能およびユーザ処理能力に対して比較的高い要件を課す。
【０００４】
これに鑑みて、本発明の実施形態はデータ処理方法および装置を提供する。信頼する必要のないサーバが従来のABEシステムにおいて使用され、そのサーバは、ユーザプロセッサの計算量を削減するために、ユーザ失効による鍵更新などの作業を実行するエージェントとして機能することができ、その結果、処理能力が限られているユーザは、クラウドプラットフォームまたは別のプラットフォームに記憶された属性ベース暗号化データに迅速にアクセスすることができる。加えて、鍵を送信するために安全なチャネルを使用する必要がなく、それにより、ABEシステムの性能要件が低減される。
【０００５】
一態様によれば、本発明の一実施形態はデータ処理方法を提供し、方法は、端末デバイスにより、第1の公開鍵および第1の秘密鍵を生成するステップであって、第1の公開鍵がデータを暗号化するために使用され、第1の秘密鍵が、第1の公開鍵を使用して暗号化されたデータを復号するために使用される、ステップと、端末デバイスにより、鍵生成センタKGCに第1の公開鍵を送信するステップであって、第1の公開鍵が、変換鍵を生成するためにKGCまたはサーバによって使用され、変換鍵が、端末デバイスの属性構造に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、属性構造が、データにアクセスするために満たされる必要がある条件を示すために使用される、ステップと、端末デバイスにより、サーバによって送信された第2のデータを受信するステップであって、第2のデータが、サーバが変換鍵に従って第1のデータを処理した後に生成されたデータであり、第1のデータが、端末デバイスの属性構造に基づいて暗号化され、サーバによって取得されたデータである、ステップと、端末デバイスにより、第1の秘密鍵に従って第2のデータを復号するステップとを含む。
【０００６】
本発明のこの実施形態において提供されるデータ処理方法によれば、端末デバイスは、第1の公開鍵および第1の秘密鍵を生成し、第1の公開鍵はデータを暗号化するために使用され、第1の秘密鍵は、第1の公開鍵を使用して暗号化されたデータを復号するために使用される。端末デバイスは、KGCに第1の公開鍵を送信し、その結果、KGCまたはサーバは、第1の公開鍵に従って変換鍵を生成し、第1の公開鍵は変換鍵の中にネストされる。したがって、サーバが、変換鍵を使用することにより、端末デバイスの属性構造に基づいて暗号化された暗号文を処理した後に生成されるものは、第1の公開鍵を使用して暗号化された暗号文である。端末デバイスは、第1の公開鍵と対にされた第1の秘密鍵を記憶する。サーバによって送信された部分的に復号された暗号文を受信した後、端末デバイスは、平文を生成するために、第1の秘密鍵および復号アルゴリズムに従って復号を実行することができる。第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態におけるデータ処理方法では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【０００７】
場合によっては、端末デバイスにより、KGCに第1の公開鍵を送信するステップは、端末デバイスにより、KGCに第1の公開鍵および認証情報を送信するステップを含み、認証情報は、端末デバイスが第1の秘密鍵を記憶することを示すために使用される。
【０００８】
KGCに第1の公開鍵を送信するとき、端末デバイスはKGCに認証情報をさらに送信することができ、認証情報は、端末デバイスが第1の公開鍵と対にされた第1の秘密鍵を記憶することを示すために使用される。この場合、KGCは、認証情報に従って、変換鍵を生成することを決定することができる。KGCが認証情報を受信しない場合、KGCは、第1の公開鍵が無認可の公開鍵であると見なすことができ、第1の公開鍵に対する後続の処理を終了する。これにより、ABEシステムのセキュリティ性能を向上させることができる。
【０００９】
場合によっては、端末デバイスにより、第1の公開鍵および第1の秘密鍵を生成するステップは、端末デバイスにより、システムパラメータおよび識別パラメータに従って第1の公開鍵および第1の秘密鍵を生成するステップを含み、システムパラメータはKGCによって生成された公開情報であり、識別パラメータは端末デバイスの識別情報である。
【００１０】
場合によっては、端末デバイスにより、第1の秘密鍵に従って第2のデータを復号するステップは、端末デバイスにより、システムパラメータ、識別パラメータ、および第1の秘密鍵に従って第2のデータを復号するステップを含む。
【００１１】
別の態様によれば、本発明の一実施形態はデータ処理方法を提供し、方法は、鍵生成センタKGCにより、端末デバイスから第1の公開鍵を受信するステップであって、第1の公開鍵がデータを暗号化するために使用される、ステップと、KGCにより、第1の公開鍵および端末デバイスの属性情報に従って第2の公開鍵を生成するステップであって、第2の公開鍵が、端末デバイスの属性構造に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、その結果、端末デバイスが、端末デバイスによって生成された第1の秘密鍵に従って、第1の公開鍵に基づいて暗号化されたデータを復号し、属性構造が、データにアクセスするために満たされる必要がある条件を示すために使用される、ステップと、KGCにより、サーバに第2の公開鍵を送信するステップとを含む。
【００１２】
端末デバイスによって送信された第1の公開鍵を受信した後、KGCは、第1の公開鍵および端末デバイスの属性に基づいて第2の公開鍵を生成することができる。第2の公開鍵は、端末デバイスの属性に基づく公開鍵であり、端末デバイスの属性に基づいて暗号化されたデータを復号するために使用されてもよい。第1の公開鍵は第2の公開鍵の中にネストされているので、端末デバイスの属性に基づいて暗号化されたデータが第2の公開鍵を使用して処理された後に生成されるデータは、第1の公開鍵に基づいて暗号化された暗号文である。端末デバイスは、端末デバイスに記憶された第1の秘密鍵を使用して、第1の公開鍵に基づいて暗号化された暗号文を復号することができる。第1の秘密鍵は、第1の公開鍵と対にされた鍵であり、第1の公開鍵に基づいて暗号化されたデータを復号するために使用されてもよい。本発明のこの実施形態では、端末デバイスの属性情報は端末デバイスの特定の識別情報であってもよく、KGCは、端末デバイスの第1の公開鍵および属性集合に従って第2の公開鍵をさらに生成することができる。
【００１３】
第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態におけるデータ処理方法では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【００１４】
場合によっては、KGCにより、第2の公開鍵を生成するステップの後に、方法は、
KGCにより、第2の公開鍵および鍵更新情報に従って変換鍵またはエラープロンプトを生成するステップであって、鍵更新情報が、端末デバイスが失効しているかどうかを示すために使用される、ステップと、端末デバイスが失効していることを鍵更新情報が示すとき、KGCにより、第2の公開鍵および鍵更新情報に従ってエラープロンプトを生成するステップ、または端末デバイスが失効していないことを鍵更新情報が示すとき、KGCにより、第2の公開鍵および鍵更新情報に従って変換鍵を生成するステップであって、変換鍵が、端末デバイスの属性構造に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、その結果、端末デバイスが、端末デバイスによって生成された第1の秘密鍵に従って、変換鍵を使用した変換の結果を復号する、ステップとをさらに含み、KGCにより、サーバに第2の公開鍵の送信するステップは、KGCにより、サーバに変換鍵を送信するステップ、またはKGCにより、サーバに第2の公開鍵および鍵更新情報を送信するステップであって、その結果、サーバが、第2の公開鍵および鍵更新情報に従って変換鍵もしくはエラープロンプトを生成する、ステップを含む。
【００１５】
本発明のこの実施形態におけるデータ処理方法によれば、端末デバイスが失効しているかどうかを示すために使用される鍵更新情報はKGCによって生成され、変換鍵またはエラー結果は鍵更新情報および第2の公開鍵に従って生成され、その結果、失効していない端末デバイスが暗号化データを取得することができ、失効している端末デバイスが暗号化データを取得することができないことを保証することができる。これにより、システムのセキュリティ性能が向上する。
【００１６】
場合によっては、KGCにより、第2の公開鍵を送信するステップの前に、方法は、KGCにより、端末デバイスから認証情報を受信するステップであって、認証情報が、端末デバイスが第1の秘密鍵を記憶することを示すために使用される、ステップと、認証情報に従って、第2の公開鍵を生成することを決定するステップとをさらに含む。
【００１７】
KGCに第1の公開鍵を送信するとき、端末デバイスはKGCに認証情報をさらに送信することができ、認証情報は、端末デバイスが第1の公開鍵と対にされた第1の秘密鍵を記憶することを示すために使用される。この場合、KGCは、認証情報に従って、第2の公開鍵を生成することを決定することができる。KGCが認証情報を受信しない場合、KGCは、第1の公開鍵が無認可の公開鍵であると見なすことができ、第1の公開鍵に対する後続の処理を終了する。これにより、ABEシステムのセキュリティ性能を向上させることができる。
【００１８】
場合によっては、KGCにより、第1の公開鍵および端末デバイスの属性情報に従って第2の公開鍵を生成するステップは、KGCにより、第1の公開鍵、端末デバイスの属性情報、システムパラメータ、マスタ鍵、およびKGCの内部状態情報に従って、第2の公開鍵および更新された内部状態情報を生成するステップであって、システムパラメータがKGCによって生成された公開情報であり、マスタ鍵がKGCによって生成された秘密鍵である、ステップを含む。
【００１９】
場合によっては、KGCにより、第2の公開鍵および鍵更新情報に従って変換鍵を生成するステップは、KGCにより、第2の公開鍵、鍵更新情報、システムパラメータ、および識別パラメータに従って、変換鍵を生成するステップであって、鍵更新情報が、端末デバイスが失効していないことを示す、ステップを含む。
【００２０】
さらに別の態様によれば、本発明の一実施形態はデータ処理方法を提供し、方法は、サーバにより、鍵生成センタKGCから第2の公開鍵を受信するステップであって、第2の公開鍵が、端末デバイスの属性構造に基づいて暗号化されたデータを、端末デバイスによって生成された第1の公開鍵に基づいて暗号化されたデータに変換するために使用され、その結果、端末デバイスが、端末デバイスによって生成された第1の秘密鍵に従って、第1の公開鍵を使用して暗号化されたデータを復号し、属性構造が、データにアクセスするために満たされる必要がある条件を示すために使用される、ステップと、サーバにより、第1のデータを取得するステップであって、第1のデータが、端末デバイスの属性構造に基づいて暗号化されたデータである、ステップと、サーバにより、第2の公開鍵に従って第1のデータを第2のデータに変換するステップであって、第2のデータが、第1の公開鍵に基づいて暗号化されたデータである、ステップと、サーバにより、端末デバイスに第2のデータを送信するステップであって、その結果、端末デバイスが第1の秘密鍵に従って第2のデータを復号する、ステップとを含む。
【００２１】
本発明のこの実施形態において提供されるデータ処理方法では、第2の公開鍵は、第1の公開鍵および端末デバイスの属性情報に基づいてKGCによって生成された公開鍵であり、第2の公開鍵は、端末デバイスの属性に基づく公開鍵であり、端末デバイスの属性に基づいて暗号化されたデータを復号するために使用されてもよい。第1の公開鍵は第2の公開鍵の中にネストされているので、端末デバイスの属性に基づいて暗号化されたデータが第2の公開鍵を使用して処理された後に生成されるデータは、第1の公開鍵に基づいて暗号化された暗号文である。端末デバイスは、端末デバイスに記憶された第1の秘密鍵を使用して第2のデータを復号することができる。第1の秘密鍵は、端末デバイスによって生成された鍵であり、第1の公開鍵に基づいて暗号化されたデータを復号するために使用されてもよい。
【００２２】
第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態におけるデータ処理方法では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【００２３】
場合によっては、サーバにより、第2の公開鍵を受信するステップの後に、方法は、サーバにより、KGCから鍵更新情報を受信するステップであって、鍵更新情報が、端末デバイスが失効しているかどうかを示すために使用される、ステップと、サーバにより、第2の公開鍵および鍵更新情報に従って、変換鍵またはエラープロンプトを生成するステップと、端末デバイスが失効していることを鍵更新情報が示すとき、サーバにより、第2の公開鍵および鍵更新情報に従ってエラープロンプトを生成するステップ、または端末デバイスが失効していないことを鍵更新情報が示すとき、サーバにより、第2の公開鍵および鍵更新情報に従って変換鍵を生成するステップであって、変換鍵が、端末デバイスの属性構造に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、その結果、端末デバイスが、端末デバイスによって生成された第1の秘密鍵に従って、第1の公開鍵を使用して暗号化されたデータを復号する、ステップとをさらに含み、サーバにより、第2の公開鍵に従って第1のデータを第2のデータに変換するステップは、サーバにより、変換鍵に従って第1のデータを第2のデータに変換するステップを含む。
【００２４】
本発明のこの実施形態におけるデータ処理方法によれば、端末デバイスが失効しているかどうかを示すために使用され、KGCによって生成された鍵更新情報が受信され、変換鍵またはエラー結果が鍵更新情報および第2の公開鍵に従って生成され、その結果、失効していない端末デバイスが暗号化データを取得することができ、失効している端末デバイスが暗号化データを取得することができないことを保証することができる。これにより、システムのセキュリティ性能が向上する。
【００２５】
場合によっては、サーバにより、第2の公開鍵および鍵更新情報に従って変換鍵を生成するステップは、サーバにより、第2の公開鍵、鍵更新情報、システムパラメータ、および識別パラメータに従って、変換鍵を生成するステップであって、システムパラメータがKGCによって生成された公開情報であり、識別パラメータが端末デバイスの識別情報である、ステップを含む。
【００２６】
場合によっては、サーバにより、変換鍵に従って第1のデータを第2のデータに変換するステップは、サーバにより、変換鍵、システムパラメータ、端末デバイスの属性情報、識別パラメータ、および時間パラメータに従って、第1のデータを第2のデータに変換するステップであって、システムパラメータがKGCによって生成された公開情報であり、識別パラメータが端末デバイスの識別情報であり、時間パラメータが、サーバが変換鍵を使用することを許可された時間を示すために使用される、ステップを含む。
【００２７】
さらに別の態様によれば、本発明の一実施形態はデータ処理装置を提供する。装置は、前述の態様の方法において端末デバイスによって実行される機能を実装することができる。機能は、ハードウェアによって実装されてもよく、ハードウェアを使用して関連ソフトウェアを実行することによって実装されてもよい。ハードウェアまたはソフトウェアは、前述の機能に対応する1つまたは複数のユニットまたはモジュールを含む。
【００２８】
可能な設計では、装置の構造内に、プロセッサおよび通信インターフェースが含まれる。プロセッサは、前述の方法において端末デバイスの対応する機能を実行する際に装置をサポートするように構成される。通信インターフェースは、装置と別の装置との間の通信をサポートするように構成される。装置はメモリをさらに含んでもよい。メモリは、プロセッサと結合されるように構成され、装置に必要なプログラム命令およびデータを記憶する。
【００２９】
さらに別の態様によれば、本発明の一実施形態はデータ処理装置を提供する。装置は、前述の態様の方法においてKGCによって実行される機能を実装することができる。機能は、ハードウェアによって実装されてもよく、ハードウェアを使用して関連ソフトウェアを実行することによって実装されてもよい。ハードウェアまたはソフトウェアは、前述の機能に対応する1つまたは複数のユニットまたはモジュールを含む。
【００３０】
可能な設計では、装置の構造内に、プロセッサおよび通信インターフェースが含まれる。プロセッサは、前述の方法においてKGCの対応する機能を実行する際に装置をサポートするように構成される。通信インターフェースは、装置と別の装置との間の通信をサポートするように構成される。装置はメモリをさらに含んでもよい。メモリは、プロセッサと結合されるように構成され、装置に必要なプログラム命令およびデータを記憶する。
【００３１】
さらに別の態様によれば、本発明の一実施形態はデータ処理装置を提供する。装置は、前述の態様の方法においてサーバによって実行される機能を実装することができる。機能は、ハードウェアによって実装されてもよく、ハードウェアを使用して関連ソフトウェアを実行することによって実装されてもよい。ハードウェアまたはソフトウェアは、前述の機能に対応する1つまたは複数のユニットまたはモジュールを含む。
【００３２】
可能な設計では、装置の構造内に、プロセッサおよび通信インターフェースが含まれる。プロセッサは、前述の方法においてサーバの対応する機能を実行する際に装置をサポートするように構成される。通信インターフェースは、装置と別の装置との間の通信をサポートするように構成される。装置はメモリをさらに含んでもよい。メモリは、プロセッサと結合されるように構成され、装置に必要なプログラム命令およびデータを記憶する。
【００３３】
さらに別の態様によれば、本発明の一実施形態はデータ処理装置を提供する。装置は、前述の態様に記載されたKGCおよびサーバを含む。
【００３４】
さらに別の態様によれば、本発明の一実施形態は通信システムを提供する。通信システムは、前述の態様に記載された端末デバイス、KGC、およびサーバを含む。
【００３５】
さらに別の態様によれば、本発明の一実施形態はコンピュータ記憶媒体を提供する。コンピュータ記憶媒体は、端末デバイスが使用するためのコンピュータソフトウェア命令を記憶するように構成され、前述の態様を実行するために設計されたプログラムを含む。
【００３６】
さらに別の態様によれば、本発明の一実施形態はコンピュータ記憶媒体を提供する。コンピュータ記憶媒体は、KGCが使用するためのコンピュータソフトウェア命令を記憶するように構成され、前述の態様を実行するために設計されたプログラムを含む。
【００３７】
さらに別の態様によれば、本発明の一実施形態はコンピュータ記憶媒体を提供する。コンピュータ記憶媒体は、サーバが使用するためのコンピュータソフトウェア命令を記憶するように構成され、前述の態様を実行するために設計されたプログラムを含む。
【００３８】
従来技術と比較して、本発明の実施形態において提供されるデータ処理方法によれば、端末デバイスが暗号文を完全に復号するために必要な鍵を別のデバイスに送信する必要がないので、本発明のこの実施形態におけるデータ処理方法において安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【００３９】
本発明の実施形態における技術的解決策をより明確に記載するために、以下で、本発明の実施形態を記載するために必要とされる添付図面を簡単に記載する。当然ながら、以下の説明における添付図面は本発明のいくつかの実施形態を示すにすぎず、当業者は、創造的な努力なしに、これらの添付図面から他の図面をさらに導出することができる。
【図面の簡単な説明】
【００４０】
【図１】本発明の一実施形態が適用可能なシステムアーキテクチャの可能な概略図である。
【図２】本発明の一実施形態が適用可能なKUNodesアルゴリズムの概略図である。
【図３】本発明の一実施形態による、データ処理方法の概略図である。
【図４】本発明の一実施形態による、別のデータ処理方法の概略図である。
【図５】本発明の一実施形態による、さらに別のデータ処理方法の概略図である。
【図６】本発明の一実施形態が適用可能な二分木の概略図である。
【図７】本発明の一実施形態が適用可能な別の二分木の概略図である。
【図８Ａ】本発明の一実施形態による、端末デバイスの可能な概略図である。
【図８Ｂ】本発明の一実施形態による、端末デバイスの別の可能な概略図である。
【図９Ａ】本発明の一実施形態による、KGCの可能な概略図である。
【図９Ｂ】本発明の一実施形態による、KGCの別の可能な概略図である。
【図１０Ａ】本発明の一実施形態による、サーバの可能な概略図である。
【図１０Ｂ】本発明の一実施形態による、サーバの別の可能な概略図である。
【発明を実施するための形態】
【００４１】
本発明の実施形態の目的、技術的解決策、および利点をより明確にするために、以下で、本発明の実施形態における添付図面を参照して、本発明の実施形態の技術的解決策を記載する。
【００４２】
本発明の実施形態に記載されたシステムアーキテクチャおよびサービスシナリオは、本発明の実施形態における技術的解決策をより明確に記載するものであり、本発明の実施形態において提供される技術的解決策に対していかなる制限も構成しない。当業者は、システムアーキテクチャの進化および新しいサービスシナリオの出現に伴い、本発明の実施形態において提供される技術的解決策が、同様の技術的問題にも適用可能であることを知ることができる。
【００４３】
図1は、本発明の一実施形態による、SR-ABE（Server-Aided Revocable Attribute-Based Encryption、サーバ支援取消可能属性ベース暗号化）システムアーキテクチャの概略図である。図1に示されたように、システムアーキテクチャは、端末デバイス（すなわち、データユーザ）110と、KGC120と、サーバ130と、クラウドプラットフォーム140と、データプロバイダ150とを含む。システムアーキテクチャの可能なワークフローは以下のように記載される。
【００４４】
ステップ1：KGC120が、システム初期化中にSetup（初期化）アルゴリズムを実行して、システム公開パラメータを生成する。
【００４５】
ステップ2：端末デバイス110が、UserKG（ユーザ鍵生成）アルゴリズムを実行して、ユーザ公開鍵／秘密鍵のペアを生成し、ユーザ秘密鍵は、ユーザ公開鍵を使用して暗号化されたデータを復号するために使用されてもよく、端末デバイス110は、ユーザ秘密鍵を記憶し、KGC120にユーザ公開鍵を送信する。
【００４６】
ステップ3：KGC120が、ユーザ公開鍵、システム公開パラメータ、端末デバイス110の属性情報、およびPubKG（公開鍵生成）アルゴリズムに従って、属性ベースの公開鍵を生成し、サーバ130に属性ベースの公開鍵を送信する。
【００４７】
ステップ4：KGC120が、TKeyUp（鍵更新）アルゴリズムを周期的に実行して、端末デバイス110向けの鍵更新情報を生成し、サーバ130に鍵更新情報を送信する。
【００４８】
ステップ5：データプロバイダ150が、指定されたアクセス構造および時間期間値に従って、Encrypt（暗号化）アルゴリズムを実行して、データプロバイダ150によって提供されたデータを暗号化し、暗号化を介して生成された暗号文をクラウドプラットフォーム140にアップロードし、アクセス構造は属性ベースのアクセス構造である。
【００４９】
ステップ6：端末デバイス110が、クラウドプラットフォーム140から暗号文を取得し、サーバ130に暗号文を転送する。
【００５０】
ステップ7：端末デバイス110が失効していないことを鍵更新情報が示す場合、サーバ130は、TranKG（変換鍵生成）アルゴリズムを使用することにより、属性ベースの公開鍵および鍵更新情報に従って変換鍵を生成することができ、変換鍵は暗号文を処理するために使用される。
【００５１】
ステップ8：サーバ130が、変換鍵に従ってTransform（変換）アルゴリズムを実行して、端末デバイス110から取得された暗号文を部分的に復号し、端末デバイス110に部分復号の結果を送信し、端末デバイス110の属性は、暗号文のアクセス構造の要件を満たす。
【００５２】
ステップ9：端末デバイス110が、記憶されたユーザ秘密鍵に従ってDecrypt（復号）アルゴリズムを実行して、部分復号の結果を完全に復号して平文を生成する。
【００５３】
ステップ10：端末デバイス110が失効する必要がある場合、KGC120は、Revoke（失効）アルゴリズムを実行して、更新された鍵更新情報を生成することができ、更新された鍵更新情報は端末デバイス110が失効したことを示し、その結果、サーバは、端末デバイス110の属性に基づく公開鍵に従って変換鍵を生成することができず、端末デバイス110はデータを取得し続けることができない。
【００５４】
図1に示されたシステムアーキテクチャでは、変換鍵は、端末デバイス110のユーザ公開鍵に基づいて生成された鍵である。したがって、サーバ130が、変換鍵を使用することにより、属性に基づいて暗号化された暗号文に対して変換処理を実行した後、生成された部分的に復号された暗号文は、ユーザ公開鍵に基づいて暗号化された暗号文であり、部分的に復号された暗号文は、端末110に記憶されたユーザ秘密鍵を使用することによってのみ復号することができる。このようにして、部分的に復号された暗号文が別のデバイスによって取得された場合でも、別のデバイスは依然として暗号文を復号することができないので、データセキュリティは保証される。
【００５５】
本発明のこの実施形態が適用可能な前述のシステムアーキテクチャは、説明のための例にすぎず、本発明のこの実施形態は、別のシステムアーキテクチャに適用されてもよい。たとえば、図1に示されたKGC120およびサーバ130は、いくつかのシナリオではハードウェアデバイスの異なる機能モジュールとして機能することができる。別の例を挙げると、端末デバイス110はサーバ130に指示情報を送信することができ、指示情報は、端末デバイス110によって必要とされる暗号文を示すために使用され、サーバ130は、指示情報に従ってクラウドプラットフォーム140から対応する暗号文を取得することができる。
【００５６】
図1に示されたデバイスまたはモジュールの数および名前は例にすぎず、本発明のこの実施形態におけるアプリケーションシナリオが、図1に示されたシナリオに限定されることを意味しないことも理解されるべきである。
【００５７】
本発明のこの実施形態の理解を容易にするために、以下では、最初に本発明に関連する要素を簡単に説明する。
【００５８】
双線形ペアリング（Bilinear Pairing）：GおよびG1は次数が素数pである2つの乗法群であり、gはGの生成元である。効率的に計算可能な写像
【数１】
2019531673.tif 000003
は、以下の条件を満たす場合、双線形ペアリング写像と呼ばれる。
【００５９】
双線形性：任意の
【数２】
2019531673.tif 000004
について、
【数３】
2019531673.tif 000005
が成立する。
【００６０】
非縮退：
【数４】
2019531673.tif 000006
が成立し、1はG1の単位元である。
【００６１】
決定論的（q−1）仮定：任意の確率的多項式時間アルゴリズムでは、
【数５】
2019531673.tif 000007
と仮定される。
【００６２】
このアルゴリズムでは、
【数６】
2019531673.tif 000008
の間を区別することは困難である。ここで、qは所与の整数であり、gは群Gの生成元であり、Z∈G1であり、a、μ、b1、…、およびbqは、
【数７】
2019531673.tif 000009
に属し、独立して均一に選択される乱数であり、
【数８】
2019531673.tif 000010
は計算可能な双線形ペアリング写像である。
【００６３】
アクセス構造：P＝｛P1，…，Pn｝を関係者の集合とする。群
【数９】
2019531673.tif 000011
が単調であると記載されることは、群が以下の条件を満たすことを意味する：Pの任意の2つの部分集合BおよびCについて、B∈AかつB⊆Cならば、C∈Aが成立する。単調アクセス構造は、Pの空でない部分集合を含む単調群A、すなわち、
【数１０】
2019531673.tif 000012
である。群A内の要素は認可集合と呼ばれ、Pの部分集合であるが群A内にない要素は無認可集合と呼ばれる。
【００６４】
LSSS：（Linear Secret Sharing Scheme、線形秘密分担方式）：P＝｛P1，…，Pn｝を関係者の集合とし、Mをl行n列の行列とし、ρ：｛1，…，l｝→Pを行列Mの各行がPの関係者に写像されるラベリング関数とする。集合Pのための秘密分担方式IIは、Zp上の線形秘密分担方式であり、以下の条件を満たす：
【００６５】
Pの各関係者の秘密分担はZp内のベクトルであり、
x＝1，…，lに対して、行列Mのx番目の行がラベリング関数ρを使用して関係者ρ（i）に対応することを真にする、l行n列を有する（秘密分担方式IIでは分担生成行列と呼ばれる）1つの行列Mが存在する。Zpに属し、分担される必要がある秘密μ、ならびにZpに属するランダムに選択された数r2、…、およびrnの場合、列ベクトルは
【数１１】
2019531673.tif 000013
によって表記される。この場合、
【数１２】
2019531673.tif 000014
は、秘密分担方式IIにおいて秘密μが分担された後に取得されるl個の秘密分担を示す。
【数１３】
2019531673.tif 000015
は、関係者ρ（i）のために取得された分担である。
【００６６】
各LSSSは線形復元によって特徴付けられる。IIがアクセス構造Aに対応する線形秘密分担方式を表すと仮定する。認可集合Aに対して、インデックス集合は、I＝｛i｜ρ（i）∈A｝⊂｛1，…，l｝と定義される。この場合、ベクトル（1，0，…，0）は、インデックス集合Iによってインデックス付けされた行列Mの行が拡張され、定数集合｛wi∈Zp｝i∈Iが、IIに従って生成された秘密μの任意の有効な秘密分担｛vi｝に対して、秘密μが
【数１４】
2019531673.tif 000016
に従って復元され得ることを真とした後に形成される空間内にある。加えて、これらの定数｛w1｝は、分担生成行列Mのサイズに相当する多項式時間内に計算することができる。
【００６７】
対照的に、無認可集合A'の場合、そのような定数集合｛w1｝は存在しない。さらに、I'を｛i｜ρ（i）∈A'｝とすると、ベクトル
【数１５】
2019531673.tif 000017
の第1の成分w1がZp内であるが＜Miである任意の非ゼロ要素であり得ることを真にするベクトル
【数１６】
2019531673.tif 000018
が存在し、
【数１７】
2019531673.tif 000019
＞は、I'に属する任意のiについて0に等しい。ここで、Miは行列Mのi番目の行である。
【００６８】
アクセス制御ポリシーは、単調ブール式を使用して記述されてもよい。線形秘密分担方式（LSSS）のアクセス構造はより一般化されており、ブール式から導出することができる。言い換えれば、線形秘密分担方式において任意の単調ブール式を対応する分担生成行列Mに変換するために使用される標準的な方法が存在する。加えて、ブール式は、その内部ノードがANDゲートおよびORゲートに対応し、そのリーフノードが属性に対応するアクセス制御ツリーとして記述されてもよい。LSSS秘密分担方式における分担生成行列Mの対応する行数は、アクセス制御ツリーにおけるリーフノードの数、すなわち属性の総数である。
【００６９】
二分木およびKUNodesアルゴリズム
【００７０】
図2に示されたように、BTは、N人のユーザに対応するN個のリーフノードを有する二分木を表記する。rootを二分木BTのルートノードとする。リーフノードθに対して、Path（θ）は、θからrootへの経路内の（θおよびrootを含む）すべてのノードの集合を示すために使用される。θがリーフノードでない場合、θlおよびθrは、それぞれ、θの左サブノードおよび右サブノードを示すために使用される。ツリーの中のすべてのノードは文字列として一意に符号化されていると仮定し、ツリーはツリーのノードの表現によって定義される。KUNodesアルゴリズムは、鍵の更新が実行される必要がある最小ノード集合を計算するために使用され、その結果、時間期間t内に失効しないユーザのみが時間期間内に生成された暗号文を復号することができる。二分木BT、失効リストrl、および時間期間値tがアルゴリズムに入力され、BT内の最小ノード集合が出力され、その結果、失効リストrl内の任意のノードの場合、集合内に（ノード自体を含む）ノードのいかなる祖先もなく、別のノード（すなわち、失効していないすべてのノード）の場合、（別のノード自体を含む）1つの祖先しか集合内に存在しない。時間期間tに対応する失効リストrlは、その時間期間内およびその時間期間前に失効したすべてのユーザを含む。図2は、KUNodesアルゴリズムの概略ワークフローを示す。アルゴリズムによれば、すべての失効したノードのすべての祖先ノードは、失効したノードとして最初にマークされ、次いで、これらの失効したノードの失効していないサブノードが出力される。KUNodesアルゴリズムは以下のように厳密に記述される。
【数１８】
2019531673.tif 000020
【００７１】
以下では、図3〜図5を参照して、本発明の一実施形態によるデータ処理方法を詳述する。
【００７２】
図3は、本発明の一実施形態による、データ処理方法の概略フローチャートを示す。図3に示されたように、方法300は以下のステップを含む。
【００７３】
S310．端末デバイスが第1の公開鍵および第1の秘密鍵を生成し、第1の公開鍵はデータを暗号化するために使用され、第1の秘密鍵は、第1の公開鍵を使用して暗号化されたデータを復号するために使用される。
【００７４】
S320．端末デバイスが鍵生成センタKGCに第1の公開鍵を送信し、第1の公開鍵は変換鍵を生成するためにKGCまたはサーバによって使用され、変換鍵は、端末デバイスの属性構造に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、属性構造はデータにアクセスするために満たされる必要がある条件を示すために使用される。
【００７５】
S330．端末デバイスがサーバによって送信された第2のデータを受信し、第2のデータは、サーバが変換鍵に従って第1のデータを処理した後に生成されたデータであり、第1のデータは、端末デバイスの属性構造に基づく暗号化を介して生成され、サーバによって取得されたデータである。
【００７６】
S340．端末デバイスが第1の秘密鍵に従って第2のデータを復号する。
【００７７】
本発明のこの実施形態では、端末デバイスはモノのインターネット（Internet of Things、IoT）内の端末デバイスであってもよく、マシン間（Machine to Machine、M2M）通信システム内の端末デバイスもしくはワイヤレスセンサネットワーク（Wireless Sensor Network、WSN）内の端末デバイスであってもよく、または別のタイプの端末デバイスであってもよい。
【００７８】
端末デバイスによって生成された第1の公開鍵および第1の秘密鍵は対になり、第1の公開鍵はデータを暗号化するために使用され、第1の秘密鍵は、第1の公開鍵を使用して暗号化されたデータを復号するために使用され得る。端末デバイスは、KGCに第1の公開鍵を送信し、その結果、KGCまたはサーバは、第1の公開鍵に従って変換鍵を生成する。変換鍵は、端末デバイスの属性（端末デバイスの属性は端末デバイスのユーザの属性に基づき、たとえば、ユーザが失効すると、端末デバイスの属性はそれに応じて変化する）に基づく鍵であり、第1の公開鍵は変換鍵の中にネストされる。したがって、サーバが変換鍵を使用して、端末デバイスの属性構造に基づいて暗号化された暗号文（すなわち、第1のデータ）を処理した後、生成されたものは、第1の公開鍵に結び付けられた部分的に復号された暗号文（すなわち、第2のデータ）であり、実際には、部分的に復号された暗号文は、第1の公開鍵を使用して暗号化された暗号文である。端末デバイスは、第1の公開鍵と対にされた第1の秘密鍵を記憶する。サーバによって送信された部分的に復号された暗号文を受信した後、端末デバイスは、平文を取得するために、第1の秘密鍵および復号アルゴリズムに従って暗号文を復号することができる。
【００７９】
第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態におけるデータ処理方法では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【００８０】
場合によっては、端末デバイスにより、KGCに第1の公開鍵を送信するステップは、以下のステップを含む。
【００８１】
S321．端末デバイスがKGCに第1の公開鍵および認証情報を送信し、認証情報は、端末デバイスが第1の秘密鍵を記憶することを示すために使用される。
【００８２】
KGCに第1の公開鍵を送信するとき、端末デバイスはKGCに認証情報をさらに送信することができ、認証情報は、端末デバイスが第1の公開鍵と対にされた第1の秘密鍵を記憶することを示すために使用される。この場合、KGCは、認証情報に従って、変換鍵を生成することを決定することができる。KGCが認証情報を受信しない場合、KGCは、第1の公開鍵が無認可の公開鍵であると見なすことができ、第1の公開鍵に対する後続の処理を終了する。これにより、ABEシステムのセキュリティ性能を向上させることができる。
【００８３】
場合によっては、端末デバイスにより、第1の公開鍵および第1の秘密鍵を生成するステップは、以下のステップを含む。
【００８４】
S311．端末デバイスが、システムパラメータおよび識別パラメータに従って第1の公開鍵および第1の秘密鍵を生成し、システムパラメータはKGCによって生成された公開情報であり、識別パラメータは端末デバイスの識別情報である。
【００８５】
システムパラメータはKGCによって生成された公開情報であり、システム内の任意のデバイスがシステムパラメータを取得することができる。たとえば、システムパラメータは、KGCがセキュリティパラメータλを入力し、ABEのシステムセットアップアルゴリズム、すなわち、（par，msk）←ABE.Setup（1λ）を実行した後に生成されてもよく、ここで、parはシステムパラメータであり、mskはマスタ鍵であり、ABE.Setupは属性ベース暗号化のシステムセットアップアルゴリズムである。
【００８６】
端末デバイスは、システム公開パラメータpar、ユーザ識別情報id（すなわち、識別パラメータ）、およびElGamal鍵生成アルゴリズム、すなわち、（skid，pkid）←ElGamal.KeyGen（1λ）に従って、端末デバイス用の鍵のペア（すなわち、第1の公開鍵および第1の秘密鍵）を生成することができ、ここで、skidは第1の秘密鍵、pkidは第1の公開鍵、ElGamal.KeyGenはElGamal鍵生成アルゴリズムである。
【００８７】
場合によっては、端末デバイスにより、第1の秘密鍵に従って第2のデータを復号するステップは、以下のステップを含む。
【００８８】
S341．端末デバイスが、システムパラメータ、識別パラメータ、および第1の秘密鍵に従って第2のデータを復号し、システムパラメータはKGCによって生成された公開情報であり、識別パラメータは端末デバイスの識別情報である。
【００８９】
端末デバイスは、システムパラメータpar、ユーザ識別情報id、第1の秘密鍵skid、変換された暗号文CT'（すなわち、第2のデータ）、およびElGamal復号アルゴリズム、すなわち、m'←ElGamal.Dec（skid，CT'）に従って、平文（すなわち、ターゲットデータ）を出力することができ、ここで、ElGamal.DecはElGamal復号アルゴリズムであり、m'は平文である。
【００９０】
前述の実施形態は説明のための一例にすぎず、本発明のこの実施形態はそれに限定されない。第1の公開鍵および第1の秘密鍵を生成するために使用され得る任意のアルゴリズム、および第2のデータを復号するために使用され得る任意のアルゴリズムは、本発明の保護範囲内に入るべきである。
【００９１】
本発明のこの実施形態におけるデータ処理方法によれば、端末デバイスは公開鍵／秘密鍵のペアを生成し、変換鍵を生成するためにKGCに公開鍵を送信し、変換鍵は、端末デバイスの属性に基づいて暗号化されたデータを、公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、端末デバイスのみが、端末デバイスに記憶された秘密鍵を使用することにより、公開鍵に基づいて暗号化されたデータを復号することができる。このようにして、秘密鍵を送信するために安全なチャネルが使用される必要がなく、サーバのセキュリティ性能に対して要件は課されない。加えて、端末デバイスに記憶された秘密鍵は定数であってもよいので、端末デバイスの処理能力に対する要求が低減され、端末デバイスのリソース利用率が向上する。
【００９２】
上記では、図3を参照して、端末デバイスの観点から本発明の実施形態によるデータ処理方法を詳述した。以下では、図4を参照して、KGCの観点から本発明の一実施形態によるデータ処理方法を詳述する。
【００９３】
図4は、本発明の一実施形態による、別のデータ処理方法の概略フローチャートを示す。図4に示されたように、方法400は以下のステップを含む。
【００９４】
S410．鍵生成センタKGCが端末デバイスから第1の公開鍵を受信し、第1の公開鍵はデータを暗号化するために使用される。
【００９５】
S420．KGCが、第1の公開鍵および端末デバイスの属性情報に従って第2の公開鍵を生成し、第2の公開鍵は、端末デバイスの属性構造に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、その結果、端末デバイスは、端末デバイスによって生成された第1の秘密鍵に従って、第1の公開鍵に基づいて暗号化されたデータを復号し、属性構造は、データにアクセスするために満たされる必要がある条件を示すために使用される。
【００９６】
S430．KGCがサーバに第2の公開鍵を送信する。
【００９７】
端末デバイスによって送信された第1の公開鍵を受信した後、KGCは、第1の公開鍵および端末デバイスの属性に基づいて第2の公開鍵を生成することができる。第2の公開鍵は、端末デバイスの属性に基づく公開鍵であり、端末デバイスの属性に基づいて暗号化されたデータを復号するために使用されてもよい。第1の公開鍵は第2の公開鍵の中にネストされているので、端末デバイスの属性に基づいて暗号化されたデータが第2の公開鍵を使用して処理された後に生成されるデータは、第1の公開鍵に基づいて暗号化された暗号文である。端末デバイスは、端末デバイスに記憶された第1の秘密鍵を使用して、第1の公開鍵に基づいて暗号化された暗号文を復号することができる。第1の秘密鍵は、第1の公開鍵と対にされた鍵であり、第1の公開鍵に基づいて暗号化されたデータを復号するために使用されてもよい。本発明のこの実施形態では、端末デバイスの属性情報は端末デバイスの特定の識別（id）情報であってもよく、KGCは、第1の公開鍵および端末デバイスの属性集合（すなわち、複数の属性の集合）に従って、第2の公開鍵をさらに生成することができる。
【００９８】
第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態におけるデータ処理方法では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【００９９】
場合によっては、KGCにより、第2の公開鍵を生成するステップの後に、方法は以下のステップをさらに含む。
【０１００】
S421．KGCが、第2の公開鍵および鍵更新情報に従って変換鍵またはエラープロンプトを生成し、鍵更新情報は端末デバイスが失効しているかどうかを示すために使用され、端末デバイスが失効していることを鍵更新情報が示すとき、KGCが、第2の公開鍵および鍵更新情報に従ってエラープロンプトを生成し、または端末デバイスが失効していないことを鍵更新情報が示すとき、KGCが、第2の公開鍵および鍵更新情報に従って変換鍵を生成し、変換鍵は、端末デバイスの属性に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、その結果、端末デバイスは、端末デバイスによって生成された第1の秘密鍵に従って、変換鍵を使用した変換の結果を復号し、KGCにより、サーバに第2の公開鍵の送信するステップは以下を含む。S422．KGCがサーバに変換鍵を送信する、または
S423．KGCがサーバに第2の公開鍵および鍵更新情報を送信し、その結果、サーバは、第2の公開鍵および鍵更新情報に従って変換鍵もしくはエラープロンプトを生成する。
【０１０１】
端末デバイスが現在非失効状態にある場合、KGCは、端末デバイスが失効していないことを示す失効リストに従って鍵更新情報を生成することができ、鍵更新情報は端末が失効していないことを示すために使用され、KGCは、第2の公開鍵および鍵更新情報に従って変換鍵を生成し、変換鍵は依然として端末デバイスの属性に基づく鍵であり、その中に第1の公開鍵がネストされる。KGCはサーバに変換鍵を送信し、サーバは、変換鍵を使用することにより、端末デバイスの属性に基づいて暗号化されたデータを第1の公開鍵に基づいて暗号化されたデータに変換することができ、その結果、端末デバイスは、端末デバイスによって生成された第1の秘密鍵に従って、変換鍵を使用した変換の結果を復号する。
【０１０２】
あるいは、KGCは、第2の公開鍵、および端末が失効していないことを示す鍵更新情報をサーバに送信でき、その結果、サーバは、第2の公開鍵および鍵更新情報に従って変換鍵を生成する。
【０１０３】
端末デバイスが現在失効状態にある場合、KGCは、端末デバイスが失効していることを示す失効リストに従って鍵更新情報を生成することができ、鍵更新情報は端末が失効していることを示すために使用され、KGCは、鍵更新情報および第2の公開鍵に従ってエラープロンプトを生成する。
【０１０４】
あるいは、KGCは、第2の公開鍵、および端末が失効していることを示す鍵更新情報をサーバに送信でき、その結果、サーバは、第2の公開鍵および鍵更新情報に従ってエラープロンプトを生成する。
【０１０５】
本発明のこの実施形態におけるデータ処理方法によれば、端末デバイスが失効していないかどうかを示すために使用される鍵更新情報がKGCによって生成され、変換鍵が鍵更新情報および第2の公開鍵に従って生成され、その結果、失効していない端末デバイスが暗号化データを取得することができ、失効している端末デバイスが暗号化データを取得することができないことを保証することができる。これにより、システムのセキュリティ性能が向上する。
【０１０６】
場合によっては、KGCにより、第2の公開鍵を生成するステップの前に、方法400は以下をさらに含む。
【０１０７】
S411．KGCが端末デバイスから認証情報を受信し、認証情報は、端末デバイスが第1の秘密鍵を記憶することを示すために使用される。
【０１０８】
S412．KGCが認証情報に従って第2の公開鍵を生成することを決定する。
【０１０９】
KGCに第1の公開鍵を送信するとき、端末デバイスはKGCに認証情報をさらに送信することができ、認証情報は、端末デバイスが第1の公開鍵と対にされた第1の秘密鍵を記憶することを示すために使用される。この場合、KGCは、認証情報に従って、第2の公開鍵を生成することを決定することができる。KGCが認証情報を受信しない場合、KGCは、第1の公開鍵が無認可の公開鍵であると見なすことができ、第1の公開鍵に対する後続の処理を終了する。これにより、ABEシステムのセキュリティ性能を向上させることができる。
【０１１０】
場合によっては、KGCにより、第1の公開鍵および端末デバイスの属性情報に従って第2の公開鍵を生成するステップは、以下のステップを含む。
【０１１１】
S426．KGCが、第1の公開鍵、端末デバイスの属性情報、システムパラメータ、マスタ鍵、およびKGCの内部状態情報に従って、第2の公開鍵および更新された内部状態情報を生成し、システムパラメータはKGCによって生成された公開情報であり、マスタ鍵はKGCによって生成された秘密鍵である。
【０１１２】
KGCは、初期化中にシステムパラメータparおよびマスタ鍵mskを生成することができる。たとえば、端末デバイスがセキュリティパラメータλを入力し、ABEのシステムセットアップアルゴリズム、すなわち、（par，msk）←ABE.Setup（1λ）を実行し、ここで、ABE.Setupは属性ベース暗号化のシステムセットアップアルゴリズムである。加えて、アルゴリズムは、最初に空の失効リストrlおよび状態情報stを用意し、最後に（par，msk，rl，st）を出力する。
【０１１３】
第2の公開鍵を生成することを決定した場合、KGCは以下の方法で第2の公開鍵を生成することができる：システムパラメータpar、マスタ鍵msk、第1の公開鍵pkid、属性集合A（すなわち、端末デバイスの複数の属性情報を含む集合）、およびKGCの内部状態stを入力するステップ、中間鍵、すなわち、skA，id←ABE.KeyGen（msk，A，id，st）を取得するためにABEの鍵生成アルゴリズムを実行するステップであって、ABE.KeyGenが属性ベース暗号化の鍵生成アルゴリズムである、ステップ、ElGamal暗号化アルゴリズムを使用して中間鍵を暗号化するステップ、ならびに端末デバイスの属性ベースの鍵（すなわち、第2の公開鍵）を出力するステップ、すなわち、pkidA←ElGamal.Enc（pkid，skA，id）であって、ElGamal.EncがElGamal暗号化アルゴリズムである、ステップ。ElGamal暗号化アルゴリズムは、セキュリティ性能を向上させるために中間鍵skA，idの内容全体を暗号化するか、またはKGCの計算負荷を低減するために中間鍵skA，idの一部のみを暗号化するために使用されてもよい。
【０１１４】
場合によっては、KGCにより、第2の公開鍵および第1の鍵更新情報に従って変換鍵を生成するステップは、以下のステップを含む。
【０１１５】
S427：KGCが、第2の公開鍵、第1の鍵更新情報、システムパラメータ、および識別パラメータに従って変換鍵を生成し、鍵更新情報は端末デバイスが失効していないことを示す。
【０１１６】
KGCは、以下の方法で第1の鍵更新情報を生成することができる：システムパラメータpar、マスタ鍵msk、時間期間値t、失効リストrl、および内部状態stを入力するステップ、ならびにアルゴリズムが第1の鍵更新情報を出力するためのABEの鍵更新アルゴリズムを実行するステップ、すなわち、tkut←ABE.KeyUpdate（msk，rl，t，st）であって、ABE.KeyUpdateが属性ベース暗号化の鍵更新アルゴリズムであり、失効リストrlが端末デバイスを含み、内部状態stが鍵更新アルゴリズムによって変更される、ステップ。
【０１１７】
さらに、KGCは、以下の方法で変換鍵を生成することができる：システムパラメータpar、ユーザ識別情報id（すなわち、識別パラメータ）、第2の鍵pkidA、および第1の鍵更新情報tkutを入力するステップ、ならびに変換鍵tkid，t＝（pkidA，tkut）を出力するステップ。
【０１１８】
前述の実施形態は説明のための一例にすぎず、本発明のこの実施形態はそれに限定されない。第2の公開鍵、第1の鍵更新情報、および変換鍵を生成するために使用され得る任意のアルゴリズムは、本発明の保護範囲内に入るべきである。
【０１１９】
本発明のこの実施形態におけるデータ処理方法によれば、KGCは、端末デバイスによって送信された第1の公開鍵を受信し、端末デバイスの属性に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するために、第1の公開鍵に従って、端末デバイスの属性に基づく第2の公開鍵を生成し、端末デバイスのみが、端末デバイスに記憶された第1の秘密鍵を使用することにより、第1の公開鍵に基づいて暗号化されたデータを復号することができる。このようにして、秘密鍵を送信するために安全なチャネルが使用される必要がなく、サーバのセキュリティ性能に対して要件は課されない。加えて、端末デバイスに記憶された秘密鍵は定数であってもよいので、端末デバイスの処理能力に対する要求が低減され、端末デバイスのリソース利用率が向上する。
【０１２０】
上記では、図4を参照して、KGCの観点から本発明の実施形態によるデータ処理方法を詳述した。以下では、図4を参照して、サーバの観点から本発明の一実施形態によるデータ処理方法を詳述する。
【０１２１】
図5は、本発明の一実施形態による、さらに別のデータ処理方法の概略フローチャートを示す。図5に示されたように、方法500は以下のステップを含む。
【０１２２】
S510．サーバが鍵生成センタKGCから第2の公開鍵を受信し、第2の公開鍵は、端末デバイスの属性構造に基づいて暗号化されたデータを、端末デバイスによって生成された第1の公開鍵に基づいて暗号化されたデータに変換するために使用され、その結果、端末デバイスは、端末デバイスによって生成された第1の秘密鍵に従って、第1の公開鍵を使用して暗号化されたデータを復号し、属性構造は、データにアクセスするために満たされる必要がある条件を示すために使用される。
【０１２３】
S520．サーバが第1のデータを取得し、第1のデータは端末デバイスの属性構造に基づいて暗号化されたデータである。
【０１２４】
S530．サーバが第2の公開鍵に従って第1のデータを第2のデータに変換し、第2のデータは第1の公開鍵に基づいて暗号化されたデータである。
【０１２５】
S540．サーバが端末デバイスに第2のデータを送信し、その結果、端末デバイスは第1の秘密鍵に従って第2のデータを復号する。
【０１２６】
本発明のこの実施形態では、第2の公開鍵は、第1の公開鍵および端末デバイスの属性情報に基づいてKGCによって生成された公開鍵であり、第2の公開鍵は、端末デバイスの属性に基づく公開鍵であり、端末デバイスの属性に基づいて暗号化されたデータを復号するために使用されてもよい。第1の公開鍵は第2の公開鍵の中にネストされているので、端末デバイスの属性に基づいて暗号化されたデータ（すなわち、第1のデータ）が第2の公開鍵を使用して処理された後、生成されたデータは第1の公開鍵に基づいて暗号化された暗号文（すなわち、第2のデータ）である。端末デバイスは、端末デバイスに記憶された第1の秘密鍵を使用して第2のデータを復号することができる。第1の秘密鍵は、第1の公開鍵と対にされ、端末デバイスによって生成された鍵であり、第1の公開鍵に基づいて暗号化されたデータを復号するために使用されてもよい。
【０１２７】
本発明のこの実施形態では、第2の公開鍵は、第1の公開鍵および端末デバイスの属性情報に基づいてKGCによって生成された公開鍵であってもよく、または第1の公開鍵、端末デバイスの属性情報、および鍵更新情報に基づいてKGCによって生成された（「変換鍵」と呼ばれる場合がある）公開鍵であってもよく、鍵更新情報は端末デバイスが失効していないことを示すために使用される。
【０１２８】
第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態におけるデータ処理方法では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【０１２９】
場合によっては、サーバにより、第2の公開鍵を受信するステップの後に、方法500は以下をさらに含む。
【０１３０】
S511．サーバがKGCから鍵更新情報を受信し、鍵更新情報は端末デバイスが失効しているかどうかを示すために使用される。
【０１３１】
S512．サーバが、第2の公開鍵および鍵更新情報に従って変換鍵またはエラープロンプトを生成し、端末デバイスが失効していることを鍵更新情報が示すとき、サーバが、第2の公開鍵および鍵更新情報に従ってエラープロンプトを生成し、または端末デバイスが失効していないことを鍵更新情報が示すとき、サーバが、第2の公開鍵および鍵更新情報に従って変換鍵を生成し、変換鍵は、端末デバイスの属性構造に基づいて暗号化されたデータを、第1の公開鍵に基づいて暗号化されたデータに変換するためにサーバによって使用され、その結果、端末デバイスは、端末デバイスによって生成された第1の秘密鍵に従って、第1の公開鍵を使用して暗号化されたデータを復号する。
【０１３２】
サーバにより、第2の公開鍵に従って第1のデータを第2のデータに変換するステップは、以下のステップを含む。
【０１３３】
S531．サーバが変換鍵に従って第1のデータを第2のデータに変換する。
【０１３４】
端末デバイスが現在非失効状態にある場合、KGCは、端末デバイスが失効していないことを示す失効リストに従って鍵更新情報を生成することができ、鍵更新情報は端末が失効していないことを示すために使用され、サーバは、第2の公開鍵および鍵更新情報に従って変換鍵を生成することができ、変換鍵は依然として端末デバイスの属性に基づく鍵であり、その中に第1の公開鍵がネストされる。サーバは、変換鍵を使用することにより、端末デバイスの属性に基づいて暗号化されたデータを第1の公開鍵に基づいて暗号化されたデータに変換することができ、その結果、端末デバイスは、端末デバイスによって生成された第1の秘密鍵に従って、変換鍵を使用した変換の結果を復号する。
【０１３５】
端末デバイスが現在失効状態にある場合、KGCは、端末デバイスが失効していることを示す失効リストに従って鍵更新情報を生成することができ、鍵更新情報は端末が失効していることを示すために使用され、サーバは、鍵更新情報および第2の公開鍵に従ってエラープロンプトを生成することができる。
【０１３６】
本発明のこの実施形態におけるデータ処理方法によれば、端末デバイスが失効していないことを示すために使用され、KGCによって生成された鍵更新情報が受信され、変換鍵が鍵更新情報および第2の公開鍵に従って生成され、その結果、失効していない端末デバイスが暗号化データを取得することができ、失効している端末デバイスが暗号化データを取得することができないことを保証することができる。これにより、システムのセキュリティ性能が向上する。
【０１３７】
場合によっては、サーバにより、第2の公開鍵および鍵更新情報に従って変換鍵を生成するステップは、以下のステップを含む。
【０１３８】
S515．サーバが、第2の公開鍵、鍵更新情報、システムパラメータ、および識別パラメータに従って変換鍵を生成し、システムパラメータはKGCによって生成された公開情報であり、識別パラメータは端末デバイスの識別情報である。
【０１３９】
システムパラメータはKGCによって生成された公開情報であり、システム内の任意のデバイスがシステムパラメータを取得することができる。たとえば、システムパラメータは、KGCがセキュリティパラメータλを入力し、ABEのシステムセットアップアルゴリズム、すなわち、（par，msk）←ABE.Setup（1λ）を実行した後に生成されてもよく、ここで、parはシステムパラメータであり、mskはマスタ鍵であり、ABE.Setupは属性ベース暗号化のシステムセットアップアルゴリズムである。
【０１４０】
サーバは、以下の方法で変換鍵を生成することができる：システムパラメータpar、ユーザ識別情報id（すなわち、識別パラメータ）、第2の鍵pkidA、および第1の鍵更新情報tkutを入力するステップ、ならびに変換鍵tkid，t＝（pkidA，tkut）を出力するステップ。
【０１４１】
場合によっては、サーバにより、変換鍵に従って第1のデータを第2のデータに変換するステップは、以下のステップを含む。
【０１４２】
S532．サーバが、変換鍵、システムパラメータ、端末デバイスの属性情報、識別パラメータ、および時間パラメータに従って第1のデータを第2のデータに変換し、システムパラメータはKGCによって生成された公開情報であり、識別パラメータは端末デバイスの識別情報であり、時間パラメータは、端末デバイスが現時点で変換鍵を使用することを許可されたことを示すために使用される。
【０１４３】
サーバは、以下の方法で第1のデータを第2のデータに変換することができる：システムパラメータpar、ユーザ識別情報id（すなわち、識別パラメータ）、属性集合A、変換鍵tkid，t、および暗号文（すなわち、第1のデータ）を入力するステップ、アルゴリズムが変換された暗号文を出力するためのABEの復号アルゴリズム、すなわち、CT'←ABE.Dec（pkidA，tkut，CT）を実行するステップであって、ABE.Decが属性ベース暗号化の復号アルゴリズムであり、pkidAが変換鍵である、ステップ。
【０１４４】
前述の実施形態は説明のための一例にすぎず、本発明のこの実施形態はそれに限定されない。変換鍵を生成するために使用され得る任意のアルゴリズム、および変換鍵に従って第1のデータを第2のデータを変換するために使用され得る任意のアルゴリズムは、本発明の保護範囲内に入るべきである。
【０１４５】
本発明のこの実施形態におけるデータ処理方法によれば、サーバはKGCから第2の公開鍵を受信し、第2の公開鍵は、第1の鍵更新情報に基づいてKGCによって生成された公開鍵（すなわち、変換鍵）であってもよく、第1の鍵更新情報は端末デバイスが失効していないことを示すために使用され、または第2の公開鍵は、第1の鍵更新情報に基づかずにKGCによって生成された公開鍵であってもよい。サーバは、第2の公開鍵に従って、端末デバイスの属性に基づいて暗号化されたデータを第1の公開鍵に基づいて暗号化されたデータに変換することができ、端末デバイスのみが、端末デバイスに記憶された第1の秘密鍵を使用することにより、第1の公開鍵に基づいて暗号化されたデータを復号することができる。このようにして、秘密鍵を送信するために安全なチャネルが使用される必要がなく、サーバのセキュリティ性能に対して要件は課されない。加えて、端末デバイスに記憶された秘密鍵は定数であってもよいので、端末デバイスの処理能力に対する要求が低減され、端末デバイスのリソース利用率が向上する。
【０１４６】
以下では、本発明の実施形態によるデータ処理方法の2つの具体的な実装形態を提供する。
【０１４７】
実施形態1
Gを次数が素数pである群とする。離散対数における十分な困難性を保証するために、pが512ビットより小さくてはならないことが示唆される。
【数１９】
2019531673.tif 000021
は双線形ペアリングを表記し、gはGの生成元である。本発明において提供されるサーバ支援取消可能ABEは以下のアルゴリズムを含む。
【０１４８】
Setup．このアルゴリズムは、入力としてセキュリティパラメータ1λを受け取り、次数が素数pである群Gおよび生成元gをランダムに選択し、ここで、g∈Gである。加えて、アルゴリズムは、Gに属するu、h、u0、h0、w、およびvと、Zpに属するαとをランダムに選択する。失効したユーザを記憶するためにrlを最初に空のテーブルとし、BTを少なくともN個のリーフノードを有する二分木とする。任意の値yをGの要素に写像する2つの関数F1およびF2は以下のように定義される：F1（y）＝uyhおよびF2（y）＝u0yh0、ここで、y∈Zpである。最後に、システムマスタ秘密鍵msk＝α、システム公開パラメータ
【数２０】
2019531673.tif 000022
、テーブルrl、および状態情報st＝BTが出力される。
【０１４９】
UserKG．このアルゴリズムは、システムパラメータparおよび識別情報idを入力として受け取り、βをランダムに選択し、ここで、β∈Zpであり、ユーザid用のユーザ秘密鍵／公開鍵のペア（skid，pkid）＝（β，gβ）を出力する。
【０１５０】
PubKG．このアルゴリズムは、システム公開パラメータpar、マスタ秘密鍵msk、識別情報id、ユーザ公開鍵pkid、ユーザ属性集合A、および状態情報stを入力として受け取る。A1、…、およびAkを属性集合Aの属性とする。アルゴリズムは、最初に二分木BTから未定義ノードθを選択し、そのノードに識別情報idを記憶する。次いで、ノードxごとに以下のステップが実行され、ここで、x∈Path（θ）である。
【０１５１】
ノードxからgxを取り出す。この値がxに対して定義されていない場合、ランダムにgxを選択し、ノードxにgxを記憶し、ここで、gx∈Gである。次いで、gx'＝pkida／gxを計算する。
【０１５２】
ランダムにrx、rx，1、…、およびrx，zを選択し、ここで、rx、rx，1、…、rx，k∈Zpであり、
【数２１】
2019531673.tif 000023
を計算する。
【０１５３】
最後に、このアルゴリズムはユーザ属性ベースの公開鍵
【数２２】
2019531673.tif 000024
および更新されたstを出力する。
【０１５４】
TKeyUp．このアルゴリズムは、システム公開パラメータpar、マスタ秘密鍵msk、時間期間値t、失効リストrl、および状態情報stを入力として受け取り、ノードxごとに対応するgxを取り出し、ここで、x∈KUNodes（BT，rl，t）であり、次いで、ランダムにsxを選択し、ここで、sx∈Zpであり、変換鍵更新情報tkut＝｛x，Qx，1，Qx，2｝x∈KUNodes（BT，rl，t）を出力し、ここで、
【数２３】
2019531673.tif 000025
である。
【０１５５】
TranKG．このアルゴリズムは、システム公開パラメータpar、識別情報id、ユーザ属性ベースの公開鍵
【数２４】
2019531673.tif 000026
および変換鍵更新情報tkutを入力として受け取る。Path（θ）をIとし、KUNodes（BT，rl，t）をJとする。アルゴリズムは、最初に
【数２５】
2019531673.tif 000027
を
【数２６】
2019531673.tif 000028
に構文解析し、tkutを｛x，Qx，1，Qx，2｝x∈Jに構文解析する。I∩J＝Φ、すなわち、IとJの交差集合が空である場合、アルゴリズムは（ユーザが失効し、変換鍵生成でエラーが発生したこと、すなわち、「エラープロンプト」を示す）⊥を返す。そうでない場合、アルゴリズムは、ノードxごとにZpに属するrx'、rx，1'、…rx，k'、およびsx'をランダムに選択し、ここで、x∈I∩Jであり、ユーザid用の変換鍵
【数２７】
2019531673.tif 000029
を出力し、ここで、
【数２８】
2019531673.tif 000030
である。
【０１５６】
Encrypt．このアルゴリズムは、システム公開パラメータpar、線形秘密分担アクセス制御構造（M，ρ）、時間期間値t、およびメッセージmを入力として受け取り、ベクトル
【数２９】
2019531673.tif 000031
をランダムに選択する。μはメッセージを暗号化するために使用される秘密インデックスである。1からlまでの範囲のiごとに、アルゴリズムは
【数３０】
2019531673.tif 000032
を計算し、ここで、MiはMのi番目の行である。加えて、アルゴリズムはZpに属するμ1、…、およびμlをランダムに選択し、次いで、暗号文
【数３１】
2019531673.tif 000033
を出力し、ここで、
【数３２】
2019531673.tif 000034
である。
【０１５７】
Transform．このアルゴリズムは、システム公開パラメータpar、識別情報id、対応するユーザ変換鍵tkid，t、ユーザ属性集合A、時間期間値t、およびアクセス制御構造（M，ρ）の暗号文CTを入力として受け取る。Aはアクセス制御構造（M，ρ）を満たし、IをI＝｛i：ρ（i）∈A｝とし、｛wi∈Zp｝i∈Iを、｛vi｝が（M，ρ）に従って秘密μに対して取得される有効な秘密分担であるならば
【数３３】
2019531673.tif 000035
を真とする一連の定数値とする。アルゴリズムは暗号文CTを
【数３４】
2019531673.tif 000036
に構文解析する。属性集合Aおよび変換鍵tkid，tがCTで提供されたアクセス構造（M，ρ）を満たさない場合、変換が失敗したことを示すために特殊表記⊥が出力される。そうでない場合、変換された暗号文CT'＝（C0'，C0）（すなわち、部分的に復号された暗号文）が以下の式を使用して出力される：
【数３５】
2019531673.tif 000037
【０１５８】
Decrypt．このアルゴリズムは、システム公開パラメータpar、識別情報id、対応するユーザ秘密鍵skid、および変換された暗号文CT'＝（C0'，C0）を入力として受け取る。C0'またはC0が群G1に属していない場合、出力動作は失敗する。そうでない場合、以下の式を使用して平文メッセージが計算され入力される：
【数３６】
2019531673.tif 000038
【０１５９】
Revoke．このアルゴリズムは、識別値id、時間期間値t、失効リストrl、および状態情報stを入力として受け取る。識別情報idに関連するノードxごとに、アルゴリズムは、rlに（x，t）を追加し、次いで、更新された失効リストrlを出力する。
【０１６０】
SR-ABEのセキュリティは、選ばれた平文攻撃（IND-CPA）の下で区別することがでないセキュリティモデルを定義することによって定義されてもよい。攻撃アルゴリズムおよび挑戦アルゴリズムを定義することにより、実際の潜在的なセキュリティ脅威および標準的なABEセキュリティにおける攻撃者の能力が、フォームの観点から考慮される。攻撃者は、攻撃者によって選択されたデータユーザの秘密鍵およびユーザ属性ベースの公開鍵を入手することができる。この場合、挑戦されたアクセス制御構造に関して、攻撃者は暗号化情報に関連するいかなる部分的な情報も取得しないはずである。加えて、セキュリティモデルにより、攻撃者が様々な時間期間内に定期的な鍵更新情報および変換鍵情報にアクセスし、攻撃者自身の必要に応じてユーザを失効させることが可能になる。この場合、挑戦されたアクセス制御構造を満たす属性に対応する任意の失効したユーザの場合、暗号化の時点でそのユーザがすでに失効している場合、攻撃者は暗号化情報に関連するいかなる部分的な情報も取得しないはずである。
【０１６１】
決定論的（q−1）仮定の下では、本発明のこの実施形態において提供されるサーバ支援取消可能ABE方式は、選択的IND-CPAセキュリティの定義の下の標準モデルにおいて安全であることを証明することができる。
【０１６２】
実施形態2
本発明のこの実施形態で使用される表記が最初に説明される。
【０１６３】
Tt：時間期間管理は二分木を使用して実行される。Qはそのリーフノードが（上限がqである）すべてのタイムスタンプを記憶する二分木であると仮定する。たとえば、q＝8であるとき、ツリーQが図6に示される。ルートノードはr-“*”と命名され、ここで、r＝log2q＝3である。左側のサブノードごとに、第1の*は0と置き換えられ、右側のサブノードごとに、第1の*は1と置き換えらる。ツリーのすべてのノードはそのように命名されてもよい。
【０１６４】
各暗号文について、Ttは、時間期間tに対応するノードおよびtよりも大きいすべての時間期間の組合せのみを含む。たとえば、現在の時間期間が3（バイナリで011）である場合、Ttは｛011，1**｝であり、リーフノード3〜7を含む。現在の時間期間が5（バイナリで101）である場合、Ttは｛101，11**｝であり、リーフノード5〜7を含む。Ttの最大サイズがツリーの（log2qに等しい）高さに等しいことを容易に知ることができる。したがって、時間期間4（バイナリで100）の中のユーザの鍵は、前述の第1の暗号文（タイムスタンプ3〜7）を復号するために使用することができるが、前述の第2の暗号文（タイムスタンプ5〜7）を復号するために使用することができない。
【０１６５】
Path（ID）：失効管理はツリーUを使用して実行され、リーフノードは識別情報IDを使用してマークされる。リーフノードグループVに対して、関数U（V）はUのノードの（決定論的かつ選択的な）集合を返し、その結果、リーフノードvのいくつかの祖先は、vがVに属するときのみU（V）に含まれる。そのような関数が存在し、多項式時間（VのサイズおよびIDのサイズ）内で計算され得る。Uのルートから（ルートおよびリーフを含む）リーフのvIDまでのノードの集合を示す文字列IDは、Path（ID）として定義される。
【０１６６】
図7に示されたように、図7に示されたツリーUはすべてのユーザを表す。V＝｛000，011｝が失効したユーザの群であると仮定すると、U（V）は｛000，00*，0**，***，011，01*｝（000および011の祖先を含む）である。加えて、Path（011）は｛011，01*，0**，***｝（ルートから011までのパスを含む）である。
【０１６７】
ωi，b：時間期間に関連する属性はωi，bを使用して記述される。ここで、インデックスiはツリーのレベルを示すために使用される。ルートはレベル0にあり、ルートのサブノードはレベル1にあり、以下同様である。最大レベルはr＝log2qである。インデックスbは0または1であり、レベルiの値を示す。たとえば、101に対応する時間期間の場合、群の関連属性は｛ω1，1，ω2，0，ω3，1｝である。
【０１６８】
（By，βy）：これは時間期間yに対するアクセス制御ポリシーである。Bは2r行（r＋1）列を有する行列であり、対角線に沿って2×2のオール1の行列をカスケードすることによって取得されると仮定され、行列の他の要素の値は0である。以下で、r＝3のときの一例を提供する。
【数３７】
2019531673.tif 000039
【０１６９】
行列Bの行は、b1，0、b1，1、b2，0、b2，1、…、br，0、およびbr，1によって表記され、降順にソートされる。行列Bのすべての行に対して、ラベルβはβ（bi，d）＝ωi，dとして定義される。アクセス制御ポリシー（By，βy）は時間期間yに対して定義される。［1，…，r］に属するインデックスiごとに、レベルiでのyの対応する値（y［i］によって表記される）が*でない場合、行bi，y［i］が行列Bから削除されて、行列Byが取得される。たとえば、r＝3およびy＝01*である場合、（以下の矢印によって示された）行列Byおよびラベルβyは以下の通りである。
【数３８】
2019531673.tif 000040
【０１７０】
なお、属性群Sは、（1）y［i］がすべてのiに対して*に等しくないようにされる場合、ωi，y［i］がSに含まれ、（2）y［i］がすべてのiに対して*に等しいようにされる場合、ωi，0またはωi，1がSに含まれるときのみ、属性群Sが（By，βy）を満たすことに留意されたい。
【０１７１】
（M，ρ）V（By，βy）：（M，ρ）V（By，βy）という表記は、2つのLSSSポリシー（M，ρ）と（By，βy）の組合せ、すなわち、Byの行を行列Mに順次追加することによって（かつ同じ長さになるように行を埋めることによって）生成されるLSSSポリシーを表すために使用される。
【０１７２】
実施形態2の具体的な実装形態は以下の通りである。
【０１７３】
Setup（1λ）：セキュリティパラメータλが入力され、次数がN＝p1p2p3である（次数は3つのランダムな素数の積に等しく、セキュリティ強度λに達する）双線形群Gが選択され、αおよびgがランダムに選択され、ここで、α∈ZNおよびg∈Gp1であり、最初は空の失効リストrlおよび状態stが準備され、各iに対して、siおよびX3がランダムに選択され、ここで、si∈ZN、X3∈Gp3であり、msk＝（α，X3）、par＝（N，g，ga，e（g，g）α、および｛Ti＝gsi for all i｝）を指定し、（par，msk，rl，st）が出力される。
【０１７４】
UserKG（par，id）：システム公開パラメータparおよびユーザ識別情報idが入力され、βがランダムに選択され、ここで、β∈ZNであり、skid＝βおよびpkid＝gβが出力される。
【０１７５】
PubKG（par，msk，id，pkid，A，st）：システム公開パラメータpar、マスタ鍵msk、ユーザ公開鍵pkid、属性集合A、およびKGCの内部状態stが入力され、各x∈Path（id）に対して、以下の計算が実行される。
【０１７６】
（x，αx）を求めて内部状態stを検索する。（x，αx）が存在しない場合、ランダムにαxを選択し、ここで、αx∈ZNであり、stに（x，αx）を記憶する。
【０１７７】
ランダムにtx、V、Z、および｛Wi｝i∈Sを選択し、ここで、tx∈ZNおよびV，Z，｛Wi｝i∈S∈Gp3であり、
【数３９】
2019531673.tif 000041
を計算し、
【数４０】
2019531673.tif 000042
を出力する。
【０１７８】
TKeyUp（par，msk，t，rl，st）：システム公開パラメータpar、マスタ鍵msk、時間期間t、失効リストrl、および内部状態stが入力され、各x∈U（rl）（失効リストのツリー）に対して、以下の計算が実行される。
集合S＝｛ωi，t［i］：i∈［r］｝を時間関連属性として表記する。
【０１７９】
（x，αx）を求めて内部状態stを検索する。（x，αx）が存在しない場合、ランダムにαxを選択し、ここで、αx∈ZNであり、stに（x，αx）を記憶する。
【０１８０】
ランダムにtx、V、Z、および｛Wi｝i∈Sを選択し、ここで、tx∈ZNおよびV，Z，｛Wi｝i∈S∈Gp3であり、
【数４１】
2019531673.tif 000043
を計算し、
【数４２】
2019531673.tif 000044
を出力する。
【０１８１】
TranKG（par，id，pkidA，tkut）：システム公開パラメータpar、ユーザ識別情報id、属性ベースの公開鍵pkidA、および鍵更新情報tkutが入力される。ユーザ識別情報idがtkutのrlにない場合、U（rl）とPath（id）の両方に属するノードxが必ず存在する。xに対応する鍵更新情報は、
【数４３】
2019531673.tif 000045
であり、
tkid，t＝（SK0，SK1）が出力される。
【０１８２】
Encrypt（par，（M，ρ），t，m）：システム公開パラメータpar、アクセス制御ポリシー（M，ρ）、時間期間t、および平文mが入力され、LSSS制御ポリシー
【数４４】
2019531673.tif 000046
がyごとに設定され、ここで、y∈Ttである。vおよびri（i∈［n］）がランダムに選択され、ここで、v＝（s，v2，…，vn）∈ZNnおよびri∈ZNであり、以下の計算が実行され、
【数４５】
2019531673.tif 000047
暗号文CTt＝（｛Cy，Cy'，｛Cy，i，Dy，i｝i∈［n］：for all y∈Tt｝，（M，ρ））が出力される。
【０１８３】
Transform（par，id，A，tkid，t'，CTt）：システム公開パラメータpar、ユーザ識別情報id、属性集合A、変換鍵tkid，t'、および暗号文が入力される。t'がt以上である場合、t'の祖先であるyが存在し、ここで、y∈Ttである。yについて暗号文CTtから（Cy，Cy'，｛Cy，i，Dy，i｝i∈［n］）が抽出される。tkid，t'が（SK0，SK1）として示され、ここで、SK0＝｛Kx，0，｛Kx，i，0：i∈A｝，K*x，0｝およびSK1＝｛Kx，1，｛Kx，i，1：i∈A｝，K*x，1｝である。
【０１８４】
最初に、
【数４６】
2019531673.tif 000048
となるωiが計算され、ここで、ωi∈ZNである。次いで、以下の計算が実行される：
【数４７】
2019531673.tif 000049
【０１８５】
【数４８】
2019531673.tif 000050
は、前述の2つの値を使用して計算することができる。同様に、
【数４９】
2019531673.tif 000051
はSK1を使用して以下の式に従って計算することができる：
【数５０】
2019531673.tif 000052
CT'＝（Cy，CT'0，CT'1）が最後に出力される。
【０１８６】
Decrypt（par，id，skid，CT'）：システム公開パラメータpar、ユーザ識別情報id、ユーザ秘密鍵skid＝β、および変換暗号文CT'＝（Cy，CT'0，CT'1）が入力され、平文
【数５１】
2019531673.tif 000053
が出力される。
【０１８７】
Revoke（id，t，rl）：失効ユーザ識別情報id、時間期間t、失効リストrl、および状態情報stが出力され、｛（id，t）｝が追加されたrlは、更新された失効リストrlとして出力に使用される。
【０１８８】
本発明のこの実施形態では、以下の拡張が実装されてもよい。
【０１８９】
拡張1：これは、選ばれた暗号文攻撃（IND-CCAセキュリティ）の下で区別することができない方式である。本発明において提供された前述のSR-ABE方式は、比較的十分でないIND-CPAセキュリティのみを提供する。IND-CPAセキュリティを伴う暗号化方式をIND-CCAセキュリティを伴う暗号化方式に変換するために、いくつかの既存の普遍的な方法が使用されてもよい。
【０１９０】
たとえば、1999年に提案されたFujisaki-Okamoto方法は、IND-CPAセキュリティを伴う属性ベースまたは識別情報ベースの暗号化方式をIND-CCAセキュリティを伴う暗号化方式にアップグレードするために使用することができる。IND-CCAが安全である対称鍵暗号化および復号方式（E，D）、ならびに2つのハッシュ関数が、以下の動作を実行するために暗号化方式で使用される：（1）メッセージmが暗号化されるとき、最初に乱数rを選択し、次いで、乱数G（r）を使用してABEを介してメッセージとして使用されるrを暗号化して、C1＝ABE.Enc（r；G（r））を生成する。（2）対称鍵H（r）を使用してメッセージmを暗号化して、C2＝E（H（r），m）を生成する。（3）最後に暗号文（C1，C2）を出力する。暗号文（C1，C2）を復号するための動作は以下の通りである：（1）ABEを介してC1を復号してrを取得する。（2）ABE.Enc（r；G（r）を計算し、値がC1に等しいかどうかを判定し、値がC1に等しくない場合はエラーが返される。（3）ステップ（2）が成功した場合、対称鍵H（r）を使用してC2を復号して、メッセージmを取得する。
【０１９１】
別の例を挙げると、2011年に提案されたYamada-Attrapadung-Hanaoka-Kunihiro方法は、IND-CPAセキュリティを伴う属性ベースの暗号化方式をIND-CCAセキュリティを伴う暗号化方式にアップグレードするために使用することができる。ワンタイム署名方式（S，V）が使用される。この方法の暗号化動作は以下の通りである。（1）メッセージmが暗号化されるとき、最初にワンタイム署名方式として公開鍵／秘密鍵のペア（vk，sk）をランダムに生成する。（2）元のアクセス制御ポリシーYにvkを追加して、新しいアクセス制御ポリシーY'（たとえば、Y'＝Y or vk）を取得する。（3）暗号文（C1，C2、vk）を計算し、ここで、C1は、メッセージmがアクセス制御ポリシーY'を使用してABEによって暗号化された後に取得された出力であり、C2は、ワンタイム署名がskを使用してC1に付加された後に取得された出力である。復号動作は以下の通りである：（1）vkおよびC1を使用して、ワンタイム署名が付加されたC2を検証し、検証が失敗した場合はエラーが返される。（2）ワンタイム署名が付加されたC2の検証に成功した場合、ABEを使用してC1を復号して、メッセージmを取得する。
【０１９２】
拡張2：これはロングデータの暗号化用である。ロングデータ暗号化の効率を向上させるために、メッセージmの代わりに対称鍵kが、この特許で提案された属性ベースの暗号化方式における暗号化アルゴリズムにおいて使用されてもよく、ロングデータはkを使用して対称暗号化方式で暗号化される。このようにして、ユーザがサーバによる部分復号の結果を受信した後、対称鍵Kはユーザの長期秘密鍵を使用することによって検索することができ、ロングデータはkを使用して対称暗号化アルゴリズムによって最終的に復号される。
【０１９３】
拡張3：これはサーバ支援取消可能鍵ポリシー属性ベース暗号化（SR-KP-ABE）方式である。文献［1］（N. Attrapadung and H. Imai，Attribute-based encryption supporting direct/indirect revocation modes，In Cryptography and Coding，12th IMA International Conference，Cryptography and Coding 2009，Cirencester，UK，December 15〜17，2009，Proceedings，volume 5921 of Lecture Notes in Computer Science，pages 278〜300，Springer，2009）で提案されている間接失効KP-ABEに基づいて、前述の実施形態において使用される技術は、サーバ支援取消可能KP-ABE方式を取得するために使用されてもよい。簡単な説明は以下の通りである。
【０１９４】
Setupアルゴリズムは文献［1］と同じであるが、パラメータaxは設定される必要がない。
【０１９５】
前述のUserKGアルゴリズムは、文献［1］の方式に直接追加される。
【０１９６】
文献［1］のKeyGenアルゴリズムは、
【数５２】
2019531673.tif 000054
を指定することによってPubKGアルゴリズムに変更される。
【０１９７】
KeyUpdateアルゴリズム、Encryptアルゴリズム、およびRevokeアルゴリズムは、文献［1］の中のそれらと同じである。
【０１９８】
必要なTransformアルゴリズムとして、文献［1］の復号結果
【数５３】
2019531673.tif 000055
を有するDecryptアルゴリズムが使用される。
【０１９９】
最後に、文献［1］のDecryptアルゴリズムは、前述のSR-ABE方式のDecryptアルゴリズムと置き換えられる。
【０２００】
拡張4：これはサーバ支援取消可能識別情報ベース暗号化（SR-IBE）である。SR-IBE方式は、失効からもたらされる追加のユーザワークロードを削減するために、文献［2］（B. Qin，R. H. Deng，Y. Li，and S. Liu，Server-aided revocable identity-based encryption，In Computer Security-ESORICS 2015-20th European Symposium on Research in Computer Security，Vienna，Austria，September 21〜25，2015，Proceedings，Part I，volume 9326 of Lecture Notes in Computer Science，pages 286〜304，Springer，2015）において提案されている。しかしながら、この方式の効率はまだそれほど望ましくない。一方では、安全なチャネルはシステム内のすべてのユーザに対して秘密鍵を送信するために必要とされるが、安全なチャネルを確立することは容易ではない。他方では、ユーザ復号のための計算量をさらに削減することができる。具体的には、文献［2］で提案されているSR-IBEは、以下のように改善されてもよい。
【０２０１】
g1＝gαであり、マスタ秘密鍵がαであるとする。
【０２０２】
前述のSR-ABEのUserKGアルゴリズムは、文献［2］のPrivKGアルゴリズムと置き換えられる。
【０２０３】
文献［2］のgx，1＝hα／gx，2は、gx，1＝pkidα／gx，2として再定義される。
【０２０４】
拡張1および拡張2に記載された方法を使用して、本発明のこの実施形態において提供されるデータ処理方法は、IND-CCA2セキュリティに拡張され得るか、対称暗号化技法を使用することによってロングメッセージの暗号化をサポートできるか、またはIND-CCA2セキュリティを有し、ロングメッセージの暗号化をサポートすることの両方ができる。
【０２０５】
加えて、拡張3に記載された方法は、IND-CCA2セキュリティに拡張され得るか、対称暗号化技法を使用することによってロングメッセージの暗号化をサポートできるか、またはIND-CCA2セキュリティを有し、ロングメッセージの暗号化をサポートすることの両方ができる。拡張4に記載された方法は、IND-CCA2セキュリティに拡張され得るか、対称暗号化技法を使用することによってロングメッセージの暗号化をサポートできるか、またはIND-CCA2セキュリティを有し、ロングメッセージの暗号化をサポートすることの両方ができる。
【０２０６】
加えて、本発明のこの実施形態における方式は、以下の特徴のうちの1つを満たす任意の取消可能属性ベース暗号化と組み合わせてElGamal暗号化を使用することによって構築される：PubKGアルゴリズムはElGamalを使用することによって属性ベース鍵のうちのすべてまたはいくつかを暗号化することを含み、TransformアルゴリズムはABE.Decアルゴリズムを実行して復号を実行し、DecryptアルゴリズムはElGamal.Decアルゴリズムを実行して復号を実行する。前述の一般的な構築で使用される取消可能属性ベース暗号化は、以下の特性を満たす必要がある。
【０２０７】
ElGamal.Dec（skid，ABE.Dec（pkidA，tkut，CT））がABE.Dec（ElGamal.Dec（skid，pkidA），tkut，CT）に等しいこれは、ElGamal復号と取消可能属性ベース復号の順序が逆であってもよいことを意味する。
【０２０８】
前述の実施形態は、主に、装置間の相互作用の観点から、本発明の実施形態における解決策を記載した。前述の機能を実装するために、装置、たとえば端末デバイス、鍵生成センタ、およびサーバは、機能を実装するための対応するハードウェア構造および／またはソフトウェアモジュールを含むことを理解されたい。本明細書に開示された実施形態を参照して記載された例におけるユニットおよびアルゴリズムステップが、ハードウェアまたはハードウェアとコンピュータソフトウェアの組合せによって本発明に実装され得ることを、当業者なら気付いてもよい。機能がハードウェアによって実装されるか、ハードウェアを駆動するコンピュータソフトウェアによって実装されるかは、特定の用途および技術的解決策の設計制約条件に依存する。当業者は、特定の用途ごとに異なる方法を使用して、記載された機能を実装することができるが、その実装形態が本発明の範囲を超えると考えられるべきではない。
【０２０９】
本発明の実施形態において、端末デバイス、鍵生成センタ、およびサーバは、前述の方法例に従って機能ユニットに分割されてもよく、たとえば、機能に応じて機能ユニットに分割されてもよく、または少なくとも2つの機能を1つの処理ユニットに統合してもよい。統合ユニットは、ハードウェアの形態で実装されてもよく、ソフトウェア機能ユニットの形態で実装されてもよい。本発明の実施形態におけるユニット分割は一例であり、論理的な機能分割にすぎず、実際の実装形態では他の分割であってもよいことに留意されたい。
【０２１０】
統合ユニットが使用されるとき、図8Aは、前述の実施形態における端末デバイスの可能な概略構造図を示す。端末デバイス800は、処理ユニット802および通信ユニット803を含む。処理ユニット802は、端末デバイス800の動作を制御および管理するように構成される。たとえば、処理ユニット802は、図1のステップ2およびステップ9を実行する際に端末デバイス800をサポートするように構成される。処理ユニット802は、図3のS310およびS340を実行する際に端末デバイス800をサポートするようにさらに構成され、かつ／または本明細書に記載された技術の他のプロセスに使用されてもよい。通信ユニット803は、端末デバイス800と別のネットワークエンティティとの間の通信、たとえば、端末デバイス800と図1に示されたKGC120またはサーバ130との間の通信をサポートするように構成される。端末デバイス800は、端末デバイス500のプログラムコードおよびデータを記憶するように構成された記憶ユニット801をさらに含んでもよい。
【０２１１】
処理ユニット802はプロセッサまたはコントローラであってもよい。たとえば、処理ユニット802は、中央処理装置（Central Processing Unit、CPU）、汎用プロセッサ、デジタル信号プロセッサ（Digital Signal Processor、DSP）、特定用途向け集積回路（Application-Specific Integrated Circuit、ASIC）、フィールドプログラマブルゲートアレイ（Field Programmable Gate Array、FPGA）もしくは他のプログラマブル論理デバイス、トランジスタ論理デバイス、ハードウェア構成要素、またはそれらの任意の組合せであってもよい。処理ユニット802は、本発明に開示された内容を参照して記載された様々な例示的な論理ブロック、モジュール、および回路を実装または実行することができる。あるいは、プロセッサは、計算機能を実装するプロセッサの組合せ、たとえば、1つもしくは複数のマイクロプロセッサを含む組合せ、またはDSPとマイクロプロセッサの組合せであってもよい。通信ユニット803は、通信インターフェース、トランシーバ、トランシーバ回路などであってもよい。通信インターフェースは総称であり、1つまたは複数のインターフェースを含んでもよい。記憶ユニット801はメモリであってもよい。
【０２１２】
処理ユニット802がプロセッサであり、通信ユニット803が通信インターフェースであり、記憶ユニット801がメモリであるとき、本発明のこの実施形態における端末デバイスは、図8Bに示された端末デバイスであってもよい。
【０２１３】
図8Bを参照すると、端末デバイス810は、プロセッサ812と、通信インターフェース813と、メモリ811とを含む。場合によっては、端末デバイス810はバス814をさらに含んでもよい。通信インターフェース813、プロセッサ812、およびメモリ811は、バス814を使用して互いに接続されてもよい。バス814は、周辺構成要素相互接続（Peripheral Component Interconnect、略してPCI）バス、拡張業界標準アーキテクチャ（Extended Industry Standard Architecture、略してEISA）バスなどであってもよい。バス814は、アドレスバス、データバス、制御バスなどに分類されてもよい。表現を容易にするために、図8Bではバスはただ1つの太線を使用して表されているが、それは、ただ1つのバスまたはただ1つのタイプのバスしか存在しないことを意味しない。
【０２１４】
便利で簡潔な説明のために、前述の装置およびユニットの詳細な動作プロセスについては、前述の方法実施形態の対応するプロセスに対して参照が行われてもよいことは、当業者なら明確に理解されよう。詳細は本明細書では再び記載されない。
【０２１５】
したがって、本発明のこの実施形態において提供される端末デバイスは、第1の公開鍵および第1の秘密鍵を生成することができ、第1の公開鍵はデータを暗号化するために使用され、第1の秘密鍵は、第1の公開鍵を使用して暗号化されたデータを復号するために使用される。端末デバイスは、KGCに第1の公開鍵を送信し、その結果、KGCまたはサーバは、第1の公開鍵に従って変換鍵を生成し、第1の公開鍵は変換鍵の中にネストされる。したがって、サーバが、変換鍵を使用することにより、端末デバイスの属性構造に基づいて暗号化された暗号文を処理した後に生成されるものは、第1の公開鍵を使用して暗号化された暗号文である。端末デバイスは、第1の公開鍵と対にされた第1の秘密鍵を記憶する。サーバによって送信された部分的に復号された暗号文を受信した後、端末デバイスは、平文を生成するために、第1の秘密鍵および復号アルゴリズムに従って復号を実行することができる。第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態におけるデータ処理方法では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【０２１６】
統合ユニットが使用されるとき、図9Aは、前述の実施形態におけるKGCの可能な概略構造図を示す。KGC900は、処理ユニット902および通信ユニット903を含む。処理ユニット902は、KGC900の動作を制御および管理するように構成される。たとえば、処理ユニット902は、図1のステップ1、ステップ3、ステップ4、およびステップ10を実行する際にKGC900をサポートするように構成される。処理ユニット902は、図4のS420を実行する際にKGC900をサポートするようにさらに構成され、かつ／または本明細書に記載された技術の他のプロセスに使用されてもよい。通信ユニット903は、KGC900と別のネットワークエンティティとの間の通信、たとえば、KGC900と図1に示された端末デバイス110またはサーバ130との間の通信をサポートするように構成される。KGC900は、KGC900のプログラムコードおよびデータを記憶するように構成された記憶ユニット901をさらに含んでもよい。
【０２１７】
処理ユニット902はプロセッサまたはコントローラであってもよい。たとえば、処理ユニット902は、中央処理装置CPU、汎用プロセッサ、DSP、ASIC、FPGAもしくは他のプログラマブル論理デバイス、トランジスタ論理デバイス、ハードウェア構成要素、またはそれらの任意の組合せであってもよい。処理ユニット902は、本発明に開示された内容を参照して記載された様々な例示的な論理ブロック、モジュール、および回路を実装または実行することができる。あるいは、プロセッサは、計算機能を実装するプロセッサの組合せ、たとえば、1つもしくは複数のマイクロプロセッサを含む組合せ、またはDSPとマイクロプロセッサの組合せであってもよい。通信ユニット903は、通信インターフェース、トランシーバ、トランシーバ回路などであってもよい。通信インターフェースは総称であり、1つまたは複数のインターフェースを含んでもよい。記憶ユニット901はメモリであってもよい。
【０２１８】
処理ユニット902がプロセッサであり、通信ユニット903が通信インターフェースであり、記憶ユニット901がメモリであるとき、本発明のこの実施形態におけるKGCは、図9Bに示されたKGCであってもよい。
【０２１９】
図9Bを参照すると、KGC910は、プロセッサ912と、通信インターフェース913と、メモリ911とを含む。場合によっては、KGC910はバス914をさらに含んでもよい。通信インターフェース913、プロセッサ912、およびメモリ911は、バス914を使用して互いに接続されてもよい。バス914は、PCIバス、EISAバスなどであってもよい。バス914は、アドレスバス、データバス、制御バスなどに分類されてもよい。表現を容易にするために、図9Bではバスはただ1つの太線を使用して表されているが、それは、ただ1つのバスまたはただ1つのタイプのバスしか存在しないことを意味しない。
【０２２０】
便利で簡潔な説明のために、前述の装置およびユニットの詳細な動作プロセスについては、前述の方法実施形態の対応するプロセスに対して参照が行われてもよいことは、当業者なら明確に理解されよう。詳細は本明細書では再び記載されない。
【０２２１】
したがって、本発明のこの実施形態において提供されるKGCは、第1の公開鍵および端末デバイスの属性に基づいて第2の公開鍵を生成することができる。第2の公開鍵は、端末デバイスの属性に基づく公開鍵であり、端末デバイスの属性に基づいて暗号化されたデータを復号するために使用されてもよい。第1の公開鍵は第2の公開鍵の中にネストされているので、端末デバイスの属性に基づいて暗号化されたデータが第2の公開鍵を使用して処理された後に生成されるデータは、第1の公開鍵に基づいて暗号化された暗号文である。端末デバイスは、端末デバイスに記憶された第1の秘密鍵を使用して、第1の公開鍵に基づいて暗号化された暗号文を復号することができる。第1の秘密鍵は、第1の公開鍵と対にされた鍵であり、第1の公開鍵に基づいて暗号化されたデータを復号するために使用されてもよい。本発明のこの実施形態では、端末デバイスの属性情報は端末デバイスの特定の識別情報であってもよく、KGCは、端末デバイスの第1の公開鍵および属性集合に従って第2の公開鍵をさらに生成することができる。
【０２２２】
第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態におけるデータ処理方法では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態におけるデータ処理方法は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【０２２３】
統合ユニットが使用されるとき、図10Aは、前述の実施形態におけるサーバの可能な概略構造図を示す。サーバ1000は、処理ユニット1002および通信ユニット1003を含む。処理ユニット1002は、サーバ1000の動作を制御および管理するように構成される。たとえば、処理ユニット1002は、図1のステップ7およびステップ8を実行する際にサーバ1000をサポートするように構成される。処理ユニット1002は、図5のS530を実行する際にサーバ1000をサポートするようにさらに構成され、かつ／または本明細書に記載された技術の他のプロセスに使用されてもよい。通信ユニット1003は、サーバ1000と別のネットワークエンティティとの間の通信、たとえば、サーバ1000と図1に示された端末デバイス110またはKGC120との間の通信をサポートするように構成される。サーバ1000は、サーバ1000のプログラムコードおよびデータを記憶するように構成された記憶ユニット1001をさらに含んでもよい。
【０２２４】
処理ユニット1002はプロセッサまたはコントローラであってもよい。たとえば、処理ユニット1002は、中央処理装置CPU、汎用プロセッサ、DSP、ASIC、FPGAもしくは他のプログラマブル論理デバイス、トランジスタ論理デバイス、ハードウェア構成要素、またはそれらの任意の組合せであってもよい。処理ユニット1002は、本発明に開示された内容を参照して記載された様々な例示的な論理ブロック、モジュール、および回路を実装または実行することができる。あるいは、プロセッサは、計算機能を実装するプロセッサの組合せ、たとえば、1つもしくは複数のマイクロプロセッサを含む組合せ、またはDSPとマイクロプロセッサの組合せであってもよい。通信ユニット1003は、通信インターフェース、トランシーバ、トランシーバ回路などであってもよい。通信インターフェースは総称であり、1つまたは複数のインターフェースを含んでもよい。記憶ユニット1001はメモリであってもよい。
【０２２５】
処理ユニット1002がプロセッサであり、通信ユニット1003が通信インターフェースであり、記憶ユニット1001がメモリであるとき、本発明のこの実施形態におけるサーバは、図10Bに示されたサーバであってもよい。
【０２２６】
図10Bを参照すると、サーバ1010は、プロセッサ1012と、通信インターフェース1013と、メモリ1011とを含む。場合によっては、サーバ1010はバス1014をさらに含んでもよい。通信インターフェース1013、プロセッサ1012、およびメモリ1011は、バス1014を使用して互いに接続されてもよい。バス1014は、PCIバス、EISAバスなどであってもよい。バス914は、アドレスバス、データバス、制御バスなどに分類されてもよい。表現を容易にするために、図10Bではバスはただ1つの太線を使用して表されているが、それは、ただ1つのバスまたはただ1つのタイプのバスしか存在しないことを意味しない。
【０２２７】
便利で簡潔な説明のために、前述の装置およびユニットの詳細な動作プロセスについては、前述の方法実施形態の対応するプロセスに対して参照が行われてもよいことは、当業者なら明確に理解されよう。詳細は本明細書では再び記載されない。
【０２２８】
本発明のこの実施形態では、第2の公開鍵は、第1の公開鍵および端末デバイスの属性情報に基づいてKGCによって生成された公開鍵であり、第2の公開鍵は、端末デバイスの属性に基づく公開鍵であり、端末デバイスの属性に基づいて暗号化されたデータを復号するために使用されてもよい。第1の公開鍵は第2の公開鍵の中にネストされているので、端末デバイスの属性に基づいて暗号化されたデータが第2の公開鍵を使用して処理された後に生成されるデータは、第1の公開鍵に基づいて暗号化された暗号文である。端末デバイスは、端末デバイスに記憶された第1の秘密鍵を使用して第2のデータを復号することができる。第1の秘密鍵は、端末デバイスによって生成された鍵であり、第1の公開鍵に基づいて暗号化されたデータを復号するために使用されてもよい。
【０２２９】
第1の秘密鍵は常に端末デバイスに記憶され、第1の秘密鍵は別のデバイスに送信される必要がないので、本発明のこの実施形態では、安全なチャネルが使用される必要がない。加えて、サーバが第1のデータを処理した後に取得されるものは依然として暗号文なので、サーバが別のデバイスと共謀した場合でも、別のデバイスは最終的な平文を取得することができない。したがって、本発明のこの実施形態は、サーバのセキュリティ性能に要件を課さない。その上、本発明のこの実施形態における第1の秘密鍵は定数であってもよく、端末デバイスは、平文を取得するために、第1の秘密鍵に従って復号演算を実行するときに1回のべき乗演算を実行するだけでよい。これは、別の技術的解決策で大量の計算リソースが消費される双線形ペアリング演算を回避し、それにより、端末デバイスの処理能力に対する要件が低減され、端末デバイスのリソース利用率が向上する。
【０２３０】
プロセスのシーケンス番号は、本発明の実施形態における実行シーケンスを意味しない。プロセスの実行シーケンスは、プロセスの機能および内部ロジックに従って決定されるべきであり、本発明の実施形態の実装プロセスに対するいかなる制限とも解釈されるべきではない。
【０２３１】
加えて、本明細書内の「および／または」という用語は、関連するオブジェクトを記述するための関連付け関係のみを記載し、3つの関係が存在してもよいことを表す。たとえば、Aおよび／またはBは、以下の3つのケースを表すことができる：Aのみが存在する、AとBの両方が存在する、およびBのみが存在する。加えて、本明細書内の文字「／」は、一般に、関連するオブジェクト間の「または」関係を表す。
【０２３２】
本発明の実施形態に開示された内容を参照して記載された方法またはアルゴリズムのステップは、ハードウェアによって実施されてもよく、またはソフトウェア命令を実行するプロセッサによって実施されてもよい。ソフトウェア命令は対応するソフトウェアモジュールを含んでもよい。ソフトウェアモジュールは、ランダムアクセスメモリ（Random Access Memory、RAM）、フラッシュメモリ、読取り専用メモリ（Read Only Memory、ROM）、消去可能プログラマブル読取り専用メモリ（Erasable Programmable ROM、EPROM）、電気的消去可能プログラマブル読取り専用メモリ（Electrically EPROM、EEPROM）、レジスタ、ハードディスク、リムーバルハードディスク、コンパクトディスク読取り専用メモリ（CD-ROM）、または従来技術で知られた任意の他の形態の記憶媒体に記憶されてもよい。たとえば、記憶媒体はプロセッサに結合されてもよく、その結果、プロセッサは、記憶媒体から情報を読み取るか、または記憶媒体に情報を書き込むことができる。確かに、記憶媒体は、代替としてプロセッサの構成要素であってもよい。プロセッサおよび記憶媒体はASIC内に配置されてもよい。加えて、ASICは、端末デバイス、KGC、またはサーバ内に配置されてもよい。確かに、プロセッサおよび記憶媒体は、個別の構成要素として端末デバイス、KGC、またはサーバ内に配置されてもよい。
【０２３３】
前述の1つまたは複数の例では、本発明に記載された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せによって実装されてもよいことに当業者は気付くべきである。機能がソフトウェアによって実装されると、前述の機能は、コンピュータ可読媒体内に記憶されるか、またはコンピュータ可読媒体内で1つもしくは複数の命令もしくはコードとして送信されてもよい。コンピュータ可読媒体には、コンピュータ記憶媒体および通信媒体が含まれ、通信媒体には、コンピュータプログラムが1つの場所から別の場所に送信されることを可能にする任意の媒体が含まれる。記憶媒体は、汎用コンピュータまたは専用コンピュータにアクセス可能な任意の利用可能な媒体であってもよい。
【０２３４】
本発明の目的、技術的解決策、および有益な効果は、前述の具体的な実装形態においてさらに詳細に記載された。前述の説明は、本発明の具体的な実装形態にすぎず、本発明の保護範囲を限定するものではないことを理解されたい。本発明の技術的解決策に基づいて行われるいかなる修正、均等な置換、および改善も、本発明の保護範囲内に入るべきである。
【符号の説明】
【０２３５】
110  端末デバイス
120  鍵生成センタ（KGC）
130  サーバ
140  クラウドプラットフォーム
150  データプロバイダ
800  端末デバイス
801  記憶ユニット
802  処理ユニット
803  通信ユニット
810  端末デバイス
811  メモリ
812  プロセッサ
813  通信インターフェース
814  バス
900  KGC
901  記憶ユニット
902  処理ユニット
903  通信ユニット
910  KGC
911  メモリ
912  プロセッサ
913  通信インターフェース
914  バス
1000  サーバ
1001  記憶ユニット
1002  処理ユニット
1003  通信ユニット
1010  サーバ
1011  メモリ
1012  プロセッサ
1013  通信インターフェース
1014  バス
【図１】
2019531673.tif 000056
【図２】
2019531673.tif 000057
【図３】
2019531673.tif 000058
【図４】
2019531673.tif 000059
【図５】
2019531673.tif 000060
【図６】
2019531673.tif 000061
【図７】
2019531673.tif 000062
【図８Ａ】
2019531673.tif 000063
【図８Ｂ】
2019531673.tif 000064
【図９Ａ】
2019531673.tif 000065
【図９Ｂ】
2019531673.tif 000066
【図１０Ａ】
2019531673.tif 000067
【図１０Ｂ】
2019531673.tif 000068
【手続補正書】
【提出日】平成31年3月14日(2019.3.14)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
属性ベース暗号化（Attribute-Based Encryption、ABE）は、属性に基づいて暗号化が実行されるデータ処理方式である。ABEシステムは、大量のデータユーザにサービスすることができる。大量のデータユーザは、簡潔にするために、以下では略して「ユーザ」と呼ばれる。一部のユーザは、秘密鍵の暴露または会社からのユーザの退職などの理由で失効する必要がある。間接失効は、鍵生成センタ（Key Generation Center、KGC）が定期的に鍵更新作業を実行する、頻繁に使用されるABE失効方法であり、その結果、失効したユーザは、次の期間用の秘密鍵を取得することができず、したがって、データを復号することができない。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
本発明のこの実施形態におけるデータ処理方法によれば、端末デバイスが失効しているかどうかを示すために使用される鍵更新情報はKGCによって生成され、変換鍵またはエラープロンプトは鍵更新情報および第2の公開鍵に従って生成され、その結果、失効していない端末デバイスが暗号化データを取得することができ、失効している端末デバイスが暗号化データを取得することができないことを保証することができる。これにより、システムのセキュリティ性能が向上する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
図1に示されたシステムアーキテクチャでは、変換鍵は、端末デバイス110のユーザ公開鍵に基づいて生成された鍵である。したがって、サーバ130が、変換鍵を使用することにより、属性に基づいて暗号化された暗号文に対して変換処理を実行した後、生成された部分的に復号された暗号文は、ユーザ公開鍵に基づいて暗号化された暗号文であり、部分的に復号された暗号文は、端末デバイス110に記憶されたユーザ秘密鍵を使用することによってのみ復号することができる。このようにして、部分的に復号された暗号文が別のデバイスによって取得された場合でも、別のデバイスは依然として暗号文を復号することができないので、データセキュリティは保証される。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００６６
【補正方法】変更
【補正の内容】
【００６６】
各LSSSは線形復元によって特徴付けられる。IIがアクセス構造Aに対応する線形秘密分担方式を表すと仮定する。認可集合Aに対して、インデックス集合は、I＝｛i｜ρ（i）∈A｝⊂｛1，…，l｝と定義される。この場合、ベクトル（1，0，…，0）は、インデックス集合Iによってインデックス付けされた行列Mの行が拡張され、定数集合｛wi∈Zp｝i∈Iが、IIに従って生成された秘密μの任意の有効な秘密分担｛vi｝に対して、秘密μが
【数１４】
2019531673.tif 000069
に従って復元され得ることを真とした後に形成される空間内にある。加えて、これらの定数集合｛w1｝は、分担生成行列Mのサイズに相当する多項式時間内に計算することができる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１０１
【補正方法】変更
【補正の内容】
【０１０１】
端末デバイスが現在非失効状態にある場合、KGCは、端末デバイスが失効していないことを示す失効リストに従って鍵更新情報を生成することができ、鍵更新情報は端末デバイスが失効していないことを示すために使用され、KGCは、第2の公開鍵および鍵更新情報に従って変換鍵を生成し、変換鍵は依然として端末デバイスの属性に基づく鍵であり、その中に第1の公開鍵がネストされる。KGCはサーバに変換鍵を送信し、サーバは、変換鍵を使用することにより、端末デバイスの属性に基づいて暗号化されたデータを第1の公開鍵に基づいて暗号化されたデータに変換することができ、その結果、端末デバイスは、端末デバイスによって生成された第1の秘密鍵に従って、変換鍵を使用した変換の結果を復号する。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０１０５
【補正方法】変更
【補正の内容】
【０１０５】
本発明のこの実施形態におけるデータ処理方法によれば、端末デバイスが失効しているかどうかを示すために使用される鍵更新情報がKGCによって生成され、変換鍵が鍵更新情報および第2の公開鍵に従って生成され、その結果、失効していない端末デバイスが暗号化データを取得することができ、失効している端末デバイスが暗号化データを取得することができないことを保証することができる。これにより、システムのセキュリティ性能が向上する。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０１１７
【補正方法】変更
【補正の内容】
【０１１７】
さらに、KGCは、以下の方法で変換鍵を生成することができる：システムパラメータpar、ユーザ識別情報id（すなわち、識別パラメータ）、第2の公開鍵pkidA、および第1の鍵更新情報tkutを入力するステップ、ならびに変換鍵tkid，t＝（pkidA，tkut）を出力するステップ。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】０１２０
【補正方法】変更
【補正の内容】
【０１２０】
上記では、図4を参照して、KGCの観点から本発明の実施形態によるデータ処理方法を詳述した。以下では、図5を参照して、サーバの観点から本発明の一実施形態によるデータ処理方法を詳述する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】０１５８
【補正方法】変更
【補正の内容】
【０１５８】
Decrypt．このアルゴリズムは、システム公開パラメータpar、識別情報id、対応するユーザ秘密鍵skid、および変換された暗号文CT'＝（C0'，C0）を入力として受け取る。C0'またはC0が群G1に属していない場合、出力動作は失敗する。そうでない場合、以下の式を使用して平文メッセージが計算され出力される：
【数３６】
2019531673.tif 000070
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】０１６５
【補正方法】変更
【補正の内容】
【０１６５】
Path（ID）：失効管理はツリーUを使用して実行され、リーフノードは識別情報IDを使用してマークされる。リーフノードグループVに対して、関数U（V）はUのノードの決定論的かつ選択的な集合を返し、その結果、リーフノードvのいくつかの祖先は、vがVに属するときのみU（V）に含まれる。そのような関数が存在し、多項式時間（VのサイズおよびIDのサイズ）内で計算され得る。Uのルートから（ルートおよびリーフを含む）リーフのvIDまでのノードの集合を示す文字列IDは、Path（ID）として定義される。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】０２１０
【補正方法】変更
【補正の内容】
【０２１０】
統合ユニットが使用されるとき、図8Aは、前述の実施形態における端末デバイスの可能な概略構造図を示す。端末デバイス800は、処理ユニット802および通信ユニット803を含む。処理ユニット802は、端末デバイス800の動作を制御および管理するように構成される。たとえば、処理ユニット802は、図1のステップ2およびステップ9を実行する際に端末デバイス800をサポートするように構成される。処理ユニット802は、図3のS310およびS340を実行する際に端末デバイス800をサポートするようにさらに構成され、かつ／または本明細書に記載された技術の他のプロセスに使用されてもよい。通信ユニット803は、端末デバイス800と別のネットワークエンティティとの間の通信、たとえば、端末デバイス800と図1に示されたKGC120またはサーバ130との間の通信をサポートするように構成される。端末デバイス800は、端末デバイス800のプログラムコードおよびデータを記憶するように構成された記憶ユニット801をさらに含んでもよい。
【手続補正１２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データ処理システムであって、
端末デバイス、鍵生成センタ（KGC）、およびサーバを備え、
前記端末デバイスが、第1の公開鍵および第1の秘密鍵を生成し、前記KGCに前記第1の公開鍵を送信するように構成され、
前記KGCが、前記端末デバイスから前記第1の公開鍵を受信し、システムパラメータ、マスタ鍵、前記KGCの内部状態情報、前記第1の公開鍵、および前記端末デバイスの属性情報に従って、第2の公開鍵を生成し、前記サーバに前記第2の公開鍵を送信するように構成され、前記システムパラメータが前記KGCに関連する公開情報であり、前記マスタ鍵が前記KGCの秘密鍵であり、
前記サーバが、前記KGCによって送信された前記第2の公開鍵を受信し、第1のデータを取得し、前記第2の公開鍵に従って前記第1のデータを第2のデータに変換し、前記端末デバイスに前記第2のデータを送信するようにさらに構成され、前記第1のデータが、前記端末デバイスの属性構造に基づいて暗号化されたデータであり、
前記端末デバイスが、前記サーバによって送信された前記第2のデータを受信し、前記第1の秘密鍵に従って前記第2のデータを復号するようにさらに構成される、システム。
【請求項２】
前記端末デバイスが、具体的に、前記システムパラメータおよび識別パラメータに従って前記第1の公開鍵および前記第1の秘密鍵を生成するように構成され、前記システムパラメータが前記KGCに関連する前記公開情報であり、前記識別パラメータが前記端末デバイスの識別情報である、請求項1に記載のシステム。
【請求項３】
前記KGCが、前記第2の公開鍵および鍵更新情報に従って変換鍵を生成するようにさらに構成され、前記鍵更新情報が、前記端末デバイスが失効しているかどうかを示すために使用され、
前記KGCが、前記端末デバイスが失効していることを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従ってエラープロンプトを生成し、前記サーバに前記エラープロンプトを送信するようにさらに構成され、または前記KGCが、前記端末デバイスが失効していないことを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵を生成し、前記サーバに前記変換鍵を送信するようにさらに構成され、
前記サーバが、具体的に、前記変換鍵に従って前記第1のデータを前記第2のデータに変換するように構成される、請求項1または2に記載のシステム。
【請求項４】
前記サーバが、前記KGCから鍵更新情報を受信するようにさらに構成され、前記鍵更新情報が、前記端末デバイスが失効しているかどうかを示すために使用され、
前記サーバが、前記端末デバイスが失効していることを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従ってエラープロンプトを生成するようにさらに構成され、または前記サーバが、前記端末デバイスが失効していないことを前記鍵更新情報が示すとき、前記第2の公開鍵および前記鍵更新情報に従って変換鍵を生成し、前記変換鍵に従って前記第1のデータを前記第2のデータに変換するようにさらに構成される、請求項1または2に記載のシステム。
【請求項５】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項1から4のいずれか一項に記載のシステム。
【請求項６】
データ処理方法であって、
端末デバイスにより、第1の公開鍵および第1の秘密鍵を生成するステップと、
前記端末デバイスにより、鍵生成センタ（KGC）に前記第1の公開鍵を送信するステップであって、その結果、サーバまたは前記KGCが前記第1の公開鍵に従って変換鍵を生成する、ステップと、
前記端末デバイスにより、前記サーバによって送信された第2のデータを受信するステップであって、前記第2のデータが、前記サーバが前記変換鍵に従って第1のデータを処理した後に生成されたデータであり、前記第1のデータが、前記端末デバイスの属性構造に基づいて暗号化され、前記サーバによって取得されたデータである、ステップと、
前記端末デバイスにより、前記第1の秘密鍵に従って前記第2のデータを復号するステップと
を含む方法。
【請求項７】
前記端末デバイスにより、KGCに前記第1の公開鍵を送信する前記ステップが、
前記端末デバイスにより、前記KGCに前記第1の公開鍵および認証情報を送信するステップであって、前記認証情報が、前記端末デバイスが前記第1の秘密鍵を記憶することを示すために使用される、ステップ
を含む、請求項6に記載の方法。
【請求項８】
端末デバイスにより、第1の公開鍵および第1の秘密鍵を生成する前記ステップが、
前記端末デバイスにより、システムパラメータに従って前記第1の公開鍵および前記第1の秘密鍵を生成するステップであって、前記システムパラメータが前記KGCに関連する公開情報である、ステップ
を含む、請求項6または7に記載の方法。
【請求項９】
前記端末デバイスにより、前記第1の秘密鍵に従って前記第2のデータを復号する前記ステップが、
前記端末デバイスにより、前記システムパラメータおよび前記第1の秘密鍵に従って前記第2のデータを復号するステップ
を含む、請求項8に記載の方法。
【請求項１０】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項6から9のいずれか一項に記載の方法。
【請求項１１】
データ処理方法であって、
鍵生成センタ（KGC）により、端末デバイスから第1の公開鍵を受信するステップと、
前記KGCにより、システムパラメータ、マスタ鍵、前記第1の公開鍵、前記端末デバイスの属性情報、および前記KGCの内部状態情報に従って、第2の公開鍵を生成するステップであって、前記システムパラメータが前記KGCに関連する公開情報であり、前記マスタ鍵が前記KGCの秘密鍵である、ステップと、
前記KGCにより、サーバに前記第2の公開鍵または変換鍵を送信するステップであって、前記変換鍵が前記第2の公開鍵および鍵更新情報に従って生成される、ステップと
を含む方法。
【請求項１２】
前記KGCにより、前記第2の公開鍵を生成する前記ステップの前に、前記方法が、
前記KGCにより、前記端末デバイスから認証情報を受信するステップであって、前記認証情報が、前記端末デバイスが第1の秘密鍵を記憶することを示すために使用される、ステップ
をさらに含む、請求項11に記載の方法。
【請求項１３】
前記変換鍵が前記第2の公開鍵および鍵更新情報に従って生成されることが、
前記KGCにより、前記第2の公開鍵、前記鍵更新情報、前記システムパラメータ、および識別パラメータに従って、前記変換鍵を生成することであって、前記鍵更新情報が、前記端末デバイスが失効していないことを示す、こと
を含む、請求項11に記載の方法。
【請求項１４】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項11から13のいずれか一項に記載の方法。
【請求項１５】
データ処理方法であって、
サーバにより、鍵生成センタ（KGC）から第2の公開鍵を受信するステップであって、前記第2の公開鍵が、第1の公開鍵、端末デバイスの属性情報、システムパラメータ、マスタ鍵、および前記KGCの内部状態情報に従って、前記KGCによって生成され、前記システムパラメータが前記KGCに関連する公開情報であり、前記マスタ鍵が前記KGCの秘密鍵であり、前記第1の公開鍵が前記端末デバイスの公開鍵である、ステップと、
前記サーバにより、第1のデータを取得するステップであって、前記第1のデータが、前記端末デバイスの属性構造に基づいて暗号化されたデータである、ステップと、
前記サーバにより、前記第2の公開鍵に従って前記第1のデータを第2のデータに変換するステップと、
前記サーバにより、前記端末デバイスに前記第2のデータに送信するステップであって、その結果、前記端末デバイスが第1の秘密鍵に従って前記第2のデータを復号する、ステップと
を含む方法。
【請求項１６】
サーバにより、第2の公開鍵を受信する前記ステップの後に、前記方法が、
前記サーバにより、前記KGCから鍵更新情報を受信するステップであって、前記鍵更新情報が、前記端末デバイスが失効しているかどうかを示すために使用される、ステップ
をさらに含み、
前記サーバにより、前記第2の公開鍵に従って前記第1のデータを第2のデータに変換する前記ステップが、
前記端末デバイスが失効していないことを前記鍵更新情報が示すとき、前記サーバにより、前記第2の公開鍵および前記鍵更新情報に従って変換鍵を生成するステップと、
前記サーバにより、前記変換鍵に従って前記第1のデータを前記第2のデータに変換するステップと
を含む、請求項15に記載の方法。
【請求項１７】
前記サーバにより、前記第2の公開鍵および前記鍵更新情報に従って前記変換鍵を生成する前記ステップが、
前記サーバにより、前記第2の公開鍵、前記鍵更新情報、前記システムパラメータ、および識別パラメータに従って、前記変換鍵を生成するステップであって、前記システムパラメータが前記KGCに関連する前記公開情報であり、前記識別パラメータが前記端末デバイスまたは前記端末デバイスのユーザの識別情報である、ステップ
を含む、請求項16に記載の方法。
【請求項１８】
前記サーバにより、前記変換鍵に従って前記第1のデータを前記第2のデータに変換する前記ステップが、
前記サーバにより、前記変換鍵、前記システムパラメータ、前記端末デバイスの前記属性情報、前記識別パラメータ、または時間パラメータのうちの1つまたは複数に従って、前記第1のデータを前記第2のデータに変換するステップであって、前記システムパラメータが前記KGCに関連する前記公開情報であり、前記識別パラメータが前記端末デバイスまたは前記端末デバイスの前記ユーザの前記識別情報であり、前記時間パラメータが、前記サーバが前記変換鍵を使用することを許可された時間を示すために使用される、ステップ
を含む、請求項17に記載の方法。
【請求項１９】
前記第1の公開鍵および前記第1の秘密鍵が、公開鍵暗号化アルゴリズムにおいて互いに整合する一対の公開鍵および秘密鍵である、請求項15から18のいずれか一項に記載の方法。
【請求項２０】
請求項6から19のいずれか一項に記載の方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項２１】
請求項6から19のいずれか一項に記載の方法をコンピュータに実行させるコンピュータプログラム。
【国際調査報告】
2019531673.tif 000071
2019531673.tif 000072
2019531673.tif 000073
2019531673.tif 000074
2019531673.tif 000075
2019531673.tif 000076