(57)【要約】  本発明のデジタル署名方法、装置及びシステムは、ＥＣ−Ｓｃｈｎｏｒｒに基づくデジタル署名アルゴリズムを鍵生成センターの署名アルゴリズムとして使用し、ユーザに対応する部分署名秘密鍵Ｔを生成し、ＥＣＤＳＡなどの標準のデジタル署名アルゴリズムを使用して、メッセージＭに署名する。署名秘密鍵Ｔの第２部分ｗを生成する計算中に、署名割当Ｒを使用し、署名割当Ｒは少なくとも事前署名Πおよび署名端末の識別ＩＤを含むハッシュダイジェストであり、メッセージＭに署名する場合、Ｍを入力とする必要がある演算では、ＲとＭの関連を入力として使用し、署名検証過程中に同様に元々Ｍを入力とする必要がある演算過程中にＲとＭの関連を入力とすることにより、署名のセキュリティが向上し、本発明は、１つのメカニズムに関連する２つの署名アルゴリズムにより、構築された完全アルゴリズムが既知の攻撃に効果的に抵抗できるのを保証することができる。
2020532928.tif 000002
【特許請求の範囲】
【請求項１】
署名端末によってｎとＸのキーペアをランダムに生成し、それらの識別ＩＤとＸを鍵生成センターに送信するステップと、
鍵生成センターによって生成され前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信し、ただし、前記（Π、ｗ）は鍵生成センターがデジタル署名方法ＭＡを実行し前記ＩＤに署名して得られた署名値であり、前記鍵生成センターは、署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）をランダムに生成し、事前署名Πを生成して、少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、鍵生成センターは、暗号化システムの公開パラメータとしてＰを使用するステップと、
前記Ｐ、ＩＤ、Ｔ、ｎおよびＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップと、
Ｓを署名秘密鍵として使用しデジタル署名方法ＭＢを実行してメッセージＭに署名し、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対する署名値として署名検証端末に送信し、またはＵをメッセージＭに対する署名値として署名検証端末に送信し、ＰＸを公開し、ただし、メッセージＭに対する署名の過程中、Ｍを入力とする必要がある演算ではＲとＭの関連を入力として使用するステップと、
前記署名検証端末によってメッセージＭの署名を署名検証し、ただし、前記署名検証端末はＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢによる署名検証過程によって、Ｕが秘密キーペアＭに対応する公開鍵Ｑの有効な署名であるかどうかを検証し、ただし、署名検証過程中、Ｍを入力とする必要がある演算では、ＲとＭの関連を入力として使用するステップと、を含むことを特徴とするデジタル署名方法。
【請求項２】
前記デジタル署名方法ＭＡは離散対数問題に基づく署名方法であり、前記鍵生成センターは、離散対数問題に基づいて構築され、その選択次数は、ｑの巡回グループの生成元Ｇとグループ中の１つのランダム要素［ｏ］Ｇであり、ただし、［ｏ］Ｇは、ｏ個のＧが巡回グループの演算ルールに従ってｏ回加算演算されることを表し、
前記署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）中のｍｓは、鍵生成センターによってランダムに生成された整数ｍｓであり、かつ０＜ｍｓ＜ｑ、前記Ｐ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞であることを特徴とする請求項１に記載のデジタル署名方法。
【請求項３】
前記の前記Ｐ、ＩＤ、Ｔ、ｎ及びＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップの前に、
署名端末は、前記ｎを使用して前記鍵生成センターによって標準の非対称暗号化アルゴリズムで暗号化されたｗを含む情報を復号化し、ただし、前記標準の非対称暗号化アルゴリズムでｗを含む情報を暗号化する場合、使用される暗号化公開鍵はＸであるステップを含むことを特徴とする請求項２に記載のデジタル署名方法。
【請求項４】
前記署名端末によってランダムによってｎとＸのキーペアを生成する方法は、
署名端末はランダムに整数ｎを生成し、０＜ｎ＜ｑ、Ｘ＝［ｎ］Ｇを計算することを含むことを特徴とする請求項２に記載のデジタル署名方法。
【請求項５】
前記の鍵生成センターによって生成された前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するステップは、具体的に、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑ、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを計算し、ただし、他の情報Ｉには、Ｈ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行すること、
鍵生成センターによって事前署名Π＝［ｋ］Ｇ±［ｎ］Ｇを計算すること、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）を計算し、他の情報ＡにはＨが含まれること、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算すること、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成すること、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信することを含むことを特徴とする請求項４に記載のデジタル署名方法。
【請求項６】
前記の前記Ｐ、ＩＤ、Ｔ、ｎおよびＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップは、
ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±［Ｒ］Ｈであること、
ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］Π±Ｈであることを含むことを特徴とする請求項５に記載のデジタル署名方法。
【請求項７】
前記の鍵生成センターによって生成された前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するステップは、具体的に、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑ、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報ＩにはＨ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行すること、
鍵生成センターによって事前署名Π＝［ｋ］Ｇを計算すること、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）ｍｏｄｑを計算し、他の情報ＡにはＸ、Ｈが含まれること、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算すること、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成すること、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信することを含むことを特徴とする請求項４に記載のデジタル署名方法。
【請求項８】
前記の前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップは、
ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±Ｘ±［Ｒ］Ｈであること、
ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］（Π±Ｘ）±Ｈであることを含むことを特徴とする請求項７に記載のデジタル署名方法。
【請求項９】
ランダムにｎとＸのキーペアを生成し、その識別ＩＤおよびＸを鍵生成センターに送信するための生成送信ユニットと、
鍵生成センターによって生成された署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信し、ただし、前記（Π、ｗ）は鍵生成センターによってデジタル署名方法ＭＡを実行し前記ＩＤに署名して得られた署名値であり、前記鍵生成センターはランダムに署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）を生成し、事前署名Πを生成し、その後少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、鍵生成センターはＰを暗号化システムの公開パラメータとする受信ユニットと、
前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するための算出ユニットと、
Ｓを署名秘密鍵としてデジタル署名方法ＭＢを実行しメッセージＭに署名して、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対する署名値として署名検証端末に送信し、またはＵをメッセージＭに対する署名値として署名検証端末に送信し、ＰＸを公開し、ただし、メッセージＭに署名する過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用する署名送信ユニットと、
前記署名検証端末からメッセージＭに対する署名を署名検証し、ただし、前記署名検証端末はＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢの署名検証過程に従いＵが公開鍵Ｑに対応する秘密キーペアＭの有効署名であるかどうかを検証し、ただし、署名検証過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用する署名検証ユニットとを含むことを特徴とするデジタル署名装置。
【請求項１０】
前記デジタル署名方法ＭＡは離散対数問題に基づく署名方法であり、前記鍵生成センターは離散対数問題に基づいて構築され、その選択次数はｑの巡回グループの生成元Ｇおよびグループ中の１つのランダム要素［ｏ］Ｇであり、ただし、［ｏ］Ｇはｏ個のＧが巡回グループの演算ルールに従いｏ回乗算演算されることを示し、
前記署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）中のｍｓは鍵生成センターによってランダムに生成された整数ｍｓであり、０＜ｍｓ＜ｑを満たし、前記Ｐ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞であることを特徴とする請求項９に記載のデジタル署名装置。
【請求項１１】
復号化ユニットをさらに含み、前記復号化ユニットは、署名端末が前記ｎを使用し前記鍵生成センターによって標準の非対称暗号化アルゴリズムで暗号化されたｗを含む情報を復号化するために用いられ、ただし、前記標準の非対称暗号化アルゴリズムでｗを含む情報を暗号化するときに、使用された暗号化公開鍵はＸであることを特徴とする請求項１０に記載のデジタル署名装置。
【請求項１２】
前記生成送信ユニットは、
ランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算するための生成計算モジュールを含むことを特徴とする請求項１０に記載のデジタル署名装置。
【請求項１３】
前記受信ユニットは、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たし、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報Ｉには巡回グループの生成情報、Ｇ、Ｈ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行する第１生成ｋモジュールと、
鍵生成センターによって事前署名Π＝［ｋ］Ｇ±［ｎ］Ｇを計算するための第１計算Πモジュールと、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）を計算し、他の情報ＡにはＨが含まれる第１計算Ｒモジュールと、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算するための第１計算ｗモジュールと、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成するための第１生成モジュールと、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するための第１受信モジュールとを含むことを特徴とする請求項１２に記載のデジタル署名装置。
【請求項１４】
前記算出ユニットは、第１計算生成モジュールを含み、
前記第１計算生成モジュールは、ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±［Ｒ］Ｈであり、ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］Π±Ｈであることを特徴とする請求項１３に記載のデジタル署名装置。
【請求項１５】
前記受信ユニットは、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たし、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報ＩにはＨ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行する第２生成ｋモジュールと、
鍵生成センターによって事前署名Π＝［ｋ］Ｇを計算するための第２計算Πモジュールと、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）ｍｏｄｑを計算し、他の情報ＡにはＸ、Ｈが含まれる第２計算Ｒモジュールと、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算するための第２計算ｗモジュールと、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成するための第２生成モジュールと、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するための第２受信モジュールと、を含むことを特徴とする請求項１２に記載のデジタル署名装置。
【請求項１６】
前記算出ユニットは、第２計算生成モジュールを含み、
前記第２計算生成モジュールは、ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±Ｘ±［Ｒ］Ｈであり、ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］（Π±Ｘ）±Ｈであることを特徴とする請求項１５に記載のデジタル署名装置。
【請求項１７】
署名端末、鍵生成センターおよび署名検証端末を含み、
前記署名端末によってランダムにｎとＸのキーペアを生成し、ＩＤおよびＸを前記鍵生成センターに送信し、
前記鍵生成センターによって予め設定されたデジタル署名方法ＭＡで識別ＩＤに署名し、識別ＩＤに署名し、その署名過程には、前記鍵生成センターによってランダムに署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）を生成し、事前署名Πを生成し、少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、両部分を含む署名値（Π、ｗ）を得て、前記署名値を部分署名秘密鍵Ｔ＝（Π、ｗ）とし、前記部分署名秘密鍵Ｔを前記署名端末に送信し、鍵生成センターはまたＰを暗号化システムの公開パラメータとすることが含まれ、
前記署名端末は前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出し、Ｓを署名秘密鍵としてデジタル署名方法ＭＢでメッセージＭに署名し、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対するＩＤ署名値として署名検証端末に送信し、またはＵをメッセージＭに対する署名値として署名検証端末に送信し、ＰＸを公開し、ただし、メッセージＭに対する署名過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用し、
前記署名検証端末はメッセージＭに対する署名を署名検証し、その署名検証過程には、ＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢの署名検証過程に従いＵが公開鍵Ｑに対応する秘密キーペアＭの有効署名であるかどうかを検証し、ただし、署名検証過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用することが含まれることを特徴とするデジタル署名システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル署名の分野に関し、特にデジタル署名方法、装置及びシステムに関する。
【背景技術】
【０００２】
従来の公開鍵システムでは、証明書を使用して、ユーザＩＤとユーザが所有する鍵を結合する。証明書は、ユーザとその鍵の関係を効果的に証明できるが、証明書の管理は複雑である。ＩＤ暗号化アルゴリズムは、ユーザのＩＤ及びシステムの公開情報を使用して、ユーザのＩＤ公開鍵を計算し、ユーザ間の通信では、証明書や公開鍵の交換は必要ではない。このようなシステムの利点は管理が簡単であるが、鍵委托の属性という欠点があり、即ち、すべてのユーザの秘密鍵を生成できる鍵生成センターがある。証明書のない公開鍵システムはこれら２つのシステムの間にあり、ユーザの鍵はユーザと鍵生成センターによって共同で生成される。基本的な方法は、ユーザが生成した部分鍵１中の公開鍵とそのＩＤを署名操作のために鍵生成センターに提供し、部分鍵２を生成する。ユーザが部分鍵２（署名結果）を取得した後、ユーザが生成した部分鍵１と結合して完全な公開鍵と秘密鍵のペアを生成する。このようなシステムでは、攻撃者がユーザの秘密鍵なしで公開鍵を偽造しても、ユーザのＩＤを偽造しデジタル署名などの操作が不可能である。このような無証明書のデジタル署名メカニズムの構築には、２つの署名アルゴリズムが含まれる。第１署名アルゴリズムは、ユーザが送信したＩＤに署名するために、鍵生成センターによって実行される。第２署名アルゴリズムは、完全な公開鍵と秘密鍵のペアの秘密鍵を使用して署名されたメッセージに署名するユーザによって実行される。ただし、ＥＣ−Ｓｃｈｎｏｒｒなどの標準の署名アルゴリズムとメッセージ署名アルゴリズムＥＣＤＳＡを単に組み合わせただけでは、構築された無証明書デジタル署名メカニズムのセキュリティを保証できない。単純な組み合わせ方法のセキュリティ問題は、Ｄａｎｉｅｌ  Ｒ．Ｌ．Ｂｒｏｗｎ他による論文「Ｓｅｃｕｒｉｔｙ  ｏｆ  ＥＣＱＶ−Ｃｅｒｔｉｆｉｅｄ  ＥＣＤＳＡ  Ａｇａｉｎｓｔ  Ｐａｓｓｉｖｅ  Ａｄｖｅｒｓａｒｉｅ」に記載されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明の主な目的は、従来技術におけるセキュリティ脆弱性の問題を解決するデジタル署名方法、装置及びシステムを提供することである。
【課題を解決するための手段】
【０００４】
上記の目的を達成するために、本発明は、署名端末によってｎとＸのキーペアをランダムに生成し、それらの識別ＩＤとＸを鍵生成センターに送信するステップと、
鍵生成センターによって生成され前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信し、ただし、前記（Π、ｗ）は鍵生成センターがデジタル署名方法ＭＡを実行し前記ＩＤに署名して得られた署名値であり、前記鍵生成センターは、署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）をランダムに生成し、事前署名Πを生成して、少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、鍵生成センターは、暗号化システムの公開パラメータとしてＰを使用するステップと、
前記Ｐ、ＩＤ、Ｔ、ｎおよびＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップと、
Ｓを署名秘密鍵として使用しデジタル署名方法ＭＢを実行してメッセージＭに署名し、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対する署名値として署名検証端末に送信し、またはＵをメッセージＭに対する署名値として署名検証端末に送信し、ＰＸを公開し、ただし、メッセージＭに対する署名の過程中、Ｍを入力とする必要がある演算ではＲとＭの関連を入力として使用するステップと、
前記署名検証端末によってメッセージＭの署名を署名検証し、ただし、前記署名検証端末はＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢによる署名検証過程によって、Ｕが秘密キーペアＭに対応する公開鍵Ｑの有効な署名であるかどうかを検証し、ただし、署名検証過程中、Ｍを入力とする必要がある演算では、ＲとＭの関連を入力として使用するステップと、を含むデジタル署名方法を提供している。
【０００５】
さらに、前記デジタル署名方法ＭＡは離散対数問題に基づく署名方法であり、前記鍵生成センターは、離散対数問題に基づいて構築され、その選択次数は、ｑの巡回グループの生成元Ｇとグループ中の１つのランダム要素［ｏ］Ｇであり、ただし、［ｏ］Ｇは、ｏ個のＧが巡回グループの演算ルールに従ってｏ回加算演算されることを表し、
前記署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）中のｍｓは、鍵生成センターによってランダムに生成された整数ｍｓであり、０＜ｍｓ＜ｑを満たし、前記Ｐ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞である。
【０００６】
さらに、前記の前記Ｐ、ＩＤ、Ｔ、ｎ及びＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップの前に、
署名端末は、前記ｎを使用して前記鍵生成センターによって標準の非対称暗号化アルゴリズムで暗号化されたｗを含む情報を復号化し、ただし、前記標準の非対称暗号化アルゴリズムでｗを含む情報を暗号化する場合、使用される暗号化公開鍵はＸであるステップを含む。
さらに、前記署名端末によってランダムによってｎとＸのキーペアを生成する方法は、
署名端末はランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算することを含む。
【０００７】
さらに、前記の鍵生成センターによって生成された前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するステップは、具体的に、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑ、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを計算し、ただし、他の情報Ｉには、Ｈ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行すること、
鍵生成センターによって事前署名Π＝［ｋ］Ｇ±［ｎ］Ｇを計算すること、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）を計算し、他の情報ＡにはＨが含まれること、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算すること、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成すること、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信することを含む。
さらに、前記の前記Ｐ、ＩＤ、Ｔ、ｎおよびＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップは、
ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±［Ｒ］Ｈであること、
ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］Π±Ｈであることを含む。
【０００８】
さらに、前記の鍵生成センターによって生成された前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するステップは、具体的に、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑ、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報ＩにはＨ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行すること、
鍵生成センターによって事前署名Π＝［ｋ］Ｇを計算すること、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）ｍｏｄｑを計算し、他の情報ＡにはＸ、Ｈが含まれること、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算すること、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成すること、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信することを含む。
【０００９】
さらに、前記の前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップは、
ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±Ｘ±［Ｒ］Ｈであること、
ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］（Π±Ｘ）±Ｈであることを含む。
【００１０】
本発明は、ランダムにｎとＸのキーペアを生成し、その識別ＩＤおよびＸを鍵生成センターに送信するための生成送信ユニットと、
鍵生成センターによって生成された署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信し、ただし、前記（Π、ｗ）は鍵生成センターによってデジタル署名方法ＭＡを実行し前記ＩＤに署名して得られた署名値であり、前記鍵生成センターはランダムに署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）を生成し、事前署名Πを生成し、その後少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、鍵生成センターはＰを暗号化システムの公開パラメータとする受信ユニットと、
前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するための算出ユニットと、
Ｓを署名秘密鍵としてデジタル署名方法ＭＢを実行しメッセージＭに署名して、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対する署名値として署名検証端末に送信し、またはＵをメッセージＭに対する署名値として署名検証端末に送信し、ＰＸを公開し、ただし、メッセージＭに署名する過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用する署名送信ユニットと、
前記署名検証端末からメッセージＭに対する署名を署名検証し、ただし、前記署名検証端末はＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢの署名検証過程に従いＵが公開鍵Ｑに対応する秘密キーペアＭの有効署名であるかどうかを検証し、ただし、署名検証過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用する署名検証ユニットとを含むデジタル署名装置をさらに提供している。
【００１１】
さらに、前記デジタル署名方法ＭＡは離散対数問題に基づく署名方法であり、前記鍵生成センターは離散対数問題に基づいて構築され、その選択次数はｑの巡回グループの生成元Ｇおよびグループ中の１つのランダム要素［ｏ］Ｇであり、ただし、［ｏ］Ｇはｏ個のＧが巡回グループの演算ルールに従いｏ回乗算演算されることを示し、
前記署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）中のｍｓは鍵生成センターによってランダムに生成された整数ｍｓであり、０＜ｍｓ＜ｑを満たし、前記Ｐ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞である。
【００１２】
さらに、前記デジタル署名装置は、復号化ユニットをさらに含み、前記復号化ユニットは、署名端末が前記ｎを使用し前記鍵生成センターによって標準の非対称暗号化アルゴリズムで暗号化されたｗを含む情報を復号化するために用いられ、ただし、前記標準の非対称暗号化アルゴリズムでｗを含む情報を暗号化するときに、使用された暗号化公開鍵はＸである。
【００１３】
さらに、前記生成送信ユニットは、
ランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算するための生成計算モジュールを含む。
【００１４】
さらに、前記受信ユニットは、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たし、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報Ｉには巡回グループの生成情報、Ｇ、Ｈ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行する第１生成ｋモジュールと、
鍵生成センターによって事前署名Π＝［ｋ］Ｇ±［ｎ］Ｇを計算するための第１計算Πモジュールと、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）を計算し、他の情報ＡにはＨが含まれる第１計算Ｒモジュールと、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算するための第１計算ｗモジュールと、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成するための第１生成モジュールと、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するための第１受信モジュールとを含む。
さらに、前記算出ユニットは、第１計算生成モジュールを含み、
前記第１計算生成モジュールは、ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±［Ｒ］Ｈであり、ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］Π±Ｈである。
【００１５】
さらに、前記受信ユニットは、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たし、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報ＩにはＨ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行する第２生成ｋモジュールと、
鍵生成センターによって事前署名Π＝［ｋ］Ｇを計算するための第２計算Πモジュールと、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）ｍｏｄｑを計算し、他の情報ＡにはＸ、Ｈが含まれる第２計算Ｒモジュールと、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算するための第２計算ｗモジュールと、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成するための第２生成モジュールと、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するための第２受信モジュールと、を含む。
【００１６】
さらに、前記算出ユニットは、第２計算生成モジュールを含み、
前記第２計算生成モジュールは、ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±Ｘ±［Ｒ］Ｈであり、ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］（Π±Ｘ）±Ｈである。
【００１７】
本発明は、署名端末、鍵生成センターおよび署名検証端末を含み、
前記署名端末によってランダムにｎとＸのキーペアを生成し、ＩＤおよびＸを前記鍵生成センターに送信し、
前記鍵生成センターによって予め設定されたデジタル署名方法ＭＡで識別ＩＤに署名し、識別ＩＤに署名し、その署名過程には、前記鍵生成センターによってランダムに署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）を生成し、事前署名Πを生成し、少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、両部分を含む署名値（Π、ｗ）を得て、前記署名値を部分署名秘密鍵Ｔ＝（Π、ｗ）とし、前記部分署名秘密鍵Ｔを前記署名端末に送信し、鍵生成センターはまたＰを暗号化システムの公開パラメータとすることが含まれ、
前記署名端末は前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出し、Ｓを署名秘密鍵としてデジタル署名方法ＭＢでメッセージＭに署名し、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対するＩＤ署名値として署名検証端末に送信し、またはＵをメッセージＭに対する署名値として署名検証端末に送信し、ＰＸを公開し、ただし、メッセージＭに対する署名過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用し、
前記署名検証端末はメッセージＭに対する署名を署名検証し、その署名検証過程には、ＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢの署名検証過程に従いＵが公開鍵Ｑに対応する秘密キーペアＭの有効署名であるかどうかを検証し、ただし、署名検証過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用することが含まれるデジタル署名システムをさらに提供している。
【発明の効果】
【００１８】
本発明のデジタル署名方法、装置及びシステムは、ＥＣ−Ｓｃｈｎｏｒｒに基づくデジタル署名アルゴリズムを鍵生成センターの署名アルゴリズムとして使用し、ユーザに対応する部分署名秘密鍵Ｔを生成し、ＥＣＤＳＡなどの標準のデジタル署名アルゴリズムを使用して、メッセージＭに署名する。署名秘密鍵Ｔの第２部分ｗを生成する計算中に、署名割当Ｒを使用し、署名割当Ｒは少なくとも事前署名Πおよび署名端末の識別ＩＤを含むハッシュダイジェストであり、メッセージＭに署名する場合、Ｍを入力とする必要がある演算では、ＲとＭの関連を入力として使用し、署名検証過程中に同様に元々Ｍを入力とする必要がある演算過程中にＲとＭの関連を入力とすることにより、署名のセキュリティが向上し、本発明は、１つのメカニズムに関連する２つの署名アルゴリズムにより、構築された完全アルゴリズムが既知の攻撃に効果的に抵抗できるのを保証することができる。
【図面の簡単な説明】
【００１９】
【図１】図１は本発明の一実施例のデジタル署名方法の概略フローチャートである。
【図２】図２は本発明の一実施例のデジタル署名方法中のステップＳ２の概略フローチャートである。
【図３】図３は本発明の別の実施例のデジタル署名方法中のステップＳ２の概略フローチャートである。
【図４】図４は本発明の一実施例のデジタル署名装置の概略構造のブロック図である。
【図５】図５は本発明の一実施例の生成送信ユニットの概略構造ブロック図である。
【図６】図６は本発明の一実施例の受信ユニットの概略構造ブロック図である。
【図７】図７は本発明の別の実施例の受信ユニットの概略構造ブロック図である。
【図８】図８は本発明の一実施例のデジタル署名システムの概略構造ブロック図である。
【発明を実施するための形態】
【００２０】
実施例および図面を参照しながら本発明の目的達成、機能特徴及び利点をさらに説明する。
【００２１】
本明細書に記載される特定の実施例は、本発明を解釈するためにのみ使用され、本発明を限定することを意図するものではないことを留意されたい。
【００２２】
図１を参照すると、本発明の実施例は、以下のステップを含むデジタル署名方法を提供している。
【００２３】
Ｓ１、署名端末によってｎとＸのキーペアをランダムに生成し、それらの識別ＩＤとＸを前記鍵生成センターに送信する。
【００２４】
ステップＳ１では、前記署名端末は携帯電話、コンピューター、ＰＤＡなどのスマートデバイスである。前記鍵生成センターは鍵管理センターであり、公開鍵インフラストラクチャ中の１つの重要な構成部分であり、鍵の生成、保存、バックアップ、更新、回復、クエリなどの鍵サービスを提供し、分布式企業応用環境中の大規模暗号化技術の適用によりもたらされる鍵管理問題を解決することができる。前記識別ＩＤは署名端末に対応するＩＤであり、１つの識別ＩＤは１つの署名端末に一意に対応する。
【００２５】
Ｓ２、鍵生成センターによって生成され前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信し、ただし、前記（Π、ｗ）は鍵生成センターがデジタル署名方法ＭＡを実行し前記ＩＤに署名して得られた署名値であり、前記鍵生成センターは、署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）をランダムに生成し、事前署名Πを生成して、少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、鍵生成センターは、暗号化システムの公開パラメータとしてＰを使用する。
【００２６】
ステップＳ２では、前記デジタル署名方法ＭＡは離散対数問題に基づく署名方法である。前記鍵生成センターは離散対数問題に基づいて構築され、その選択次数はｑの巡回グループの生成元Ｇとグループ中の１つのランダム要素［ｏ］Ｇであり、ただし、［ｏ］Ｇはｏ個のＧが巡回グループの演算ルールに従いｋ回乗算演算されることを示す。前記公開されたシステムパラメータＰ、識別ＩＤ、ＰＸにより、Ｓを秘密キーに対応する公開鍵Ｑ＝［Ｓ］Ｇとして算出することができる。前記署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）中のｍｓは鍵生成センターによってランダムに生成された整数ｍｓであり、０＜ｍｓ＜ｑを満たし、前記Ｐ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞である。本ステップでは、部分署名秘密鍵Ｔの第２部分ｗには署名割当Ｒ（少なくともΠ、ＩＤを含むハッシュダイジェスト）が含まれ、後続の署名過程中に、署名割当Ｒを追加することで署名のセキュリティを向上できる。
【００２７】
Ｓ３、前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出する。
【００２８】
ステップＳ３の前に、署名端末は、前記ｎを使用して前記鍵生成センターによって標準の非対称暗号化アルゴリズムで暗号化されたｗを含む情報を復号化し、ただし、前記標準の非対称暗号化アルゴリズムでｗを含む情報を暗号化する場合、使用される暗号化公開鍵はＸであるステップを含む。つまり、鍵生成センターは署名端末に送信された部分署名秘密鍵Ｔ＝（Π、ｗ）を暗号化処理し、主にｗを含む情報を暗号化し、その暗号化方法は標準の非対称暗号化アルゴリズム、例えばＥＣＩＥＳなどの暗号化アルゴリズムである。
【００２９】
Ｓ４、Ｓを署名秘密鍵として使用しデジタル署名方法ＭＢを実行してメッセージＭに署名し、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対する署名値として署名検証端末に送信し、またはＵをメッセージＭに対する署名値として署名検証端末に送信し、ＰＸを公開し、ただし、メッセージＭに対する署名の過程中、Ｍを入力とする必要がある演算ではＲとＭの関連を入力として使用する。
【００３０】
ステップＳ４では、メッセージＭに署名する過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用することで、署名のセキュリティを向上できる。
【００３１】
Ｓ５、前記署名検証端末によってメッセージＭの署名を署名検証し、ただし、前記署名検証端末はＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢによる署名検証過程によって、Ｕが秘密キーペアＭに対応する公開鍵Ｑの有効な署名であるかどうかを検証し、ただし、署名検証過程中、Ｍを入力とする必要がある演算では、ＲとＭの関連を入力として使用する。
【００３２】
ステップＳ５では、署名検証中に同様にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用することで、デジタル署名のセキュリティを向上できる。
【００３３】
本実施例では、前記署名端末によってランダムにｎとＸのキーペアを生成する方法は、署名端末によってランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算することを含む。
【００３４】
図２を参照すると、本実施例では、前記の鍵生成センターによって生成された前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するステップＳ２は、具体的に、以下のステップを含む。
【００３５】
Ｓ２０１、鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たし、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報ＩにはＨ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行する。
【００３６】
Ｓ２０２、鍵生成センターによって事前署名Π＝［ｋ］Ｇ±［ｎ］Ｇを計算する。
【００３７】
Ｓ２０３、鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）を計算し、他の情報ＡにはＨが含まれる。
【００３８】
Ｓ２０４、鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算する。
【００３９】
Ｓ２０５、鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成する。
【００４０】
Ｓ２０６、前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信する。
【００４１】
本実施例では、前記の前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップＳ３は、以下のステップを含む。
【００４２】
Ｓ３０１、ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±［Ｒ］Ｈである。
【００４３】
Ｓ３０２、ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］Π±Ｈである。
【００４４】
図３を参照すると、別の実施例では、前記の鍵生成センターによって生成された前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するステップＳ２は、具体的に、以下のステップを含む。
【００４５】
Ｓ２１１、鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たし、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報ＩにはＨ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行する。
【００４６】
Ｓ２１２、鍵生成センターによって事前署名Π＝［ｋ］Ｇを計算する。
【００４７】
Ｓ２１３、鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）ｍｏｄｑを計算し、他の情報ＡにはＸ、Ｈが含まれる。
【００４８】
Ｓ２１４、鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算する。
【００４９】
Ｓ２１５、鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成する。
【００５０】
Ｓ２１６、前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信する。
【００５１】
本実施例では、前記の前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するステップＳ３は、以下のステップを含む。
【００５２】
Ｓ３１１、ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±Ｘ±［Ｒ］Ｈである。
【００５３】
Ｓ３１２、ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］（Π±Ｘ）±Ｈである。
【００５４】
本発明は、さらに第１の具体的な実施例を提供し、その署名方法はＳＭ２に基づく署名方法であり、具体的に以下のステップを含む。
【００５５】
Ｓ１１０、署名端末によってランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算し、その後前記Ｘおよびその自身の識別ＩＤを鍵生成センターに送信する。
【００５６】
Ｓ１２０、鍵生成センターによってＥＣ−Ｓｃｈｎｏｒｒ署名アルゴリズムを署名方法ＭＡとして選択する。ＳＭ２標準で規定された楕円曲線Ｅ：Ｙ＾２＝Ｘ＾３＋ａ＊Ｘ＋ｂを選択し、次数ｑのポイントグループを巡回グループとし、ランダムに生成元Ｇを選択し、ランダムに整数ｍｓを生成し、０＜ｍｓ＜ｑを満たし、Ｈ＝［ｍｓ］Ｇを計算し、システムパラメータＰ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞とする。
【００５７】
鍵生成センターによってＩＤに対応する部分署名秘密鍵Ｔを生成するステップは、以下のとおりである。
Ａ．鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たす。
Ｂ．鍵生成センターによって事前署名Π＝［ｋ］Ｇ＋［ｎ］Ｇを計算する。
Ｃ．鍵生成センターによってＺ＝ＳＭ３（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）を計算し、署名割当値Ｒ＝ＳＭ３（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算し、ただし、ＩＤ＿ＬＥＮはＩＤの長さであり、ｘＧ、ｙＧ等はＧ点等に対応するｘ軸、ｙ軸の値である。
Ｄ．鍵生成センターによって署名値の第２部分ｗ＝（ｋ−Ｒ＊ｍｓ）ｍｏｄｑを計算し、Ｑに対応する計算過程はＱ＝Π−［Ｒ］Ｈである。
Ｅ．鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成する。
【００５８】
Ｓ１３０、署名端末によってＳ＝（ｗ＋ｎ）ｍｏｄｑを計算し、ＰＸ＝Πとし、署名キーペア（Π、Ｓ）を生成し、ＳＭ２アルゴリズムをＭＢとしてメッセージＭに署名するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＭ３（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）を計算し、Ｒ＝ＳＭ３（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑである。
Ｂ．ｅ＝ＳＭ３（Ｒ｜｜Ｍ）を計算する。
Ｃ．ランダムに整数ｚを生成し、０＜ｚ＜ｑを満たす。
Ｄ．Λ＝［ｚ］Ｇを計算する。
Ｅ．ｒ＝（ｅ＋ｘΛ）ｍｏｄｑ、ｗ＝（ｚ−ｒ＊Ｓ）／（Ｓ＋１）ｍｏｄｑ、ＳＭ２署名Ｕ＝（ｒ、ｗ）を計算する。
Ｆ．ＩＤ署名（Ｕ＝（ｒ、ｗ）、Π）を生成する。
【００５９】
Ｓ１４０、署名検証端末によってＩＤから生成されたメッセージＭに対する署名（Ｕ＝（ｒ、ｗ）、Π）の正確性を検証するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＭ３（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）、Ｒ＝ＳＭ３（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．ｅ＝ＳＭ３（Ｒ｜｜Ｍ）を計算する。
Ｃ．Ｑ＝Π−［Ｒ］Ｈを計算する。
Ｄ．ｔ＝（ｒ＋ｗ）ｍｏｄｑを計算する。
Ｅ．Ｖ＝［ｗ］Ｇ＋［ｔ］Ｑを計算する。
Ｆ．ｈ＝（ｅ＋ｘＶ）ｍｏｄｑを計算する。
Ｇ．ｈがｒと等しいかどうかを確認し、等しい場合、署名が正確であり、等しくない場合署名が正確ではない。
【００６０】
本発明は、さらに第２の具体的な実施例を提供し、その署名方法はＥＣＤＳＡに基づく署名方法であり、具体的に以下のステップを含む。
【００６１】
Ｓ２１０、署名端末によってランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算し、その後前記Ｘおよびその自身の識別ＩＤを鍵生成センターに送信する。
【００６２】
Ｓ２２０、鍵生成センターによってＥＣ−Ｓｃｈｎｏｒｒ署名アルゴリズムを署名方法ＭＡとして選択する。ＳＭ２標準で規定された楕円曲線Ｅ：Ｙ＾２＝Ｘ＾３＋ａ＊Ｘ＋ｂを選択し、次数ｑのポイントグループを巡回グループとし、ランダムに生成元Ｇを選択し、ランダムに整数ｍｓを生成し、０＜ｍｓ＜ｑを満たし、Ｈ＝［ｍｓ］Ｇを計算し、システムパラメータＰ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞とする。
【００６３】
鍵生成センターによってＩＤに対応する部分署名秘密鍵Ｔを生成するステップは、以下のとおりである。
Ａ．鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たす。
Ｂ．鍵生成センターによって事前署名Π＝［ｋ］Ｇ＋［ｎ］Ｇを計算する。
Ｃ．鍵生成センターによってＺ＝ＳＨＡ２５６（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）を計算し、署名割当値Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算し、ただし、ＩＤ＿ＬＥＮはＩＤの長さであり、ｘＧ、ｙＧ等はＧ点等に対応するｘ軸、ｙ軸の値を示し、ＳＨＡ２５６（Ａ、Ｂ）はＳＨＡ２５６アルゴリズムを使用してＡとＢの関連値を計算する要約である。関連方式はＡ｜｜ＢまたはＢ｜｜Ａである。
Ｄ．鍵生成センターによって署名値の第２部分ｗ＝（ｋ＋Ｒ＊ｍｓ）ｍｏｄｑを計算し、Ｑに対応する計算過程はＱ＝Π＋［Ｒ］Ｈである。
Ｅ．鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成する。
【００６４】
Ｓ２３０、署名端末によってＳ＝（ｗ＋ｎ）ｍｏｄｑを計算し、ＰＸ＝Πとし、署名キーペア（Π、Ｓ）を生成し、ＥＣＤＳＡアルゴリズムをＭＢとしてメッセージＭに署名するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＨＡ２５６（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）、Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．ｅ＝ＳＨＡ２５６（Ｒ｜｜Ｍ）を計算する。
Ｃ．ランダムに整数ｚを生成し、０＜ｚ＜ｑを満たす。
Ｄ．Λ＝［ｚ］Ｇを計算する。
Ｅ．ｒ＝ｘΛｍｏｄｑ、ｗ＝（ｒ＊（Ｓ＋ｎ）＋ｅ）／ｚｍｏｄｑ、ＥＣＤＳＡ署名Ｕ＝（ｒ、ｗ）を計算する。
Ｆ．ＩＤ署名（Ｕ＝（ｒ、ｗ）、Π）を生成する。
【００６５】
Ｓ２４０、署名検証端末によってＩＤから生成されたメッセージＭに対する署名（Ｕ＝（ｒ、ｗ）、Π）の正確性を検証するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＨＡ２５６（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）、Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．Ｑ＝Π＋［Ｒ］Ｈを計算する。
Ｃ．ｅ＝ＳＨＡ２５６（Ｒ｜｜Ｍ）を計算する。
Ｄ．ｕ＝ｅ／ｗｍｏｄｑ、ｖ＝ｒ／ｗを計算する。
Ｅ．Ｖ＝［ｕ］Ｇ＋［ｖ］Ｑを計算する。
Ｆ．ｈ＝ｘＶｍｏｄｑを計算する。
Ｇ．ｈがｒと等しいかどうかを確認し、等しい場合、署名が正確であり、等しくない場合、署名が正確ではない。
【００６６】
本発明は、さらに第３の具体的な実施例を提供し、その署名方法はＥＣＤＳＡに基づく署名方法であり、具体的に、以下のステップを含む。
【００６７】
Ｓ３１０、署名端末によってランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算し、その後前記Ｘおよびその自身の識別ＩＤを鍵生成センターに送信する。
【００６８】
Ｓ３２０、鍵生成センターによってＥＣ−Ｓｃｈｎｏｒｒ変形署名アルゴリズムを署名方法ＭＡとして選択する。ＳＭ２標準で規定された楕円曲線Ｅ：Ｙ＾２＝Ｘ＾３＋ａ＊Ｘ＋ｂを選択し、次数ｑのポイントグループを巡回グループとし、ランダムに生成元Ｇを選択し、ランダムに整数ｍｓを生成し、０＜ｍｓ＜ｑを満たし、Ｈ＝［ｍｓ］Ｇを計算し、システムパラメータＰ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞とする。
【００６９】
鍵生成センターによってＩＤに対応する部分署名秘密鍵Ｔを生成するステップは、以下のとおりである。
Ａ．鍵生成センターによってｋ＝ＳＨＡ２５６（ＩＤ｜｜Ｇ｜｜Ｈ｜｜［ｎ］Ｇ、ｍｓ）を計算する。
Ｂ．鍵生成センターによって事前署名Π＝［ｋ］Ｇ＋［ｎ］Ｇを計算する。
Ｃ．鍵生成センターによってＺ＝ＳＨＡ２５６（ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ＩＤ）を計算し、署名割当値Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算し、ただし、ｘＧ、ｙＧ等はＧ点等に対応するｘ軸、ｙ軸の値を示し、ＳＨＡ２５６（Ａ、Ｂ）はＳＨＡ２５６アルゴリズムを使用してＡとＢの関連値を計算する要約である。関連方式はＡ｜｜ＢまたはＢ｜｜Ａである。
Ｄ．鍵生成センターによって署名値の第２部分ｗ＝（Ｒ＊ｋ＋ｍｓ）ｍｏｄｑを計算し、Ｑに対応する計算過程はＱ＝Π＋［Ｒ］Ｈである。
Ｅ．鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成する。
Ｆ．鍵生成センターによってＸを公開鍵とし、ＥＣＩＥＳを使用してｗを暗号化し暗号文Ｃを出力する。
Ｇ．署名端末によってｎを秘密鍵として使用しＥＣＩＥＳ復号化方法に従ってＣを復号化してｗを得る。
【００７０】
Ｓ３３０、署名端末によってＳ＝（ｗ＋Ｒ＊ｎ）ｍｏｄｑを計算し、ＰＸ＝Πとし、署名キーペア（Π、Ｓ）を生成し、ＥＣＤＳＡアルゴリズムをＭＢとしてメッセージＭに署名するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＨＡ２５６（ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ＩＤ）、Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．ｅ＝ＳＨＡ２５６（Ｒ｜｜Ｍ）を計算する。
Ｃ．ランダムに整数ｚを生成し、０＜ｚ＜ｑを満たす。
Ｄ．Λ＝［ｚ］Ｇを計算する。
Ｅ．ｒ＝ｘΛｍｏｄｑ、ｗ＝（ｒ＊（Ｓ＋Ｒ＊ｎ）＋ｅ）／ｚｍｏｄｑ、ＥＣＤＳＡ署名Ｕ＝（ｒ、ｗ）を計算する。
Ｆ．ＩＤ署名（Ｕ＝（ｒ、ｗ）、Π）を生成する。
【００７１】
Ｓ３４０、署名検証端末によってＩＤから生成されたメッセージＭに対する署名（Ｕ＝（ｒ、ｗ）、Π）の正確性を検証するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＨＡ２５６（ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ＩＤ）、Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．Ｑ＝［Ｒ］Π＋Ｈを計算する。
Ｃ．ｅ＝ＳＨＡ２５６（Ｒ｜｜Ｍ）を計算する。
Ｄ．ｕ＝ｅ／ｗｍｏｄｑ、ｖ＝ｒ／ｗを計算する。
Ｅ．Ｖ＝［ｕ］Ｇ＋［ｖ］Ｑを計算する。
Ｆ．ｈ＝ｘＶｍｏｄｑを計算する。
Ｇ．ｈがｒと等しいかどうかを確認し、等しい場合、署名が正確であり、等しくない場合、署名が正確ではない。
【００７２】
本発明は、さらに第４の具体的な実施例を提供し、その署名方法はＥＣ−ＳＤＳＡに基づく署名方法であり、具体的には、以下のステップを含む。
【００７３】
Ｓ４１０、署名端末によってランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算し、その後前記Ｘおよびその自身の識別ＩＤを鍵生成センターに送信する。
【００７４】
Ｓ４２０、鍵生成センターによってＥＣ−Ｓｃｈｎｏｒｒ署名アルゴリズムを署名方法ＭＡとして選択する。ＳＭ２標準で規定された楕円曲線Ｅ：Ｙ＾２＝Ｘ＾３＋ａ＊Ｘ＋ｂを選択し、次数ｑのポイントグループを巡回グループとし、ランダムに生成元Ｇを選択し、ランダムに整数ｍｓを生成し、０＜ｍｓ＜ｑを満たし、Ｈ＝［ｍｓ］Ｇを計算し、システムパラメータＰ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞とする。
【００７５】
鍵生成センターによってＩＤに対応するＩＤ秘密鍵Ｔを生成するステップは、以下のとおりである。
Ａ．鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たす。
Ｂ．鍵生成センターによって事前署名Π＝［ｋ］Ｇ＋［ｎ］Ｇを計算する。
Ｃ．鍵生成センターによってＺ＝ＳＨＡ２５６（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）を計算し、署名割当値Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算し、ただし、ＩＤ＿ＬＥＮはＩＤの長さであり、ｘＧ、ｙＧ等はＧ点等に対応するｘ軸、ｙ軸の値を示す。
Ｄ．鍵生成センターによって署名値の第２部分ｗ＝（ｋ＋Ｒ＊ｍｓ）ｍｏｄｑを計算し、Ｑに対応する計算過程はＱ＝Π＋［Ｒ］Ｈである。
Ｅ鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成する。
【００７６】
Ｓ４３０、署名端末によってＳ＝（ｗ＋ｎ）ｍｏｄｑ、ＰＸ＝Πを計算し、署名キーペア（Π、Ｓ）を生成し、ＥＣ−ＳＤＳＡアルゴリズムをＭＢとしてメッセージＭに署名するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＨＡ２５６（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）、Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．ランダムに整数ｚを生成し、０＜ｚ＜ｑを満たす。
Ｃ．Λ＝［ｚ］Ｇを計算する。
Ｄ．ｅ＝ＳＨＡ２５６（Λ｜｜Ｒ｜｜Ｍ）を計算する。
Ｅ．ｒ＝ｅ、ｗ＝（ｚ＋ｅ＊Ｓ）ｍｏｄｑ、ＥＣ−ＳＤＳＡ署名Ｕ＝（ｒ、ｗ）を計算する。
Ｆ．署名Ｕ＝（ｒ、ｗ）を生成する。
【００７７】
Ｓ４４０、署名検証端末によってＩＤから生成されたメッセージＭに対する署名Ｕ＝（ｒ、ｗ）の正確性を検証するステップは、以下のとおりである。
Ａ．ＩＤが公開された署名公開鍵Πを取得する。
Ｂ．Ｚ＝ＳＨＡ２５６（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ）、Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｃ．Ｑ＝Π＋［Ｒ］Ｈを計算する。
Ｄ．Λ＝［ｗ］Ｇ＋［ｒ］Ｑを計算する。
Ｄ．ｅ＝ＳＨＡ２５６（Λ｜｜Ｒ｜｜Ｍ）を計算する。
Ｇ．ｅがｒと等しいかどうかを確認し、等しい場合、署名が正確であり、等しくない場合、署名が正確ではない。
【００７８】
本発明は、さらに第５の具体的な実施例を提供し、その署名方法はＳＭ２に基づく署名方法であり、具体的に、以下のステップを含む。
【００７９】
Ｓ５１０、署名端末によってランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算し、その後前記Ｘおよびその自身の識別ＩＤを鍵生成センターに送信する。
【００８０】
Ｓ５２０、鍵生成センターによってＥＣ−Ｓｃｈｎｏｒｒ署名アルゴリズムを署名方法ＭＡとして選択する。ＳＭ２標準で規定された楕円曲線Ｅ：Ｙ＾２＝Ｘ＾３＋ａ＊Ｘ＋ｂを選択し、次数ｑのポイントグループを巡回グループとし、ランダムに生成元Ｇを選択し、ランダムに整数ｍｓを生成し、０＜ｍｓ＜ｑを満たし、Ｈ＝［ｍｓ］Ｇを計算し、システムパラメータＰ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞とする。
【００８１】
鍵生成センターによってＩＤに対応する部分署名秘密鍵Ｔを生成するステップは、以下のとおりである。
Ａ．鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たす。
Ｂ．鍵生成センターによって事前署名Π＝［ｋ］Ｇを計算する。
Ｃ．鍵生成センターによってＺ＝ＳＭ３（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ｘＸ｜｜ｙＸ）を計算し、署名割当値Ｒ＝ＳＭ３（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｄ．鍵生成センターによって署名値の第２部分ｗ＝（ｋ−Ｒ＊ｍｓ）ｍｏｄｑを計算し、Ｑに対応する計算過程はＱ＝Π＋Ｘ−［Ｒ］Ｈである。
Ｅ．鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成する。
【００８２】
Ｓ５３０、署名端末によってＳ＝（ｗ＋ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）を計算し、署名キーペア（（Π、Ｘ）、Ｓ）を生成し、ＳＭ２アルゴリズムをＭＢとしてメッセージＭに署名するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＭ３（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ｘＸ｜｜ｙＸ）、Ｒ＝ＳＭ３（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．ｅ＝ＳＭ３（Ｒ｜｜Ｍ）を計算する。
Ｃ．ランダムに整数ｚを生成し、０＜ｚ＜ｑを満たす。
Ｄ．Λ＝［ｚ］Ｇを計算する。
Ｅ．ｒ＝（ｅ＋ｘΛ）ｍｏｄｑ、ｗ＝（ｚ−ｒ＊Ｓ）／（Ｓ＋１）ｍｏｄｑ、ＳＭ２署名Ｕ＝（ｒ、ｗ）を計算する。
Ｆ．ＩＤ署名（Ｕ＝（ｒ、ｗ）、（Π、Ｘ））を生成する。
【００８３】
Ｓ５４０、署名検証端末によってＩＤから生成されたメッセージＭに対する署名（Ｕ＝（ｒ、ｗ）、（Π、Ｘ））の正確性を検証するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＭ３（ＩＤ＿ＬＥＮ｜｜ＩＤ｜｜ａ｜｜ｂ｜｜ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ｘＸ｜｜ｙＸ）、Ｒ＝ＳＭ３（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．ｅ＝ＳＭ３（Ｒ｜｜Ｍ）を計算する。
Ｃ．Ｑ＝Π＋Ｘ−［Ｒ］Ｈを計算する。
Ｄ．ｔ＝（ｒ＋ｗ）ｍｏｄｑを計算する。
Ｅ．Ｖ＝［ｗ］Ｇ＋［ｔ］Ｑを計算する。
Ｆ．ｈ＝（ｅ＋ｘＶ）ｍｏｄｑを計算する。
Ｇ．ｈがｒと等しいかどうかを確認し、等しい場合、署名が正確であり、等しくない場合、署名が正確ではない。
【００８４】
本発明のデジタル署名方法は、メッセージＭに対して署名アルゴリズムＭＢで規定された署名演算を実行する過程では、元のＭ関連演算の代わりに、鍵生成センターによって実行された署名アルゴリズムＭＡ演算過程中計算された署名割当ＲとメッセージＭを関連し、署名検証過程では同様に元のＭを入力とする必要がある演算過程中でＲとＭの関連を入力とする。このような方法は、２つの署名アルゴリズムを組み合わせ過程中の攻撃を効果的に抵抗でき、署名方法のセキュリティを向上させる。
【００８５】
本発明は、さらに第６の具体的な実施例を提供し、その署名方法はＥＣＤＳＡ変形に基づく署名方法であり、具体的に、以下のステップを含む。
【００８６】
Ｓ６１０、署名端末によってランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算し、その後前記Ｘおよびその自身の識別ＩＤを鍵生成センターに送信する。
【００８７】
Ｓ６２０、鍵生成センターによってＥＣ−Ｓｃｈｎｏｒｒ署名アルゴリズムを署名方法ＭＡとして選択する。ＳＭ２標準で規定された楕円曲線Ｅ：Ｙ＾２＝Ｘ＾３＋ａ＊Ｘ＋ｂを選択し、次数ｑのポイントグループを巡回グループとし、ランダムに生成元Ｇを選択し、ランダムに整数ｍｓを生成し、０＜ｍｓ＜ｑを満たし、Ｈ＝［ｍｓ］Ｇを計算し、システムパラメータＰ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞とする。
【００８８】
鍵生成センターによってＩＤに対応する部分署名秘密鍵Ｔを生成するステップは、以下のとおりである。
Ａ．鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たす。
Ｂ．鍵生成センターによって事前署名Π＝［ｋ］Ｇ＋［ｎ］Ｇを計算する。
Ｃ．鍵生成センターによってＺ＝ＳＨＡ２５６（ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ＩＤ）を計算し、署名割当値Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算し、ただし、ｘＧ、ｙＧ等はＧ点等に対応するｘ軸、ｙ軸の値を示し、ＳＨＡ２５６（Ａ、Ｂ）はＳＨＡ２５６アルゴリズムを使用してＡとＢの関連値を計算する要約である。関連方式はＡ｜｜ＢまたはＢ｜｜Ａである。
Ｄ．鍵生成センターによって署名値の第２部分ｗ＝（ｋ＋Ｒ＊ｍｓ）ｍｏｄｑを計算し、Ｑに対応する計算過程はＱ＝Π＋［Ｒ］Ｈである。
Ｅ．鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成する。
【００８９】
Ｓ６３０、署名端末によってＳ＝（ｗ＋Ｒ＊ｎ）ｍｏｄｑを計算し、ＰＸ＝Πとし、署名キーペア（Π、Ｓ）を生成し、ＥＣＤＳＡの変形アルゴリズムをＭＢとしてメッセージＭに署名するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＨＡ２５６（ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ＩＤ）、Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．ランダムに整数ｚを生成し、０＜ｚ＜ｑを満たす。
Ｃ．Λ＝［ｚ］Ｇを計算する。
Ｄ．ｒ＝ｘΛ、ｅ＝ＳＨＡ２５６（ｒ｜｜｜｜Ｒ｜｜Ｍ）、ｗ＝（ｒ＊（Ｓ＋Ｒ＊ｎ）＋ｅ）／ｚｍｏｄｑ、ＥＣＤＳＡ署名Ｕ＝（ｒ、ｗ）を計算する。
Ｅ．ＩＤ署名（Ｕ＝（ｒ、ｗ）、Π）を生成する。
【００９０】
Ｓ６４０、署名検証端末によってＩＤから生成されたメッセージＭに対する署名（Ｕ＝（ｒ、ｗ）、Π）の正確性を検証するステップは、以下のとおりである。
Ａ．Ｚ＝ＳＨＡ２５６（ｘＧ｜｜ｙＧ｜｜ｘＱ｜｜ｙＱ｜｜ＩＤ）、Ｒ＝ＳＨＡ２５６（Ｚ、ｘΠ｜｜ｙΠ）ｍｏｄｑを計算する。
Ｂ．Ｑ＝［Ｒ］Π＋Ｈを計算する。
Ｃ．ｅ＝ＳＨＡ２５６（ｒ｜｜Ｒ｜｜Ｍ）を計算する。
Ｄ．ｕ＝ｅ／ｗｍｏｄｑ、ｖ＝ｒ／ｗを計算する。
Ｅ．Ｖ＝［ｕ］Ｇ＋［ｖ］Ｑを計算する。
Ｆ．ｈ＝ｘＶを計算する。
Ｇ．ｈがｒと等しいかどうかを確認し、等しい場合、署名が正確であり、等しくない場合、署名が正確ではない。
【００９１】
図４を参照すると、本発明は、前記デジタル署名方法に対応するデジタル署名装置を提供し、それは、
ランダムにｎとＸのキーペアを生成し、その識別ＩＤおよびＸを前記鍵生成センターに送信するための生成送信ユニット１０と、
鍵生成センターによって生成された前記署名端末の識別ＩＤに対応する部分署名秘密鍵Ｔ＝（Π、ｗ）を受信し、ただし、前記（Π、ｗ）は鍵生成センターによってデジタル署名方法ＭＡを実行し前記ＩＤに署名して得られた署名値であり、前記鍵生成センターはランダムに署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）を生成し、事前署名Πを生成し、その後少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、鍵生成センターはＰを暗号化システムの公開パラメータとする受信ユニット２０と、
前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出するための算出ユニット３０と、
Ｓを署名秘密鍵としてデジタル署名方法ＭＢを実行しメッセージＭに署名して、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対する署名値として署名検証端末に送信し、またはＵをメッセージＭに対する署名値として署名検証端末に送信し、ＰＸを公開し、ただし、メッセージＭに署名する過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用する署名送信ユニット４０と、
前記署名検証端末からメッセージＭに対する署名を署名検証し、ただし、前記署名検証端末はＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢの署名検証過程に従いＵが公開鍵Ｑに対応する秘密キーペアＭの有効署名であるかどうかを検証し、ただし、署名検証過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用する署名検証ユニット５０とを含む。
【００９２】
前記デジタル署名方法ＭＡは離散対数問題に基づく署名方法であり、前記鍵生成センターは離散対数問題に基づいて構築され、その選択次数はｑの巡回グループの生成元Ｇとグループ中の１つのランダム要素［ｏ］Ｇであり、ただし、［ｏ］Ｇはｏ個のＧが巡回グループの演算ルールに従いｏ回乗算演算されることを示し、前記署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）中のｍｓは鍵生成センターによってランダムに生成された整数ｍｓであり、０＜ｍｓ＜ｑを満たし、前記Ｐ＝＜Ｇ、Ｈ＝［ｍｓ］Ｇ＞とする。
【００９３】
本実施例では、前記デジタル署名装置は、復号化ユニット６０をさらに含み、前記復号化ユニット６０は、署名端末が前記ｎを使用し前記鍵生成センターによって標準の非対称暗号化アルゴリズムで暗号化されたｗを含む情報を復号化するために用いられ、ただし、前記標準の非対称暗号化アルゴリズムでｗを含む情報を暗号化するときに、使用された暗号化公開鍵はＸである。
【００９４】
図５を参照すると、本実施例では、前記生成送信ユニット１０は、
ランダムに整数ｎを生成し、０＜ｎ＜ｑを満たし、Ｘ＝［ｎ］Ｇを計算するためのものを含む。
【００９５】
図６を参照すると、本実施例では、前記受信ユニット２０は、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たし、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報Ｉには巡回グループの生成情報、Ｇ、Ｈ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行する第１生成ｋモジュール２０１と、
鍵生成センターによって事前署名Π＝［ｋ］Ｇ±［ｎ］Ｇを計算するための第１計算Πモジュール２０２と、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）を計算し、他の情報ＡにはＨが含まれる第１計算Ｒモジュール２０３と、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算するための第１計算ｗモジュール２０４と、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成するための第１生成モジュール２０５と、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するための第１受信モジュール２０６と、を含む。
【００９６】
前記算出ユニット３０は、第１計算生成モジュールを含み、ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±［Ｒ］Ｈであり、ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝Π、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］Π±Ｈである。
【００９７】
図７を参照すると、別の実施例では、前記受信ユニット２０は、
鍵生成センターによってランダムに整数ｋを生成し、０＜ｋ＜ｑを満たし、またはｋ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑを算出し、他の情報ＩにはＨ、Ｘが含まれ、Ｆ操作はハッシュ演算または文字列連結であり、ただし、ＨＡＳＨ（Ｆ（ＩＤ、他の情報Ι）、ｍｓ）ｍｏｄｑはＦ（ＩＤ、他の情報Ι）とｍｓの連結値を要約計算し、連結順序はＦ（ＩＤ、他の情報Ι）｜｜ｍｓまたはｍｓ｜｜Ｆ（ＩＤ、他の情報Ι）、またはｍｓをキーペアＦ（ＩＤ、他の情報Ι）として使用しＨＭＡＣ演算を実行する第２生成ｋモジュール２１１と、
鍵生成センターによって事前署名Π＝［ｋ］Ｇを計算するための第２計算Πモジュール２１２と、
鍵生成センターによって署名割当Ｒ＝ＨＡＳＨ（Ｆ（ＩＤ、他の情報Α）、Π）ｍｏｄｑを計算し、他の情報ＡにはＸ、Ｈが含まれる第２計算Ｒモジュール２１３と、
鍵生成センターによって署名値の第２部分ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑまたは（Ｒ＊ｋ±ｍｓ）ｍｏｄｑを計算するための第２計算ｗモジュール２１４と、
鍵生成センターによって部分署名秘密鍵Ｔ＝（Π、ｗ）を生成するための第２生成モジュール２１５と、
前記部分署名秘密鍵Ｔ＝（Π、ｗ）を受信するための第２受信モジュール２１６と、を含む。
【００９８】
前記算出ユニット３０は、第２計算生成モジュールを含み、ｗ＝（ｋ±Ｒ＊ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝Π±Ｘ±［Ｒ］Ｈであり、ｗ＝（Ｒ＊ｋ±ｍｓ）ｍｏｄｑである場合、Ｓ＝（ｗ±Ｒ＊ｎ）ｍｏｄｑ、ＰＸ＝（Π、Ｘ）、署名キーペア（ＰＸ、Ｓ）を生成し、対応の公開鍵Ｑ＝［Ｒ］（Π±Ｘ）±Ｈである。
【００９９】
本発明のデジタル署名装置は、メッセージＭに対して署名アルゴリズムＭＢで規定された署名演算を実行する過程では、元のＭ関連演算の代わりに、鍵生成センターによって実行された署名アルゴリズムＭＡ演算過程中計算された署名割当ＲとメッセージＭを関連し、署名検証過程では同様に元のＭを入力とする必要がある演算過程中でＲとＭの関連を入力とする。このような方法は、２つの署名アルゴリズムを組み合わせ過程中の攻撃を効果的に抵抗でき、署名方法のセキュリティを向上させる。
【０１００】
図８を参照すると、本発明の実施例は、さらに前記デジタル署名方法に対応するデジタル署名システムを提供し、それは、署名端末１００、鍵生成センター２００および署名検証端末３００を含み、
前記署名端末１００ランダムにｎとＸのキーペアを生成し、ＩＤおよびＸを前記鍵生成センター２００に送信し、
前記鍵生成センター２００によって予め設定されたデジタル署名方法ＭＡで識別ＩＤに署名し、識別ＩＤに署名し、その署名過程には、前記鍵生成センター２００によってランダムに署名公開鍵と秘密鍵のペア（Ｐ、ｍｓ）を生成し、事前署名Πを生成し、少なくともΠ、ＩＤを含むハッシュダイジェストを署名割当Ｒとして生成し、最後に署名値の第２部分ｗを生成し、両部分を含む署名値（Π、ｗ）を得て、前記署名値を部分署名秘密鍵Ｔ＝（Π、ｗ）とし、前記部分署名秘密鍵Ｔを前記署名端末１００に送信し、鍵生成センター２００はまたＰを暗号化システムの公開パラメータとすることが含まれ、
前記署名端末１００は前記Ｐ、ＩＤ、Ｔ、ｎとＸを使用して署名キーペア（ＰＸ、Ｓ）を算出し、Ｓを署名秘密鍵としてデジタル署名方法ＭＢでメッセージＭに署名し、署名値Ｕを生成し、（Ｕ、ＰＸ）をメッセージＭに対するＩＤ署名値として署名検証端末３００に送信し、またはＵをメッセージＭに対する署名値として署名検証端末３００に送信し、ＰＸを公開し、ただし、メッセージＭに対する署名の過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用し、
前記署名検証端末３００はメッセージＭに対する署名を署名検証し、その署名検証過程には、ＰＸを取得し、前記Ｐ、ＩＤ、ＰＸからＳに対応する公開鍵Ｑを計算し、前記デジタル署名方法ＭＢの署名検証過程に従いＵが公開鍵Ｑに対応する秘密キーペアＭの有効署名であるかどうかを検証し、ただし、署名検証過程中にＭを入力とする必要がある演算では、ＲとＭの関連を入力として使用する。
【０１０１】
本発明のデジタル署名システムは、メッセージＭに対して署名アルゴリズムＭＢで規定された署名演算を実行する過程では、元のＭ関連演算の代わりに、鍵生成センターによって実行された署名アルゴリズムＭＡ演算過程中計算された署名割当ＲとメッセージＭを関連し、署名検証過程では同様に元のＭを入力とする必要がある演算過程中でＲとＭの関連を入力とする。このような方法は、２つの署名アルゴリズムを組み合わせ過程中の攻撃を効果的に抵抗でき、署名方法のセキュリティを向上させる。
【０１０２】
上記の説明は、本発明の好ましい実施例に過ぎず、本発明の範囲を限定するものではなく、本発明の明細書および図面に基づいてなさられた等価構造や等価変更、あるいは他の相関技術分野での直接または間接的な応用は、すべて本発明の保護範囲に含まれることは明らかである。
【図１】
2020532928.tif 000003
【図２】
2020532928.tif 000004
【図３】
2020532928.tif 000005
【図４】
2020532928.tif 000006
【図５】
2020532928.tif 000007
【図６】
2020532928.tif 000008
【図７】
2020532928.tif 000009
【図８】
2020532928.tif 000010
【国際調査報告】
2020532928.tif 000011
2020532928.tif 000012
2020532928.tif 000013
2020532928.tif 000014