デジタル署名の生成方法及び装置

著者らは特許

H04L9/08 - キーの分配
H04L9/30 - 公開キー,すなわち暗号化アルゴリズムが計算上解読不可能であり,使用者の暗号キーが機密を要しないもの
H04L9/32 - システムの利用者の身元または権限の照合のための手段を含むもの

の所有者の特許 JP2016528555:

西安西▲電▼捷通▲無▼綫▲網▼絡通信股▲分▼有限公司China Iwncomm Co., Ltd.

 

本願はデジタル署名の生成方法及び装置を提供する。該方法は、装置が有効性判定条件を満たすデジタル署名パラメータrを生成し、秘密鍵d、乱数k、r及び楕円曲線パラメータnを用いて、以下の式


に従ってデジタル署名パラメータsを生成し、ここで、kの値範囲が[1,n−1]であり、生成されたsが0であるか否かを判断し、0の場合、0でないものとなるまで、有効性判定条件を満たすrを生成し直し、d、生成し直された値範囲が[1,n−1]のk、生成し直されたr及びnを用いて、sを生成し直し、r及び0でないsのデータ型をバイトストリングに変換し、デジタル署名(r,s)を取得する。本願の実施例に係る態様によれば、簡略化された計算式を用いてデジタル署名パラメータsを取得することで、大整数演算の回数を低減でき、SM2デジタル署名生成アルゴリズムに基づくデジタル署名生成の演算効率を向上できる。

 

 

本願は、2013年8月16日に中国特許庁に提出された、出願番号が201310363349.7であり、且つ発明名称が「デジタル署名の生成方法及び装置」である中国特許出願の優先権を主張し、その全内容を本願に援用する。
本発明は、情報技術分野に関し、特にデジタル署名の生成方法及び装置に関する。
SM2デジタル署名アルゴリズムはSM2暗号アルゴリズム(Public Key Ceyptographic Algorithm SM2 Based on Elliptic Curves)の1つの構成部分として、ユーザ身元の認証及び情報整合性チェックの機能領域に好適に適用している。SM2デジタル署名アルゴリズムの応用プロセスでは、アルゴリズムの演算効率はアルゴリズムの応用者に常に注目されている重点である。SM2デジタル署名アルゴリズムは、SM2デジタル署名生成アルゴリズム(SM2 digital siganture generation algorithm)及びSM2デジタル署名検証アルゴリズム(SM2 digital siganture verification algorithm)により構成されている。
署名されるメッセージがMであると仮定すると、メッセージMのデジタル署名(r,s)を取得するため、ユーザAがデジタル署名を利用する必要がある場合、以下のSM2デジタル署名生成アルゴリズムにより実現してもよい。
A1:
-M=ZA||M
と設定する。
ここで、
||
はカスケード演算(cascading operation)を表し、Zは暗号ハッシュ関数(cryptographic hash function)により算出された、デジタル署名を生成するユーザAのハッシュ値である。
A2:
e=Hv(-M)
を計算し、eのデータ型をビットストリングから整数に変換する。
ここで、H()は、メッセージダイジェスト長さがvビットの暗号ハッシュ関数、例えばSM3暗号ハッシュアルゴリズムである。
A3:乱数発生器を用いて乱数
k∈[1, n-1]
を生成する。
ここで、nは楕円曲線パラメータである。
A4:楕円曲線点(x,y)=[k]Gを計算し、結果xはフィールド要素であり、xのデータ型を整数に変換する。
ここで、Gは楕円曲線の基点であり、[k]GはkとGのスカラー乗法(ドット積)を表す。
楕円曲線方程式を用い、その類型は素数フィールド方程式y=x+ax+b又は二元フィールド拡張方程式y+xy=x+ax+bを選択してもよい。
A5:

式1
を計算し、即ち(e+x)を用いてnに対してモジュロ演算を行う。
r=0又はr+k=nの場合、A3に戻る。
A6:
式2
を計算する。
S=0の場合、A3に戻る。
ここで、dは上記ユーザAの秘密鍵である。
A7:r、sのデータ型を整数からバイトストリングに変換し、メッセージMのデジタル署名は(r,s)である。 ユーザAはシステム又は装置であってもよく、上記SM2デジタル署名生成アルゴリズムはユーザA内部に設けられたサブシステム、ハードウェアモジュール、ユーザA内で実行可能なソフトウェアモジュール等により実行されてもよいし、ユーザAと通信接続され、ユーザAにより呼び出されたシステム又は装置により実行されてもよい。
ユーザAは長さがentlenビットの識別可能な識別子IDを有し、ENTLは整数entlenから変換された2つのバイトである。上記SM2デジタル署名生成アルゴリズムでは、Gの座標X、YとPの座標X、Yのデータ型をビットストリングに変換し、
Zv= H256(ENTLA||IDA||a||b||xG||yG||xA||yA)
となる。ここで、PはユーザAの公開鍵であり、H256()はメッセージダイジェスト長さが256ビットの暗号ハッシュ関数、例えばSM3暗号ハッシュアルゴリズムである。
また、具体に手順を実現するプロセスでは、通常、当業者は、手順を実現するように、式2を例えば以下の式3及び式3に変形し、式2における(1+d−1の負整数指数冪乗演算を(1+d−1 mod nのモジュロ逆演算に変換する。

式3
式4 SM2デジタル署名生成アルゴリズムはECCアルゴリズムの理論に基づいて実現され、実現されるプロセスでは、大整数(big integer)乗法、大整数モジュラー乗算演算などの大整数演算はアルゴリズムの演算効率に影響を与える最も重要な要素であり、従来のSM2デジタル署名生成アルゴリズムは一定の演算効率の要求を満たすことができるが、従来技術には、演算効率をさらに向上する解決案がまだない。
本願は、SM2デジタル署名生成アルゴリズムに基づくデジタル署名生成の演算効率をさらに向上するデジタル署名の生成方法及び装置を提供することを目的とする。
本願の目的は以下の態様により実現される。
デジタル署名の生成方法であって、装置が、有効性判定条件を満たすデジタル署名パラメータrを生成することと、前記装置が、秘密鍵d、値範囲が[1,n−1]の乱数k、前記デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式


に基づいてデジタル署名パラメータsを生成することと、前記装置が、生成されたデジタル署名パラメータsが0であるか否かを判断し、0の場合、前記デジタル署名パラメータsが0でないものとなるまで、有効性判定条件を満たすデジタル署名パラメータrを生成し直し、前記秘密鍵d、生成し直された値範囲が[1,n−1]の乱数k、前記生成し直されたデジタル署名パラメータr及び前記楕円曲線パラメータnを用いて、デジタル署名パラメータsを生成し直すことと、前記装置が、最終的に取得されたデジタル署名パラメータr及び0でないデジタル署名パラメータsのデータ型をバイトストリングに変換し、デジタル署名(r,s)を取得することと、を含むことを特徴とする方法を提供する。 本願の実施例に係る方法によれば、デジタル署名パラメータsを取得する場合に大整数演算の回数を低減でき、SM2デジタル署名生成アルゴリズムに基づくデジタル署名生成の演算効率を向上できる。
好ましくは、前記装置が

に基づいてデジタル署名パラメータsを生成することは、前記装置が、デジタル署名パラメータrと乱数kに対して大整数加法演算を行って、大整数加法演算の結果を用いて楕円曲線パラメータnに対してモジュロ演算を行うことと、前記装置が、秘密鍵dに1を加算し、楕円曲線パラメータnに対してモジュロ逆演算を行うことと、前記装置が、モジュロ演算の演算結果とモジュロ逆演算の演算結果に対して大整数乗法演算を行うことと、前記装置が、該大整数乗法演算の結果からデジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得することと、を含む。 上記処理プロセスによりデジタル署名パラメータsを生成することで、1回の大整数乗法又は1回の大整数モジュラー乗算演算を低減できる。
上記の任意の実施例では、好ましくは、デジタル署名パラメータsを生成する前に、該方法は、前記装置が、秘密鍵d、rの有効性判定条件の演算結果r+k、前記デジタル署名パラメータr及び楕円曲線パラメータnを用いてデジタル署名パラメータsを生成するように、rの有効性判定条件の演算結果r+kを取得すること、をさらに含んでもよい。
デジタル署名パラメータsを生成する場合、rの有効性判定条件の演算結果(r+k)を直接に用いることができ、演算効率をさらに向上できる。
上記の任意の実施例では、好ましくは、デジタル署名パラメータsを生成する前に、該方法は、前記装置が、秘密鍵d、rの有効性判定条件の演算結果(r+k) mod n、前記デジタル署名パラメータr及び楕円曲線パラメータnを用いてデジタル署名パラメータsを生成するように、rの有効性判定条件の演算結果(r+k) mod nを取得すること、をさらに含んでもよい。
(r・d) mod nの演算を回避することで、1回の大整数モジュラー乗算演算を低減できる。
デジタル署名の生成装置であって、ハッシュ値Z及び署名されるメッセージMを取得するパラメータ入力インターフェース手段と、前記パラメータ入力インターフェース手段により取得されたハッシュ値Z及び署名されるメッセージMに対してカスケード演算を行い、
-M
を生成するカスケード演算手段と、前記カスケード演算手段により生成された
-M
に対して暗号ハッシュ演算を行い、メッセージダイジェスト情報eを生成する暗号ハッシュアルゴリズム演算手段と、値範囲が[1,n−1]の乱数kを生成する乱数発生器と、前記乱数発生器により生成された乱数kに基づいて楕円曲線アルゴリズムスカラー乗法演算(x,y)=kGを行い、楕円曲線点の横座標xを取得するECCアルゴリズム演算手段であって、Gが楕円曲線パラメータである、ECCアルゴリズム演算手段と、前記暗号ハッシュアルゴリズム演算手段により生成されたメッセージダイジェスト情報eのデータ型を整数型に変換し、前記ECCアルゴリズム演算手段により生成された楕円曲線点の横座標xのデータ型を整数型に変換するデータ型変換手段と、前記データ型変換手段によりデータ型が変換されたメッセージダイジェスト情報e及び楕円曲線点の横座標xを用いて、デジタル署名パラメータrを生成する大整数演算手段と、前記大整数演算手段により生成されたデジタル署名パラメータrに対して有効性判定を行う有効性判定手段と、デジタル署名(r,s)を出力するパラメータ出力インターフェース手段と、を含み、前記デジタル署名パラメータrが有効性判定条件を満たしていない場合、前記乱数発生器は値範囲が[1,n−1]の乱数kを生成し直し、前記ECCアルゴリズム演算手段は前記乱数発生器により生成し直された乱数kに基づいて楕円曲線点の横座標xを取得し直し、前記データ型変換手段は取得し直された楕円曲線点の横座標xに対してデータ型の変換を行い、前記大整数演算手段は前記メッセージダイジェスト情報e及び生成し直された楕円曲線点の横座標xに基づいてデジタル署名パラメータrを生成し直し、前記有効性判定手段は生成し直されたデジタル署名パラメータr及び生成し直された乱数kを用いて、生成し直されたデジタル署名パラメータrに対して有効性判定を行い、前記大整数演算手段は、秘密鍵d、前記乱数発生器により生成された前記乱数k、前記デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式

に基づいてデジタル署名パラメータsを生成し、前記有効性判断手段は、前記大整数演算手段により生成されたデジタル署名パラメータsが0であるか否かを判断し、0の場合、前記乱数生成器は値範囲が[1,n−1]の乱数kを生成し直し、前記大整数演算手段は、デジタル署名パラメータrを生成し直し、前記生成し直されたデジタル署名パラメータrが有効性判定条件を満たしているとき、前記秘密鍵d、生成し直された値範囲が[1,n−1]の乱数k、前記生成し直されたデジタル署名パラメータr及び前記楕円曲線パラメータnを用いて、デジタル署名パラメータsを生成し直し、前記データ型変換手段は、前記大整数演算手段により最終的に生成されたデジタル署名パラメータr及び0でないデジタル署名パラメータsのデータ型をバイトストリングに変換し、前記デジタル署名(r,s)を取得する。 本願の実施例に係る装置によれば、デジタル署名パラメータsを取得する場合、大整数演算の回数を低減でき、SM2デジタル署名生成アルゴリズムに基づくデジタル署名生成の演算効率を向上できる。
好ましくは、デジタル署名パラメータsを生成する場合、前記大整数演算手段は、前記デジタル署名パラメータrと前記乱数発生器により生成された乱数kに対して大整数加法演算して、大整数加法演算の結果を用いて楕円曲線パラメータnに対してモジュロ演算を行い、秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、前記モジュロ演算の結果と前記モジュロ逆演算の結果に対して大整数乗法演算を行い、前記大整数乗法演算の結果から前記デジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得する。
上記処理プロセスによりデジタル署名パラメータsを生成することで、1回の大整数乗法又は1回の大整数モジュラー乗算演算を低減できる。
上記の任意の装置の実施例では、好ましくは、前記有効性判定手段がデジタル署名パラメータrの有効性判定条件の演算結果r+kを用いてデジタル署名パラメータrの有効性を判定する場合、前記大整数演算手段は、前記デジタル署名パラメータrを生成した後に、生成されたデジタル署名パラメータr及び前記乱数生成器により生成された前記乱数kを用いて、デジタル署名パラメータrの有効性判定条件の演算結果r+kを生成し、デジタル署名パラメータsを生成する場合、前記大整数演算手段は、前記rの有効性判定条件の演算結果r+kを用いて楕円曲線パラメータnに対してモジュロ演算を行い、秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、前記モジュロ演算の結果と前記モジュロ逆演算の結果に対して大整数乗法演算を行い、前記大整数乗法演算の結果から前記デジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得する。
デジタル署名パラメータsを生成する場合、rの有効性判定条件の演算結果(r+k)を直接に用いることができ、演算効率をさらに向上できる。
上記の任意の装置の実施例では、好ましくは、前記有効性判定手段がデジタル署名パラメータrの有効性判定条件の演算結果(r+k) mod nを用いてデジタル署名パラメータrの有効性を判定する場合、前記大整数演算手段は、前記デジタル署名パラメータrを生成した後に、生成されたデジタル署名パラメータr、前記乱数生成器により生成された前記乱数k及び楕円曲線パラメータnを用いて、デジタル署名パラメータrの有効性判定条件の演算結果(r+k) mod nを生成し、デジタル署名パラメータsを生成する場合、前記大整数演算手段は、秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、前記rの有効性判定条件の演算結果(r+k) mod nと前記モジュロ逆演算の結果に対して大整数乗法演算を行い、前記大整数乗法演算の結果から前記デジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得する。
(r・d) mod nの演算を回避することで、1回の大整数モジュラー乗算演算を低減できる。
上記の任意の実施例では、大整数演算手段に用いられる秘密鍵は、該装置により生成されてもよいし、外部から取得されてもよい。以下は例を参照しながら説明する。
(方式1)
前記装置は、前記秘密鍵dを生成する秘密鍵生成手段と、前記秘密鍵生成手段により生成された前記秘密鍵dを保存する秘密鍵記憶手段と、をさらに含み、前記大整数演算手段は、前記秘密鍵記憶手段から前記秘密鍵dを取得してデジタル署名パラメータsを生成する。
(方式2)
前記パラメータ入力インターフェース手段は前記秘密鍵dを取得し、前記大整数演算手段は前記パラメータ入力インターフェース手段から前記秘密鍵dを取得してデジタル署名パラメータsを生成する。
(方式3)
前記装置は秘密鍵記憶手段をさらに含み、前記パラメータ入力インターフェース手段は前記秘密鍵dを取得し、前記秘密鍵記憶手段は前記パラメータ入力インターフェース手段により取得された前記秘密鍵dを保存し、前記大整数演算手段は前記秘密鍵記憶手段から前記秘密鍵dを取得してデジタル署名パラメータsを生成する。
本発明の実施例に係る第1種の方法のフローチャートである。 本発明の実施例に係る第2種の方法のフローチャートである。 本発明の実施例に係る第3種の方法のフローチャートである。 本発明の実施例に係る装置を示す図である。
本願の実施例に係るデジタル署名を生成する方法、装置では、装置が、有効性判定条件を満たすデジタル署名パラメータrを生成し、秘密鍵d、値範囲が[1,n−1]の乱数k、デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式

に基づいてデジタル署名パラメータsを生成し、生成されたデジタル署名パラメータsが0であるか否かを判断し、0の場合、デジタル署名パラメータsが0でないものとなるまで、有効性判定条件を満たすデジタル署名パラメータrを生成し直し、秘密鍵d、生成し直された値範囲が[1,n−1]の乱数k、生成し直されたデジタル署名パラメータr及び楕円曲線パラメータnを用いて、デジタル署名パラメータsを生成し直し、最終的に取得されたデジタル署名パラメータr及び0でないデジタル署名パラメータsのデータ型をバイトストリングに変換し、デジタル署名(r,s)を取得する。デジタル署名パラメータsを取得する場合、大整数演算の回数を低減でき、SM2デジタル署名生成アルゴリズムに基づくデジタル署名生成の演算効率を向上できる。 以下は図面を参照しながら、本願の実施例に係る態様を詳細に説明する。
図1に示すように、本願の実施例に係るデジタル署名の生成方法は具体的に以下の処理を含む。
ステップ100: 装置は有効性判定条件を満たすデジタル署名パラメータrを生成する。
ここで、有効性判定条件を満たすことは、得られたデジタル署名パラメータrが0ではなく、且つr+kがnではないことを指す。nは楕円曲線パラメータであり、kは値範囲が[1,n−1]の乱数である。
SM2デジタル署名生成アルゴリズムにおけるrの計算方法を用いて有効性判定条件を満たすデジタル署名パラメータを生成してもよいが、これに限定されない。
ステップ110:該装置は、秘密鍵d、乱数k、デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式

式5
に基づいてデジタル署名パラメータsを生成する。 ここで、式5は上記の式2の簡略化された形式である。式5に基づいてデジタル署名パラメータsを生成し、r・d演算を行う必要がなく、1回の大整数演算を低減できる。式の簡略化の原理は以下の通りである。

ここで、秘密鍵dは、デジタル署名の使用者(例えばユーザA)の秘密鍵である。該デジタル署名の使用者は、システム又は装置であってもよく、具体的には、デジタル署名の使用者は、ユーザ装置(UE)であってもよいし、身元認証に関与するネットワークノード、例えば基地局、モビリティ管理エンティティ(MME)などであってもよい。
ステップ120:該装置は、生成されたデジタル署名パラメータsが0であるか否かを判断し、0でない場合、ステップ130を実行し、0の場合、生成されたデジタル署名パラメータsが0でないものとなるまで、有効性判定条件を満たすデジタル署名パラメータrを生成し直し、秘密鍵d、生成し直された値範囲が[1,n−1]の乱数k、生成し直されたデジタル署名パラメータr及び楕円曲線パラメータnを用いて、デジタル署名パラメータsを生成し直す。
ステップ130:該装置は、最終的に取得されたデジタル署名パラメータr及び0でないデジタル署名パラメータsのデータ型をバイトストリングに変換し、デジタル署名(r,s)を取得する。
上記操作を実行してデジタル署名を生成するデジタル署名生成者(即ち上記装置)は、デジタル署名使用者内部に設けられたサブシステム、ハードウェアモジュール、デジタル署名使用者内で実行可能なソフトウェアモジュール等であってもよいし、デジタル署名使用者と通信接続した、デジタル署名使用者により呼び出されたシステム又は装置であってもよい。
デジタル署名使用者の秘密鍵については、デジタル署名生成者がデジタル署名使用者の内部に設けられたサブシステム、ハードウェアモジュール、デジタル署名使用者内で実行可能なソフトウェアモジュール等である場合、デジタル署名生成者は該秘密鍵を生成、保存してもよい。デジタル署名使用者の秘密鍵について、デジタル署名生成者は、デジタル署名使用者側から取得して保存してもよいし、デジタル署名使用者側から取得して応用し、保存しなくてもよい。
実際の応用プロセスでは、式5に基づいて、具体的には、1回の大整数乗法演算又は大整数モジュラー乗算演算を低減するように、異なる実施方法によりデジタル署名パラメータsを取得してもよい。
好ましい態様の1つでは、該装置は、秘密鍵d、乱数k、デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式

式6
に従ってデジタル署名パラメータsを生成する。 式6は

の変形である。 言い換えれば、該装置はデジタル署名パラメータrと乱数kに対して大整数加法演算を行った後に、大整数加法演算の結果を用いて楕円曲線パラメータnに対してモジュロ演算を行い、秘密鍵dに1を加算し、楕円曲線パラメータnに対してモジュロ逆演算を行い、モジュロ演算の演算結果とモジュロ逆演算の演算結果に対して大整数乗法演算を行い、該大整数乗法演算の結果からデジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得する。
式の簡略化の原理は以下の通りである。

該好ましい態様では、デジタル署名パラメータsを計算する際に、式6を用いて実現する。
なお、デジタル署名パラメータsの生成の具体的な方法は該好ましい実施例に限定されない。本願の実施例が簡略化された式5を提出し、式5に基づく具体的な実現方法は当業者にとって容易想到できるものであり、本願の保護範囲内のものに該当する。
上記のいずれかの実施例では、デジタル署名生成の演算効率をさらに向上するため、デジタル署名パラメータsを生成する前に、rの有効性判定条件の演算結果r+kをさらに取得してもよい。該装置は、秘密鍵d、rの有効性判定条件の演算結果r+k、秘密鍵d、デジタル署名パラメータr及び楕円曲線パラメータnを用いて、デジタル署名パラメータsを直接に生成してもよい。
上記の何れかの実施例では、デジタル署名生成の演算効率を向上するため、デジタル署名パラメータsを生成する前に、rの有効性判定条件の演算結果(r+k) mod nをさらに取得してもよい。該装置は、rの有効性判定条件の演算結果(r+k) mod n、秘密鍵d、デジタル署名パラメータr及び楕円曲線パラメータnを用いて、デジタル署名パラメータsを直接に生成してもよい。該好ましい態様では、有効性判定条件の演算結果(r+k) mod nに基づいてrの有効性を判断することは、有効性判定条件の演算結果r+kに基づいてrの有効性を判断することと等価的なものである。その等価原理として、SM2デジタル署名生成アルゴリズムでは、デジタル署名パラメータr及び乱数kの値範囲が共に[1,n−1]にあり、r+kの値範囲が[2,2n−2]にあるため、(r+k) mod n=0はr+k=nと等価的なものである。それに応じて、判定性条件を満たすデジタル署名パラメータrを生成するプロセスでは、r+k=nとなるか否かを判断することの代わりに、(r+k) mod n=0となるか否かを判断してもよい。
署名されるメッセージがMであると仮定すると、以下は、式6を一例として、図2を参照しながら、Mのデジタル署名(r,s)の取得の実現方法を詳細に説明する。該実現方法は具体的に以下の操作を含む。
ステップ200:デジタル署名使用者のハッシュ値及びメッセージMに対してカスケード演算を行い、即ち
-M=ZA||M
と設定する。
ステップ210:メッセージダイジェスト情報eを取得し、即ち
e=Hv(-M)
を計算し、eのデータ型をビットストリングから整数に変換する。
ステップ220:乱数発生器を用いて乱数
k∈[1, n-1]
を生成する。
ステップ230:楕円曲線点(x,y)=[k]Gを計算し、結果xはフィールド要素であり、xのデータ型を整数に変換する。
ステップ240:デジタル署名パラメータrを生成し、即ち

式1
を計算する。 ステップ250:rに対して有効性判定を行う。t=r+kと仮定し、r及びtの値を判断し、r=0又はt=nの場合、rが有効性判定条件を満たさなく、ステップ220に戻り、r≠0且つt≠nの場合、rが有効性判定条件を満たし、ステップ260を実行する。
ステップ260:デジタル署名使用者の秘密鍵d、rの有効性判定条件の演算結果r+k、デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式

式7
に従ってデジタル署名パラメータsを生成する。 なお、式7は上記の式6である。その相違点として、式7は、デジタル署名sを生成する時に、r+kを繰り返し計算する必要がなく、rの有効性判定条件の演算結果r+kを用いることを意味する。
ステップ270:sの値が0であるか否かを判断し、s=0の場合、ステップ220に戻り、そうでない場合、ステップ280を実行する。
ステップ280:取得されたデジタル署名パラメータr、sのデータ型を整数からバイトストリングに変換し、得られたメッセージMのデジタル署名が(r,s)である。
図2に示される実施例では、式7を用いてデジタル署名パラメータsを生成し、1回の大整数乗法又は1回の大整数モジュラー乗算演算を低減でき、式7を用いてデジタル署名パラメータsを生成する時に、rの有効性判定条件の演算結果(r+k)を直接に用いることができ、演算効率をさらに向上できる。
署名されるメッセージがMであると仮定すると、以下は、式6を一例とし、図3を参照しながらMのデジタル署名(r,s)の取得の実施形態を詳細に説明する。該実施形態は具体的に以下の操作を含む。
ステップ300:デジタル署名使用者のハッシュ値及びメッセージMに対してカスケード演算を行い、即ち
-M=ZA||M
と設定する。
ステップ310:メッセージダイジェスト情報eを取得し、即ち
e=Hv(-M)
を計算し、eのデータ型をビットストリングから整数に変換する。
ステップ320:乱数発生器を用いて乱数
k∈[1, n-1]
を生成する。
ステップ330:楕円曲線点(x,y)=[k]Gを計算し、結果xはフィールド要素であり、xのデータ型を整数に変換する。
ステップ340:デジタル署名パラメータrを生成し、即ち

式1
を計算する。 ステップ350:rに対して有効性判定を行う。t=(r+k) mod nと仮定し、r及びtの値を判断し、r=0又はt=0の場合、rが有効性判定条件を満たさなく、ステップ320に戻り、r≠0且つt≠0の場合、rが有効性判定条件を満たし、ステップ360を実行する。
ステップ360:デジタル署名使用者の秘密鍵d、rの有効性判定条件の演算結果(r+k) mod n、デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式

式8
に従ってデジタル署名パラメータsを生成する。 なお、式8は上記の式6である。その相違点として、式7は、デジタル署名sを生成する時に、(r+k) mod nを繰り返し計算する必要がなく、rの有効性判定条件の演算結果(r+k) mod nを用いることを意味する。
ステップ370:sの値が0であるか否かを判断し、s=0の場合、ステップ320に戻り、そうでない場合、ステップ380を実行する。
ステップ380:取得されたデジタル署名パラメータr、sのデータ型を整数からバイトストリングに変換し、得られたメッセージMのデジタル署名が(r,s)である。
図3に示される実施例では、式8を用いてデジタル署名パラメータsを生成し、1回の大整数乗法又は1回の大整数モジュラー乗算演算を低減でき、式8を用いてデジタル署名パラメータsを生成する時に、rの有効性判定条件の演算結果(r+k) mod nを直接に用いることができ、演算効率をさらに向上できる。
また、本願の実施形態を用いてデジタル署名の生成方法を改善する場合、式3に比べて1回の大整数乗法演算を節約し、式4に比べて1回の大整数モジュラー乗算演算を節約することに相当する。
方法と同じ発明の思想に基づいて、本発明の実施例はデジタル署名の生成装置をさらに提供し、その構成は図4に示し、具体的にはパラメータ入力インターフェース部401、カスケード演算部402、暗号ハッシュアルゴリズム演算部403、乱数発生器404、ECCアルゴリズム演算部405、データ型変換部406、大整数演算部407、有効性判定部408及びパラメータ出力インターフェース部409を含む。
パラメータ入力インターフェース部401は、ハッシュ値Z及び署名されるメッセージMを取得する。
パラメータ入力インターフェース部401は、取得されたハッシュ値Z及び署名されるメッセージMをカスケード演算部402に出力する。
カスケード演算部402は、パラメータ入力インターフェース部401により取得されたハッシュ値Z及び署名されるメッセージMに対してカスケード演算を行い、
-M
を生成する。
カスケード演算部402は、生成された
-M
を暗号ハッシュアルゴリズム演算部403に出力する。
暗号ハッシュアルゴリズム演算部403は、カスケード演算部402により生成された
-M
に対して暗号ハッシュ演算を行い、メッセージダイジェスト情報eを生成する。
暗号ハッシュアルゴリズム演算部403は、生成されたメッセージダイジェスト情報eをデータ型変換部406に出力する。
乱数発生器404は、値範囲が[1,n−1]の乱数kを生成する。
乱数発生器404は、生成された乱数をECCアルゴリズム演算部405に送信する。
ECCアルゴリズム演算部405は、乱数発生器404により生成された乱数kに基づいて楕円曲線アルゴリズムスカラー乗法演算(x,y)=kGを行い、楕円曲線点の横座標xを取得し、Gが楕円曲線パラメータである。
ECCアルゴリズム演算部405は、取得された楕円曲線点の横座標xをデータ型変換部406に出力する。
データ型変換部406は、暗号ハッシュアルゴリズム演算部403により生成されたメッセージダイジェスト情報eのデータ型を整数型に変換し、ECCアルゴリズム演算部405により生成された楕円曲線点の横座標xのデータ型を整数型に変換する。
データ型変換部406は、データ型が変換されたメッセージダイジェスト情報e及び楕円曲線点の横座標xを大整数演算部407に出力する。
大整数演算部407は、データ型変換部406によりデータ型が変換されたメッセージダイジェスト情報e及び楕円曲線点の横座標xを用いて、デジタル署名パラメータrを生成する。
大整数演算部407は、デジタル署名パラメータrを有効性判定部408に出力する。
有効性判定部408は、大整数演算部407により生成されたデジタル署名パラメータrに対して有効性判定を行う。
デジタル署名パラメータrが有効性判定条件を満たしていない場合、乱数発生器404は値範囲が[1,n−1]の乱数kを生成し直し、ECCアルゴリズム演算部405は乱数発生器404により生成し直された乱数kに基づいて楕円曲線点の横座標xを取得し直し、データ型変換部406は取得し直された楕円曲線点の横座標xに対してデータ型の変換を行い、大整数演算部407はメッセージダイジェスト情報e及び生成し直された楕円曲線点の横座標xに基づいてデジタル署名パラメータrを生成し直し、有効性判定部408は生成し直されたデジタル署名パラメータr及び生成し直された乱数kを用いて、生成し直されたデジタル署名パラメータrに対して有効性判定を行う。
デジタル署名パラメータrが有効性判定条件を満たさない場合、有効性判定部408が乱数発生器404をトリガして乱数を生成し直してもよいし、他に設定された制御部が乱数発生器404をトリガして乱数を生成し直してもよい。
大整数演算部407は、秘密鍵d、乱数発生器404により生成された乱数k、デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式

に基づいてデジタル署名パラメータsを生成する。 有効性判断部408は、大整数演算部407により生成されたデジタル署名パラメータsが0であるか否かを判断する。
0の場合、乱数生成器404は値範囲が[1,n−1]の乱数kを生成し直し、大整数演算部407は、デジタル署名パラメータrを生成し直し、生成し直されたデジタル署名パラメータrが有効性判定条件を満たしているとき、秘密鍵d、生成し直された値範囲が[1,n−1]の乱数k、生成し直されたデジタル署名パラメータr及び楕円曲線パラメータnを用いて、デジタル署名パラメータsを生成し直す。
データ型変換部406は、大整数演算部407により最終的に生成されたデジタル署名パラメータr及び0でないデジタル署名パラメータsのデータ型をバイトストリングに変換し、デジタル署名(r,s)を取得する。
パラメータ出力インターフェース部409は、デジタル署名(r,s)を出力する。
好ましくは、デジタル署名パラメータsを生成する場合、大整数演算部407は、デジタル署名パラメータrと乱数発生器404により生成された乱数kに対して大整数加法演算して、大整数加法演算の結果を用いて楕円曲線パラメータnに対してモジュロ演算を行い、秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、モジュロ演算の結果とモジュロ逆演算の結果に対して大整数乗法演算を行い、大整数乗法演算の結果からデジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得する。
図4に示される実施例では、好ましくは、有効性判定部408がデジタル署名パラメータrの有効性判定条件の演算結果r+kを用いてデジタル署名パラメータrの有効性を判定する場合、大整数演算部407は、デジタル署名パラメータrを生成した後に、生成されたデジタル署名パラメータr及び乱数生成器404により生成された乱数kを用いて、デジタル署名パラメータrの有効性判定条件の演算結果r+kを生成する。
デジタル署名パラメータsを生成する場合、大整数演算部407は、rの有効性判定条件の演算結果r+kを用いて楕円曲線パラメータnに対してモジュロ演算を行い、秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、モジュロ演算の結果とモジュロ逆演算の結果に対して大整数乗法演算を行い、大整数乗法演算の結果からデジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得する。
図4に示される実施例では、好ましくは、有効性判定部408がデジタル署名パラメータrの有効性判定条件の演算結果(r+k) mod nを用いてデジタル署名パラメータrの有効性を判定する場合、大整数演算部407は、デジタル署名パラメータrを生成した後に、生成されたデジタル署名パラメータr、乱数生成器404により生成された乱数k及び楕円曲線パラメータnを用いて、デジタル署名パラメータrの有効性判定条件の演算結果(r+k) mod nを生成する。
デジタル署名パラメータsを生成する場合、大整数演算部407は、秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、rの有効性判定条件の演算結果(r+k) mod nとモジュロ逆演算の結果に対して大整数乗法演算を行い、大整数乗法演算の結果からデジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得する。
図4に示される任意の実施例では、大整数演算部407に用いられる秘密鍵dは本装置により生成されてもよいし、外部から取得されてもよい。以下は例を挙げて説明する。
(方式1)
本願の実施例に係る装置は秘密鍵生成部及び秘密鍵記憶部をさらに含む。秘密鍵生成部は、秘密鍵dを生成する。秘密鍵記憶部は、秘密鍵生成部により生成された秘密鍵dを保存する。
それに応じて、大整数演算部407は、秘密鍵記憶部から秘密鍵dを取得してデジタル署名パラメータsを生成する。
(方式2)
パラメータ入力インターフェース部401は秘密鍵dを取得する。それに応じて、大整数演算部407はパラメータ入力インターフェース部401から秘密鍵dを取得してデジタル署名パラメータsを生成する。
(方式3)
本願の実施例に係る装置は秘密鍵記憶部をさらに含む。パラメータ入力インターフェース部401は秘密鍵dを取得する。秘密鍵記憶部はパラメータ入力インターフェース部401により取得された秘密鍵dを保存する。それに応じて、大整数演算部407は秘密鍵記憶部から秘密鍵dを取得してデジタル署名パラメータsを生成する。
なお、本発明の実施例に提供されるものは方法、システム又はコンピュータプログラムプロダクトであってもよい。従って、本願は、完全なハードウェア実施例、完全なソフトウェア実施例、又はソフトウェアとハードウェアを組み合わせた実施例の形を採用してもよい。また、本願は、1つ又は複数のコンピュータに利用可能なプログラムコードを含むコンピュータに利用可能な記憶媒体(磁気ディスクメモリ、CD−ROM、光学的メモリ等を含むが、それらに限定されない)に実施されるコンピュータプログラムプロダクトの形を採用してもよい。
本願は、本願の実施例に係る方法、装置(システム)及びコンピュータプログラムプロダクトのフローチャート及び/又はブロック図を参照しながら説明される。なお、コンピュータプログラム指令により、フローチャート及び/又はブロック図の各フロー及び/又はブロック、並びにフローチャート及び/又はブロック図のフロー及び/又はブロックの組み合わせを実現してもよい。これらのコンピュータプログラム指令を汎用コンピュータ、専用コンピュータ、埋め込みプロセッサ又は他のプログラム可能なデータ処理装置の処理器に提供して機器を生成し、コンピュータ又は他のプログラム可能なデータ処理装置の処理器により実行される指令を介して、フローチャートの1つ若しくは複数のフロー、及び/又はブロック図の1つ若しくは複数のブロックにおける指定の機能を実現するための装置を生成する。
これらのコンピュータプログラム指令は、コンピュータ又は他のプログラム可能なデータ処理装置に特定の方式で作動させるコンピュータ読み取り可能な記憶装置に記憶されてもよく、該コンピュータ読み取り可能な記憶装置に記憶された指令に指令装置を含む製造品を生成させ、該指令装置はフローチャートの1つ若しくは複数のフロー及び/又はブロック図の1つ若しくは複数のブロックにおける指定の機能を実現する。
これらのコンピュータプログラム指令は、コンピュータ又は他のプログラム可能なデータ処理装置にセットアップされてもよく、コンピュータ又は他のプログラム可能な装置において一列の操作ステップを実行してコンピュータで実現される処理を生成し、コンピュータ又は他のプログラム可能な装置において実行される指令は、フローチャートの1つ若しくは複数のフロー及び/又はブロック図の1つ若しくは複数のブロックにおける指令の機能を実現するためのステップを提供する。
本願の好ましい実施例を説明しているが、当業者が一旦基本的な進歩性概念を知れば、これらの実施例に対して他の変更及び修正を行うことができる。このため、添付された特許請求の範囲が好ましい実施例並びに本願の範囲に入る全ての変更及び修正を含むと解釈される。
なお、当業者は本願の主旨及び範囲から離脱することなく本願に対して各種の変更及び変形を行ってもよい。これによって、本願のこれらの変更及び変形が本願の特許請求の範囲及びそれと同等な技術的な範囲に属すれば、本願はこれらの変更及び変形をさらに含む。



  1. デジタル署名の生成方法であって、
    装置が、有効性判定条件を満たすデジタル署名パラメータrを生成することと、
    前記装置が、秘密鍵d、値範囲が[1,n−1]の乱数k、前記デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式
    に基づいてデジタル署名パラメータsを生成することと、
    前記装置が、生成されたデジタル署名パラメータsが0であるか否かを判断し、0の場合、前記デジタル署名パラメータsが0でないものとなるまで、有効性判定条件を満たすデジタル署名パラメータrを生成し直し、前記秘密鍵d、生成し直された値範囲が[1,n−1]の乱数k、前記生成し直されたデジタル署名パラメータr及び前記楕円曲線パラメータnを用いて、デジタル署名パラメータsを生成し直すことと、
    前記装置が、最終的に取得されたデジタル署名パラメータr及び0でないデジタル署名パラメータsのデータ型をバイトストリングに変換し、デジタル署名(r,s)を取得することと、を含むことを特徴とする方法。

  2. 前記装置が
    に基づいてデジタル署名パラメータsを生成することは、
    前記装置が、デジタル署名パラメータrと乱数kに対して大整数加法演算を行って、大整数加法演算の結果を用いて楕円曲線パラメータnに対してモジュロ演算を行うことと、
    前記装置が、秘密鍵dに1を加算し、楕円曲線パラメータnに対してモジュロ逆演算を行うことと、
    前記装置が、モジュロ演算の演算結果とモジュロ逆演算の演算結果に対して大整数乗法演算を行うことと、
    前記装置が、該大整数乗法演算の結果からデジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得することと、を含むことを特徴とする請求項1に記載の方法。

  3. デジタル署名パラメータsを生成する前に、
    前記装置が、秘密鍵d、rの有効性判定条件の演算結果r+k、前記デジタル署名パラメータr及び楕円曲線パラメータnを用いてデジタル署名パラメータsを生成するように、rの有効性判定条件の演算結果r+kを取得すること、をさらに含むことを特徴とする請求項1又は2に記載の方法。

  4. デジタル署名パラメータsを生成する前に、
    前記装置が、秘密鍵d、rの有効性判定条件の演算結果(r+k) mod n、前記デジタル署名パラメータr及び楕円曲線パラメータnを用いてデジタル署名パラメータsを生成するように、rの有効性判定条件の演算結果(r+k) mod nを取得すること、をさらに含むことを特徴とする請求項1又は2に記載の方法。

  5. デジタル署名の生成装置であって、
    ハッシュ値Z及び署名されるメッセージMを取得するパラメータ入力インターフェース手段と、
    前記パラメータ入力インターフェース手段により取得されたハッシュ値Z及び署名されるメッセージMに対してカスケード演算を行い、
    -M
    を生成するカスケード演算手段と、
    前記カスケード演算手段により生成された
    -M
    に対して暗号ハッシュ演算を行い、メッセージダイジェスト情報eを生成する暗号ハッシュアルゴリズム演算手段と、
    値範囲が[1,n−1]の乱数kを生成する乱数発生器と、
    前記乱数発生器により生成された乱数kに基づいて楕円曲線アルゴリズムスカラー乗法演算(x,y)=kGを行い、楕円曲線点の横座標xを取得するECCアルゴリズム演算手段であって、Gが楕円曲線パラメータである、ECCアルゴリズム演算手段と、
    前記暗号ハッシュアルゴリズム演算手段により生成されたメッセージダイジェスト情報eのデータ型を整数型に変換し、前記ECCアルゴリズム演算手段により生成された楕円曲線点の横座標xのデータ型を整数型に変換するデータ型変換手段と、
    前記データ型変換手段によりデータ型が変換されたメッセージダイジェスト情報e及び楕円曲線点の横座標xを用いて、デジタル署名パラメータrを生成する大整数演算手段と、
    前記大整数演算手段により生成されたデジタル署名パラメータrに対して有効性判定を行う有効性判定手段と、
    デジタル署名(r,s)を出力するパラメータ出力インターフェース手段と、を含み、
    前記デジタル署名パラメータrが有効性判定条件を満たしていない場合、前記乱数発生器は値範囲が[1,n−1]の乱数kを生成し直し、前記ECCアルゴリズム演算手段は前記乱数発生器により生成し直された乱数kに基づいて楕円曲線点の横座標xを取得し直し、前記データ型変換手段は取得し直された楕円曲線点の横座標xに対してデータ型の変換を行い、前記大整数演算手段は前記メッセージダイジェスト情報e及び生成し直された楕円曲線点の横座標xに基づいてデジタル署名パラメータrを生成し直し、前記有効性判定手段は生成し直されたデジタル署名パラメータr及び生成し直された乱数kを用いて、生成し直されたデジタル署名パラメータrに対して有効性判定を行い、
    前記大整数演算手段は、秘密鍵d、前記乱数発生器により生成された前記乱数k、前記デジタル署名パラメータr及び楕円曲線パラメータnを用いて、以下の式
    に基づいてデジタル署名パラメータsを生成し、
    前記有効性判断手段は、前記大整数演算手段により生成されたデジタル署名パラメータsが0であるか否かを判断し、
    0の場合、前記乱数生成器は値範囲が[1,n−1]の乱数kを生成し直し、前記大整数演算手段は、デジタル署名パラメータrを生成し直し、前記生成し直されたデジタル署名パラメータrが有効性判定条件を満たしているとき、前記秘密鍵d、生成し直された値範囲が[1,n−1]の乱数k、前記生成し直されたデジタル署名パラメータr及び前記楕円曲線パラメータnを用いて、デジタル署名パラメータsを生成し直し、
    前記データ型変換手段は、前記大整数演算手段により最終的に生成されたデジタル署名パラメータr及び0でないデジタル署名パラメータsのデータ型をバイトストリングに変換し、前記デジタル署名(r,s)を取得することを特徴とする装置。

  6. デジタル署名パラメータsを生成する場合、前記大整数演算手段は、
    前記デジタル署名パラメータrと前記乱数発生器により生成された乱数kに対して大整数加法演算して、大整数加法演算の結果を用いて楕円曲線パラメータnに対してモジュロ演算を行い、
    秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、
    前記モジュロ演算の結果と前記モジュロ逆演算の結果に対して大整数乗法演算を行い、
    前記大整数乗法演算の結果から前記デジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得することを特徴とする請求項5に記載の装置。

  7. 前記有効性判定手段がデジタル署名パラメータrの有効性判定条件の演算結果r+kを用いてデジタル署名パラメータrの有効性を判定する場合、前記大整数演算手段は、前記デジタル署名パラメータrを生成した後に、生成されたデジタル署名パラメータr及び前記乱数生成器により生成された前記乱数kを用いて、デジタル署名パラメータrの有効性判定条件の演算結果r+kを生成し、
    デジタル署名パラメータsを生成する場合、前記大整数演算手段は、
    前記rの有効性判定条件の演算結果r+kを用いて楕円曲線パラメータnに対してモジュロ演算を行い、
    秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、
    前記モジュロ演算の結果と前記モジュロ逆演算の結果に対して大整数乗法演算を行い、
    前記大整数乗法演算の結果から前記デジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得することを特徴とする請求項5に記載の装置。

  8. 前記有効性判定手段がデジタル署名パラメータrの有効性判定条件の演算結果(r+k) mod nを用いてデジタル署名パラメータrの有効性を判定する場合、前記大整数演算手段は、前記デジタル署名パラメータrを生成した後に、生成されたデジタル署名パラメータr、前記乱数生成器により生成された前記乱数k及び楕円曲線パラメータnを用いて、デジタル署名パラメータrの有効性判定条件の演算結果(r+k) mod nを生成し、
    デジタル署名パラメータsを生成する場合、前記大整数演算手段は、
    秘密鍵dに1を加算して、楕円曲線パラメータnに対してモジュロ逆演算を行い、
    前記rの有効性判定条件の演算結果(r+k) mod nと前記モジュロ逆演算の結果に対して大整数乗法演算を行い、
    前記大整数乗法演算の結果から前記デジタル署名パラメータrを引いて、楕円曲線パラメータnに対してモジュロ演算を行い、デジタル署名パラメータsを取得することを特徴とする請求項5に記載の装置。

  9. 前記秘密鍵dを生成する秘密鍵生成手段と、
    前記秘密鍵生成手段により生成された前記秘密鍵dを保存する秘密鍵記憶手段と、をさらに含み、
    前記大整数演算手段は、前記秘密鍵記憶手段から前記秘密鍵dを取得してデジタル署名パラメータsを生成することを特徴とする請求項5〜8のいずれかに記載の装置。

  10. 前記パラメータ入力インターフェース手段は前記秘密鍵dを取得し、前記大整数演算手段は前記パラメータ入力インターフェース手段から前記秘密鍵dを取得してデジタル署名パラメータsを生成し、或いは
    前記装置は秘密鍵記憶手段をさらに含み、前記パラメータ入力インターフェース手段は前記秘密鍵dを取得し、前記秘密鍵記憶手段は前記パラメータ入力インターフェース手段により取得された前記秘密鍵dを保存し、前記大整数演算手段は前記秘密鍵記憶手段から前記秘密鍵dを取得してデジタル署名パラメータsを生成する、ことを特徴とする請求項5〜8のいずれかに記載の装置。

 

 

Patent trol of patentswamp
類似の特許
本明細書に記載の技法およびシステムは、実行するためのプロセスを認証するための、およびプロセスとユーザーのシステムリソースに対するパーミッション制限を指定して実施するための、モデルの様々な実装形態を提示する。いくつかの実装形態では、アプリケーション、プログラム、またはプロセスのバイナリファイルは、その後オペレーティングシステムがデジタル署名を認証できるように、鍵で暗号化されたデジタル署名を含むように拡張され得る。バイナリファイルが認証されると、オペレーティングシステムは、プロセスを作成して、プロセスのために許可されるパーミッションの種類を示すメタデータで、プロセスをタグ付けすることができる。メタデータは、リソースパーミッションを指定するための特定のアクセスレベルに対応し得る。
クライアントデバイス(506)と制約リソースデバイス(502、70、90)との間で第1の秘密鍵を確立するための方法および制約リソースデバイスが開示される。本発明はまた、クライアントデバイス(506)と制約リソースデバイスとの間で第1の秘密鍵を確立することを可能にする方法および認可サーバ(504、60、80)に関する。制約RDとASとの間で共有される第2の秘密鍵に基づき、制約リソースデバイスとクライアントデバイスとの間で共有される(508)第1の秘密鍵を確立することができる。リソース制約のあるデバイスは、セキュア識別情報を共有するために追加メッセージが必要となるようなプロトコルを利用することができない。本発明の実施形態の利点は、認証プロトコル内で秘密識別情報を確立できること、および秘密識別情報を確立するために追加メッセージが必要ないことである。
【選択図】図5
ユーザのための署名を生成するための方法とシステムが記載される。システムは、署名サーバと、ユーザのための初期処理デバイスと、ユーザのための有効性検証デバイスとを備える。初期処理デバイスは、第1のメッセージMを表示し、前記第1のメッセージMのための署名を生成するよう署名サーバに要求を送るよう構成される。署名サーバは、前記第1のメッセージMに基づいた第2のメッセージM’と、前記ユーザと前記署名サーバとの間で共有される第1の秘密とを用いて有効性検証チャレンジを生成し、前記有効性検証チャレンジを有効性検証デバイスに送るよう構成される。有効性検証デバイスは、前記第1の共有された秘密を用いて前記第2のメッセージM’を再生成し、前記第2のメッセージM’を表示し、表示された第2のメッセージM’が前記第1のメッセージMに対応することのユーザ確認を受け、署名を生成するために要求を確認する有効性検証コードを生成し、前記有効性検証コードを前記署名サーバに送るよう構成される。その後、署名サーバは、第1のメッセージMについてユーザのための署名を生成する。
コンピューティング・リソースの機器構成がユーザの代わりに仮想マシンを実行して暗号的に証明されるかあるいは確認することができるようにする手法。ユーザが、仮想マシンをプロビジョニングしてもらうことを要求するとき、仮想化されたコンピューティング環境のオペレータは仮想マシンの2段階立ち上げを開始することができる。第1段階では、オペレータは、ホスト・コンピューティング・デバイス上の仮想マシンをプロビジョニングし、ホスト・コンピューティング・デバイス上のソフトウェア及び/またはハードウェアのリソースの暗号測定を得る。その後、オペレータは、仮想マシンを要求したユーザにこれらの暗号測定を提供することができる。ユーザが暗号測定を承認すれば、オペレータは第2段階を始めて、実際に、ホスト上で仮想マシンを立ち上げることができる。ある場合には、オペレータは、暗号測定と承認された測定のリストとを比較してホスト・コンピューティング・デバイスが仮想マシンのホスティングに受け入れ可能かどうかを判断することができる。
【選択図】図6
第1のエンティティが完全なシークレットを所有していることを、第2のエンティティに完全なシークレットを送信することなく第2のエンティティに証明することによって、第2のエンティティに対して第1のエンティティ自体を認証するための第1のエンティティでの方法であって、方法は、第1のエンティティで、ユーザーからの入力、少なくとも1つの第1の因子及び少なくとも1つの第2の因子に分割された完全なシークレットを受信することであって、入力が完全なシークレットの第2の因子に関係する、受信することと、第1のエンティティで、少なくとも1つの第1の因子及び入力から完全なシークレットを再構築することと、第1のエンティティで、再構築された完全なシークレットを使用して計算を実行し、第2のエンティティに計算の結果を送信することを含み、結果は第2のエンティティでのペアリング計算に対する入力を提供する。第2のエンティティは、クライアントがシークレットを所有しているかどうかを判断するためにペアリング計算を実行する。第1のエンティティはクライアントであってよく、第2のエンティティはサーバであってよい。信頼機関はクライアントにシークレットを発行した可能性があり、サーバが計算を実行して、クライアントがそのシークレットを所有しているかどうかを判断できるようにするために、サーバに別のシークレットを発行した可能性もある。
【選択図】図1
消耗製品のディジタル署名を格納した持続性メモリ。該ディジタル署名は、識別子及びホスト装置の設定データが信頼できるソースからのものであることを示すものである。
【選択図】図1A
本発明の実施形態は、ユーザ認証方法、認証装置、および端末を提供する。方法は、端末の第1のタイプの認証情報と第2のタイプの認証情報とを決定するステップであって、第1のタイプの認証情報は、端末の特定のインタラクション挙動に対応するインタラクションオブジェクトの特定の属性情報における特定の属性情報であって、予め設定された時間内のその発生頻度が予め設定されたレンジ内に入る特定の属性情報を含み、第2のタイプの認証情報は、端末のユーザによる第1のタイプの認証情報の選択に干渉するために使用される、決定するステップと、端末のユーザに認証チャレンジセットを提示するステップと、端末のユーザによって認証チャレンジセットを識別することにより得られた識別結果を受信するステップと、識別結果における第1のタイプの認証情報の識別正当性レートに応じて認証結果を決定するステップとを含む。本発明の実施形態におけるユーザ認証方法、認証装置、および端末によると、認証情報は、ユーザの認証を行うために、端末における、予め設定された時間内のその発生頻度が予め設定されている、インタラクションオブジェクトについての情報を使用することにより、動的に生成され、これは、ユーザによって認証情報を記憶するメモリ価格を減じ、覗き見防止機能をさらに有する。
電子署名システム // JP2016524431
デジタルデータにデジタルで署名するためのデジタル署名鍵と、デジタルで署名されたデータをデジタルで検証するための対応する検証鍵とを生成する電子鍵生成デバイス(100)と、電子鍵生成デバイスから取得されるデジタル署名鍵を使用して、デジタルデータのデジタル署名を生成する電子署名生成デバイス(200)と、電子署名生成デバイスによって生成されるデジタル署名を検証するための電子署名検証デバイス(300)とを備える、電子署名システム。検証器は、コミットメント整数及び秘密鍵の材料から導出される対応する多項式へのアクセスを有し、同じ秘密鍵の材料を導出した署名多項式の検証を可能にする。
腕時計(2)のようなトラステッドデバイスは、認証動作を実施してトラステッドデバイスを認証済み状態に切り替えるのに使用される認証回路(26)を設けられている。保持モニタリング回路(32)は、認証動作に従って、ユーザによるトラステッドデバイスの物理的所持をモニタリングし、トラステッドデバイスがユーザによって物理的に所持されていない場合、トラステッドデバイスを認証済み状態から脱して切り替える。トラステッドデバイスがユーザによって物理的に所持されたままである間、通信トリガ回路(38)が、複数の異なる目標デバイスの1つである目標デバイスとの通信を確立することを求める要求を検出するのに使用され、通信回路(40)は、ユーザの認証済み識別標識を使用して目標デバイスと通信するのに使用される。
【選択図】図4
通信の要求を送信する要求デバイス(31)及び前記要求デバイス(31)及び(32)から前記要求を受信する受信デバイス(32)によるプロキシミティベースサービス(proximity based service )通信における認証及び承認を行う方法であって、前記方法は、前記要求及び受信デバイス(31)及び(32)において一意な鍵Kpからセッション鍵Kpc及びKpiを導出し、prose通信設定及び前記要求及び受信デバイス(31)及び(32)の間の直接通信のために前記セッション鍵Kpc及びKpiを使用し、前記要求及び受信デバイス(31)及び(32)との前記直接通信を開始することを備える。前記鍵Kpcは、機密性鍵であり、前記鍵Kpiは整合性保護鍵である。
【選択図】図6
To top