JPH09153103A - Method and device for executing traceable electronic money - Google Patents

Method and device for executing traceable electronic money

Info

Publication number
JPH09153103A
JPH09153103A JP8187547A JP18754796A JPH09153103A JP H09153103 A JPH09153103 A JP H09153103A JP 8187547 A JP8187547 A JP 8187547A JP 18754796 A JP18754796 A JP 18754796A JP H09153103 A JPH09153103 A JP H09153103A
Authority
JP
Japan
Prior art keywords
information
user
electronic cash
signature
pseudonym
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.)
Granted
Application number
JP8187547A
Other languages
Japanese (ja)
Other versions
JP3435677B2 (en
Inventor
Kazuo Ota
和夫 太田
Eiichiro Fujisaki
英一郎 藤▲崎▼
Atsushi Fujioka
淳 藤岡
Masayuki Abe
正幸 阿部
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP18754796A priority Critical patent/JP3435677B2/en
Publication of JPH09153103A publication Critical patent/JPH09153103A/en
Application granted granted Critical
Publication of JP3435677B2 publication Critical patent/JP3435677B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Cash Registers Or Receiving Machines (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

PROBLEM TO BE SOLVED: To trace an electronic money flow under reliable third person's supervison/permission when there is the possibility of money laundering or the like. SOLUTION: In the traceable electronic money execution method, a user US transmits the product N of prime numbers P, Q, a prime number L and a real name IDu to a bank BK, the bank BK generates an assumed name I corresponding the real name IDu, secretly manages correspondence relation between the names IDu, I, signs the values N, L, I based upon a signature function Ω=De B (N, L, I) and transmits the signed result Ω to the user as information including a use permit. The user US generates certification information X based upon the product N and a random number R, transmits information 2 obtained by applying blind signature preprocessing to (X, B) based upon a function Fe C and allows the bank BK to sign the Z by a signature function De C (Z) to obtain electronic money C. If electronic money is illegally used by a certain user, the bank BK opens the correspondence relation between the user's real name IDu and the assumed name I in accordance with an instruction from a court and traces the used electronic money.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、電気通信システ
ムを利用して電子的な現金を実施する方法及び装置に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and apparatus for making electronic cash using a telecommunication system.

【0002】[0002]

【従来の技術】電子現金はICカードを電子現金の財布
(電子財布)とするような形で広く使われるようにな
る。その際には、電子現金はいかなる物理媒体にも依存
しないで、情報そのものが電子現金となるような形で電
子財布に格納される形態が望ましい。
2. Description of the Related Art Electronic cash is widely used in the form of an IC card as a wallet for electronic cash (electronic wallet). In that case, it is desirable that the electronic cash is stored in the electronic wallet in a form that the information itself becomes electronic cash without depending on any physical medium.

【0003】電子現金の一つの実現策は、物理的な手段
によって安全性を保証する方法である。例えば、テレホ
ンカード等の磁気カードによるプリペイドカードは、カ
ード上の磁気状態を他のカードに物理的にコピーするこ
とが困難であるということを安全性の要として成り立っ
ている。しかしながら、この安全性の前提は世の中の科
学技術の進歩にともない、必ずしも保証されなくなって
きている。さらに、この方式では、電子現金が常に物理
媒体(磁気カード等)と一体で実現されるため、情報の
形の電子現金のように通信回線で転送するようなことは
できない。
One implementation of electronic cash is a method of ensuring security by physical means. For example, a prepaid card using a magnetic card such as a telephone card is based on the fact that it is difficult to physically copy the magnetic state on the card to another card. However, this premise of safety is not always guaranteed due to the progress of science and technology in the world. Further, in this method, electronic cash is always realized integrally with a physical medium (such as a magnetic card), and therefore it cannot be transferred through a communication line like electronic cash in the form of information.

【0004】別の実現策は、クレジットカードのような
電子的IDカード(電子クレジットカードもしくは電子小
切手)を用いて、後日決済する方法である。電子クレジ
ットカードでは、手書きの署名の代わりにディジタル署
名を用いることにより、処理の完全電子化(情報化)を
実現でき、その決済用情報を通信回線で転送できる。し
かし、この方式の欠点は、利用者のプライバシを保証で
きない点である(これは、現行のクレジットカードや小
切手においても同様である)。つまり、クレジットカー
ドを発行・決済する機関は、自由に利用者の購買履歴を
入手できるのはもとより、また、小売店までも利用者の
クレジットカード番号や署名を知ることができる。
Another solution is to use an electronic ID card such as a credit card (electronic credit card or electronic check) to make a payment at a later date. In an electronic credit card, by using a digital signature instead of a handwritten signature, it is possible to realize completely electronic processing (informatization) and transfer the payment information through a communication line. However, a drawback of this scheme is that it cannot guarantee the privacy of the user (this is also true of current credit cards and checks). In other words, the institution that issues / settles credit cards can obtain the purchase history of the user freely, and also the retailer can know the credit card number and signature of the user.

【0005】一方、ブラインド署名(詳細は後述する)
と支払い時でのオンラインチェック(小売店が、利用者
の提示した電子現金情報が二重/不正使用されていない
かを、管理センタにオンラインで問い合わせること)と
を組み合わせることにより、上述した電子現金の情報
化、安全性、プライバシの問題を解決できる。しかし、
各小売店が各利用者の購買時に必ずセンタにアクセスす
ることは、処理時間(利用者の待ち時間)、通信コス
ト、管理センタでのオンライン処理コスト及びデータベ
ース維持管理コスト等を考えると、現実的な解決方法と
は言えない。従って、現金支払い時の処理はオフライン
で処理できることが望ましい。
On the other hand, a blind signature (details will be described later)
And online check at the time of payment (the retail store inquires online to the management center whether the electronic cash information presented by the user is doubled / unauthorized) and the electronic cash described above is combined. Can solve the problems of computerization, security, and privacy. But,
It is realistic for each retailer to access the center when purchasing each user, considering the processing time (user waiting time), communication cost, online processing cost at the management center, database maintenance cost, etc. It is not a good solution. Therefore, it is desirable that the processing at the time of cash payment can be processed offline.

【0006】プライバシを重視し、オフライン処理可能
な電子現金方式としては、例えば、D.Chaum, A.Fiat an
d M.Naor,“Untraceable Electronic Cash,”Advances
inCryptology-Crypto'88, Lecture Notes in Computer
Science 403, pp.319-327,Springer-Verlag, Berlin(19
88)やT.Okamoto etal.“Disposable Zero-Knowledge Au
thentications and Their Applications to Untraceabl
e Electronic Cash,”Advances in Cryptology-Cryto'8
9, Lecture Notes in Computer Science 435, pp.481-4
96, Springer-Verlag, Berlin(1989)、日本国特許第20
27713号「電子現金実施方法及びその装置」などがあ
る。
[0006] As an electronic cash system capable of off-line processing with an emphasis on privacy, for example, D.Chaum, A.Fiat an
d M. Naor, “Untraceable Electronic Cash,” Advances
inCryptology-Crypto'88, Lecture Notes in Computer
Science 403, pp.319-327, Springer-Verlag, Berlin (19
88) and T. Okamoto et al. “Disposable Zero-Knowledge Au.
thentications and Their Applications to Untraceabl
e Electronic Cash, ”Advances in Cryptology-Cryto'8
9, Lecture Notes in Computer Science 435, pp.481-4
96, Springer-Verlag, Berlin (1989), Japanese Patent No. 20
No. 27713, "Electronic cash implementation method and its device".

【0007】まず、利用者のプライバシを保証するため
の基本技術であるブラインド署名について説明する。ブ
ラインド署名では、署名者に文書の内容を秘密にしたま
まで署名を付けてもらう。RSA法に基づいたブライン
ド署名方式が米国特許No.4,759,063及び文献 D.Chaum,
“Security without Identification: Transaction Sys
tems to Make Big Brother Obsolete," Comm. of the A
CM, 28, 10, pp.1030-1044(1985)で、ゼロ知識対話証明
に基づいたブラインド署名が文献T.Okamoto etal.“Div
ertible Zero-Knowledge Interactive Proofs and Comm
utative RandomSelf-Reducible," The Proc. of Eurocr
ypt'89(1989)で示されている。
First, the blind signature, which is a basic technique for guaranteeing the privacy of the user, will be described. In blind signatures, the signer signs the document while keeping the contents of the document secret. A blind signature scheme based on the RSA method is disclosed in US Pat. No. 4,759,063 and document D. Chaum,
“Security without Identification: Transaction Sys
tems to Make Big Brother Obsolete, "Comm. of the A
In CM, 28, 10, pp.1030-1044 (1985), a blind signature based on a zero-knowledge dialogue proof was published by T. Okamoto et al. “Div.
ertible Zero-Knowledge Interactive Proofs and Comm
utative RandomSelf-Reducible, "The Proc. of Eurocr
It is shown in ypt'89 (1989).

【0008】ブラインド署名の要求者(利用者)は、ブ
ラインド署名前処理によって文書mを乱数rで攪乱して
ブラインドメッセージxを生成する。署名者は、秘密鍵
を用いてxに対応する仮の署名yを計算する。このと
き、mはrによって攪乱されているので、署名者は文書
mを知ることはできない。利用者は、ブラインド署名後
処理によってyから乱数rの影響を除去して、本来の文
書mに対する真の署名y'を求めて、mとy'の組を検証者
に送信する。検証者は、署名者の公開鍵を用いてy'がm
の署名であることを確認する。ここで、検証者はyとy'
の対応関係を知ることはできない。ブラインド署名の手順 Aを署名者、Uを署名要求者、eA を署名者Aの公開情
報とする。Fをブラインド署名前処理アルゴリズムを表
す関数、Dを多重ブラインド署名アルゴリズムを表す関
数、Gをブラインド署名後処理アルゴリズムを表す関数
とする。利用者Uが前処理関数FeAを使って作成した情
報に署名者Aが署名関数DeAを使って仮の署名Ω= DeA
(FeA(m1),…,FeA(mk)) を作成し、それに対し利用者U
はブラインド署名後処理GeAを施して、k個のメッセー
ジm1,…,mkに対するAの真の署名B= DeA(m1,…,mk)を
算出する。この手順は署名者Aと利用者USにより以下
の手順に従って実行され、多重ブラインド署名が作成さ
れる。
The blind signature requester (user) disturbs the document m by the random number r by the blind signature preprocessing to generate the blind message x. The signer uses the private key to calculate a temporary signature y corresponding to x. At this time, the signer cannot know the document m because m is disturbed by r. The user removes the influence of the random number r from y by blind sign post-processing, obtains the true signature y ′ for the original document m, and sends the pair of m and y ′ to the verifier. The verifier uses y's m as the signer's public key.
Confirm that the signature is Where the verifiers are y and y '
Can not know the correspondence of. The blind signature procedure A is the signer, U is the signer, and e A is the public information of the signer A. Let F be a function representing the blind signature preprocessing algorithm, D be a function representing the multiple blind signature algorithm, and G be a function representing the blind signature postprocessing algorithm. The signer A uses the signature function D eA to tentatively sign the information created by the user U using the preprocessing function F eA Ω = D eA
(F eA (m 1 ), ..., F eA (m k )) is created and the user U
Is subjected to blind signature after treatment G eA, k-number of messages m 1, ..., a true signature of A to m k B = D eA (m 1, ..., m k) is calculated. This procedure is executed by the signer A and the user US according to the following procedure to create a multiple blind signature.

【0009】ステップ1:利用者USはブラインド署名
前処理FeAにより、k個のメッセージ{mi|i=1,2,…,k}
からk個のブラインドメッセージxi={FeA(mi)|i=1,2,
…,k}を生成して、署名者Aに送信する。ここで、それ
ぞれのブラインドメッセージxi=FeA(mi)は独立に計算
されており、関数FeAは乱数を使用してmi を秘匿化し
ている。
Step 1: The user US performs k blind messages {m i | i = 1,2, ..., k} by the blind signature preprocessing F eA .
From k blind messages x i = {F eA (m i ) | i = 1,2,
, K} is generated and transmitted to the signer A. Here, each blind message x i = F eA (m i ) is calculated independently, and the function F eA uses a random number to conceal m i .

【0010】ステップ2:署名者Aは仮の署名Ω=D
eA(FeA(m1),…,FeA(mk))をk個のブラインドメッセージ
FeA(m1),…,FeA(mk)から生成して、利用者USに送信す
る。 ステップ3:利用者USは、関数GeAを用いたブライン
ド署名後処理により、メッセージm1,…,mkに対応した署
名者Aの真のディジタル署名B=DeA(m1,…,mk)を算出
する。
Step 2: Signer A has a tentative signature Ω = D
eA (F eA (m 1 ), ..., F eA (m k )) k blind messages
It is generated from F eA (m 1 ), ..., F eA (m k ), and is transmitted to the user US. Step 3: The user US performs the blind signature post-processing using the function G eA, and the true digital signature B = D eA (m 1 , ..., m) of the signer A corresponding to the message m 1 , ..., M k. k ) is calculated.

【0011】RSA法をブラインド署名に使用する場合
には、ri を攪乱用乱数とし、ブラインドメッセージ
(ブラインド署名前処理)xi 、仮の署名y、ブライン
ド署名後処理GeAをそれぞれ xi=FeA(mi)=reA×mi mod n、 y=Ω=DeA(x1,…,xk)=Π1<i<k(xi)dAmod n、 GeA(y)=Ω/(r1×…×rk)modn とおいて、署名yは y=B=Π1<i<k(mi)dAmod n となる。このとき、メッセージm1,…,mkに対する署名B
の検証VeA(m1,…,mk,B)は次式 {Π1<i<k(mi)}eA≡B(mod n) が満足するか否かによって判定され、満足すれば合格
(OK)を出力する。ここで、(eA,n)は署名者Aの使用
するRSA法の公開鍵であり、PとQをそれぞれ大きな
素数とすると次の式をみたす。
When the RSA method is used for the blind signature, r i is a random number for perturbation, and blind message (blind signature preprocessing) x i , tentative signature y, and blind signature postprocessing G eA are respectively x i = F eA (m i ) = r eA xm i mod n, y = Ω = D eA (x 1 ,, ..., x k ) = Π 1 < i < k (x i ) dA mod n, G eA (y) = Ω / (r 1 × ... × r k ) mod n, the signature y is y = B = Π 1 < i < k (m i ) dA mod n. At this time, the signature B for the message m 1 , ..., M k
The verification V eA (m 1 ,, ..., m k , B) is determined by whether or not the following expression {Π 1 < i < k (m i )} eA ≡ B (mod n) is satisfied. Outputs a pass (OK). Here, (e A , n) is the public key of the RSA method used by the signer A, and the following equation is satisfied when P and Q are large prime numbers.

【0012】n=P×Q eA×dA ≡1(mod L) ただしL=LCM{(P-1),(Q-1)} ここで、L=LCM{a,b}はaとbの最小公倍数を、a≡b
(mod n)は(a-b) がnの倍数であることを表す。P,Q
が巨大な素数の場合、一般にnを素因数分解してP,Q
を求めることは非常に困難である。従って、nを公開し
てもP,Qの秘密を保持することができる。以降ではd
A を1/eAと表すこともある。以下の Chaum・Fiat・Naor
法ではk>1の場合を、後述するこの発明の実施例で
は、k=1の場合を想定する。
N = P × Q e A × d A ≡1 (mod L) where L = LCM {(P-1), (Q-1)} where L = LCM {a, b} is a The least common multiple of b is a≡b
(mod n) represents that (ab) is a multiple of n. P, Q
Is a huge prime number, in general, n is factored into P and Q
Is very difficult to ask for. Therefore, even if n is disclosed, the secrets of P and Q can be held. After that d
A is sometimes expressed as 1 / e A. Chaum / Fiat / Naor below
In the method, the case of k> 1 is assumed, and in the embodiment of the present invention described later, the case of k = 1 is assumed.

【0013】RSA暗号の構成例は、文献 Rivest, R.
L. et al.“A Method for ObtainingDigital Signature
s and Public-Key Cryptosystems," Communications of
theACM, Vol. 21, No.2, pp.120-126,(1978)に示され
ている。ブラインド署名の構成法は、例えば、Chaum,
D.“Blind Signature Systems,"US Patent No.:4,759,0
63 や Ohta, K. et al.“Authentication System and A
pparatus Therefor," US patent No.:4,969,189 に示さ
れている。
An example of the structure of the RSA encryption is given in the document Rivest, R.
L. et al. “A Method for Obtaining Digital Signature
s and Public-Key Cryptosystems, "Communications of
The ACM, Vol. 21, No. 2, pp. 120-126, (1978). The method of constructing a blind signature is, for example, Chaum,
D. "Blind Signature Systems," US Patent No .: 4,759,0
63 and Ohta, K. et al. “Authentication System and A
pparatus Therefor, "US patent No .: 4,969,189.

【0014】利用者のブライバシは、ブラインド署名を
用いることで、利用者だけの責任において保証できる。
即ち、攪乱用の乱数rの付加と除去を利用者が実行する
ので、rを秘密にする限りは、誰もがy=Ωとy'=Bの
対応関係を知ることはできない。しかし、文献S.von So
lms and D.Naccache,“On Blind Signature and Perfec
t Crimes," Computers and Security, 11, pp.581-583
(1992)にあるように、この方式は、お金の流れを完全に
追跡不能にできるので、逆にマネーロンダリングや誘拐
犯の完全犯罪に悪用されるおそれが指摘されている。
The privacy of the user can be guaranteed at the sole responsibility of the user by using the blind signature.
That is, since the user adds and removes the random number r for disturbance, as long as r is kept secret, no one can know the correspondence between y = Ω and y ′ = B. However, the literature S. von So
lms and D. Naccache, “On Blind Signature and Perfec
t Crimes, "Computers and Security, 11, pp.581-583
(1992), this method can make the flow of money completely untraceable, and it has been pointed out that it could be misused for money laundering and complete crimes of kidnappers.

【0015】ここで、代表的な電子現金方式である Cha
um・Fiat・Naor法での、銀行と利用者間での電子現金の
発行処理、利用者の小売店での電子現金の支払い、小売
店と銀行間の決裁処理について述べる。電子現金の発行処理 利用者USが、銀行BKから電子現金Cを発行してもら
う手順を示す。ここで、IDは利用者USの識別情報、e
A は、利用者が指定する電子現金の金額(例えば1万
円)に対応する銀行のディジタル署名用の公開鍵とす
る。利用者が銀行から電子現金を発行してもらう手順
は、以下の通りである。
Here, Cha, which is a typical electronic cash system, is used.
This section describes the process of issuing electronic cash between a bank and a user, the payment of electronic cash at a user's retail store, and the approval process between the retail store and a bank under the um / Fiat / Naor method. Electronic cash issuance processing The procedure for the user US to issue the electronic cash C from the bank BK will be described. Here, the ID is the identification information of the user US, e
A is a bank's digital signature public key corresponding to the amount of electronic cash (for example, 10,000 yen) designated by the user. The procedure for a user to issue an electronic cash from a bank is as follows.

【0016】ステップ1:利用者USは、予め決めた乱
数ai (ただし、i=1,…,K)を生成して、公開された一
方向性関数gを用いて、 xi = g(ai) yi = g(ai(+)ID) を求める。(+) は排他的論理和を示す。
Step 1: The user US generates a predetermined random number a i (where i = 1, ..., K) and uses the published one-way function g to obtain x i = g ( a i ) y i = g (a i (+) ID) is calculated. (+) Indicates exclusive OR.

【0017】ステップ2:利用者USは、公開された一
方向性関数fとブラインド署名前処理関数FeAを用い
て、 Wi = FeA(f(xi,yi)) を計算して、銀行に提示する。 ステップ3:銀行BKは、1からKの中からランダムに
K/2個の部分集合H={ij}(ただしj=1,…,K/2及び1
i j K)を選び、それを開示要求として利用者に送
信する。以下では、表記を簡単にするために、H={K/2+
1,K/2+2,…,K}が開示要求として指定されたと仮定して
説明する。K個の中からランダムにK/2 個の部分集合の
開示を要求する手順をcut-and-choose(抜き打ち検査)
とよぶ。
Step 2: The user US calculates W i = F eA (f (x i , y i )) using the published one-way function f and the blind signature preprocessing function F eA. Present to the bank. Step 3: The bank BK randomly selects K / 2 subsets H = {i j } (where j = 1, ..., K / 2 and 1 from 1 to K).
Select < i j < K) and send it to the user as a disclosure request. Below, in order to simplify the notation, H = {K / 2 +
Description will be made assuming that 1, K / 2 + 2, ..., K} is specified as the disclosure request. Cut-and-choose (unannounced inspection) a procedure to request disclosure of K / 2 subsets randomly from K
Call it.

【0018】ステップ4:利用者USは、銀行BKから
開示要求を受信すると、指定されたK/2 個のai とWi
を作成するために関数FeAの中で用いた乱数ai を銀行
BKに開示する。 ステップ5:銀行BKは、開示されたK/2組のすべて
について正当性の検証を行ない、いずれかの検査に不合
格のときには、以降の処理を中止する。すべての検査に
合格のときには、銀行BKは開示対象でないi(ここで
は、i=1,2,…,K/2)に対して、次の手順を行なう。
Step 4: When the user US receives the disclosure request from the bank BK, the designated K / 2 a i and W i are specified.
The random number a i used in the function F eA to create is disclosed to the bank BK. Step 5: The bank BK verifies the legitimacy of all the disclosed K / 2 pairs and, if any of the inspections fails, stops the subsequent processing. When all the inspections are passed, the bank BK performs the following procedure for i (here, i = 1, 2, ..., K / 2) that is not a disclosure target.

【0019】ステップ6:銀行BKは、 Ω= DeA(W1,…,WK/2) を計算して、利用者USに送信する。 ステップ7:利用者USは、銀行からの受信データΩか
ら電子現金Cを以下のように計算する。
Step 6: The bank BK calculates Ω = D eA (W 1 , ..., W K / 2 ) and sends it to the user US. Step 7: The user US calculates the electronic cash C from the received data Ω from the bank as follows.

【0020】 C=GeA(Ω)=DeA(f(x1,y1),…,f(xK/2,yK/2))電子現金による支払 つぎに、利用者USが銀行BKより発行された電子現金
Cを用いて小売店SHで支払をする場合について説明す
る。それぞれのi(ただしi=1,2,…,K/2)に対して、次
の処理を実行する。
C = G eA (Ω) = D eA (f (x 1 , y 1 ), ..., f (x K / 2, y K / 2 )) Electronic cash payment A case where payment is made at the retail store SH using the electronic cash C issued by BK will be described. The following processing is executed for each i (where i = 1, 2, ..., K / 2).

【0021】ステップ1:利用者USは、電子現金Cを
小売店SHへ送信する。 ステップ2:小売店SHは乱数ビットei を生成して、
利用者USへ送信する。 ステップ3:利用者USはei=1のときai とyi を、ei
=0のときxi とai(+)IDを小売店SHへ送信する。
Step 1: The user US sends the electronic cash C to the retail store SH. Step 2: The retail store SH generates a random number bit e i ,
Send to user US. Step 3: a i and y i when the user US is the e i = 1, e i
When = 0, x i and a i (+) ID are transmitted to the retail store SH.

【0022】ステップ4:小売店SHは、銀行BKの公
開鍵eA を用いて、電子現金Cがメッセージf(x1,y1),
…,f(xK/2,yK/2)に対し正しい署名を有していることを
検査する。決済 最後に、小売店SHと銀行BKの間の決済方法について
説明する。小売店SHは、利用者との電子現金使用時の
交信履歴Hを銀行に提出する。銀行はHの正当性を検査
し、検査に合格すれば、Hを記憶しておくと共に小売店
の口座に該当する金額を払い込む。あるいは、何らかの
手段で該当する金額を小売店に支払う。銀行は、電子現
金の不正使用を見つけると、Hとすでに記憶している交
信履歴からCに対応して記憶しているai とai(+)ID を
探し出して、不正者の識別情報IDを確定する。
Step 4: The retail store SH uses the public key e A of the bank BK to transfer the electronic cash C to the message f (x 1 , y 1 ),
…, Verify that f (x K / 2 , y K / 2 ) has the correct signature. Payment Finally, a payment method between the retail store SH and the bank BK will be described. The retail store SH submits a communication history H with the user when using electronic cash to the bank. The bank checks the legitimacy of H, and if it passes the check, it remembers H and pays the corresponding amount to the account of the retail store. Alternatively, the appropriate amount is paid to the retail store by some means. When the bank finds an unauthorized use of electronic cash, it searches for the a i and a i (+) ID stored in correspondence with C from the communication history already stored with H, and identifies the identification information ID of the illegal person. To confirm.

【0023】以上が Chaum・Fiat・Naor法であるが、利
用者は電子現金による支払時に発生した乱数ビットei=1
のときai を,ei=0のときai(+)ID を小売り店Vに送信
するため、利用者が不正にCを2回使用すると、1回目
と2回目のi番目の乱数ビットei が異なる場合には、
i とai(+)ID とが銀行に渡ることになり、銀行BKは
それらからai(+)(ai(+)ID)=IDを計算してIDを検出でき
る。銀行は、K/2 ビットを問い合わせるので、Cの二重
使用を検出できない確率は2-K/2となる。通常、K=2
0程度が推奨されている。
The above is the Chaum / Fiat / Naor method. However, the user has a random number bit e i = 1 generated at the time of payment by electronic cash.
A i and, for transmitting a i (+) ID when e i = 0 to retail V, when the user uses twice illegally C, 1 time and the second time i-th random number bit when the If e i are different,
The a i and ai (+) ID are passed to the bank, and the bank BK can detect the ID by calculating a i (+) (a i (+) ID) = ID from them. Since the bank queries the K / 2 bit, the probability of not being able to detect double use of C is 2 -K / 2 . Usually K = 2
0 is recommended.

【0024】[0024]

【発明が解決しようとする課題】前述のブラインド署名
を用いた電子現金方式は、電子現金の流れを無条件に追
跡不能にできるので、電子現金の利用者のプライバシは
利用者だけの責任において保証される。即ち、攪乱用の
乱数rの付加と除去を利用者が実行するので、rを秘密
にする限りは誰もyとy'の対応関係を知ることはできな
い。しかし、このように無条件に匿名性を持つ方式は、
現金の流れを完全に追跡不能にできるので、その結果と
してマネーロンダリングや誘拐犯の完全犯罪に悪用され
てしまう恐れが文献S.von Solms and D. Naccache, "On
Blind Signature and Perfect Crimes," Computers an
d Security, 11, pp.581-583, 1992で指摘されている。
前述の米国特許No.4,977,595に示されている電子現金方
式も同様の問題がある。
Since the electronic cash method using the blind signature described above can unconditionally make the flow of electronic cash untraceable, the privacy of the electronic cash user is guaranteed only at the user's own risk. To be done. That is, since the user adds and removes the random number r for disturbance, as long as r is kept secret, no one can know the correspondence between y and y '. However, this method of unconditionally having anonymity is
Since the cash flow can be made completely untraceable, it could result in the misuse of money laundering and the complete crime of a kidnapper in the literature S. von Solms and D. Naccache, "On
Blind Signature and Perfect Crimes, "Computers an
d Security, 11, pp.581-583, 1992.
The electronic cash system shown in the above-mentioned U.S. Pat. No. 4,977,595 has a similar problem.

【0025】この発明の目的は、マネーロンダリング等
の恐れがある場合には、信頼できる第三者(例えば、裁
判所等)の監督/許可のもとで、情報の流れの追跡を可
能にできるが、通常のケースでは従来どおりに情報の流
れを追跡できず利用者のプライバシを守れるような電子
現金実施方法及び装置を提供することにある。
The object of the present invention is to make it possible to trace the flow of information under the supervision / permission of a reliable third party (for example, a court) when there is a risk of money laundering. However, it is an object of the present invention to provide a method and a device for carrying out electronic cash in which, in the usual case, the flow of information cannot be traced as usual and the privacy of the user can be protected.

【0026】[0026]

【課題を解決するための手段】この発明の第1の観点に
よる追跡可能な電子現金実施方法は、以下の処理ステッ
プを含む: (1) 利用者は実名IDU と第1の秘密情報に対応した公開
情報Nを第1機関に送信し、(2) 上記第1機関は、上記
利用者の身元を確認したのちに、その利用者に対する仮
名Iを生成し、上記仮名I及び上記公開情報Nの少なく
とも一方と上記実名IDU の対応関係を秘密に管理し、
(3) 上記第1機関は上記公開情報Nと仮名Iに対して署
名を施し、その署名と上記仮名Iを上記利用者に送信
し、(4) 上記利用者は、上記第1機関からの上記署名か
ら利用許可証Bを得、その利用許可証Bを、上記仮名I
と共に記憶し、(5) 上記利用者は、上記第1秘密情報を
用いて上記仮名Iと上記公開情報Nに対応した第2秘密
情報Sを計算して保持し、(6) 上記利用者は、第2機関
に対して少なくとも乱数と上記利用許可証Bを含む情報
と金額Aを送信して電子現金の発行を要求し、(7) 上記
第2機関は上記利用者からの上記利用許可証を含む情報
に署名を与えて上記利用者に電子現金Cを含む情報とし
て送信し、(8) 上記利用者は、上記利用許可証Bが上記
公開情報Nと上記仮名Iに対する署名になっているこ
と、及び上記電子現金Cが利用許可証Bのもとで使用可
能なことを検証した後に、上記乱数と上記の第2秘密情
報Sを用いて第3者へ支払を行ない、(9) 上記第3者は
上記電子現金Cに関する決済のため、上記利用者との全
ての交信情報を上記第2機関に送信し、(10)不正行為の
可能性が生じた場合には、上記第1機関の管理する上記
仮名Iと上記公開情報Nの上記少なくとも一方と、上記
実名IDU との対応関係を検索し、上記仮名Iと上記公開
情報Nを公開して不正行為を防止可能する。さらに、利
用者の銀行に対する信頼感を向上するために、銀行の役
割を複数の部分に分けて、例えば、2つに分割し、利用
者の身元を確認する部分(部局1)と、利用許可証を発
行する部分(部局2)に分担させ、新たに部局1と部局
2の間で引き継ぐ情報として関連づけ情報αを導入し
て、部局1は実名IDU と関連づけ情報αの対応を管理
し、部局2は関連づけ情報αと仮名Iの対応を管理する
ようにしてもよい。これによって、2つの部局が協力し
た場合にのみ、関連づけ情報αをキーにして仮名と実名
の対応関係を得ることができる。
The traceable electronic cash implementation method according to the first aspect of the present invention includes the following processing steps: (1) The user corresponds to the real name ID U and the first secret information. (2) After confirming the identity of the user, the first institution generates a pseudonym I for the user, and the pseudonym I and the public information N are transmitted. At least one and the correspondence between the real name ID U of managing secret,
(3) The first institution signs the public information N and the pseudonym I, and sends the signature and the pseudonym I to the user. (4) The user receives the signature from the first institution. The license B is obtained from the signature, and the license B is used as the pseudonym I
And (5) the user calculates and holds the second secret information S corresponding to the pseudonym I and the public information N using the first secret information, and (6) the user , (7) The second institution requests the issuance of electronic cash by transmitting information including at least a random number and the above-mentioned license B and the amount A, and (7) the above-mentioned second institution requests the above-mentioned license from the user. (8) In the user, the usage permit B is a signature for the public information N and the pseudonym I. And verifying that the electronic cash C can be used under the license B, and then paying a third party using the random number and the second secret information S, (9) The third party collects all communication information with the user for the second machine in order to settle the electronic cash C. Transmitted to, (10) when the possibility of fraud has occurred, the search and said at least one of said pseudonym I and said public information N for managing the first engine, the correspondence between the real name ID U Then, the pseudonym I and the public information N can be disclosed to prevent fraud. Further, in order to improve the user's trust in the bank, the role of the bank is divided into a plurality of parts, for example, two parts and the user's identity is confirmed (department 1), and the use permission. The portion that issues the certificate (division 2) is shared, and the association information α is newly introduced as information to be inherited between the divisions 1 and 2, and the division 1 manages the correspondence between the real name ID U and the association information α, The department 2 may manage the correspondence between the association information α and the pseudonym I. Thereby, only when the two departments cooperate with each other, it is possible to obtain the correspondence between the pseudonym and the real name by using the association information α as a key.

【0027】この発明の第2の観点による追跡可能な電
子現金実施方法は、以下の処理ステップを含む: (1) 利用者は実名IDU と秘密情報に対応した公開情報N
を第1機関に送信し、(2) 上記第1機関は、上記利用者
の身元を確認したのちに、その利用者に対する仮名Iを
生成し、上記仮名I及び上記公開情報Nの少なくとも一
方と上記実名IDU の対応関係を秘密に管理し、(3) 上記
第1機関は上記公開情報Nと仮名Iに対して署名を施
し、その署名と上記仮名Iを上記利用者に送信し、(4)
上記利用者は、上記第1機関からの上記署名から利用許
可証Bを得、その利用許可証Bを、上記仮名Iと共に記
憶し、(5) 上記利用者は、第2機関に対して少なくとも
乱数bと上記利用許可証Bを含む情報と金額Aを送信し
て電子現金の発行を要求し、(6) 上記第2機関は上記利
用者からの上記利用許可証を含む情報に署名を与えて上
記利用者に電子現金Cを含む情報として送信し、(7) 上
記利用者は、上記利用許可証Bが上記公開情報Nと上記
仮名Iに対する署名になっていること、及び上記電子現
金Cが利用許可証Bのもとで使用可能なことを検証した
後に、上記乱数bと上記秘密情報を用いて第3者へ支払
を行ない、(8) 上記第3者は上記電子現金Cに関する決
済のため、上記利用者との全ての交信情報を上記第2機
関に送信し、(9) 不正行為の可能性が生じた場合には、
上記第1機関の管理する上記仮名Iと上記公開情報Nの
上記少なくとも一方と、上記実名IDU との対応関係を検
索し、上記仮名Iと上記公開情報Nを公開して不正行為
を防止可能する。
The traceable electronic cash carrying method according to the second aspect of the present invention includes the following processing steps: (1) The user is the real name ID U and the public information N corresponding to the secret information.
(2) The first institution, after confirming the identity of the user, generates a pseudonym I for the user, and transmits at least one of the pseudonym I and the public information N. the correspondence between the real name ID U and managed in secret, (3) the first engine performs signature to the public information N and pseudonym I, and sends the signature and the pseudonym I to said user, ( Four)
The user obtains the usage permit B from the signature from the first institution, stores the usage permit B together with the pseudonym I, and (5) the user at least sends the second institution to the second institution. Information including the random number b and the license B and the amount A are transmitted to request the issuance of electronic cash, and (6) the second institution signs the information including the license from the user. And sends the information as electronic cash C to the user. (7) The user must confirm that the license B is a signature for the public information N and the pseudonym I, and the electronic cash C After verifying that it can be used under the license B, the third party pays using the random number b and the secret information. (8) The third party makes a payment for the electronic cash C. Therefore, all communication information with the above user is sent to the above second organization, and (9) If the possibility of occurs,
It is possible to prevent the misconduct by searching the correspondence relationship between the at least one of the pseudonym I and the public information N managed by the first agency and the real name ID U, and publicizing the pseudonym I and the public information N. To do.

【0028】この発明の第3の観点による追跡可能な電
子現金を実施する装置は、利用許可証を発行し、電子現
金を発行する機関であり、以下を含む:利用者から公開
情報Nと、上記利用者の実名IDU を含む情報を受信し、
上記実名IDU に対応する仮名Iを生成する仮名生成手段
と、上記仮名Iと上記公開情報Nの少なくとも一方と、
上記実名IDU との対応関係を保持する対応関係メモリ手
段と、上記公開情報Nと上記仮名を含む情報に対し利用
許可証用秘密鍵を使って第1の署名用関数DeBにより署
名をして利用許可証Bを含む情報として上記利用者に送
信する利用許可証用署名手段と、上記利用者から受信し
た上記利用許可証Bを含む情報に対し第2の署名用関数
eCにより署名を行い、電子現金情報として上記利用者
に送信する電子現金用署名手段。
A traceable electronic cash implementing apparatus according to a third aspect of the present invention is an institution for issuing a license and issuing electronic cash, and includes the following: public information N from a user, Received the information including the real name ID U of the above user,
Kana generation means for generating a Kana I corresponding to the real name ID U , at least one of the Kana I and the public information N,
Correspondence memory means for holding a correspondence relationship with the real name ID U, and a signature with the first signature function DeB using the secret key for the license to the information including the public information N and the pseudonym. And a signature means for transmitting a license to the user as information including the license B and a second signature function DeC for the information including the license B received from the user. Electronic cash signature means for performing and transmitting to the user as electronic cash information.

【0029】[0029]

【発明の実施の形態】以下では、この発明の一実施例に
ついて説明する。図1にこの発明の原理構成図を示し、
銀行BK、利用者US、および小売店SHは例えば通信
回線を介して接続されているが、情報を記録できるIC
カード等を介しての接続であってもよい。第1実施例 先ず、銀行BKは、システム構築時に公開鍵例えばeB
と秘密鍵例えばdB を生成し、公開鍵eB を公開する。
この公開鍵eB はそれぞれの利用者がこの電子現金シス
テムに加入する際の、利用許可証の作成/検証に用い
る。利用者は、信託機関から電子現金利用のための許可
証Bを発行してもらう。ただし、この実施例は銀行BK
が利用許可証を発行する信託機関をかねている場合を示
している。
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described below. FIG. 1 shows a block diagram of the principle of the present invention.
The bank BK, the user US, and the retail store SH are connected via, for example, a communication line, but an IC that can record information
The connection may be via a card or the like. First Embodiment First, the bank BK uses a public key such as e B when the system is constructed.
Then, a private key, for example, d B is generated, and the public key e B is made public.
This public key e B is used for creating / verifying a usage permit when each user subscribes to this electronic cash system. The user has the trust organization issue a permit B for using electronic cash. However, this embodiment is a bank BK
Shows the case where the device also serves as a trust institution that issues the usage permit.

【0030】つぎに銀行BKは電子現金の作成/検証用
に公開鍵例えばeC と秘密鍵例えばdC を生成する。こ
れらの鍵の組(eC,dC) は電子現金の金額ごと例えば、
100円,500円,1000円,1万円などにより異
なっている。銀行BKは署名生成アルゴリズムDB とD
C を保持し、これら署名法に対応する2つの公開鍵eB
とeC を公開する。署名法としては、従来のRSAディ
ジタル署名法や他のブラインド署名法を使うことができ
る。ここで、eB は銀行BKの発行する利用許可証の正
当性の検査に使用し、eC は銀行BKが発行する電子現
金の正当性の検査に使用する。利用者USは、口座番号
等の識別情報IDU を用いる。利用許可証の発行処理 まず、利用者USが銀行で口座を開設するとき等に、利
用許可証Bを銀行BKから発行してもらう。正確には、
利用許可証は{B,(I,N,L)} であるが、説明を簡単にする
ために、Bを利用許可証とよぶ。利用者が銀行から利用
許可証を発行してもらう手順は、以下の通りである(図
2参照)。この手順は、それぞれの利用者が、口座の開
設時に1度だけ行なう。
Next, the bank BK generates a public key such as e C and a secret key such as d C for creating / verifying electronic cash. These key pairs (e C , d C ) are, for example, for each amount of electronic cash,
It differs by 100 yen, 500 yen, 1000 yen, 10,000 yen, etc. Bank BK uses signature generation algorithms D B and D
Two public keys e B holding C and corresponding to these signature methods
And e C are released. As a signature method, a conventional RSA digital signature method or another blind signature method can be used. Here, e B is used to check the validity of the license issued by the bank BK, and e C is used to check the validity of the electronic cash issued by the bank BK. The user US uses the identification information ID U such as the account number. Issuing process of usage permit First, when the user US opens an account at a bank, the usage permit B is issued from the bank BK. To be exact,
The usage permit is {B, (I, N, L)}, but for simplicity of explanation, B is called a usage permit. The procedure for a user to issue a usage permit from a bank is as follows (see Fig. 2). This procedure is performed by each user only once when opening an account.

【0031】ステップ1:利用者USは、素数生成器2
10を用いて2つの大きな素数P,Qを生成して、乗算
器211を用いて合成数N(N=P×Q)を計算する。
また利用者USは、素数生成器210を用いて素数Lを
選んで固定する。P,Q,NとLをメモリ20Mに記憶
する。 ステップ2:利用者USは識別情報IDU をN、Lと共に
銀行BKに送信する。
Step 1: The user US uses the prime number generator 2
10 is used to generate two large prime numbers P and Q, and the multiplier 211 is used to calculate a composite number N (N = P × Q).
Further, the user US selects and fixes the prime number L using the prime number generator 210. The P, Q, N and L are stored in the memory 20M. Step 2: The user US sends the identification information ID U together with N and L to the bank BK.

【0032】ステップ3:銀行BKは、識別情報IDU
対応する利用者USの身元を何らかの方法で確認をした
のちに、合格のときには、仮名生成器110を用いて仮
名Iを生成して、識別情報(実名)IDU と仮名Iの対応
関係を対応表11Tを用いて秘密に管理する。 ステップ4:銀行BKは、関数DeBで表される署名生成
アルゴリズムを実行するDeB計算器112を用いて署名
情報 Ψ=DeB(N,L,I)= g(N‖L‖I)dB mod nB …(1) を求めて、ΨとIを利用者USに送信する。ここで、記
号‖は連結を表す。
Step 3: The bank BK confirms the identity of the user US corresponding to the identification information ID U by some method, and if it passes, generates a pseudonym I using the pseudonym generator 110, The correspondence relationship between the identification information (real name) ID U and the pseudonym I is secretly managed using the correspondence table 11T. Step 4: The bank BK uses the D eB calculator 112 that executes the signature generation algorithm represented by the function D eB to generate the signature information Ψ = D eB (N, L, I) = g (N‖L‖I) dB mod n B (1) is calculated and Ψ and I are transmitted to the user US. Here, the symbol ‖ represents connection.

【0033】ステップ5:利用者USは、銀行BKから
受信した署名情報Ψをこの例ではそのまま利用許可証B
として、仮名Iとともにメモリ20Mに記憶する。 ステップ6:利用者USは、メモリ20Mから読みだし
た(I,P,Q,L) をべき乗根計算器212に与えて、秘密情
報S S=I1/L mod N …(2) を計算して、メモリ20Mに記憶する。
Step 5: The user US uses the signature information Ψ received from the bank BK as it is in this example, the usage permit B.
As the kana I, it is stored in the memory 20M. Step 6: The user US gives (I, P, Q, L) read from the memory 20M to the power root calculator 212 to calculate secret information S S = I 1 / L mod N (2) Then, it is stored in the memory 20M.

【0034】利用許可証の発行処理はこれで終了する。
ここでLは利用者が固有の値を生成してもよいし、電子
現金システム全体で同一の値を使ってもよい。後者の場
合には、Lは図示してないROMに保持しておればよ
く、メモリ20Mの記憶対象とはならない。この利用許
可証発行のやりとりを通信回線で行なう場合には、暗号
化処理を併用したほうがよい。また仮名生成器110で
は、申請時刻、有効期限、通番等の情報を一方向性関数
に入力することで、仮名Iを生成したほうがよい。ま
た、上述のステップ6における秘密情報Sは電子現金の
使用時に必要となる情報なので、ここで計算しておく必
要はなく、後述の電子現金による支払手順において計算
してもよい。電子現金の発行処理 つぎに、利用者USが銀行BKから電子現金Cを発行し
てもらう手順を示す。ここで、eC は先に述べたように
利用者が指定する電子現金の金額(例えば1万円)に対
応する銀行BKのディジタル署名用の公開鍵である。正
確には、電子現金は(C,X)であるが、説明を簡単に
するために、Cを電子現金とよぶ。利用者USが銀行B
Kから電子現金Cを発行してもらう手順は、以下の通り
である(図3参照)。この場合、乱数Rにもとづく認証
用情報Xを作成し、これを利用許可証Bと連結した情報
に対して銀行BKの署名を付けて電子現金を得るが、こ
の署名は先に述べたブラインド署名方法を用いる。
This completes the process of issuing the usage permit.
Here, the user may generate a unique value for L, or may use the same value for the entire electronic cash system. In the latter case, L may be held in a ROM (not shown) and is not a storage target of the memory 20M. When the communication of issuing the usage permit is performed through the communication line, it is better to use encryption processing together. In the kana generator 110, the kana I should be generated by inputting information such as the application time, expiration date, and serial number into the one-way function. Further, since the secret information S in the above-mentioned step 6 is information required when using electronic cash, it is not necessary to calculate it here, and may be calculated in the electronic cash payment procedure described later. Electronic Cash Issuing Process Next, a procedure for the user US to issue the electronic cash C from the bank BK will be described. Here, e C is the public key for the digital signature of the bank BK corresponding to the amount of electronic cash (for example, 10,000 yen) designated by the user as described above. To be precise, electronic cash is (C, X), but for simplicity of explanation, C is called electronic cash. User US is bank B
The procedure for issuing the electronic cash C from K is as follows (see FIG. 3). In this case, the authentication information X based on the random number R is created, and the information concatenated with the license B is attached with the signature of the bank BK to obtain electronic cash. This signature is the blind signature described above. Use the method.

【0035】ステップ1:利用者USは、乱数発生器2
20を用いて乱数Rを生成して、メモリ20Mに記憶
し、一方、その乱数Rと利用許可証Bの成分(N,L)
より、べき乗計算器221において次式 X=RL mod N …(3) により認証用情報Xを計算する。更に、メモリ20Mか
ら読みだした利用許可証Bと認証用情報Xとから、FeC
計算器222を用いて Z=FeC(X,B) …(4) を計算し、即ちブラインド署名前処理をして、このZを
IDU (必要時のみ)及び電子現金の所望の金額情報(例
えば1万円)と共に銀行BKに送信する。
Step 1: User US uses random number generator 2
A random number R is generated using 20 and stored in the memory 20M, while the random number R and the component (N, L) of the license B are used.
Therefore, the power calculator 221 calculates the authentication information X by the following expression X = RL mod N (3). Further, based on the usage permit B and the authentication information X read from the memory 20M, F eC
The calculator 222 is used to calculate Z = F eC (X, B) (4), that is, blind signature preprocessing is performed to calculate Z
It is sent to the bank BK together with ID U (only when necessary) and desired amount of electronic cash information (for example, 10,000 yen).

【0036】ステップ2:銀行BKは、電子現金の金額
に対応する秘密鍵dC を用いてDeC計算器120を用い
て Θ=DeC(Z) …(5) を求め、つまりZに対し仮署名をして利用者USに送信
する。同時に、利用者の口座から該当する金額を引き落
とすか、何らかの手段で利用者から該当する金額を受領
する。なお、この実施例では、銀行BKが式(5)による
仮署名をするのに先立って、従来行ったような抜き打ち
検査を行わない。
Step 2: The bank BK uses the secret key d C corresponding to the amount of electronic cash to obtain Θ = D eC (Z) (5) using the D eC calculator 120, that is, for Z A temporary signature is sent to the user US. At the same time, either withdraw the applicable amount from the user's account or receive the applicable amount from the user by some means. In this embodiment, the bank BK does not carry out the unannounced inspection as in the prior art prior to the provisional signature by the formula (5).

【0037】ステップ3:利用者USは、指定した金額
の電子現金CをGeC計算器223を用いて C=GeC(Θ) …(6) で計算し、つまりブラインド署名後処理を行ってCを得
る。ここでは、図2における利用許可証を発行する銀行
BKが図3で示すように電子現金も発行する場合につい
て説明したが、図3における電子現金を別の銀行又は信
託機関で発行することによりプライバシの保全及び電子
現金の安全性をより高めることができる。電子現金による支払 つぎに、利用者USが銀行BKより発行された電子現金
Cを用いて、小売店SHで支払うには次のステップを実
行する(図4参照)。
Step 3: The user US uses the G eC calculator 223 to calculate C = G eC (Θ) ... (6) using the G eC calculator 223, that is, performs the blind signature post-processing. Get C. Here, the case where the bank BK that issues the usage permit in FIG. 2 also issues electronic cash as shown in FIG. 3 is explained. However, by issuing the electronic cash in FIG. It is possible to further improve the security of electronic money and the safety of electronic cash. Payment by Electronic Cash Next, the following steps are performed for the user US to pay at the retail store SH using the electronic cash C issued by the bank BK (see FIG. 4).

【0038】ステップ1:利用者USは、(N,L,I,B,X,
C)を小売店SHへ送信する。 ステップ2:小売店SHは利用許可証Bの(N,L,I)に対
する正当性を、VeB計算器310を用いて、Bが VeB((N,L,I),B)=OK 即ち BeB mod N =(N‖L‖I) …(7) を満たすこと、つまりBがN,L,Iに対する署名にな
っていることを確信し、更に、電子現金Cの(X,B)
に対する正当性を、VeC計算器311を用いて、Cが VeC((X,B),C)=OK 即ち CeC mod N=(X‖B) …(8) を満たすこと、つまりCがBのもとで使用可能となるこ
とをそれぞれ確認する。BとCが正当な場合には、小売
店SHは、質問生成器312を用いて質問E∈Z L
{0,1,…,L-1}を生成して利用者USへ送信する。不合
格の場合には、小売店SHはこのプロトコルを停止す
る。
Step 1: The user US uses (N, L, I, B, X,
C) is sent to the retail store SH. Step 2: The retail store SH confirms (N, L, I) of the license B
Justification for VeBUsing the calculator 310, B is VeB((N, L, I), B) = OK, that is, BeB mod N = (N || L || I) (7) is satisfied, that is, B becomes a signature for N, L, and I.
I am convinced that there is an electronic cash C (X, B)
Justification for VeCUsing the calculator 311, C is VeC((X, B), C) = OK, that is, CeC mod N = (X | B) ... (8) is satisfied, that is, C can be used under B.
And confirm respectively. If B and C are legitimate, retail
The store SH uses the question generator 312 to ask the question EεZ. L=
Generate {0, 1, ..., L-1} and send it to the user US. Disagreement
In some cases, retail SH will stop this protocol.
You.

【0039】ステップ3:利用者USは、小売り店30
0の質問に回答してメモリ20Mから秘密情報Sと(N,
R) を読みだしてべき乗剰余計算器231に引渡し、べ
き乗剰余計算器231で回答Yを次のように計算して、
小売店SHへ送信する。 Y=R・SE mod N …(9) ステップ4:小売店SHは、べき乗剰余計算器313で
X・IEmod N を演算し、べき乗剰余計算器314でYL
mod Nを演算し、これ等両演算結果を比較器315で比
較する。つまり次式の関係を満たすかを検査する。
Step 3: The user US is the retail store 30
In response to the question 0, the secret information S and (N,
R) is read out and passed to the modular exponentiation calculator 231 and the answer Y is calculated by the modular exponentiation calculator 231 as follows,
Send to retail store SH. Y = R · S E mod N (9) Step 4: The retail store SH uses the modular exponentiation calculator 313.
X · IE mod N is calculated, and the power residue calculator 314 calculates Y L
The mod N is calculated, and the two calculation results are compared by the comparator 315. That is, it is checked whether the relation of the following equation is satisfied.

【0040】 YL ≡ X・IE(mod N) …(10) 式(9)で表される回答Y中のSは(2)式で与えられるか
ら、(10)式の関係を満せばこの電子現金は正しいもの
として小売店SHは電子現金Cを1万円として受理す
る。上述の電子現金支払手順において、利用者USと小
売店SHの結託によって銀行BKに対し決済時に不正に
金額を払い込ませることを防止するために、ステップ2
と3を次のように強化してもよい。即ちステップ2で、
小売店SHは乱数dを生成し、Eを送信する代わりに、
小売店SHの識別情報IDS 、時刻t、およびdを利用者
USに送信すると共に、小売店SHは、E=f(IDS,t,d)
でEを計算する。ここで、fは一方向性関数とする。ス
テップ3では、利用者USも同様にE=f(IDS,t,d)でE
を計算する。決済 最後に、小売店SHと銀行BKの間の決済方法について
説明する(図5参照)。小売店SHは、利用者との電子
現金使用時の全ての交信履歴H、つまり(N,L,I,B,X,
C),E,Yを銀行BKに提出する。銀行BKは、Hの
正当性を検査し、つまり(7)式と(8)式が共に成立する
かを検査し、この検査に合格すれば、Hを記憶しておく
と共に小売店SHの口座に該当する金額を払い込む(も
しくは、何らかの手段で該当する金額を小売店に支払
う)。銀行BKは、電子現金の不正使用を見つけると、
仮名Iと識別情報IDの対応関係から不正者の識別情報ID
を確定する。
Y L ≡X · IE (mod N) (10) Since S in the answer Y expressed by the formula (9) is given by the formula (2), the relation of the formula (10) must be satisfied. If this electronic cash is correct, the retail store SH accepts the electronic cash C as 10,000 yen. In the above-mentioned electronic cash payment procedure, in order to prevent the bank BK from illegally paying the amount at the time of settlement due to the collusion between the user US and the retail store SH, step 2
And 3 may be strengthened as follows. That is, in step 2,
The retail store SH generates a random number d and instead of sending E,
The identification information ID S of the retail store SH, the times t, and d are transmitted to the user US, and the retail store SH sends E = f (ID S , t, d).
Calculate E with. Here, f is a one-way function. In step 3, the user US also E = f (ID S , t, d)
Is calculated. Payment Finally, a payment method between the retail store SH and the bank BK will be described (see FIG. 5). The retail store SH receives all the communication history H when using electronic cash with the user, that is, (N, L, I, B, X,
Submit C), E, and Y to bank BK. The bank BK checks the legitimacy of H, that is, whether the expressions (7) and (8) are both satisfied, and if this check is passed, H is stored and the account of the retail store SH is stored. Pay the applicable amount (or pay the applicable amount to the retail store by some means). Bank BK finds fraudulent use of electronic cash,
From the correspondence between the pseudonym I and the identification information ID, the identification information ID of the illicit person
Confirm.

【0041】以上の利用許可証の発行を除く電子現金の
発行処理から決済までは米国特許No.4,977,595中の第2
実施例に記載した手法において、その利用者情報Vi
この発明の仮名Iとして処理した場合とほぼ一致してお
り、この点から、米国特許No.4,977,595中の第2実施例
に記載した、より信頼度を高めた手法もこの発明に同様
に適用できる。第2実施例 利用者の銀行に対する信頼感を向上するために、銀行B
Kの電子現金に関わる複数の処理機能をそれぞれ異なる
部局に実行させる場合についての実施例を示す。ここで
は、例えば、利用者の身元を確認する部局101、利用
許可証を発行する部局102に分担した場合について図
6に示す。新たに部局101と部局102の間で引き継
ぐ情報として関連づけ情報αを導入する。部局101は
利用者の識別情報(以下では実名とも呼ぶ)IDと関連づ
け情報αとの対応を管理し、部局102は関連づけ情報
αと仮名Iの対応を管理する。これによって、2つの部
局101、102が協力した場合にのみ、関連づけ情報
αをキーにして仮名Iと実名IDの対応関係を得られるよ
うになる。3つ以上の部分に分割するには、同様にして
新たに関連づけ情報(α,β,γ,…)を追加すればよ
いのでここでは省略する。
The second process in US Pat. No. 4,977,595 is from the issuance process of electronic cash to the settlement except the above issuance of the license.
In the method described in the embodiment, it is almost the same as the case where the user information V i is processed as the pseudonym I of the present invention, and from this point, it is described in the second embodiment in US Pat. A method with higher reliability can be similarly applied to the present invention. Second Embodiment In order to improve the user's trust in the bank, the bank B
An example of a case where a plurality of processing functions related to electronic cash of K are executed by different departments will be described. Here, for example, FIG. 6 shows a case in which the department 101 that confirms the user's identity and the department 102 that issues a usage permit share the responsibility. The association information α is newly introduced as information to be handed over between the department 101 and the department 102. The department 101 manages the correspondence between the identification information (hereinafter also referred to as real name) ID of the user and the association information α, and the department 102 manages the association between the association information α and the pseudonym I. As a result, only when the two departments 101 and 102 cooperate with each other, it becomes possible to obtain the correspondence relationship between the pseudonym I and the real name ID by using the association information α as a key. In order to divide it into three or more parts, it is sufficient to add new association information (α, β, γ, ...) In the same manner, so the description is omitted here.

【0042】実施例1との実施上の相違は、利用許可証
の発行処理だけなので、以下では利用許可証発行処理に
関連する処理のみについて実施例を説明する。ただし、
パラメータLはシステム内で一意とする。銀行の部局1
02は署名生成アルゴリズムDB を保持する。銀行BK
は、この署名法に対応する公開鍵eB を公開する。ここ
で、eB は銀行BKの発行する利用許可証の正当性の検
査に使用する。利用者USは、口座番号等の識別情報ID
Uを用いる。部局101と部局102の間で引き継ぐ情
報として関連づけ情報αを用いる。利用許可証の発行処理 まず、利用者USが銀行BKで口座を開設するとき等
に、利用許可証Bを銀行BKから発行してもらう。正確
には、利用許可証は(B,{I,N}) であるが、説明を簡単に
するために、Bを利用許可証とよぶ。利用者USが銀行
BKから利用許可証Bを発行してもらう手順は、以下の
通りである(図6参照)。この手順は、それぞれの利用
者が、口座の開設時に1度だけ行なう。
The embodiment is different from the first embodiment only in the processing of issuing the usage permit, and therefore only the processing related to the processing of issuing the usage license will be described in the following. However,
The parameter L is unique within the system. Bank department 1
02 holds the signature generation algorithm D B. Bank BK
Publishes the public key e B corresponding to this signature method. Here, e B is used for checking the validity of the license issued by the bank BK. User US is the identification information ID such as account number
Use U. The association information α is used as information to be handed over between the departments 101 and 102. Process of Issuing Usage Permit First, when the user US opens an account at the bank BK, the usage permit B is issued from the bank BK. To be precise, the license is (B, {I, N}), but for simplicity of explanation, B is called a license. The procedure for the user US to issue the usage permit B from the bank BK is as follows (see FIG. 6). This procedure is performed by each user only once when opening an account.

【0043】ステップ1:利用者USは、素数生成器2
10を用いて2つの大きな素数P,Qを生成して、乗算
器211を用いて合成数N(N=P×Q)を計算する。
P,Q,Nをメモリ20Mに記憶する。 ステップ2:利用者USはFeB計算器213を用いてN'
=FeB(N)を計算し、IDU とN' を銀行の部局101に送信
する。
Step 1: The user US uses the prime number generator 2
Generate two large prime numbers P and Q using 10 and multiply
The composite number N (N = P × Q) is calculated using the device 211.
The P, Q and N are stored in the memory 20M. Step 2: User US is FeBN'using the calculator 213
= FeBCalculate (N) and IDU And N'to the bank department 101
I do.

【0044】ステップ3:銀行の部局101は、利用者
USの身元を何らかの方法で確認をしたのちに、合格の
ときには、関連情報生成器113を用いて関連情報αを
生成して、実名IDU と関連情報αの対応関係を対応表11
T1を用いて秘密に管理し、銀行の部局102にαとN'
を与える。 ステップ4:銀行の部局102は、仮名生成器110を
用いて仮名情報Iを生成して、関連情報αと仮名Iの対
応関係を対応表11T2を用いて秘密に管理する。
Step 3: The bank department 101 confirms the identity of the user US by some method, and if the result is acceptable, the related information generator 113 is used to generate the related information α, and the real name ID U Correspondence table 11 and the corresponding information α
It is managed secretly using T 1 , and α and N ′ are assigned to the bank department 102.
give. Step 4: The bank department 102 generates the pseudonym information I using the pseudonym generator 110, and secretly manages the correspondence relationship between the related information α and the pseudonym I using the correspondence table 11T 2 .

【0045】ステップ5:銀行の部局102は、DeB
算器112を用いて Ψ=DeB(N'×I) (11) を求めて、ΨとIを利用者USに送信する。 ステップ6:利用者USは、銀行からの受信データΨ
を、GeB計算器214に引き継ぎ、B=GeB(Ψ)で利用
許可証Bを計算して、仮名Iとともにメモリ20Mに記
憶する。
Step 5: The bank department 102 obtains Ψ = D eB (N ′ × I) (11) using the D eB calculator 112 and transmits Ψ and I to the user US. Step 6: User US receives data Ψ from the bank
Is transferred to the G eB calculator 214, the usage permit B is calculated with B = G eB (Ψ), and stored in the memory 20M together with the pseudonym I.

【0046】ステップ7:利用者USは、メモリ20M
から読みだした(I,P,Q) をべき乗根計算器212に引き
ついで、秘密情報Sを S= I1/L mod N をみたすように計算して、メモリ20Mに記憶する。署
名BはVeB(N×I,B)=OKをみたすことに注意。
Step 7: The user US has the memory 20M
The (I, P, Q) read from the above is attracted to the power root calculator 212, the secret information S is calculated so as to satisfy S = I 1 / L mod N, and stored in the memory 20M. Note that signature B satisfies V eB (N × I, B) = OK.

【0047】上記のやりとりを通信回線で行なう場合に
は、暗号化処理を併用したほうがよい。仮名生成110
では、例えば利用許可証の申請時刻、有効期限、通番等
の情報を一方向性関数に入力することで、仮名Iを生成
したほうがよい。また、第1及び第2実施例では、図2
の対応表11Tに利用者の識別情報IDU と仮名を対応さ
せて保持させた場合を示したが、この発明の原理はDeB
計算器112による銀行の署名の対象に利用者自身の識
別情報IDU を含まないようにすると共に、署名の対象と
識別情報IDU との対応関係を対応表11Tに保持してお
くことにある。従って、対応表11Tに保持する情報と
して、識別情報IDU と仮名Iの対応の代わりに、識別情
報IDU とNの対応を保持してもよい。第3実施例 図7に示す第3の実施例では電子現金として米国特許N
o.5,224,162に示されている分割利用可能な電子現金に
この発明を適用する場合を示す。この実施例も第1の実
施例と同じ原理を使っており、銀行BKは、利用者US
の要求に従って識別情報IDU に対応する仮名Iを生成
し、その対応関係を対応表に秘密に保持すると共に、仮
名Iを使って利用許可証を発行する。その後、銀行BK
は、利用者USの要求に従い、利用者にある金額の電子
現金を発行する。利用者は、その電子現金を額面金額に
なるまで何回でも各種第三者、例えば小売店SHの支払
いに用いることができる。最後に、各小売店は、利用者
の各支払い毎に銀行で決済を行う。この実施例において
も対応表に保持する情報はIDU とIの対応関係の代わり
に、IDU とNの対応関係を保持してもよい。
When the above-mentioned exchange is carried out through a communication line, it is better to use encryption processing together. Kana generation 110
Then, for example, the pseudonym I should be generated by inputting information such as the application time of the license, the expiration date, and the serial number into the one-way function. In addition, in the first and second embodiments, FIG.
The correspondence table 11T of No. 1 shows the case where the user's identification information IDU and the pseudonym are held in correspondence with each other. The principle of the present invention is D eB
Calculator 112 together so as not to include the identification information ID U of users themselves subject to bank signature by, certain correspondence between the sign of the target and the identification information ID U that holds the correspondence table 11T . Therefore, as the information held in the correspondence table 11T, instead of the correspondence between the identification information ID U and the pseudonym I, the correspondence between the identification information ID U and N may be held. Third Embodiment In the third embodiment shown in FIG. 7, US Pat.
The case where the present invention is applied to the electronic cash that can be divided and used as shown in o.5,224,162 is shown. This embodiment also uses the same principle as the first embodiment, and the bank BK uses the user US
In response to the request, the pseudonym I corresponding to the identification information ID U is generated, the correspondence relationship is kept secret in the correspondence table, and the usage certificate is issued using the pseudonym I. After that, the bank BK
Issues a certain amount of electronic cash to the user according to the request of the user US. The user can use the electronic cash for payment of various third parties, for example, the retail store SH, until the face value is reached. Finally, each retailer makes a payment at the bank for each payment made by the user. Also in this embodiment, the information held in the correspondence table may hold the correspondence between ID U and N instead of the correspondence between ID U and I.

【0048】銀行BKは署名生成アルゴリズムDB とD
C を保持する。図7に示すように銀行BKは、この利用
許可証発行時と電子現金発行時に使われる署名手順にお
いて使用される2つの公開鍵eB とeC を公開する。こ
の実施例では、ブラインド署名法として従来のRSAデ
ィジタル署名法を使う場合について説明する。ここで、
公開鍵eB は銀行BKの発行する利用許可証の正当性の
検査に使用し、公開鍵eC は銀行BKが発行する電子現
金の正当性の検査に使用する。利用者USは、例えば口
座番号等の識別情報IDU を用いる。
The bank BK uses the signature generation algorithms D B and D
Hold C As shown in FIG. 7, the bank BK discloses two public keys e B and e C used in the signature procedure used when issuing the license and when issuing the electronic cash. In this embodiment, a case where a conventional RSA digital signature method is used as a blind signature method will be described. here,
The public key e B is used for checking the validity of the license issued by the bank BK, and the public key e C is used for checking the validity of the electronic cash issued by the bank BK. The user US uses the identification information ID U such as an account number.

【0049】例えば、銀行BKが利用許可証に対応する
情報として、RSAディジタル署名を用いる場合には秘
密鍵(dA,nA) 及び公開鍵(eA,nA) の対を作成しておき、
利用許可証の正当性の検査のために(eA,nA) を上記の公
開鍵eB として公開しておき、秘密鍵(dA,nA) を上記秘
密鍵dB として保持しておく。また、銀行BKが電子現
金の金額に対応する情報として、RSAディジタル署名
で用いる場合には秘密鍵(d'A,n'A) 及び公開鍵(e'A,
n'A) の対を作成しておき、電子現金の正当性の検査の
ために(e'A,n'A) を上記の公開鍵eC としてその金額と
共に公開しておく。
For example, when the bank BK uses an RSA digital signature as the information corresponding to the license, a pair of private key (d A , n A ) and public key (e A , n A ) is created. Every
In order to check the validity of the license, (e A , n A ) is published as the above public key e B , and the private key (d A , n A ) is held as the above secret key d B. deep. In addition, as the information bank BK corresponding to the amount of electronic cash, secret key (d 'A, n' A ) in the case of using the RSA digital signature and public key (e 'A,
'Leave create A) pairs for testing the validity of the electronic cash (e' n keep the A, n 'A) to the public with the amount as the public key e C above.

【0050】以下の実施例では、利用許可証用の署名生
成アルゴリズムDB は DB(x)= xdAmod nA 電子現金用の署名生成アルゴリズムDC は DC(x)=xd'A mod n'A とする。また、ブラインド署名前処理関数Fe は x=Fe(m)=reA×m mod n ここでrは攪乱するための乱数、ブラインド署名後処理
e は Ge(Ψ)=Ψ/r mod n とする。
In the following embodiment, the signature generation for the license is used.
Algorithm DBIs DB(x) = xdAmod nA Signature generation algorithm D for electronic cashCIs DC(x) = xd'Amod n 'A  And Also, the blind signature preprocessing function FeIs x = Fe(m) = reA× m mod n where r is a random number for perturbation, blind signature post-processing
GeIs GeLet (Ψ) = Ψ / r mod n.

【0051】この実施例においては、分割利用可能性
(一回発行された電子現金を額面の金額になるまで何回
でも使うことが出来)を効率的に実現するために、前述
の米国特許No.5,224,162に示されている階層構成テーブ
ルと呼ばれる、木構造のテーブルを導入する。銀行BK
は、一方向性関数gと3つのランダム関数fΓ,fΛ,
fΩ を定め公開しておく。これら3つの関数は、階層
構成テーブル(ΓテーブルとΛテーブル)の各ノードの
値を定めるために利用される。
In this embodiment, in order to efficiently realize the split availability (electronic cash issued once can be used any number of times until the face value is reached), the above-mentioned US Patent No. Introduce a tree-structured table called a hierarchical structure table shown in .5,224,162. Bank BK
Is a one-way function g and three random functions fΓ, fΛ,
Define fΩ and make it public. These three functions are used to determine the value of each node in the hierarchical structure table (Γ table and Λ table).

【0052】この階層構成テーブルは、電子現金の金額
及びその使用最小単位(例えば、1円単位等)に対応し
て定められる。たとえば、25円単位で、100円の電
子現金を利用する場合の階層的構造テーブルを図8A及
び図8Bに示す。ここで、例えば、75円を使う場合、
ノード"00"(50円相当)とノード"010" (25円相
当)が該当するノードとなる。この該当ノードは、以下
のルールで定められる。
This hierarchical structure table is determined corresponding to the amount of electronic cash and the minimum unit of use (for example, one yen unit). For example, FIGS. 8A and 8B show a hierarchical structure table in the case of using electronic cash of 100 yen in units of 25 yen. Here, for example, when using 75 yen,
The node "00" (equivalent to 50 yen) and the node "010" (equivalent to 25 yen) are the corresponding nodes. This corresponding node is determined by the following rules.

【0053】(a) あるノードの直下の子ノードの該当金
額の合計が、そのノードの該当金額となる。 (b) あるノードが一度使われた後は、そのノードと連結
するすべての親(先祖)ノードおよび子(子孫)ノード
は利用してはならない。 (c) 各ノードは、一回以上使用してはならない。
(A) The sum of the applicable amounts of the child nodes immediately below a certain node is the applicable amount of the node. (b) After a node has been used once, all parent (ancestor) and child (descendant) nodes connected to the node must not be used. (c) Each node may not be used more than once.

【0054】このルールに従うと、ノード"00"とノー
ド"010" が使用された後で、使用できるノードは、ノー
ド"011" (25円相当)のみである。つまり、上のルー
ルに従うことにより、使用できる合計金額は、額面通り
100円となると共に、25円単位でどのような使い方
でもできる。この階層的構造テーブルは、電子現金の額
面金額を大きくし、さらに利用単位金額を小さくすれ
ば、その階層が増えることになる。例えば、額面が10
0万円で、1円単位で利用できる電子現金の場合、その
階層は、およそ20となる(log2 1,000,000≒20)。
According to this rule, after the node "00" and the node "010" are used, only the node "011" (equivalent to 25 yen) can be used. In other words, by following the above rules, the total amount of money that can be used is 100 yen at face value, and any usage can be made in units of 25 yen. In this hierarchical structure table, if the face value of the electronic cash is increased and the usage unit amount is further reduced, the hierarchy is increased. For example, the face value is 10
In the case of electronic cash that can be used in units of 1 yen for 0,000 yen, the number of layers is about 20 (log 2 1,000,000 ≒ 20).

【0055】ここで、Γテーブルは、t以上の階層を持
っているものとし、利用者USが小売店SHで支払う金
額に対応するノードをΓj1・・jt(及び、Λj1・・jt)とす
る。ここで、j1,…,jt∈{0,1} である。通常、支払い金
額に対応するノードは複数あるが(例えば、上の例で
は、75円に対応するノードは、2つであった)、複数
ノード時の支払処理は、単一ノード時の支払い処理を単
に並列に実行するだけで良いため、以下では、単一ノー
ドに対する支払い処理のみを説明する。
Here, it is assumed that the Γ table has a hierarchy of t or more, and the node corresponding to the amount paid by the user US at the retail store SH is Γ j1 ·· jt (and Λ j1 ·· jt ). And Here, j 1 , ..., J t ε {0,1}. Normally, there are a plurality of nodes corresponding to the payment amount (for example, there were two nodes corresponding to 75 yen in the above example), but the payment processing at the time of multiple nodes is the payment processing at the time of a single node. Since it suffices to simply execute in parallel, only the payment process for a single node will be described below.

【0056】なお、以下の手順で用いる記号の意味をこ
こでまとめて記しておく。
The meanings of the symbols used in the following procedure are summarized here.

【0057】[0057]

【数20】 <z>QR= dz mod N では、d∈{±1,±2}であり、かつ dz mod Nが平方剰余
である。 <z>1= d'z mod N では、d'∈{1,2}であり、かつ(d'z/N)=1 である。 <z>-1= d"z mod N では、d"∈{1,2}であり、かつ (d"z/N)=-1 である。
(Equation 20) <z> QR = dz mod N, d ∈ {± 1, ± 2}, and dz mod N is the quadratic residue. In <z> 1 = d'z mod N, d'∈ {1, 2} and (d'z / N) = 1. <z> -1 = d "z mod N, d" ∈ {1, 2}, and (d "z / N) = -1.

【0058】なお、以上において、(a/b) はヤコビ記号
を意味する。ヤコビ記号の計算方法は、例えば、藤崎、
森田、山本著:「数論への出発(数学セミナ増刊号)」
(日本評論社)に記されている。利用許可証の発行処理 まず、利用者USは利用許可証Bを銀行BKから発行し
てもらう。この手順は第1の実施例における図2に示す
手順と原理的に同じであるが、ここでは素数Lは使用し
ていない。従って、利用許可証は{B,(I,N)} であるが、
説明を簡単にするために、Bを利用許可証とよぶ。ま
た、この実施例では電子現金の使用時に第1の実施例で
使用した利用者秘密情報Sを使用しない。
In the above, (a / b) means the Jacobi symbol. The method of calculating the Jacobi symbol is, for example, Fujisaki,
Morita and Yamamoto: "The departure to number theory (mathematics seminar special issue)"
(Nippon Hyoronsha). Issuing Process of Usage License First, the user US has the bank BK issue the usage license B. This procedure is the same as the procedure shown in FIG. 2 in the first embodiment in principle, but the prime number L is not used here. Therefore, the license is {B, (I, N)},
For ease of explanation, B is called a license. Further, in this embodiment, the user secret information S used in the first embodiment is not used when using electronic cash.

【0059】利用者が銀行から利用許可証を発行しても
らう手順は、以下の通りである(図9参照)。この手順
は、それぞれの利用者が、口座の開設時に1度だけ行な
う。 ステップ1:利用者USは、素数生成器210を用いて
P≡ 3(mod 8)及びQ≡7(mod 8)をみたす2つの大きな素
数P,Qを生成して、乗算器211を用いてこれら素数
の合成数N(N=P×Q)を計算する。P,Q,Nをメ
モリ20Mに記憶する。
The procedure for a user to issue a usage permit from a bank is as follows (see FIG. 9). This procedure is performed by each user only once when opening an account. Step 1: User US uses prime number generator 210
Two large prime numbers P and Q satisfying P≡3 (mod 8) and Q≡7 (mod 8) are generated, and a composite number N (N = P × Q) of these prime numbers is calculated using a multiplier 211. To do. The P, Q and N are stored in the memory 20M.

【0060】ステップ2:利用者USはその識別情報ID
U とNを銀行BKに送信する。 ステップ3:銀行BKは、利用者USの身元を何らかの
方法で確認をしたのちに、合格のときには、仮名生成器
110を用いて仮名Iを生成して、識別情報(実名)ID
U と仮名I(又はN)の対応関係を対応表11Tに記録
して秘密に管理する。
Step 2: User US identifies his ID
Send U and N to bank BK. Step 3: After confirming the identity of the user US by some method, the bank BK generates a pseudonym I using the pseudonym generator 110 when it passes, and the identification information (real name) ID.
The correspondence relationship between U and Kana I (or N) is recorded in the correspondence table 11T and secretly managed.

【0061】ステップ4:銀行BKは、DeB計算器11
2を用いて下記の署名 Ψ=DeB(N,I)= g(N‖I)dBmod nB (12) を求めて、ΨとIを利用者USに送信する。 ステップ5:利用者USは、銀行BKからの受信データ
Ψを利用許可証Bとして、仮名Iとともにメモリ20M
に記憶する。
Step 4: The bank BK uses the D eB calculator 11
2 is used to obtain the following signature Ψ = D eB (N, I) = g (N / I) dB mod n B (12), and Ψ and I are transmitted to the user US. Step 5: The user US uses the received data Ψ from the bank BK as the usage certificate B and the memory 20M together with the pseudonym I.
To memorize.

【0062】上記の利用者USと銀行BKのやりとりを
通信回線で行なう場合には、暗号化処理を併用するのが
好ましい。また、仮名生成器110では、申請時刻、有
効期限、通番等の情報を一方向性関数に入力すること
で、仮名Iを生成したほうがよい。電子現金の発行処理 次に、利用者USが銀行BKから電子現金Cを発行して
もらう手順を示す。ここでeC は、利用者が指定する電
子現金の金額(例えば1万円)に対応する銀行BKのデ
ィジタル署名用の公開鍵である。正確には、電子現金は
(C,b,B) であるが、説明を簡単にするために、Cを電子
現金とよぶ。利用者USが銀行BKから電子現金Cを発
行してもらう手順は以下の通りである(図10参照)。
When the above-mentioned user US and the bank BK are exchanged through a communication line, it is preferable to use an encryption process together. Further, in the kana generator 110, the kana I should be generated by inputting information such as the application time, the expiration date, and the serial number into the one-way function. Electronic Cash Issuing Process Next, a procedure for the user US to issue the electronic cash C from the bank BK will be described. Here, e C is a public key for digital signature of the bank BK corresponding to the amount of electronic cash (for example, 10,000 yen) designated by the user. To be exact, electronic cash is
Although it is (C, b, B), C is called electronic cash for simplicity of explanation. The procedure by which the user US issues the electronic cash C from the bank BK is as follows (see FIG. 10).

【0063】ステップ1:利用者USは、乱数発生器2
20を用いて乱数bとrを生成して、bをメモリ20M
に記憶し、一方、その乱数bとメモリ20Mから読みだ
した利用許可証Bより、一方向性関数であるg計算器2
21を用いてg(B‖b)を計算し、更に、FeC計算器22
2を用いて Z=FeC(g(B‖b))=reCg(B‖b)mod nC (13) を計算し、ZをIDU (必要時のみ)、電子現金の金額情
報A(例えば1万円)と共に銀行BKに送信する。
Step 1: The user US uses the random number generator 2
Random numbers b and r are generated using 20 and b is stored in the memory 20M.
On the other hand, from the random number b and the license B read from the memory 20M, the g calculator 2 which is a one-way function
21 is used to calculate g (B | b), and the F eC calculator 22
2 is used to calculate Z = F eC (g (B ‖b)) = r eC g (B ‖b) mod n C (13), Z is ID U (only when necessary), and amount information of electronic cash It is sent to the bank BK together with A (for example, 10,000 yen).

【0064】ステップ2:銀行BKは、電子現金の金額
Aに対応する秘密鍵dC を用いてD eC計算器120によ
り Θ=DeC(Z)=ZeCmod nC (14) を求め、利用者USに送信する。同時に、利用者USの
口座から該当する金額Aを引き落とすか、何らかの手段
で利用者から該当する金額Aを受領する。
Step 2: Bank BK pays the amount of electronic cash
Private key d corresponding to AC Using D eCBy calculator 120
R Θ = DeC(Z) = ZeCmod nC Request (14) and send to user US. At the same time, for the user US
Withdraw the applicable amount A from your account, or use some means
Receives the corresponding amount A from the user.

【0065】ステップ3:利用者USは、指定した金額
Aの電子現金CをGeC計算器223を用いて C=GeC(Θ)=Θ/r mod nC (15) で計算する。電子現金による支払 つぎに、利用者USが銀行BKより発行された電子現金
Cを用いて、小売店SHで支払う場合について説明する
(図11及び12参照)。
Step 3: The user US uses the G eC calculator 223 to calculate the electronic cash C of the designated amount A by C = G eC (Θ) = Θ / r mod n C (15). Payment by Electronic Cash Next, a case where the user US pays at the retail store SH using the electronic cash C issued by the bank BK will be described (see FIGS. 11 and 12).

【0066】ステップ1:利用者USは、まず、メモリ
20Mから読みだしたC,N,P,Q からΓ計算器236を用
いて、次式を演算し、つまりfΓ(C‖0‖N)を計算し、
かつこの値に対し、P,Qを用いて±1,±2の何れか
の補正を行ってN上での平方剰余Γ0 を求める。
Step 1: The user US first calculates the following equation from C, N, P, Q read from the memory 20M using the Γ calculator 236, that is, fΓ (C‖0‖N) And calculate
And, with respect to this value, either of ± 1 or ± 2 is corrected using P and Q to obtain the square residue Γ 0 on N.

【0067】[0067]

【数21】 次に、電子現金Cと利用金額に対応するノードj1…jq
とNをΩ計算器237に入力してΩj1・・jq (q=1,…,t)
を生成する。
(Equation 21) Next, the node j 1 ... j q corresponding to the electronic cash C and the usage amount
And N are input to the Ω calculator 237 and Ω j1 ... jq (q = 1, ..., t)
Generate

【0068】[0068]

【数22】 更に、Ωj1・・jq(q=1,…,t)のjq+1べき乗をべき乗計算器
232で求め、この結果とΓ0 のN上での剰余乗算を剰
余乗算器233で求め、その乗算結果のmod N上での 1/
2t 根、つまり利用金額Aに対応するノードの値j1…jt
のべき乗根XをP,Qを用いてべき乗根計算器234で
計算する。
(Equation 22) Further, a power calculator 232 obtains a power of j q + 1 of Ω j1 ·· jq (q = 1, ..., T), and a remainder multiplication of this result and Γ 0 on N is obtained by a remainder multiplier 233. 1 / on mod N of the multiplication result
2 t root, that is, the value j 1 ... j t of the node corresponding to the usage amount A
A power root calculator 234 calculates a power root X of P using P and Q.

【0069】[0069]

【数23】 ステップ2:利用者USは、メモリ20Mから読みだし
たI,N,X,B,b,C と利用金額に対応するj1,…,jtを小売店
SHに送る。 ステップ3:小売店SHは、(I,N) に対する署名Bの正
当性をVeB計算器310を用いて、Bが VeB((N,I),B)=OK 即ち BeB mod N= (N‖I) (19) を満たすことつまりBが(N,I) に対する署名になってい
ることを確認し、また署名Cの(B,b) に対する正当性
を、g計算器331とVeC計算器332を用いて、Cが VeC(g(B‖b),C)=OK 即ち CeC mod N=g(B‖b) (20) を満たすこと、つまりCがBのもとで使用可能なことを
確認する。この検査が不合格のときは以降の処理を中止
する ステップ4:小売店SHは、ヤコビ記号計算器333お
よび比較器334を用いて、Xが次の関係を満足するか
どうかを検証する。この検査が不合格のときは以降の処
理を中止する。
(Equation 23) Step 2: The user US sends I 1, N, X, B, b, C read from the memory 20M and j 1 , ..., J t corresponding to the usage amount to the retail store SH. Step 3: The retail store SH verifies the validity of the signature B with respect to (I, N) using the V eB calculator 310, where B is V eB ((N, I), B) = OK, that is, B eB mod N = It is confirmed that (N | I) (19) is satisfied, that is, B is a signature for (N, I), and the validity of the signature C for (B, b) is determined by g calculator 331 and V Using eC calculator 332, C satisfies V eC (g (B / b), C) = OK, that is, C eC mod N = g (B / b) (20), that is, C is under B Check that it can be used in. If this check fails, the subsequent processing is stopped Step 4: The retail store SH uses the Jacobian symbol calculator 333 and the comparator 334 to verify whether X satisfies the following relation. If this inspection fails, the subsequent processing is stopped.

【0070】(X/N)=−1 次に、C,NからΓ計算器322を用いて、(X / N) = − 1 Next, using the Γ calculator 322 from C and N,

【0071】[0071]

【数24】 を計算する。また、C,j1…jq,NからΩ計算器316
を用いて、Ωj1・・jq(q=1,…,t)を計算する。
(Equation 24) Is calculated. Also, from C, j 1 ... j q , N, the Ω calculator 316
Is used to calculate Ω j1 ... jq (q = 1, ..., t).

【0072】[0072]

【数25】 その計算結果のべき乗をべき乗計算器318で行い、Ω
2j j1・・jq を得る。更に、Γ計算器322からのfΓ(C
‖0‖N)と、べき乗計算器318からのべき乗計算結果
との剰余乗算を乗算器319で行う。一方、Xの2t
をべき乗計算器317で行い、これを剰余乗算器319
の出力で剰余除算器320で除算し、その結果と±1,
±2の比較を比較器321で行い、Xが次の関係を満足
するかどうかを検証する。この検査が不合格のときは以
降の処理を中止する。
(Equation 25) The power of the calculation result is calculated by the power calculator 318, and Ω
2j j1 ... jq is obtained. Further, fΓ (C from the Γ calculator 322
A multiplier 319 multiplies the remainder of the power calculation result from the power calculator 318 with the multiplier 319. On the other hand, it performs a multiply-2 t of X a power calculator 317, which modular multiplier 319
The remainder is divided by the remainder divider 320, and the result is ± 1,
Comparison of ± 2 is performed by the comparator 321, and it is verified whether X satisfies the following relationship. If this inspection fails, the subsequent processing is stopped.

【0073】[0073]

【数26】 ここで、dは±1,±2のいずれかの値である。 ステップ5:小売店SHは、この検査に合格すれば、質
問生成器312を用いて質問値をEi∈{0,1}(i=1,…,
K')を選び利用者USに送る。 ステップ6:利用者USは C,i,j1…jt,N,P,Q からΛ計
算器235を用いて、次式によりΛi(i=1,…,K') を計
算する。つまりfΛ( )に対しP,Qを用いて±1,±
2の何れかの補正をしてN上での平方剰余Λi を求め
る。
(Equation 26) Here, d is a value of either ± 1 or ± 2. Step 5: If the retail store SH passes this check, the retail store SH uses the question generator 312 to obtain the question value E i ε {0,1} (i = 1, ...,
Select K ') and send to user US. Step 6: The user US calculates Λ i (i = 1, ..., K ′) from C, i, j 1 ... J t , N, P, Q using the Λ calculator 235 by the following equation. That is, using P and Q for fΛ (), ± 1, ±
The square residue Λ i on N is obtained by performing any correction of 2.

【0074】[0074]

【数27】 i=1,…,K' つぎに、べき乗根計算器231で、次式の演算をP,Q
を用いて行い、その結果Yi を小売店SHに送信する。
[Equation 27] i = 1 ,.
And then send Y i to the retail store SH.

【0075】[0075]

【数28】 ステップ7:小売店SHは、ヤコビ記号計算器323お
よび比較器324を用いてYi が以下の関係をみたすか
を検証する。この検査が不合格のときは以降の処理を中
止する。 (Yi/N)=(-1)Ei (25) 情報 C,i,j1…jt,N をΛ計算器325に入力し、Yi
べき乗計算器326でYi 2とし、そのYi 2をΛ計算器3
25の出力で剰余除算器327において剰余除算を行
い、その結果d'を比較器328を用いて±1,±2と比
較して以下の関係を満足するかどうかを検証する。
[Equation 28] Step 7: The retail store SH uses the Jacobian symbol calculator 323 and the comparator 324 to verify whether Y i satisfies the following relationship. If this inspection fails, the subsequent processing is stopped. (Y i / N) = ( - 1) Ei (25) information C, i, j 1 ... j t, the N type to the Λ calculator 325, and Y i 2 the Y i in power calculator 326, the Y i 2 is Λ calculator 3
The remainder division is performed by the remainder division unit 327 with the output of 25, and the result d ′ is compared with ± 1 and ± 2 using the comparator 328 to verify whether the following relationship is satisfied.

【0076】[0076]

【数29】 i=1,…,K' ここで、d'は±1,±2のいずれかの値である。この検
証に合格すれば、小売店SHは、利用者USのノードj1
…jtに該当する金額の支払いを正当なものとしてみな
し、それを受けとる。
(Equation 29) i = 1, ..., K ′ Here, d ′ is one of ± 1 and ± 2. If this verification is passed, the retail store SH determines that the node j 1 of the user US.
… Just considers and accepts payment of the amount of money that corresponds to t .

【0077】なお、上記の電子現金による支払いにおい
て、小売店SHが利用者USと結託して不正使用するの
を防ぐため、小売店SHが質問生成器312から利用者
USに送る質問Ei を以下のように強化してもよい。小
売店SHは、乱数Ei' を生成し、それをEi の代わりと
して小売店SHの識別子IDS 及び時刻印Tと共に利用者
USに送る。小売店SH及び利用者USは、それぞれ、
Ei=h(IDS‖T‖Ei')を計算する。ここで、hは一方向性
関数とする。決済 最後に、小売店SHと銀行BKの間の決済方法について
説明する(図13参照)。小売店SHは、利用者USと
の電子現金使用時の全ての交信履歴H={I,N,X,B,b,C,j1
…jt,Ei,Yi(i=1,…,K')}を銀行に提出する。銀行は、H
の正当性を検査し、検査に合格すれば、Hを記憶してお
くと共に小売店SHの口座に該当する金額を払い込む
(もしくは、何らかの手段で該当する金額を小売店に支
払う)。銀行は、電子現金の不正使用を見つけると、H
の情報よりI(又はN)を求めて、第三者(例えば裁判
所)の許可のもとでI(又はN)に対応するIDを知るこ
とができ、不正者を特定できる。
In order to prevent the retail store SH from colluding with the user US and illegally using it in the above electronic cash payment, the retail store SH sends a question E i sent from the question generator 312 to the user US. You may strengthen as follows. Retailers SH generates a random number E i ', and sends it together with the identifier ID S and the time stamp T retail SH to the user US as an alternative to the E i. The retail store SH and the user US are respectively
Calculate E i = h (ID S ‖T‖E i '). Here, h is a one-way function. Payment Finally, a payment method between the retail store SH and the bank BK will be described (see FIG. 13). The retail store SH has a history of all communications H = {I, N, X, B, b, C, j 1 when using electronic cash with the user US.
Submit j t , E i , Y i (i = 1, ..., K ')} to the bank. Bank H
If it passes the inspection, it stores H and pays the corresponding amount to the account of the retail store SH (or pays the relevant amount to the retail store by some means). When banks find fraudulent use of electronic cash, they
The I (or N) can be obtained from the information of (1), the ID corresponding to the I (or N) can be known under the permission of a third party (for example, a court), and an illicit person can be specified.

【0078】上述において利用者は階層構造テーブルの
どのノードも2重使用できない。なぜならば、Ei
{0,1}(i=1,…,K') からランダムに選ばれることより、
もし、利用者がいずれかのノードを2重使用すると、銀
行は、Hから確率 1-(1/2)K'でNを素因数分解すること
ができ、それにより、利用者の秘密情報P,Qを得るこ
とが出来る。銀行は、合成数Nの素因数P,Qを不正利
用の証拠とする。P,Qを知っているのは利用者USだ
けであることに注意。従って、これを2重使用の証拠と
して何らかのペナルティを利用者に課すことができる。
In the above description, the user cannot double use any node in the hierarchical structure table. Because E i is
By being randomly selected from {0,1} (i = 1, ..., K '),
If the user double-uses any of the nodes, the bank can factorize N from H with probability 1- (1/2) K ' , which leads to the confidential information P, P of the user. You can get Q. The bank uses the prime factors P and Q of the composite number N as evidence of unauthorized use. Note that only user US knows P and Q. Therefore, some penalty can be imposed on the user as evidence of double usage.

【0079】次に、利用者USは、階層構造テーブルの
あるノードを利用した後では、そのいかなる上位および
下位のノードも使用できない。ここで、簡単のため、図
8Bの階層構造テーブルの例で説明する。まず、利用者
USがノード"00"を使うと、利用者USは、
Next, the user US cannot use any upper and lower nodes after using a node in the hierarchical structure table. Here, for simplicity, an example of the hierarchical structure table of FIG. 8B will be described. First, when the user US uses the node "00", the user US

【0080】[0080]

【数30】 を小売店SHへ(最終的には銀行BKへ)送る。この
後、その下位のノードである"000" を利用すると、利用
者USは、
[Equation 30] To the retail store SH (finally to the bank BK). After that, if the lower node "000" is used, the user US

【0081】[0081]

【数31】 を小売店SHへ送らなければならない。このとき、(Equation 31) Must be sent to the retail store SH. At this time,

【0082】[0082]

【数32】 であることにより、銀行BKは、X00とX2 000 mod Nの
情報を用いて、Nを素因数分解でき、これより、利用者
USの秘密情報P,Qを計算できる。同様に、ノード"0
0"の利用後に、その上位ノード"0" や下位ノード"001"
を利用すると、やはり利用者USの秘密情報P,Qが銀
行BKにより得られることになる。
(Equation 32) Therefore, the bank BK can factorize N using the information of X 00 and X 2 000 mod N, and can calculate the secret information P and Q of the user US from this. Similarly, node "0
After using "0", its upper node "0" and lower node "001"
When using, the secret information P and Q of the user US is obtained by the bank BK.

【0083】なお、上記の実施例では、実名と仮名の対
応関係を1つの銀行BKとして実現する場合をのべた
が、図6で説明したと同様に、銀行BKの機能を複数の
部局に分割して、これらの部署が協力した場合にのみ、
実名と仮名の対応関係を知ることができるようにしても
よい。上述では署名Ψをそのまま利用許可証Bとした
が、署名Ψに対し何等かの処理を施したものを利用許可
証Bとしてもよい。第4実施例 上述の図7〜13で示した第3実施例において、利用者
が電子現金を使用する場合に、図11、12で示した利
用者と小売り店間で交信する情報量を削減するように改
善した利用者USと小売り店300の構成と、電子現金
の支払手順を図15、16に示す。
In the above embodiment, the correspondence between the real name and the pseudonym is realized as one bank BK, but the function of the bank BK is divided into a plurality of departments as described with reference to FIG. And only when these departments cooperate
It may be possible to know the correspondence between the real name and the kana. In the above description, the signature Ψ is used as it is as the usage permit B, but the signature Ψ may be subjected to some processing as the usage permit B. Fourth Embodiment In the third embodiment shown in FIGS. 7 to 13 described above, when the user uses electronic cash, the amount of information communicated between the user and the retail store shown in FIGS. 11 and 12 is reduced. 15 and 16 show the configurations of the user US and the retail store 300 improved so as to do so, and the electronic cash payment procedure.

【0084】ステップ1:利用者USは、まず、メモリ
20Mから読みだしたC,N,P,Q からΓ計算器236を用
いて、次式を演算し、つまりfΓ(C‖0‖N)を計算し、
かつこの値に対し、P,Qを用いて±1,±2の何れか
の補正を行ってN上での平方剰余Γ0 を前述の式(16)で
求める。次に、電子現金Cと利用金額に対応するノード
j1…jq とNをΩ計算器237に入力して前述の式(17)
によりΩj1・・jq (q=1,…,t) を生成する。更に、Ω
j1・・jq(q=1,…,t)のjq+1べき乗をべき乗計算器232で
求め、この結果とΓ0 のN上での剰余乗算を剰余乗算器
233で求め、その乗算結果のmod N上での 1/2t 根、
つまり利用金額Aに対応するノードの値j1…jtのべき乗
根XをP,Qを用いてべき乗根計算器234で前述の式
(18)により計算する。
Step 1: The user US first calculates the following equation from C, N, P, Q read from the memory 20M by using the Γ calculator 236, that is, fΓ (C‖0‖N) And calculate
Then, with respect to this value, correction of either ± 1 or ± 2 is performed using P and Q, and the quadratic residue Γ 0 on N is obtained by the above-mentioned equation (16). Next, the node corresponding to the electronic cash C and the usage amount
j 1 ... j q and N are input to the Ω calculator 237 and the above equation (17) is entered.
Generates Ω j1 ··· jq (q = 1,…, t). Furthermore, Ω
A power calculator 232 obtains the power of j q +1 of j1 ··· jq (q = 1, ..., T), and the remainder multiplication on N of Γ 0 is obtained by the remainder multiplier 233, and the multiplication result 1/2 t root on mod N,
That is, the power root X of the node value j 1 ... J t corresponding to the usage amount A is calculated by the power root calculator 234 using P and Q.
Calculate according to (18).

【0085】ステップ2:利用者USは、メモリ20M
から読みだしたI,N,X,B,b,C と利用金額に対応するj1,
…,jtを小売店SHに送る。 ステップ3:小売店SHは、(I,N) に対する署名Bの正
当性をVeB計算器310を用いて、Bが前述の式(19)を
満たすことつまりBが(N,I) に対する署名になっている
ことを確認し、また署名Cの(B,b) に対する正当性を、
g計算器331とVeC計算器332を用いて、Cが前述
の式(20)を満たすこと、つまりCがBのもとで使用可能
なことを確認する。この検査が不合格のときは以降の処
理を中止する。
Step 2: The user US uses the memory 20M
I, N, X, B, b, C read from j and the corresponding j 1 ,
..., j t is sent to the retail store SH. Step 3: The retail store SH verifies the validity of the signature B with respect to (I, N) by using the V eB calculator 310, that B satisfies the above equation (19), that is, B is a signature with respect to (N, I). And the validity of the signature C for (B, b),
Using g calculator 331 and V eC calculator 332, it is confirmed that C satisfies the above equation (20), that is, C can be used under B. If this inspection fails, the subsequent processing is stopped.

【0086】ステップ4:小売店SHは、ヤコビ記号計
算器333および比較器334を用いて、Xが(X/N)=-1
の関係を満足するかどうかを検証する。この検査が不合
格のときは以降の処理を中止する。次に、C,NからΓ
計算器322を用いて、fΓ(C‖0‖N)を計算する。ま
た、C,j1…jq,NからΩ計算器316を用いて、Ω
j1・・jq(q=1,…,t) を前述の式(21)により計算する。
Step 4: The retail store SH uses the Jacobi symbol calculator 333 and the comparator 334 to determine that X is (X / N) =-1.
Verify whether the relationship of is satisfied. If this inspection fails, the subsequent processing is stopped. Next, from C, N to Γ
Using the calculator 322, f.GAMMA. (C | 0 || N) is calculated. Further, from C, j 1 ... j q , N, using the Ω calculator 316,
j1 ... jq (q = 1, ..., t) is calculated by the above equation (21).

【0087】その計算結果のべき乗をべき乗計算器31
8で行い、Ω2j j1・・jq を得る。更に、Γ計算器322
からのfΓ(C‖0‖N)と、べき乗計算器318からのべ
き乗計算結果との剰余乗算を乗算器319で行う。一
方、Xの2t 乗をべき乗計算器317で行い、これを剰
余乗算器319の出力で剰余除算器320で除算し、そ
の結果と±1,±2の比較を比較器321で行い、Xが
前述の式(22)の関係を満足するかどうかを検証する。こ
の検査が不合格のときは以降の処理を中止する。
The exponentiation calculator 31 calculates the exponentiation of the calculation result.
8 to obtain Ω 2j j1 ··· jq . Furthermore, Γ calculator 322
In the multiplier 319, the modular multiplication of f Γ (C /////) and the power calculation result from the power calculator 318 is performed. On the other hand, X is raised to the power of 2 t in the power calculator 317, divided by the output of the remainder multiplier 319 in the remainder divider 320, and the result is compared with ± 1 and ± 2 in the comparator 321. It is verified whether or not satisfies the relation of the above equation (22). If this inspection fails, the subsequent processing is stopped.

【0088】ここまでの処理ステップ1〜4は、図1
1、12で説明した処理ステップ1〜4とまったく同じ
である。図14、15の変形実施例では、以降の処理ス
テップ5〜7において、利用者USと小売店SH間の交
信情報量を削減するように改善されているが、基本的な
手順は図11、12の処理ステップ5〜7と同様であ
る。
The processing steps 1 to 4 up to this point are as shown in FIG.
This is exactly the same as the processing steps 1 to 4 described in steps 1 and 12. In the modified examples of FIGS. 14 and 15, the following processing steps 5 to 7 are improved so as to reduce the amount of communication information between the user US and the retail store SH, but the basic procedure is as shown in FIG. This is the same as the processing steps 5 to 7 of 12.

【0089】ステップ5:小売店SHは、ステップ4で
検査した利用許可証Bに対する銀行BKの署名の正当性
と、電子現金Cの使用可能性が合格していれば、質問生
成器312を用いて1つの質問値E∈Zu={0,1,2,…,u
-1} (uはセキュリティパラメータ)をランダムに選び
利用者USに送る。 ステップ6:利用者USはメモリ20Mから読みだした
{C,j1,…,jt,N,P,Q}を使ってΛ計算器235により、Λ
j1..jtを計算する。つまりfΛ( )に対し、±1,±2
の何れかの補正をP,Qを用いて行ってN上での剰余平
方Λj1..jtを得る。
Step 5: The retail store SH uses the question generator 312 if the validity of the signature of the bank BK on the license B checked in step 4 and the availability of the electronic cash C have passed. One question value E ∈ Z u = {0,1,2, ..., u
-1} (u is a security parameter) is randomly selected and sent to the user US. Step 6: User US reads from memory 20M
Using {C, j 1 , ..., j t , N, P, Q}, Λ calculator 235
Calculate j1..jt . That is, for fΛ (), ± 1, ± 2
Then, any one of the corrections is performed using P and Q to obtain a remainder square Λ j1..jt on N.

【0090】[0090]

【数33】 次に、剰余乗算器238とべき乗根計算器231を用い
て、N,P,Q,Λj1..jt及び小売店SHからの質問Eから回
答Yj1..jtを計算して、小売店SHに送信する。
[Equation 33] Next, using the remainder multiplier 238 and the power root calculator 231, the answer Y j1..jt is calculated from N, P, Q, Λ j1..jt and the question E from the retail store SH, and the retail store is calculated. Send to SH.

【0091】[0091]

【数34】 ステップ7:小売店SHは、ヤコビ記号計算器323お
よび比較器324を用いてYj1..jtが以下の関係をみた
すかを検証する。この検査が不合格のときは以降の処理
を中止する。 (Yj1・・jt/N)=1 (29) 利用者USからの C,j1…jt,N をΛ計算器325に入力
し、さらにその出力とE,Nを剰余乗算器327に入力
し、Yj1..jt,Nをべき乗計算器326に入力し、剰余
除算器328によりべき乗計算器326の出力を剰余乗
算器327の出力で除算し、その結果を比較器329を
用いて±1,±2と比較して以下の関係を満足するかど
うかを検証する。
(Equation 34) Step 7: The retail store SH uses the Jacobian symbol calculator 323 and the comparator 324 to verify whether Y j1..jt satisfies the following relationship. If this inspection fails, the subsequent processing is stopped. (Y j1 ·· jt / N) = 1 (29) C, j 1 ... j t , N from the user US is input to the Λ calculator 325, and its output and E, N are input to the remainder multiplier 327. Y j1..jt , N are input to the power calculator 326, the output of the power calculator 326 is divided by the output of the remainder multiplier 327 by the remainder divider 328, and the result is used by the comparator 329. Verifies whether the following relationship is satisfied by comparing with ± 1 and ± 2.

【0092】[0092]

【数35】 ここで、d'は±1,±2のいずれかの値である。この検
証に合格すれば、小売店SHは、利用者USのノードj1
…jtに該当する金額の支払いを正当なものとしてみな
し、それを受けとる。なお、図11、12の場合と同様
に上記の電子現金による支払いにおいて、小売店SHが
利用者USと結託して不正使用するのを防ぐため、小売
店SHが質問生成器312から利用者USに送る質問E
を以下のように強化してもよい。小売店SHは、乱数
E′を生成し、それをEの代わりとして小売店SHの識
別子IDS及び時刻印Tと共に利用者USに送る。小売店
SH及び利用者USは、それぞれ、E= h(IDS‖T‖E')
を計算する。ここで、hは一方向性関数とする。
(Equation 35) Here, d'is either one of ± 1 and ± 2. If this verification is passed, the retail store SH determines that the node j 1 of the user US.
… Just considers and accepts payment of the amount of money that corresponds to t . As in the case of FIGS. 11 and 12, in order to prevent the retail store SH from colluding with the user US and illegally using the electronic cash payment, the retail store SH uses the question generator 312 to send the user US. Question E to send to
May be enhanced as follows. The retail store SH generates a random number E ′ and sends it as a substitute for E to the user US together with the identifier ID S of the retail store SH and the time stamp T. The retail store SH and the user US each have E = h (ID S ‖T‖E ')
Is calculated. Here, h is a one-way function.

【0093】図16に示す小売店SHと銀行BKの間の
決済方法も図13と基本的に同じである。小売店SH
は、利用者USとの電子現金使用時の交信履歴H={I,
N,X,B,b,C,j1・・jt,E,Y}を銀行に提出する。銀行は、H
の正当性を検査し、検査に合格すれば、Hを記憶してお
くと共に小売店SHの口座に該当する金額を払い込む
(もしくは、何らかの手段で該当する金額を小売店に支
払う)。銀行は、電子現金の不正使用を見つけると、H
の情報よりI(又はN)を求めて、第三者(例えば裁判
所)の許可のもとでI(又はN)に対応するIDを知るこ
とができ、不正者を特定できる。
The settlement method between the retail store SH and the bank BK shown in FIG. 16 is basically the same as that shown in FIG. Retail store SH
Is the communication history H = {I, when using electronic cash with the user US
Submit N, X, B, b, C, j 1 ··· j t , E, Y} to the bank. Bank H
If it passes the inspection, it stores H and pays the corresponding amount to the account of the retail store SH (or pays the relevant amount to the retail store by some means). When banks find fraudulent use of electronic cash, they
The I (or N) can be obtained from the information of (1), the ID corresponding to the I (or N) can be known under the permission of a third party (for example, a court), and an illicit person can be specified.

【0094】図14、15、16の実施例においても利
用者は階層構造テーブルのどのノードも2重使用できな
い。なぜならば、EがZu={0,1,…,u-1} からランダム
に選ばれることより、もし、利用者がいずれかのノード
を2重使用すると、銀行は、Hから確率(1−1/u)でNを
素因数分解することができ、それにより、利用者の秘密
情報P,Qを得ることが出来る。銀行は、合成数Nの素
因数P,Qを不正利用の証拠とする(P,Qを知ってい
るのは利用者USだけである)。従って、これを2重使
用の証拠として何らかのペナルティを利用者に課すこと
ができる。
Also in the embodiments of FIGS. 14, 15 and 16, the user cannot double use any node in the hierarchical structure table. Because E is randomly selected from Z u = {0,1, ..., u-1}, if the user double-uses any node, the bank will get the probability (1 N can be factorized by (1 / u), whereby the secret information P and Q of the user can be obtained. The bank uses the prime factors P and Q of the composite number N as evidence of unauthorized use (only the user US knows P and Q). Therefore, some penalty can be imposed on the user as evidence of double usage.

【0095】前述の様に、図11、12の実施例では小
売店SHのK' 個の質問E' に対し、利用者USはK’
個の回答Yi を生成して小売店SHに送る必要があっ
た。これに対し、図14、15に示す変形実施例では、
小売店SHは質問Eをランダムに1つ選択して利用者U
Sに与え、利用者USはこれに応答して1つの回答Yj1
・・jtを生成して小売店SHに与えるだけでよいので、交
信情報量を削減できる。また、銀行BKに送信する交信
履歴Hの情報量も削減され、かつ銀行BKが交信履歴の
保存に必要なメモリの容量も少なくてすむ。
As described above, in the embodiment of FIGS. 11 and 12, the user US responds to K ′ with respect to K ′ questions E ′ at the retail store SH.
It was necessary to generate the individual answers Y i and send them to the retail store SH. On the other hand, in the modified embodiment shown in FIGS.
The retail store SH randomly selects one question E and selects the user U.
S, and user US responds to this with one reply Y j1.
.. Since it is only necessary to generate jt and give it to the retail store SH, the amount of communication information can be reduced. Further, the amount of information of the communication history H transmitted to the bank BK is reduced, and the memory capacity required for the bank BK to store the communication history is small.

【0096】例えば、Chaum・Fiat・Naor 法では、二重
使用検出のために銀行が記憶すべき交信履歴Hの一部と
して、小売店SHは次に示すK/2=10組の署名データ (ai,yi) 又は (ai(+)ID,xi), i=1,…,K/2 を銀行BKに渡さなければいけない。そのサイズは1280
ビットである。一方、図14、15の実施例では、わず
か1つの署名データYj1..jtを渡せばよい。銀行が記憶
すべき交信履歴Hの記憶情報量は 512ビットであり、Ch
aum・Fiat・Naor法の1/2以下に出来る。
For example, in the Chaum / Fiat / Naor method, as a part of the communication history H to be stored by the bank for detecting double use, the retail store SH has the following K / 2 = 10 sets of signature data ( a i , y i ) or (a i (+) ID, x i ), i = 1, ..., K / 2 must be passed to bank BK. Its size is 1280
Is a bit. On the other hand, in the embodiments of FIGS. 14 and 15, only one piece of signature data Y j1..jt has to be passed. The amount of information stored in the communication history H that the bank must store is 512 bits.
It can be less than 1/2 of the aum / Fiat / Naor method.

【0097】上述の第1〜4実施例において、利用者U
Sに利用許可証Bを発行する場合も、電子現金Cを発行
する場合も、同じ銀行BKがそれらの発行を行う場合を
示したが、利用許可証Bの発行は例えば銀行とは別の信
託機関が行い、銀行BKは電子現金の発行と決済のみを
行うようにしてもよい。例えば第1の実施例では図2に
利用許可証Bを情報Ψとして銀行BKが発行している
が、これを図17に示すように、信託機関40Tが実施
する。利用者US及び信託機関40T内の処理機能構成
は、図2に示す利用者US及び銀行BK内の構成とまっ
たく同じなので対応表41T以外は図17に示してな
い。同様に、図9に示す第3及び4実施例の利用許可証
Bの発行処理を信託機関が行うようにしてもよい。この
様に利用許可証の発行を銀行とは別の機関が行うことに
より、銀行内の不正により利用者の実名(識別情報)ID
U と公開情報N又はIとの対応関係が外部に漏れて悪用
されたり、あるいは外部からハッカーにより盗み出され
たりすることを防ぐことができる。
In the above-mentioned first to fourth embodiments, the user U
Although the same bank BK issues both the license B and the electronic cash C to S, the license B is issued in a trust different from that of the bank, for example. Alternatively, the bank BK may only issue and settle electronic cash. For example, in the first embodiment, the bank BK issues the usage permit B as the information Ψ in FIG. 2, but this is performed by the trust institution 40T as shown in FIG. Since the processing function configurations in the user US and the trust organization 40T are exactly the same as the configurations in the user US and the bank BK shown in FIG. 2, only the correspondence table 41T is shown in FIG. Similarly, the trust agency may perform the process of issuing the usage permit B in the third and fourth embodiments shown in FIG. In this way, the issuance of the license is performed by an organization other than the bank, so that the user's real name (identification information)
It is possible to prevent the correspondence relationship between U and the public information N or I from being leaked to the outside for being abused or being stolen from the outside by a hacker.

【0098】又、図6に示した第2実施例と同様に、図
17に示す信託機関40Tの内部を図18に示すように
複数の部局401、402に分け、IDU と関連付情報α
の間の対応と、関連付情報αとN,I との間の対応をそれ
ぞれ対応表41T1、41T2に保持するようにしてもよい。更
に、信託機関40Tのこれらの部局401、402が図
19に示すようにそれぞれ独立した信託機関であっても
よいことは明かである。図19の例では、利用許可証の
発行は3つの信託機関40T1、40T2、40T3を経由して行わ
れ、それぞれの信託機関は対応表40T1、40T2、40T3にそ
れぞれIDU 対α 1、α1対α2、α2対N',I の対応関係を
保持する。即ち、IDU とN,I の対応関係は3つの信託機
関が全体として保持している。裁判所の命令に従って、
全信託機関40T1、40T2、40T3が協力してそれぞれ有して
いる対応関係をを提出したときに初めてIDU とN,I の対
応関係が明らかになる。
Further, as in the second embodiment shown in FIG.
As shown in FIG. 18, the inside of the trust institution 40T shown in FIG.
Divided into multiple departments 401 and 402, IDU And related information α
And the correspondence between the associated information α and N, I.
Correspondence table 41T1, 41TTwoMay be held at. Change
In addition, these departments 401 and 402 of the trust organization 40T are
As shown in 19, even if they are independent trust institutions,
The good thing is clear. In the example of FIG. 19,
Issued by three trust institutions 40T1, 40TTwo, 40TThreeDone via
Correspondence table 40T1, 40TTwo, 40TThreeNiso
ID of eachU Against α 1, Α1Against αTwo, ΑTwoCorrespondence between N'and I
Hold. That is, IDU Correspondence between N and I is 3 trust machines
Seki holds as a whole. According to court order
All trust institutions 40T1, 40TTwo, 40TThreeHave each in cooperation
ID when you submit the correspondenceU And N, I pair
The relationship becomes clear.

【0099】[0099]

【発明の効果】この発明の効果は以下のとおりである。 (a) 犯罪に対する対策 信頼できる第三者(例えば裁判所)からの要請により、
銀行はIDと(I,N) の関係を公開する。これによって(I,
N) による取引は停止となる。あるいは、(I,N)による取
引を追跡することで犯人を逮捕できる。 (b) プライバシについて クレジットカードでは利用者の識別情報IDが直接小売店
に見えるので、プライバシを保証できない。この発明で
は、仮名Iだけしか小売店に見えないので、プライバシ
が高まる。Chaum ・Fiat・Naor法では、ブラインド署名
を用いるので、利用者だけでプライバシを守れる。(し
かし、そのことが犯罪の温床になることが指摘されてい
ることに注意。) 第1実施例では銀行が利用者のプライバシを侵すことは
可能であるが、第2実施例では、複数の部署が結託しな
いかぎり、プライバシを侵すことは難しい。 (c) 通信量、記憶情報量について プライバシを保証できるChaum ・Fiat・Naor法とこの発
明を比較する。
The effects of the present invention are as follows. (a) Countermeasures against crime At the request of a reliable third party (eg court),
The bank discloses the relationship between ID and (I, N). This gives (I,
Trading by N) will be suspended. Alternatively, the criminal can be arrested by tracking the transaction by (I, N). (b) Privacy Privacy cannot be guaranteed with a credit card because the user's identification information ID is directly visible to the retail store. In this invention, only the pseudonym I can be seen as a retail store, so privacy is enhanced. In the Chaum-Fiat-Naor method, blind signatures are used, so only users can protect privacy. (However, it is pointed out that this is a hotbed of crime.) In the first embodiment, the bank can invade the privacy of the user, but in the second embodiment, a plurality of Unless the department colludes, it is difficult to break privacy. (c) This invention is compared with the Chaum-Fiat-Naor method, which can guarantee the privacy of communication volume and stored information volume.

【0100】Chaum ・Fiat・Naor法では、IDを電子現金
に埋め込むのが利用者なので、利用者が決められたとお
りに動作することを検査するために、「抜き打ち検査技
法」(K個の情報の提示とK/2個の開示要求に答える
こと)が必要となり、使用許可証の発行処理での通信量
が大きくなる。また、二重使用検出のために銀行が記憶
すべき交信履歴Hの記憶情報量が大きくなる問題もあ
る。
In the Chaum-Fiat-Naor method, since the user embeds the ID in the electronic cash, in order to inspect that the user operates as determined, the "unannounced inspection technique" (K information Must be presented and K / 2 disclosure requests must be answered), which increases the amount of communication in the process of issuing the usage permit. In addition, there is a problem that the amount of information stored in the communication history H to be stored by the bank becomes large in order to detect double use.

【0101】従来技術では通常、K=20程度が推奨さ
れているのに対し、この発明(第1〜4実施例)では、
K=1とできるので、通信量と記憶情報量を1/20に
削減でき、これらの問題を解決できる。 (d) 2重使用について 利用者が電子現金Cを2回以上使用すると、銀行はCを
キーにして、交信履歴ファイルを検索してこの事実を検
出できる。交信履歴情報には、Cと共にIが含まれてい
るので、銀行は第三者(例えば裁判所)の許可のもと
で、Iに対応するIDを知ることができ、不正者を特定で
きる。 (e) 二重使用について 第3及び第4実施例のいて、利用者が電子現金Cについ
て分割利用のためのノードルールに反した使用をする
と、銀行はノードのべき乗根Xをキーにして、交信履歴
ファイルを検索してこの事実を検出できる。交信履歴情
報には、Cと共にI(又はN)が含まれているので、銀
行は第三者(例えば裁判所)の許可のもとで、I又は
N)に対応するIDを知ることができ、不正者を特定でき
る。 (f) その他 この発明は利用許可証を利用する既存の方式、例えばT.
Okamoto et al."Universal Electronic Cash," Advance
s in Cryptology-Crypto'91, Lecture Notes in Comput
er Science 576, pp.324-337, Springer-Verlag, Berli
n (1991), 及び米国特許No.5,224,162との整合性があ
り、Chaum・Fiat・Naor 法では実現できていない譲渡機
能や分割利用機能を実現できる。
In the prior art, K = 20 is usually recommended, whereas in the present invention (first to fourth embodiments),
Since K can be set to 1, the amount of communication and the amount of stored information can be reduced to 1/20, and these problems can be solved. (d) Double use When a user uses electronic cash C more than once, the bank can detect this fact by searching the communication history file using C as a key. Since the communication history information includes I as well as C, the bank can know the ID corresponding to I and can identify the fraudulent person under the permission of a third party (for example, a court). (e) Double Use In the third and fourth embodiments, when the user uses the electronic cash C contrary to the node rule for divided use, the bank uses the power root X of the node as a key, This fact can be detected by searching the communication history file. Since the communication history information includes I (or N) together with C, the bank can know the ID corresponding to I or N) with the permission of a third party (for example, a court). Can identify fraudulent persons. (f) Others This invention is an existing method using a license, for example, T.
Okamoto et al. "Universal Electronic Cash," Advance
s in Cryptology-Crypto'91, Lecture Notes in Comput
er Science 576, pp.324-337, Springer-Verlag, Berli
n (1991), and US Patent No. 5,224,162, and can realize a transfer function and a divided use function that cannot be realized by the Chaum / Fiat / Naor method.

【0102】この発明は利用許可証を利用する既存の方
式、例えば T.Okamoto etal.“Disposable Zero-Knowle
dge Authentications and Their Applications to Untr
aceable Electronic Cash,”Advances in Cryptology-C
rypto'89, Lecture Notes inComputer Science 435, p
p.481-496, Springer-Verlag, Berlin(1989)や、米国特
許No,4,977,595「電子現金実施方法及びその装置」との
整合性があり、Chaum・Fiat・Naor法では実現できてい
ない譲渡性や回数券的な使用を実現できる。
The present invention is an existing method using a license, for example, T.Okamoto et al. “Disposable Zero-Knowle.
dge Authentications and Their Applications to Untr
aceable Electronic Cash, ”Advances in Cryptology-C
rypto'89, Lecture Notes in Computer Science 435, p
p.481-496, Springer-Verlag, Berlin (1989) and U.S. Pat. It can be used like a coupon.

【0103】なお、第3、第4実施例において、二重使
用検出のために銀行が記憶すべき交信履歴Hの記憶情報
量については、K'=10とする必要があるので、Chaum・F
iat・Naor 法でのK/2=10と同等である。
In the third and fourth embodiments, it is necessary to set K '= 10 for the amount of information stored in the communication history H to be stored by the bank for detecting double use.
It is equivalent to K / 2 = 10 in iat ・ Naor method.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の原理構成を示すブロック図。FIG. 1 is a block diagram showing the principle configuration of the present invention.

【図2】利用者と銀行間での利用許可証発行処理(基本
形)を示すブロック図。
FIG. 2 is a block diagram showing a license issuance process (basic form) between a user and a bank.

【図3】利用者と銀行間での電子現金発行処理を示すブ
ロック図。
FIG. 3 is a block diagram showing an electronic cash issuing process between a user and a bank.

【図4】利用者と小売店での電子現金による支払処理を
示すブロック図。
FIG. 4 is a block diagram showing electronic cash payment processing at a user and a retail store.

【図5】小売店と銀行間の決裁処理を示すブロック図。FIG. 5 is a block diagram showing a settlement process between a retail store and a bank.

【図6】利用者と銀行間での利用許可証発行処理の他の
例(機能分割形)を示すブロック図。
FIG. 6 is a block diagram showing another example (functional division type) of the license issuance processing between the user and the bank.

【図7】この発明による第3の実施例の原理構成を示す
ブロック図。
FIG. 7 is a block diagram showing the principle configuration of a third embodiment according to the present invention.

【図8】Aは電子現金の分割使用を規定する使用金額の
階層テーブルの構造図、Bは階層テーブルにおけるノー
ドの使用例を説明するための図。
FIG. 8A is a structural diagram of a hierarchical table of usage amounts that defines divided usage of electronic cash, and FIG. 8B is a diagram for explaining a usage example of nodes in the hierarchical table.

【図9】図7中の利用者と銀行間での利用許可証発行処
理を示すブロック図。
9 is a block diagram showing a process of issuing a usage permit between the user and the bank in FIG. 7. FIG.

【図10】図7中の利用者と銀行間での電子現金発行処
理を示すブロック図。
10 is a block diagram showing an electronic cash issuing process between a user and a bank in FIG. 7. FIG.

【図11】図7中の利用者と小売店での電子現金による
支払処理に関する利用者の処理を示すブロック図。
11 is a block diagram showing processing by the user in FIG. 7 and processing by the user regarding payment processing by electronic cash at a retail store.

【図12】図7中の利用者と小売店での電子現金による
支払処理に関する小売店の処理を示すブロック図。
FIG. 12 is a block diagram showing processing of a retail store regarding payment processing by electronic cash at the user and the retail store in FIG. 7.

【図13】図7中の小売店と銀行間の決済処理を示すブ
ロック図。
13 is a block diagram showing a settlement process between a retail store and a bank in FIG. 7.

【図14】図11、12の利用者と小売店での電子現金
による支払処理の変形例における利用者の処理を示すブ
ロック図。
FIG. 14 is a block diagram showing processing by the user in the modification of the payment processing by electronic cash at the retail store and the user in FIGS. 11 and 12;

【図15】図11、12の利用者と小売店での電子現金
による支払処理の変形例における小売店の処理を示すブ
ロック図。
FIG. 15 is a block diagram showing a process of a retail store in a modification of the payment process using electronic cash at the user and the retail store of FIGS.

【図16】図14、15の電子現金支払処理に対する小
売店と銀行間の決済処理を示すブロック図。
FIG. 16 is a block diagram showing a settlement process between a retail store and a bank for the electronic cash payment process of FIGS.

【図17】利用許可証の発行を信託機関が行う例を示す
ブロック図。
FIG. 17 is a block diagram showing an example in which a trust organization issues a usage permit.

【図18】図17において信託機関内を複数の部局が関
連付け情報αを介在させてIDとN,I の対応を保持する例
を示すブロック図。
18 is a block diagram showing an example in which a plurality of departments in the trust organization in FIG. 17 hold the correspondence between ID and N, I by interposing association information α.

【図19】図18において信託機関の複数の部局を独立
した信託機関として構成した場合のブロック図。
FIG. 19 is a block diagram when a plurality of departments of a trust institution are configured as independent trust institutions in FIG.

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G06F 15/30 350 (72)発明者 阿部 正幸 東京都千代田区内幸町1丁目1番6号 日 本電信電話株式会社内─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 6 Identification number Internal reference number FI Technical display location G06F 15/30 350 (72) Inventor Masayuki Abe 1-6 Uchisaiwaicho, Chiyoda-ku, Tokyo Nihonhon Telegraph and Telephone Corporation

Claims (18)

【特許請求の範囲】[Claims] 【請求項1】 追跡可能な電子現金実施方法であり、以
下の処理ステップを含む: (1) 利用者は実名IDU と第1の秘密情報に対応した公開
情報Nを第1機関に送信し、 (2) 上記第1機関は、上記利用者の身元を確認したのち
に、その利用者に対する仮名Iを生成し、上記仮名I及
び上記公開情報Nの少なくとも一方と上記実名IDU の対
応関係を秘密に管理し、 (3) 上記第1機関は上記公開情報Nと仮名Iに対して署
名を施し、その署名と上記仮名Iを上記利用者に送信
し、 (4) 上記利用者は、上記第1機関からの上記署名から利
用許可証Bを得、その利用許可証Bを、上記仮名Iと共
に記憶し、 (5) 上記利用者は、上記第1秘密情報を用いて上記仮名
Iと上記公開情報Nに対応した第2秘密情報Sを計算し
て保持し、 (6) 上記利用者は、第2機関に対して少なくとも乱数と
上記利用許可証Bを含む情報と金額Aを送信して電子現
金の発行を要求し、 (7) 上記第2機関は上記利用者からの上記利用許可証を
含む情報に署名を与えて上記利用者に電子現金Cを含む
情報として送信し、 (8) 上記利用者は、上記利用許可証Bが上記公開情報N
と上記仮名Iに対する署名になっていること、及び上記
電子現金Cが利用許可証Bのもとで使用可能なことを検
証した後に、上記乱数と上記の第2秘密情報Sを用いて
第3者へ支払を行ない、 (9) 上記第3者は上記電子現金Cに関する決済のため、
上記利用者との全ての交信情報を上記第2機関に送信
し、 (10)不正行為の可能性が生じた場合には、上記第1機関
の管理する上記仮名Iと上記公開情報Nの上記少なくと
も一方と、上記実名IDU との対応関係を検索し、上記仮
名Iと上記公開情報Nを公開して不正行為を防止可能と
する。
1. A traceable electronic cash implementation method comprising the following processing steps: (1) The user sends the public name N corresponding to the real name ID U and the first secret information to the first institution. (2) The first organization, after confirming the identity of the user, generates a pseudonym I for the user and associates at least one of the pseudonym I and the public information N with the real name ID U. (3) The first institution signs the public information N and the pseudonym I, and sends the signature and the pseudonym I to the user, and (4) the user The license B is obtained from the signature from the first institution, and the license B is stored together with the pseudonym I. (5) The user uses the pseudonym I as the pseudonym I using the first secret information. Calculating and retaining the second secret information S corresponding to the public information N, (6) Requesting the issuance of electronic cash by transmitting at least the information including the random number and the license B and the amount A, and (7) the second institution signs the information including the license from the user. (8) The user's license B is the public information N.
After verifying that it is a signature for the pseudonym I and that the electronic cash C can be used under the license B, a third is obtained by using the random number and the second secret information S. (9) The third party mentioned above makes payment for the electronic cash C,
All the communication information with the user is transmitted to the second institution, and (10) if there is a possibility of misconduct, the above pseudonym I and the above described public information N managed by the above first institution Correspondence between at least one of them and the real name ID U is searched for, and the pseudonym I and the public information N are disclosed to prevent fraud.
【請求項2】 請求項1の方法において、上記第1秘密
情報はN=P×Qなる関係にある素数P,Qであり、 上記ステップ(5) において、上記第2秘密情報Sは、L
を素数として S=II/L mod N の計算により求め、 上記ステップ(6) において、上記利用者は(6-1) 上記乱
数Rを発生し、上記公開情報Nと上記素数Lと上記乱数
Rから認証用情報Xを次式 X=RL mod N により計算し、 (6-2) 上記認証用情報Xと上記利用許可証Bに対し、関
数FeCで表すブラインド署名前処理Z=FeC(X,B) を行
い、その結果得られた情報Zを上記利用許可証Bを含む
情報として電子現金Cの金額情報Aと共に上記第2機関
に送信し、 上記ステップ(7) において、上記第2機関は上記電子現
金Cの金額Aに対応する秘密鍵を用いて上記情報Zに対
して関数DeCで表すブラインド署名Θ=DeC(Z) を行
い、その結果得られた情報Θを上記電子現金Cを含む情
報として上記利用者に送信し、 上記ステップ(8) において、上記利用者は、上記署名Θ
に対し、関数GeCで表すブラインド署名後処理C=GeC
(Θ)を行って上記電子現金Cを得、 上記第3者は上記利用許可証Bの情報(N,I) に対する正
当性と、上記電子現金Cの(X,B) に対する正当性を検証
し、正当な場合には、上記第3者は、質問E∈ZL={0,
1,…,L-1} を上記利用者へ送信し、 上記利用者は、上記第2秘密情報Sと上記情報(N,R) と
上記質問Eとから回答Y Y=R・SE mod N から計算し、この回答Yを上記第3者へ送信し、 上記第3者は、YL の演算と、X・IE(mod N) の演算
とを行い、 YL ≡X・IE(mod N) を満たすかを検証し、この検証にパスすると、上記電子
現金Cを上記金額情報Aの現金として受理する。
2. The method according to claim 1, wherein the first secret information is prime numbers P and Q having a relation of N = P × Q, and in the step (5), the second secret information S is L.
S = I I / L mod N as a prime number, and in the step (6), the user generates (6-1) the random number R, the public information N, the prime number L, and the random number. The authentication information X is calculated from R by the following expression X = RL mod N, and (6-2) blind authentication preprocessing Z = F represented by a function F eC for the authentication information X and the usage certificate B. eC (X, B) is performed, and the information Z obtained as a result is transmitted to the second institution together with the amount information A of the electronic cash C as the information including the above-mentioned usage permit B. The second institution uses the secret key corresponding to the amount A of the electronic cash C to perform the blind signature Θ = D eC (Z) represented by the function D eC on the information Z, and obtains the obtained information Θ. The information including the electronic cash C is transmitted to the user, and in the step (8), the user Signature Θ
To, after blind signature represented by a function G eC processing C = G eC
Perform (Θ) to obtain the electronic cash C, and the third party verifies the validity of the information (N, I) of the license B and the validity of the electronic cash C of (X, B). Then, if it is justified, the third party asks the question E ∈ Z L = {0,
1, ..., L-1} is sent to the user, and the user answers from the second secret information S, the information (N, R), and the question E Y Y = R · S E mod Calculated from N, send this answer Y to the third party, and the third party calculates Y L and X · IE (mod N) to obtain Y L ≡X · IE It is verified whether (mod N) is satisfied, and if this verification is passed, the electronic cash C is accepted as the cash of the amount information A.
【請求項3】 請求項1の方法において、上記第1機関
内の複数の部局が、順次互いに対応付けされたそれぞれ
異なる対の関連付け情報αにより、上記利用者の実名ID
U と、上記仮名I及び公開情報Nの少なくとも一方との
間を順次対応付けさせて管理しており、上記複数の部局
が協力した場合にのみ、上記仮名I及び公開情報Nの少
なくとも一方と実名IDU の対応関係を、これら間の関連
付け情報αを通して得られるようにされている。
3. The real name ID of the user according to claim 1, wherein the plurality of departments in the first institution use the association information α of different pairs sequentially associated with each other.
The U and at least one of the Kana I and the public information N are sequentially managed in association with each other, and only when the plurality of departments cooperate with each other, at least one of the Kana I and the public information N and the real name. The correspondence relationship of ID U can be obtained through the association information α between them.
【請求項4】 追跡可能な電子現金実施方法であり、以
下の処理ステップを含む: (1) 利用者は実名IDU と秘密情報に対応した公開情報N
を第1機関に送信し、 (2) 上記第1機関は、上記利用者の身元を確認したのち
に、その利用者に対する仮名Iを生成し、上記仮名I及
び上記公開情報Nの少なくとも一方と上記実名IDU の対
応関係を秘密に管理し、 (3) 上記第1機関は上記公開情報Nと仮名Iに対して署
名を施し、その署名と上記仮名Iを上記利用者に送信
し、 (4) 上記利用者は、上記第1機関からの上記署名から利
用許可証Bを得、その利用許可証Bを、上記仮名Iと共
に記憶し、 (5) 上記利用者は、第2機関に対して少なくとも乱数b
と上記利用許可証Bを含む情報と金額Aを送信して電子
現金の発行を要求し、 (6) 上記第2機関は上記利用者からの上記利用許可証を
含む情報に署名を与えて上記利用者に電子現金Cを含む
情報として送信し、 (7) 上記利用者は、上記利用許可証Bが上記公開情報N
と上記仮名Iに対する署名になっていること、及び上記
電子現金Cが利用許可証Bのもとで使用可能なことを検
証した後に、上記乱数bと上記秘密情報を用いて第3者
へ支払を行ない、 (8) 上記第3者は上記電子現金Cに関する決済のため、
上記利用者との全ての交信情報を上記第2機関に送信
し、 (9) 不正行為の可能性が生じた場合には、上記第1機関
の管理する上記仮名Iと上記公開情報Nの上記少なくと
も一方と、上記実名IDU との対応関係を検索し、上記仮
名Iと上記公開情報Nを公開して不正行為を防止可能す
る。
4. A traceable electronic cash implementation method, including the following processing steps: (1) The user has a real name ID U and public information N corresponding to confidential information.
(2) The first institution, after confirming the identity of the user, generates a pseudonym I for the user, and outputs at least one of the pseudonym I and the public information N. the correspondence between the real name ID U and managed in secret, (3) the first engine performs signature to the public information N and pseudonym I, and sends the signature and the pseudonym I to said user, ( 4) The user obtains the license B from the signature from the first institution, stores the license B together with the pseudonym I, and (5) the user tells the second institution. At least random number b
And request the issuance of electronic cash by transmitting the information including the license B and the amount A. (6) The second institution signs the information including the license from the user and The information including electronic cash C is transmitted to the user.
After verifying that the above-mentioned pseudonym I is a signature and that the electronic cash C can be used under the license B, payment is made to a third party using the random number b and the secret information. (8) Since the third party is to settle the electronic cash C,
All communication information with the user is sent to the second institution, and (9) If there is a possibility of misconduct, the above pseudonym I and public information N under the control of the above first institution will be sent. Correspondence between at least one of them and the real name ID U is searched, and the pseudonym I and the public information N are disclosed to prevent fraud.
【請求項5】 請求項4の方法において、上記秘密情報
はN=P×Qなる関係にある素数P,Qであり、 上記ステップ(5) において、上記利用者は、上記乱数b
と上記利用許可証Bより、一方向性関数g(B‖b)を計算
し、このg(B‖b)に対してブラインド署名前処理Z=F
eC(g(B‖b))を計算し、その結果得られた情報Zを上記
電子現金Cを含む情報として金額情報Aと共に上記第2
機関に送信し、 上記ステップ(6) において、上記第2機関は、その電子
現金の上記金額Aに対応する秘密鍵を用いて上記情報Z
に対する署名Θ=DeC(Z) を計算して上記利用者に送信
し、 上記ステップ(7) において、上記利用者は、受信した上
記署名Θに対しブラインド署名後処理C=GeC(Θ)を行
って上記金額Aの上記電子現金Cを得、 上記第3者への支払のための処理は以下のステップを含
む: (7-1) 上記利用者は、上記情報C,N,P,Qから 【数1】 を計算し、また上記電子現金Cと利用金額に対応するノ
ードj1…jqとNから 【数2】 を生成し、さらに、Γ0 ,Ωj1・・jq(q=1,…,t),N,
P,Qから利用金額に対応するノードの値のべき乗根 【数3】 を計算し、 (7-2) 上記利用者は、I,N,Xj1・・jt,B,b,C及
びj1,…,jtを上記第3者に送信し、 (7-3) 上記第3者は、情報(I,N) に対する利用許可証B
の正当性を、Bが VeB((N,I),B)=OK を満たすことで確認し、上記電子現金Cの情報(B,b) に
対する正当性を、Cが VeC(g(B‖b),C)=OK を満たすことで確認し、BとCが正当な場合には、(a/
b) をヤコビ記号とすると (X/N)= -1 を満足するかどうかを検証し、次に、C,Nから、 【数4】 を計算し、C,j1…jq,Nから 【数5】 を計算し、さらに、fΓ(C‖0‖N),Ωj1..jq(q=1,…,
t),Nから、Xが次の関係を満足するかどうかを検証
し、ここで、dは±1,±2のいずれかの値であり、 【数6】 (7-4) これら全ての検査に合格すれば、上記第3者は、
質問Ei∈{0,1},i=1,…,K'を生成して上記利用者へ送
信し、 (7-5) 上記利用者は電子現金C、利用金額に対応するノ
ードの値(i,j1…jt),N,秘密情報P,Qから 【数7】 を計算し、さらにN,PとQ,Λi およびEi から 【数8】 を計算して、上記第3者に送信し、 (7-6) 上記第3者は、 (Yi/N)=(-1)Ei を満たすかを検証し、またC,i,j1…jt,N及びYi
に対して、 【数9】 d'=±1or±2 であることを検証して、合格すれば上記第3者は上記ノ
ードj1,…,jtに該当する金額として上記I,N,X,B,b,C,
j1,…,jt,Ei,Yiを受理し、 ここで、記号の意味は以下のように定義される: <z>QR=dz mod N ではd∈{±1,±2}かつdz mod Nが平方剰余であ
り、 [x1/2mod N]1=y' では y'2=xmod N,(y'/N)=1 かつ 0<y'< N/2,1≦t [x1/2mod N]-1=y" では y"2=xmod N,(y"/N)=-1 かつ 0<y"<N/2,1≦
t。
5. The method according to claim 4, wherein the secret information is prime numbers P and Q having a relation of N = P × Q, and in the step (5), the user is the random number b.
And the above-mentioned license B, the one-way function g (B | b) is calculated, and blind signature preprocessing Z = F is calculated for this g (B | b).
eC (g (B | b)) is calculated, and the information Z obtained as a result is used as the information including the electronic cash C together with the amount information A and the second information.
Then, in the step (6), the second institution uses the secret key corresponding to the amount A of the electronic cash to transmit the information Z.
Signature theta = calculates the D eC (Z) for sending to the user, in step (7), the user, after a blind signature to the signature theta received treated C = G eC (Θ) To obtain the electronic cash C of the amount A, and the processing for payment to the third party includes the following steps: (7-1) The user has the information C, N, P, From Q [Formula 1] Is calculated, and from the electronic cash C and the nodes j 1 ... j q and N corresponding to the usage amount, Is generated, and further, Γ 0 , Ω j1 ... jq (q = 1, ..., t), N,
Power root of the value of the node corresponding to the usage amount from P and Q [Equation 3] (7-2) The above user transmits I, N, X j1 ··· jt , B, b, C and j 1 , ..., j t to the above third party, and (7-3) ) The third party is the license B for information (I, N)
The validity of B is confirmed by satisfying V eB ((N, I), B) = OK, and the validity of C for the information (B, b) of the electronic cash C is V eC (g ( Confirm by satisfying B ‖b), C) = OK, and if B and C are valid, (a /
If b) is a Jacobian symbol, it is verified whether (X / N) = -1 is satisfied. Then, from C and N, And calculate from C, j 1 ... j q , N And f Γ (C‖0‖N), Ω j1 .. jq (q = 1,…,
From t) and N, it is verified whether X satisfies the following relation, where d is one of ± 1 and ± 2, and (7-4) If all of these tests are passed,
The question E i ε {0,1}, i = 1, ..., K ′ is generated and transmitted to the user, (7-5) the user is electronic cash C, the value of the node corresponding to the amount of money used. (i, j 1 ... j t ), N, [Equation 7] from the secret information P, Q From N, P and Q, Λ i and E i, Is calculated and transmitted to the third party, and (7-6) the third party verifies whether (Yi / N) = (-1) Ei is satisfied, and C, i, j 1 ... j t , N and Y i
Against, d '= verifies that the ± 1OR ± 2, the node j 1 is the third party if they pass, ..., the I as an amount corresponding to j t, N, X, B , b, C,
Accept j 1 , ..., j t , E i , Y i , where the meanings of the symbols are defined as follows: <z> QR = dz mod where d ∈ {± 1, ± 2} and dz mod N is the quadratic residue, [x 1/2 mod N] 1 = y ' in y' 2 = xmod N, ( y '/ N) = 1 and 0 <y'<N / 2,1 ≦ t [x 1/2 mod N] -1 = y ", y" 2 = xmod N, (y "/ N) =-1 and 0 <y"<N / 2, 1≤
t.
【請求項6】 請求項4の方法において、上記秘密情報
はN=P×Qなる関係にある素数P,Qであり、 上記ステップ(5) において、上記利用者は、上記乱数b
と上記利用許可証Bより、一方向性関数g(B‖b)を計算
し、このg(B‖b)に対してブラインド署名前処理Z=F
eC(g(B‖b))を計算し、その結果得られた情報Zを上記
電子現金Cを含む情報として金額情報Aと共に上記第2
機関に送信し、 上記ステップ(6) において、上記第2機関は、その電子
現金の上記金額Aに対応する秘密鍵を用いて上記情報Z
に対する署名Θ=DeC(Z) を計算して上記利用者に送信
し、 上記ステップ(7) において、上記利用者は、受信した上
記署名Θに対しブラインド署名後処理C=GeC(Θ)を行
って上記金額Aの上記電子現金Cを得、 上記第3者への支払のための処理は以下のステップを含
む: (7-1) 上記利用者は、上記情報C,N,P,Qから 【数10】 を計算し、また上記電子現金Cと利用金額に対応するノ
ードj1…jqとNから 【数11】 を生成し、さらに、Γ0 ,Ωj1・・jq(q=1,…,t),N,
P,Qから利用金額に対応するノードの値のべき乗根 【数12】 を計算し、 (7-2) 上記利用者は、I,N,Xj1・・jt,B,b,C及
びj1,…,jtを上記第3者に送信し、 (7-3) 上記第3者は、情報(I,N) に対する利用許可証B
の正当性を、Bが VeB((N,I),B)=OK を満たすことで確認し、上記電子現金Cの情報(B,b) に
対する正当性を、Cが VeC(g(B‖b),C)=OK を満たすことで確認し、BとCが正当な場合には、(a/
b) をヤコビ記号とすると (X/N)= -1 を満足するかどうかを検証し、次に、C,Nから、 【数13】 を計算し、C,j1…jq,Nから 【数14】 を計算し、さらに、fΓ(C‖0‖N),Ωj1..jq(q=1,…,
t),Nから、Xが次の関係を満足するかどうかを検証し
(ここで、dは±1,±2のいずれかの値である)、 【数15】 (7-4) これら全ての検査に合格すれば、上記第3者は、
質問E∈Zu={0,1,…,u-1} を生成して上記利用者へ送信
し、 (7-5) 上記利用者は電子現金C、利用金額に対応するノ
ードの値j1…jt,N,秘密情報P,Qから 【数16】 を計算し、さらにN,PとQ,Λj1..jt及びEから 【数17】 を計算して、上記第3者に送信し、 (7-6) 上記第3者は、 (Yj1..jt/N)=1 を満たすかを検証し、またC,j1…jt,N及びYji..
jt に対して、 【数18】 d'=±1or±2 であることを検証して、合格すれば上記第3者は上記ノ
ードj1,…,jtに該当する金額として上記I,N,X,B,b,C,
j1,…,jt,E,Yj1..jtを受理し、 ここで、記号の意味は以下のように定義される: <z>QR=dz mod N ではd∈{±1,±2}かつdz mod Nが平方剰余であ
り、 【数19】
6. The method according to claim 4, wherein the secret information is prime numbers P and Q having a relation of N = P × Q, and in the step (5), the user is the random number b.
And the above-mentioned license B, the one-way function g (B | b) is calculated, and blind signature preprocessing Z = F is calculated for this g (B | b).
eC (g (B | b)) is calculated, and the information Z obtained as a result is used as the information including the electronic cash C together with the amount information A and the second information.
Then, in the step (6), the second institution uses the secret key corresponding to the amount A of the electronic cash to transmit the information Z.
Signature theta = calculates the D eC (Z) for sending to the user, in step (7), the user, after a blind signature to the signature theta received treated C = G eC (Θ) To obtain the electronic cash C of the amount A, and the processing for payment to the third party includes the following steps: (7-1) The user has the information C, N, P, From Q [Formula 10] From the nodes j 1 ... j q and N corresponding to the electronic cash C and the usage amount, Is generated, and further, Γ 0 , Ω j1 ... jq (q = 1, ..., t), N,
Power root of the value of the node corresponding to the usage amount from P and Q (7-2) The above user transmits I, N, X j1 ··· jt , B, b, C and j 1 , ..., j t to the above third party, and (7-3) ) The third party is the license B for information (I, N)
The validity of B is confirmed by satisfying V eB ((N, I), B) = OK, and the validity of C for the information (B, b) of the electronic cash C is V eC (g ( Confirm by satisfying B ‖b), C) = OK, and if B and C are valid, (a /
It is verified whether (X / N) = -1 is satisfied when b) is a Jacobian symbol, and then from C and N, And calculate from C, j 1 ... j q , N And f Γ (C‖0‖N), Ω j1 .. jq (q = 1,…,
From t) and N, it is verified whether X satisfies the following relation (where d is one of ± 1 and ± 2), and (7-4) If all of these tests are passed,
The question E ∈ Z u = {0,1, ..., u-1} is generated and transmitted to the user, (7-5) the user is electronic cash C, and the value j of the node corresponding to the amount of money used. From 1 ... j t , N, secret information P, Q, And further from N, P and Q, Λ j1 .. jt and E, Is calculated and transmitted to the third party, and (7-6) the third party verifies whether (Y j1 .. jt / N) = 1 is satisfied, and C, j 1 ... j t , N and Y ji ..
For jt , d '= verifies that the ± 1OR ± 2, the node j 1 is the third party if they pass, ..., the I as an amount corresponding to j t, N, X, B , b, C,
Accepts j 1 , ..., j t , E, Y j1 .. jt , where the meanings of the symbols are defined as follows: <z> QR = dz mod N where d ∈ {± 1, ± 2} and dz mod N is the quadratic residue, and
【請求項7】 請求項5又は6の方法において、上記第
1機関が使用するRSA法の公開鍵を(eB,nB) とし、 nB=P×Q, eB×dB≡1(mod L), L=LCM{(P-1),(Q-1)} とすると、上記ステップ(3) における上記第1機関によ
る上記情報(N,I) に対する署名を DeB(N,I)=(N,I)dBmod nB の計算で行い、上記ステップ(7-3) における上記利用許
可証Bの上記情報(N,I)に対する正当性の確認を (N,I)≡BeB(mod nB) が満足するとき合格(OK)とする。
7. The method according to claim 5 or 6, wherein the public key of the RSA method used by the first institution is (e B , n B ), and n B = P × Q, e B × d B ≡1 (mod L), L = LCM {(P-1), (Q-1)}, the signature of the information (N, I) by the first institution in the step (3) is D eB (N, I) = (N, I) dB mod n B is calculated, and the correctness of the information (N, I) of the license B in step (7-3) above is confirmed (N, I) ≡. If B eB (mod n B ) is satisfied, the result is a pass (OK).
【請求項8】 請求項5又は6の方法において、上記第
2機関が使用するRSA法の公開鍵を(eC,nC) とし、 nC=P×Q, eC×dC≡1(mod L), L=LCM{(P-1),(Q-1)} とし、上記ステップ(5) における上記利用者による上記
ブラインド署名前処理F eCの関数を、 Z=FeC(m)=reC×m mod nC とし、上記ステップ(6) における上記第2機関による上
記署名DeCの関数を、 Θ=DeC(Z)=ZdC modnC とし、上記ステップ(7) における上記利用者による上記
ブラインド署名後処理G eCの関数を C=GeC(Θ)=Θ/r mod nC とし、上記ステップ(7-3) における上記第3者による上
記電子現金Cの上記情報(B,b) に対する正当性の確認を (B,b)≡CeC(mod nC) が成立するとき合格(OK)とする。
8. The method according to claim 5 or 6, wherein:
The public key of the RSA method used by the two institutions is (eC, nC) And nC= P × Q, eC× dC≡1 (mod L), L = LCM {(P-1), (Q-1)}
Blind signature preprocessing F eCThe function of Z = FeC(m) = reC× m mod nC And by the above-mentioned second organization in step (6) above.
Signature DeCΘ = DeC(Z) = ZdC modnC And the above by the user in step (7) above.
Blind signature post-processing G eCThe function of C = GeC(Θ) = Θ / r mod nC And by the third party in step (7-3) above.
Confirm the validity of the electronic cash C to the above information (B, b) (B, b) ≡CeC(mod nC) Is established, it is considered a pass (OK).
【請求項9】 請求項1、3又は4の方法において、上
記第1及び第2機関はそれぞれ同じ銀行の一部である。
9. The method of claim 1, 3 or 4, wherein the first and second institutions are each part of the same bank.
【請求項10】 請求項1、3又は4の方法において、
上記第1機関は信託機関であり、上記第2機関は上記信
託機関とは別の銀行である。
10. The method according to claim 1, 3 or 4,
The first agency is a trust agency, and the second agency is a bank different from the trust agency.
【請求項11】 請求項1又は4の方法において、上記
第1機関内の複数の部局が、順次互いに対応付けされた
それぞれ異なる対の関連付け情報αにより、上記利用者
の実名IDU と、上記仮名I及び公開情報Nの少なくとも
一方との間を順次対応付けさせて管理しており、上記複
数の部局が協力した場合にのみ、上記仮名I及び公開情
報Nの少なくとも一方と実名IDU の対応関係を、これら
間の関連付け情報αを通して得られるようにされてい
る。
11. The method according to claim 1 or 4, wherein the plurality of departments in the first institution use the real name ID U of the user and the real name ID U of the user by the association information α of different pairs sequentially associated with each other. At least one of the pseudonym I and the public information N is managed in association with each other in sequence, and at least one of the pseudonym I and the public information N is associated with the real name ID U only when the above-mentioned plural departments cooperate. The relationship can be obtained through the association information α between them.
【請求項12】 請求項3又は11の方法において、上
記第1機関の上記複数の部局は複数の信託機関であり、
上記第2機関は上記複数の信託機関とは別の銀行であ
る。
12. The method according to claim 3 or 11, wherein the plurality of departments of the first institution are a plurality of trust institutions,
The second institution is a bank other than the plurality of trust institutions.
【請求項13】 追跡可能な電子現金を実施する方法に
従い、利用許可証を発行し、電子現金を発行する機関装
置であり、以下を含む:利用者から公開情報Nと、上記
利用者の実名IDU を含む情報を受信し、上記実名IDU
対応する仮名Iを生成する仮名生成手段と、 上記仮名Iと上記公開情報Nの少なくとも一方と、上記
実名IDU との対応関係を保持する対応関係メモリ手段
と、 上記公開情報Nと上記仮名を含む情報に対し利用許可証
用秘密鍵を使って第1の署名用関数DeBにより署名をし
て利用許可証Bを含む情報として上記利用者に送信する
利用許可証用署名手段と、 上記利用者から受信した上記利用許可証Bを含む情報に
対し第2の署名用関数DeCにより署名を行い、電子現金
情報として上記利用者に送信する電子現金用署名手段。
13. An institutional device that issues a usage permit and issues electronic cash according to a method of performing traceable electronic cash, including: public information N from the user and the real name of the user. receiving information including the ID U, holds a pseudonym generating means for generating a pseudonym I corresponding to said real name ID U, and at least one of said pseudonym I and said public information N, the correspondence between the real name ID U The correspondence memory means and the information including the public information N and the pseudonym are signed by the first signature function DeB using the secret key for the license, and the information is used as the information including the license B. And the information including the license B received from the user is signed by the second signature function D eC and transmitted to the user as electronic cash information. Electronic cash signature means to do.
【請求項14】 請求項13の機関装置は、第1機関と
第2機関を含み、上記第1機関は上記仮名生成手段と、
上記対応関係メモリ手段と、上記利用許可証用署名手段
とを含み、上記第2機関は上記電子現金用署名手段を含
む。
14. The engine apparatus according to claim 13 includes a first engine and a second engine, wherein the first engine includes the kana generation means,
The correspondence relationship memory means and the usage permit signature means are included, and the second institution includes the electronic cash signature means.
【請求項15】 請求項14の機関において、上記第1
機関は複数の部局を含み、上記複数の部局は、順次互い
に対応付けされたそれぞれ異なる対の関連付け情報αに
より、上記利用者の実名IDU と、上記仮名I及び公開情
報Nの少なくとも一方との間を順次対応付けさせて管理
する関連付けメモリを有しており、上記複数の部局が協
力した場合にのみ、上記仮名I及び公開情報Nの少なく
とも一方と実名IDU の対応関係を、これら間の関連付け
情報αを通して得られるようにされている。
15. The engine according to claim 14, wherein the first
The institution includes a plurality of departments, and the plurality of departments are provided with the real name ID U of the user and at least one of the pseudonym I and the public information N by the association information α of different pairs sequentially associated with each other. It has an association memory for sequentially associating and managing the spaces, and only when the plurality of departments cooperate with each other, the correspondence relationship between at least one of the pseudonym I and the public information N and the real name ID U is defined between them. It can be obtained through the association information α.
【請求項16】 請求項14又は15の機関において、
上記第1及び第2機関はそれぞれ同じ銀行の一部であ
る。
16. The engine according to claim 14 or 15,
The first and second institutions are each part of the same bank.
【請求項17】 請求項14又は15の機関において、
上記第1機関は信託機関であり、上記第2機関は上記信
託機関とは別の銀行である。
17. The engine according to claim 14 or 15,
The first agency is a trust agency, and the second agency is a bank different from the trust agency.
【請求項18】 請求項15の機関において、上記第1
機関の上記複数の部局は複数の信託機関であり、上記第
2機関は上記複数の信託機関とは別の銀行である。
18. The engine according to claim 15, wherein the first
The departments of the institution are trust institutions, and the second institution is a bank separate from the trust institutions.
JP18754796A 1995-07-17 1996-07-17 Trackable electronic cash execution method and device Expired - Fee Related JP3435677B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18754796A JP3435677B2 (en) 1995-07-17 1996-07-17 Trackable electronic cash execution method and device

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
JP18028195 1995-07-17
JP7-180281 1995-07-17
JP7-246415 1995-09-25
JP24641595 1995-09-25
JP24641695 1995-09-25
JP7-246416 1995-09-25
JP18754796A JP3435677B2 (en) 1995-07-17 1996-07-17 Trackable electronic cash execution method and device

Publications (2)

Publication Number Publication Date
JPH09153103A true JPH09153103A (en) 1997-06-10
JP3435677B2 JP3435677B2 (en) 2003-08-11

Family

ID=27474926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18754796A Expired - Fee Related JP3435677B2 (en) 1995-07-17 1996-07-17 Trackable electronic cash execution method and device

Country Status (1)

Country Link
JP (1) JP3435677B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002530723A (en) * 1998-11-25 2002-09-17 アナトリエヴィッチ ゾロタレフ,オレグ Method for effecting payment and apparatus therefor
JP2002329096A (en) * 2001-04-27 2002-11-15 Nippon Telegr & Teleph Corp <Ntt> Electronic value exchange device
JP2012505588A (en) * 2008-10-14 2012-03-01 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Method and apparatus for kana generation and authentication

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002530723A (en) * 1998-11-25 2002-09-17 アナトリエヴィッチ ゾロタレフ,オレグ Method for effecting payment and apparatus therefor
JP2002329096A (en) * 2001-04-27 2002-11-15 Nippon Telegr & Teleph Corp <Ntt> Electronic value exchange device
JP2012505588A (en) * 2008-10-14 2012-03-01 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Method and apparatus for kana generation and authentication

Also Published As

Publication number Publication date
JP3435677B2 (en) 2003-08-11

Similar Documents

Publication Publication Date Title
US5889862A (en) Method and apparatus for implementing traceable electronic cash
JP7451797B2 (en) Computer-implemented systems and methods suitable for increasing the security of instant offline blockchain transactions
Wang et al. A flexible payment scheme and its role-based access control
JP3329432B2 (en) Hierarchical electronic cash execution method and apparatus used therefor
US20220215355A1 (en) Method for directly transmitting electronic coin data records between terminals and payment system
CN113486407A (en) Deposit receipt management system and method based on block chain
Wang et al. A consumer scalable anonymity payment scheme with role based access control
JP3435677B2 (en) Trackable electronic cash execution method and device
JP3388566B2 (en) Electronic check method and apparatus with license
JPH0752460B2 (en) Electronic cash implementation method and apparatus
US20230039214A1 (en) Systems and methods for compliance checks
Noam et al. Realizing privacy aspects in blockchain networks
JP3171227B2 (en) Electronic banknote implementation method with a trust institution
Wang et al. Building a consumer scalable anonymity payment protocol for Internet purchases
JP2879792B2 (en) Method and apparatus for splitting and using electronic cash
JP2631781B2 (en) Electronic cash implementation method
Franklin et al. The blinding of weak signatures
JP3171228B2 (en) Electronic bill execution method using multiple trust institutions
JP3599493B2 (en) Electronic cash method and user device with separate issuing agency number registration type
CN113486408B (en) Deposit receipt management system and method based on block chain
JP3334013B2 (en) Electronic cash distribution method
Lee et al. Smart card based off-line micropayment framework using mutual authentication scheme
JP2631776B2 (en) Electronic cash implementation method
JP3435682B2 (en) Electronic cash deposit method, device thereof, and program recording medium
JP2805494B2 (en) Authentication method and device used therefor

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090606

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees