JPH09298536A - Digital signature system and information communication system using the same - Google Patents
Digital signature system and information communication system using the sameInfo
- Publication number
- JPH09298536A JPH09298536A JP8108225A JP10822596A JPH09298536A JP H09298536 A JPH09298536 A JP H09298536A JP 8108225 A JP8108225 A JP 8108225A JP 10822596 A JP10822596 A JP 10822596A JP H09298536 A JPH09298536 A JP H09298536A
- Authority
- JP
- Japan
- Prior art keywords
- signature
- information
- digital signature
- public
- digital
- 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.)
- Withdrawn
Links
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明はディジタル署名方式
およびそれを用いた情報通信システムに関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a digital signature system and an information communication system using the digital signature system.
【0002】[0002]
【従来の技術】コンピュータおよび通信ネットワークの
発展と広範な普及に伴い、社会的活動のような機能をネ
ットワーク上においても実現できるようになった。しか
し、誰が、何時、何処で、何を行ったか、も容易に把握
することができ、それに対抗するため、匿名で処理を行
うことによりネットワーク上で多様な機能を実現し、か
つプライバシも保護する方法が考えられている。2. Description of the Related Art With the development and widespread use of computers and communication networks, functions such as social activities can be realized on the networks. However, it is possible to easily understand who did what, when, where, and what they did. In order to counter it, anonymous processing is used to realize various functions on the network and protect privacy. A method is being considered.
【0003】後述する公開鍵暗号を用いれば、送信者は
通信内容を意図する受信者だけに送り、しかも受信者は
その通信の送信者が誰であるかを確実に確認することが
可能である。後述する零知識証明を利用すれば、ユーザ
がある秘密情報を保持していることを、その秘密を明ら
かにすることなく他者に証明できる。これらを応用した
情報通信システムが、Masahiro MAMBO, Eiji OKAMOTO,
"A method to publicly specify a signer with hidin
g identity, The 18th Symposium on Information Theo
ry and Its Applications" (October 1995)で提案され
ている。これを、以下では「MOシステム」と呼ぶことに
する。By using public key cryptography, which will be described later, the sender can send the communication contents only to the intended receiver, and the receiver can surely confirm who is the sender of the communication. . By using a zero-knowledge proof, which will be described later, it is possible to prove to a third party that a user holds certain confidential information without revealing the secret. Information and communication systems that apply these are Masahiro MAMBO, Eiji OKAMOTO,
"A method to publicly specify a signer with hidin
g identity, The 18th Symposium on Information Theo
ry and Its Applications "(October 1995). This is called" MO system "in the following.
【0004】以下、最初に公開鍵暗号を、次に零知識証
明を、それからMOシステムを詳細に説明する。The public key cryptography, then the zero-knowledge proof, and then the MO system will be described in detail below.
【0005】[公開鍵暗号]公開鍵暗号とは、暗号鍵と
復号鍵とが異なり、暗号鍵を公開し、復号鍵を秘密にす
る暗号方式であり、以下のような特徴をもつ。 (1)暗号鍵と復号鍵とが異なり、暗号鍵を公開すること
ができるため、暗号鍵を秘密に配送する必要がなく、鍵
の配送が容易である。 (2)各利用者は、暗号鍵を公開し、各自、復号鍵だけを
秘密にし記憶しておけばよい。 (3)送られてきた通信文の送信者が偽者でないこと、お
よび、その通信文が改竄されていないことを、受信者が
確認するための認証機能(ディジタル署名)を実現でき
る。[Public Key Cryptography] Public key cryptography is an encryption method in which the encryption key and the decryption key are different, and the encryption key is disclosed and the decryption key is kept secret, and has the following features. (1) Since the encryption key and the decryption key are different and the encryption key can be disclosed, it is not necessary to secretly distribute the encryption key, and the key can be easily distributed. (2) Each user only needs to disclose the encryption key and keep only the decryption key secret. (3) It is possible to realize an authentication function (digital signature) for the receiver to confirm that the sender of the sent communication text is not an impostor and that the communication text has not been tampered with.
【0006】通信文(平文)Mに対して、公開の暗号鍵k
pを用いた暗号化操作をE(kp, M)とし、秘密の復号鍵ks
を用いた復号操作をD(ks, M)とすると、公開鍵暗号アル
ゴリズムは、まず次の二つの条件を満たす。 (1)暗号鍵kpが与えられたときE(kp, M)の計算は容易で
あり、復号鍵ksが与えられたときD(ks, M)の計算は容易
である。 (2)もし復号鍵ksを知らないなら、暗号鍵kp、暗号化操
作Eの計算手順、暗号であるC=E(kp, M)を知ったとして
も、平文Mを決定することは、その計算量から困難であ
る。For the message (plaintext) M, the public encryption key k
Let E (kp, M) be the encryption operation using p, and use the secret decryption key ks
Letting D (ks, M) be the decryption operation using, the public key cryptographic algorithm first satisfies the following two conditions. (1) The calculation of E (kp, M) is easy when the encryption key kp is given, and the calculation of D (ks, M) is easy when the decryption key ks is given. (2) If you do not know the decryption key ks, even if you know the encryption key kp, the calculation procedure of the encryption operation E, and the encryption C = E (kp, M), determining the plaintext M is Difficult to calculate.
【0007】さらに、上記(1)(2)に加えて、次の条件
(3)が成立することにより、秘密通信が実現できる。 (3)すべての平文Mに対し、E(kp, M)を定義することがで
き、次式が成立する。 D(ks, E(kp, M)) = MIn addition to the above (1) and (2), the following conditions
By satisfying (3), secret communication can be realized. (3) E (kp, M) can be defined for all plaintexts M, and the following equation holds. D (ks, E (kp, M)) = M
【0008】つまり、暗号鍵kpは公開されているため、
誰もがE(kp, M)を計算することができるが、D(ks, E(k
p, M))を計算して平文Mを得ることができるのは、秘密
の復号鍵ksを記憶している本人だけである。That is, since the encryption key kp is open to the public,
Anyone can calculate E (kp, M), but D (ks, E (k
Only the person who remembers the secret decryption key ks can calculate p, M)) to obtain the plaintext M.
【0009】一方、上記(1)(2)に加えて、次の条件(4)
が成立することにより、認証通信(ディジタル署名)が
実現できる。 (4)すべての平文Mに対し、D(ks, M)を定義することがで
き、次式が成立する。 E(kp, D(ks, M)) = MOn the other hand, in addition to the above (1) and (2), the following condition (4)
By satisfying, the authentication communication (digital signature) can be realized. (4) D (ks, M) can be defined for all plaintexts M, and the following equation holds. E (kp, D (ks, M)) = M
【0010】つまり、D(ks, M)を計算できるのは秘密の
復号鍵ksを記憶している本人だけであり、他人が偽の鍵
ks'を用いてD(ks', M)を計算し、秘密の復号鍵ksを記憶
する本人になりすまそうとしても、E(kp, D(ks', M))≠
Mであり、受信者は受取った情報が不正なものであるこ
とを知ることができる。That is, D (ks, M) can be calculated only by the person who remembers the secret decryption key ks, and the false key by another person.
Even if D (ks', M) is calculated using ks' and an attempt is made to impersonate the person who remembers the secret decryption key ks, E (kp, D (ks', M)) ≠
M, the recipient can know that the received information is incorrect.
【0011】同様に、D(ks, M)が改竄されても、E(kp,
D(ks, M)')≠Mであり、受信者は受取った情報が不正な
ものであることを知ることができる。このD(ks, M)をM
に対する「ディジタル署名」と呼ぶ。Similarly, even if D (ks, M) is tampered with, E (kp,
Since D (ks, M) ') ≠ M, the recipient can know that the received information is incorrect. This D (ks, M) is M
Is called a "digital signature".
【0012】代表的な公開鍵暗号方式を以下に挙げる。
秘密通信と認証通信ができる方式として、RSA暗号(R.
L. Rivest, A. Shamir and L. Adleman: "A method of
obtaining digital signatures and public key crypto
systems", Comm. of ACM, 1978)、R暗号(M. Rabin: "Di
gitalized signatures and public-key cryptosystem
s", MIT/LCS/TR-212, Technical Report MIT, 1979)、W
暗号(H. C. Williams: "Amodification of the RSA pub
lic-key encryption procedure", IEEE Trans. Inf. Th
eory, IT-26, 6, 1980)などがある。Typical public key cryptosystems are listed below.
RSA encryption (R.
L. Rivest, A. Shamir and L. Adleman: "A method of
obtaining digital signatures and public key crypto
systems ", Comm. of ACM, 1978), R cipher (M. Rabin:" Di
gitalized signatures and public-key cryptosystem
s ", MIT / LCS / TR-212, Technical Report MIT, 1979), W
Cryptography (HC Williams: "Amodification of the RSA pub
lic-key encryption procedure ", IEEE Trans. Inf. Th
eory, IT-26, 6, 1980).
【0013】また、秘密通信だけができる方式として、
CR暗号(B. Chor and R. L. Rivest:"A knapsack type p
ublic key cryptosystem based on arithmetric in fin
itefield", Proc. Crypto 84)、M暗号(R. J. McEliece:
"A public-key cryptosystem based on algebraic cod
ing theory", DSN Progress Rep., Jet PropulsionLa
b., 1978)、E暗号(T. E. ElGamal: "A public key cryp
tosystem and a signature scheme based on discretre
logarithms", IEEE Transaction on Information Theo
ry, Vol. IT-31, No.4, pp.469-472, 1985)などがあ
る。Further, as a system capable of performing only secret communication,
CR cipher (B. Chor and RL Rivest: "A knapsack type p
ublic key cryptosystem based on arithmetric in fin
itefield ", Proc. Crypto 84), M encryption (RJ McEliece:
"A public-key cryptosystem based on algebraic cod
ing theory ", DSN Progress Rep., Jet PropulsionLa
b., 1978), E encryption (TE ElGamal: "A public key cryp
tosystem and a signature scheme based on discretre
logarithms ", IEEE Transaction on Information Theo
ry, Vol. IT-31, No.4, pp.469-472, 1985).
【0014】認証通信だけができる方式として、S暗号
(A. Shamir: "A fast signature scheme", Report MIT/
LCS/TM-107, MIT laboratory for computer science, C
ambridge, Mass., 1978)、L暗号(K. Lieberherr: "Unif
orm complexity and digitalsignature", Lecture Note
s in Computer Science 115 Automata, Language andPr
ogramming, Eigtht Colloquium Acre, Israel, 1981)、
GMY暗号(S. Goldwasser, S. Micali and A. Yao: "Stro
ng signature schemes", ACM Symp. on Theory of Comp
uting, 1983)、GMR暗号(S. Goldwasser, S. Micali and
R. L. Rivest: "A 'paradoxical' solution to the si
gnature problem", ACM Symp. on Foundation of Compu
ter Science, 1984)、E暗号(T. E. ElGamal: "A public
key cryptosystem and a signature scheme based on
discretre logarithms", IEEE Transaction on Informa
tion Theory, Vol. IT-31, No.4, pp.469-472, 1985)、
OS暗号(岡本, 白石: "多項式演算によるディジタル署名
方式", 信学論(D), J68−D, 5, 1985; T. Okamoto and
A. Shiraisi: "A fast signature scheme based on qua
dratic inequalities", IEEE Symp. on Theory of Comp
uting, 1984)、S-encryption is a method that allows only authenticated communication.
(A. Shamir: "A fast signature scheme", Report MIT /
LCS / TM-107, MIT laboratory for computer science, C
ambridge, Mass., 1978), L cipher (K. Lieberherr: "Unif
orm complexity and digitalsignature ", Lecture Note
s in Computer Science 115 Automata, Language and Pr
ogramming, Eigtht Colloquium Acre, Israel, 1981),
GMY encryption (S. Goldwasser, S. Micali and A. Yao: "Stro
ng signature schemes ", ACM Symp. on Theory of Comp
uting, 1983), GMR encryption (S. Goldwasser, S. Micali and
RL Rivest: "A 'paradoxical' solution to the si
gnature problem ", ACM Symp. on Foundation of Compu
ter Science, 1984), E-cipher (TE ElGamal: "A public
key cryptosystem and a signature scheme based on
discretre logarithms ", IEEE Transaction on Informa
tion Theory, Vol.IT-31, No.4, pp.469-472, 1985),
OS Cryptography (Okamoto, Shiraishi: "Digital Signature Scheme by Polynomial Arithmetic", IEICE (D), J68-D, 5, 1985; T. Okamoto and
A. Shiraisi: "A fast signature scheme based on qua
dratic inequalities ", IEEE Symp. on Theory of Comp
uting, 1984),
【0015】Fiat-Shamir暗号(A. Fiat, A. Shamir: "H
ow to prove yourself: practicalsolutions of identi
fication and signature problems", Proc. of CRYPTO'
86,1987)、Schnorr暗号(C. P. Schnorr: "Efficient si
gnature generation by smart cards", Journal of Cry
ptology, vol.4, pp.161-174, 1991)などがある。Fiat-Shamir encryption (A. Fiat, A. Shamir: "H
ow to prove yourself: practicalsolutions of identi
fication and signature problems ", Proc. of CRYPTO '
86,1987), Schnorr cipher (CP Schnorr: "Efficient si
gnature generation by smart cards ", Journal of Cry
ptology, vol.4, pp.161-174, 1991).
【0016】具体的な一例として、離散対数を求めるこ
との困難性に安全性の根拠をおき、偽造に対する安全性
が極めて高いとされ、署名のサイズが小さい署名方式で
あるSchnorr暗号を説明する。なお、以下の説明におい
て、a^bはaのb乗を表す。As a specific example, the Schnorr cipher, which is a signature scheme in which the security of the security is based on the difficulty of obtaining the discrete logarithm, the security against forgery is extremely high, and the signature size is small, will be described. In the following description, a ^ b represents a to the bth power.
【0017】例えば、大きな素数pと、q|p-1(qはp-1を
割り切る)なる大きな素数qを選ぶとき、{1, 2, …, q-
1}の中の一つをαとすると、α^x≡u (mod p)を満たすx
(=DL(u,α)と記す)は、ガロア体GF(p)上における離散
対数であり、p, q, α, uを与えられた上でxを効率的に
求めることは難しいとされている。For example, when selecting a large prime number p and a large prime number q such that q | p-1 (q is a divisor of p-1), {1, 2, ..., q-
If one of 1} is α, then x that satisfies α ^ x≡u (mod p)
(= DL (u, α)) is the discrete logarithm in the Galois field GF (p), and it is considered difficult to efficiently find x given p, q, α, u. ing.
【0018】Schnorr暗号では、鍵認証センタ(KAC: Key
Authentication Center)がシステムの初期化を行う。
署名者が鍵生成と署名生成を行い、認証者が署名を受取
り確認する。システムの中では、一方向性ハッシュ関数
を用いる。一方向性ハッシュ関数とは、衝突を起こしに
くい圧縮関数である。つまり、任意の長さの値を入力し
て固定の長さの値を出力し、同じ値を出力する異なる入
力を見つけることが困難である。Zは整数の集合で、Zq
は0以上q未満の整数の集合である。In the Schnorr encryption, a key authentication center (KAC: Key
Authentication Center) initializes the system.
The signer performs key generation and signature generation, and the certifier receives and confirms the signature. One-way hash functions are used in the system. The one-way hash function is a compression function that does not easily cause a collision. That is, it is difficult to input a value of an arbitrary length, output a value of a fixed length, and find different inputs that output the same value. Z is a set of integers, Zq
Is a set of integers between 0 and less than q.
【0019】●システム初期化 (1)鍵認証センタ(KAC)は、大きな素数p(≧2^512)とq(≧
2^140)を選び公開する。ただし、q|p-1である。 (2)KACは、α∈Zpかつα^q = 1 (mod p)なるα(≠1)を
選び公開する。 (3)KACは、h: Zq×Z → {0, …, 2^t - 1}を選び公開す
る。ここで、tを「セキュリティパラメータ」と呼ぶ。 (4)KACは、自分の署名用の公開鍵と秘密鍵を選び、公開
鍵を公開する(例えば、Fiat-Shamir暗号など)。System initialization (1) The key authentication center (KAC) has a large prime number p (≧ 2 ^ 512) and q (≧ 2 ^ 512).
2 ^ 140) and publish. However, it is q | p-1. (2) KAC selects and publishes α (≠ 1) such that α ∈ Zp and α ^ q = 1 (mod p). (3) KAC selects h: Zq × Z → {0,…, 2 ^ t-1} and publishes it. Here, t is called a "security parameter". (4) KAC selects a public key and a private key for its own signature, and publishes the public key (for example, Fiat-Shamir encryption).
【0020】●鍵生成 システムに加入するユーザ(署名者)は、0 < s≦qなる
任意の整数sを選び、v= α^{-s} mod pを計算する。A user (signer) who joins the key generation system selects an arbitrary integer s such that 0 <s ≦ q and calculates v = α ^ {-s} mod p.
【0021】署名者の秘密鍵はsであり、公開鍵はvであ
る。認証者は、署名者の公開鍵の正当性を、例えば、署
名者の公開鍵に対してKACが(例えば、Fiat-Shamir暗号
で)署名を付ける、あるいは、署名者の公開鍵が公開デ
ータベースに登録される、などによって確認することが
できる。The signer's private key is s and the public key is v. The certifier can verify the legitimacy of the signer's public key, for example, by KAC signing the signer's public key (eg, with the Fiat-Shamir cipher), or by signing the signer's public key in a public database. It can be confirmed by being registered.
【0022】●署名生成(メッセージmに対する署名) (1)署名者は、乱数r∈{1, …, q}を選び、x = α^r (mo
d p)を計算する。 (2)署名者は、e = h(x, m)を求める。 (3)署名者は、y = r + s・e (mod q)を計算する。(e, y)
が、メッセージmに対する署名である。Signature Generation (Signature for Message m) (1) The signer selects a random number r ∈ {1, ..., q}, and x = α ^ r (mo
Calculate dp). (2) The signer requests e = h (x, m). (3) The signer calculates y = r + s · e (mod q). (e, y)
Is the signature for message m.
【0023】●署名検証 メッセージmと署名(e, y)を受取った認証者は、前述の
方法でvの正当性を確認し、次式を確認する。 x' = α^y・v^e (mod p) e = h(x', m)Signature Verification The authenticator who has received the message m and the signature (e, y) confirms the validity of v by the above-mentioned method, and confirms the following equation. x '= α ^ y ・ v ^ e (mod p) e = h (x', m)
【0024】[零知識証明]零知識証明とは、ある命題
を証明者が検証者に証明することであり、以下の三条件
を満たす。 (1)完全性: 証明が正しければ、検証者は1または1に限
りなく近い確率(圧倒的確率)で受理する。 (2)健全性: 証明が誤っていれば、検証者は1または1に
限りなく近い確率(圧倒的確率)で棄却する。 (3)零知識性: 証明が正しければ、検証者がどのように
振る舞っても、証明の正しさ以外の情報は一切洩れな
い。[Zero-knowledge proof] Zero-knowledge proof is that a prover proves a certain proposition to a verifier, and satisfies the following three conditions. (1) Completeness: If the proof is correct, the verifier accepts 1 or a probability close to 1 (overwhelming probability). (2) Soundness: If the proof is incorrect, the verifier rejects it with a probability of 1 or infinitely close to 1 (overwhelming probability). (3) Zero knowledge: If the proof is correct, no matter how the verifier behaves, no information other than the correctness of the proof can be leaked.
【0025】ある秘密(数値)を知っている証明者が、
その秘密に関する情報を一切漏らさずに、その秘密を知
っていることを検証者に証明する零知識証明の方法が幾
つか提案されていて、身元証明やディジタル署名などに
応用され、情報セキュリティの分野における重要な基盤
技術になっている。A certifier who knows a secret (numerical value)
Several zero-knowledge proof methods have been proposed to prove to a verifier that the secret is known without leaking any information regarding the secret, and it has been applied to identity certification and digital signatures, etc. Has become an important basic technology in.
【0026】具体的な一例として、J. Boyar, D. Chau
m, I. Damard, T. Pedersen, "Convertible undeniable
signatures", Proc. of CRYPTO'90において提案され
た、z =DL(u, α)を知っている証明者が、zを明らかに
することなくDL(v, w) = DL(u,α)を証明する零知識証
明プロトコルを説明する。ただし、DL(u, α)は適当な
群における離散対数を意味する(例えば、前述のGF(p)
の場合、α^{DL(u, α)} ≡(mod p))。As a concrete example, J. Boyar, D. Chau
m, I. Damard, T. Pedersen, "Convertible undeniable
signatures ", Proc. of CRYPTO'90, the certifier who knows z = DL (u, α) is DL (v, w) = DL (u, α) without revealing z We describe a zero-knowledge proof protocol that proves, where DL (u, α) means the discrete logarithm in the appropriate group (eg GF (p) above).
, Then α ^ {DL (u, α)} ≡ (mod p)).
【0027】●DL(v, w) = DL(u, α)を証明する零知識
証明プロトコル 以下では、証明者をP(Prover)、検証者をV(Verifier)と
記す。PもVもv, w, u,αを知っている。 (1)検証者Vは、乱数aとbを選び(a, b∈Zq)、ch = w^a・
α^bを求め、chを証明者Pに送る。 (2)証明者Pは、乱数tを選び(t∈Zq)、h1 = ch・α^tとh2
= h1^zを求め、(h1, h2)を検証者Vに送る。 (3)検証者Vは、(a, b)を証明者Pに送る。 (4)証明者Pは、ch = w^a・α^bを確認し、tを検証者Vに
送る。 (5)検証者Vは、h1 = w^a・α^{b+t}とh2 = v^a・u^{b+t}
を確認する。Zero-knowledge proof protocol for proving DL (v, w) = DL (u, α) In the following, the prover is described as P (Prover) and the verifier is as V (Verifier). Both P and V know v, w, u, α. (1) The verifier V selects random numbers a and b (a, b ∈ Zq), ch = w ^ a
Find α ^ b and send ch to prover P. (2) The prover P chooses a random number t (t ∈ Zq), h1 = ch ・ α ^ t and h2
= Calculate h1 ^ z and send (h1, h2) to the verifier V. (3) The verifier V sends (a, b) to the prover P. (4) The prover P confirms ch = w ^ a · α ^ b and sends t to the verifier V. (5) The verifier V is h1 = w ^ a ・ α ^ {b + t} and h2 = v ^ a ・ u ^ {b + t}
Check.
【0028】[MOシステム]図1は公開鍵暗号と零知識
証明を応用したMOシステムを説明するための図で、MOシ
ステムは、指定者と複数のユーザ、ユーザの中から選ば
れる署名者、署名者の作成する署名を確認する確認者か
らなる。なお、以下の説明において、a_bはaに下付き添
字bが付いた状態を表す。[MO System] FIG. 1 is a diagram for explaining an MO system to which public key cryptography and zero-knowledge proof are applied. The MO system is a designated person, a plurality of users, and a signer selected from the users. It consists of a verifier who verifies the signature created by the signer. In the following description, a_b represents a state in which a subscript b is added to a.
【0029】図1において、「公開値(Public Values)」
は後述するシステム共通のデータ、「公開データベース
(Public Database)」は公開されたデータベース、矢印
はデータの取得,送信,受信を示し、括弧で囲まれた番
号は処理の手順を示す。また、「署名者(Specified Sig
ner)」は、「指定者(Specifier)」によりユーザの中か
ら選ばれた署名者を表し、「確認者(Verifier)」は署名
を確認する者を表す。In FIG. 1, "Public Values"
Is the data common to all systems described below,
(Public Database) "is a public database, arrows indicate acquisition, transmission, and reception of data, and numbers in parentheses indicate processing procedures. In addition, `` Signator (Specified Sig
“Ner)” represents the signer selected from the users by the “Specifier”, and “Verifier” represents the person who verifies the signature.
【0030】Step 0(準備): システム共通のデータと
して、素数pとq(q|p-1)、Zp*の元であり位数qのα(α^
q≡1 (mod p)、Zp*はZqかつpと互いに素である整数の集
合)、一方向性ハッシュ関数h: Zq×Z → {0, …, 2^t
- 1}を用意する。これらは、システムに参加しているす
べてのユーザがアクセスでき、かつ不当な改竄などが起
こらないように適切に管理されている公開のデータベー
スに登録されているものとする。Step 0 (preparation): As data common to the system, the primes p and q (q | p-1), the element of Zp * and the order q α (α ^)
q ≡ 1 (mod p), Zp * is a set of integers that are relatively prime with Zq and p), one-way hash function h: Zq × Z → {0,…, 2 ^ t
-1} is prepared. It is assumed that these are registered in a public database that can be accessed by all users participating in the system and that is appropriately managed so that unwarranted tampering does not occur.
【0031】指定者iは公開鍵v_iと秘密鍵s_i(v_i = α
^{-s_i} mod p)を生成し、公開鍵を公開のデータベース
に登録する。署名者になり得るユーザjは、公開鍵v_jと
秘密鍵v_j(v_j = α^{-s_j} mod p)を生成し、公開鍵を
公開のデータベースに登録する。ユーザは複数存在し、
署名者も複数存在し得る。The designated person i has a public key v_i and a secret key s_i (v_i = α
^ {-s_i} mod p) is generated and the public key is registered in the public database. A user j who can be a signer generates a public key v_j and a private key v_j (v_j = α ^ {-s_j} mod p) and registers the public key in a public database. There are multiple users,
There can be multiple signers.
【0032】Step 1(ユーザ指定と公開): 指定者i
は、複数の中からあるユーザ、すなわち署名者jを選び
(図1に示す矢印101)、署名者jの公開鍵v_jを乱数rを
用いて変換したz_jを計算し、z_jに対する署名(Schnor
r暗号による署名)を求め(図1に示す手順(1))、公開
データベースに登録する(図1に示す矢印102)。Step 1 (User designation and disclosure): Designator i
Selects a user from a plurality of users, that is, signer j (arrow 101 in FIG. 1), calculates z_j obtained by converting public key v_j of signer j using random number r, and signs z_j (Schnor
(a signature by r encryption) (procedure (1) shown in FIG. 1) and registered in the public database (arrow 102 shown in FIG. 1).
【0033】具体的には、指定者iは(秘密の)乱数r(r
∈ Zq*)を選び、次式により各パラメータを求め、署
名((y_j, e_j, x),z_j)を公開データベースに登録す
る。なお、r ∈ Zq*は、Zq*からランダムにrを選ぶこと
を表している。 x = α^r mod p z_j = {v_j}^r mod p e_j = h(x, z_j) y_j = r + e_j・s_i mod qSpecifically, the designated person i is a (secret) random number r (r
∈ Zq *), each parameter is calculated by the following equation, and the signature ((y_j, e_j, x), z_j) is registered in the public database. Note that r ∈ Zq * means that r is randomly selected from Zq *. x = α ^ r mod p z_j = {v_j} ^ r mod p e_j = h (x, z_j) y_j = r + e_j ・ s_i mod q
【0034】Step 2(情報のピックアップ): ユーザ
は、公開データベースに登録された内容から、指定者i
が登録した署名((y_j, e_j, x),z_j)が、自分に対する
ものであるか否かを次のように確認する(図1に示す手
順(2)、矢印103)。つまり、各ユーザkは、次式を確認
する。 e_j = h(α^{y_j}・{v_i}^{e_j} mod p, zj) …(1) z_j = x^{-s_k} mod q …(2)Step 2 (pickup of information): The user selects the designated person i from the contents registered in the public database.
It is confirmed as follows whether the signature ((y_j, e_j, x), z_j) registered by the user is for himself (procedure (2) shown in FIG. 1, arrow 103). That is, each user k confirms the following equation. e_j = h (α ^ {y_j} ・ {v_i} ^ {e_j} mod p, zj)… (1) z_j = x ^ {-s_k} mod q… (2)
【0035】なお、式(2)の法の値qは誤りで、正しく
は、(3)式のようになると思われるが、敢えて、Masahir
o MAMBO, Eiji OKAMOTO, "A method to publicly speci
fy asigner with hiding identity", The 18th Symposi
um on Information Theory and Its Applications" (Oc
tober 1995)の原文のとおりに記載した。 z_j = x^{-s_k} mod p …(3)It should be noted that the modulo value q of the equation (2) is incorrect, and it seems that the equation (3) should be correct.
o MAMBO, Eiji OKAMOTO, "A method to publicly speci
fy asigner with hiding identity ", The 18th Symposi
um on Information Theory and Its Applications "(Oc
tober 1995). z_j = x ^ {-s_k} mod p… (3)
【0036】すべてのユーザは、式(1)が成り立つこと
を確認できる。それに加えて、署名者jは式(2)あるいは
(3)も成立することを確認でき、自分が指定者iに選ばれ
たことが分かる。All users can confirm that the equation (1) holds. In addition to that, signer j uses equation (2) or
It can be confirmed that (3) is also established, and it is understood that oneself has been selected as the designated person i.
【0037】一方、他の署名者λ(s_λ≠s_jとする)
は、式(2)あるいは(3)が自分の秘密鍵s_λでは成り立た
ないことがわかるが、式(2)あるいは(3)が、ほかのどの
署名者に対して成立するものかは分からない(ほかの署
名者の秘密鍵、例えばs_jを知らない)ので、ほかの誰
が選ばれたのかは分からない。On the other hand, another signer λ (s_λ ≠ s_j)
Reveals that Equation (2) or (3) does not hold with its own secret key s_λ, but it is unknown to which other signers Equation (2) or (3) holds. I don't know who else was chosen, because I don't know the private keys of other signers, eg s_j.
【0038】Step 3(署名生成): 署名者jは署名した
いメッセージmに対し、次の署名方式で署名を生成す
る。署名者jは、乱数r_jを選び(r_j ∈ Zq*)、次式を計
算する。 x1 = α^{r_j} mod p x2 = {v_j}^{r_j} mod pStep 3 (Signature Generation): The signer j generates a signature for the message m to be signed by the following signature method. The signer j selects a random number r_j (r_j ∈ Zq *) and calculates the following equation. x1 = α ^ {r_j} mod p x2 = {v_j} ^ {r_j} mod p
【0039】そして、次式を求める。 e' = h(x2, m) y = -(r_j - e')s_j mod qThen, the following equation is obtained. e '= h (x2, m) y =-(r_j-e') s_j mod q
【0040】そして、((y_j, e_j, x), z_j, (y, e',x
1), m)を署名として、必要な相手に送る(図1に示す手
順(3)、矢印104)。Then, ((y_j, e_j, x), z_j, (y, e ', x
1), m) is sent as a signature to the necessary party (procedure (3) shown in FIG. 1, arrow 104).
【0041】Step 4(署名確認): 上記の署名を受信し
た確認者は最初に、上記の式(1)および次式を確認す
る。 e_j = h(z_j, α^{y_j}・{v_i}^{e_j} mod p)Step 4 (Signature Confirmation): The confirmer receiving the above signature first confirms the above equation (1) and the following equation. e_j = h (z_j, α ^ {y_j} ・ {v_i} ^ {e_j} mod p)
【0042】次に、次式を確認する(図1に示す手順
(4))。 e' = h(m, x2) x2 = α^y・{v_j}^{e'} mod p …(4)Next, the following equation is confirmed (procedure shown in FIG. 1
(Four)). e '= h (m, x2) x2 = α ^ y ・ {v_j} ^ {e'} mod p… (4)
【0043】上記が確認できたならば、署名者jは受信
者(確認者)との間で、DL(z_j, x)= DL(x2, x1)(=-s_
j)を証明する零知識証明を実行する(図1に示す手順
(5)、矢印105)。零知識証明が受理できるならば、受信
者はmに対する署名は指定者iに選ばれた署名者jによっ
て生成された署名であると納得する。If the above can be confirmed, the signer j and the receiver (confirmer) DL (z_j, x) = DL (x2, x1) (=-s_
Perform zero-knowledge proof to prove j) (procedure shown in Fig. 1
(5), arrow 105). If the zero-knowledge proof is acceptable, the recipient convinces that the signature on m is the signature generated by the signer j selected by the designator i.
【0044】上記MOシステムでは、ある指定者iがある
署名者jを選び、選ばれた署名者jは匿名で署名を生成で
き、その署名を受取った者は、指定者iによって選ばれ
た署名者jがその署名を生成したことは確認できるが、
その署名者jが誰であるかを特定することはできない、
と主張されている。また、以上の性質から、MOシステム
は福祉サービスやペイTVの視聴率調査に応用できると言
われている。In the above MO system, a designated person i selects a certain signer j, the selected signer j can generate a signature anonymously, and the person who receives the signature can select the signature i selected by the designated person i. It can be confirmed that person j generated the signature, but
It is not possible to identify who the signer j is,
Is claimed. Due to the above properties, it is said that the MO system can be applied to welfare services and pay TV rating surveys.
【0045】つまり、福祉サービスや視聴率調査が確か
に行われていることを誰でも確認でき、かつ、受益者や
調査対象者は、そのサービスを受けるために必要な文書
(生活状態の報告)や調査の回答に対して、匿名のまま
で署名を付けて提出することができる。That is, anyone can confirm that the welfare service and the audience rating survey are surely conducted, and the beneficiaries and the surveyees need the documents necessary for receiving the service (report of living condition). It is possible to submit a response to a survey or survey with an anonymous signature.
【0046】[0046]
【発明が解決しようとする課題】しかし、上述した技術
においては、次のような問題点がある。つまり、MOシス
テムにおいては、指定された署名者jが匿名で生成する
署名が正当であることを確認するにもかかわらず、その
際、署名者jの公開鍵を必要とする(式(4)においてv_j
が使われる)という性質がある。However, the above-mentioned technique has the following problems. In other words, in the MO system, although the specified signer j confirms that the anonymously generated signature is valid, at that time, the public key of the signer j is required (equation (4) At v_j
Is used).
【0047】さらに、確認の際は、前述した零知識証明
を用いるため、署名者jと確認者との間で複数回の送受
信を行わなければならず、そのための計算も行う必要が
ある。Further, since the above-mentioned zero-knowledge proof is used for confirmation, it is necessary to perform transmission and reception a plurality of times between the signer j and the confirmer, and it is also necessary to perform calculation for that purpose.
【0048】また、同一相手と何度通信を行っても、匿
名性が保たれる通信ネットワークを前提としているの
で、一度だけの通信において匿名性を保つことができる
通信ネットワークと比較して、実用化するためのコスト
が高くなる。Further, since it is assumed that the communication network maintains anonymity no matter how many times it communicates with the same party, it is practical compared to a communication network which can maintain anonymity only once. The cost for converting to higher cost increases.
【0049】本発明は、上述の問題を解決するためのも
のであり、署名者の匿名性を保つことができるディジタ
ル署名方式を提供することを目的とする。The present invention is intended to solve the above problems, and an object of the present invention is to provide a digital signature system capable of maintaining the anonymity of a signer.
【0050】また、通信回数を減らし、複数回の通信に
伴う計算も行わずに済ませることができるディジタル署
名方式を用いた情報通信システムを提供することを他の
目的とする。Another object of the present invention is to provide an information communication system using a digital signature method, which can reduce the number of times of communication and do not have to perform calculations associated with a plurality of times of communication.
【0051】また、少なくとも一回の通信を行ったとき
に匿名性を保つことができる通信ネットワークを用いる
ことができるディジタル署名方式を用いた情報通信シス
テムを提供することを他の目的とする。Another object of the present invention is to provide an information communication system using a digital signature system which can use a communication network capable of maintaining anonymity when performing communication at least once.
【0052】[0052]
【課題を解決するための手段】本発明は、前記の目的を
達成する一手段として、以下の構成を備える。The present invention has the following configuration as one means for achieving the above object.
【0053】本発明にかかるディジタル署名方式は、各
ユーザが共通に使用する公開パラメータと、各ユーザに
固有の秘密情報とから、各ユーザに固有の公開情報を生
成する公開情報生成ステップと、所定のディジタル情報
に、前記秘密情報および前記公開パラメータを用いた変
換を施すことにより、前記ディジタル情報に対応する署
名情報を生成する署名生成ステップと、前記ディジタル
情報と前記署名情報との対応関係を、前記公開パラメー
タおよび前記公開情報を用いて判別する判別ステップ
と、前記秘密情報を変換せずに前記公開パラメータおよ
び前記公開情報を変換して、前記署名情報を生成するこ
とができる新たな公開パラメータおよび公開情報にする
変換ステップとを有することを特徴とする。In the digital signature system according to the present invention, a public information generating step of generating public information unique to each user from public parameters commonly used by each user and secret information unique to each user, and a predetermined information generating step. A signature generation step of generating signature information corresponding to the digital information by performing conversion using the secret information and the public parameter on the digital information, and a correspondence relationship between the digital information and the signature information, A determination step of determining using the public parameter and the public information; a new public parameter that can generate the signature information by converting the public parameter and the public information without converting the secret information; A public information conversion step.
【0054】また、複数ユーザ間で共通に使われる底の
値に対して各ユーザの秘密鍵を指数値として指数計算を
行った結果を各ユーザの公開鍵とするディジタル署名方
式であって、前記底に対して乱数を指数値として指数計
算を行った結果を新しい底とする底生成ステップと、所
定のユーザの公開鍵に対して前記乱数を指数値として指
数計算を行った結果を新しい公開鍵とする公開鍵生成ス
テップと、前記所定のユーザが、自身の秘密鍵を用い
て、任意の平文に対してディジタル署名を生成する署名
生成ステップと、前記底生成ステップおよび前記公開鍵
生成ステップにより生成された底と公開鍵とを用いて、
前記署名生成ステップで生成されたディジタル署名の正
当性を確認する確認ステップとを有することを特徴とす
る。A digital signature method in which the public key of each user is the result of index calculation using the secret key of each user as the exponent value for the bottom value commonly used by a plurality of users. A base generation step in which the result of performing exponential calculation with a random number as the exponent value for the base is used as a new base, and the result of performing exponential calculation with the random number as the exponent value for the public key of a predetermined user is the new public key. And a public key generation step in which the predetermined user generates a digital signature for arbitrary plaintext by using the private key of the predetermined user, and the base generation step and the public key generation step. Using the bottom and the public key,
And a confirmation step for confirming the validity of the digital signature generated in the signature generation step.
【0055】本発明にかかる情報通信システムは、ディ
ジタル署名を生成する生成手段を指定する指定手段と、
少なくとも一つのディジタル署名方式を用いて、対象の
ディジタル署名が前記指定手段により指定された生成手
段により生成されたものか否かを確認する確認手段とを
備えた情報通信システムであって、前記ディジタル署名
方式の一つは、複数ユーザ間で共通に使われる底の値に
対して各ユーザの秘密鍵を指数値として指数計算を行っ
た結果を各ユーザの公開鍵とするディジタル署名方式で
あって、前記底に対して乱数を指数値として指数計算を
行った結果を新しい底とする底生成ステップと、所定の
ユーザの公開鍵に対して前記乱数を指数値として指数計
算を行った結果を新しい公開鍵とする公開鍵生成ステッ
プと、前記所定のユーザが、自身の秘密鍵を用いて、任
意の平文に対してディジタル署名を生成する署名生成ス
テップと、前記底生成ステップおよび前記公開鍵生成ス
テップにより生成された底と公開鍵とを用いて、前記署
名生成ステップで生成されたディジタル署名の正当性を
確認する確認ステップとを有するディジタル署名方式で
あることを特徴とする。The information communication system according to the present invention includes a designating unit designating a generating unit for generating a digital signature,
An information communication system comprising a confirmation means for confirming whether or not a target digital signature is generated by the generation means designated by the designation means by using at least one digital signature system, One of the signature schemes is a digital signature scheme in which the public key of each user is the result of exponentiation with the secret key of each user as the exponent value for the base value commonly used by multiple users. , A base generation step in which the result of performing exponential calculation with the random number as the exponent value is used as a new base, and a result of performing exponential calculation with the random number as the exponential value in the public key of a predetermined user is updated. A public key generating step for making a public key; a signature generating step for the predetermined user to generate a digital signature for arbitrary plaintext using his / her private key; The digital signature method has a forming step and a confirmation step of confirming the validity of the digital signature generated in the signature generating step by using the base and the public key generated in the public key generating step. And
【0056】また、離散対数を求めることの困難性に安
全性の根拠をおく第一のディジタル署名方式を用いて、
ディジタル署名を生成する署名生成手段を指定する指定
手段と、請求項5から請求項7の何れかに記載された第二
のディジタル署名方式により新しい底および新しい公開
鍵を得る取得手段と、前記取得手段により得られた新し
い底の値を用いて、前記取得手段により得られた新しい
公開鍵に対する第一のディジタル署名を、前記第一のデ
ィジタル署名方式により生成する第一の生成手段とを備
え、前記第一の生成手段により得られたディジタル署名
は、前記取得手段により得られた新しい公開鍵に対応す
る秘密鍵をもつ署名生成手段が指定されたことを示す証
拠であることを特徴とする。Further, by using the first digital signature method in which the security is based on the difficulty of obtaining the discrete logarithm,
Designating means for designating a signature generating means for generating a digital signature, obtaining means for obtaining a new bottom and a new public key by the second digital signature method according to any one of claims 5 to 7, and the obtaining. A first generation means for generating a first digital signature for the new public key obtained by the obtaining means by using the new base value obtained by the means, by the first digital signature scheme, The digital signature obtained by the first generation means is proof that the signature generation means having the private key corresponding to the new public key obtained by the acquisition means is designated.
【0057】また、署名を生成する手段を指定するため
に、第一のディジタル署名方式により第一のディジタル
署名を生成する指定手段と、前記指定手段により生成さ
れた前記第一のディジタル署名に基づき、第二のディジ
タル署名方式により第二のディジタル署名を生成する署
名生成手段と、前記第一および第二のディジタル署名に
基づき、前記第二のディジタル署名が前記指定手段によ
り指定された署名生成手段により生成されたものか否か
を確認する確認手段とを有することを特徴とする。Further, in order to specify the means for generating the signature, based on the specifying means for generating the first digital signature by the first digital signature method and the first digital signature generated by the specifying means. A signature generating means for generating a second digital signature by a second digital signature method, and a signature generating means for designating the second digital signature by the designating means based on the first and second digital signatures. And a confirmation unit that confirms whether or not the image is generated by.
【0058】[0058]
【発明の実施の形態】以下、本発明にかかる一実施形態
の情報通信システムを図面を参照して詳細に説明する。BEST MODE FOR CARRYING OUT THE INVENTION An information communication system according to an embodiment of the present invention will be described in detail below with reference to the drawings.
【0059】本発明にかかるディジタル署名方式は、乱
数を指数とする計算により公開鍵と底を変換するが、秘
密鍵の値は変わらないという性質を利用して、離散対数
に基づくディジタル署名方式を構成し、MOシステムにお
ける零知識証明を用いるディジタル署名方式に代わっ
て、通常のディジタル署名方式を用いるものである。In the digital signature system according to the present invention, the public key and the base are converted by calculation using a random number as an exponent, but the digital signature system based on discrete logarithm is used by utilizing the property that the value of the secret key does not change. It is constructed and uses a normal digital signature scheme instead of the digital signature scheme using zero knowledge proof in MO system.
【0060】このような構成を備える本発明のディジタ
ル署名方式を用いた情報通信システムによれば、署名者
の公開鍵を必要とせずに署名を確認することができるの
で、署名者の匿名性を保つことができるとともに、零知
識証明により署名者と確認者との間で複数回の送受信を
行わずに、署名者から確認者へディジタル署名を送るだ
けで署名を確認することができ、通信回数を減らし、複
数回の通信に伴う計算も行わずに済ませることができ
る。さらに、同一の相手と何度も通信を行っても匿名性
が保たれる通信ネットワークを用いなくとも、少なくと
も一回の通信を行ったときに匿名性を保つことができる
通信ネットワークを用いることができる。According to the information communication system using the digital signature system of the present invention having such a configuration, the signature can be confirmed without the need of the public key of the signer. In addition to being able to maintain it, the zero-knowledge proof allows the signature to be verified by simply sending a digital signature from the signer to the confirmer without sending and receiving multiple times between the signer and the confirmer. It is possible to reduce the number of times and eliminate the calculation required for multiple communication. Furthermore, it is possible to use a communication network that can maintain anonymity when performing at least one communication without using a communication network that maintains anonymity even when communicating with the same party many times. it can.
【0061】[0061]
【第1実施形態】図2は本発明にかかるディジタル署名方
式およびそれを用いた情報通信システムを説明するため
の図、図3はディジタル署名に関する処理の流れの概要
を示すフローチャートである。First Embodiment FIG. 2 is a diagram for explaining a digital signature system according to the present invention and an information communication system using the digital signature system, and FIG. 3 is a flowchart showing an outline of a processing flow relating to a digital signature.
【0062】Step 0(準備): MOシステムと同じ。Step 0 (Preparation): Same as MO system.
【0063】Step 1(ユーザ指定と公開): 指定者i
は、複数の中からあるユーザ、すなわち署名者jを選び
(図2に示す矢印201)、署名者jの公開鍵v_jを乱数r_j
を用いて変換したz_jを計算し、z_jに対する署名(Schn
orr暗号による署名)を求め(図2に示す手順(1))、公
開データベースに登録する(図2に示す矢印202)。Step 1 (User designation and disclosure): Designator i
Selects a user from a plurality of users, that is, the signer j (arrow 201 shown in FIG. 2), and uses the public key v_j of the signer j as a random number r_j.
Z_j which is converted by using
(orr encryption signature) (procedure (1) shown in FIG. 2) and registered in the public database (arrow 202 shown in FIG. 2).
【0064】具体的には、指定者iは(秘密の)乱数r_j
(r_j ∈ Zq*)を選び、次式により各パラメータを求め、
署名((y_j, e_j),z_j)を公開データベースに登録す
る。 x_j = α^{r_j} mod p z_j = {v_j}^{r_j} mod p e_j = h(x_j, z_j) y_j = r_j + e_j・s_i mod qSpecifically, the designated person i is a (secret) random number r_j.
Select (r_j ∈ Zq *), find each parameter by the following equation,
Register the signature ((y_j, e_j), z_j) in the public database. x_j = α ^ {r_j} mod p z_j = {v_j} ^ {r_j} mod p e_j = h (x_j, z_j) y_j = r_j + e_j ・ s_i mod q
【0065】Step 2(情報のピックアップ): 署名者j
は、公開データベースに登録された内容から、指定者i
が登録した署名((y_j, e_j), z_j)が、自分に対するも
のであるか否かを次のように確認する(図2に示す手順
(2)、矢印203)。つまり、各ユーザは、次式を確認す
る。 e_j = h(α^{y_j}・{v_i}^{e_j} mod p, z_j) …(5) z_j =(α^{y_i}・{v_i}^{e_j} mod p)^{-s_k} mod p …(6)Step 2 (information pickup): Signer j
From the contents registered in the public database,
Check whether or not the signature ((y_j, e_j), z_j) registered by you is for yourself (procedure shown in Fig. 2
(2), arrow 203). That is, each user confirms the following equation. e_j = h (α ^ {y_j} ・ {v_i} ^ {e_j} mod p, z_j)… (5) z_j = (α ^ {y_i} ・ {v_i} ^ {e_j} mod p) ^ {-s_k} mod p… (6)
【0066】ここで、x_j = α^{y_j}・{v_i}^{e_j} mod
pが成り立っているので、以降は、表記を簡略化するた
めにx_jを用いる。Here, x_j = α ^ {y_j} · {v_i} ^ {e_j} mod
Since p holds, x_j will be used hereafter to simplify the notation.
【0067】すべてのユーザは、式(5)が成り立つこと
を確認できる。それに加えて、署名者jは式(6)も成立す
ることを確認でき、自分が指定者iに選ばれたことがわ
かる。All users can confirm that the equation (5) holds. In addition to that, the signer j can confirm that the expression (6) is also established, and it can be seen that the signer j is selected as the designated person i.
【0068】一方、ほかの署名者λ(s_λ≠s_jとす
る)は、式(6)が自分の秘密鍵s_λでは成り立たないこ
とがわかるが、式(6)が、ほかのどの署名者に対して成
立するものかは分からない(ほかの署名者の秘密鍵、例
えばs_jを知らない)ので、ほかの誰が選ばれたのかは
分からない。On the other hand, for other signers λ (assuming s_λ ≠ s_j), it is understood that the formula (6) does not hold with its own secret key s_λ, but the formula (6) does not correspond to any other signer. I don't know who else was chosen, because I don't know (if I don't know the private key of another signer, eg s_j).
【0069】Step 3(署名生成): 署名者jは、署名し
たいメッセージm(j)に対し、次の署名方式で署名を生成
する。署名者jは、秘密の乱数r(j)を選び(r(j) ∈ Zq
*)、次式を計算する。 x(j) = {x_j}^{r(j)} mod p e(j) = h(x(j), m(j)) y(j) = r(j) + e(j)・s_j mod qStep 3 (Signature Generation): The signer j generates a signature for the message m (j) to be signed by the following signature method. Signer j chooses a secret random number r (j) (r (j) ∈ Zq
*), Calculate the following formula. x (j) = {x_j} ^ {r (j)} mod pe (j) = h (x (j), m (j)) y (j) = r (j) + e (j) ・ s_j mod q
【0070】そして、(((y_j, e_j), z_j), ((y(j), e
(j)), m(j)))を署名として、必要な相手に送る(図2に
示す手順(3)、矢印204)。Then, (((y_j, e_j), z_j), ((y (j), e
(j)), m (j))) is sent as a signature to the necessary party (procedure (3) shown in FIG. 2, arrow 204).
【0071】Step 4(署名確認): 上記署名を受信した
確認者は最初に、式(5)を確認し、次に次式を確認する
(図2に示す手順(4))。 e(j) = h({x_j}^{y(j)}・{z_j}^{e(j)} mod p, m(j))Step 4 (Signature Confirmation): The confirmer receiving the signature first confirms the equation (5) and then the following equation (procedure (4) shown in FIG. 2). e (j) = h ({x_j} ^ {y (j)} ・ {z_j} ^ {e (j)} mod p, m (j))
【0072】上記が確認できたならば、受信者(確認
者)は、メッセージm(j)に対する署名は指定者iに選ば
れた署名者jによって生成された署名であると納得す
る。If the above can be confirmed, the receiver (confirmer) is convinced that the signature for the message m (j) is the signature generated by the signer j selected by the designator i.
【0073】なお、署名者jの公開鍵を変換したz_jに対
する指定者iの署名((y_j, e_j),z_j)は、匿名の公開鍵
証明書とみなせる。The signature ((y_j, e_j), z_j) of the designator i for z_j obtained by converting the public key of the signer j can be regarded as an anonymous public key certificate.
【0074】以上の実施形態において、指定者、署名
者、確認者はそれぞれ、情報処理および通信に関する能
力をもつ情報処理装置、例えばパーソナルコンピュータ
上において実現可能である。指定者、署名者、確認者の
間における通信は、例えばインターネットのようなネッ
トワーク上で公開データベースや匿名通信を可能にする
サービスを運用することによって実現できる。In the above embodiment, the designator, the signer, and the confirmer can be realized on an information processing device having the capability of information processing and communication, for example, a personal computer. Communication among the designated person, the signer, and the confirmer can be realized by operating a public database or a service that enables anonymous communication on a network such as the Internet.
【0075】そして、パーソナルコンピュータのような
装置により、上記の計算を行い、上記のサービスが利用
できる通信ネットワーク上で通信を行うことにより、上
記の各ステップを実行して、ディジタル署名を用いた情
報通信システムを構築することができる。勿論、インタ
ーネットに限らず外部と分離された環境、例えば企業内
においても、情報処理装置を用いて通信ネットワークお
よびサービスを構築することにより、ディジタル署名を
用いた情報通信システムを構築することができる。Then, the above calculation is performed by a device such as a personal computer, and communication is performed on a communication network in which the above service can be used to execute each of the above steps to obtain information using a digital signature. A communication system can be constructed. Of course, not only in the Internet but also in an environment separated from the outside, for example, in a company, it is possible to construct the information communication system using the digital signature by constructing the communication network and the service using the information processing device.
【0076】また、上記では、匿名の公開鍵証明書を、
公開データベースに登録することにより署名者に渡す例
を説明したが、指定者が本当に署名者の指定を行ってい
るか否かを他の多数のユーザが直接確認する必要がない
場合、指定者は、匿名の公開鍵証明書を指定した署名者
に直接渡してもよい。In the above, the anonymous public key certificate is
Although the example of handing over to the signer by registering in the public database has been explained, if many other users do not need to directly confirm whether or not the specified person is actually specifying the signer, the specified person The anonymous public key certificate may be passed directly to the designated signer.
【0077】以上説明したように、本実施形態のディジ
タル署名を用いた情報通信システムは、MOシステムと異
なり、署名者の公開鍵を必用としないので、匿名性が保
つことができる。また、確認者との間で複数回の送受信
を行わなくてもよいので、前提とする匿名通信ネットワ
ークに対する要求条件を緩めることができ、実用化コス
トを下げることができる。さらに、通信回数、計算量に
関して、その効率を向上することができるので、ユーザ
に対して使い易く、かつユーザの負担を少なくすること
ができる。As described above, the information communication system using the digital signature of the present embodiment does not require the public key of the signer unlike the MO system, so that the anonymity can be maintained. Further, since it is not necessary to perform the transmission and reception with the confirmer a plurality of times, it is possible to loosen the requirements for the prerequisite anonymous communication network and reduce the practical cost. Further, since the efficiency of the number of times of communication and the amount of calculation can be improved, it is easy for the user to use and the burden on the user can be reduced.
【0078】[0078]
【第2実施形態】以下、本発明にかかる第2実施形態の情
報通信システムを説明する。なお、第2実施形態におい
て、第1実施形態と略同様の構成については、同一符号
を付して、その詳細説明を省略する。[Second Embodiment] An information communication system according to a second embodiment of the present invention will be described below. In the second embodiment, the same components as those in the first embodiment are denoted by the same reference numerals, and detailed description thereof will be omitted.
【0079】前述した実施形態においては、z_jに対す
る公開鍵証明書をSchnorr暗号の署名を用いて生成し、
p, q, x_j, z_jを公開鍵、s_jを秘密鍵として、メッセ
ージm_jに対してSchnorr暗号の署名を適用した。これに
対し、第2実施形態においては、メッセージm_jに対し
て、Schnorr暗号の署名ではなくE暗号(T. E. ElGamal:
"Apublic key cryptosystem and a signature scheme
based on discretre logarithms, IEEE Transaction on
Information Theory, Vol. IT-31, No. 4, pp.469-47
2, 1985)を適用する。In the above-described embodiment, the public key certificate for z_j is generated by using the signature of Schnorr encryption,
The signature of the Schnorr cipher was applied to the message m_j with p, q, x_j, z_j as the public key and s_j as the private key. On the other hand, in the second embodiment, instead of the signature of the Schnorr cipher, the E cipher (TE ElGamal:
"A public key cryptosystem and a signature scheme
based on discretre logarithms, IEEE Transaction on
Information Theory, Vol. IT-31, No. 4, pp.469-47
2, 1985) is applied.
【0080】以下では、第1実施形態と異なる点だけを
説明する。Only the points different from the first embodiment will be described below.
【0081】Step 3(署名生成): 署名者jは、署名を
したいメッセージm(j)に対し、次の方式で署名を生成す
る。署名者jは、秘密の乱数k(j)を選び(k(j) ∈ Zq*)、
次式を計算する。 r(j) = {x_j}^{k(j)} mod p s(j) = (m(j) + s_j・r(j))・k(j)^{-1} mod (p - 1)Step 3 (Signature Generation): Signer j generates a signature for message m (j) to be signed by the following method. Signer j chooses a secret random number k (j) (k (j) ∈ Zq *),
Calculate the following formula. r (j) = {x_j} ^ {k (j)} mod ps (j) = (m (j) + s_j ・ r (j)) ・ k (j) ^ {-1} mod (p-1)
【0082】そして、(((y_j, e_j), z_j), ((r(j), s
(j)), m(j)))を署名として、必要な相手に送る。Then, (((y_j, e_j), z_j), ((r (j), s
(j)), m (j))) is sent as a signature to the required party.
【0083】Step 4(署名確認): 上記署名を受信した
確認者は最初に、式(5)を確認し、次に次式を確認す
る。 {x_j}^{m(j)} ≡ {z_j}^{r(j)}・r(j)^{s(j)} (mod p)Step 4 (Signature Confirmation): The confirmer receiving the above signature first confirms the equation (5), and then the following equation. {x_j} ^ {m (j)} ≡ {z_j} ^ {r (j)} ・ r (j) ^ {s (j)} (mod p)
【0084】上記が確認できたならば、受信者(確認
者)は、メッセージm(j)に対する署名は指定者iに選ば
れた署名者jによって生成された署名であると納得す
る。If the above can be confirmed, the receiver (confirmer) is convinced that the signature for the message m (j) is the signature generated by the signer j selected by the designator i.
【0085】[0085]
【第3実施形態】以下、本発明にかかる第3実施形態の情
報通信システムを説明する。なお、第3実施形態におい
て、第1実施形態と略同様の構成については、同一符号
を付して、その詳細説明を省略する。[Third Embodiment] Hereinafter, an information communication system according to a third embodiment of the present invention will be described. In the third embodiment, the same components as those in the first embodiment are denoted by the same reference numerals, and detailed description thereof will be omitted.
【0086】前述した第1および第2実施形態において
は、z_jに対する公開鍵証明書をSchnorr暗号の署名を用
いて生成し、メッセージm_jに対してSchnorr暗号または
E暗号を適用する例を説明した。同様に、ディジタル署
名標準案としてNIST(NationalInstitute of Standard a
nd Technology)に提案されたDSA(Digital SignatureAl
gorthm: 岡本栄司著、暗号理論入門、共立出版、pp.136
-138参照)をメッセージm_jに対して用いることも可能
である。In the above-described first and second embodiments, the public key certificate for z_j is generated using the signature of the Schnorr cipher and the message m_j is generated by the Schnorr cipher or
The example of applying the E-cipher has been described. Similarly, NIST (National Institute of Standard a
DSA (Digital Signature Al
gorthm: Eiji Okamoto, Introduction to Cryptography, Kyoritsu Shuppan, pp.136
-138) can be used for the message m_j.
【0087】p, q, x_j, z_jを公開鍵、s_jを秘密鍵と
して用いる。P, q, x_j, and z_j are used as public keys, and s_j is used as a secret key.
【0088】Step 3(署名生成): 署名者jは、署名を
したいメッセージm(j)に対し、次の方式で署名を生成す
る。署名者jは、秘密の乱数k(j)を選び(k(j) ∈ Zq*)、
次式を計算する。 r(j) = ({x_j}^{k(j)} mod p) mod q s(j) = k(j)^{-1}・(H(m(j)) - s_j・r(j)) mod qStep 3 (Signature Generation): Signer j generates a signature for message m (j) to be signed by the following method. Signer j chooses a secret random number k (j) (k (j) ∈ Zq *),
Calculate the following formula. r (j) = ({x_j} ^ {k (j)} mod p) mod qs (j) = k (j) ^ {-1} ・ (H (m (j))-s_j ・ r (j) ) mod q
【0089】そして、(((y_j, e_j), z_j), ((r(j), s
(j)), m(j)))を署名として、必要な相手に送る。Then, (((y_j, e_j), z_j), ((r (j), s
(j)), m (j))) is sent as a signature to the required party.
【0090】Step 4(署名確認): 上記署名を受信した
確認者は最初に、式(5)を確認し、0< r(j) < q, 0 < s
(j) < q を確認した後、次の処理を行う。 w = (s(j)) - 1 mod q u1 = H(m(j))・w mod q u2 = r(j)・w mod q v = ({x_j}^{u1}・{z_j}^{u2} mod p) mod qStep 4 (Signature Confirmation): The confirmer who receives the above signature first confirms the equation (5), and 0 <r (j) <q, 0 <s
(j) After confirming <q, perform the following processing. w = (s (j))-1 mod q u1 = H (m (j)) ・ w mod q u2 = r (j) ・ w mod qv = ({x_j} ^ {u1} ・ {z_j} ^ { u2} mod p) mod q
【0091】そして、以上の計算結果からv = r(j)を確
認し、確認できたならば受信者はm(j)に対する署名は指
定者iに選ばれた署名者jによって生成された署名である
と納得する。Then, from the above calculation results, v = r (j) is confirmed, and if confirmed, the receiver can make a signature for m (j) by the signature generated by the signer j selected by the designated person i. Convinced that
【0092】[0092]
【第4実施形態】以下、本発明にかかる第4実施形態の情
報通信システムを説明する。なお、第4実施形態におい
て、第1実施形態と略同様の構成については、同一符号
を付して、その詳細説明を省略する。[Fourth Embodiment] An information communication system according to a fourth embodiment of the present invention will be described below. In the fourth embodiment, the same components as those in the first embodiment are denoted by the same reference numerals, and detailed description thereof will be omitted.
【0093】前述した第1から第3実施形態においては、
z_jに対する公開鍵証明書をSchnorr暗号の署名を用いて
生成し、メッセージm_jに対してSchnorr暗号、E暗号ま
たはDSAを適用する例を説明した。これに対して、z_jに
対する公開鍵証明書の生成にSchnorr暗号の署名の代わ
って、E暗号を適用することも可能である。ただし、x_j
とz_jが次式の関係を満たすことが保証できるように、
署名を適用することに注意する。 x_j = α^{r_j} mod p z_j = {v_j}^{r_j} mod pIn the above-mentioned first to third embodiments,
The example has been described in which the public key certificate for z_j is generated using the signature of the Schnorr cipher and the Schnorr cipher, the E cipher, or the DSA is applied to the message m_j. On the other hand, instead of the signature of the Schnorr cipher, it is also possible to apply the E cipher to the generation of the public key certificate for z_j. However, x_j
And z_j can be guaranteed to satisfy the relation of
Note that the signature applies. x_j = α ^ {r_j} mod p z_j = {v_j} ^ {r_j} mod p
【0094】具体的には、以下のとおりである。指定者
iは、署名者jに対して、秘密の乱数r_jを選び(r_j ∈ Z
q*)、次式を計算する。 x_j = α^{r_j} mod p z_j = {v_j}^{r_j} mod p S_j = (z_j + s_i・x_j)・{r_j}^{-1} mod (p - 1)Specifically, it is as follows. Designated person
i chooses a secret random number r_j for the signer j (r_j ∈ Z
q *), calculate the following formula. x_j = α ^ {r_j} mod p z_j = {v_j} ^ {r_j} mod p S_j = (z_j + s_i ・ x_j) ・ {r_j} ^ {-1} mod (p-1)
【0095】そして、((x_j, S_j),z_j)を公開鍵証明
書とする。公開鍵証明書の正当性は、次式が成り立つこ
とで確認できる。 α^{z_j} ≡ {v_i}^{x_j}・{x_j}^{S_j} (mod p) z_j = {x_j}^{-S_j} mod pThen, ((x_j, S_j), z_j) is the public key certificate. The validity of the public key certificate can be confirmed by the following equation. α ^ {z_j} ≡ {v_i} ^ {x_j} ・ {x_j} ^ {S_j} (mod p) z_j = {x_j} ^ {-S_j} mod p
【0096】[0096]
【第5実施形態】以下、本発明にかかる第5実施形態の情
報通信システムを説明する。なお、第5実施形態におい
て、第1実施形態と略同様の構成については、同一符号
を付して、その詳細説明を省略する。[Fifth Embodiment] An information communication system according to a fifth embodiment of the present invention will be described below. Note that, in the fifth embodiment, configurations that are substantially the same as in the first embodiment are assigned the same reference numerals, and detailed description thereof is omitted.
【0097】前述した第4実施形態においては、z_jに対
する公開鍵証明書の生成にSchnorr暗号の署名の代わり
にE暗号を適用する例を説明した。これに対して、Schno
rr暗号やE暗号の代わりに、DSAを適用することも可能で
ある。ただし、x_jとz_jが次式の関係を満たすことが保
証できるように、署名を適用することに注意する。 x_j = α^{r_j} mod p z_j = {v_j}^{r_j} mod pIn the above-described fourth embodiment, the example in which the E-cipher is applied instead of the signature of the Schnorr cipher to the generation of the public key certificate for z_j has been described. On the other hand, Schno
It is also possible to apply DSA instead of rr cipher or E cipher. However, note that the signature is applied so that it can be guaranteed that x_j and z_j satisfy the relation of the following equation. x_j = α ^ {r_j} mod p z_j = {v_j} ^ {r_j} mod p
【0098】具体的には、以下のとおりである。指定者
iは、署名者jに対して、秘密の乱数r_jを選び(r_j ∈ Z
q*)、次式を計算する。 x_j = α^{r_j} mod p z_j = {v_j}^{r_j} mod p S_j = {r_j}^{-1}・(H(z_j) - s_i・x_j) mod qSpecifically, it is as follows. Designated person
i chooses a secret random number r_j for the signer j (r_j ∈ Z
q *), calculate the following formula. x_j = α ^ {r_j} mod p z_j = {v_j} ^ {r_j} mod p S_j = {r_j} ^ {-1} ・ (H (z_j)-s_i ・ x_j) mod q
【0099】そして、((x_j, S_j), z_j)を公開鍵証明
書とする。公開鍵証明書の正当性は、次のように確認で
きる。まず、0 < x_j < p, 0 < S_j < q を確認した
後、次の処理を行う。 w = {S_j}^{-1} mod q u1 = H(z_j)・w mod q u2 = x_j・w mod q v = α^{u1}・{v_i}^{u2} mod pThen, ((x_j, S_j), z_j) is the public key certificate. The validity of the public key certificate can be confirmed as follows. First, after confirming 0 <x_j <p, 0 <S_j <q, the following processing is performed. w = {S_j} ^ {-1} mod q u1 = H (z_j) ・ w mod q u2 = x_j ・ w mod qv = α ^ {u1} ・ {v_i} ^ {u2} mod p
【0100】そして、v = x_jを確認する。公開鍵証明
書の正当性は、次式が成り立つことで確認できる。 z_j = {x_j}^{-S_j} mod pThen, confirm v = x_j. The validity of the public key certificate can be confirmed by the following equation. z_j = {x_j} ^ {-S_j} mod p
【0101】[0101]
【他の実施形態】なお、本発明は、複数の機器(例えば
ホストコンピュータ,インタフェイス機器,リーダ,プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機,ファクシミリ
装置など)に適用してもよい。[Other Embodiments] Even if the present invention is applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), an apparatus (for example, a copying machine) Machine, facsimile machine, etc.).
【0102】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPUやM
PU)が記憶媒体に格納されたプログラムコードを読出し
実行することによっても、達成されることは言うまでも
ない。この場合、記憶媒体から読出されたプログラムコ
ード自体が前述した実施形態の機能を実現することにな
り、そのプログラムコードを記憶した記憶媒体は本発明
を構成することになる。プログラムコードを供給するた
めの記憶媒体としては、例えば、フロッピディスク,ハ
ードディスク,光ディスク,光磁気ディスク,CD-ROM,
CD-R,磁気テープ,不揮発性のメモリカード,ROMなど
を用いることができる。Further, an object of the present invention is to supply a storage medium storing program codes of software for realizing the functions of the above-described embodiments to a system or an apparatus, and to provide a computer (or a CPU or M
Needless to say, this can also be achieved by the PU) reading and executing the program code stored in the storage medium. In this case, the program code itself read from the storage medium implements the functions of the above-described embodiment, and the storage medium storing the program code constitutes the present invention. Examples of the storage medium for supplying the program code include a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM,
CD-R, magnetic tape, non-volatile memory card, ROM, etc. can be used.
【0103】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレー
ティングシステム)などが実際の処理の一部または全部
を行い、その処理によって前述した実施形態の機能が実
現される場合も含まれることは言うまでもない。Moreover, not only the functions of the above-described embodiments are realized by executing the program code read by the computer, but also the OS (operating system) running on the computer based on the instructions of the program code. It is needless to say that this also includes a case where the above) performs a part or all of the actual processing and the processing realizes the functions of the above-described embodiments.
【0104】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張カード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張カードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、その
処理によって前述した実施形態の機能が実現される場合
も含まれることは言うまでもない。Further, after the program code read from the storage medium is written in the memory provided in the function expansion card inserted in the computer or the function expansion unit connected to the computer, based on the instruction of the program code, It goes without saying that a case where the CPU included in the function expansion card or the function expansion unit performs some or all of the actual processing and the processing realizes the functions of the above-described embodiments is also included.
【0105】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明したフローチャートに対応す
るプログラムコードを格納することになるが、簡単に説
明すると、図4Aおよび4Bのメモリマップ例に示す各モジ
ュールを記憶媒体に格納することになる。すなわち、少
なくとも「公開情報生成」「署名生成」「判別」および
「変換」の各モジュール、または、「底生成」「公開鍵
生成」「署名生成」および「確認」の各モジュールのプ
ログラムコードを記憶媒体に格納すればよい。When the present invention is applied to the above-mentioned storage medium, the storage medium stores the program code corresponding to the above-mentioned flow chart. Briefly, the memory maps of FIGS. 4A and 4B will be described. Each module shown in the example will be stored in the storage medium. That is, at least the program code of each module of “public information generation”, “signature generation”, “discrimination” and “conversion”, or each module of “bottom generation”, “public key generation”, “signature generation” and “confirmation” is stored. It may be stored in the medium.
【0106】[0106]
【発明の効果】以上説明したように、本発明によれば、
署名者の匿名性を保つディジタル署名方式を提供するこ
とができる。As described above, according to the present invention,
A digital signature scheme that maintains the anonymity of the signer can be provided.
【0107】また、通信回数を減らし、複数回の通信に
伴う計算も行わずに済むディジタル署名方式を用いた情
報通信システムを提供することができる。Further, it is possible to provide the information communication system using the digital signature method in which the number of times of communication is reduced and the calculation associated with a plurality of times of communication is not required.
【0108】また、少なくとも一回の通信を行ったとき
に匿名性を保つことができる通信ネットワークを用いる
ディジタル署名方式を用いた情報通信システムを提供す
ることができる。Further, it is possible to provide an information communication system using a digital signature method using a communication network capable of maintaining anonymity when performing communication at least once.
【図1】MOシステムの概念図、FIG. 1 is a conceptual diagram of an MO system,
【図2】本発明にかかるディジタル署名を用いた通信シ
ステムを説明するための図、FIG. 2 is a diagram for explaining a communication system using a digital signature according to the present invention,
【図3】ディジタル署名に関する処理の流れの概要を示
すフローチャート、FIG. 3 is a flowchart showing an outline of the flow of processing relating to a digital signature,
【図4A】本発明にかかるプログラムコードを格納した
記憶媒体のメモリマップ例を示す図、FIG. 4A is a diagram showing an example of a memory map of a storage medium storing a program code according to the present invention;
【図4B】本発明にかかるプログラムコードを格納した
記憶媒体のメモリマップ例を示す図である。FIG. 4B is a diagram showing an example of a memory map of a storage medium storing a program code according to the present invention.
Claims (16)
タと、各ユーザに固有の秘密情報とから、各ユーザに固
有の公開情報を生成する公開情報生成ステップと、 所定のディジタル情報に、前記秘密情報および前記公開
パラメータを用いた変換を施すことにより、前記ディジ
タル情報に対応する署名情報を生成する署名生成ステッ
プと、 前記ディジタル情報と前記署名情報との対応関係を、前
記公開パラメータおよび前記公開情報を用いて判別する
判別ステップと、 前記秘密情報を変換せずに前記公開パラメータおよび前
記公開情報を変換して、前記署名情報を生成することが
できる新たな公開パラメータおよび公開情報にする変換
ステップとを有することを特徴とするディジタル署名方
式。1. A public information generating step of generating public information unique to each user from public parameters commonly used by each user and secret information unique to each user; and a secret information in predetermined digital information. A signature generating step of generating signature information corresponding to the digital information by performing conversion using the information and the public parameter; and a correspondence relationship between the digital information and the signature information, the public parameter and the public information. And a conversion step of converting the public parameter and the public information without converting the secret information into a new public parameter and public information capable of generating the signature information, A digital signature system characterized by having.
パラメータおよび前記公開情報から前記秘密情報を求め
ることが困難であるように、前記公開情報を生成するこ
とを特徴とする請求項1に記載されたディジタル署名方
式。2. The public information generating step according to claim 1, wherein the public information is generated so that it is difficult to obtain the secret information from the public parameter and the public information. Digital signature scheme.
と、前記変換ステップで変換された公開パラメータとを
用いて、所定のディジタル情報に対応する署名情報を生
成することを特徴とする請求項1に記載されたディジタ
ル署名方式。3. The signature generation step generates signature information corresponding to predetermined digital information using the secret information and the public parameter converted in the conversion step. Digital signature scheme described in.
報と前記署名情報との対応関係を、前記変換ステップで
変換された公開パラメータおよび公開情報とを用いて判
別することを特徴とする請求項1に記載されたディジタ
ル署名方式。4. The discriminating step discriminates a correspondence relationship between the digital information and the signature information by using the public parameter and public information converted in the converting step. Digital signature scheme described.
対して各ユーザの秘密鍵を指数値として指数計算を行っ
た結果を各ユーザの公開鍵とするディジタル署名方式で
あって、 前記底に対して乱数を指数値として指数計算を行った結
果を新しい底とする底生成ステップと、 所定のユーザの公開鍵に対して前記乱数を指数値として
指数計算を行った結果を新しい公開鍵とする公開鍵生成
ステップと、 前記所定のユーザが、自身の秘密鍵を用いて、任意の平
文に対してディジタル署名を生成する署名生成ステップ
と、 前記底生成ステップおよび前記公開鍵生成ステップによ
り生成された底と公開鍵とを用いて、前記署名生成ステ
ップで生成されたディジタル署名の正当性を確認する確
認ステップとを有することを特徴とするディジタル署名
方式。5. A digital signature system in which a result obtained by performing exponential calculation with a secret key of each user as an exponent value for a bottom value commonly used by a plurality of users is a public key of each user, wherein: A base generation step in which a new base is the result of exponential calculation with a random number as the exponent value for the base, and a new public key is the result of exponential calculation with the random number as the exponent value for the public key of a given user. And a public key generation step in which the predetermined user generates a digital signature for arbitrary plaintext by using the private key of the predetermined user, and the base generation step and the public key generation step. A digital signature system, which comprises a confirmation step for confirming the validity of the digital signature generated in the signature generation step using the generated base and the public key.
の根拠をおくことを特徴とする請求項5に記載されたデ
ィジタル署名方式。6. The digital signature system according to claim 5, wherein security is based on the difficulty of obtaining the discrete logarithm.
署名方式および/またはDSA方式を用いることにより、前
記離散対数を求めることを困難にすることを特徴とする
請求項6に記載されたディジタル署名方式。7. Schnorr signature scheme and / or ElGamal
7. The digital signature system according to claim 6, wherein it is difficult to obtain the discrete logarithm by using a signature system and / or a DSA system.
定する指定手段と、 少なくとも一つのディジタル署名方式を用いて、対象の
ディジタル署名が前記指定手段により指定された生成手
段により生成されたものか否かを確認する確認手段とを
備えた情報通信システムであって、 前記ディジタル署名方式の一つは、請求項5から請求項7
の何れかに記載されたディジタル署名方式であることを
特徴とする情報通信システム。8. Designating means for designating a generating means for generating a digital signature, and using at least one digital signature method, whether or not the target digital signature is generated by the generating means designated by the designating means. An information communication system comprising a confirmation means for confirming whether the digital signature scheme is one of the digital signature schemes.
An information communication system characterized by being a digital signature system described in any one of 1.
の根拠をおく第一のディジタル署名方式を用いて、ディ
ジタル署名を生成する署名生成手段を指定する指定手段
と、 請求項5から請求項7の何れかに記載された第二のディジ
タル署名方式により新しい底および新しい公開鍵を得る
取得手段と、 前記取得手段により得られた新しい底の値を用いて、前
記取得手段により得られた新しい公開鍵に対する第一の
ディジタル署名を、前記第一のディジタル署名方式によ
り生成する第一の生成手段とを備え、 前記第一の生成手段により得られたディジタル署名は、
前記取得手段により得られた新しい公開鍵に対応する秘
密鍵をもつ署名生成手段が指定されたことを示す証拠で
あることを特徴とする情報通信システム。9. A designating means for designating a signature generating means for generating a digital signature by using a first digital signature method in which security is based on the difficulty of obtaining a discrete logarithm, and claim 5 An acquisition unit that obtains a new base and a new public key by the second digital signature method described in any one of Item 7, and a new base value that is obtained by the acquisition unit. A first generation means for generating a first digital signature for the new public key by the first digital signature method, wherein the digital signature obtained by the first generation means is
An information communication system, characterized in that it is proof that a signature generation means having a secret key corresponding to the new public key obtained by the acquisition means has been designated.
新しい底および新しい公開鍵を用いて、任意の平文に対
して第二のディジタル署名を生成する第二の生成手段を
有することを特徴とする請求項9に記載された情報通信
システム。10. The apparatus further comprises second generating means for generating a second digital signature for arbitrary plaintext by using the new base and the new public key obtained by the obtaining means. The information communication system according to claim 9.
鍵を用いて前記第一のディジタル署名の正当性を確認す
る第一の確認手段と、 前記第一の確認手段によりその正当性が確認された底お
よび公開鍵を用いて前記第二のディジタル署名の正当性
を確認する第二の確認手段と、 前記第一および第二の確認手段により得られた確認結果
に基づき、対象とするディジタル署名が前記指定手段に
より指定された署名生成手段により生成されたものか否
かを判定する判定手段とを有することを特徴とする請求
項10に記載された情報通信システム。11. A first confirmation means for confirming the validity of the first digital signature by using a public key of the first digital signature method, and the validity is confirmed by the first confirmation means. Second confirmation means for confirming the authenticity of the second digital signature using the bottom and public key, and the target digital signature based on the confirmation results obtained by the first and second confirmation means. 11. The information communication system according to claim 10, further comprising: a determination unit that determines whether or not is generated by the signature generation unit designated by the designation unit.
て、Schnorr署名方式および/またはElGamal署名方式お
よび/またはDSA方式を用いることを特徴とする請求項9
から請求項11に記載された情報通信システム。12. The Schnorr signature method and / or the ElGamal signature method and / or the DSA method is used as the first digital signature method.
13. The information communication system according to claim 11.
に、第一のディジタル署名方式により第一のディジタル
署名を生成する指定手段と、 前記指定手段により生成された前記第一のディジタル署
名に基づき、第二のディジタル署名方式により第二のデ
ィジタル署名を生成する署名生成手段と、 前記第一および第二のディジタル署名に基づき、前記第
二のディジタル署名が前記指定手段により指定された署
名生成手段により生成されたものか否かを確認する確認
手段とを有することを特徴とする情報通信システム。13. A designation means for generating a first digital signature according to a first digital signature method for designating a means for generating a signature, and based on the first digital signature generated by the designation means. A signature generating means for generating a second digital signature by a second digital signature method, and a signature generating means for designating the second digital signature by the designating means based on the first and second digital signatures. And a confirmation means for confirming whether or not the information communication system is generated by the information communication system.
ードが格納されたコンピュータ可読メモリであって、 各ユーザが共通に使用する公開パラメータと、各ユーザ
に固有の秘密情報とから、各ユーザに固有の公開情報を
生成する公開情報生成ステップのコードと、 所定のディジタル情報に、前記秘密情報および前記公開
パラメータを用いた変換を施すことにより、前記ディジ
タル情報に対応する署名情報を生成する署名生成ステッ
プのコードと、 前記ディジタル情報と前記署名情報との対応関係を、前
記公開パラメータおよび前記公開情報を用いて判別する
判別ステップのコードと、 前記秘密情報を変換せずに前記公開パラメータおよび前
記公開情報を変換して、前記署名情報を生成することが
できる新たな公開パラメータおよび公開情報にする変換
ステップのコードとを有することを特徴とするコンピュ
ータ可読メモリ。14. A computer-readable memory storing a program code relating to a digital signature, wherein public information unique to each user is obtained from public parameters commonly used by each user and secret information unique to each user. A code of a public information generating step to be generated, and a code of a signature generating step for generating signature information corresponding to the digital information by applying conversion using the secret information and the public parameter to predetermined digital information, A code of a determination step of determining the correspondence between the digital information and the signature information using the public parameter and the public information, and converting the public parameter and the public information without converting the secret information. , New public parameters and public information that can generate the signature information. A computer-readable memory, characterized in that it comprises a code conversion step of the.
に対して各ユーザの秘密鍵を指数値として指数計算を行
った結果を各ユーザの公開鍵とするディジタル署名方式
のプログラムコードが格納されたコンピュータ可読メモ
リであって、 前記底に対して乱数を指数値として指数計算を行った結
果を新しい底とする底生成ステップのコードと、 所定のユーザの公開鍵に対して前記乱数を指数値として
指数計算を行った結果を新しい公開鍵とする公開鍵生成
ステップのコードと、 前記所定のユーザが、自身の秘密鍵を用いて、任意の平
文に対してディジタル署名を生成する署名生成ステップ
のコードと、 前記底生成ステップおよび前記公開鍵生成ステップによ
り生成された底と公開鍵とを用いて、前記署名生成ステ
ップで生成されたディジタル署名の正当性を確認する確
認ステップのコードとを有することを特徴とするコンピ
ュータ可読メモリ。15. A program code of a digital signature method in which a result obtained by performing exponential calculation with a secret key of each user as an exponent value for a bottom value commonly used by a plurality of users is a public key of each user is stored. A computer readable memory, wherein the base generation step has a new base that is the result of exponential calculation using a random number as the exponent value for the base, and the random number is exponential for the public key of a predetermined user. A code of a public key generation step in which a new public key is a result of index calculation as a value, and a signature generation step in which the predetermined user generates a digital signature for arbitrary plaintext by using his / her own private key. And the bottom and the public key generated by the bottom generation step and the public key generation step, the digital code generated in the signature generation step. A computer-readable memory, characterized in that it comprises a code confirmation step of confirming the validity of the name.
システムのプログラムコードが格納されたコンピュータ
可読メモリであって、 離散対数を求めることの困難性に安全性の根拠をおく第
一のディジタル署名方式を用いて、ディジタル署名を生
成する署名生成手段を指定する指定ステップのコード
と、 請求項5から請求項7の何れかに記載された第二のディジ
タル署名方式により新しい底および新しい公開鍵を得る
取得ステップのコードと、 前記取得ステップで得た新しい底の値を用いて、前記取
得ステップで得た新しい公開鍵に対する第一のディジタ
ル署名を、前記第一のディジタル署名方式により生成す
る第一の生成ステップとを有することを特徴とするコン
ピュータ可読メモリ。16. A computer readable memory in which a program code of an information communication system using a digital signature system is stored, wherein a first digital signature system is based on the security of difficulty of obtaining discrete logarithm. Obtaining a new bottom and a new public key by the code of the specifying step for specifying the signature generating means for generating the digital signature, and the second digital signature method according to any one of claims 5 to 7. Using the code of the step and the new base value obtained in the obtaining step, a first generation for producing a first digital signature for the new public key obtained in the obtaining step by the first digital signature scheme. A computer readable memory, comprising:
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8108225A JPH09298536A (en) | 1996-04-26 | 1996-04-26 | Digital signature system and information communication system using the same |
EP97302857A EP0804003A3 (en) | 1996-04-26 | 1997-04-25 | Digital signature method and communication system |
US08/845,405 US6154841A (en) | 1996-04-26 | 1997-04-25 | Digital signature method and communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8108225A JPH09298536A (en) | 1996-04-26 | 1996-04-26 | Digital signature system and information communication system using the same |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09298536A true JPH09298536A (en) | 1997-11-18 |
Family
ID=14479230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8108225A Withdrawn JPH09298536A (en) | 1996-04-26 | 1996-04-26 | Digital signature system and information communication system using the same |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09298536A (en) |
-
1996
- 1996-04-26 JP JP8108225A patent/JPH09298536A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10530585B2 (en) | Digital signing by utilizing multiple distinct signing keys, distributed between two parties | |
Rivest et al. | How to leak a secret | |
US5146500A (en) | Public key cryptographic system using elliptic curves over rings | |
US6154841A (en) | Digital signature method and communication system | |
US6292897B1 (en) | Undeniable certificates for digital signature verification | |
Rivest et al. | How to leak a secret: Theory and applications of ring signatures | |
US6411715B1 (en) | Methods and apparatus for verifying the cryptographic security of a selected private and public key pair without knowing the private key | |
JP5201136B2 (en) | Anonymous authentication system and anonymous authentication method | |
KR101098701B1 (en) | Use of isogenies for design of cryptosystems | |
US6389136B1 (en) | Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys | |
US6202150B1 (en) | Auto-escrowable and auto-certifiable cryptosystems | |
US6122742A (en) | Auto-recoverable and auto-certifiable cryptosystem with unescrowed signing keys | |
Au et al. | Constant-size dynamic k-times anonymous authentication | |
US6473508B1 (en) | Auto-recoverable auto-certifiable cryptosystems with unescrowed signature-only keys | |
GB2490407A (en) | Joint encryption using base groups, bilinear maps and consistency components | |
JP2004208262A (en) | Apparatus and method of ring signature based on id employing bilinear pairing | |
EP2686978B1 (en) | Keyed pv signatures | |
WO2012156254A1 (en) | A method for performing a group digital signature | |
JP3513324B2 (en) | Digital signature processing method | |
KR20010013155A (en) | Auto-recoverable auto-certifiable cryptosystems | |
Slamanig | More privacy for cloud users: Privacy-preserving resource usage in the cloud | |
Huang et al. | New constructions of convertible undeniable signature schemes without random oracles | |
Rasslan et al. | An IoT Privacy-Oriented selective disclosure credential system | |
JPH09298536A (en) | Digital signature system and information communication system using the same | |
Dehkordi et al. | Certificateless identification protocols from super singular elliptic curve |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20030701 |