JP4336876B2 - 署名方法および署名プログラム - Google Patents

署名方法および署名プログラム Download PDF

Info

Publication number
JP4336876B2
JP4336876B2 JP2003014806A JP2003014806A JP4336876B2 JP 4336876 B2 JP4336876 B2 JP 4336876B2 JP 2003014806 A JP2003014806 A JP 2003014806A JP 2003014806 A JP2003014806 A JP 2003014806A JP 4336876 B2 JP4336876 B2 JP 4336876B2
Authority
JP
Japan
Prior art keywords
signature
tag
weak
license
strong
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003014806A
Other languages
English (en)
Other versions
JP2004228958A (ja
Inventor
勇 寺西
潤 古川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2003014806A priority Critical patent/JP4336876B2/ja
Publication of JP2004228958A publication Critical patent/JP2004228958A/ja
Application granted granted Critical
Publication of JP4336876B2 publication Critical patent/JP4336876B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、各サイトにおける回数制限内では匿名性が保たれ、複数人用の、匿名性を保つ署名方法に関し、特に回数制限を越えた場合、回数制限を越えた署名が特定でき或いは回数制限を越えた署名者が特定できる各サイトにおける回数制限内では匿名性が保たれ、複数人用の、匿名性を保つ署名方法に関する。
【0002】
【従来の技術】
匿名性を守ることは通信において重要な課題であるが、匿名性を保証すると、不正者を誘発することになりかねない。
【0003】
署名系において匿名性と不正者特定を両立した系として、グループ署名がある。この系はチャウム(Chaum)とヘイスト(Heijst)により、非特許文献1で提案された。
【0004】
グループ署名とは、次を満たす署名系のことである。
▲1▼グループ管理装置は、秘密鍵を秘密裡に持っていて、この秘密鍵から、公開鍵、領域変数を作る。
▲2▼グループ管理装置は、前記秘密鍵を用い、ユーザー装置にライセンスを発行する。以後ライセンスを受け取ったユーザー装置を、グループのメンバー或いはメンバー装置と呼ぶ。
▲3▼メンバー装置のみが署名を計算できる。
▲4▼検証装置は、署名と同一フォーマットの情報(以下疑似署名と呼ぶ)が、メンバー装置によって作られた正当な署名であるか否かを確認することができる。
▲5▼グループ管理装置(の持つ、前記秘密鍵が入力された装置)以外の装置は、どのメンバー装置が署名を作成したかを特定することはできない。
▲6▼但し、グループ管理装置(の持つ、前記秘密鍵が入力された装置)は、前記秘密鍵を利用することで、署名を作成したメンバー装置を特定することができる。
【0005】
普段は匿名性を保っているが、不正が発覚したとき、グループ管理装置が署名した装置を特定することで不正者を発見できる。この事により、不正抑制をしているのである。
【0006】
チャウム(Chaum)とヘイスト(Heijst)により、初めてグループ署名が提案されて以来、様々な改良を加えられたグループ署名が提案されてきた。代表的なものに、カメニッシュ(Camenisch)、スタッドラー(Stadler)らによる非特許文献2や、アテニース(Ateniese)、カメニッシュ(Camenisch)、ジョイ(Joye), ツディック(Tsudik)等による非特許文献3がある。
【0007】
ほとんどのグループ署名は、アイデンティティ エスクロー(Identity Escrow)と呼ばれる系から、フィアット(Fiat) シャーミル(Shamir)変換と呼ばれるものを施すことによって得ることができる。上述した系は全てこの方法により得ることができる。
【0008】
アイデンティティ エスクローは、キリアン(Kilian), ペトランク(Petrank)による非特許文献4により提案された。アイデンティティ エスクローとは、匿名性と不正抑制を両立した認証系で、グループ署名系と同様の性質を持つ。
▲1▼グループ管理装置は、秘密鍵を秘密裡に持っていて、この秘密鍵から、領域変数を作る。
▲2▼グループ管理装置は、前記秘密鍵を用い、ユーザー装置にライセンスを発行する。以後ライセンスを受け取ったユーザー装置を、グループのメンバー或いはメンバー装置と呼ぶ。
▲3▼メンバー装置のみが認証を計算できる。
▲4▼検証装置は、認証と同一フォーマットの情報(以下疑似認証と呼ぶ)が、メンバー装置によって作られた正当な認証であるか否かを確認することができる。
▲5▼グループ管理装置(の持つ、前記秘密鍵が入力された装置)以外の装置は、どのメンバー装置が認証を作成したかを特定することはできない。
▲6▼但し、グループ管理装置(の持つ、前記秘密鍵が入力された装置)は、前記秘密鍵を利用することで、認証を作成したメンバー装置を特定することができる。
【0009】
ここで、アテニース(Ateniese)、カメニッシュ(Camenisch)、ジョイ(Joye), ツディック(Tsudik)等による系の概略を説明する。
【0010】
図31は、従来のグループ署名系の装置間の関係を示すブロック図である。グループ署名系は、グループ管理装置41と、ユーザー装置(メンバー装置)42と、検証装置43とを備えている。
【0011】
グループ管理装置41は、まずグループ署名セットアップルーチンを行い、グループ署名に必要な基本的パラメーター(領域変数と呼ばれる)をセットアップする。次にグループ署名ジョインルーチンをユーザー装置42と共に行う。グループ管理装置41は、領域変数と、ライセンスをユーザー装置42に渡し(BGS-BL L1)、グループ管理装置41は、ライセンスに対応する公開鍵、及びユーザー装置42のIDを受け取る(BGS-BL L2)。ライセンスを受け取ったユーザー装置42は、グループのメンバーと見做される。そこで、以後、ライセンスを受け取ったユーザー装置42をメンバー装置と呼ぶ。メンバー装置は、ライセンスを用い署名を行うことができる。グループ署名系において、グループ管理装置以外の装置は、どの装置が署名をしたのかを特定することはできない。また、メンバー装置以外の装置(ライセンスを持っていない装置)は署名を作ることができない。
【0012】
検証装置43は、領域変数を用い(BGS-BL L4)、署名の正当性を検証する装置である。検証装置43は、送られてきたデータ(以下疑似署名)が、メンバー装置がライセンスを用い正しい手順で作成した署名(BGS-BL L3)であるか否か(BGS-BL L8)を決定し、出力する(BGS-BL L5)装置である。
【0013】
犯罪等何らかの理由で署名者を特定したい場合には、署名をグループ管理装置41に送る(BGS-BL L6)。グループ管理装置41は、グループ署名セットアップルーチン時に作成した秘密情報を用いて署名者を決定する(BGS-BL L7)。
【0014】
アテニース等のグループ署名系は、 グループ署名セットアップルーチン、グループ署名ジョインルーチン、グループ署名ルーチン、グループ署名検証ルーチン、グループ署名署名者決定ルーチンからなる。
【0015】
セットアップルーチンについて説明する。このルーチンにおいて、グループ管理装置41は秘密鍵および領域変数を作成する。セットアップルーチンにおいて、グループ管理装置41は、二つの素数p, qを秘密裡に選び、その積nを公開する。(p, q)を秘密鍵として秘密裡に保管し、nを領域変数として公開する。秘密鍵(p, q)は、ジョインルーチンにおいて、ライセンス発行に使用する。また、QR(n)の元gを任意に取り、gの位数以下の正整数χを秘密裡にとる。そして h = gχ mod n を計算し、χを秘密鍵として保管し、(g,h)を領域変数として公開する。χは署名装置特定のために使用する。更にQR(n)の元a, a, g'をランダムに取り、公開する。
【0016】
次に、ジョインルーチンを説明する。ジョインルーチンは、ユーザー装置42と通信し、ユーザー装置42にライセンスを手渡す。ライセンスは三つ組(x, A, e)で、a a = A mod n を満たし、x, eがある定められた範囲にはいるものでり、eが素数であるものである。
【0017】
ライセンスを得たユーザー装置42をメンバー装置と呼ぶ。尚、グループ管理装置41はメンバー装置毎に異なるライセンスを与えねばならない。
【0018】
メンバー装置はライセンス(x, A, e)のうちxを秘密鍵として秘密裡に保管し、A,eを(かならずしも秘密裡ではなく)保管する。
【0019】
ジョインルーチンにより、ユーザー装置42はライセンス(x, A, e)を得、グループ管理装置41は(a, A, e)を得る。ジョインルーチンは、暗号プロトコルを駆使したグループ管理装置41にはxがばれないようなプロトコルである。
【0020】
グループ管理装置41は、ジョインプロトコルで得た(a, A, e)を、メンバー装置の識別子とセットにして保管する。このリストを鍵リストと呼ぶ。
【0021】
署名装置特定ルーチンについては後述する。
【0022】
グループ管理装置41からライセンス(x,A,e)を得たメンバー装置は、ライセンスを利用して認証を受けること、署名を作成することが可能になる。
【0023】
署名方法の概略を説明する。署名手順は暗号作成ステップ、ゼロ知識証明ステップの二つのステップからなる。
【0024】
暗号作成ステップでは、メンバー装置はまず、定められた範囲から乱数uを取り、T = A h mod n, T = g mod n, T = gg' mod nを作成する。
【0025】
ゼロ知識証明ステップは、コミットステップ、チャレンジステップ、レスポンスステップと呼ばれているものを作成する。
【0026】
コミットステップにおいては、定められた範囲から乱数ebar, xbar, ηbar, wbarを選び、d = T^ebar / (a^xbar h^ηbar) mod n、d = T^ebar / g^ηbar mod n、d = g^wbar mod n、d = g^ebar g'^wbar mod nを計算する。
【0027】
次にチャレンジステップにおいては、c =Hash(g||h||g'||a||a||T||T||T||d||d||d||d||m)を計算する。ここでHashはハッシュ関数。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。
【0028】
最後にレスポンスステップにおいては、s = ebar - c(e - 2^γ)、s = xbar - c(x - 2^λ)、s = ηbar - ceu、s = wbar - cwを作成し、(T, T, T, d, d, d, d, c)を署名として公開する。但し、ここでγ、λはセキュリティパラメーターから定まる定数。
【0029】
検証は、まず、d = a^c T^(s - c2^γ) / (a^(s - c 2^λ)h^s) mod n, d = T^(s - c 2^γ) / g^s mod n,d = T^c g^s mod n,d = T^c g ^(s - c 2^γ) h^s mod nを確認し、次にc =Hash(g||h||g'||a||a||T||T||T||d||d||d||d||m)を確認し、最後にs、s、s、sがある定められた範囲にはいることを示す。
【0030】
また、グループ管理装置41は、署名装置特定ルーチンを実行することで署名装置を特定することができる。
【0031】
署名装置特定ルーチンではA = T / T^χ mod n を計算し、Aを含む鍵を鍵リストから検索することで、署名装置を特定する。
【0032】
また、特許文献1には、匿名および利用回数を制限された認証を行うために、認証者と被認証者の各々において認証を受けられる回数を管理しながら認証者において被認証者を仮名のまま認証すると共に被認証者の実名を知り得る匿名認証方法が開示されている。
【0033】
【非特許文献1】
グループ シグナチャー、ユーロクリプト '91, シュプリンガー レクチャーノート イン コンピューター サイエンス 547, 257頁〜265頁 1991年(D. Chaum and E. van Heijst, Group signatures, Eurocrypt '91, Springer Lecture Notes in Computer Sciencs 547, p.257-265, 1991.)
【非特許文献2】
エフィシェント グループ シグナチャー スキームス フォー ラージ グループス、クリプト '97, シュプリンガー レクチャーノート イン コンピューター サイエンス 1294, 410頁〜424頁 1997年(Group Signature Schemesfor Large Groups, Jan Camenisch, Markus Stadler,Crypt '97, Springer Lecture Notes in Computer Sciencs 1294, p.410-424, 1997.)
【非特許文献3】
ア プラクティカル アンド プルーバブリー セキュアー コリジョン レジスタント グループ シグナチャー スキーム、クリプト2000, シュプリンガー レクチャーノート イン コンピューター サイエンス 1880, 255頁〜270頁, 2000年 (A Practical and ProvablySecure Coalition-Resistant Group Signature Scheme, Giuseppe Ateniese, Jan Camenisch, Marc Joye, and Gene Tsudik, Crypt 2000, Springer Lecture Notes in Computer Sciencs 1880, p.255-270, 2000.)
【非特許文献4】
アイデンティティ エスクロー、クリプト '98 シュプリンガー レクチャーノート イン コンピューター サイエンス 1462, 169頁〜185頁, 1998年 (Identity Escrow, JoeKilian, Erez Petrank CRYPTO '98, Springer Lecture Notes in ComputerSciencs 1462, p.169-185, 1998 )
【特許文献1】
特開2001−94553号公報
【0034】
【発明が解決しようとする課題】
しかしながら、上述した従来の技術には、以下のような問題点がある。
【0035】
第1の問題点は、回数制限が課されていなことである。この為、例えばアンケートに応用する場合、同一人物による二重回答を防ぐことができない。その理由は、グループ署名系においては、署名を行ったメンバー装置の匿名性が完全に保証されている。この為、二つの署名文があったとき、この二つの署名文を作成したのが同一人物であるか否かを知ることはできない。
【0036】
第2の問題点は、メンバー装置の署名が不正であるか不正でないかにかかわらず、グループ管理装置には署名者を特定されてしまうことである。その理由は、グループ署名系の場合、グループ管理装置の権限が強すぎるためである。
【0037】
第3の問題点は、処理速度が遅いことである。なぜなら、グループ署名に使用するライセンスの形は複雑で、その為ゼロ知識証明が複雑になるからである。
【0038】
本発明の第1の目的は、匿名性をコントロールする事である。
【0039】
本発明の他の目的は、グループ署名と異なり、回数制限を越えない限りグループ管理装置でも署名装置を特定することはできないようにすることである。(しかし、系を自明に改良することで、グループ管理装置が署名装置を特定できるように改良することが可能である)。
【0040】
本発明の更に他の目的は、グループ署名系、及び回数制限署名系を高速化することである。
【0041】
【課題を解決するための手段】
本願第1の発明のグループ署名方法は、グループ管理装置が、セキュリティパラメーター並びに基本モジュラスと自由領域変数と左辺底領域変数と離散対数第一領域変数と離散対数第二領域変数とを含む領域変数をセットアップするステップと、秘密ライセンス情報と底ライセンス情報と指数ライセンス情報とを含むライセンス情報をユーザー装置に渡すステップと、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報と、を含む値を入力するステップと、前記領域変数および前記ライセンス情報が、前記左辺底領域変数を底とし、前記秘密ライセンス情報を指数として巾乗したものに前記自由領域変数を乗じたものと、前記底ライセンス情報を底とし、前記指数ライセンス情報を指数として巾乗したものとが、前記基本モジュラスを法として等しいというライセンス等式と、前記秘密ライセンス情報が、前記セキュリティパラメーターから定まるある範囲に入っていて、かつ前記指数ライセンス情報が、前記セキュリティパラメーターから定まる別のある範囲に入っているというライセンス情報範囲指定条件と、を満たすことを確認するステップと、エルガマル暗号生成用指数部乱数と呼ばれる乱数を作成し、その乱数を用い前記底ライセンス情報をエルガマル暗号化するエルガマル暗号化ステップと、ライセンス情報コミット用乱数を作成し、さらに前記エルガマル暗号生成用指数部乱数に対するエルガマル暗号生成用指数部乱数コミット用乱数を作成するゼロ知識証明書計算コミット用乱数生成ステップと、ゼロ知識証明のコミットメントを作成するゼロ知識証明書計算コミットステップと、コミットメント諸々のハッシュ関数であるチャレンジを生成するゼロ知識証明書計算チャレンジステップと、ライセンス情報レスポンスを作成し、次に前記ライセンス情報に対するレスポンスを定められた方法で変換し、前記変換されたものを前記エルガマル暗号生成用指数部乱数に乗じ、そこに前記エルガマル暗号生成用指数部乱数コミット用変数を加えたものをエルガマル暗号生成用指数部乱数に対するレスポンスとして出力するゼロ知識証明書計算レスポンスステップと、前記コミットメントと前記チャレンジと前記レスポンスを署名として出力するステップと、検証装置が、前記セキュリティパラメーターと前記領域変数を入力するステップと、署名(疑似署名)を入力するステップと、前記入力された疑似署名の作成に使われた秘密情報がライセンス等式を満たすか否かを検証するライセンス等式検証ステップと、前記領域変数の離散対数第一領域変数部を底とし、前記疑似署名のエルガマル生成用指数部乱数レスポンス部を指数とする巾乗が、前記疑似署名のエルガマル暗号第一成分部を底とし、前記疑似署名の指数ライセンス情報部を定められた方法で変換したもの指数とする巾乗に前記疑似署名のエルガマル暗号生成用指数部乱数コミットを乗じたものとが、前記疑似署名の基本モジュラス部を法として等しくなるかどうかを確認するエルガマル暗号第一成分等式検証ステップと、前記入力された疑似署名の作成に使われた秘密情報がライセンス情報範囲指定条件を満たすか否かを検証するライセンス情報範囲指定条件検証ステップと、前記ライセンス等式検証ステップと前記エルガマル暗号第一成分等式検証ステップと前記ライセンス情報範囲指定条件検証ステップとで正しく検証されたときに、前記疑似署名が、前記グループ管理装置からライセンスをもらった前記ユーザー装置が前記ライセンスを入力として高速化グループ署名手順を行うことで作成した署名であると判定するステップと、を有することを特徴とする。
【0042】
本願第2の発明の回数制限署名方法は、グループ管理装置がセキュリティパラメーターから領域変数を計算するセットアップステップと、前記グループ管理装置がユーザー装置と通信を行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、前記サイト管理装置が入力値のハッシュ値から弱特定用タグを作り、前記入力値と前記弱特定用タグとを出力するステップと、前記ユーザー装置が、セキュリティパラメーターと領域変数とライセンス情報を入力するステップと、前記サイト管理装置から弱特定タグを入力するステップと、メッセージを入力するステップと、前記弱特定タグと前記ライセンス情報とから弱特定性質を満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、前記ライセンス情報を前記ユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー前記装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、前記弱特定用タグ署名と前記正当性証明書とを含むものを署名として出力するステップと、検証装置が、署名(弱特定可能二重署名禁止疑似署名)を入力する検証ルーチン入力ステップと、前記入力された弱特定可能二重署名禁止疑似署名に対し、前記弱特定可能二重署名禁止疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が弱特定可能二重署名禁止署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する検証ルーチン主ステップと、前記入力された弱特定可能二重署名禁止疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、複数個の弱特定可能二重署名禁止署名が入力される二重署名弱特定ルーチン入力ステップと、前記入力された複数個の弱特定可能二重署名禁止署名の中から、同一ユーザー装置によって作られたものを探し出し、そのような弱特定可能二重署名禁止署名の組があればそれを出力する二重署名弱特定ルーチン主ステップと、前記二重署名弱特定ルーチン主ステップの出力を出力する二重署名弱特定ルーチン出力ステップと、を有することを特徴とする。
【0043】
本願第3の発明の回数制限署名方法は、グループ管理装置がセキュリティパラメーターから領域変数を計算するセットアップステップと、前記グループ管理装置がユーザー装置と通信を行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、前記グループ管理装置が前記ジョインステップで取得した公開鍵達のリストを出力する鍵リスト公開ステップと、前記サイト管理装置が入力値のハッシュ値から弱特定用タグと強特定用タグを作り、前記入力値と前記弱特定用タグと前記強特定用タグとを出力するステップと、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、前記サイト管理装置から弱特定タグと強特定タグとを入力するステップと、メッセージを入力するステップと、前記弱特定タグと前記ライセンス情報とから弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、前記強特定タグと前記ライセンス情報とから強特定性質と呼ばれるものを満たす強特定用タグ署名を計算する強特定用タグ署名ステップと、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、検証装置が、署名(強特定可能二重署名禁止疑似署名)を入力する検証ルーチン入力ステップと、前記入力された強特定可能二重署名禁止疑似署名に対し、前記強特定可能二重署名禁止疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が強特定可能二重署名禁止署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する検証ルーチン主ステップと、前記入力された強特定可能二重署名禁止疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、複数個の強特定可能二重署名禁止署名が入力される二重署名弱特定ルーチン入力ステップと、前記入力された複数個の強特定可能二重署名禁止署名の中から、同一弱特定タグと同一強特定タグと同一のライセンスによって作られたものを探し出し、そのような強特定可能二重署名禁止署名の組があればそれを出力する二重署名弱特定ルーチン主ステップと、前記二重署名弱特定ルーチン主ステップの出力を出力する二重署名弱特定ルーチン出力ステップと、前記二重署名弱特定ルーチン出力ステップが出力した強特定可能二重署名禁止署名の組ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである前記鍵リストを入力し、前記入力された組から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出し、それを出力する二重署名強特定ステップと、を有することを特徴とする。
【0044】
本願第4の発明の回数制限署名方法は、グループ管理装置が、セキュリティパラメーターから領域変数を計算するセットアップステップと、ユーザー装置と通信を行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、サイト管理装置が、制限回数と呼ばれるものとサイト識別子と呼ばれるものを含むものを入力するステップと、前記入力値のハッシュ値から前記制限回数個の弱特定用タグを作るステップと、前記入力値と前記制限回数個の前記弱特定用タグとを出力するステップと、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、前記サイト管理装置から制限回数と制限回数個の弱特定タグとサイト識別子と弱特定サイトにおける弱特定タグ使用履歴とを入力するステップと、メッセージを入力するステップと、前記入力された制限回数個の前記弱特定タグ達の中で前記弱特定サイトにおける弱特定タグ使用履歴に登録されていないものを選ぶ弱特定タグ選択ステップと、前記弱特定タグ選択ステップで選ばれた弱特定タグに対し、弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、前記ライセンス情報を前記ユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、前記弱特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、検証装置が、署名(弱特定可能回数制限疑似署名)を入力し前記サイト管理装置から弱特定タグを入力する検証ルーチン入力ステップと、前記ライセンス情報を前記弱特定可能回数制限疑似署名を作成したユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記弱特定可能回数制限疑似署名を作成したユーザー装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを確認する検証ルーチン主ステップと、前記入力された弱特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、複数個の弱特定可能回数制限署名を含むものが入力される回数制限弱特定ルーチン入力ステップと、前記入力された複数個の弱特定可能回数制限署名の中から、同一ユーザー装置によって作られた、回数制限を越えた個数個の弱特定可能回数制限署名を探し出し、そのような弱特定可能回数制限署名の組があればそれを出力する回数制限弱特定ルーチン主ステップと、前記回数制限弱特定ルーチン主ステップの出力を出力する回数制限弱特定ルーチン出力ステップと、を有することを特徴とする。
【0045】
本願第5の発明の回数制限署名方法は、グループ管理装置が、セキュリティパラメーターから領域変数を計算するセットアップステップと、ユーザー装置と通信を行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、前記ジョインステップで取得した公開鍵達のリストを出力する鍵リスト公開ステップと、サイト管理装置が、制限回数と呼ばれるものとサイト識別子と呼ばれるものを含むものを入力するステップと、前記入力値のハッシュ値から前記制限回数個の弱特定用タグと前記制限回数個の強特定用タグを作るステップと、前記入力値と前記制限回数個の前記弱特定用タグと前記制限回数個の前記強特定用タグとを出力するステップと、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、前記サイト管理装置から制限回数、制限回数個の弱特定タグと強特定タグとの組、サイト識別子、強特定サイトにおけるタグ使用履歴を入力するステップと、メッセージを入力するステップと、前記入力された制限回数個のタグの組達の中で前記強特定サイトにおけるタグ使用履歴に登録されていないものを選ぶタグ選択ステップと、前記タグ選択ステップで選ばれた弱特定タグと前記ライセンス情報とから弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する前記弱特定用タグ署名ステップと、前記タグ選択ステップで選ばれた強特定タグと前記ライセンス情報とから強特定性質と呼ばれるものを満たす強特定用タグ署名を計算する強特定用タグ署名ステップと、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、検証装置が、署名(強特定可能回数制限疑似署名)を入力する検証ルーチン入力ステップと、前記入力された強特定可能回数制限疑似署名に対し、前記強特定可能回数制限疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が強特定可能回数制限署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する検証ルーチン主ステップと、前記入力された強特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、複数個の強特定可能回数制限署名が入力される回数制限弱特定ルーチン入力ステップと、前記入力された複数個の強特定可能回数制限署名の中から、同一ユーザー装置によって作られた、回数制限を越えた個数個の強特定可能回数制限署名を探し出し、そのような強特定可能回数制限署名の組があればその組の内の一対を出力する回数制限弱特定ルーチン主ステップと、前記回数制限弱特定ルーチン主ステップが出力した強特定可能回数制限署名の一対ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された一対から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出し、それを出力する回数制限強特定ステップと、を有することを特徴とする。
【0046】
本願第6の発明の回数制限署名方法は、グループ管理装置が、セキュリティパラメーターから領域変数を計算するセットアップステップと、ユーザー装置と通信を行うことで、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、サイト管理装置にサイト管理用の情報を与えるサイト管理権授与ステップと、前記サイト管理装置が、前記グループ管理装置からサイト管理用の情報を取得するステップと、制限回数を含むものを入力するステップと、前記制限回数を前記グループ管理装置に送信するステップと、前記グループ管理装置が、前記制限回数個の大人数用タグを作成して前記サイト管理装置に送信するステップと、前記サイト管理装置が、前記グループ管理装置から前記制限回数個の大人数用タグを受取るステップと、前記入力値と前記制限回数個の大人数用タグとを出力する出力ステップと、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、前記サイト管理装置から制限回数と制限回数個の弱特定タグとサイト識別子と弱特定サイトにおける弱特定タグ使用履歴とを入力するステップと、メッセージを入力するステップと、前記入力された制限回数個の前記弱特定タグ達の中で前記弱特定サイトにおける弱特定タグ使用履歴に登録されていないものを選ぶ弱特定タグ選択ステップと、前記弱特定タグ選択ステップで選ばれた弱特定タグに対し、弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、前記ライセンス情報を前記ユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、前記弱特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、検証装置が、署名(大人数用弱特定可能回数制限疑似署名)を入力し前記サイト管理装置から弱特定タグを入力する検証ルーチン入力ステップと、前記ライセンス情報を前記大人数用弱特定可能回数制限疑似署名を作成したユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記大人数用弱特定可能回数制限疑似署名を作成したユーザー装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを確認する検証ルーチン主ステップと、前記入力された大人数用弱特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、複数個の大人数用弱特定可能回数制限署名を含むものが入力される回数制限弱特定ルーチン入力ステップと、前記入力された複数個の大人数用弱特定可能回数制限署名の中から、同一ユーザー装置によって作られた、回数制限を越えた個数個の大人数用弱特定可能回数制限署名を探し出し、そのような大人数用弱特定可能回数制限署名の組があればそれを出力する回数制限弱特定ルーチン主ステップと、前記回数制限弱特定ルーチン主ステップの出力を出力する回数制限弱特定ルーチン出力ステップと、を有することを特徴とする。
【0047】
本願第7の発明の回数制限署名方法は、グループ管理装置が、セキュリティパラメーターから領域変数を計算するセットアップステップと、ユーザー装置と通信を行うことで、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、前記ジョインステップで取得した公開鍵達のリストを出力する鍵リスト公開ステップと、サイト管理装置にサイト管理用の情報を与えるサイト管理権授与ステップと、前記サイト管理装置が、前記グループ管理装置からサイト管理用の情報を取得するステップと、制限回数を含むものを入力するステップと、前記制限回数を前記グループ管理装置に送信するステップと、前記グループ管理装置が、前記制限回数個の大人数用タグを作成して前記サイト管理装置に送信するステップと、前記サイト管理装置が、前記グループ管理装置から前記制限回数個の大人数用タグを受取るステップと、前記入力値と前記制限回数個の大人数用タグとを出力する出力ステップと、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、前記サイト管理装置から制限回数と制限回数個の大人数用タグと強特定サイトにおけるタグ使用履歴とサイト識別子とを入力するステップと、メッセージを入力するステップと、前記入力された制限回数個のタグの組達の中で前記強特定サイトにおけるタグ使用履歴に登録されていないものを選ぶタグ選択ステップと、前記タグ選択ステップで選ばれたタグと前記ライセンス情報とから弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、前記タグ選択ステップで選ばれたタグと前記ライセンス情報とから強特定性質と呼ばれるものを満たす強特定用タグ署名を計算する強特定用タグ署名ステップと、記ライセンス情報を前記ユーザー装置が保有することと、前記大人数用タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記大人数用タグから前記強特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることと、前記弱特定タグ署名生成に用いた大人数用タグと前記強特定タグ署名生成に用いた大人数用タグとが同一であることとを証明するためのデータを生成する正当性証明書作成ステップと、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、検証装置が、署名(大人数用強特定可能回数制限疑似署名)を入力する検証ルーチン入力ステップと、前記入力した大人数用強特定可能回数制限疑似署名に対し、前記大人数用強特定可能回数制限疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が大人数用強特定可能回数制限署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する検証ルーチン主ステップと、前記入力された大人数用強特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、複数個の大人数用強特定可能回数制限署名を入力する回数制限弱特定ルーチン入力ステップと、前記入力された複数個の大人数用強特定可能回数制限署名の中から、同一ユーザー装置によって作られた、回数制限を越えた個数個の大人数用強特定可能回数制限署名を探し出し、そのような大人数用強特定可能回数制限署名の組があればその組の内の一対を出力する回数制限弱特定ルーチン主ステップと、前記回数制限弱特定ルーチン主ステップが出力した大人数用強特定可能回数制限署名の一対ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された一対から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出し、それを出力する回数制限強特定ステップと、を有することを特徴とする。
【0048】
本願第8の発明の回数制限署名方法は、第2の発明において前記弱特定用タグ署名が、前記弱特定タグを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余である、ことを特徴とする。
【0049】
本願第9の発明の回数制限署名方法は、第2,第3,第4または第5の発明において前記セットアップステップは、セキュリティパラメーターから、タグモジュラスと呼ばれる正整数と、秘密第一因数と呼ばれる素数と、秘密第二因数と呼ばれる素数とを生成し、前記秘密第一因数と前記秘密第二因数との積である基本モジュラスと呼ばれる数を計算し、さらに自由領域変数と呼ばれるものと、左辺底領域変数と呼ばれるものと、タグ用左辺底領域変数と呼ばれるものとを計算し、さらに種乱数と呼ばれる乱数を作り、前記種乱数のハッシュ値から離散対数第一領域変数と呼ばれるものと、離散対数第二領域変数と呼ばれるものとを計算し、前記秘密第一因数と前記秘密第二因数とを秘密裡に保管し、前記種乱数と前記基本モジュラスと前記自由領域変数と、前記左辺底領域変数と、前記離散対数第一領域変数と、前記離散対数第二領域変数と、前記タグモジュラスと、タグ用左辺底領域変数とを公開情報として出力し、前記ジョインステップは、前記ユーザー装置とアクセスを行い前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記タグ用左辺底領域変数を底とし、前記ライセンスの秘密ライセンス情報と呼ばれるものを指数とし、前記タグモジュラスを法とする巾乗剰余を受け取る、ことを特徴とする。
【0050】
本願第10の発明の回数制限署名方法は、第2の発明において前記二重署名弱特定ルーチン主ステップは、前記入力された複数個の弱特定可能二重署名禁止署名の弱特定用タグ署名と呼ばれる部分を比較する事によって同一ユーザー装置によって作られたものであるか否かを判定する、ことを特徴とする。
【0051】
本願第11の発明の回数制限署名方法は、第3の発明において前記弱特定用タグ署名は、前記弱特定タグを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、前記強特定用タグ署名は、前記ライセンスを定められた方法で変換したものを底とし、強特定用タグ署名変化用値ハッシュ値と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法として巾乗剰余したものに、前記強特定タグを乗じたものを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、前記強特定用タグ署名変化用値ハッシュ値は、前記ユーザー装置を使用する度に異なる値のハッシュ値である、ことを特徴とする。
【0052】
本願第12の発明の回数制限署名方法は、第3の発明において前記二重署名弱特定ルーチン主ステップは、前記入力した複数個の強特定可能二重署名禁止署名の弱特定用タグ署名と呼ばれる部分を比較する事によって同一ユーザー装置によって作られたものであるか否かを判定し、前記二重署名強特定ステップは、前記入力された強特定可能二重署名禁止署名の組に対し、そのうち任意の二つの強特定可能二重署名禁止署名を取りだし、第一の強特定可能二重署名禁止署名の強特定用タグ署名を第二の強特定可能二重署名禁止署名の強特定用タグ署名で、タグモジュラスを法として剰余したものを底とし、第一の強特定可能二重署名禁止署名の強特定用タグ署名変化用値ハッシュ値から、第二の強特定可能二重署名禁止署名の強特定用タグ署名変化用値ハッシュ値を減じたものの、タグの周期を法とする逆元を指数とし、タグモジュラスを法として巾乗剰余したものを、前記入力された鍵リストから探し出し、見つかれば対応するユーザー装置の識別子を出力する、ことを特徴とする。
【0053】
本願第13の発明の回数制限署名方法は、第4の発明において前記弱特定用タグ署名は、前記弱特定タグを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるタグモジュラスと呼ばれるものを法とする巾乗剰余である、ことを特徴とする。
【0054】
本願第14の発明の回数制限署名方法は、第4の発明において前記回数制限弱特定ルーチン主ステップは、前記入力された複数個の弱特定可能回数制限署名の弱特定用タグ署名の部分を比較することによって、同一ユーザー装置によって作られたものであるか否かを判定する、ことを特徴とする。
【0055】
本願第15の発明の回数制限署名方法は、第5の発明において前記弱特定用タグ署名は、前記弱特定タグを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、前記強特定用タグ署名は、前記ライセンスを定められた方法で変換したものを底とし、強特定用タグ署名変化用値ハッシュ値と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法として巾乗剰余したものに、前記強特定タグを乗じたものを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
前記強特定用タグ署名変化用値ハッシュ値は、前記ユーザー装置を使用する度に異なる値のハッシュ値である、ことを特徴とする。
【0056】
本願第16の発明の回数制限署名方法は、第5の発明において前記回数制限弱特定ルーチン主ステップは、前記入力した複数個の強特定可能回数制限署名の弱特定用タグ署名と呼ばれる部分を比較する事によって同一ユーザー装置によって作られたものであるか否かを判定し、前記回数制限強特定ステップは、前記入力された強特定可能回数制限署名の組に対し、そのうち任意の二つの強特定可能回数制限署名を取りだし、第一の強特定可能回数制限署名の強特定用タグ署名を第二の強特定可能回数制限署名の強特定用タグ署名で、タグモジュラスを法として剰余したものを底とし、第一の強特定可能回数制限署名の強特定用タグ署名変化用値ハッシュ値から、第二の強特定可能回数制限署名の強特定用タグ署名変化用値ハッシュ値を減じたものの、タグの周期を法とする逆元を指数とし、タグモジュラスを法として巾乗剰余したものを、前記入力された鍵リストから探し出し、見つかれば対応するユーザー装置の識別子を出力する、ことを特徴とする。
【0057】
本願第17の発明の回数制限署名方法は、第6の発明において前記入力した弱特定タグは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報との三つの成分からなり、前記領域変数から決まる左辺底領域変数と自由領域変数と基本モジュラスと呼ばれる三つの情報との間に、前記左辺底領域変数を底とし、タグ用秘密ライセンス情報を指数とする巾乗に、自由領域変数を乗じたものが、タグ用底ライセンス情報を底とし、タグ用指数ライセンス情報を指数とする巾乗に基本モジュラスを法として等しいという関係式を満たし、前記弱特定用タグ署名は、前記弱特定タグの前記タグ用底ライセンス情報を底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記基本モジュラスを法とする巾乗剰余である、ことを特徴とする。
【0058】
本願第18の発明の回数制限署名方法は、第6の発明において前記入力された弱特定タグ達のおのおのは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報の三つの成分からなり、前記領域変数から決まる左辺底領域変数と自由領域変数と基本モジュラスと呼ばれる三つの情報との間に、前記左辺底領域変数を底とし、タグ用秘密ライセンス情報を指数とする巾乗に、自由領域変数を乗じたものが、タグ用底ライセンス情報を底とし、タグ用指数ライセンス情報を指数とする巾乗に基本モジュラスを法として等しいという関係式を満たし、前記回数制限弱特定ルーチン主ステップは、前記入力された複数個の弱特定可能回数制限署名の弱特定用タグ署名の部分を比較する事によって、同一ユーザー装置によって作られたものであるか否かを判定する、ことを特徴とする。
【0059】
本願第19の発明の回数制限署名方法は、第6または第7の発明において前記タグは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報とを含み、前記領域変数および前記ライセンス情報は、前記タグ用左辺底領域変数を底とし、前記タグ用秘密ライセンス情報を指数として巾乗したものに前記タグ用自由領域変数を乗じたものと、前記タグ用底ライセンス情報を底とし、前記タグ用指数ライセンス情報を指数として巾乗したものとが、前記基本モジュラスを法として等しいというタグ用ライセンス等式と、前記タグ用秘密ライセンス情報が、前記セキュリティパラメーターから定まるある範囲に入っていて、かつ前記タグ用指数ライセンス情報が、前記セキュリティパラメーターから定まる別のある範囲に入っているというタグ用ライセンス情報範囲指定条件とを満たす、ことを特徴とする。
【0060】
本願第20の発明の回数制限署名方法は、第7の発明において前記入力された大人数用タグ達の各々は、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報の三つの成分からなり、前記領域変数から決まる左辺底領域変数と自由領域変数と基本モジュラスと呼ばれる三つの情報との間に、前記左辺底領域変数を底とし、タグ用秘密ライセンス情報を指数とする巾乗に、自由領域変数を乗じたものが、タグ用底ライセンス情報を底とし、タグ用指数ライセンス情報を指数とする巾乗に基本モジュラスを法として等しいという関係式を満たし、前記弱特定用タグ署名は、前記タグ用底ライセンス情報を底とし、前記ライセンスを定められた方法で変換した、第一指数と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、前記強特定用タグ署名は、前記ライセンスを定められた方法で変換したものを底とし、強特定用タグ署名変化用値ハッシュ値と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法として巾乗剰余したものに、前記タグ用底ライセンス情報を乗じたものを底とし、前記ライセンスを定められた方法で変換した、第二指数と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、前記強特定用タグ署名変化用値ハッシュ値は、前記ユーザー装置を使用する度に異なる値のハッシュ値である、ことを特徴とする。
【0061】
本願第21の発明の回数制限署名方法は、第7の発明において前記セットアップステップは、セキュリティパラメーターと、タグモジュラスと呼ばれる正整数と、秘密第一因数と呼ばれる素数と、秘密第二因数と呼ばれる素数とを生成し、前記秘密第一因数と前記秘密第二因数との積である基本モジュラスと呼ばれる数を計算し、さらに自由領域変数と呼ばれるものと、左辺第一底領域変数と呼ばれるものと、左辺第二底領域変数と呼ばれるものを計算し、さらに種乱数と呼ばれる乱数を作り、前記種乱数のハッシュ値から離散対数第一領域変数と呼ばれるものと、離散対数第二領域変数と呼ばれるものとを計算し、前記秘密第一因数と前記秘密第二因数とを秘密裡に保管し、前記種乱数と前記基本モジュラスと前記自由領域変数と、前記左辺第一底領域変数と、前記左辺第二底領域変数と、前記離散対数第一領域変数と、前記離散対数第二領域変数と、とを公開情報として出力し、前記ジョインステップは、前記ユーザー装置にアクセスを行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記左辺第二底領域変数を底とし、前記ライセンスの秘密ライセンス情報と呼ばれるものを指数とし、前記タグモジュラスを法とする巾乗剰余を受け取り、前記サイト管理権授与ステップは、タグ用自由領域変数と呼ばれるものと、タグ用左辺第領域変数と呼ばれるものと、を前記サイト管理装置に渡し、前記大人数用タグは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報とを含み、前記領域変数および前記大人数用タグは、前記タグ用左辺底領域変数を底とし、前記タグ用秘密ライセンス情報を指数として巾乗したものに前記タグ用自由領域変数を乗じたものと、前記タグ用底ライセンス情報を底とし、前記タグ用指数ライセンス情報を指数として巾乗したものとが、前記基本モジュラスを法として等しいというタグ用ライセンス等式と、前記タグ用秘密ライセンス情報が、前記セキュリティパラメーターから定まるある範囲に入っていて、かつ前記タグ用指数ライセンス情報が、前記セキュリティパラメーターから定まる別のある範囲に入っているというタグ用ライセンス情報範囲指定条件とを満たす、ことを特徴とする。
【0062】
本願第22の発明の回数制限署名方法は、第7の発明において前記回数制限弱特定ルーチン主ステップは、前記入力した複数個の大人数用強特定可能回数制限署名の弱特定用タグ署名と呼ばれる部分を比較することによって、同一ユーザー装置によって作られたものであるか否かを判定し、前記回数制限強特定ステップは、前記入力した大人数用強特定可能回数制限署名の組に対し、そのうち任意の二つの大人数用強特定可能回数制限署名を取りだし、第一の大人数用強特定可能回数制限署名の強特定用タグ署名を第二の大人数用強特定可能回数制限署名の強特定用タグ署名で、基本モジュラスを法として剰余したものを底とし、第一の大人数用強特定可能回数制限署名の強特定用タグ署名変化用値ハッシュ値から、第二の大人数用強特定可能回数制限署名の強特定用タグ署名変化用値ハッシュ値を減じたもの指数とし、基本モジュラスを法として巾乗剰余したものを、前記入力された鍵リストから探し出し、見つかれば対応するユーザー装置の識別子を出力し、前記入力された弱特定用タグ署名および強特定タグ署名は、タグと呼ばれるものから作られていて、前記タグは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報の三つの成分からなり、前記領域変数から決まる左辺底領域変数と自由領域変数と基本モジュラスの三つの情報との間に、前記左辺底領域変数を底とし、タグ用秘密ライセンス情報を指数とする巾乗に、自由領域変数を乗じたものが、タグ用底ライセンス情報を底とし、タグ用指数ライセンス情報を指数とする巾乗に基本モジュラスを法として等しいという関係式を満たし、前記弱特定用タグ署名は、前記タグ用底ライセンス情報を底とし、前記ライセンスを定められた方法で変換した、第一指数と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、前記強特定用タグ署名は、前記ライセンスを定められた方法で変換したものを底とし、強特定用タグ署名変化用値ハッシュ値と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法として巾乗剰余したものに、前記タグ用底ライセンス情報を乗じたものを底とし、前記ライセンスを定められた方法で変換した、第二指数と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、前記強特定用タグ署名変化用値ハッシュ値は、前記ユーザー装置を使用する度に異なる値のハッシュ値であり、前記検証ルーチン主ステップは、さらに前記入力された大人数用強特定可能回数制限署名の、弱特定用タグ署名部を作成するのに使用したライセンスと、強特定用タグ署名部を作成するのに使用したライセンスが同一であることを確認する、ことを特徴とする。
【0063】
本願第23の発明のグループ署名プログラムは、コンピュータに、グループ管理装置が、セキュリティパラメーター並びに基本モジュラスと自由領域変数と左辺底領域変数と離散対数第一領域変数と離散対数第二領域変数とを含む領域変数をセットアップする機能、秘密ライセンス情報と底ライセンス情報と指数ライセンス情報とを含むライセンス情報をユーザー装置に渡す機能、ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを含む値を入力する機能、前記領域変数および前記ライセンス情報が、前記左辺底領域変数を底とし、前記秘密ライセンス情報を指数として巾乗したものに前記自由領域変数を乗じたものと、前記底ライセンス情報を底とし、前記指数ライセンス情報を指数として巾乗したものとが、前記基本モジュラスを法として等しいというライセンス等式と、前記秘密ライセンス情報が、前記セキュリティパラメーターから定まるある範囲に入っていて、かつ前記指数ライセンス情報が、前記セキュリティパラメーターから定まる別のある範囲に入っているというライセンス情報範囲指定条件と、を満たすことを確認する機能、エルガマル暗号生成用指数部乱数と呼ばれる乱数を作成し、その乱数を用い前記底ライセンス情報をエルガマル暗号化する機能、ライセンス情報コミット用乱数を作成して前記エルガマル暗号生成用指数部乱数に対するエルガマル暗号生成用指数部乱数コミット用乱数を作成する機能、ゼロ知識証明のコミットメントを作成する機能、コミットメント諸々のハッシュ関数であるチャレンジを生成する機能、ライセンス情報レスポンスを作成して前記ライセンス情報に対するレスポンスを定められた方法で変換し、前記変換されたものを前記エルガマル暗号生成用指数部乱数に乗じ、そこに前記エルガマル暗号生成用指数部乱数コミット用変数を加えたものをエルガマル暗号生成用指数部乱数に対するレスポンスとして出力する機能、前記コミットメントと前記チャレンジと前記レスポンスを署名として出力する機能、検証装置が、前記セキュリティパラメーターと前記領域変数を入力する機能、署名(疑似署名)を入力する機能、前記入力した疑似署名の作成に使われた秘密情報がライセンス等式を満たすか否かを検証する機能、前記領域変数の離散対数第一領域変数部を底とし、前記疑似署名のエルガマル生成用指数部乱数レスポンス部を指数とする巾乗が、前記疑似署名のエルガマル暗号第一成分部を底とし、前記疑似署名の指数ライセンス情報部を定められた方法で変換したもの指数とする巾乗に前記疑似署名のエルガマル暗号生成用指数部乱数コミットを乗じたものとが、前記疑似署名の基本モジュラス部を法として等しくなるかどうかを確認する機能、前記入力した疑似署名の作成に使われた秘密情報がライセンス情報範囲指定条件を満たすか否かを検証する機能、前記ライセンス等式検証ステップと前記エルガマル暗号第一成分等式検証ステップと前記ライセンス情報範囲指定条件検証ステップとで正しく検証されたときに、前記疑似署名が、前記グループ管理装置からライセンスをもらった前記ユーザー装置が前記ライセンスを入力として高速化グループ署名手順を行うことで作成した署名であると判定する機能、を実現させる。
【0064】
本願第24の発明の回数制限署名プログラムは、コンピュータに、グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得する機能、サイト管理装置が、入力値のハッシュ値から弱特定用タグを作成する機能、前記入力値と前記弱特定用タグとを出力する機能、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から前記弱特定タグを入力する機能、メッセージを入力する機能、前記弱特定タグと前記ライセンス情報とから弱特定用タグ署名を計算する機能、前記ライセンス情報を保有することと前記弱特定タグから前記弱特定タグ署名生成に用いた情報を保有することと前記保有するライセンス情報と前記生成に用いた情報が同一であることとを証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、検証装置が、署名(弱特定可能二重署名禁止疑似署名)を入力する機能、前記弱特定可能二重署名禁止疑似署名に対し前記弱特定可能二重署名禁止疑似署名を作成した装置が前記グループ管理装置からライセンスを得たユーザー装置であること及び前記弱特定可能二重署名禁止署名計算は前記ライセンスを得た前記ユーザー装置が前記ライセンスを入力して行うことによって得られたものであることを確認する機能、前記入力した弱特定可能二重署名禁止疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の前記弱特定可能二重署名禁止署名を入力する機能、前記入力された複数個の弱特定可能二重署名禁止署名の中から同一ユーザー装置によって作られたものを検索し、そのような弱特定可能二重署名禁止署名の組があればそれを出力する機能、を実現させる。
【0065】
本願第25の発明の回数制限署名プログラムは、コンピュータに、グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得し、取得した公開鍵のリストを出力する機能、サイト管理装置が、入力値のハッシュ値から弱特定用タグと強特定用タグを作成する機能、前記入力値と前記弱特定用タグと前記強特定用タグとを出力する機能、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から前記弱特定タグと前記強特定タグとを入力する機能、メッセージを入力する機能、前記弱特定タグと前記ライセンス情報とから弱特定用タグ署名を計算する機能、前記強特定タグと前記ライセンス情報とから強特定用タグ署名を計算する機能、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記装置が保有することと、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記装置が保有することと、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることとを証明するためのデータ(正当性証明書を)生成する機能、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、検証装置が、署名(強特定可能二重署名禁止疑似署名)を入力する機能、前記入力した強特定可能二重署名禁止疑似署名に対し前記強特定可能二重署名禁止疑似署名を作成した装置が前記グループ管理装置からライセンスを得たユーザー装置であること及び強特定可能二重署名禁止署名計算は前記ライセンスを得た前記ユーザー装置が前記ライセンスを入力して行うことによって得られたものであることを確認する機能、前記入力した弱特定可能二重署名禁止疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の強特定可能二重署名禁止署名を入力する機能、前記入力した複数個の強特定可能二重署名禁止署名の中から、同一弱特定タグと同一強特定タグと同一のライセンスによって作られたものを検索し、そのような強特定可能二重署名禁止署名の組があればそれを出力する機能、前記出力した強特定可能二重署名禁止署名の組ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された組から前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出して出力する機能、を実現させる。
【0066】
本願第26の発明の回数制限署名プログラムは、コンピュータに、グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得する機能、サイト管理装置が、制限回数と呼ばれるものとサイト識別子と呼ばれるものを含むものを入力する機能、前記入力値のハッシュ値から前記制限回数個の弱特定用タグを作成する機能、前記入力値と前記制限回数個の前記弱特定用タグとを出力する機能、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から制限回数と制限回数個の弱特定タグとサイト識別子と弱特定サイトにおける弱特定タグ使用履歴とを入力する機能、メッセージを入力する機能、前記入力された制限回数個の前記弱特定タグ達の中で前記弱特定サイトにおける弱特定タグ使用履歴に登録されていないものを選ぶ機能、前記選ばれた弱特定タグに対し弱特定用タグ署名を計算する機能、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、検証装置が、署名(弱特定可能回数制限疑似署名)を入力する機能、前記ライセンス情報を前記弱特定可能回数制限疑似署名を作成した装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記弱特定可能回数制限疑似署名を作成した装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを確認する機能、前記入力された弱特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の弱特定可能回数制限署名を含むものを入力する機能、前記入力された複数個の弱特定可能回数制限署名の中から同一ユーザー装置によって作られた回数制限を越えた個数個の弱特定可能回数制限署名を探し出し、そのような弱特定可能回数制限署名の組があればそれを出力する機能、
を実現させる。
【0067】
本願第27の発明の回数制限署名プログラムは、コンピュータに、グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得し、取得した公開鍵のリストを出力する機能、サイト管理装置が、制限回数と呼ばれるものとサイト識別子と呼ばれるものを含むものを入力する機能、前記入力値のハッシュ値から前記制限回数個の弱特定用タグと前記制限回数個の強特定用タグを作成する機能、前記入力値と前記制限回数個の前記弱特定用タグと前記制限回数個の前記強特定用タグとを出力する機能、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から制限回数,制限回数個の弱特定タグと強特定タグとの組,強特定サイトにおけるタグ使用履歴およびサイト識別子を入力する機能、メッセージを入力する機能、前記入力された制限回数個のタグの組達の中で前記強特定サイトにおけるタグ使用履歴に登録されていないものを選ぶ機能、前記選ばれた弱特定タグと前記ライセンス情報とから弱特定用タグ署名を計算する機能、前記選ばれた強特定タグと前記ライセンス情報とから強特定用タグ署名を計算する機能、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記装置が保有すること、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることとを、証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、検証装置が、署名(強特定可能回数制限疑似署名)を入力する機能、前記入力した強特定可能回数制限疑似署名に対し、前記強特定可能回数制限疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が強特定可能回数制限署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する機能、前記入力された強特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の強特定可能回数制限署名を入力する機能、前記入力された複数個の強特定可能回数制限署名の中から同一ユーザー装置によって作られた回数制限を越えた個数個の強特定可能回数制限署名を探し出し、そのような強特定可能回数制限署名の組があればその組の内の一対を出力する機能、前記出力した強特定可能回数制限署名の一対ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された一対から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出して出力する機能、を実現させる。
【0068】
本願第28の発明の回数制限署名プログラムは、コンピュータに、グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、ユーザー装置と通信を行い前記ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得する機能、サイト管理装置にサイト管理用の情報を与える機能、サイト管理装置に制限回数個の大人数用タグを発行する機能、サイト管理装置が、制限回数を含むものを入力する機能、前記グループ管理装置とアクセスしてサイト管理に必要な情報を取得する機能、前記グループ管理装置とアクセスして制限回数個の大人数用タグを受け取る機能、前記入力値と前記制限回数個の大人数用タグとを出力する機能、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から制限回数と制限回数個の弱特定タグとサイト識別子と弱特定サイトにおける弱特定タグ使用履歴とを入力する機能、メッセージを入力する機能、前記入力された制限回数個の前記弱特定タグ達の中で前記弱特定サイトにおける弱特定タグ使用履歴に登録されていないものを選ぶ機能、前記選ばれた弱特定タグに対し弱特定用タグ署名を計算する機能、前記ライセンス情報をが保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、検証装置が、署名(大人数用弱特定可能回数制限疑似署名)を入力する機能、前記ライセンス情報を前記大人数用弱特定可能回数制限疑似署名を作成した装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記大人数用弱特定可能回数制限疑似署名を作成した装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを確認する機能、前記入力された大人数用弱特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の大人数用弱特定可能回数制限署名を含むものを入力する機能、前記入力された複数個の大人数用弱特定可能回数制限署名の中から同一ユーザー装置によって作られた回数制限を越えた個数個の大人数用弱特定可能回数制限署名を探し出し、そのような大人数用弱特定可能回数制限署名の組があればそれを出力する機能、を実現させる。
【0069】
本願第29の発明の回数制限署名プログラムは、コンピュータに、グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、ユーザー装置と通信を行い前記ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得し、前記取得した公開鍵達のリストを出力する機能、サイト管理装置にサイト管理用の情報を与える機能、サイト管理装置に制限回数個の大人数用タグを発行する機能、前記サイト管理装置が、制限回数を含むものを入力する機能、前記グループ管理装置とアクセスしてサイト管理に必要な情報を取得する機能、前記グループ管理装置とアクセスして制限回数個の大人数用タグを受け取る機能、前記入力値と前記制限回数個の大人数用タグとを出力する機能、前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から制限回数と制限回数個の大人数用タグと強特定サイトにおけるタグ使用履歴とサイト識別子とを入力する機能、メッセージを入力する機能、前記入力した制限回数個のタグの組達の中で前記強特定サイトにおけるタグ使用履歴に登録されていないものを選ぶ機能、前記選ばれたタグと前記ライセンス情報とから弱特定用タグ署名を計算する機能、前記選ばれたタグと前記ライセンス情報とから強特定用タグ署名を計算する機能、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記装置が保有すること、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることと、前記弱特定タグ署名生成に用いたタグと前記強特定タグ署名生成に用いたタグとが同一であることとを証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、検証装置が、署名(大人数用強特定可能回数制限疑似署名)を入力する機能、前記入力した大人数用強特定可能回数制限疑似署名に対し、前記大人数用強特定可能回数制限疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が大人数用強特定可能回数制限署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する機能、前記入力された大人数用強特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の大人数用強特定可能回数制限署名を入力する機能、前記入力された複数個の大人数用強特定可能回数制限署名の中から同一ユーザー装置によって作られた回数制限を越えた個数個の強特定可能回数制限署名を探し出し、そのような大人数用強特定可能回数制限署名の組があればその組の内の一対を出力する機能、前記出力した大人数用強特定可能回数制限署名の一対ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された一対から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出して出力する機能、を実現させる。
【0070】
【発明の実施の形態】
初めに、本発明の特徴について説明する。
【0071】
本発明では、グループ管理装置、ユーザー装置(メンバー装置)、検証装置に、新たにサイト管理装置と呼ばれるものを加える。サイト管理装置は、強特定サイト管理装置と弱特定サイト管理装置に分かれる。
【0072】
強特定サイト管理装置は、制限回数と強特定タグとを公開する(他の装置からアクセス可能な状態に置く)。メンバー装置は、各強特定サイト管理装置に対し、強特定サイト管理装置が公開した強特定タグを利用して署名を作成する。同一メンバー装置が、同一強特定サイトで制限回数を越えて署名した場合のみ、匿名性が破れ、不正を行ったメンバー装置が特定される。同時に、どの署名(の組)が不正であるかも分かる。同一メンバー装置が行った署名でも、相異なる強特定サイトに対し署名する限りは、何回署名してもかまわないことに注意されたい。
【0073】
弱特定サイト管理装置は、制限回数と弱特定タグとを公開する。メンバー装置は、弱特定タグを利用して署名を作成する。弱特定サイトの場合は、同一メンバー装置が、同一弱特定サイトで制限回数を越えて署名しても、不正をした人物の匿名性は守られる。しかし、どの署名(の組)が不正であるかは特定することができる。
【0074】
本発明の署名系を、回数制限署名と呼ぶ。普段は匿名性を保っているが、回数制限を越えた不正が発覚したとき、サイト管理装置が署名装置を特定することで不正装置を発見できる。このことにより不正抑制をしているのである。
【0075】
より詳しく言えば、回数制限署名とは、
1.グループ管理装置は、秘密鍵を秘密裡に持っていて、この秘密鍵から、公開鍵、領域変数を作る。
2.グループ管理装置は、前記秘密鍵を用い、ユーザー装置にライセンスを発行する。以後ライセンスを受け取ったユーザー装置を、グループのメンバー或いはメンバー装置と呼ぶ。
3.サイト管理装置は、制限回数および(強特定または弱特定)タグを公開。
4.メンバー装置のみが署名を計算できる。
5.メンバー装置は、各サイト管理装置にアクセスし、サイト管理装置の公開するタグを使用して署名を作成。この署名をサイト管理装置に対する署名と呼ぶ。
6.検証装置は、署名と同一フォーマットの情報(以下疑似署名と呼ぶ)が、メンバー装置によって作られた正当な署名であるか否かを確認することができる。
7.どんな装置も(グループ管理装置ですら)、どのメンバー装置が署名を作成したかを特定することはできない。
8.但し、メンバー装置があるサイトに対し、制限回数を越えて署名した場合、その署名達は(弱または強)特定される。制限回数を越えない限り、グループ管理装置でも署名装置を特定することはできない。
【0076】
回数制限署名で、(弱または強)サイト管理装置が指定できる制限回数を1に制限した署名系(つまり、同一メンバー装置が同一サイトで二度署名すると不正と見做される署名系)を二重署名禁止署名と呼ぶ。
【0077】
本発明は、どのようなグループ署名系を改良しても得ることができるが、特に前述のアテニース(Ateniese)、カメニッシュ(Camenisch)、ジョイ(Joye), ツディック(Tsudik)等によるグループ署名系に対して考える。
【0078】
そこで、本発明では、まずアテニース等の系を改良した、処理速度が高速なグループ署名を提案する。処理速度を高速化したグループ署名系は、レスポンスをあたかもチャレンジであるかのように使うことを特徴とする。これにより、高速なグループ署名系を実現する。
【0079】
次に、処理速度が高速なグループ署名を改良した弱特定可能二重署名禁止署名と強特定可能二重署名禁止署名を提案する。弱特定可能二重署名禁止署名は、弱特定タグと呼ばれるものを使用することを特徴とする。弱特定タグに対し、メンバー装置が弱特定用タグ署名というものをつける。二つの署名につけられた弱特定用タグ署名を比較する事で、同一メンバー装置が同一サイトで行った署名であるか否かを検証することができる。強特定可能二重署名禁止署名は、弱特定タグ、強特定タグ、鍵リストと呼ばれるものを使用することを特徴とする。弱特定タグ、強特定タグに対し、メンバー装置はそれぞれ弱特定用タグ署名、強特定用タグ署名というものをつける。二つの署名につけられた弱特定用タグ署名を比較する事で、同一メンバー装置が同一サイトで行った署名であるか否かを検証することができ、更に強特定用タグ署名から計算により、公開鍵を割り出し、その公開鍵を鍵リストから見つけることで、署名装置を特定することができる。
【0080】
更に、これを改良した弱特定可能回数制限署名と強特定可能回数制限署名とを提案する。弱特定可能回数制限署名は、複数個の弱特定可能二重署名禁止署名をorのゼロ知識証明の技術を用いて併せることを特徴とする。これにより、回数制限が2以上の場合に、弱特定可能二重署名禁止署名を拡張できる。強特定可能回数制限署名は、複数個の強特定可能二重署名禁止署名をorのゼロ知識証明の技術を用いて併せることを特徴とする。これにより、回数制限が2以上の場合に、強特定可能二重署名禁止署名を拡張できる。
【0081】
しかし、この(弱特定可能および強特定可能)回数制限署名は、制限回数が大きい場合には処理速度に影響するので、これを更に改良した大人数用弱特定可能回数制限署名と大人数用強特定可能回数制限署名とを提案する。この改良された系の場合、処理速度が回数制限によらない。大人数用弱特定可能回数制限署名は、orのゼロ知識証明の代わりにグループ署名を用いることを特徴とする。これにより、処理速度が回数制限によらない弱特定可能回数制限署名を実現できる。大人数用強特定可能回数制限署名は、orのゼロ知識証明の代わりにグループ署名を用いることを特徴とする。これにより、処理速度が回数制限によらない強特定可能回数制限署名を実現できる。
【0082】
メンバー装置が出力した二つの弱特定タグ署名が、同一の弱特定タグと同一のライセンス情報を用いて作られたものであるか否かを判定できるという性質を弱特定性質という。
【0083】
メンバー装置が出力した二つの強特定タグ署名がもし同一の強特定タグと同一のライセンス情報を用いて作られたものであるなら、その同一のライセンスの定められた部分情報を計算することができ、更にライセンスの定められた部分情報をメンバー装置の識別子と対応させる鍵リストと呼ばれるリストから部分情報を検索することでライセンスと対応しているメンバー装置のID(識別子)を知ることができるものであるという性質を強特定性質という。
【0084】
以降の記述において、 a^bはaのb乗を意味し、a_bはaに下付き添字bが付いた状態を示す。
【0085】
また、グループ管理装置,ユーザー装置,検証装置及びサイト管理装置の各装置は、必要に応じてデータをキーボード等の入力機器から入力,ネットワークを介して他の装置から受信,或いは自己で設定し、記憶装置を作業領域に使用して処理(ルーチン)を実行し、結果データをメモリー等の記憶機器に格納し、必要に応じてプリンタやディスプレイ等の出力機器に出力,或いはネットワークを介して他の装置に送信する。以降に記述する各実施の形態での各ルーチンは、これらの機器を使用して動作する。
【0086】
次に、本発明の第1の実施の形態について、図面を参照して詳細に説明する。第1の実施の形態では、アテニース(Ateniese)等によるグループ署名系の処理速度を高速化する方法を述べる。
【0087】
図1は、本発明の第1の実施の形態の構成を示す図であり、グループ署名系の装置間の関係をブロック図で示す。
【0088】
図1を参照すると、グループ署名系は、グループ管理装置11と、ユーザー装置(メンバー装置)12と、検証装置13とを備える。上記の各装置はプログラム制御で動作するサーバ等の情報処理装置であり、上記の各装置はインターネット等のネットワークで結ばれている。通常、ユーザー装置(メンバー装置)12は複数存在し、各ユーザー装置(メンバー装置)12はID(識別子)を有する。グループ管理装置11とユーザー装置12との間は、例えばマルチパーティプロトコル等で通信を行う。
【0089】
グループ管理装置11は、まずグループ署名セットアップルーチンを実行し、グループ署名に必要な基本的パラメーター(領域変数と呼ばれる)をセットアップする。次にグループ署名ジョインルーチンをユーザー装置12と共に実行する。グループ管理装置11は領域変数とライセンスとをユーザー装置12に渡し(GS-BL L1)、グループ管理装置11はライセンスに対応する公開鍵およびユーザー装置12のIDを受け取る(GS-BL L2)。
【0090】
ライセンスを受け取ったユーザー装置12は、グループのメンバーと見做される。そこで、以後、ライセンスを受け取ったユーザー装置12をメンバー装置と呼ぶ。メンバー装置は、ライセンスを用いメッセージに対し署名を行うことができる。
【0091】
グループ署名系において、グループ管理装置以外の装置は、どの装置が署名をしたのかを特定することはできない。また、メンバー装置以外の装置(ライセンスを持っていない装置)は、署名を作ることができない。
【0092】
検証装置13は、領域変数を用い(GS-BL L4)、署名の正当性を検証する装置である。検証装置13は、送られてきたデータ(以下疑似署名。送られてきた段階では署名か否かわからないので疑似署名と称す)が、メンバー装置がライセンスを用い正しい手順で作成した署名(GS-BL L3)であるのか否か(GS-BL L8)を決定し、出力する(GS-BL L5)装置である。
【0093】
犯罪等何らかの理由で署名者を特定したい場合には、署名をグループ管理装置11に送る(GS-BL L6)。グループ管理装置11は、グループ署名セットアップルーチン時に作成した秘密情報を用いて署名者(メンバー装置)を特定する(GS-BL L7)。
【0094】
以下に、より詳細に説明する。
【0095】
グループ管理装置11は、まず以下のグループ署名用セットアップルーチン(グループ署名セットアップ手段)を行う。図2は、本発明の高速化したグループ署名系のセットアップルーチンを示すフローチャートである。
【0096】
図2を参照すると、まずグループ管理装置11は、セキュリティ・パラメーターε、μ、νを決める(ステップGS-SU 1)。尚、通常はν = 1024, μ = ε = 160とすればよい。組(ε、μ、ν)をセキュリティパラメーターと呼び、νを素因数ビット数セキュリティパラメーターと呼び、εを統計的ゼロ知識非完全度合いセキュリティパラメーターと呼び、μを検証エラーセキュリティパラメーターと呼ぶ。
【0097】
次にグループ管理装置11はλ = 2(ν + ε)、 γ = λ + μ + ε + 4とし、以下、-2λ以上2λ以下の整数全体をΛと書き、2γ - 2λ以上 2γ + 2λ以下の整数全体をΓと書く(ステップGS-SU 2)。
【0098】
素数p',q'を、 p = 2p' + 1, q = 2q' + 1がνビットになるように選び、n = pqを計算する(ステップGS-SU 3)。pを秘密第一因数と呼び、qを秘密第二因数と呼び、nを基本モジュラスと呼ぶ。
【0099】
グループ管理装置11は、QR(n)の元 a, aをランダムに選ぶ。但し、ここで、QR(n)は、Z/nZの元で平方剰余であるもの全体を表す(ステップGS-SU 4)。aを左辺底領域変数と呼び、更にaを自由領域変数と呼ぶ。
【0100】
(Z/p'q'Z)の元χをランダムに選ぶ(ステップGS-SU 5)。
【0101】
グループ管理装置11はランダムにQR(n)の元gをランダムに選び、gχをhとする(ステップGS-SU 6)。gを離散対数第一領域変数と呼び、hを離散対数第二領域変数と呼ぶ。
【0102】
グループ管理装置11は (p', q', p, q, χ)を秘密鍵として秘密裡に保持し、更に (ε,μ,ν, n, a, a, g, h)を公開鍵として公開する(ステップGS-SU 7)。
【0103】
尚、領域変数は、上記の基本モジュラスと自由領域変数と左辺底領域変数と離散対数第一領域変数と離散対数第二領域変数とを含む。
【0104】
グループ管理装置11は過去にグループ署名用セットアップルーチンを終えているとする。グループに加わりたい場合、ユーザー装置12は、グループ管理装置11と、以下のグループ署名用ジョインルーチン(グループ署名用ジョイン手段)を行う。図3は本発明のグループ署名用ジョインルーチンの行い方を示すフローチャートである。
【0105】
図3を参照すると、ユーザー装置12は、まず g, h がIのハッシュ値から作られていることを確認する。ユーザー装置12は秘密裡かつランダムにλビット以下の非負整数x[2], t[2]を選び、C[9] = g^(x[2]) h^(t[2]) mod nを計算し、グループ管理装置11に、C[9]を送る(ステップGS-J 1)。
【0106】
次にグループ管理装置11はC[9]がQR(n)の元であることを確認し、ランダムにλビット以下の非負整数βをユーザー装置12に送る(ステップGS-J 2)。
【0107】
ユーザー装置12は x[2] + β を 2λで割った商をθ、余りをxとする。計算し、C = a mod nを計算し、C をグループ管理装置11に送る(ステップGS-J 3)。
【0108】
グループ管理装置11はCがQR(n)の元であることを確認する。
【0109】
更にユーザー装置12はグループ管理装置11に次の3つを満たすx[3], θ[3]、t[2, 3]の知識を証明するゼロ知識証明書をグループ管理装置11に送信(ステップGS-J 4) 。尚、上記の次の3つとは、▲1▼x[3] の絶対値は2γ 未満,▲2▼a^x[3] = C mod n,▲3▼C[9] gβ = g^x[3] g^(θ[3] 2λ) h^t[2, 3] mod nである。
【0110】
具体的には、次のようにする。
【0111】
ユーザー装置12は、λ + ε ビットの乱数x[4, 7]、t[2, 4, 7]を秘密裡に生成。更に、θのビット数 + εビットの乱数θ[4, 7]を秘密裡に生成。C[4, 7] = a^x[4, 7] mod n, C[4, 7, 9] = g^(x[4, 7]) g^(θ[4, 7] 2λ)h^(t[2, 4, 7]) mod nを作成。更にユーザー装置12は、c = Hash(ε||μ||ν|| n|| a|| a||g||h||β||C ||C[4, 7]||C[4, 7, 9])を計算。ここでHashはハッシュ関数。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。そしてx[5, 7] = c x + x[4, 7], t[2, 5, 7] = c t + t[2, 4, 7], θ[5, 7] = c θ + θ[4, 7]を作成。(C[4, 7], C[4, 7, 9], c, x[5, 7], t[2, 5, 7], θ[5, 7]) を送信。
【0112】
グループ管理装置11は証明書の正当性を検証する。即ち、まずC^c = a^x[5, 7] C[4, 7] mod n と、(C[9] gβ)^c = g^x[5, 7] g^(θ[5, 7] 2λ) h^t[2, 5, 7]C[4, 7, 9] mod nを確認し、次にx[5, 7]の絶対値が2^(γ - 3)未満であることを確認する。
【0113】
グループ管理装置11はΓから素数eをランダムに選び、A = (C a)1/e mod nを計算し、Aとeをユーザー装置12に送る(ステップGS-J 5)。
【0114】
ユーザー装置12は a a = A mod n を確認する。更にeがΓの元であることを確認する。
【0115】
以上でユーザー装置12がグループ管理装置11から受け取った(x, e, A)をユーザー装置12のライセンスと呼ぶ。ライセンスを受け取ったユーザー装置12を以後メンバー装置と呼ぶ。
【0116】
メンバー装置はxを秘密鍵として秘密裡に保管し、更にeとAを保管する。(x, A, e)をライセンス、或いはライセンス情報と呼ぶ。xを秘密ライセンス情報と呼び、Aを底ライセンス情報と呼び、eを指数ライセンス情報と呼ぶ。また、等式a a = A mod n をライセンス等式と呼ぶ。ライセンス(x, A, e)は、ライセンス等式を満たす。更にxの絶対値は2λ以下であり、eはΓの元である。このx,eの範囲に関する条件をライセンス情報範囲指定条件と呼ぶ。
【0117】
グループ管理装置11は、以上で得たC[1]を、メンバー装置のIDと共に公開する(ステップGS-J 6) 。(ID, C)をメンバー装置の公開鍵と呼ぶ。各メンバー装置に対する公開鍵(ID, C)リストを以後鍵リストと呼ぶ。
【0118】
グループ管理装置11は過去にグループ署名用セットアップルーチンを終えているとする。メンバー装置がライセンス(x,A,e)を持っていたとする。メンバー装置は、メッセージに署名するには、以下の高速化グループ署名ルーチン(グループ署名手段)を行う。
【0119】
図4は、本発明の高速化グループ署名ルーチンの動作を示すフローチャートである。
【0120】
以下、メッセージmに署名する方法を述べる。
【0121】
図4を参照すると、まずメンバー装置は2λ以下の非負整数uをランダムに選び、エルガマル暗号(G, H) = (g mod n, Ah mod n)を計算する(ステップGS-SIG1)。uをエルガマル暗号生成用指数部乱数と呼び、等式G = g mod nをエルガマル暗号第一成分等式と呼び、等式H = Ah mod nをエルガマル暗号第二成分等式と呼ぶ。
【0122】
次にメンバー装置は絶対値がλ + μ + εビット以下の乱数x[4]、e[4]、絶対値がλ + μ + ε + γビット以下の乱数u[4]を選び(GS-SIG2)、x と e のコミットメントa[4] = a^(- x[4])H^(e[4])h^(-e[4]u - u[4] ) mod nを計算し、uのコミットメントG[4] = G^(u[4]) mod nを計算する(ステップGS-SIG3)。
【0123】
メンバー装置はx と e の知識の証明に対するチャレンジ c =Hash(n||g||h||a||a||H||G||a[4]||G[4]||m)を計算する(ステップGS-SIG4)。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。
【0124】
そしてメンバー装置は x の知識の証明に関するレスポンスを x[5] = cx +x[4]の様に, x と xおよびeの知識の証明にたいするチャレンジ c を用いて計算し、e の知識の証明に関するレスポンスを e[5] = c(e - 2γ) + e[4]の様に、e と xおよびeの知識の証明に対するレスポンス c を用いて計算し、u の知識に関するレスポンスをu[5] = (e[5] + c 2γ)u +u[4]の様に、u と x の知識の証明に関するレスポンス e[5]をもちいて計算する。ここで、u の知識の証明に対するチャレンジに e[4] を用いたため、u[5] は ux の知識の証明に対するチャレンジを c とした時のそのレスポンスと見做すことができる。それゆえ、上記知識 ux が u と x の積であることも証明される(ステップGS-SIG5)。
【0125】
最後に(m, r, w, G, H, a[4], G[4], c, x[5],e[5], u[5])を署名として出力する(ステップGS-SIG6)。
【0126】
グループ管理装置11は過去にグループ署名用セットアップルーチンを終えているものとする。検証装置13は、(m, G, H, a[4], G[4], c,x[5],e[5], u[5])が、メンバー装置が高速化グループ署名ルーチンに従って作った署名であるか否かを確認したい。
【0127】
以下のグループ署名検証ルーチン(グループ署名検証手段)を行う。図5は、本発明のグループ署名検証ルーチンの動作を示すフローチャートである。
【0128】
図5を参照すると、検証装置13は先ずa^c a[4] = a^(- x[5])H^(e[5] + c 2^(γ))h^(- u[5]) mod n を確認し(ステップGS-VER1)、次にg^(u[5]) = G^(e[5] + c2^(γ))G[4] mod n を確認し(ステップGS-VER2)、更にc =Hash(n||g||h||a||a||H||G||a[4]||G[4]||m)を確認し(ステップGS-VER3)、x[5]の絶対値、及びe[5]の絶対値がλ + μ + ε + 1以下であることを確認する(ステップGS-VER4)。
【0129】
以上の確認が全て正しければ、検証装置13は署名を受理し(ステップGS-VER5)、そうでなければ棄却する(ステップGS-VER6)。
【0130】
グループ管理装置11は過去にグループ署名用セットアップルーチンを終えているものとする。メンバー装置がグループ署名ルーチンに従い署名(m, r, w, G, H, a[4], G[4], c,x[5], e[5], u[5])を作ったとする。
【0131】
装置を特定したいときには、以下のグループ署名における署名装置特定ルーチン(署名装置特定手段)を行う。
【0132】
図6は、本発明のグループ署名における署名装置特定ルーチンの動作を示すフローチャートである。
【0133】
図6を参照すると、グループ管理装置11はグループ署名用セットアップルーチンで作った秘密鍵χを用い、H / Gχ mod n を計算し(ステップGS-DET 1) 、鍵リスト{(ID, C, C[1],A, e)}の第四引数がH / Gχ mod nと一致している人物を見つけ出す(ステップGS-DET 2〜GS-DET 3)。
【0134】
次に、本発明の第2の実施の形態について、図面を参照して詳細に説明する。第2の実施の形態は、第1の実施の形態で説明した署名系を改良し、弱特定可能二重署名禁止署名を実現する方法を述べる。
【0135】
図7は、本発明の第2の実施の形態の構成を示す図であり、二重署名禁止署名系に使用する装置間の関係をブロック図で示す。
【0136】
図7を参照すると、二重署名禁止署名に使用する装置として、グループ管理装置21と、ユーザー装置(メンバー装置)22と、検証装置23と、サイト管理装置24とを備える。上記の各装置はプログラム制御で動作するサーバ等の情報処理装置であり、上記の各装置はインターネット等のネットワークで接続される。ユーザー装置(メンバー装置)22とサイト管理装置24はそれぞれ複数存在し、各ユーザー装置22と各サイト管理装置24はIDを有する。1つのサイト管理装置24内に複数のサイトを作ることができる。各サイトはIDを有する。サイトは、例えばインターネット上のホームページ(Webサイト)のようなものである。
【0137】
まず、グループ管理装置21は、後述する回数制限署名用セットアップルーチンを行い、領域変数を決める。
【0138】
ユーザー装置22は、グループ管理装置21にアクセスし、ライセンスをもらい(TS-BL L1)、ユーザー装置22は対応する公開鍵をグループ管理装置21に送信する(TS-BL L2)。ライセンスを受け取ったユーザー装置22は、グループのメンバーと見做される。そこで、以後、ライセンスを受け取ったユーザー装置22をメンバー装置と呼ぶ。メンバー装置は、ライセンスと、各サイト管理装置24が公開するタグ(弱特定タグ)(TS-BL L3)を用いてメッセージに対し弱特定可能二重署名禁止署名を行うことができる。
【0139】
二重署名禁止署名系において、グループ管理装置以外の装置は、どの装置が署名をしたのかを特定することはできない。また、メンバー装置以外の装置(ライセンスを持っていない装置)は、署名を作ることができない。
【0140】
検証装置23は、領域変数(TS-BL L5)およびタグ(弱特定タグ)(TS-BL L6)を用い署名の正当性を検証する装置である。検証装置23は、送られてきたデータ(以下疑似署名)が、メンバー装置がライセンスを用い正しい手順で作成した署名(TS-BL L4)であるのか否か(TS-BL L8)を判定し、出力する事ができる。また、検証装置23に、署名達を入力すると、そこから、同一メンバー装置が同一サイトで行った署名を見つけ出すことができる(TS-BL L7)。
【0141】
以下に、より詳細に説明する。
【0142】
グループ管理装置21は、まず以下の回数制限署名用セットアップルーチン(回数制限署名用セットアップ手段)を行う。
【0143】
図8は、本発明の回数制限署名用セットアップルーチンの動作を示すフローチャートである。
【0144】
図8を参照すると、まずグループ管理装置21は、セキュリティ・パラメーターε、μ、νを決める(ステップTS-SU 1)。尚、通常はν = 1024, μ = ε = 160とすればよい。組(ε、μ、ν)をセキュリティパラメーターと呼び、νを素因数ビット数セキュリティパラメーターと呼び、εを統計的ゼロ知識非完全度合いセキュリティパラメーターと呼び、μを検証エラーセキュリティパラメーターと呼ぶ。
【0145】
次にグループ管理装置21はλ = 2(ν + ε)、 γ = λ + μ + ε + 4とし、以下、-2λ以上2λ以下の整数全体をΛと書き、2γ - 2λ以上 2γ + 2λ以下の整数全体をΓと書く(ステップTS-SU 2)。
【0146】
素数p',q'を、 p = 2p' + 1, q = 2q' + 1がνビットになるように選び、n = pqを計算する(ステップTS-SU 3)。pを秘密第一因数と呼び、qを秘密第二因数と呼び、nを基本モジュラスと呼ぶ。
【0147】
グループ管理装置21は、QR(n)の元 a, aをランダムに選ぶ。但し、ここで、QR(n)は、Z/nZの元で平方剰余であるもの全体を表す。aを左辺底領域変数と呼び、aを更に自由領域変数と呼ぶ。νビットの素数p[1]を取る。p[1]をタグモジュラスと呼ぶ。更に(Z/p[1]Z)の元a[1]をランダムにとる。a[1]をタグ用左辺底領域変数と呼ぶ(ステップTS-SU 4)。
【0148】
グループ管理装置21はνビットのビット列 Iをランダムに選び、そのハッシュ値からQR(n)の元g, hを作る(ステップTS-SU 5)。
【0149】
グループ管理装置21は(p[1], a[1],I, g, h)を公開鍵として公開する。Iを種乱数と呼び、gを離散対数第一領域変数と呼び、hを離散対数第二領域変数と呼ぶ。
【0150】
グループ管理装置21は (p', q', p, q, χ)を秘密鍵として秘密裡に保持し(ステップTS-SU 6)、更に (ε,μ,ν, n, a, a, g, h)を公開鍵として公開する(ステップTS-SU 7)。
【0151】
グループ管理装置21は過去に回数制限署名用セットアップルーチンを終えているものとする。
【0152】
グループに加わりたい場合、ユーザー装置22はグループ管理装置21と、以下の回数制限署名用ジョインルーチン(回数制限署名用ジョイン手段)を行う。
【0153】
図9は、本発明の回数制限署名用ジョインルーチンの動作を示すフローチャートである。
【0154】
図9を参照すると、ユーザー装置22はまず g, h がIのハッシュ値から作られていることを確認する。ユーザー装置22は秘密裡かつランダムにλビット以下の非負整数x[2], t[2]を選び、C[9] = g^(x[2]) h^(t[2]) mod nを計算し、グループ管理装置21に、C[9]を送る(ステップTS-J 1)。
次にグループ管理装置21はC[9]がQR(n)の元であることを確認し、ランダムにλビット以下の非負整数βをユーザー装置22に送る(ステップTS-J2)。
【0155】
ユーザー装置22は x[2] + β を 2λで割った商をθ、余りをxとする。計算し、C = a mod nを計算し、 C をグループ管理装置21に送る(ステップTS-J3)。
【0156】
グループ管理装置21はCがQR(n)の元であることを確認する。
【0157】
ユーザー装置22はC[1] = a[1]^x mod p[1]を計算し、C[1]をグループ管理装置21に送る(ステップTS-J 3)。
【0158】
グループ管理装置21はC[1]がQR(n)の元であることを確認する。
【0159】
更にユーザー装置22はグループ管理装置21に次の4つを満たすx[3], θ[3]、t[2, 3]の知識を証明するゼロ知識証明書をグループ管理装置21に送信(ステップTS-J 4)。尚、上記の次の4つとは、▲1▼x[3] の絶対値は2γ 未満,▲2▼a^x[3] = C mod n,▲3▼C[9] gβ = g^x[3] g^(θ[3] 2λ) h^t[2, 3] mod n,▲4▼a[1]^x[3] = C[1] mod p[1]である。
【0160】
具体的には、次のようにする。
【0161】
ユーザー装置22は、λ + ε ビットの乱数x[4, 7]、t[2, 4, 7]を秘密裡に生成。更に、θのビット数 + εビットの乱数θ[4, 7]を秘密裡に生成。C[4, 7] = a^x[4, 7] mod n, C[4, 7, 9] = g^(x[4, 7]) g^(θ[4, 7] 2λ)h^(t[2, 4, 7]) mod n、C[1, 4, 7] = a[1]^x[4, 7] mod p[1]を作成。更にユーザー装置22は、c = Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||C[9]||β||C||C[1]||C[4, 7]||C[4, 7, 9]||C[1, 4, 7])を計算。そしてx[5, 7] = c x + x[4, 7], t[2, 5, 7] = c t + t[2, 4, 7], θ[5, 7] = c θ + θ[4, 7]を作成。(C[4, 7], C[4, 7, 9], C[1, 4, 7], c, x[5, 7], t[2, 5, 7], θ[5, 7]) を送信。
【0162】
グループ管理装置21は証明書の正当性を検証する。即ち、まずc = Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||C[9]||β||C||C[1]||C[4, 7]||C[4, 7, 9]||C[1, 4, 7])を確認し、C^c = a^x[5, 7] C[4, 7] mod n と、(C[9] gβ)^c = g^x[5, 7] g^(θ[5, 7] 2λ) h^t[2, 5, 7]C[4, 7, 9] mod nと、C[1]^c = a^x[5, 7]C[1, 4, 7] mod p[1]を確認し、次にx[5, 7]の絶対値が2^(γ - 3)未満であることを確認する。
【0163】
グループ管理装置21はΓから素数eをランダムに選び、A = (C a)1/e mod nを計算 し(ステップTS-J 5)、Aとeをユーザー装置22に送る。
【0164】
ユーザー装置22は a a = A mod n を確認する。更にeがΓの元であることを確認する。
【0165】
以上でユーザー装置22がグループ管理装置21から受け取った(x, e, A)をユーザー装置のライセンスと呼ぶ。ライセンスを受け取ったユーザー装置22を以後メンバー装置と呼ぶ。
【0166】
メンバー装置はxを秘密鍵として秘密裡に保管し、更にeとAを保管する。(x, A, e)をライセンス、或いはライセンス情報と呼ぶ。xを秘密ライセンス情報と呼び、Aを底ライセンス情報と呼び、eを指数ライセンス情報と呼ぶ。また、等式a a = A mod n をライセンス等式と呼ぶ。ライセンス(x, A, e)は、ライセンス等式を満たす。更にxの絶対値は2λ以下であり、eはΓの元である。このx,eの範囲に関する条件をライセンス情報範囲指定条件と呼ぶ。
【0167】
グループ管理装置21は、以上で得たC[1]を、メンバー装置のIDと共に公開する(ステップTS-J 6) 。(ID, C)をメンバー装置の公開鍵と呼ぶ。各メンバー装置に対する公開鍵(ID, C)リストを以後鍵リストと呼ぶ。
【0168】
グループ管理装置21は過去に回数制限用セットアップルーチンを終えているものとする。
【0169】
サイト管理装置24がサイトを作るには、以下の二重署名禁止弱特定サイト構成ルーチン(二重署名禁止弱特定サイト構成手段)を行う。
【0170】
サイト管理装置24は、サイト管理装置24のIDと二重署名禁止弱特定サイトのIDをハッシュ値にいれ、そこから Z/ p[1]Zの元rを作る。
【0171】
グループ管理装置21は(I, I,r)を公開する。但し、ここでIは、サイト管理装置24のIDで、Iは二重署名禁止弱特定サイトのID。rをこの二重署名禁止弱特定サイトの弱特定タグと呼ぶ。また、(I, I,r)をこの二重署名禁止弱特定サイトの二重署名禁止弱特定サイト特定子と呼ぶ。
【0172】
グループ管理装置21は過去に回数制限署名用セットアップルーチンを終えているものとする。またグループ管理装置21とメンバー装置はジョインルーチンを終えているとする。メンバー装置がライセンス(x,A,e)を持っていたとし、更にサイト管理装置24は二重署名禁止弱特定サイト構成ルーチンを終えているとする。(I, I,r)をそのサイト管理装置24が構成した二重署名禁止弱特定サイト特定子とする。
【0173】
メンバー装置が、サイトに対し、弱特定可能二重署名禁止署名を行いたい場合、以下の弱特定可能二重署名禁止署名作成ルーチン(弱特定可能二重署名禁止署名作成手段)を行う。
【0174】
図10は、本発明の弱特定可能二重署名禁止署名作成ルーチンの動作を示すフローチャートである。
【0175】
以下、このメンバー装置が二重署名禁止弱特定サイトに対し、メッセージmに署名する方法を述べる。
【0176】
図10を参照すると、まずメンバー装置はrが確かにI, Iのハッシュ値であることを確認する。メンバー装置は2λ以下の非負整数uをランダムに選び、エルガマル暗号(G, H) = (g mod n , Ah mod n )を計算する(ステップTS2-SIG1)。
【0177】
二重署名禁止弱特定サイトの弱特定タグrに対し、w = r mod p[1] を計算する(ステップTS2-SIG2)。wをメンバー装置の弱特定タグrに対する弱特定用タグ署名タグ署名と呼ぶ。また、等式w = r mod p[1] を弱特定タグ等式と呼ぶ。
【0178】
次にメンバー装置は絶対値がλ + μ + εビット以下の乱数x[4]、e[4]を選び、絶対値がλ + μ + ε + γ ビット以下の乱数u[4]を選び(ステップTS2-SIG3)、a[4] = a^(- x[4])H^(e[4])h^(-e[4]u - u[4] ) mod nを計算し、G[4] = G^(u[4]) mod nを計算する。更にメンバー装置はr[4] = r^(x[4]) mod nを計算(ステップTS2-SIG4) 。
【0179】
メンバー装置は c = Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||I|| I||r||G||H||w||a[4]||G[4]||r[4]||m)を計算する(ステップTS2-SIG5) 。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。
【0180】
そしてメンバー装置はx[5] = cx + x[4], e[5] = c(e - 2γ) + e[4],u[5] = (e[5] + c 2γ)u +u[4]を計算(ステップTS2-SIG6) 。
【0181】
最後に(m, r, w, G, H, a[4], G[4], c,x[5],e[5], u[5], r[4])を署名として出力する(ステップTS2-SIG7) 。出力された署名を弱特定可能二重署名禁止署名という。
【0182】
グループ管理装置21は回数制限署名用セットアップルーチンを終えているものとする。更にサイト管理装置24は二重署名禁止弱特定サイト構成ルーチンを終えているとする。(I, I,r)をそのサイト管理装置24が構成した二重署名禁止弱特定サイト特定子とする。
【0183】
検証装置23は、(m, r, w, G, H, a[4],G[4], c, x[5],e[5], u[5],r[4])が、あるメンバー装置が弱特定可能二重署名禁止署名ルーチンに従って作った署名であるか否かを確認したいとする。
【0184】
図11は、本発明の弱特定可能二重署名禁止署名検証ルーチンの動作を示すフローチャートである。
【0185】
この時検証装置23は、以下の弱特定可能二重署名禁止署名検証ルーチン(弱特定可能二重署名禁止署名検証手段)を行う。
【0186】
図11を参照すると、検証装置23はまずa^c a[4] = a^(- x[5])H^(e[5] + c 2^(γ))h^(- u[5]) mod nを確認し(ステップTS2-VER1) 、次にg^(u[5]) = G^(e[5] + c2^(γ))G[4] mod nを確認(ステップTS2-VER2) し、w^x[5] = r^c r[4] mod p[1] を確認し(ステップTS2-VER3) 、x[5]の絶対値がλ + μ + ε + 1以下であることを確認し、更にc = Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||I|| I||r||G||H||w||a[4]||G[4]||r[4]||m)を確認し(ステップTS2-VER4) 、そしてx[5]およびe[5]の絶対値がλ + μ + ε + 1以下であることを確認する(ステップTS2-VER5) 。
【0187】
以上の確認が全て正しければ、検証装置23は署名を受理し(ステップTS2-VER6)、そうでなければ棄却する(ステップTS2-VER7) 。
【0188】
グループ管理装置21は過去に回数制限署名用セットアップルーチンを終えているものとする。(I, I,r)をサイト管理装置24が構成した二重署名禁止弱特定サイト特定子とする。検証装置23は署名の組{(m_i, r , w_i, G_i, H_i,a[4]_i, G[4]_i, c_i,x[5]_i,e[5]_i, u[5]_i,r[4]_i)}を持っていたとする。
【0189】
検証装置23が、不正な署名を弱特定したい場合、以下の弱特定可能二重署名禁止署名弱特定ルーチン(弱特定可能二重署名禁止署名弱特定手段)を行う。
【0190】
図12は、本発明の弱特定可能二重署名禁止署名弱特定ルーチンの動作を示すフローチャートである。
【0191】
図12を参照すると、検証装置23はw_{i} = w_{i} mod p[1]となるi、iを見つける(ステップTS2-DET 1) 。このようなi、iが見つかった場合、署名(m_{i}, r, w_{i},G_{i}, H_{i}, a[4]_{i},G[4]_{i}, c_{i}, x[5]_{i},e[5]_{i},u[5]_{i}, r[4]_{i})および(m_{i},r, w_{i}, G_{i}, H_{i}, a[4]_{i},G[4]_{i}, c_{i}, x[5]_{i},e[5]_{i},u[5]_{i}, r[4]_{i})を不正と認定する(ステップTS2-DET 2) 。
【0192】
次に、本発明の第3の実施の形態について、図面を参照して詳細に説明する。第3の実施の形態では強特定可能二重署名禁止署名を実現する方法を述べる。第3の実施の形態は、第2の実施の形態と同様に、グループ管理装置と、ユーザー装置(メンバー装置)と、検証装置と、サイト管理装置とを備える。
【0193】
まずグループ管理装置は、後述する回数制限署名用セットアップルーチンを行い、領域変数を決める。
【0194】
ユーザー装置は、グループ管理装置にアクセスし、ライセンスをもらい、ユーザー装置は対応する公開鍵をグループ管理装置に送信する。ライセンスを受け取ったユーザー装置は、グループのメンバーと見做される。そこで、以後、ライセンスを受け取ったユーザー装置をメンバー装置と呼ぶ。メンバー装置は、ライセンスと、各サイト管理装置が公開するタグ(弱特定用タグと強特定用タグ)を用いてメッセージに対し強特定可能二重署名禁止署名を行うことができる。
【0195】
二重署名禁止署名系において、グループ管理装置以外の装置は、どの装置が署名をしたのかを特定することはできない。また、メンバー装置以外の装置(ライセンスを持っていない装置)は、署名を作ることができない。
【0196】
検証装置は、領域変数およびタグ(弱特定用タグと強特定用タグ)を用い署名の正当性を検証する装置である。検証装置は、送られてきたデータ(以下疑似署名)が、メンバー装置がライセンスを用い正しい手順で作成した署名であるか否かを判定し、出力する事ができる。また、検証装置に、署名達を入力すると、そこから、同一メンバー装置が同一サイトで行った署名を見つけ出すことができる。更に検証装置は、鍵リストを参照してその署名を行ったメンバー装置を特定することができる。
【0197】
グループ管理装置は、第2の実施の形態と同様の方法で、回数制限署名セットアップルーチン(回数制限署名セットアップ手段)を行う。また、ユーザー装置がメンバーになりたい場合は、グループ管理装置にアクセスして、第2の実施の形態と同様の方法で、回数制限署名用ジョインルーチン(回数制限署名用ジョイン手段)を行う。
【0198】
グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。
【0199】
サイト管理装置がサイトを作るには、以下の二重署名禁止強特定サイト構成ルーチンを行う。
【0200】
サイト管理装置は、サイト管理装置のIDと二重署名禁止強特定サイトのIDをハッシュ値にいれ、そこから Z/ p[1]Zの元rとr'を作る。
【0201】
グループ管理装置は(I, I, r, r')を公開する。但し、ここでIは、サイト管理装置のIDで、Iは二重署名禁止弱特定サイトのID。rをこの二重署名禁止強特定サイトの弱特定タグと呼び、r'をこの二重署名禁止強特定サイトの強特定タグと呼ぶ。また、(I, I,r,r')をこの二重署名禁止強特定サイトの二重署名禁止強特定サイト特定子と呼ぶ。
【0202】
グループ管理装置は回数制限署名用セットアップルーチンを終えているものとする。またグループ管理装置とメンバー装置はジョインルーチンを終えているとする。メンバー装置がライセンス(x,A,e)を持っていたとし、更にサイト管理装置は二重署名禁止強特定サイト構成ルーチンを終えているとする。(I, I, r, r')をそのサイト管理装置が構成した二重署名禁止強特定サイト特定子とする。
【0203】
メンバー装置が、サイトに対し強特定可能二重署名禁止署名をしたい場合、以下の強特定可能二重署名禁止署名作成ルーチン(強特定可能二重署名禁止署名作成手段)を行う。
【0204】
図13は、本発明の強特定可能二重署名禁止署名作成ルーチンの動作を示すフローチャートである。
【0205】
以下、このメンバー装置がこの二重署名禁止強特定サイトに対し、メッセージmに署名する方法を述べる。
【0206】
図13を参照すると、まずメンバー装置は2λ以以下の非負整数uをランダムに選び、エルガマル暗号(G, H) = (g mod n , Ah mod n )を計算する(ステップTSS2-SIG 1) 。
【0207】
二重署名禁止弱特定サイトの弱特定タグrに対し、w = r mod p[1] を計算する(ステップTSS2-SIG 2) 。wをメンバー装置の弱特定タグrに対する弱特定用タグ署名と呼ぶ。
【0208】
メンバー装置は時刻等の強特定用タグ署名を行う度に変わる値tをハッシュ関数にいれ、長さμビットの非負整数lを作り、w' = (a[1] r')^x mod p[1]を計算する(ステップTSS2-SIG3) 。w'をメンバー装置Mの強特定タグr'に対する強特定用タグ署名と呼ぶ。tを強特定用タグ署名変化用値と呼び、lを強特定用タグ署名変化用値ハッシュ値と呼ぶ。
【0209】
次にメンバー装置は絶対値がλ + μ + εビット以下の乱数x[4]、e[4]を選び、絶対値がλ + μ + ε + γビット以下の乱数u[4]を選び(ステップTSS2-SIG 4) 、a[4] = a^(- x[4])H^(e[4])h^(-e[4]u - u[4] ) mod nを計算し、G[4] = G^(u[4]) mod nを計算する。
【0210】
更にメンバー装置はr[4] = r^(x[4]) modp[1]を計算し、r'[4] = (a[1] r')^(x[4]) mod p[1]を計算する(ステップTSS2-SIG 5) 。
【0211】
メンバー装置は c = Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||I||I||r||r'||G||H||w||w'||t||l||a[4]||G[4]||r[4]||r'[4]||m)を計算する(ステップTSS2-SIG 6) 。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。
【0212】
そしてメンバー装置はx[5] = cx + x[4], e[5] = c(e -2γ) + e[4],u[5] = (e[5] + c 2γ)u +u[4]を計算(ステップTSS2-SIG 7) 。
【0213】
最後に(m, t, l, r, r', w, w', a[4], G[4], c, x[5],e[5], u[5], r[4],r'[4])を署名として出力する(ステップTSS2-SIG 8) 。
【0214】
グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。更にサイト管理装置は二重署名禁止強特定サイト構成ルーチンを終えているとする。(I, I,r, r')をそのサイト管理装置が構成した二重署名禁止強特定サイト特定子とする。
【0215】
検証装置は、(m, t, l, r, r', w, w', a[4], G[4], c, x[5],e[5], u[5], r[4],r'[4])が、あるメンバー装置が強特定可能二重署名禁止署名ルーチンに従って作った署名であるか否かを確認したい。
【0216】
この時、検証装置は以下の強特定可能二重署名禁止署名検証ルーチン(強特定可能二重署名禁止署名検証手段)を行う。
【0217】
図14は、本発明の強特定可能二重署名禁止署名検証ルーチンの動作を示すフローチャートである。
【0218】
図14を参照すると、検証装置はまずa^c a[4] = a^(- x[5])H^(e[5] + c 2^(γ))h^(- u[5]) mod nを確認し(ステップTSS2-VER1) 、次にg^(u[5]) = G^(e[5] + c2^(γ))G[4] mod nを確認し(ステップTSS2-VER2) 、w^x[5] = r^c r[4] mod p[1] を確認し(ステップTSS2-VER3)、(a r')x[5] = w'^c r'[4] mod p[1] を確認し(ステップTSS2-VER4)、tのハッシュ値がlである事を確認し、更にc =c = Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||I||I||r||r'||G||H||w||w'||t||l||a[4]||G[4]||r[4]||r'[4]||m)x[5]の絶対値がλ + μ + ε + 1以下であることを確認し(ステップTSS2-VER5)、そしてx[5]、e[5]の絶対値がλ + μ + ε + 1以下であることを確認する(ステップTSS2-VER6)。
【0219】
以上の確認が全て正しければ、検証装置は署名を受理し(ステップTSS2-VER7)、そうでなければ棄却する(ステップTSS2-VER8)。
【0220】
グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。(I, I,r,r')をサイト管理装置が構成した二重署名禁止強特定サイト特定子とする。検証装置は署名の組{(m_i, t_i, l_i r, r', w_i,w'_i, G_i, H_i,a[4]_i, G[4]_i, c_i,x[5]_i,e[5]_i, u[5]_i,r[4]_i)}_iを持っていたとする。
【0221】
検証装置が、不正装置の強特定を行いたい場合、以下の強特定可能二重署名禁止署名強特定ルーチン(強特定可能二重署名禁止署名強特定手段)を行う。
【0222】
図15は、本発明の強特定可能二重署名禁止署名強特定ルーチンの動作を示すフローチャートである。
【0223】
図15を参照すると、検証装置はw_{i} = w_{i} mod p[1]となるi、iを見つける(ステップTSS2-DET 1)。
【0224】
このようなi、iが見つかった場合、署名(m_{i},t_{i}, l_{i}, r, r',w_{i}, w'_{i},G_{i}, H_{i}, a[4]_{i},G[4]_{i}, c_{i}, x[5]_{i},e[5]_{i},u[5]_{i}, r[4]_{i})および(m_{i},t_{i}, l_{i}, r, r',w_{i}, w'_{i},G_{i}, H_{i}, a[4]_{i},G[4]_{i}, c_{i}, x[5]_{i},e[5]_{i},u[5]_{i}, r[4]_{i})を不正と認定する(ステップTSS2-DET 2) 。
【0225】
更に検証装置は(w'_{i} / w'_{i})^(1 /(l_{i} - l_{i})) = a[1]^x mod p[1]を計算し(ステップTSS2-DET 3)、グループ管理装置が公開している鍵リスト、{(ID, C, C[1],A,e)}の第三引数が(w'_{i} / w'_{i})^(1 /(l_{i} - l_{i})) と一致している装置のIDを見つける(ステップTSS2-DET 4)。
【0226】
次に、本発明の第4の実施の形態について、図面を参照して詳細に説明する。第4の実施の形態では弱特定可能回数制限署名を実現する方法を述べる。第4の実施の形態は、第2の実施の形態と同様に、グループ管理装置と、ユーザー装置(メンバー装置)と、検証装置と、サイト管理装置とを備える。
【0227】
まずグループ管理装置は、後述する回数制限署名用セットアップルーチンを行い、領域変数を決める。
【0228】
ユーザー装置は、グループ管理装置にアクセスし、ライセンスをもらい、ユーザー装置は対応する公開鍵をグループ管理装置に送信する。ライセンスを受け取ったユーザー装置は、グループのメンバーと見做される。そこで、以後、ライセンスを受け取ったユーザー装置をメンバー装置と呼ぶ。メンバー装置は、ライセンスと、各サイト管理装置が公開するタグを用いてメッセージに対し弱特定可能回数制限署名を行うことができる。
【0229】
回数制限署名系において、グループ管理装置以外の装置は、どの装置が署名をしたのかを特定することはできない。また、メンバー装置以外の装置(ライセンスを持っていない装置)は、署名を作ることができない。
【0230】
検証装置は、領域変数およびタグを用い署名の正当性を検証する装置である。検証装置は、送られてきたデータ(以下疑似署名)が、メンバー装置がライセンスを用い正しい手順で作成した署名であるのか否かを判定し、出力する事ができる。また、検証装置に、署名達を入力すると、そこから、同一メンバー装置が同一サイトで、回数制限を越えて行った署名を見つけ出すことができる。
【0231】
グループ管理装置は、第2の実施の形態と同様の方法で、回数制限署名セットアップルーチン(回数制限署名セットアップ手段)を行う。また、ユーザー装置がメンバーになりたい場合は、グループ管理装置にアクセスして、第2の実施の形態と同様の方法で、回数制限署名用ジョインルーチン(回数制限署名用ジョイン手段)を行う。
【0232】
kを非負整数とする。kは制限回数である。グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。サイト管理装置が弱特定可能k-回数制限サイトを作るには、以下のk-回数制限弱特定サイト構成ルーチンを行う。
【0233】
サイト管理装置は、サイト管理装置のIDとk-回数制限弱特定サイトのIDをハッシュ値にいれ、そこから Z/ p[1]Zの元r, ... , rを作る。r, ... , rをこのk-回数制限弱特定サイトの弱特定タグと呼ぶ。また、(I, I,{r})をこのk-回数制限弱特定サイトのk-回数制限弱特定サイト特定子と呼ぶ。
【0234】
kを非負整数とする。グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。またグループ管理装置とメンバー装置はジョインルーチンを終えているとする。メンバー装置がライセンス(x,A,e)を持っていたとし、更にサイト管理装置はk-回数制限強特定サイト構成ルーチンを終えているとする。(I, I,{r})をそのサイト管理装置が構成したk-回数制限弱特定サイト特定子とする。
【0235】
メンバー装置が弱特定可能k-回数制限署名をするには、以下の弱特定可能k-回数制限署名ルーチン(弱特定可能k-回数制限署名手段)を行う。
【0236】
図16は、本発明の弱特定可能回数制限署名作成ルーチンの動作を示すフローチャートである。
【0237】
以下、メンバー装置がk-回数制限弱特定サイトに対し、メッセージmに署名する方法を述べる。
【0238】
図16を参照すると、まずメンバー装置は2λ以下の非負整数uをランダムに選び、エルガマル暗号(G, H) = (g mod n , Ah mod n )を計算する(ステップTS-SIG 1) 。
【0239】
メンバー装置は自分がこのk-回数制限弱特定サイトで過去に使用していないタグrを一つ選び(弱特定タグ使用履歴に載っていないものを選び)、w = r mod p[1] を計算する。wをメンバー装置の弱特定タグrに対する弱特定用タグ署名と呼ぶ(ステップTS-SIG 2)。タグ使用履歴はメンバー装置が管理してもよいし、サイト管理装置が管理しメンバー装置が必要なときに取り込んでもよい。
【0240】
更に、k以下でi以外の非負整数jに対し、μビットの非負整数cを選ぶ。iと等しくない、k以下の各正整数jに対し、以下を行う。絶対値がλ + μ + εビット以下の乱数x[5]、e[5]を選び、絶対値がλ + μ + ε + γ以下の乱数u[5]を選ぶ。a[4] = a^(-c) a^(-x[5] - c 2^(γ)) H^(e[5] + c 2^(γ))h^(-u[5]) mod nを計算し、G[4] =g^(u[5])G^(-e[5] -c2^γ) mod n を計算し、r[4] =w^(-x[5])r^(c) mod p[1] を計算する(ステップTS-SIG 3) 。
【0241】
次にメンバー装置は絶対値がλ + μ + εビット以下の乱数x[4]、e[4]を選び、絶対値がλ + μ + ε + γビット以下の乱数u[4]を選び(ステップTS-SIG 5) 、a[4] = a^(- x[4])H^(e[4])h^(-e[4]u - u[4] ) mod n を計算し、G[4] = G^(u[4])mod n を計算する。更にメンバー装置はr[4] = r^(x[4]) mod nを計算(ステップTS-SIG 5) 。
【0242】
メンバー装置は c =Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||k||I||I||{r}_j||G||H||w||{a[4]}_j||{G[4]}_j||{r[4]}_j||m)を計算する(ステップTS-SIG 6)。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。c = c - Σ 1,...,k, j≠ic mod 2μとし、そしてメンバー装置はx[5] = cx + x[4], e[5] = c(e - 2γ) + e[4],u[5] = (e[5] + c 2γ)u +u[4]を計算(ステップTS-SIG 7) 。
【0243】
最後に(m, w, {r, a[4], G[4], c, x[5],e[5], u[5],r[4]} 1,...,k,c)を署名として出力する(ステップTS-SIG 8) 。
【0244】
グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。更にサイト管理装置は回数制限弱特定サイト構成ルーチンを終えているとする。(I, I,r)をそのサイト管理装置が構成した回数制限弱特定サイト特定子とする。
【0245】
検証装置は、(m, w, {r, a[4], G[4], c, x[5],e[5], u[5],r[4]} 1,...,k,c)が、あるメンバー装置が弱特定可能k-回数制限署名ルーチンに従って作った署名であるか否かを確認したい。
【0246】
図17は、本発明の弱特定可能回数制限署名検証ルーチンの動作を示すフローチャートである。
【0247】
検証装置が弱特定可能k-回数制限署名を検証するには、以下の弱特定可能k-回数制限署名検証ルーチン(弱特定可能k-回数制限署名検証手段)を行う。
【0248】
図17を参照すると、検証装置はj = 1, ... ,kに対し、a^c a[4] = a^(- x[5])H^(e[5] + c 2^(γ))h^(- u[5]) mod nを確認し(ステップTS-VER 1) 、g^(u[5]) = G^(e[5] + c2^(γ))G[4] mod nを確認し(ステップTS-VER 2) 、w^x[5] = r^c r[4] mod p[1] を確認する(ステップTS-VER 3) 。
【0249】
次に検証装置は c =Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||k||I||I||{r}_j||G||H||w||{a[4]}_j||{G[4]}_j||{r[4]}_j||m)を確認する(ステップTS-VER 4)。
【0250】
x[5]、e[5]の絶対値がλ + μ + ε + 1以下であることを確認し(ステップTS-VER 5)、以上の確認が全て正しければ、検証装置は署名を受理し(ステップTS-VER 6) 、そうでなければ棄却する(ステップTS-VER 7) 。
【0251】
グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。(I, I,{r_i})をサイト管理装置が構成したk-回数制限弱特定サイト特定子とする。検証装置は署名の組{(m_i, w_i, {r, a[4]_i, G[4]_i, c_i, x[5]_i,e[5]_i, u[5]_i,r[4]_i} 1,...,k,c_i)}_iを持っていたとする。
【0252】
検証装置が不正な署名を弱特定するには、以下の(k+1)重署名弱特定ルーチンを行う。
【0253】
図18は、本発明の弱特定可能回数制限署名弱特定ルーチンの動作を示すフローチャートである。
【0254】
図18を参照すると、検証装置はw_{i} = w_{i} mod p[1]となるi、iを見つける(ステップTS-DET 1) 。
【0255】
このようなi、iが見つかった場合、署名{(m_{i}, w_{i}, {r,a[4]_{i},G[4]_{i},c_{i},x[5]_{i},e[5]_{i},u[5]_{i},r[4]_{i}} =1,...,k,c_{i})}_iおよび{(m_{i}, w_{i}, {r,a[4]_{i},G[4]_{i},c_{i},x[5]_{i},e[5]_{i},u[5]_{i},r[4]_{i}} =1,...,k,c_{i})}_iを不正と認定する(ステップTS-DET 2) 。
【0256】
次に、本発明の第5の実施の形態について、図面を参照して詳細に説明する。第5の実施の形態では強特定可能回数制限署名を実現する方法を述べる。第5の実施の形態は、第2の実施の形態と同様に、グループ管理装置と、ユーザー装置(メンバー装置)と、検証装置と、サイト管理装置とを備える。
【0257】
まずグループ管理装置は、後述する回数制限署名用セットアップルーチンを行い、領域変数を決める。
【0258】
ユーザー装置は、グループ管理装置にアクセスし、ライセンスをもらい、ユーザー装置は対応する公開鍵をグループ管理装置に送信する。ライセンスを受け取ったユーザー装置は、グループのメンバーと見做される。そこで、以後、ライセンスを受け取ったユーザー装置をメンバー装置と呼ぶ。メンバー装置は、ライセンスと、各サイト管理装置が公開するタグを用いてメッセージに対し強特定可能回数制限署名を行うことができる。
【0259】
回数制限署名系において、グループ管理装置以外の装置は、どの装置が署名をしたのかを特定することはできない。また、メンバー装置以外の装置(ライセンスを持っていない装置)は、署名を作ることができない。
【0260】
検証装置は、領域変数およびタグを用い署名の正当性を検証する装置である。検証装置は、送られてきたデータ(以下疑似署名)が、メンバー装置がライセンスを用い正しい手順で作成した署名であるのか否かを判定し、出力する事ができる。また、検証装置に、署名達を入力すると、そこから、同一メンバー装置が同一サイトで、回数制限を越えて行った署名を見つけ出すことができる。更に、その署名を行った署名者(メンバー装置)を特定することができる。
【0261】
グループ管理装置は、第2の実施の形態と同様の方法で、回数制限署名セットアップルーチン(回数制限署名セットアップ手段)を行う。また、ユーザー装置がメンバーになりたい場合は、グループ管理装置にアクセスして、第2の実施の形態と同様の方法で、回数制限署名用ジョインルーチン(回数制限署名用ジョイン手段)を行う。
【0262】
kを非負整数とする。グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。サイト管理装置が、k-回数制限強特定サイトを構成するには、以下のk-回数制限強特定サイト構成ルーチンを行う。
【0263】
サイト管理装置は、サイト管理装置のIDとk-回数制限弱特定サイトのIDをハッシュ値にいれ、そこから Z/ p[1]Zの元r, ... , r、r', ... , r'を作る。r, ... , rをこのk重署名禁止強特定サイトの弱特定タグと呼び、r', ... , r'をk-回数制限強特定サイトの強特定タグと呼ぶ。また、(I, I,{r, r'})をこのk-回数制限強特定サイトのk-回数制限強特定サイト特定子と呼ぶ。
【0264】
kを非負整数とする。グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。またグループ管理装置とメンバー装置はジョインルーチンを終えているとする。メンバー装置がライセンス(x,A,e)を持っていたとし、更にサイト管理装置はk-回数制限強特定サイト構成ルーチンを終えているとする。(I, I,{r, r'})をそのサイト管理装置が構成したk-回数制限強特定サイト特定子とする。
【0265】
メンバー装置が、k-回数制限署名を行うには、以下のk-回数制限署名ルーチンを行う。
【0266】
図19は、本発明の強特定可能回数制限署名作成ルーチンの動作を示すフローチャートである。
【0267】
メンバー装置がライセンス(x,A,e)を持っていたとする。以下、メンバー装置がk-回数制限強特定サイトに対し、メッセージmに署名する方法を述べる。
【0268】
図19を参照すると、まずメンバー装置は2λ以下の非負整数uをランダムに選び、エルガマル暗号(G, H) = (g mod n , Ah mod n )を計算する(ステップTSS-SIG 1) 。
【0269】
メンバー装置は自分がこのk-回数制限弱特定サイトで過去に使用していないタグrを一つ選び、w = r mod p[1] を計算する(ステップTSS-SIG 2) 。wをメンバー装置Mの弱特定タグrに対する弱特定用タグ署名と呼ぶ。
【0270】
メンバー装置は強特定用タグ署名変化用値tをハッシュ関数にいれ、長さμビットの非負整数lを作り、w' = (a[1] r') mod p[1]を計算する。w'をメンバー装置Mの強特定タグr'に対する強特定用タグ署名と呼ぶ(ステップTSS-SIG 3) 。
【0271】
次にk以下でi以外の非負整数jに対し、μビットの非負整数cを選ぶ。iと等しくない、k以下の各正整数jに対し、以下を行う。
【0272】
絶対値がλ + μ + ε + 1ビット以下の乱数x[5]、e[5]を選び、絶対値がλ + μ + 2ν + 2ε以下の乱数u[5]を選ぶ。a[4] = a^(-c) a^(-x[5] - c 2^(γ))H^(e[5] + c 2^(γ))h^(-u[5])を計算し、G[4] =g^(u[5])G^(-e[5] -c2^γ)を計算し、r[4] =w^(-x[5])r^(c) mod p[1] を計算する。r'[4] =w'^(-x[5])(ar')^(c) mod p[1] を計算する(ステップTS2-SIG 4) 。
【0273】
更にメンバー装置は絶対値がλ + μ + εビット以下の乱数x[4]、e[4]を選び、絶対値がλ + μ + ε + γビット以下の乱数u[4]を選び (ステップTSS-SIG 5) 、a[4] = a^(- x[4])H^(e[4])h^(-e[4]u - u[4] ) mod nを計算し、G[4] = G^(u[4])を計算する。メンバー装置はr[4] = r^(x[4]) mod nを計算し、r'[4] = (a[1] r')^(x[4]) modp[1]を計算する(ステップTSS-SIG 6) 。
【0274】
メンバー装置は c =Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||k||I||I||{r, r'}_j||G||H||w||w'||{a[4]}_j||{G[4]}_j||{r[4]}_j||{r'[4]}_j||m)を計算する(ステップTSS-SIG 7) 。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。c = c - Σ 1,...,k, j≠ic mod 2μとし、そしてメンバー装置はx[5] = cx + x[4], e[5] = c(e - 2γ) + e[4],u[5] = (e[5] + c 2γ)u +u[4]を計算(ステップTSS-SIG 8) 。
【0275】
最後に(m, w, w', {r, r', a[4], G[4], c, x[5],e[5], u[5],r[4],r'[4]} 1,...,k,c)を署名として出力する(ステップTSS-SIG 9) 。
【0276】
グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。更にサイト管理装置は回数制限弱特定サイト構成ルーチンを終えているとする。(I, I,r)をそのサイト管理装置が構成した回数制限弱特定サイト特定子とする。
【0277】
検証装置は、(m, w, w', {r, r', a[4], G[4], c, x[5],e[5], u[5],r[4]} 1,...,k,c)が、あるメンバー装置が強特定可能k-回数制限署名ルーチンに従って作った署名であるか否かを確認したい。
【0278】
これをするには、検証装置は、以下の強特定可能k-回数制限署名検証ルーチンを行う。
【0279】
図20は、本発明の強特定可能回数制限署名検証ルーチンの動作を示すフローチャートである。
【0280】
検証装置が署名({a[4], G[4], c, x[5],e[5], u[5],r[4],r'[4]} =1,...,k,c, w, w')を受け取ったとする。
【0281】
以下のルーチンを強特定可能k-回数制限署名検証と呼ぶ。
【0282】
図20を参照すると、検証装置はj = 1, ... ,kに対し、a^c a[4] = a^(- x[5])H^(e[5] + c 2^(γ))h^(- u[5]) mod nを確認し(ステップTSS-VER1) 、g^(u[5]) = G^(e[5] + c2^(γ))G[4] mod nを確認し(ステップTSS-VER2) 、w^x[5] = r^c r[4] mod p[1] を確認し(ステップTSS-VER3) 、(a r')x[5] = w'^cr'[4] mod p[1] を確認する(ステップTSS-VER4) 。
【0283】
検証装置は c =Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||k||I||I||{r, r'}_j||G||H||w||w'||{a[4]}_j||{G[4]}_j||{r[4]}_j||{r'[4]}_j||m)を確認する(ステップTSS-VER5) 。
【0284】
x[5]およびe[5]の絶対値がλ + μ + ε + 1以下であることを確認する(ステップTSS-VER6) 。
【0285】
以上の確認が全て正しければ、検証装置は署名を受理し(ステップTSS-VER7) 、そうでなければ棄却する(ステップTSS-VER8) 。
【0286】
グループ管理装置は過去に回数制限署名用セットアップルーチンを終えているものとする。(I, I,{r, r'})をサイト管理装置が構成したk-回数制限強特定サイト特定子とする。検証装置は署名の組{(m_i, w_i, w'_i, {r, r',a[4]_i,G[4]_i, c_i,x[5]_i,e[5]_i,u[5]_i,r[4]_i} =1,...,k,c)}_iを持っていたとする。
【0287】
不正な装置を特定するには、以下の(k+1)重署名強特定ルーチンを行う。
【0288】
図21は、本発明の強特定可能回数制限署名強特定ルーチンの動作を示すフローチャートである。
【0289】
図21を参照すると、検証装置はw_{i} = w_{i} mod p[1]となるi、iを見つける(ステップTSS-DET 1)。
【0290】
このようなi、iが見つかった場合、署名(m_{i}, w_{i}, w'_{i},{r, r',a[4]_{i},G[4]_{i},c_{i},x[5]_{i},e[5]_{i},u[5]_{i},r[4]_{i}}j= 1,...,k,c)および(m_{i}, w_{i}, w'_{i},{r, r',a[4]_{i},G[4]_{i},c_{i},x[5]_{i},e[5]_{i},u[5]_{i},r[4]_{i}}j= 1,...,k,c)を不正と認定する(ステップTSS-DET 2)。
【0291】
更に検証装置は(w'_{i} / w'_{i})^(1 /(l_{i} - l_{i})) = a[1]^x mod p[1]を計算し(ステップTSS-DET 3) 、グループ管理装置が公開している鍵リスト、{(ID, C, C[1],A,e)}の第三引数が(w'_{i} / w'_{i})^(1 /(l_{i} - l_{i})) と一致しているIDを見つける(ステップTSS-DET 4) 。
【0292】
次に、本発明の第6の実施の形態について、図面を参照し詳細に説明する。第6の実施の形態では大人数用弱特定可能回数制限署名を実現する方法を述べる。
【0293】
図22は、本発明の第6の実施の形態の構成を示す図であり、大人数用弱特定可能回数制限署名系に使用する装置間の関係をブロック図で示す。
【0294】
図22を参照すると、大人数用弱特定可能回数制限署名に使用する装置として、グループ管理装置31と、ユーザー装置(メンバー装置)32と、検証装置33と、サイト管理装置34とを備える。上記の各装置はプログラム制御で動作する情報処理装置であり、上記の各装置はネットワークで結ばれている。ユーザー装置(メンバー装置)32とサイト管理装置34はそれぞれ複数存在し、各ユーザー装置(メンバー装置)32と各サイト管理装置34はIDを有する。1つのサイト管理装置34内に複数のサイトを作ることができる。各サイトはIDを有する。
【0295】
まずグループ管理装置31は、後述する回数制限署名用セットアップルーチンを行い、領域変数を決める。
【0296】
ユーザー装置32は、グループ管理装置31にアクセスし、ライセンスをもらい(TS-BL L1)、ユーザー装置32は対応する公開鍵をグループ管理装置31に送信する(TS-BL L2)。ライセンスを受け取ったユーザー装置32は、グループのメンバーと見做される。そこで、以後、ライセンスを受け取ったユーザー装置32をメンバー装置と呼ぶ。
【0297】
サイト管理装置34は、グループ管理装置31にアクセスすることで(TS-BL L10)、大人数用タグを受け取る(TS-BL L11)。
【0298】
メンバー装置は、ライセンスと各サイト管理装置34が公開する大人数用タグ(TS-BL L3)を用いてメッセージに対し大人数用弱特定可能回数制限署名を行う。
【0299】
回数制限署名系において、グループ管理装置以外の装置は、どの装置が署名をしたのかを特定することはできない。また、メンバー装置以外の装置(ライセンスを持っていない装置)は、署名を作ることができない。
【0300】
検証装置33は、領域変数(TS-BL L5)およびタグ(TS-BL L6)を用い署名の正当性を検証する装置である。検証装置33は、送られてきたデータ(以下疑似署名)が、メンバー装置がライセンスを用い正しい手順で作成した署名(TS-BL L4)であるのか否か(TS-BL L8)を判定し、出力する事ができる。また、検証装置33に、署名達を入力すると、そこから、同一メンバー装置が同一サイトで回数制限を越えて行った署名を見つけ出すことができる(TS-BL L7)。
【0301】
グループ管理装置31は、第2の実施の形態と同様の方法で、回数制限署名セットアップルーチン(回数制限署名セットアップ手段)を行う。また、ユーザー装置32がメンバーになりたい場合は、グループ管理装置31にアクセスして、第2の実施の形態と同様の方法で、回数制限署名用ジョインルーチン(回数制限署名用ジョイン手段)を行う。
【0302】
グループ管理装置31は回数制限署名用セットアップルーチンを終えているとする。
【0303】
サイト管理装置34は、大人数用弱特定可能k-回数制限サイトを構成するには、以下のサイト管理権授与ルーチン(サイト管理権授与手段)を行う。
【0304】
サイト管理装置34はグループ管理装置31にアクセスする。
【0305】
グループ管理装置31は、QR(n)の元b, bをハッシュ値から作り、b, bに署名をつけてサイト管理装置34に渡す。
【0306】
サイト管理装置34はb, bがQR(n)の元であることを確認。(b, b)をサイト管理権と呼ぶ。サイト管理権を得たサイト管理装置34を大人数用弱特定サイトと呼ぶ。更に、bをタグ用左辺底領域変数と呼び、bをタグ用自由領域変数と呼ぶ。
【0307】
グループ管理装置31は回数制限署名用セットアップルーチンを終えているとする。
【0308】
タグを発行するには、サイト管理装置34は、グループ管理装置31と、以下の大人数用タグ発行ルーチン(大人数用タグ発行手段)を行う。
【0309】
サイト管理装置34は、サイト管理権授与ルーチンで得たサイト管理権(b, b)、およびそれに対する署名をグループ管理装置31に送る。
【0310】
グループ管理装置31はλビットの非負整数y、Γに入っている素数fをランダムに選び、bb = B mod n となるBを計算し、(y, f, B)に署名を添付してサイト管理装置34に渡す。(y, f, B)を大人数用タグと呼ぶ。-2λ以上2λ以下の整数全体をΛと書き、2γ - 2λ以上 2γ + 2λ以下の整数全体をΓと書く
サイト管理装置34は(y, f, B)が、bb = Bmod n となる事を確認する。yをタグ用秘密ライセンス情報と呼び、Bをタグ用底ライセンス情報と呼び、fをタグ用指数ライセンス情報と呼ぶ。サイト管理装置34はグループ管理装置31から過去にもらった(y, f, B)のk個のリスト{(y, f, B)}を公開する。
【0311】
グループ管理装置31は回数制限署名用セットアップルーチンを終えているとする。サイト管理装置34とグループ管理装置31はサイト管理権授与ルーチンを終えているとし、更にサイト管理装置34とグループ管理装置31は大人数用タグ発行ルーチンをk回終えているとする。加えて、メンバー装置とグループ管理装置31はジョインルーチンを終えているものとする。メンバー装置はライセンス(x,A,e)を持っていたとする。
【0312】
メンバー装置が、大人数用弱特定可能k-回数制限署名を行うには、以下の大人数用弱特定可能k-回数制限署名ルーチン(大人数用弱特定可能回数制限署名手段)をう。
【0313】
図23は、本発明の大人数用弱特定可能回数制限署名作成ルーチンの動作を示すフローチャートである。
【0314】
以下、メンバー装置が大人数用弱特定サイトに対し、メッセージmに署名する方法を述べる。
【0315】
図23を参照すると、まずメンバー装置はサイト管理装置34が公開している大人数用タグ達から一組を選ぶ。以後これを(y, f, B)と表すことにする。メンバー装置は(y, f, B)に添付されたグループ管理装置31の署名を確認する。メンバー装置は2λ以下の非負整数uをランダムに選び、エルガマル暗号(G, H) = (g mod n , Ah mod n )を計算する。メンバー装置は2λ以下の非負整数u[6]をランダムに選び、エルガマル暗号(G[6], H[6]) =(g^(u[6]) mod n , Bh^(u[6]) mod n )を計算する(ステップTSM-SIG1) 。
【0316】
大人数用タグ(y, f, B)から、w = B mod n を計算する(ステップTSM-SIG2) 。wをメンバー装置の大人数用タグ(y, f, B)に対する弱特定用大人数用タグ署名と呼ぶ。
【0317】
次にメンバー装置は絶対値がλ + μ + εビット以下の乱数x[4]、e[4]をえらび、絶対値がλ + μ + ε + γビット以下の乱数u[4]を選び(ステップTSM-SIG3) 、a[4] = a^(- x[4])H^(e[4])h^(-e[4]u - u[4] ) mod nを計算し、G[4] = g^(u[4]) mod nを計算する(ステップTSM-SIG4) 。
【0318】
次にメンバー装置は絶対値がλ + μ + εビット以下の乱数y[4]、f[4]を選び、絶対値がλ + μ + ε + γビット以下の乱数u[4, 6]を選び(ステップTSM-SIG3)、b[4] = b^(- y[4])H[6]^(f[4])h^(-f[4]u[6] - u[4, 6] ) mod nを計算し、G[4, 6] = g^(u[4, 6]) mod nを計算する(ステップTSM-SIG4)。
【0319】
絶対値がλ + μ + 2ε + 2νビット以下の乱数u[4, 8]を選び、G[4, 8] = g^(u[4, 8]) mod nを計算し(ステップTSM-SIG3)、w[4, 8] =H[6]^(-x[4]u[6] -u[4, 8])h^(- x[4]u[6] -u[4, 8] ) mod nを計算する(ステップTSM-SIG4)。
【0320】
メンバー装置は c =Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||b||b||G||H||G[6]||H[6]||w||a[4]||G[4]||b[4]||G[4, 6]||G[4, 8]||w[4, 8]||m)を計算する(ステップTSM-SIG5) 。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。
【0321】
そしてメンバー装置はx[5] = cx + x[4], e[5] = c(e - 2γ) + e[4],u[5] = (e[5] + c 2γ)u +u[4]を計算。更にメンバー装置はy[5] = cy + y[4], f[5] = c(f - 2γ) + f[4],u[5, 6] = (f[5] + c 2γ)u[6] +u[4, 6]を計算。加えてメンバー装置は、u[5, 8] =x[5]u[6] + u[4, 8]を計算(ステップTSM-SIG6)。
【0322】
最後にメンバー装置は、(m,w,a, H, G, a[4], G[4], H[6], G[6], b[4], G[4, 6], G[4, 8], w[4, 8], c, x[5], e[5], u[5], y[5], f[5], u[5, 6], u[5, 8] )を署名として出力する(ステップTSM-SIG7) 。
【0323】
グループ管理装置は回数制限署名用セットアップルーチンを終えているとする。サイト管理装置34とグループ管理装置31はサイト管理権授与ルーチンを終えているとし、更にサイト管理装置34とグループ管理装置31は大人数用タグ発行ルーチンをk回終えているとする。
【0324】
検証装置33は、(m,w,a, H, G, a[4], G[4], H[6], G[6], b[4], G[4, 6], G[4, 8],w[4, 8], c x[5], e[5], u[5], y[5], f[5], u[5, 6], u[5, 8] )が、あるメンバー装置が大人数用弱特定可能k-回数制限署名ルーチンに従って作った署名であるか否かを確認したい。
【0325】
この為には、検証装置33は以下の大人数用弱特定可能k-回数制限署名検証ルーチン(大人数用弱特定可能回数制限署名検証手段)を行う。
【0326】
図24は、本発明の大人数用弱特定可能回数制限署名検証ルーチンの動作を示すフローチャートである。
【0327】
図24を参照すると、検証装置33は、まずa^c a[4] = a^(- x[5])H^(e[5] + c 2^(γ))h^(- u[5]) mod n を確認し、g^(u[5]) = G^(e[5] + c2^(γ))G[4] mod n を確認し、x[5]およびe[5]の絶対値がλ + μ + ε + 1以下であることを確認する(ステップTSM-VER1)。
【0328】
次にb^c b[4] = b^(- x[5])H^(f[5] + c 2^(γ))h^(- u[5]) mod n を確認し、g^(u[5]) = G^(f[5] + c2^(γ))G[4] mod n を確認し、y[5]およびf[5]の絶対値がλ + μ + ε + 1以下であることを確認する(ステップTSM-VER2)。
【0329】
更にw^c w[4, 8] = H[6]^x[5]h^(-u[5, 8]) mod nを確認し、G[8]^cG[4, 8] = g^(u[5]) mod nを確認する(ステップTSM-VER3)。
【0330】
最後に c =Hash(ε||μ||ν|| n|| a|| a||g||h||p[1]||I_L||b||b||G||H||G[6]||H[6]||w||a[4]||G[4]||b[4]||G[4, 6]||G[4, 8]||w[4, 8]||m)を確認する(ステップTSM-VER4) 。
【0331】
以上の確認が全て正しければ、検証装置33は署名を受理し(TSM-VER5) 、そうでなければ棄却する(TSM-VER6) 。
【0332】
グループ管理装置31は過去に回数制限署名用セットアップルーチンを終えているものとする。{(y,B,f)}をサイト管理装置34が構成したk-回数制限弱特定サイト特定子とする。検証装置33は署名の組{(m,w,a, H, G,a[4]0i, G[4], H[6], G[6], b[4]0i, G[4, 6]i,G[4, 8]i,w[4, 8]i, ci, x[5], e[5], u[5], y[5], f[5], u[5, 6], u[5, 8] )}を持っていたとする。
【0333】
不正な装置を特定するには、以下の(k+1)重署名弱特定ルーチン(大人数用弱特定可能回数制限署名弱特定手段)を行う。
【0334】
図25は、本発明の大人数用弱特定可能回数制限署名弱特定ルーチンの動作を示すフローチャートである。
【0335】
図25を参照すると、検証装置33はw_{i} = w_{i} mod nとなるi、iを見つける(ステップTSM-DET 1) 。
【0336】
このようなi、iが見つかった場合、署名(m_i,w_i,a_i, H_i, G_i,a[4]_i, G[4]_i, H[6]_i, G[6]_i, b[4]_i, G[4, 6]_i1,G[4, 8]_i1,w[4, 8]_i1,c_i1,x[5]_i, e[5]_i, u[5]_i, y[5]_i, f[5]_i, u[5, 6]_i, u[5, 8]_i )および(m_i,w_i,a_i, H_i, G_i,a[4]_i, G[4]_i, H[6]_i, G[6]_i, b[4]_i, G[4, 6]_i2,G[4, 8]_i2,w[4, 8]_i2,c_i2,x[5]_i, e[5]_i, u[5]_i, y[5]_i, f[5]_i, u[5, 6]_i, u[5, 8]_i )を不正と認定する(ステップTSM-DET 2) 。
【0337】
次に、本発明の第7の実施の形態について、図面を参照して詳細に説明する。第7の実施の形態では大人数用強特定可能回数制限署名を実現する方法を述べる。第7の実施の形態は、第6の実施の形態と同様に、グループ管理装置と、ユーザー装置(メンバー装置)と、検証装置と、サイト管理装置とを備える。
【0338】
まずグループ管理装置は、後述する大人数用強特定可能回数制限署名用セットアップルーチンを行い、領域変数を決める。
【0339】
ユーザー装置は、グループ管理装置にアクセスし、ライセンスをもらい、ユーザー装置は対応する公開鍵をグループ管理装置に送信する。ライセンスを受け取ったユーザー装置は、グループのメンバーと見做される。そこで、以後、ライセンスを受け取ったユーザー装置をメンバー装置と呼ぶ。
【0340】
サイト管理装置は、グループ管理装置にアクセスすることで大人数用タグを受け取る。
【0341】
メンバー装置は、ライセンスと、各サイト管理装置が公開する大人数用タグを用いてメッセージに対し大人数用強特定可能回数制限署名を行う。
【0342】
回数制限署名系において、グループ管理装置以外の装置は、どの装置が署名をしたのかを特定することはできない。また、メンバー装置以外の装置(ライセンスを持っていない装置)は、署名を作ることができない。
【0343】
検証装置は、領域変数およびタグを用い署名の正当性を検証する装置である。検証装置は、送られてきたデータ(以下疑似署名)が、メンバー装置がライセンスを用い正しい手順で作成した署名であるのか否かを判定し、出力する事ができる。また、検証装置に、署名達を入力すると、そこから、同一メンバー装置が同一サイトで回数制限を越えて行った署名を見つけ出すことができる。更にその署名者(メンバー装置)も特定することができる。
【0344】
グループ管理装置は、以下の大人数用強特定可能回数制限署名セットアップルーチン(大人数用強特定可能回数制限署名セットアップ手段)を行う。
【0345】
図26は、大人数用強特定可能回数制限署名セットアップルーチンの動作を示すフローチャートである。
【0346】
図26を参照すると、まずグループ管理装置は、セキュリティ・パラメーターε、μ、νを決める(ステップTSSM-SU 1) 。尚、通常はν = 1024, μ = ε = 160とすればよい。
【0347】
次にグループ管理装置はλ = 2(ν + ε) 、 γ = 2ν + λ + μ + ε + 5とする(ステップTSSM-SU 2) 。γ[6] = λ + μ + ε + 4とする(ステップTSSM-SU 2)。
【0348】
素数p',q'を、 p = 2p' + 1, q = 2q' + 1がνビットになるように選び、n = pqを計算する(ステップTSSM-SU 3)。
【0349】
グループ管理装置は、QR(n)の元 a,a, aをランダムに選ぶ(ステップTSSM-SU 4)。但し、ここで、QR(n)は、Z/nZの元で平方剰余であるもの全体を表す。
【0350】
グループ管理装置はνビットのビット列 Iをランダムに選び、そのハッシュ値からQR(n)の元g, hを作る(ステップTSSM-SU 5) 。
【0351】
グループ管理装置は (p', q', p, q)を秘密鍵として秘密裡に保持し(ステップTSSM-SU 6) 、更に (ε,μ,ν,I, n, a, a, g,h)を公開鍵として公開する(ステップTSSM-SU 7) 。
【0352】
以下、2^γ - 2^λ以上 2^γ + 2^λ以下の整数全体をΓと書く。また、-2λ以上2λ以下の整数全体をΛと書く。
【0353】
グループ管理装置は、ユーザー装置と通信をして、強特定可能回数制限署名用のライセンスを渡す。この為には、以下の大人数強特定可能回数制限署名用ジョインルーチン(大人数強特定可能回数制限署名用ジョイン手段)を行う。
【0354】
図27は、大人数用強特定可能回数制限署名ジョインルーチンの動作を示すフローチャートである。
【0355】
図27を参照すると、ユーザー装置はまず g, h がIのハッシュ値から作られていることを確認する。ユーザー装置は秘密裡かつランダムにλビット以下の非負整数x[2]、r[2]を選び、C[9] = g^x[2] h^r[2] mod nを計算し、グループ管理装置に、C[9]を送る(ステップTSSM-J 1)。ユーザー装置は秘密裡かつランダムにλビット以下の非負整数x[2]、r[2]を選び、C[9] = g^x[2] h^r[2] mod nを計算し、グループ管理装置に、C[9]を送る(ステップTSSM-J 1)。
【0356】
次にグループ管理装置はC[9]がQR(n)の元であることを確認し、更にグループ管理装置はC[9]がQR(n)の元であることを確認する。ランダムにλビット以下の非負整数β、βを選び、ユーザー装置に送る(ステップTSSM-J 2) 。
【0357】
ユーザー装置はx[2] + βを2λで割った商をθ、余りをxとする。C = a^x mod nを計算する(ステップTSSM-J 3)。
【0358】
更にユーザー装置はx[2] + βを2λで割った商をθ、余りをxとする。C = a^x mod nを計算し、C、Cをグループ管理装置に送る(ステップTSSM-J 3)。
【0359】
更にユーザー装置はグループ管理装置に次の3つを満たすx[3], θ[3]、t[2, 3]の知識を証明するゼロ知識証明書をグループ管理装置に送信(ステップTSSM-J 4) 。尚、上記の次の3つとは、▲1▼x[3] の絶対値は2γ 未満,▲2▼a^x[3] = C mod n,▲3▼C[9] gβ = g^x[3] g^(θ[3] 2λ) h^t[2, 3] mod nである。
【0360】
具体的には、次のようにする。
【0361】
ユーザー装置は、λ + ε ビットの乱数x[4, 7]、t[2, 4, 7]を秘密裡に生成。更に、θのビット数 + εビットの乱数θ[4, 7]を秘密裡に生成。C[4, 7] = a^x[4, 7] mod n, C[4, 7, 9] = g^(x[4, 7]) g^(θ[4, 7] 2λ)h^(t[2, 4, 7]) mod n、を作成。更にユーザー装置32は、c = Hash(ε||μ||ν|| n|| a|| a||g||h||C[4, 7]||C[4, 7, 9])を計算。そしてx[5, 7] = c x + x[4, 7], t[2, 5, 7] = c t + t[2, 4, 7], θ[5, 7] = c θ + θ[4, 7]を作成。(C[4, 7], C[4, 7, 9], c, x[5, 7], t[2, 5, 7], θ[5, 7])を送信。
【0362】
グループ管理装置は証明書の正当性を検証する。即ち、まずC^c = a^x[5, 7] C[4, 7] mod n と、(C[9] gβ )^c = g^x[5, 7] g^(θ[5, 7] 2λ) h^t[2, 5, 7]C[4, 7, 9] mod nを確認し、次にx[5, 7]の絶対値が2^(γ - 3)未満であることを確認する。
【0363】
更にユーザー装置はグループ管理装置に次の3つを満たすx[3], θ[3]、t[2, 3]の知識を証明するゼロ知識証明書をグループ管理装置に送信(ステップTSSM-J 4) 。尚、上記の次の3つとは、▲1▼x[3] の絶対値は2γ 未満,▲2▼a^x[3] = C mod n,▲3▼C[9] gβ = g^x[3] g^(θ[3] 2λ) h^t[2, 3] mod nである。
【0364】
具体的には、次のようにする。
【0365】
ユーザー装置は、λ + ε ビットの乱数x[4, 7]、t[2, 4, 7]を秘密裡に生成。更に、θのビット数 + εビットの乱数θ[4, 7]を秘密裡に生成。C[4, 7] = a^x[4, 7] mod n, C[4, 7, 9] = g^(x[4, 7]) g^(θ[4, 7] 2λ)h^(t[2, 4, 7]) mod nを作成。更にユーザー装置は、c = Hash(ε||μ||ν|| n|| a|| a||g||h||C[4, 7]||C[4, 7, 9])を計算。そしてx[5, 7] = c x + x[4, 7], t[2, 5, 7] = c t + t[2, 4, 7], θ[5, 7] = c θ + θ[4, 7]を作成。(C[4, 7], C[4, 7, 9], c, x[5, 7], t[2, 5, 7], θ[5, 7]) を送信。
【0366】
グループ管理装置は証明書の正当性を検証する。即ち、まずC^c = a^x[5, 7] C[4, 7] mod n と、(C[9] gβ )^c = g^x[5, 7] g^(θ[5, 7] 2λ) h^t[2, 5, 7]C[4, 7, 9] mod nを確認し、次にx[5, 7]の絶対値が2^(γ - 3)未満であることを確認する。
【0367】
グループ管理装置はΓから素数eをランダムに選び、A = (CC a)1/e mod nを計算し、Aとeをユーザー装置に送る(ステップTSSM-J 5) 。
【0368】
ユーザー装置はa^(x)a^(x) a = A mod n を確認する。更にeがΓの元であることを確認する。
【0369】
以上でユーザー装置がグループ管理装置31から受け取った(x, x, e, A)をユーザー装置のライセンスと呼ぶ。ライセンスを受け取ったユーザー装置を以後メンバー装置と呼ぶ。ライセンス(x, x, e, A)はa^(x)a^(x) a = A mod n を満たす。この等式をライセンス等式と呼ぶ。また、x,xの絶対値は2λ以下であり、eはΓの元である。このx,x,eの範囲に関する条件をライセンス情報範囲指定条件と呼ぶ。
【0370】
メンバー装置は(x,x)を秘密鍵として秘密裡に保管し、更にeとAを保管する。
【0371】
グループ管理装置は、以上で得た(C,C, A, e)を、メンバー装置のIDと共に公開する(ステップTSSM-J 6) 。各メンバー装置のIDと対応する(C,C, A, e)との組とのリストを以後鍵リストと呼ぶ。
【0372】
グループ管理装置は大人数用強特定可能回数制限署名用セットアップルーチンを終えているとする。
【0373】
サイト管理装置は、サイト管理権授与およびタグの発行を、大人数用弱特定可能回数制限署名の場合(第6の実施の形態の場合)と同様の方法で行う。サイト管理権を得たサイト管理装置を大人数用強特定サイトと呼ぶ。
【0374】
グループ管理装置は大人数用強特定可能回数制限署名用セットアップルーチンを終えているとする。サイト管理装置とグループ管理装置はサイト管理権授与ルーチンを終えているとし、更にサイト管理装置とグループ管理装置は大人数用タグ発行ルーチンをk回終えているとする。加えて、メンバー装置とグループ管理装置はジョインルーチンを終えているものとする。メンバー装置はライセンス(x,A,e)を持っていたとする。
【0375】
メンバー装置が大人数用強特定サイトに対し、メッセージmに署名するには、以下の大人数用強特定可能回数制限署名作成ルーチン(大人数用強特定可能回数制限署名作成手段)を行う。
【0376】
図28は、大人数用強特定可能回数制限署名作成ルーチンの動作を示すフローチャートである。
【0377】
図28を参照すると、まずメンバー装置はサイト管理装置が公開している大人数用タグ達から一組を選ぶ。以後これを(y, f, B)と表すことにする。メンバー装置は(y, f, B)に添付されたグループ管理装置の署名を確認する。
【0378】
メンバー装置は2λ以下の非負整数uをランダムに選び、エルガマル暗号(G, H) = (g mod n , Ah mod n )を計算する。メンバー装置は2λ以下の非負整数u[6]をランダムに選び、エルガマル暗号(G[6], H[6]) =(g^(u[6] mod n , Bh^(u[6]) mod n )を計算する(ステップTSSM-SIG 1) 。
【0379】
大人数用タグ(y, f, B)から、w = B^x mod n を計算する。wをメンバー装置の大人数用タグ(y, f, B)に対する弱特定用大人数用タグ署名と呼ぶ(ステップTSSM-SIG 2) 。
【0380】
強特定用タグ署名変化用値tのハッシュ値lを計算し、大人数用タグ(y, f, B)から、w' = (aB)^x mod n を計算する。w'をメンバー装置の大人数用タグ(y, f, B)に対する強特定用大人数用タグ署名と呼ぶ(ステップTSSM-SIG 3) 。
【0381】
次にメンバー装置は絶対値がλ + μ + εビット以下の乱数x[4]、x[4]、e[4]を選び、絶対値がλ + μ + ε +γ + 1ビット以下の乱数u[4]を選び、a[4] = a^(- x[4])a^(- x[4])H^(e[4])h^(-e[4]u - u[4] ) mod nを計算し、G[4] = g^(u[4]) mod nを計算する。
【0382】
次にメンバー装置は絶対値がλ + μ + εビット以下の乱数y[4]、f[4]を選び、絶対値がλ + μ + ε + γ[6]ビット以下の乱数u[4, 6]を選び(ステップTSSM-SIG 4) 、b[4] = b^(- y[4])H[6]^(f[4])h^(-f[4]u[6] - u[4, 6] ) mod nを計算し、G[4, 6] = g^(u[4, 6]) mod n を計算する(ステップTSSM-SIG 5) 。
【0383】
メンバー装置は絶対値が2λ + μ + 2ε + γ + 1ビット以下の乱数 u[4, 8]を選び(ステップTSSM-SIG 4) 、G[4, 8] = g^(u[4, 8]) mod nを計算し、w[4, 8] =H[6]^(x[4])h^(- x[4]u[6] -u[4, 8] ) mod nを計算する(ステップTSSM-SIG 5) 。
【0384】
メンバー装置は絶対値がλ + μ + 2ε + 2νビット以下の乱数u[4, 8]を選び(ステップTSSM-SIG 4) 、G[4, 8] = g^(u[4, 8]) mod n を計算し、w'[4, 8] =(aH[6] )^(-x[4]u[6] -u[4, 8])(h)^(- x[4]u[6] -u[4, 8] )
mod n を計算する(ステップTSSM-SIG 4)。
【0385】
メンバー装置は c =Hash(ε||μ||ν|| n|| a|| a||g||h||I_L||b||b ||H||G ||a[4]||G[4] ||H[6]||G[6] ||b[4]||G[4, 6] ||G[4, 8]||w[4, 8] ||G[4, 8]||w[4, 8] ||w||w'||l||t||m)を計算する(ステップTSSM-SIG 6) 。但し、ここでHashはハッシュ関数で、Hashの値域はμビット以下の非負整数全体。また、記号「||」はビット列の連接を表す。
【0386】
そしてメンバー装置はx[5] = cx + x[4], x[5] = cx + x[4], e[5] = c(e - 2^(γ) ) + e[4],u[5] = (e[5] + c 2^(γ))u +u[4]を計算。更にメンバー装置はy[5] = cy + y[4], f[5] = c(f - 2^(γ[6]) + f[4],u[5, 6] = (f[5] + c 2^(γ[6]))u[6] +u[4, 6]を計算。加えてメンバー装置は、u[5, 8] = x[5]u[6]+ u[4, 8]を計算。加えてメンバー装置は、u[5, 8] =x[5]u[6]+ u[4, 8]を計算(ステップTSSM-SIG 7) 。
【0387】
最後にメンバー装置は、(m,w, w',H, G, G[6], H[6], a[4] ,G[4], b[4] ,G[4, 6], G[4, 8], w[4, 8], G[4, 8], w'[4, 8], c, x[5], x[5], e[5], u[5], y[5], f[5], u[5, 6], u[5, 8], u[5, 8])を署名として出力する(ステップTSSM-SIG 8) 。
【0388】
グループ管理装置はを大人数用強特定可能回数制限署名セットアップルーチンを終えているとする。サイト管理装置とグループ管理装置はサイト管理権授与ルーチンを終えているとし、更にサイト管理装置とグループ管理装置は大人数用タグ発行ルーチンをk回終えているとする。
【0389】
検証装置は、(m,w, w',H, G, G[6], H[6], a[4] ,G[4], b[4] ,G[4, 6], G[4, 8], w[4, 8], G[4, 8], w'[4, 8], c, x[5], x[5], e[5], u[5], y[5], f[5], u[5, 6], u[5, 8], u[5, 8])が、あるメンバー装置が大人数用強特定可能k-回数制限署名ルーチンに従って作った署名であるか否かを確認したい。
【0390】
この為には、検証装置は、以下の大人数用強特定可能回数制限署名検証ルーチン(大人数用強特定可能回数制限署名検証手段)を行う。
【0391】
図29は、大人数用強特定可能回数制限署名検証ルーチンの動作を示すフローチャートである。
【0392】
図29を参照すると、検証装置は、まずa^c a[4] = a^(- x[5])a^(- x[5]) H^(e[5] + c 2^(γ))h^(-u[5]) mod n を確認し、g^(u[5]) = G^(e[5] + c2^(γ))G[4] mod n を確認し、 x[5]、x[5]、およびe[5]の絶対値がλ + μ + ε + 1以下であることを確認する(ステップTSSM-VER1)。
【0393】
次にb^c b[4] = b^(- y[5])H^(f[5] + c 2^(γ[6]))h^(- u[5]) mod n を確認し、g^(u[5]) = G^(f[5] + c2^(γ[6]))G[4] mod n を確認し、 y[5]、及びf[5]の絶対値がλ + μ + ε + 1以下であることを確認する(ステップTSSM-VER2)。
【0394】
更にw^c w[4, 8] = H[6]^x[5]h^(-u[5, 8]) mod n を確認する。G[8]^cG[4, 8] = g^(u[5]) mod nを確認する(ステップTSSM-VER3)。
【0395】
加えてw'^c w'[4, 8] = H[6]^x[5]h^(-u[5, 8]) mod n を確認する。G[8]^cG[4, 8] = g^(u[5]) mod nを確認する(ステップTSSM-VER4)。
【0396】
最後に c =Hash(ε||μ||ν|| n|| a|| a||g||h||I_L||b||b ||H||G ||a[4]||G[4] ||H[6]||G[6] ||b[4]||G[4, 6] ||G[4, 8]||w[4, 8] ||G[4, 8]||w[4, 8] ||w||w'||l||t||m)を確認する(ステップTSSM-VER5) 。
【0397】
以上の確認が全て正しければ、検証装置は署名を受理し(ステップTSSM-VER6) 、そうでなければ棄却する(ステップTSSM-VER7) 。
【0398】
グループ管理装置は過去に大人数用強特定可能回数制限署名セットアップルーチンを終えているものとする。{(y,B,f)}をサイト管理装置が公開した大人数用タグ達とする。検証装置は署名の組{(m,w,a, H, G, a[4]0i, G[4], H[6], G[6],b[4]0i, G[4, 6],G[4, 8],w[4, 8],c,x[5], e[5], u[5], y[5], f[5], u[5, 6], u[5, 8],u[5, 8] )}を持っていたとする。
【0399】
不正な装置を特定するには、以下の大人数用強特定可能回数制限署名強特定ルーチン(大人数用強特定可能回数制限署名強特定手段)を行う。
【0400】
図30は、大人数用強特定可能回数制限署名強特定ルーチンの動作を示すフローチャートである。
【0401】
図30を参照すると、検証装置はw_{i} = w_{i} mod nとなるi、iを見つける(ステップTSSM-DET 1) 。
【0402】
このようなi、iが見つかった場合、署名(m_i,w_i,a_i, H_i, G_i, a[4]_i, G[4]_i, H[6], G[6]_i,b[4]_i, G[4, 6]_i1,G[4, 8]_i1,w[4, 8]_i1,c_i1,x[5]_i, e[5]_i, u[5]_i, y[5]_i, f[5]_i, u[5, 6]_i, u[5, 8]_i1,u[5, 8]_i )および(m_i,w_i,a_i, H_i, G_i, a[4]_i, G[4]_i, H[6], G[6]_i,b[4]_i, G[4, 6]_i2,G[4, 8]_i2,w[4, 8]_i2,c_i2,x[5]_i, e[5]_i, u[5]_i, y[5]_i, f[5]_i, u[5, 6]_i, u[5, 8]_i2,u[5, 8]_i )を不正と認定する(ステップTSSM-DET 2) 。
【0403】
更に検証装置は(w'_{i} / w'_{i}) = (a^x )^((l_{i} - l_{i}))mod nを計算(ステップTSSM-DET 3) 、検証装置は、グループ管理装置にt_{i}, t_{i},l_{i},l_{i},(w'_{i} / w'_{i})を渡す。
【0404】
グループ管理装置は、l_{i},l_{i}がそれぞれt_{i}, t_{i}のハッシュ値であることを確認し、もしそうなら、(w'_{i} / w'_{i})^(1 /(l_{i} - l_{i})) = (a^x ) mod nを計算して検証装置に渡す。
【0405】
グループ管理装置が公開している鍵リスト、{(ID, C, C, A, e)}の第三引数が(w'_{i} / w'_{i})^(1 /(l_{i} - l_{i})) と一致しているIDを見つける(ステップTSSM-DET 4) 。
【0406】
本発明による上述した実施の形態において、署名システムの処理動作を実行するためのプログラム等を、データとしてコンピュータの磁気ディスクや光ディスク等の記録媒体(図示せず)に記録するようにし、記録されたデータを読み出して署名システムを動作させるために用いる。このように、本発明による署名システムを動作させるデータを記録媒体に記録させ、この記録媒体をインストールすることにより署名システムの機能が実現できるようになる。
【0407】
【発明の効果】
第1の効果は、処理速度を高速化したグループ署名系では、従来技術のグループ署名系よりも、署名および検証の処理速度が向上することである。
【0408】
第2の効果は、弱特定可能二重署名禁止署名系、強特定可能二重署名禁止署名系、弱特定可能回数制限署名系、強特定可能回数制限署名系、大人数用弱特定可能回数制限署名系、大人数用強特定可能回数制限署名系では、通常の署名系と異なり、匿名性を保証することができ、更に従来技術のグループ署名系の欠点であった、グループ管理者による不必要な監視を防ぐことができることである。
【0409】
第3の効果は、弱特定可能二重署名禁止署名系では、通常の署名系と異なり、同一サイトで同一メンバーが二度署名していないことを確認でき、しかも誤って二度署名した場合ですら、署名者の匿名性を守ることができることである。更に、相異なるサイトであれば、何度署名してもかまわないことである。
【0410】
第4の効果は、強特定可能二重署名禁止署名系では、通常の署名系と異なり、同一サイトで同一メンバーが二度署名していないことを確認でき、しかも不正者が二度署名した場合には署名者を特定できることである。更に、相異なるサイトであれば、何度署名してもかまわないことである。
【0411】
第5の効果は、弱特定可能回数制限署名系および大人数用弱特定可能回数制限署名系では、通常の署名系と異なり、同一サイトで同一メンバーが、サイトの定める回数制限を越えて署名していないことを確認でき、しかも誤って二度署名した場合ですら、署名者の匿名性を守ることができることである。更に、相異なるサイトであれば、何度署名してもかまわないことである。
【0412】
第6の効果は、強特定可能回数制限署名系および大人数用強特定可能回数制限署名系では、通常の署名系と異なり、同一サイトで同一メンバーがサイトの定める回数制限を越えて署名していないことを確認でき、しかも不正者が二度署名した場合は、署名者を特定できることである。更に、相異なるサイトであれば、何度署名してもかまわないことである。
【0413】
加えて、第7の効果は、大人数用弱特定可能回数制限署名系では、弱特定可能回数制限署名系と異なり、処理速度が回数制限によらないことである。また、大人数強特定可能回数制限署名系は、強特定可能回数制限署名系と異なり、処理速度が回数制限によらないことである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態の構成を示す図
【図2】本発明の高速化したグループ署名系のセットアップルーチンのフローチャートを示す図
【図3】本発明のグループ署名用ジョインルーチンのフローチャートを示す図
【図4】本発明のグループ署名ルーチンのフローチャートを示す図
【図5】本発明のグループ署名検証ルーチンのフローチャートを示す図
【図6】本発明のグループ署名における署名装置特定ルーチンのフローチャートを示す図
【図7】本発明の第2の実施の形態の構成を示す図
【図8】本発明の回数制限署名用セットアップルーチンのフローチャートを示す図
【図9】本発明の回数制限署名用ジョインルーチンのフローチャートを示す図
【図10】本発明の弱特定可能二重署名禁止署名作成ルーチンのフローチャートを示す図
【図11】本発明の弱特定可能二重署名禁止署名検証ルーチンのフローチャートを示す図
【図12】本発明の弱特定可能二重署名禁止署名弱特定ルーチンのフローチャートを示す図
【図13】本発明の強特定可能二重署名禁止署名作成ルーチンのフローチャートを示す図
【図14】本発明の強特定可能二重署名禁止署名検証ルーチンのフローチャートを示す図
【図15】本発明の強特定可能二重署名禁止署名強特定ルーチンのフローチャートを示す図
【図16】本発明の弱特定可能回数制限署名作成ルーチンのフローチャートを示す図
【図17】本発明の弱特定可能回数制限署名検証ルーチンのフローチャートを示す図
【図18】本発明の弱特定可能回数制限署名弱特定ルーチンのフローチャートを示す図
【図19】本発明の強特定可能回数制限署名作成ルーチンのフローチャートを示す図
【図20】本発明の強特定可能回数制限署名検証ルーチンのフローチャートを示す図
【図21】本発明の強特定可能回数制限署名強特定ルーチンのフローチャートを示す図
【図22】本発明の第6の実施の形態の構成を示す図
【図23】本発明の大人数用弱特定可能回数制限署名作成ルーチンのフローチャートを示す図
【図24】本発明の大人数用弱特定可能回数制限署名検証ルーチンのフローチャートを示す図
【図25】本発明の大人数用弱特定可能回数制限署名弱特定ルーチンのフローチャートを示す図
【図26】本発明の大人数用強特定可能回数制限署名セットアップルーチンのフローチャートを示す図
【図27】本発明の大人数用強特定可能回数制限署名ジョインルーチンのフローチャートを示す図
【図28】本発明の大人数用強特定可能回数制限署名作成ルーチンのフローチャートを示す図
【図29】本発明の大人数用強特定可能回数制限署名検証ルーチンのフローチャートを示す図
【図30】本発明の大人数用強特定可能回数制限署名強特定ルーチンのフローチャートを示す図
【図31】従来システムの構成を示す図
【符号の説明】
11 グループ管理装置
12 ユーザー装置
13 検証装置
21 グループ管理装置
22 ユーザー装置
23 検証装置
24 サイト管理装置
31 グループ管理装置
32 ユーザー装置
33 検証装置
34 サイト管理装置
41 グループ管理装置
42 ユーザー装置
43 検証装置

Claims (29)

  1. グループ管理装置とユーザー装置と検証装置とを備えるシステムにおけるグループ署名方法であって、
    前記グループ管理装置が、
    セキュリティパラメーター並びに基本モジュラスと自由領域変数と左辺底領域変数と離散対数第一領域変数と離散対数第二領域変数とを含む領域変数をセットアップするステップと、秘密ライセンス情報と底ライセンス情報と指数ライセンス情報とを含むライセンス情報をユーザー装置に渡すステップと、
    前記ユーザー装置が、
    前記セキュリティパラメーターと前記領域変数と前記ライセンス情報と、を含む値を入力するステップと、
    前記領域変数および前記ライセンス情報が、前記左辺底領域変数を底とし、前記秘密ライセンス情報を指数として巾乗したものに前記自由領域変数を乗じたものと、前記底ライセンス情報を底とし、前記指数ライセンス情報を指数として巾乗したものとが、前記基本モジュラスを法として等しいというライセンス等式と、前記秘密ライセンス情報が、前記セキュリティパラメーターから定まるある範囲に入っていて、かつ前記指数ライセンス情報が、前記セキュリティパラメーターから定まる別のある範囲に入っているというライセンス情報範囲指定条件と、を満たすことを確認するステップと、
    エルガマル暗号生成用指数部乱数と呼ばれる乱数を作成し、その乱数を用い前記底ライセンス情報をエルガマル暗号化するエルガマル暗号化ステップと、
    ライセンス情報コミット用乱数を作成し、さらに前記エルガマル暗号生成用指数部乱数に対するエルガマル暗号生成用指数部乱数コミット用乱数を作成するゼロ知識証明書計算コミット用乱数生成ステップと、
    ゼロ知識証明のコミットメントを作成するゼロ知識証明書計算コミットステップと、
    コミットメント諸々のハッシュ関数であるチャレンジを生成するゼロ知識証明書計算チャレンジステップと、
    ライセンス情報レスポンスを作成し、次に前記ライセンス情報に対するレスポンスを定められた方法で変換し、前記変換されたものを前記エルガマル暗号生成用指数部乱数に乗じ、そこに前記エルガマル暗号生成用指数部乱数コミット用変数を加えたものをエルガマル暗号生成用指数部乱数に対するレスポンスとして出力するゼロ知識証明書計算レスポンスステップと、
    前記コミットメントと前記チャレンジと前記レスポンスを署名として出力するステップと、
    前記検証装置が、
    前記セキュリティパラメーターと前記領域変数を入力するステップと、
    署名(疑似署名)を入力するステップと、
    前記入力された疑似署名の作成に使われた秘密情報がライセンス等式を満たすか否かを検証するライセンス等式検証ステップと、
    前記領域変数の離散対数第一領域変数部を底とし、前記疑似署名のエルガマル生成用指数部乱数レスポンス部を指数とする巾乗が、前記疑似署名のエルガマル暗号第一成分部を底とし、前記疑似署名の指数ライセンス情報部を定められた方法で変換したもの指数とする巾乗に前記疑似署名のエルガマル暗号生成用指数部乱数コミットを乗じたものとが、前記疑似署名の基本モジュラス部を法として等しくなるかどうかを確認するエルガマル暗号第一成分等式検証ステップと、
    前記入力された疑似署名の作成に使われた秘密情報がライセンス情報範囲指定条件を満たすか否かを検証するライセンス情報範囲指定条件検証ステップと、
    前記ライセンス等式検証ステップと前記エルガマル暗号第一成分等式検証ステップと前記ライセンス情報範囲指定条件検証ステップとで正しく検証されたときに、前記疑似署名が、前記グループ管理装置からライセンスをもらった前記ユーザー装置が前記ライセンスを入力として高速化グループ署名手順を行うことで作成した署名であると判定するステップと、
    を有することを特徴とするグループ署名方法。
  2. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける弱特定可能二重署名禁止署名系の回数制限署名方法であって、
    前記グループ管理装置がセキュリティパラメーターから領域変数を計算するセットアップステップと、
    前記グループ管理装置が前記ユーザー装置と通信を行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、
    前記サイト管理装置が入力値のハッシュ値から弱特定用タグを作り、前記入力値と前記弱特定用タグとを出力するステップと、
    前記ユーザー装置が、
    セキュリティパラメーターと領域変数とライセンス情報を入力するステップと、
    前記サイト管理装置から弱特定タグを入力するステップと、
    メッセージを入力するステップと、
    前記弱特定タグと前記ライセンス情報とから弱特定性質を満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、
    前記ライセンス情報を前記ユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー前記装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、
    前記弱特定用タグ署名と前記正当性証明書とを含むものを署名として出力するステップと、
    前記検証装置が、
    署名(弱特定可能二重署名禁止疑似署名)を入力する検証ルーチン入力ステップと、
    前記入力された弱特定可能二重署名禁止疑似署名に対し、前記弱特定可能二重署名禁止疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が弱特定可能二重署名禁止署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する検証ルーチン主ステップと、
    前記入力された弱特定可能二重署名禁止疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、
    複数個の弱特定可能二重署名禁止署名が入力される二重署名弱特定ルーチン入力ステップと、
    前記入力された複数個の弱特定可能二重署名禁止署名の中から、同一ユーザー装置によって作られたものを探し出し、そのような弱特定可能二重署名禁止署名の組があればそれを出力する二重署名弱特定ルーチン主ステップと、
    前記二重署名弱特定ルーチン主ステップの出力を出力する二重署名弱特定ルーチン出力ステップと、
    を有することを特徴とする回数制限署名方法。
  3. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける強特定可能二重署名禁止署名系の回数制限署名方法であって、
    前記グループ管理装置がセキュリティパラメーターから領域変数を計算するセットアップステップと、
    前記グループ管理装置が前記ユーザー装置と通信を行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、
    前記グループ管理装置が前記ジョインステップで取得した公開鍵達のリストを出力する鍵リスト公開ステップと、
    前記サイト管理装置が入力値のハッシュ値から弱特定用タグと強特定用タグを作り、前記入力値と前記弱特定用タグと前記強特定用タグとを出力するステップと、
    前記ユーザー装置が、
    前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、
    前記サイト管理装置から弱特定タグと強特定タグとを入力するステップと、
    メッセージを入力するステップと、
    前記弱特定タグと前記ライセンス情報とから弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、
    前記強特定タグと前記ライセンス情報とから強特定性質と呼ばれるものを満たす強特定用タグ署名を計算する強特定用タグ署名ステップと、
    前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、
    前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、
    前記検証装置が、
    署名(強特定可能二重署名禁止疑似署名)を入力する検証ルーチン入力ステップと、
    前記入力された強特定可能二重署名禁止疑似署名に対し、前記強特定可能二重署名禁止疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が強特定可能二重署名禁止署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する検証ルーチン主ステップと、
    前記入力された強特定可能二重署名禁止疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、
    複数個の強特定可能二重署名禁止署名が入力される二重署名弱特定ルーチン入力ステップと、
    前記入力された複数個の強特定可能二重署名禁止署名の中から、同一弱特定タグと同一強特定タグと同一のライセンスによって作られたものを探し出し、そのような強特定可能二重署名禁止署名の組があればそれを出力する二重署名弱特定ルーチン主ステップと、
    前記二重署名弱特定ルーチン主ステップの出力を出力する二重署名弱特定ルーチン出力ステップと、
    前記二重署名弱特定ルーチン出力ステップが出力した強特定可能二重署名禁止署名の組ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである前記鍵リストを入力し、前記入力された組から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出し、それを出力する二重署名強特定ステップと、
    を有することを特徴とする回数制限署名方法。
  4. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける弱特定可能回数制限署名系の回数制限署名方法であって、
    前記グループ管理装置が、
    セキュリティパラメーターから領域変数を計算するセットアップステップと、
    前記ユーザー装置と通信を行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、
    前記サイト管理装置が、
    制限回数と呼ばれるものとサイト識別子と呼ばれるものを含むものを入力するステップと、
    前記入力値のハッシュ値から前記制限回数個の弱特定用タグを作るステップと、
    前記入力値と前記制限回数個の前記弱特定用タグとを出力するステップと、
    前記ユーザー装置が、
    前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、
    前記サイト管理装置から制限回数と制限回数個の弱特定タグとサイト識別子と弱特定サイトにおける弱特定タグ使用履歴とを入力するステップと、
    メッセージを入力するステップと、
    前記入力された制限回数個の前記弱特定タグ達の中で前記弱特定サイトにおける弱特定タグ使用履歴に登録されていないものを選ぶ弱特定タグ選択ステップと、
    前記弱特定タグ選択ステップで選ばれた弱特定タグに対し、弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、
    前記ライセンス情報を前記ユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、
    前記弱特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、
    前記検証装置が、
    署名(弱特定可能回数制限疑似署名)を入力し前記サイト管理装置から弱特定タグを入力する検証ルーチン入力ステップと、
    前記ライセンス情報を前記弱特定可能回数制限疑似署名を作成したユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記弱特定可能回数制限疑似署名を作成したユーザー装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを確認する検証ルーチン主ステップと、
    前記入力された弱特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、
    複数個の弱特定可能回数制限署名を含むものが入力される回数制限弱特定ルーチン入力ステップと、
    前記入力された複数個の弱特定可能回数制限署名の中から、同一ユーザー装置によって作られた、回数制限を越えた個数個の弱特定可能回数制限署名を探し出し、そのような弱特定可能回数制限署名の組があればそれを出力する回数制限弱特定ルーチン主ステップと、
    前記回数制限弱特定ルーチン主ステップの出力を出力する回数制限弱特定ルーチン出力ステップと、
    を有することを特徴とする回数制限署名方法。
  5. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける強特定可能回数制限署名系の回数制限署名方法であって、
    前記グループ管理装置が、
    セキュリティパラメーターから領域変数を計算するセットアップステップと、
    前記ユーザー装置と通信を行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、
    前記ジョインステップで取得した公開鍵達のリストを出力する鍵リスト公開ステップと、
    前記サイト管理装置が、
    制限回数と呼ばれるものとサイト識別子と呼ばれるものを含むものを入力するステップと、
    前記入力値のハッシュ値から前記制限回数個の弱特定用タグと前記制限回数個の強特定用タグを作るステップと、
    前記入力値と前記制限回数個の前記弱特定用タグと前記制限回数個の前記強特定用タグとを出力するステップと、
    前記ユーザー装置が、
    前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、
    前記サイト管理装置から制限回数、制限回数個の弱特定タグと強特定タグとの組、サイト識別子、強特定サイトにおけるタグ使用履歴を入力するステップと、
    メッセージを入力するステップと、
    前記入力された制限回数個のタグの組達の中で前記強特定サイトにおけるタグ使用履歴に登録されていないものを選ぶタグ選択ステップと、
    前記タグ選択ステップで選ばれた弱特定タグと前記ライセンス情報とから弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する前記弱特定用タグ署名ステップと、
    前記タグ選択ステップで選ばれた強特定タグと前記ライセンス情報とから強特定性質と呼ばれるものを満たす強特定用タグ署名を計算する強特定用タグ署名ステップと、
    前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、
    前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、
    前記検証装置が、
    署名(強特定可能回数制限疑似署名)を入力する検証ルーチン入力ステップと、
    前記入力された強特定可能回数制限疑似署名に対し、前記強特定可能回数制限疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が強特定可能回数制限署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する検証ルーチン主ステップと、
    前記入力された強特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、
    複数個の強特定可能回数制限署名が入力される回数制限弱特定ルーチン入力ステップと、
    前記入力された複数個の強特定可能回数制限署名の中から、同一ユーザー装置によって作られた、回数制限を越えた個数個の強特定可能回数制限署名を探し出し、そのような強特定可能回数制限署名の組があればその組の内の一対を出力する回数制限弱特定ルーチン主ステップと、
    前記回数制限弱特定ルーチン主ステップが出力した強特定可能回数制限署名の一対ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された一対から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出し、それを出力する回数制限強特定ステップと、
    を有することを特徴とする回数制限署名方法。
  6. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける大人数用弱特定可能回数制限署名系の回数制限署名方法であって、
    前記グループ管理装置が、
    セキュリティパラメーターから領域変数を計算するセットアップステップと、
    前記ユーザー装置と通信を行うことで、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、
    前記サイト管理装置にサイト管理用の情報を与えるサイト管理権授与ステップと、
    前記サイト管理装置が、
    前記グループ管理装置からサイト管理用の情報を取得するステップと、
    制限回数を含むものを入力するステップと、
    前記制限回数を前記グループ管理装置に送信するステップと、
    前記グループ管理装置が、
    前記制限回数個の大人数用タグを作成して前記サイト管理装置に送信するステップと、
    前記サイト管理装置が、
    前記グループ管理装置から前記制限回数個の大人数用タグを受取るステップと、
    前記入力値と前記制限回数個の大人数用タグとを出力する出力ステップと、
    前記ユーザー装置が、
    前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、
    前記サイト管理装置から制限回数と制限回数個の弱特定タグとサイト識別子と弱特定サイトにおける弱特定タグ使用履歴とを入力するステップと、
    メッセージを入力するステップと、
    前記入力された制限回数個の前記弱特定タグ達の中で前記弱特定サイトにおける弱特定タグ使用履歴に登録されていないものを選ぶ弱特定タグ選択ステップと、
    前記弱特定タグ選択ステップで選ばれた弱特定タグに対し、弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、
    前記ライセンス情報を前記ユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータを生成する正当性証明書作成ステップと、
    前記弱特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、
    前記検証装置が、
    署名(大人数用弱特定可能回数制限疑似署名)を入力し前記サイト管理装置から弱特定タグを入力する検証ルーチン入力ステップと、
    前記ライセンス情報を前記大人数用弱特定可能回数制限疑似署名を作成したユーザー装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記大人数用弱特定可能回数制限疑似署名を作成したユーザー装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを確認する検証ルーチン主ステップと、
    前記入力された大人数用弱特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、
    複数個の大人数用弱特定可能回数制限署名を含むものが入力される回数制限弱特定ルーチン入力ステップと、
    前記入力された複数個の大人数用弱特定可能回数制限署名の中から、同一ユーザー装置によって作られた、回数制限を越えた個数個の大人数用弱特定可能回数制限署名を探し出し、そのような大人数用弱特定可能回数制限署名の組があればそれを出力する回数制限弱特定ルーチン主ステップと、
    前記回数制限弱特定ルーチン主ステップの出力を出力する回数制限弱特定ルーチン出力ステップと、
    を有することを特徴とする回数制限署名方法。
  7. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける大人数用強特定可能回数制限署名系の回数制限署名方法であって、
    前記グループ管理装置が、
    セキュリティパラメーターから領域変数を計算するセットアップステップと、
    前記ユーザー装置と通信を行うことで、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記ユーザー装置の公開鍵を取得するジョインステップと、
    前記ジョインステップで取得した公開鍵達のリストを出力する鍵リスト公開ステップと、
    前記サイト管理装置にサイト管理用の情報を与えるサイト管理権授与ステップと、
    前記サイト管理装置が、
    前記グループ管理装置からサイト管理用の情報を取得するステップと、
    制限回数を含むものを入力するステップと、
    前記制限回数を前記グループ管理装置に送信するステップと、
    前記グループ管理装置が、
    前記制限回数個の大人数用タグを作成して前記サイト管理装置に送信するステップと、
    前記サイト管理装置が、
    前記グループ管理装置から前記制限回数個の大人数用タグを受取るステップと、
    前記入力値と前記制限回数個の大人数用タグとを出力する出力ステップと、
    前記ユーザー装置が、
    前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力するステップと、
    前記サイト管理装置から制限回数と制限回数個の大人数用タグと強特定サイトにおけるタグ使用履歴とサイト識別子とを入力するステップと、
    メッセージを入力するステップと、
    前記入力された制限回数個のタグの組達の中で前記強特定サイトにおけるタグ使用履歴に登録されていないものを選ぶタグ選択ステップと、
    前記タグ選択ステップで選ばれたタグと前記ライセンス情報とから弱特定性質と呼ばれるものを満たす弱特定用タグ署名を計算する弱特定用タグ署名ステップと、
    前記タグ選択ステップで選ばれたタグと前記ライセンス情報とから強特定性質と呼ばれるものを満たす強特定用タグ署名を計算する強特定用タグ署名ステップと、
    前記ライセンス情報を前記ユーザー装置が保有することと、前記大人数用タグから前記弱特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記大人数用タグから前記強特定タグ署名生成に用いた情報を前記ユーザー装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることと、前記弱特定タグ署名生成に用いた大人数用タグと前記強特定タグ署名生成に用いた大人数用タグとが同一であることとを証明するためのデータを生成する正当性証明書作成ステップと、
    前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを署名として出力する出力ステップと、
    前記検証装置が、
    署名(大人数用強特定可能回数制限疑似署名)を入力する検証ルーチン入力ステップと、
    前記入力した大人数用強特定可能回数制限疑似署名に対し、前記大人数用強特定可能回数制限疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が大人数用強特定可能回数制限署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する検証ルーチン主ステップと、
    前記入力された大人数用強特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する検証ルーチン出力ステップと、
    複数個の大人数用強特定可能回数制限署名を入力する回数制限弱特定ルーチン入力ステップと、
    前記入力された複数個の大人数用強特定可能回数制限署名の中から、同一ユーザー装置によって作られた、回数制限を越えた個数個の大人数用強特定可能回数制限署名を探し出し、そのような大人数用強特定可能回数制限署名の組があればその組の内の一対を出力する回数制限弱特定ルーチン主ステップと、
    前記回数制限弱特定ルーチン主ステップが出力した大人数用強特定可能回数制限署名の一対ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された一対から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出し、それを出力する回数制限強特定ステップと、
    を有することを特徴とする回数制限署名方法。
  8. 前記弱特定用タグ署名が、前記弱特定タグを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余である、
    ことを特徴とする請求項2記載の回数制限署名方法。
  9. 前記セットアップステップは、
    セキュリティパラメーターから、タグモジュラスと呼ばれる正整数と、秘密第一因数と呼ばれる素数と、秘密第二因数と呼ばれる素数とを生成し、
    前記秘密第一因数と前記秘密第二因数との積である基本モジュラスと呼ばれる数を計算し、
    さらに自由領域変数と呼ばれるものと、左辺底領域変数と呼ばれるものと、タグ用左辺底領域変数と呼ばれるものとを計算し、
    さらに種乱数と呼ばれる乱数を作り、前記種乱数のハッシュ値から離散対数第一領域変数と呼ばれるものと、離散対数第二領域変数と呼ばれるものとを計算し、前記秘密第一因数と前記秘密第二因数とを秘密裡に保管し、前記種乱数と前記基本モジュラスと前記自由領域変数と、前記左辺底領域変数と、前記離散対数第一領域変数と、前記離散対数第二領域変数と、前記タグモジュラスと、タグ用左辺底領域変数とを公開情報として出力し、
    前記ジョインステップは、
    前記ユーザー装置とアクセスを行い前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記タグ用左辺底領域変数を底とし、前記ライセンスの秘密ライセンス情報と呼ばれるものを指数とし、前記タグモジュラスを法とする巾乗剰余を受け取る、
    ことを特徴とする請求項2,請求項3,請求項4または請求項5記載の回数制限署名方法。
  10. 前記二重署名弱特定ルーチン主ステップは、前記入力された複数個の弱特定可能二重署名禁止署名の弱特定用タグ署名と呼ばれる部分を比較する事によって同一ユーザー装置によって作られたものであるか否かを判定する、ことを特徴とする請求項2記載の回数制限署名方法。
  11. 前記弱特定用タグ署名は、前記弱特定タグを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
    前記強特定用タグ署名は、前記ライセンスを定められた方法で変換したものを底とし、強特定用タグ署名変化用値ハッシュ値と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法として巾乗剰余したものに、前記強特定タグを乗じたものを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
    前記強特定用タグ署名変化用値ハッシュ値は、前記ユーザー装置を使用する度に異なる値のハッシュ値である、
    ことを特徴とする請求項3記載の回数制限署名方法。
  12. 前記二重署名弱特定ルーチン主ステップは、前記入力した複数個の強特定可能二重署名禁止署名の弱特定用タグ署名と呼ばれる部分を比較する事によって同一ユーザー装置によって作られたものであるか否かを判定し、
    前記二重署名強特定ステップは、
    前記入力された強特定可能二重署名禁止署名の組に対し、そのうち任意の二つの強特定可能二重署名禁止署名を取りだし、第一の強特定可能二重署名禁止署名の強特定用タグ署名を第二の強特定可能二重署名禁止署名の強特定用タグ署名で、タグモジュラスを法として剰余したものを底とし、第一の強特定可能二重署名禁止署名の強特定用タグ署名変化用値ハッシュ値から、第二の強特定可能二重署名禁止署名の強特定用タグ署名変化用値ハッシュ値を減じたものの、タグの周期を法とする逆元を指数とし、タグモジュラスを法として巾乗剰余したものを、前記入力された鍵リストから探し出し、見つかれば対応するユーザー装置の識別子を出力する、
    ことを特徴とする請求項3記載の回数制限署名方法。
  13. 前記弱特定用タグ署名は、前記弱特定タグを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるタグモジュラスと呼ばれるものを法とする巾乗剰余である、
    ことを特徴とする請求項4記載の回数制限署名方法。
  14. 前記回数制限弱特定ルーチン主ステップは、前記入力された複数個の弱特定可能回数制限署名の弱特定用タグ署名の部分を比較することによって、同一ユーザー装置によって作られたものであるか否かを判定する、
    ことを特徴とする請求項4記載の回数制限署名方法。
  15. 前記弱特定用タグ署名は、前記弱特定タグを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
    前記強特定用タグ署名は、前記ライセンスを定められた方法で変換したものを底とし、強特定用タグ署名変化用値ハッシュ値と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法として巾乗剰余したものに、前記強特定タグを乗じたものを底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
    前記強特定用タグ署名変化用値ハッシュ値は、前記ユーザー装置を使用する度に異なる値のハッシュ値である、
    ことを特徴とする請求項5記載の回数制限署名方法。
  16. 前記回数制限弱特定ルーチン主ステップは、前記入力した複数個の強特定可能回数制限署名の弱特定用タグ署名と呼ばれる部分を比較する事によって同一ユーザー装置によって作られたものであるか否かを判定し、
    前記回数制限強特定ステップは、前記入力された強特定可能回数制限署名の組に対し、そのうち任意の二つの強特定可能回数制限署名を取りだし、第一の強特定可能回数制限署名の強特定用タグ署名を第二の強特定可能回数制限署名の強特定用タグ署名で、タグモジュラスを法として剰余したものを底とし、第一の強特定可能回数制限署名の強特定用タグ署名変化用値ハッシュ値から、第二の強特定可能回数制限署名の強特定用タグ署名変化用値ハッシュ値を減じたものの、タグの周期を法とする逆元を指数とし、タグモジュラスを法として巾乗剰余したものを、前記入力された鍵リストから探し出し、見つかれば対応するユーザー装置の識別子を出力する、
    ことを特徴とする請求項5記載の回数制限署名方法。
  17. 前記入力した弱特定タグは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報との三つの成分からなり、前記領域変数から決まる左辺底領域変数と自由領域変数と基本モジュラスと呼ばれる三つの情報との間に、前記左辺底領域変数を底とし、タグ用秘密ライセンス情報を指数とする巾乗に、自由領域変数を乗じたものが、タグ用底ライセンス情報を底とし、タグ用指数ライセンス情報を指数とする巾乗に基本モジュラスを法として等しいという関係式を満たし、
    前記弱特定用タグ署名は、前記弱特定タグの前記タグ用底ライセンス情報を底とし、前記ライセンスを定められた方法で変換したものを指数とし、前記基本モジュラスを法とする巾乗剰余である、ことを特徴とする請求項6記載の回数制限署名方法。
  18. 前記入力された弱特定タグ達のおのおのは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報の三つの成分からなり、前記領域変数から決まる左辺底領域変数と自由領域変数と基本モジュラスと呼ばれる三つの情報との間に、前記左辺底領域変数を底とし、タグ用秘密ライセンス情報を指数とする巾乗に、自由領域変数を乗じたものが、タグ用底ライセンス情報を底とし、タグ用指数ライセンス情報を指数とする巾乗に基本モジュラスを法として等しいという関係式を満たし、
    前記回数制限弱特定ルーチン主ステップは、前記入力された複数個の弱特定可能回数制限署名の弱特定用タグ署名の部分を比較する事によって、同一ユーザー装置によって作られたものであるか否かを判定する、
    ことを特徴とする請求項6記載の回数制限署名方法。
  19. 前記タグは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報とを含み、
    前記領域変数および前記ライセンス情報は、前記タグ用左辺底領域変数を底とし、前記タグ用秘密ライセンス情報を指数として巾乗したものに前記タグ用自由領域変数を乗じたものと、前記タグ用底ライセンス情報を底とし、前記タグ用指数ライセンス情報を指数として巾乗したものとが、前記基本モジュラスを法として等しいというタグ用ライセンス等式と、前記タグ用秘密ライセンス情報が、前記セキュリティパラメーターから定まるある範囲に入っていて、かつ前記タグ用指数ライセンス情報が、前記セキュリティパラメーターから定まる別のある範囲に入っているというタグ用ライセンス情報範囲指定条件とを満たす、
    ことを特徴とする請求項6または請求項7記載の回数制限署名方法。
  20. 前記入力された大人数用タグ達の各々は、
    タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報の三つの成分からなり、前記領域変数から決まる左辺底領域変数と自由領域変数と基本モジュラスと呼ばれる三つの情報との間に、前記左辺底領域変数を底とし、タグ用秘密ライセンス情報を指数とする巾乗に、自由領域変数を乗じたものが、タグ用底ライセンス情報を底とし、タグ用指数ライセンス情報を指数とする巾乗に基本モジュラスを法として等しいという関係式を満たし、
    前記弱特定用タグ署名は、前記タグ用底ライセンス情報を底とし、前記ライセンスを定められた方法で変換した、第一指数と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
    前記強特定用タグ署名は、前記ライセンスを定められた方法で変換したものを底とし、強特定用タグ署名変化用値ハッシュ値と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法として巾乗剰余したものに、前記タグ用底ライセンス情報を乗じたものを底とし、前記ライセンスを定められた方法で変換した、第二指数と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
    前記強特定用タグ署名変化用値ハッシュ値は、前記ユーザー装置を使用する度に異なる値のハッシュ値である、
    ことを特徴とする請求項7記載の回数制限署名方法。
  21. 前記セットアップステップは、
    セキュリティパラメーターと、タグモジュラスと呼ばれる正整数と、秘密第一因数と呼ばれる素数と、秘密第二因数と呼ばれる素数とを生成し、
    前記秘密第一因数と前記秘密第二因数との積である基本モジュラスと呼ばれる数を計算し、
    さらに自由領域変数と呼ばれるものと、左辺第一底領域変数と呼ばれるものと、左辺第二底領域変数と呼ばれるものを計算し、
    さらに種乱数と呼ばれる乱数を作り、前記種乱数のハッシュ値から離散対数第一領域変数と呼ばれるものと、離散対数第二領域変数と呼ばれるものとを計算し、前記秘密第一因数と前記秘密第二因数とを秘密裡に保管し、前記種乱数と前記基本モジュラスと前記自由領域変数と、前記左辺第一底領域変数と、前記左辺第二底領域変数と、前記離散対数第一領域変数と、前記離散対数第二領域変数と、とを公開情報として出力し、
    前記ジョインステップは、前記ユーザー装置にアクセスを行い、前記ユーザー装置にライセンスを付与し、前記ユーザー装置から前記左辺第二底領域変数を底とし、前記ライセンスの秘密ライセンス情報と呼ばれるものを指数とし、前記タグモジュラスを法とする巾乗剰余を受け取り、
    前記サイト管理権授与ステップは、タグ用自由領域変数と呼ばれるものと、タグ用左辺第領域変数と呼ばれるものと、を前記サイト管理装置に渡し、
    前記大人数用タグは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報とを含み、
    前記領域変数および前記大人数用タグは、前記タグ用左辺底領域変数を底とし、前記タグ用秘密ライセンス情報を指数として巾乗したものに前記タグ用自由領域変数を乗じたものと、前記タグ用底ライセンス情報を底とし、前記タグ用指数ライセンス情報を指数として巾乗したものとが、前記基本モジュラスを法として等しいというタグ用ライセンス等式と、前記タグ用秘密ライセンス情報が、前記セキュリティパラメーターから定まるある範囲に入っていて、かつ前記タグ用指数ライセンス情報が、前記セキュリティパラメーターから定まる別のある範囲に入っているというタグ用ライセンス情報範囲指定条件とを満たす、
    ことを特徴とする請求項7記載の回数制限署名方法。
  22. 前記回数制限弱特定ルーチン主ステップは、前記入力した複数個の大人数用強特定可能回数制限署名の弱特定用タグ署名と呼ばれる部分を比較することによって、同一ユーザー装置によって作られたものであるか否かを判定し、
    前記回数制限強特定ステップは、前記入力した大人数用強特定可能回数制限署名の組に対し、そのうち任意の二つの大人数用強特定可能回数制限署名を取りだし、第一の大人数用強特定可能回数制限署名の強特定用タグ署名を第二の大人数用強特定可能回数制限署名の強特定用タグ署名で、基本モジュラスを法として剰余したものを底とし、第一の大人数用強特定可能回数制限署名の強特定用タグ署名変化用値ハッシュ値から、第二の大人数用強特定可能回数制限署名の強特定用タグ署名変化用値ハッシュ値を減じたもの指数とし、基本モジュラスを法として巾乗剰余したものを、前記入力された鍵リストから探し出し、見つかれば対応するユーザー装置の識別子を出力し、
    前記入力された弱特定用タグ署名および強特定タグ署名は、タグと呼ばれるものから作られていて、
    前記タグは、タグ用秘密ライセンス情報とタグ用底ライセンス情報とタグ用指数ライセンス情報の三つの成分からなり、前記領域変数から決まる左辺底領域変数と自由領域変数と基本モジュラスの三つの情報との間に、前記左辺底領域変数を底とし、タグ用秘密ライセンス情報を指数とする巾乗に、自由領域変数を乗じたものが、タグ用底ライセンス情報を底とし、タグ用指数ライセンス情報を指数とする巾乗に基本モジュラスを法として等しいという関係式を満たし、
    前記弱特定用タグ署名は、前記タグ用底ライセンス情報を底とし、前記ライセンスを定められた方法で変換した、第一指数と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
    前記強特定用タグ署名は、前記ライセンスを定められた方法で変換したものを底とし、強特定用タグ署名変化用値ハッシュ値と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法として巾乗剰余したものに、前記タグ用底ライセンス情報を乗じたものを底とし、前記ライセンスを定められた方法で変換した、第二指数と呼ばれるものを指数とし、前記領域変数から定まるモジュラスを法とする巾乗剰余であり、
    前記強特定用タグ署名変化用値ハッシュ値は、前記ユーザー装置を使用する度に異なる値のハッシュ値であり、
    前記検証ルーチン主ステップは、さらに前記入力された大人数用強特定可能回数制限署名の、弱特定用タグ署名部を作成するのに使用したライセンスと、強特定用タグ署名部を作成するのに使用したライセンスが同一であることを確認する、ことを特徴とする請求項7記載の回数制限署名方法。
  23. グループ管理装置とユーザー装置と検証装置とを備えるシステムにおけるグループ署名プログラムであって、
    コンピュータに、前記グループ管理装置が、セキュリティパラメーター並びに基本モジュラスと自由領域変数と左辺底領域変数と離散対数第一領域変数と離散対数第二領域変数とを含む領域変数をセットアップする機能、秘密ライセンス情報と底ライセンス情報と指数ライセンス情報とを含むライセンス情報をユーザー装置に渡す機能、
    前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを含む値を入力する機能、前記領域変数および前記ライセンス情報が、前記左辺底領域変数を底とし、前記秘密ライセンス情報を指数として巾乗したものに前記自由領域変数を乗じたものと、前記底ライセンス情報を底とし、前記指数ライセンス情報を指数として巾乗したものとが、前記基本モジュラスを法として等しいというライセンス等式と、前記秘密ライセンス情報が、前記セキュリティパラメーターから定まるある範囲に入っていて、かつ前記指数ライセンス情報が、前記セキュリティパラメーターから定まる別のある範囲に入っているというライセンス情報範囲指定条件と、を満たすことを確認する機能、エルガマル暗号生成用指数部乱数と呼ばれる乱数を作成し、その乱数を用い前記底ライセンス情報をエルガマル暗号化する機能、ライセンス情報コミット用乱数を作成して前記エルガマル暗号生成用指数部乱数に対するエルガマル暗号生成用指数部乱数コミット用乱数を作成する機能、ゼロ知識証明のコミットメントを作成する機能、コミットメント諸々のハッシュ関数であるチャレンジを生成する機能、ライセンス情報レスポンスを作成して前記ライセンス情報に対するレスポンスを定められた方法で変換し、前記変換されたものを前記エルガマル暗号生成用指数部乱数に乗じ、そこに前記エルガマル暗号生成用指数部乱数コミット用変数を加えたものをエルガマル暗号生成用指数部乱数に対するレスポンスとして出力する機能、前記コミットメントと前記チャレンジと前記レスポンスを署名として出力する機能、
    前記検証装置が、前記セキュリティパラメーターと前記領域変数を入力する機能、署名(疑似署名)を入力する機能、前記入力した疑似署名の作成に使われた秘密情報がライセンス等式を満たすか否かを検証する機能、前記領域変数の離散対数第一領域変数部を底とし、前記疑似署名のエルガマル生成用指数部乱数レスポンス部を指数とする巾乗が、前記疑似署名のエルガマル暗号第一成分部を底とし、前記疑似署名の指数ライセンス情報部を定められた方法で変換したもの指数とする巾乗に前記疑似署名のエルガマル暗号生成用指数部乱数コミットを乗じたものとが、前記疑似署名の基本モジュラス部を法として等しくなるかどうかを確認する機能、前記入力した疑似署名の作成に使われた秘密情報がライセンス情報範囲指定条件を満たすか否かを検証する機能、前記ライセンス等式検証ステップと前記エルガマル暗号第一成分等式検証ステップと前記ライセンス情報範囲指定条件検証ステップとで正しく検証されたときに、前記疑似署名が、前記グループ管理装置からライセンスをもらった前記ユーザー装置が前記ライセンスを入力として高速化グループ署名手順を行うことで作成した署名であると判定する機能、
    を実現させるためのグループ署名プログラム。
  24. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける弱特定可能二重署名禁止署名系の回数制限署名プログラムであって、
    コンピュータに、前記グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、前記ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得する機能、
    前記サイト管理装置が、入力値のハッシュ値から弱特定用タグを作成する機能、前記入力値と前記弱特定用タグとを出力する機能、
    前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から前記弱特定タグを入力する機能、メッセージを入力する機能、前記弱特定タグと前記ライセンス情報とから弱特定用タグ署名を計算する機能、前記ライセンス情報を保有することと前記弱特定タグから前記弱特定タグ署名生成に用いた情報を保有することと前記保有するライセンス情報と前記生成に用いた情報が同一であることとを証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、
    前記検証装置が、署名(弱特定可能二重署名禁止疑似署名)を入力する機能、前記弱特定可能二重署名禁止疑似署名に対し前記弱特定可能二重署名禁止疑似署名を作成した装置が前記グループ管理装置からライセンスを得たユーザー装置であること及び前記弱特定可能二重署名禁止署名計算は前記ライセンスを得た前記ユーザー装置が前記ライセンスを入力して行うことによって得られたものであることを確認する機能、前記入力した弱特定可能二重署名禁止疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の前記弱特定可能二重署名禁止署名を入力する機能、前記入力された複数個の弱特定可能二重署名禁止署名の中から同一ユーザー装置によって作られたものを検索し、そのような弱特定可能二重署名禁止署名の組があればそれを出力する機能、
    を実現させるための回数制限署名プログラム。
  25. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける強特定可能二重署名禁止署名系の回数制限署名プログラムであって、
    コンピュータに、前記グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、前記ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得し、取得した公開鍵のリストを出力する機能、
    前記サイト管理装置が、入力値のハッシュ値から弱特定用タグと強特定用タグを作成する機能、前記入力値と前記弱特定用タグと前記強特定用タグとを出力する機能、
    前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から前記弱特定タグと前記強特定タグとを入力する機能、メッセージを入力する機能、前記弱特定タグと前記ライセンス情報とから弱特定用タグ署名を計算する機能、前記強特定タグと前記ライセンス情報とから強特定用タグ署名を計算する機能、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記装置が保有することと、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記装置が保有することと、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることとを証明するためのデータ(正当性証明書を)生成する機能、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、
    前記検証装置が、署名(強特定可能二重署名禁止疑似署名)を入力する機能、前記入力した強特定可能二重署名禁止疑似署名に対し前記強特定可能二重署名禁止疑似署名を作成した装置が前記グループ管理装置からライセンスを得たユーザー装置であること及び強特定可能二重署名禁止署名計算は前記ライセンスを得た前記ユーザー装置が前記ライセンスを入力して行うことによって得られたものであることを確認する機能、前記入力した弱特定可能二重署名禁止疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の強特定可能二重署名禁止署名を入力する機能、前記入力した複数個の強特定可能二重署名禁止署名の中から、同一弱特定タグと同一強特定タグと同一のライセンスによって作られたものを検索し、そのような強特定可能二重署名禁止署名の組があればそれを出力する機能、前記出力した強特定可能二重署名禁止署名の組ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された組から前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出して出力する機能、
    を実現させるための回数制限署名プログラム。
  26. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける弱特定可能回数制限署名系の回数制限署名プログラムであって、
    コンピュータに、前記グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、前記ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得する機能、前記サイト管理装置が、制限回数と呼ばれるものとサイト識別子と呼ばれるものを含むものを入力する機能、前記入力値のハッシュ値から前記制限回数個の弱特定用タグを作成する機能、前記入力値と前記制限回数個の前記弱特定用タグとを出力する機能、
    前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から制限回数と制限回数個の弱特定タグとサイト識別子と弱特定サイトにおける弱特定タグ使用履歴とを入力する機能、メッセージを入力する機能、前記入力された制限回数個の前記弱特定タグ達の中で前記弱特定サイトにおける弱特定タグ使用履歴に登録されていないものを選ぶ機能、前記選ばれた弱特定タグに対し弱特定用タグ署名を計算する機能、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、
    前記検証装置が、署名(弱特定可能回数制限疑似署名)を入力する機能、前記ライセンス情報を前記弱特定可能回数制限疑似署名を作成した装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記弱特定可能回数制限疑似署名を作成した装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを確認する機能、前記入力された弱特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の弱特定可能回数制限署名を含むものを入力する機能、前記入力された複数個の弱特定可能回数制限署名の中から同一ユーザー装置によって作られた回数制限を越えた個数個の弱特定可能回数制限署名を探し出し、そのような弱特定可能回数制限署名の組があればそれを出力する機能、
    を実現させるための回数制限署名プログラム。
  27. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける強特定可能回数制限署名系の回数制限署名プログラムであって、
    コンピュータに、前記グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、前記ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得し、取得した公開鍵のリストを出力する機能、
    前記サイト管理装置が、制限回数と呼ばれるものとサイト識別子と呼ばれるものを含むものを入力する機能、前記入力値のハッシュ値から前記制限回数個の弱特定用タグと前記制限回数個の強特定用タグを作成する機能、前記入力値と前記制限回数個の前記弱特定用タグと前記制限回数個の前記強特定用タグとを出力する機能、
    前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から制限回数,制限回数個の弱特定タグと強特定タグとの組,強特定サイトにおけるタグ使用履歴およびサイト識別子を入力する機能、メッセージを入力する機能、前記入力された制限回数個のタグの組達の中で前記強特定サイトにおけるタグ使用履歴に登録されていないものを選ぶ機能、前記選ばれた弱特定タグと前記ライセンス情報とから弱特定用タグ署名を計算する機能、前記選ばれた強特定タグと前記ライセンス情報とから強特定用タグ署名を計算する機能、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記装置が保有すること、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることとを、証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、
    前記検証装置が、署名(強特定可能回数制限疑似署名)を入力する機能、前記入力した強特定可能回数制限疑似署名に対し、前記強特定可能回数制限疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が強特定可能回数制限署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する機能、前記入力された強特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の強特定可能回数制限署名を入力する機能、前記入力された複数個の強特定可能回数制限署名の中から同一ユーザー装置によって作られた回数制限を越えた個数個の強特定可能回数制限署名を探し出し、そのような強特定可能回数制限署名の組があればその組の内の一対を出力する機能、前記出力した強特定可能回数制限署名の一対ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された一対から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出して出力する機能、
    を実現させるための回数制限署名プログラム。
  28. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける大人数用弱特定可能回数制限署名系の回数制限署名プログラムであって、
    コンピュータに、前記グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、前記ユーザー装置と通信を行い前記ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得する機能、サイト管理装置にサイト管理用の情報を与える機能、サイト管理装置に制限回数個の大人数用タグを発行する機能、
    前記サイト管理装置が、制限回数を含むものを入力する機能、前記グループ管理装置とアクセスしてサイト管理に必要な情報を取得する機能、前記グループ管理装置とアクセスして制限回数個の大人数用タグを受け取る機能、前記入力値と前記制限回数個の大人数用タグとを出力する機能、
    前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から制限回数と制限回数個の弱特定タグとサイト識別子と弱特定サイトにおける弱特定タグ使用履歴とを入力する機能、メッセージを入力する機能、前記入力された制限回数個の前記弱特定タグ達の中で前記弱特定サイトにおける弱特定タグ使用履歴に登録されていないものを選ぶ機能、前記選ばれた弱特定タグに対し弱特定用タグ署名を計算する機能、前記ライセンス情報をが保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを、証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、
    前記検証装置が、署名(大人数用弱特定可能回数制限疑似署名)を入力する機能、前記ライセンス情報を前記大人数用弱特定可能回数制限疑似署名を作成した装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記大人数用弱特定可能回数制限疑似署名を作成した装置が保有すること、前記保有するライセンス情報と前記生成に用いた情報が同一であることとを確認する機能、前記入力された大人数用弱特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の大人数用弱特定可能回数制限署名を含むものを入力する機能、前記入力された複数個の大人数用弱特定可能回数制限署名の中から同一ユーザー装置によって作られた回数制限を越えた個数個の大人数用弱特定可能回数制限署名を探し出し、そのような大人数用弱特定可能回数制限署名の組があればそれを出力する機能、
    を実現させるための回数制限署名プログラム。
  29. グループ管理装置とユーザー装置と検証装置とサイト管理装置とを備えるシステムにおける大人数用強特定可能回数制限署名系の回数制限署名プログラムであって、
    コンピュータに、前記グループ管理装置が、セキュリティパラメーターから領域変数を計算する機能、前記ユーザー装置と通信を行い前記ユーザー装置にライセンスを付与して前記ユーザー装置から前記ユーザー装置の公開鍵を取得し、前記取得した公開鍵達のリストを出力する機能、サイト管理装置にサイト管理用の情報を与える機能、サイト管理装置に制限回数個の大人数用タグを発行する機能、前記サイト管理装置が、制限回数を含むものを入力する機能、前記グループ管理装置とアクセスしてサイト管理に必要な情報を取得する機能、前記グループ管理装置とアクセスして制限回数個の大人数用タグを受け取る機能、前記入力値と前記制限回数個の大人数用タグとを出力する機能、
    前記ユーザー装置が、前記セキュリティパラメーターと前記領域変数と前記ライセンス情報とを入力する機能、前記サイト管理装置から制限回数と制限回数個の大人数用タグと強特定サイトにおけるタグ使用履歴とサイト識別子とを入力する機能、メッセージを入力する機能、前記入力した制限回数個のタグの組達の中で前記強特定サイトにおけるタグ使用履歴に登録されていないものを選ぶ機能、前記選ばれたタグと前記ライセンス情報とから弱特定用タグ署名を計算する機能、前記選ばれたタグと前記ライセンス情報とから強特定用タグ署名を計算する機能、前記ライセンス情報を前記装置が保有することと、前記弱特定タグから前記弱特定タグ署名生成に用いた情報を前記装置が保有すること、前記強特定タグから前記強特定タグ署名生成に用いた情報を前記装置が保有すること、前記保有するライセンス情報と前記弱特定タグ署名生成に用いた情報と前記強特定タグ署名生成に用いた情報とが同一であることと、前記弱特定タグ署名生成に用いたタグと前記強特定タグ署名生成に用いたタグとが同一であることとを証明するためのデータ(正当性証明書)を生成する機能、前記弱特定用タグ署名と前記強特定用タグ署名と前記正当性証明書とを含むものを前記メッセージに対する署名として出力する機能、
    前記検証装置が、署名(大人数用強特定可能回数制限疑似署名)を入力する機能、前記入力した大人数用強特定可能回数制限疑似署名に対し、前記大人数用強特定可能回数制限疑似署名を作成した装置が前記グループ管理装置と通信することでライセンスを得たユーザー装置であること及び前記ライセンスを得た前記ユーザー装置が大人数用強特定可能回数制限署名計算を前記ライセンスを入力として行うことによって得られたものであることを確認する機能、前記入力された大人数用強特定可能回数制限疑似署名に対する前記二つの確認が二つとも正しかったか否かを出力する機能、複数個の大人数用強特定可能回数制限署名を入力する機能、前記入力された複数個の大人数用強特定可能回数制限署名の中から同一ユーザー装置によって作られた回数制限を越えた個数個の強特定可能回数制限署名を探し出し、そのような大人数用強特定可能回数制限署名の組があればその組の内の一対を出力する機能、前記出力した大人数用強特定可能回数制限署名の一対ならびにライセンスの定められた部分情報を装置の識別子と対応させるリストである鍵リストを含むものを入力し、前記入力された一対から、前記同一のライセンスの部分情報を計算し、さらに前記鍵リストから、前記部分情報を検索することで前記ライセンスと対応している装置の識別子を探し出して出力する機能、
    を実現させるための回数制限署名プログラム。
JP2003014806A 2003-01-23 2003-01-23 署名方法および署名プログラム Expired - Fee Related JP4336876B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003014806A JP4336876B2 (ja) 2003-01-23 2003-01-23 署名方法および署名プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003014806A JP4336876B2 (ja) 2003-01-23 2003-01-23 署名方法および署名プログラム

Publications (2)

Publication Number Publication Date
JP2004228958A JP2004228958A (ja) 2004-08-12
JP4336876B2 true JP4336876B2 (ja) 2009-09-30

Family

ID=32902740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003014806A Expired - Fee Related JP4336876B2 (ja) 2003-01-23 2003-01-23 署名方法および署名プログラム

Country Status (1)

Country Link
JP (1) JP4336876B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8634114B2 (en) 2010-09-30 2014-01-21 Brother Kogyo Kabushiki Kaisha Image processing apparatus, image processing method and image scanning apparatus

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100909503B1 (ko) 2005-01-21 2009-07-27 닛본 덴끼 가부시끼가이샤 그룹 서명 방식
JP4872908B2 (ja) * 2005-02-10 2012-02-08 日本電気株式会社 メンバー証明書獲得装置、メンバー証明書発行装置、グループ署名装置、グループ署名検証装置
JP4518397B2 (ja) * 2005-03-18 2010-08-04 日本電信電話株式会社 署名生成者同一性検証方法及びシステム、並びにプログラム
JP4548223B2 (ja) * 2005-05-27 2010-09-22 日本電気株式会社 擬似ランダム関数計算装置及び方法、並びに回数制限匿名認証システム及び方法
US7995762B2 (en) 2005-07-19 2011-08-09 Nec Corporation Key issuing method, group signature system, information processing apparatus, and program
WO2007105749A1 (ja) * 2006-03-16 2007-09-20 Nec Corporation グループ署名システムおよび情報処理方法
CN102301644B (zh) * 2009-01-31 2014-06-04 国际商业机器公司 数据处理系统中的数据项的验证
US11122033B2 (en) * 2017-12-19 2021-09-14 International Business Machines Corporation Multi factor authentication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8634114B2 (en) 2010-09-30 2014-01-21 Brother Kogyo Kabushiki Kaisha Image processing apparatus, image processing method and image scanning apparatus

Also Published As

Publication number Publication date
JP2004228958A (ja) 2004-08-12

Similar Documents

Publication Publication Date Title
Brickell et al. Enhanced privacy ID: A direct anonymous attestation scheme with enhanced revocation capabilities
US7590850B2 (en) Digital signature method based on identification information of group members, and method of acquiring identification information of signed-group member, and digital signature system for performing digital signature based on identification information of group members
US7958362B2 (en) User authentication based on asymmetric cryptography utilizing RSA with personalized secret
JP4741503B2 (ja) 公開鍵を検証可能に生成する方法及び装置
JP4635009B2 (ja) 通信における証明された秘密値の使用
Kaaniche et al. Attribute-based signatures for supporting anonymous certification
US9882890B2 (en) Reissue of cryptographic credentials
JP3562262B2 (ja) 認証方法および装置
Chen et al. DAA-A: Direct anonymous attestation with attributes
JPWO2006027933A1 (ja) グループ署名システム、メンバ状態判定装置、グループ署名方法及びメンバ状態判定プログラム
KR102372718B1 (ko) 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법
US20080141035A1 (en) Limited Blind Signature System
JP2018137788A (ja) 構造化集合に組織化された様々な識別情報ドメインからのデータを管理及び検査する方法
Canard et al. Trapdoor sanitizable signatures and their application to content protection
JP4336876B2 (ja) 署名方法および署名プログラム
KR20040099943A (ko) 컨텐츠 사용자 인증 시스템 및 방법
Connolly et al. Protego: Efficient, revocable and auditable anonymous credentials with applications to hyperledger fabric
Fan et al. Attribute-based strong designated-verifier signature scheme
Su et al. Secure blockchain-based electronic voting mechanism.
JP3513324B2 (ja) ディジタル署名処理方法
Tso A new way to generate a ring: Universal ring signature
US20100251351A1 (en) information and communication system, an organization apparatus and a user apparatus
Shin et al. AAnA: Anonymous authentication and authorization based on short traceable signatures
Li et al. Attribute-based anonymous credential: Delegation, traceability, and revocation
Nguyen Efficient dynamic k-times anonymous authentication

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050310

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051215

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070115

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20080610

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090508

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090602

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090615

R150 Certificate of patent or registration of utility model

Ref document number: 4336876

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120710

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120710

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130710

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees