(57)【要約】【課題】検証鍵、メッセージ、署名、署名鍵のすべてが群要素であって、選択メッセージ攻撃に対する安全性を有する群構造維持署名方式を提供する。【解決手段】本発明の署名・検証システムでは、署名装置が、メッセージＭに対する署名Ｓ１を、選択メッセージ攻撃に対する安全性を有する群構造維持署名方式をワンタイム署名方式として利用して生成する。そして、署名装置自身がランダムに生成できるワンタイム検証鍵に対する署名Ｓ２を、ランダムメッセージ攻撃に対する安全性を有する署名方式で生成する。検証装置は、署名Ｓ１，Ｓ２を検証する。【選択図】図１
2016092639.tif 000002
【特許請求の範囲】
【請求項１】
署名装置と検証装置とを有する署名・検証システムであって、
Ｇ１，Ｇ２，ＧＴを位数ｐの群、ｅをＧ１×Ｇ２→ＧＴのペアリング、ｇ１を群Ｇ１の任意の生成元、ｇ２を群Ｇ２の任意の生成元、Ｋを１以上のあらかじめ定めた整数、ｋを１以上Ｋ以下の整数、ｍ１，…，ｍＫを群Ｇ１の元、メッセージＭをＭ＝（ｍ１，…，ｍＫ）、＾をべき乗を示す記号、ｕ，ｆ０２，…，ｆＫ２，ｆ０３，…，ｆＫ３を１以上ｐ−１以下からランダムに選択した整数、Ｕ１＝ｇ１＾ｕ，Ｕ２＝ｇ２＾ｕ，（Ｆ１０２，…，Ｆ１Ｋ２）＝（ｇ１＾ｆ０２，…，ｇ１＾ｆＫ２），（Ｆ１０３，…，Ｆ１Ｋ３）＝（ｇ１＾ｆ０３，…，ｇ１＾ｆＫ３），（Ｆ２０２，…，Ｆ２Ｋ２）＝（ｇ２＾ｆ０２，…，ｇ２＾ｆＫ２），（Ｆ２０３，…，Ｆ２Ｋ３）＝（ｇ２＾ｆ０３，…，ｇ２＾ｆＫ３）、〜を群Ｇ１の元のｇ１を底とする対数の値と群Ｇ２の元のｇ２を底とする対数の値が等しいことを示す記号とし、
前記署名装置は、
Ｖ１〜Ｖ２，Ｖ１’〜Ｖ２’，Ｈ１〜Ｈ２が成り立つように群Ｇ１の元Ｖ１，Ｖ１’，Ｈ１と群Ｇ２の元Ｖ２，Ｖ２’，Ｈ２を定め、０以上ｐ−１以下の整数の中からランダムにａ，ｂ，αを選び、1以上ｐ−１以下の整数の中からランダムにρを選び、Ｒ２＝Ｖ２（Ｖ２’）ａとし、
ｖｋ１＝ｇ２ｂ，ｖｋ２＝ｇ２ａ，ｖｋ３＝ｇ２ｂａ，ｖｋ４＝Ｒ２，ｖｋ５＝Ｒ２ｂ，ｖｋ６＝Ｈ２，ｖｋ７＝ｇ１ρ，ｖｋ８＝ｇ２αｂ／ρを求め、
ｖｋ１，ｖｋ２，ｖｋ３，ｖｋ４，ｖｋ５，ｖｋ６，ｖｋ７，ｖｋ８を含む検証鍵ｖｋと、ｖｋ，ｇ１α，ｇ１ｂ，Ｖ１，Ｖ１’を含む署名鍵ｓｋを生成する鍵生成部と、
０以上ｐ−１以下の整数の中からランダムにｖ，ａ１，…，ａＫを選び、
（Ｎ２０１，Ｎ２０２，Ｎ２００）＝（Ｆ２０２＾ｖ，Ｆ２０３＾ｖ，Ｕ２＾ｖ）と
ｉ＝１，…，Ｋについて
（Ｎ２ｉ１，Ｎ２ｉ２，Ｎ２ｉ０）＝（Ｆ２ｉ２＾ａｉ，Ｆ２ｉ３＾ａｉ，Ｕ２＾ａｉ）
を計算し、
（Ｎ２０１，Ｎ２０２，Ｎ２００），…，（Ｎ２Ｋ１，Ｎ２Ｋ２，Ｎ２Ｋ０）を含むワンタイム検証鍵ｏｐｋと、ｖ，ａ１，…，ａＫを含むワンタイム署名鍵ｏｓｋを生成するワンタイム鍵生成部と、
メッセージＭを取得し、前記ワンタイム署名鍵ｏｓｋを用いて、選択メッセージ攻撃に対する安全性を有するあらかじめ定めた署名方式にしたがって、メッセージＭに対する署名であって群Ｇ１の元または群Ｇ２の元のみを含む署名Ｓ１を生成するメッセージ署名生成部と、
０以上ｐ−１以下の整数の中からランダムにｒ１、ｒ２、ｚを選び、
ｒ＝ｒ１＋ｒ２  （ｍｏｄ  ｐ）
を求め、
【数１１】
2016092639.tif 000013
σ１＝ｇ１αＶ１ｒ
σ２＝（Ｖ１’）ｒｇ１−ｚ
σ３＝（ｇ１ｂ）ｚ
σ４＝（ｇ１ｂ）＾ｒ２
σ５＝ｇ１＾ｒ１
を求め、σ０，σ１，σ２，σ３，σ４，σ５を含む署名Ｓ２を生成するワンタイム署名生成部
を備え、検証鍵ｖｋとワンタイム検証鍵ｏｐｋと署名Ｓ１，Ｓ２を出力し、
前記検証装置は、
ワンタイム検証鍵ｏｐｋと署名Ｓ１とメッセージＭを取得し、当該ワンタイム検証鍵ｏｐｋを用いて、前記あらかじめ定めた署名方式にしたがって当該署名Ｓ１を検証するメッセージ署名検証部と
検証鍵ｖｋと署名Ｓ２とワンタイム検証鍵ｏｐｋを取得し、
【数１２】
2016092639.tif 000014
ｅ（σ１，ｖｋ１）ｅ（σ２，ｖｋ３）ｅ（σ３，ｖｋ２）＝ｅ（σ４，ｖｋ４）ｅ（σ５，ｖｋ５）ｅ（ｖｋ７，ｖｋ８）
ｅ（Ｆ１ｉ２，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ１）  （ただし、ｉ＝０，…，Ｋ）
ｅ（Ｆ１ｉ３，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ２）  （ただし、ｉ＝０，…，Ｋ）
のすべてが成り立つことを確認することで当該署名Ｓ２を検証するワンタイム署名検証部、
を備える
署名・検証システム。
【請求項２】
請求項１記載の署名・検証システムであって、
前記メッセージ署名生成部は、
【数１３】
2016092639.tif 000015
のように、署名Ｓ１を求め、
前記メッセージ署名検証部は、
取得したメッセージＭに含まれるｍ１，…，ｍＫと取得した署名Ｓ１が群Ｇ１の元であること、および
【数１４】
2016092639.tif 000016
であることを確認する
ことを特徴とする署名・検証システム。
【請求項３】
検証装置ともに署名・検証システムを構成する署名装置であって、
Ｇ１，Ｇ２，ＧＴを位数ｐの群、ｅをＧ１×Ｇ２→ＧＴのペアリング、ｇ１を群Ｇ１の任意の生成元、ｇ２を群Ｇ２の任意の生成元、Ｋを１以上のあらかじめ定めた整数、ｋを１以上Ｋ以下の整数、ｍ１，…，ｍＫを群Ｇ１の元、メッセージＭをＭ＝（ｍ１，…，ｍＫ）、＾をべき乗を示す記号、ｕ，ｆ０２，…，ｆＫ２，ｆ０３，…，ｆＫ３を１以上ｐ−１以下からランダムに選択した整数、Ｕ１＝ｇ１＾ｕ，Ｕ２＝ｇ２＾ｕ，（Ｆ１０２，…，Ｆ１Ｋ２）＝（ｇ１＾ｆ０２，…，ｇ１＾ｆＫ２），（Ｆ１０３，…，Ｆ１Ｋ３）＝（ｇ１＾ｆ０３，…，ｇ１＾ｆＫ３），（Ｆ２０２，…，Ｆ２Ｋ２）＝（ｇ２＾ｆ０２，…，ｇ２＾ｆＫ２），（Ｆ２０３，…，Ｆ２Ｋ３）＝（ｇ２＾ｆ０３，…，ｇ２＾ｆＫ３）、〜を群Ｇ１の元のｇ１を底とする対数の値と群Ｇ２の元のｇ２を底とする対数の値が等しいことを示す記号とし、
前記署名装置は、鍵生成部、ワンタイム鍵生成部、メッセージ署名生成部、ワンタイム署名生成部を備え、
前記鍵生成部は、
Ｖ１〜Ｖ２，Ｖ１’〜Ｖ２’，Ｈ１〜Ｈ２が成り立つように群Ｇ１の元Ｖ１，Ｖ１’，Ｈ１と群Ｇ２の元Ｖ２，Ｖ２’，Ｈ２を定め、０以上ｐ−１以下の整数の中からランダムにａ，ｂ，αを選び、1以上ｐ−１以下の整数の中からランダムにρを選び、Ｒ２＝Ｖ２（Ｖ２’）ａとし、
ｖｋ１＝ｇ２ｂ，ｖｋ２＝ｇ２ａ，ｖｋ３＝ｇ２ｂａ，ｖｋ４＝Ｒ２，ｖｋ５＝Ｒ２ｂ，ｖｋ６＝Ｈ２，ｖｋ７＝ｇ１ρ，ｖｋ８＝ｇ２αｂ／ρを求め、
ｖｋ１，ｖｋ２，ｖｋ３，ｖｋ４，ｖｋ５，ｖｋ６，ｖｋ７，ｖｋ８を含む検証鍵ｖｋと、ｖｋ，ｇ１α，ｇ１ｂ，Ｖ１，Ｖ１’を含む署名鍵ｓｋを生成し、
前記ワンタイム鍵生成部は、
０以上ｐ−１以下の整数の中からランダムにｖ，ａ１，…，ａＫを選び、
（Ｎ２０１，Ｎ２０２，Ｎ２００）＝（Ｆ２０２＾ｖ，Ｆ２０３＾ｖ，Ｕ２＾ｖ）と
ｉ＝１，…，Ｋについて
（Ｎ２ｉ１，Ｎ２ｉ２，Ｎ２ｉ０）＝（Ｆ２ｉ２＾ａｉ，Ｆ２ｉ３＾ａｉ，Ｕ２＾ａｉ）
を計算し、
（Ｎ２０１，Ｎ２０２，Ｎ２００），…，（Ｎ２Ｋ１，Ｎ２Ｋ２，Ｎ２Ｋ０）を含むワンタイム検証鍵ｏｐｋと、ｖ，ａ１，…，ａＫを含むワンタイム署名鍵ｏｓｋを生成し、
前記メッセージ署名生成部は、
メッセージＭを取得し、前記ワンタイム署名鍵ｏｓｋを用いて、選択メッセージ攻撃に対する安全性を有するあらかじめ定めた署名方式にしたがって、メッセージＭに対する署名であって群Ｇ１の元または群Ｇ２の元のみを含む署名Ｓ１を生成し、
ワンタイム署名生成部は、
０以上ｐ−１以下の整数の中からランダムにｒ１、ｒ２、ｚを選び、
ｒ＝ｒ１＋ｒ２  （ｍｏｄ  ｐ）
を求め、
【数１５】
2016092639.tif 000017
σ１＝ｇ１αＶ１ｒ
σ２＝（Ｖ１’）ｒｇ１−ｚ
σ３＝（ｇ１ｂ）ｚ
σ４＝（ｇ１ｂ）＾ｒ２
σ５＝ｇ１＾ｒ１
を求め、σ０，σ１，σ２，σ３，σ４，σ５を含む署名Ｓ２を生成する
ことを特徴とする署名装置。
【請求項４】
請求項３記載の署名装置であって、
前記メッセージ署名生成部は、
【数１６】
2016092639.tif 000018
のように、署名Ｓ１を求める
ことを特徴とする署名装置。
【請求項５】
検証鍵ｖｋ、ワンタイム検証鍵ｏｐｋ、署名Ｓ１，Ｓ２、メッセージＭを入力とし、署名Ｓ１，Ｓ２を検証する検証装置であって、
Ｇ１，Ｇ２，ＧＴを位数ｐの群、ｅをＧ１×Ｇ２→ＧＴのペアリング、ｇ１を群Ｇ１の任意の生成元、ｇ２を群Ｇ２の任意の生成元、Ｋを１以上のあらかじめ定めた整数、ｋを１以上Ｋ以下の整数、ｍ１，…，ｍＫを群Ｇ１の元、メッセージＭをＭ＝（ｍ１，…，ｍＫ）、＾をべき乗を示す記号、ｕ，ｆ０２，…，ｆＫ２，ｆ０３，…，ｆＫ３を１以上ｐ−１以下からランダムに選択した整数、Ｕ１＝ｇ１＾ｕ，Ｕ２＝ｇ２＾ｕ，（Ｆ１０２，…，Ｆ１Ｋ２）＝（ｇ１＾ｆ０２，…，ｇ１＾ｆＫ２），（Ｆ１０３，…，Ｆ１Ｋ３）＝（ｇ１＾ｆ０３，…，ｇ１＾ｆＫ３），（Ｆ２０２，…，Ｆ２Ｋ２）＝（ｇ２＾ｆ０２，…，ｇ２＾ｆＫ２），（Ｆ２０３，…，Ｆ２Ｋ３）＝（ｇ２＾ｆ０３，…，ｇ２＾ｆＫ３）、〜を群Ｇ１の元のｇ１を底とする対数の値と群Ｇ２の元のｇ２を底とする対数の値が等しいことを示す記号とし、
群Ｇ１の元Ｖ１，Ｖ１’，Ｈ１と群Ｇ２の元Ｖ２，Ｖ２’，Ｈ２はＶ１〜Ｖ２，Ｖ１’〜Ｖ２’，Ｈ１〜Ｈ２が成り立ち、ａ，ｂ，αは０以上ｐ−１以下の整数、ρは1以上ｐ−１以下の整数、Ｒ２＝Ｖ２（Ｖ２’）ａ、ｖｋ１＝ｇ２ｂ，ｖｋ２＝ｇ２ａ，ｖｋ３＝ｇ２ｂａ，ｖｋ４＝Ｒ２，ｖｋ５＝Ｒ２ｂ，ｖｋ６＝Ｈ２，ｖｋ７＝ｇ１ρ，ｖｋ８＝ｇ２αｂ／ρであり、
ｖ，ａ１，…，ａＫは０以上ｐ−１以下の整数、
（Ｎ２０１，Ｎ２０２，Ｎ２００）＝（Ｆ２０２＾ｖ，Ｆ２０３＾ｖ，Ｕ２＾ｖ）、
ｉ＝１，…，Ｋについて
（Ｎ２ｉ１，Ｎ２ｉ２，Ｎ２ｉ０）＝（Ｆ２ｉ２＾ａｉ，Ｆ２ｉ３＾ａｉ，Ｕ２＾ａｉ）
であり、
ｒ１、ｒ２、ｚは０以上ｐ−１以下の整数、ｒ＝ｒ１＋ｒ２  （ｍｏｄ  ｐ）、
【数１７】
2016092639.tif 000019
σ１＝ｇ１αＶ１ｒ
σ２＝（Ｖ１’）ｒｇ１−ｚ
σ３＝（ｇ１ｂ）ｚ
σ４＝（ｇ１ｂ）＾ｒ２
σ５＝ｇ１＾ｒ１
であり、
検証鍵ｖｋは、ｖｋ１，ｖｋ２，ｖｋ３，ｖｋ４，ｖｋ５，ｖｋ６，ｖｋ７，ｖｋ８を含み、
ワンタイム検証鍵ｏｐｋは、（Ｎ２０１，Ｎ２０２，Ｎ２００），…，（Ｎ２Ｋ１，Ｎ２Ｋ２，Ｎ２Ｋ０）を含み、
署名Ｓ１は、前記ワンタイム署名鍵ｏｓｋを用いて、選択メッセージ攻撃に対する安全性を有するあらかじめ定めた署名方式にしたがって、生成されたメッセージＭに対する署名であって群Ｇ１の元または群Ｇ２の元のみを含み、
署名Ｓ２はσ０，σ１，σ２，σ３，σ４，σ５を含み、
前記検証装置は、メッセージ署名検証部とワンタイム署名検証部を備え、
前記メッセージ署名検証部は、
ワンタイム検証鍵ｏｐｋと署名Ｓ１とメッセージＭを取得し、当該ワンタイム検証鍵ｏｐｋを用いて、前記あらかじめ定めた署名方式にしたがって当該署名Ｓ１を検証し、
前記ワンタイム署名検証部は、
検証鍵ｖｋと署名Ｓ２とワンタイム検証鍵ｏｐｋを取得し、
【数１８】
2016092639.tif 000020
ｅ（σ１，ｖｋ１）ｅ（σ２，ｖｋ３）ｅ（σ３，ｖｋ２）＝ｅ（σ４，ｖｋ４）ｅ（σ５，ｖｋ５）ｅ（ｖｋ７，ｖｋ８）
ｅ（Ｆ１ｉ２，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ１）  （ただし、ｉ＝０，…，Ｋ）
ｅ（Ｆ１ｉ３，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ２）  （ただし、ｉ＝０，…，Ｋ）
のすべてが成り立つことを確認することで当該署名Ｓ２を検証する
ことを特徴とする検証装置。
【請求項６】
請求項５記載の検証装置であって、
前記署名Ｓ１は
【数１９】
2016092639.tif 000021
のように、求められたものであり、
前記メッセージ署名検証部は、
取得したメッセージＭに含まれるｍ１，…，ｍＫと取得した署名Ｓ１が群Ｇ１の元であること、および
【数２０】
2016092639.tif 000022
であることを確認する
ことを特徴とする検証装置。
【請求項７】
署名装置と検証装置とを用いた署名・検証方法であって、
Ｇ１，Ｇ２，ＧＴを位数ｐの群、ｅをＧ１×Ｇ２→ＧＴのペアリング、ｇ１を群Ｇ１の任意の生成元、ｇ２を群Ｇ２の任意の生成元、Ｋを１以上のあらかじめ定めた整数、ｋを１以上Ｋ以下の整数、ｍ１，…，ｍＫを群Ｇ１の元、メッセージＭをＭ＝（ｍ１，…，ｍＫ）、＾をべき乗を示す記号、ｕ，ｆ０２，…，ｆＫ２，ｆ０３，…，ｆＫ３を１以上ｐ−１以下からランダムに選択した整数、Ｕ１＝ｇ１＾ｕ，Ｕ２＝ｇ２＾ｕ，（Ｆ１０２，…，Ｆ１Ｋ２）＝（ｇ１＾ｆ０２，…，ｇ１＾ｆＫ２），（Ｆ１０３，…，Ｆ１Ｋ３）＝（ｇ１＾ｆ０３，…，ｇ１＾ｆＫ３），（Ｆ２０２，…，Ｆ２Ｋ２）＝（ｇ２＾ｆ０２，…，ｇ２＾ｆＫ２），（Ｆ２０３，…，Ｆ２Ｋ３）＝（ｇ２＾ｆ０３，…，ｇ２＾ｆＫ３）、〜を群Ｇ１の元のｇ１を底とする対数の値と群Ｇ２の元のｇ２を底とする対数の値が等しいことを示す記号とし、
前記署名装置が、
Ｖ１〜Ｖ２，Ｖ１’〜Ｖ２’，Ｈ１〜Ｈ２が成り立つように群Ｇ１の元Ｖ１，Ｖ１’，Ｈ１と群Ｇ２の元Ｖ２，Ｖ２’，Ｈ２を定め、０以上ｐ−１以下の整数の中からランダムにａ，ｂ，αを選び、1以上ｐ−１以下の整数の中からランダムにρを選び、Ｒ２＝Ｖ２（Ｖ２’）ａとし、
ｖｋ１＝ｇ２ｂ，ｖｋ２＝ｇ２ａ，ｖｋ３＝ｇ２ｂａ，ｖｋ４＝Ｒ２，ｖｋ５＝Ｒ２ｂ，ｖｋ６＝Ｈ２，ｖｋ７＝ｇ１ρ，ｖｋ８＝ｇ２αｂ／ρを求め、
ｖｋ１，ｖｋ２，ｖｋ３，ｖｋ４，ｖｋ５，ｖｋ６，ｖｋ７，ｖｋ８を含む検証鍵ｖｋと、ｖｋ，ｇ１α，ｇ１ｂ，Ｖ１，Ｖ１’を含む署名鍵ｓｋを生成する鍵生成ステップと、
０以上ｐ−１以下の整数の中からランダムにｖ，ａ１，…，ａＫを選び、
（Ｎ２０１，Ｎ２０２，Ｎ２００）＝（Ｆ２０２＾ｖ，Ｆ２０３＾ｖ，Ｕ２＾ｖ）と
ｉ＝１，…，Ｋについて
（Ｎ２ｉ１，Ｎ２ｉ２，Ｎ２ｉ０）＝（Ｆ２ｉ２＾ａｉ，Ｆ２ｉ３＾ａｉ，Ｕ２＾ａｉ）
を計算し、
（Ｎ２０１，Ｎ２０２，Ｎ２００），…，（Ｎ２Ｋ１，Ｎ２Ｋ２，Ｎ２Ｋ０）を含むワンタイム検証鍵ｏｐｋと、ｖ，ａ１，…，ａＫを含むワンタイム署名鍵ｏｓｋを生成するワンタイム鍵生成ステップと、
メッセージＭを取得し、前記ワンタイム署名鍵ｏｓｋを用いて、選択メッセージ攻撃に対する安全性を有するあらかじめ定めた署名方式にしたがって、メッセージＭに対する署名であって群Ｇ１の元または群Ｇ２の元のみを含む署名Ｓ１を生成するメッセージ署名生成ステップと、
０以上ｐ−１以下の整数の中からランダムにｒ１、ｒ２、ｚを選び、
ｒ＝ｒ１＋ｒ２  （ｍｏｄ  ｐ）
を求め、
【数２１】
2016092639.tif 000023
σ１＝ｇ１αＶ１ｒ
σ２＝（Ｖ１’）ｒｇ１−ｚ
σ３＝（ｇ１ｂ）ｚ
σ４＝（ｇ１ｂ）＾ｒ２
σ５＝ｇ１＾ｒ１
を求め、σ０，σ１，σ２，σ３，σ４，σ５を含む署名Ｓ２を生成するワンタイム署名生成ステップ
を実行して、検証鍵ｖｋとワンタイム検証鍵ｏｐｋと署名Ｓ１，Ｓ２を出力し、
前記検証装置が、
ワンタイム検証鍵ｏｐｋと署名Ｓ１とメッセージＭを取得し、当該ワンタイム検証鍵ｏｐｋを用いて、前記あらかじめ定めた署名方式にしたがって当該署名Ｓ１を検証するメッセージ署名検証ステップと
検証鍵ｖｋと署名Ｓ２とワンタイム検証鍵ｏｐｋを取得し、
【数２２】
2016092639.tif 000024
ｅ（σ１，ｖｋ１）ｅ（σ２，ｖｋ３）ｅ（σ３，ｖｋ２）＝ｅ（σ４，ｖｋ４）ｅ（σ５，ｖｋ５）ｅ（ｖｋ７，ｖｋ８）
ｅ（Ｆ１ｉ２，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ１）  （ただし、ｉ＝０，…，Ｋ）
ｅ（Ｆ１ｉ３，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ２）  （ただし、ｉ＝０，…，Ｋ）
のすべてが成り立つことを確認することで当該署名Ｓ２を検証するワンタイム署名検証ステップ、
を実行する
署名・検証方法。
【請求項８】
請求項３もしくは４記載の署名装置、または請求項５もしくは６記載の検証装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は群構造維持署名方式を用いた署名・検証システム、署名装置、検証装置、署名・検証方法、プログラムに関する。
【背景技術】
【０００２】
通常の署名鍵は整数の要素を含んでいる。そして、整数の要素を含んでいる署名鍵を知っていることを示す非対話証明としては、非特許文献１の技術が知られている。しかし、署名鍵を１ビットごとに分解して証明する方法のため、非常に効率が悪い。そこで本発明の対象を、群構造維持署名方式とする。
【０００３】
群構造維持署名方式とは、検証鍵、署名対象のメッセージ、署名が群の要素のみで構成されていて、検証関数が群演算とペアリング積の演算のみから構成されているディジタル署名方式である。Groth-Sahai非対話証明系は、群の要素がペアリング積で表された関数式を満たすことを、それらの群要素を秘匿したまま証明できる技術である。群構造維持署名方式であれば、Groth-Sahai非対話証明系を用いることによって、群要素からなる構成要素、すなわち、検証鍵、メッセージ、署名の任意の要素を秘匿したまま、それら秘匿された要素がペアリング積から成る検証式を満たすことを容易に証明できる。
【０００４】
メッセージを除く要素である検証鍵、署名、署名鍵が群要素であるディジタル署名方式として、非特許文献２に示された署名方式が知られている。この方式に基づいてメッセージも群要素にし、検証鍵、メッセージ、署名、署名鍵のすべてを群要素にしたディジタル署名方式として、非特許文献３に示された署名方式が知られている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Sarah Meiklejohn, “An Extension of the Groth-Sahai Proof System”, ［平成２６年１０月２２日検索］、インターネット<http://cseweb.ucsd.edu/~smeiklejohn/files/mastersthesis.pdf>．
【非特許文献２】Dennis Hofheinz, Tibor Jager, and Edward Knapp, “Waters Signatures with Optimal Security Reduction”, ［平成２６年１０月２２日検索］、インターネット<http://eprint.iacr.org/2011/703.pdf>．
【非特許文献３】Masayuki Abe, Melissa Chase, Bernardo David, Markulf Kohlweiss, Ryo Nishimaki, Miyako Ohkubo, “Constant-Size Structure-Preserving Signatures: Generic Constructions and Simple Assumptions”, ASIACRYPT 2012: 4-24.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献３のディジタル署名方式であれば、検証鍵、メッセージ、署名、署名鍵のすべてを秘匿したまま検証式が成り立つことをGroth-Sahai非対話証明で証明できる。つまり、通常の群構造維持署名方式では非対話証明が困難であった署名鍵も、非対話証明で効率的に示すことができる。しかしながら、非特許文献３に示された署名方式は、いわゆる拡張ランダムメッセージ攻撃に対してのみ潜在的偽造不可能であって、より望ましい適応選択メッセージ攻撃に対しての偽造不可能性は達成できていない（選択メッセージ攻撃に対する安全性を有していない）。
【０００７】
そこで、本発明は、検証鍵、メッセージ、署名、署名鍵のすべてが群要素であって、選択メッセージ攻撃に対する安全性を有する群構造維持署名方式を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の署名・検証システムは、署名装置と検証装置とを有する。まず、Ｇ１，Ｇ２，ＧＴを位数ｐの群、ｅをＧ１×Ｇ２→ＧＴのペアリング、ｇ１を群Ｇ１の任意の生成元、ｇ２を群Ｇ２の任意の生成元、Ｋを１以上のあらかじめ定めた整数、ｋを１以上Ｋ以下の整数、ｍ１，…，ｍＫを群Ｇ１の元、メッセージＭをＭ＝（ｍ１，…，ｍＫ）、＾をべき乗を示す記号、ｕ，ｆ０２，…，ｆＫ２，ｆ０３，…，ｆＫ３を１以上ｐ−１以下からランダムに選択した整数、Ｕ１＝ｇ１＾ｕ，Ｕ２＝ｇ２＾ｕ，（Ｆ１０２，…，Ｆ１Ｋ２）＝（ｇ１＾ｆ０２，…，ｇ１＾ｆＫ２），（Ｆ１０３，…，Ｆ１Ｋ３）＝（ｇ１＾ｆ０３，…，ｇ１＾ｆＫ３），（Ｆ２０２，…，Ｆ２Ｋ２）＝（ｇ２＾ｆ０２，…，ｇ２＾ｆＫ２），（Ｆ２０３，…，Ｆ２Ｋ３）＝（ｇ２＾ｆ０３，…，ｇ２＾ｆＫ３）、〜を群Ｇ１の元のｇ１を底とする対数の値と群Ｇ２の元のｇ２を底とする対数の値が等しいことを示す記号とする。
【０００９】
署名装置は、鍵生成部、ワンタイム鍵生成部、メッセージ署名生成部、ワンタイム署名生成部を備え、検証鍵ｖｋとワンタイム検証鍵ｏｐｋと署名Ｓ１，Ｓ２を出力する。検証装置は、メッセージ署名検証部とワンタイム署名検証部を備え、検証鍵ｖｋ、ワンタイム検証鍵ｏｐｋ、署名Ｓ１，Ｓ２とメッセージＭを取得して署名Ｓ１，Ｓ２を検証する。
【００１０】
鍵生成部は、Ｖ１〜Ｖ２，Ｖ１’〜Ｖ２’，Ｈ１〜Ｈ２が成り立つように群Ｇ１の元Ｖ１，Ｖ１’，Ｈ１と群Ｇ２の元Ｖ２，Ｖ２’，Ｈ２を定め、０以上ｐ−１以下の整数の中からランダムにａ，ｂ，αを選び、1以上ｐ−１以下の整数の中からランダムにρを選び、Ｒ２＝Ｖ２（Ｖ２’）ａとし、
ｖｋ１＝ｇ２ｂ，ｖｋ２＝ｇ２ａ，ｖｋ３＝ｇ２ｂａ，ｖｋ４＝Ｒ２，ｖｋ５＝Ｒ２ｂ，ｖｋ６＝Ｈ２，ｖｋ７＝ｇ１ρ，ｖｋ８＝ｇ２αｂ／ρを求め、
ｖｋ１，ｖｋ２，ｖｋ３，ｖｋ４，ｖｋ５，ｖｋ６，ｖｋ７，ｖｋ８を含む検証鍵ｖｋと、ｖｋ，ｇ１α，ｇ１ｂ，Ｖ１，Ｖ１’を含む署名鍵ｓｋを生成する。
【００１１】
ワンタイム鍵生成部は、０以上ｐ−１以下の整数の中からランダムにｖ，ａ１，…，ａＫを選び、
（Ｎ２０１，Ｎ２０２，Ｎ２００）＝（Ｆ２０２＾ｖ，Ｆ２０３＾ｖ，Ｕ２＾ｖ）と
ｉ＝１，…，Ｋについて
（Ｎ２ｉ１，Ｎ２ｉ２，Ｎ２ｉ０）＝（Ｆ２ｉ２＾ａｉ，Ｆ２ｉ３＾ａｉ，Ｕ２＾ａｉ）
を計算し、
（Ｎ２０１，Ｎ２０２，Ｎ２００），…，（Ｎ２Ｋ１，Ｎ２Ｋ２，Ｎ２Ｋ０）を含むワンタイム検証鍵ｏｐｋと、ｖ，ａ１，…，ａＫを含むワンタイム署名鍵ｏｓｋを生成する。
【００１２】
メッセージ署名生成部は、メッセージＭを取得し、ワンタイム署名鍵ｏｓｋを用いて、選択メッセージ攻撃に対する安全性を有するあらかじめ定めた署名方式にしたがってメッセージＭに対する署名であって、群Ｇ１の元または群Ｇ２の元のみを含む署名Ｓ１を生成する。
【００１３】
ワンタイム署名生成部は、０以上ｐ−１以下の整数の中からランダムにｒ１、ｒ２、ｚを選び、
ｒ＝ｒ１＋ｒ２  （ｍｏｄ  ｐ）
を求め、
【００１４】
【数１】
2016092639.tif 000003
【００１５】
σ１＝ｇ１αＶ１ｒ
σ２＝（Ｖ１’）ｒｇ１−ｚ
σ３＝（ｇ１ｂ）ｚ
σ４＝（ｇ１ｂ）＾ｒ２
σ５＝ｇ１＾ｒ１
を求め、σ０，σ１，σ２，σ３，σ４，σ５を含む署名Ｓ２を生成する。
【００１６】
メッセージ署名検証部は、ワンタイム検証鍵ｏｐｋと署名Ｓ１とメッセージＭを取得し、取得したワンタイム検証鍵ｏｐｋを用いて、あらかじめ定めた署名方式にしたがって取得した署名Ｓ１を検証する。
【００１７】
ワンタイム署名検証部は、検証鍵ｖｋと署名Ｓ２とワンタイム検証鍵ｏｐｋを取得し、
【００１８】
【数２】
2016092639.tif 000004
【００１９】
ｅ（σ１，ｖｋ１）ｅ（σ２，ｖｋ３）ｅ（σ３，ｖｋ２）＝ｅ（σ４，ｖｋ４）ｅ（σ５，ｖｋ５）ｅ（ｖｋ７，ｖｋ８）
ｅ（Ｆ１ｉ２，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ１）  （ただし、ｉ＝０，…，Ｋ）
ｅ（Ｆ１ｉ３，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ２）  （ただし、ｉ＝０，…，Ｋ）
のすべてが成り立つことを確認することで取得した署名Ｓ２を検証する。
【発明の効果】
【００２０】
本発明の署名・検証システムによれば、メッセージＭに対する署名Ｓ１を、選択メッセージ攻撃に対する安全性を有する群構造維持署名方式をワンタイム署名方式として利用して生成している。そして、署名装置自身がランダムに生成できるワンタイム検証鍵に対する署名Ｓ２を、検証鍵、メッセージ、署名、署名鍵のすべてが群要素であるがランダムメッセージ攻撃に対する安全性までしか有さない署名方式で生成している。このように２つの署名方式を組み合わせることで、検証鍵、メッセージ、署名、署名鍵のすべてが群要素であって、選択メッセージ攻撃に対する安全性を有する群構造維持署名方式を提供できる。
【図面の簡単な説明】
【００２１】
【図１】本発明の署名・検証システムの構成例を示す図。
【図２】本発明の署名装置の処理フローを示す図。
【図３】本発明の検証装置の処理フローを示す図。
【発明を実施するための形態】
【００２２】
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【実施例１】
【００２３】
図１に本発明の署名・検証システムの構成例、図２に本発明の署名装置の処理フロー、図３に本発明の検証装置の処理フローを示す。署名・検証システムは、ネットワーク８００で接続された署名装置１００と検証装置２００とを有する。署名装置１００は、鍵生成部１１０、ワンタイム鍵生成部１２０、メッセージ署名生成部１３０、ワンタイム署名生成部１４０、署名記録部１９０を備え、検証鍵ｖｋとワンタイム検証鍵ｏｐｋと署名Ｓ１，Ｓ２を出力する。検証装置２００は、メッセージ署名検証部２３０、ワンタイム署名検証部２４０、検証記録部２９０を備え、検証鍵ｖｋ、ワンタイム検証鍵ｏｐｋ、署名Ｓ１，Ｓ２とメッセージＭを取得して署名Ｓ１，Ｓ２を検証する。
【００２４】
まず、Ｇ１，Ｇ２，ＧＴを位数ｐの群、ｅをＧ１×Ｇ２→ＧＴのペアリング、ｇ１を群Ｇ１の任意の生成元、ｇ２を群Ｇ２の任意の生成元、Ｋを１以上のあらかじめ定めた整数、ｋを１以上Ｋ以下の整数、ｍ１，…，ｍＫを群Ｇ１の元、メッセージＭをＭ＝（ｍ１，…，ｍＫ）、＾をべき乗を示す記号、ｕ，ｆ０２，…，ｆＫ２，ｆ０３，…，ｆＫ３を１以上ｐ−１以下からランダムに選択した整数、Ｕ１＝ｇ１＾ｕ，Ｕ２＝ｇ２＾ｕ，（Ｆ１０２，…，Ｆ１Ｋ２）＝（ｇ１＾ｆ０２，…，ｇ１＾ｆＫ２），（Ｆ１０３，…，Ｆ１Ｋ３）＝（ｇ１＾ｆ０３，…，ｇ１＾ｆＫ３），（Ｆ２０２，…，Ｆ２Ｋ２）＝（ｇ２＾ｆ０２，…，ｇ２＾ｆＫ２），（Ｆ２０３，…，Ｆ２Ｋ３）＝（ｇ２＾ｆ０３，…，ｇ２＾ｆＫ３）とする。また、〜を群Ｇ１の元のｇ１を底とする対数の値と群Ｇ２の元のｇ２を底とする対数の値が等しいことを示す記号とする。つまり、Ｖ１〜Ｖ２は、
【００２５】
【数３】
2016092639.tif 000005
【００２６】
の関係を示している。ペアリングｅは、ｅ（ｇ１ａ，ｇ２ｂ）＝ｅ（ｇ１，ｇ２）ａｂ，ｅ（ｇ１，ｇ２）≠１となる性質を持つ写像である。また、ｐ，Ｇ１，Ｇ２，ＧＴ，ｅ，（Ｆ１０２，…，Ｆ１Ｋ２），（Ｆ１０３，…，Ｆ１Ｋ３），（Ｆ２０２，…，Ｆ２Ｋ２），（Ｆ２０３，…，Ｆ２Ｋ３），Ｕ１，Ｕ２は、あらかじめ定められた共通パラメータ（双線形写像群の表現を含むグローバルキー）であり、あらかじめ署名記録部１９０と、検証記録部２９０に記録されているとする。
【００２７】
鍵生成部１１０は、Ｖ１〜Ｖ２，Ｖ１’〜Ｖ２’，Ｈ１〜Ｈ２が成り立つように群Ｇ１の元Ｖ１，Ｖ１’，Ｈ１と群Ｇ２の元Ｖ２，Ｖ２’，Ｈ２を定め、０以上ｐ−１以下の整数の中からランダムにａ，ｂ，αを選び、1以上ｐ−１以下の整数の中からランダムにρを選ぶ。そして、鍵生成部１１０は、
ｖｋ１＝ｇ２ｂ，ｖｋ２＝ｇ２ａ，ｖｋ３＝ｇ２ｂａ，ｖｋ４＝Ｒ２，ｖｋ５＝Ｒ２ｂ，ｖｋ６＝Ｈ２，ｖｋ７＝ｇ１ρ，ｖｋ８＝ｇ２αｂ／ρを求め、
ｖｋ１，ｖｋ２，ｖｋ３，ｖｋ４，ｖｋ５，ｖｋ６，ｖｋ７，ｖｋ８を含む検証鍵ｖｋと、ｖｋ，ｇ１α，ｇ１ｂ，Ｖ１，Ｖ１’を含む署名鍵ｓｋを生成する（Ｓ１１０）。ただし、Ｒ２＝Ｖ２（Ｖ２’）ａである。
【００２８】
ワンタイム鍵生成部１２０は、０以上ｐ−１以下の整数の中からランダムにｖ，ａ１，…，ａＫを選ぶ。そして、ワンタイム鍵生成部１２０は、
（Ｎ２０１，Ｎ２０２，Ｎ２００）＝（Ｆ２０２＾ｖ，Ｆ２０３＾ｖ，Ｕ２＾ｖ）と
ｉ＝１，…，Ｋについて
（Ｎ２ｉ１，Ｎ２ｉ２，Ｎ２ｉ０）＝（Ｆ２ｉ２＾ａｉ，Ｆ２ｉ３＾ａｉ，Ｕ２＾ａｉ）
を計算し、
（Ｎ２０１，Ｎ２０２，Ｎ２００），…，（Ｎ２Ｋ１，Ｎ２Ｋ２，Ｎ２Ｋ０）を含むワンタイム検証鍵ｏｐｋと、ｖ，ａ１，…，ａＫを含むワンタイム署名鍵ｏｓｋを生成する（Ｓ１２０）。
【００２９】
メッセージ署名生成部１３０は、メッセージＭを取得し、ワンタイム署名鍵ｏｓｋを用いて、選択メッセージ攻撃に対する安全性を有するあらかじめ定めた署名方式にしたがって、メッセージＭに対する署名であって群Ｇ１の元または群Ｇ２の元のみを含む署名Ｓ１を生成する（Ｓ１３０）。ワンタイム検証鍵ｏｐｋ、メッセージＭ、署名Ｓ１はいずれも、群Ｇ１の元または群Ｇ２の元のみで構成されているので、メッセージ署名生成部１３０が利用する署名方式は群構造維持署名方式である。なお、選択メッセージ攻撃に対する安全性を有する署名方法の具体例としては、メッセージ署名生成部１３０が、
【００３０】
【数４】
2016092639.tif 000006
【００３１】
のように、署名Ｓ１を求める方法がある。ただし、メッセージ署名生成部１３０が利用する署名方式は、選択メッセージ攻撃に対する安全性を有する群構造維持署名方式であれば、他の署名方式でもよい。また、署名の対象となるメッセージＭは、Ｋ個の群Ｇ１の元からなる。通常のメッセージは任意長の整数であるが、その場合は、Ｋ個の群Ｇ１の元となるように変換すればよい。そして、変換後のメッセージを本願のメッセージＭとする。署名の対象となるメッセージが短い場合には、Ｋ個の群Ｇ１の元となるようにパディングによってメッセージＭを作ればよい。パディングする値は群Ｇ１の元の中からあらかじめ選んでおけばよい。
【００３２】
ワンタイム署名生成部１４０は、０以上ｐ−１以下の整数の中からランダムにｒ１、ｒ２、ｚを選び、
ｒ＝ｒ１＋ｒ２  （ｍｏｄ  ｐ）
を求める。そして、ワンタイム署名生成部１４０は、
【００３３】
【数５】
2016092639.tif 000007
【００３４】
σ１＝ｇ１αＶ１ｒ
σ２＝（Ｖ１’）ｒｇ１−ｚ
σ３＝（ｇ１ｂ）ｚ
σ４＝（ｇ１ｂ）＾ｒ２
σ５＝ｇ１＾ｒ１
を求め、σ０，σ１，σ２，σ３，σ４，σ５を含む署名Ｓ２を生成する（Ｓ１４０）。この処理では、署名鍵ｓｋを用いてワンタイム検証鍵ｏｐｋに対する署名Ｓ２を生成している。これらの処理によって、署名装置１００は、検証鍵ｖｋとワンタイム検証鍵ｏｐｋと署名Ｓ１，Ｓ２を出力する。
【００３５】
メッセージ署名検証部２３０は、ワンタイム検証鍵ｏｐｋと署名Ｓ１とメッセージＭを取得し、取得したワンタイム検証鍵ｏｐｋを用いて、メッセージ署名生成部１３０がしたがった署名方式にしたがって取得した署名Ｓ１を検証する（Ｓ２３０）。例えば、メッセージ署名生成部１３０の説明で示した署名Ｓ１の具体例の場合ならば、メッセージ署名検証部２３０は、取得したメッセージＭに含まれるｍ１，…，ｍＫと取得した署名Ｓ１が群Ｇ１の元であること、および
【００３６】
【数６】
2016092639.tif 000008
【００３７】
であることを確認し、正しければＯＫ、正しくなければＮＧと判断すればよい。取得した署名Ｓ１が正しい署名であれば
【００３８】
【数７】
2016092639.tif 000009
【００３９】
のように、左辺と右辺が等しくなるので、上記の計算で検証できる。
【００４０】
ワンタイム署名検証部２４０は、検証鍵ｖｋと署名Ｓ２とワンタイム検証鍵ｏｐｋを取得し、
【００４１】
【数８】
2016092639.tif 000010
【００４２】
ｅ（σ１，ｖｋ１）ｅ（σ２，ｖｋ３）ｅ（σ３，ｖｋ２）＝ｅ（σ４，ｖｋ４）ｅ（σ５，ｖｋ５）ｅ（ｖｋ７，ｖｋ８）
ｅ（Ｆ１ｉ２，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ１）  （ただし、ｉ＝０，…，Ｋ）
ｅ（Ｆ１ｉ３，Ｎ２ｉ０）＝ｅ（Ｕ１，Ｎ２ｉ２）  （ただし、ｉ＝０，…，Ｋ）
のすべてが成り立つことを確認することで取得した署名Ｓ２を検証する（Ｓ２４０）。すなわち、すべての式が成り立てばＯＫ、いずれかの式が成り立たなければＮＧと判断する。
【００４３】
次に、第１式から、取得した署名Ｓ２が正しければ成り立つことを示す。第１式は、
【００４４】
【数９】
2016092639.tif 000011
【００４５】
となり、取得した署名Ｓ２が正しければ成り立つ。第２式は、
【００４６】
【数１０】
2016092639.tif 000012
【００４７】
となる。ここで、Ｖ１〜Ｖ２，Ｖ１’〜Ｖ２’が成り立つようにＶ１，Ｖ２，Ｖ１’，Ｖ２’は定められているので、取得した署名Ｓ２が正しければ（左辺）＝（右辺）が成り立つ。第３式は、
（左辺）＝ｅ（Ｆ１ｉ２，Ｎ２ｉ０）
＝ｅ（ｇ１＾ｆｉ２，Ｕ２＾ａｉ）
＝ｅ（ｇ１，ｇ２＾ｕ）＾（ｆｉ２・ａｉ）
＝ｅ（ｇ１，ｇ２）＾（ｕ・ｆｉ２・ａｉ）
（右辺）＝ｅ（Ｕ１，Ｎ２ｉ１）
＝ｅ（Ｕ１，Ｆ２ｉ２＾ａｉ）
＝ｅ（ｇ１＾ｕ，ｇ２＾ｆｉ２）＾ａｉ
＝ｅ（ｇ１，ｇ２）＾（ｕ・ｆｉ２・ａｉ）
となる。よって、取得した署名Ｓ２が正しければ（左辺）＝（右辺）が成り立つ。第４式は、
（左辺）＝ｅ（Ｆ１ｉ３，Ｎ２ｉ０）
＝ｅ（ｇ１＾ｆｉ３，Ｕ２＾ａｉ）
＝ｅ（ｇ１，ｇ２＾ｕ）＾（ｆｉ３・ａｉ）
＝ｅ（ｇ１，ｇ２）＾（ｕ・ｆｉ３・ａｉ）
（右辺）＝ｅ（Ｕ１，Ｎ２ｉ２）
＝ｅ（Ｕ１，Ｆ２ｉ３＾ａｉ）
＝ｅ（ｇ１＾ｕ，ｇ２＾ｆｉ３）＾ａｉ
＝ｅ（ｇ１，ｇ２）＾（ｕ・ｆｉ３・ａｉ）
となる。よって、取得した署名Ｓ２が正しければ（左辺）＝（右辺）が成り立つ。
【００４８】
ここで、署名装置１００のワンタイム鍵生成部１２０、メッセージ署名生成部１３０、ワンタイム署名生成部１４０をひとまとめとして署名生成手段１５０と考えてみる。鍵生成部１１０は非特許文献３の鍵生成と同じであり、署名生成手段１５０が非特許文献３と相違する。具体的には、署名装置１００が内部でランダムに生成できるワンタイム検証鍵に対する署名Ｓ２の生成に、検証鍵、メッセージ、署名、署名鍵のすべてが群要素であるがランダムメッセージ攻撃に対する安全性までしかない署名方式を利用し、メッセージＭに対する署名Ｓ１は選択メッセージ攻撃に対する安全性を有する群構造維持署名方式で生成している。このように２つの署名方式を組み合わせることで、検証鍵、メッセージ、署名、署名鍵のすべてが群要素であって、選択メッセージ攻撃に対する安全性を有する群構造維持署名方式を提供できる。
【００４９】
［プログラム、記録媒体］
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【００５０】
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【００５１】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００５２】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００５３】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００５４】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【００５５】
１００  署名装置
１１０  鍵生成部
１２０  ワンタイム鍵生成部
１３０  メッセージ署名生成部
１４０  ワンタイム署名生成部
１５０  署名生成手段
１９０  署名記録部
２００  検証装置
２３０  メッセージ署名検証部
２４０  ワンタイム署名検証部
２９０  検証記録部
８００  ネットワーク
【図１】
2016092639.tif 000025
【図２】
2016092639.tif 000026
【図３】
2016092639.tif 000027