JP3388485B2 - 匿名電子現金預け入れ方法、その装置およびプログラム記録媒体 - Google Patents

匿名電子現金預け入れ方法、その装置およびプログラム記録媒体

Info

Publication number
JP3388485B2
JP3388485B2 JP22038397A JP22038397A JP3388485B2 JP 3388485 B2 JP3388485 B2 JP 3388485B2 JP 22038397 A JP22038397 A JP 22038397A JP 22038397 A JP22038397 A JP 22038397A JP 3388485 B2 JP3388485 B2 JP 3388485B2
Authority
JP
Japan
Prior art keywords
signature
electronic cash
deposit
depositor
bank
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP22038397A
Other languages
English (en)
Other versions
JPH1166194A (ja
Inventor
真一 平田
秀実 森畠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP22038397A priority Critical patent/JP3388485B2/ja
Publication of JPH1166194A publication Critical patent/JPH1166194A/ja
Application granted granted Critical
Publication of JP3388485B2 publication Critical patent/JP3388485B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、電気通信システ
ムやICカードを利用してディジタル情報の授受により
電子的な現金を実現する電子現金方法に関する。
【0002】
【従来の技術】電子現金はICカードを電子現金の財布
(電子財布)とするような形で広く使われるようにな
る。その際には、電子現金はいかなる物理媒体にも依存
しないで、情報そのものが電子現金となるような形で電
子財布に格納される形態が望ましい。
【0003】電子現金の一つの実現策は、物理的な手段
によって安全性を保証する方法である。例えば、テレホ
ンカード等の磁気カードによるプリペイドカードは、カ
ード上の磁気状態を他のカードに物理的にコピーするこ
とが困難であるということを安全性の要として成り立っ
ている。しかしながら、この安全性の前提は世の中の製
造技術レベルの推移により大きく変化する。さらに、こ
の方式は、常に物理媒体(磁気カード等)と一体で実現
されるため、情報の形の電子現金のように通信回線で転
送するようなことはできない。
【0004】別の実現策は、クレジットカードのような
電子的IDカード(電子クレジットカードもしくは電子
小切手)を用いて、後日決済する方法である。電子クレ
ジットカードでは、手書きの署名の代わりにディジタル
署名を用いることにより、処理の完全電子化(情報化)
を実現でき、その決済用情報を通信回線で転送できる。
しかし、この方式の欠点は、利用者のプライバシを保証
できない点である(これは、現行のクレジットカードや
小切手においても同様である)。つまり、クレジットカ
ードを発行・決済する機関は、自由に利用者の購買履歴
を入手できるのはもとより、また、小売店までも利用者
のクレジットカード番号や署名を知ることができる。
【0005】一方、ブラインド署名(詳細は後述する)
と支払い時でのオンラインチェック(小売店が、利用者
の提示した情報が二重/不正使用されていないかを、管
理センタにオンラインで問い合わせること。)を組み合
わせることにより、上述した情報化、安全性、プライバ
シの問題を解決できる。しかし、各小売店が各利用者の
購買時に必ずセンタにアクセスすることは、処理時間
(利用者の待ち時間)、通信コスト、管理センタでのオ
ンライン処理コスト及びデータベース維持管理コスト等
を考えると、現実的な解とは言えない。従って、現金支
払い時の処理はオフラインで処理できることが望まし
い。
【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(1
988)やT.Okamoto etal. “Disposable Zero-Knowledge
Authentications and Their Applications to Untracea
ble Electronic Cash,”Advances in Cryptology-Cryt
o'89, Lecture Notes in Computer Science 435, pp.48
1-496, Springer-Verlag, Berlin(1989)、特願平2−
88838号「電子現金実施方法及びその装置」などが
ある。
【0007】まず、利用者のプライバシを保証するため
の基本技術であるブラインド署名について説明する。ブ
ラインド署名では、署名者に文書の内容を秘密にしたま
まで署名を付けてもらう。RSA法に基づいた方式が文
献 D.Chaum, “Security without Identification:
Transaction Systems to Make Big Brother Obsolete,
”Comm. of the ACM, 28, 10, pp.1030-1044(1985)
で、ゼロ知識対話証明に基づいたブラインド署名が文献
T.Okamoto etal. “Divertible Zero-Knowledge Intera
ctive Proofs and Commutative Random Self-Reducibl
e, ”The Proc. of Eurocrypt'89(1989) で示されてい
る。
【0008】署名の要求者は、ブラインド署名前処理に
よって文書(m)を乱数(r)で攪乱してブラインドメ
ッセージ(x)を生成する。署名者は、秘密鍵を用いて
xに対応する仮の署名(y)を計算する。このとき、m
はrによって攪乱されているので、署名者は文書(m)
を知ることはできない。要求者は、ブラインド署名後処
理によってyから乱数(r)の影響を除去して、本来の
文書(m)に対する真の署名(y′)を求めて、mと
y′の組を検証者に送信する。検証者は、署名者の公開
鍵を用いてy′がmの署名であることを確認する。ここ
で、検証者はyとy′の対応関係を知ることはできな
い。ブラインド署名の手順 Aを署名者、Pを署名要求者、eA を署名者Aの公開情
報とする。Fをブラインド署名前処理アルゴリズム、D
を多重ブラインド署名アルゴリズム、Gをブラインド署
名後処理アルゴリズムとする。これらの関数の使用法
は、FeAとDeAから作成した仮の署名Ω(=DeA(FeA
(m1 ),…,FeA(mk ))) にGeAを施して、k個の
メッセージm1 ,…,mk に対するAの真の署名B=D
eA(m1 ,…,mk )を算出する。署名者Aと要求者P
は以下の手順に従って多重ブラインド署名を作成する。
【0009】ステップ1:Pはブラインド署名前処理に
より、k個のメッセージ{mi |i=1,2,…,k}
からk個のブラインドメッセージxi ={FeA(mi
|i=1,2,…,k}を生成して、Aに送信する。こ
こで、それぞれのxi =FeA(mi )は独立に計算され
ており、関数FeAは乱数を使用してmi を隠す。 ステップ2:Aは仮の署名Ω=DeA(FeA(m1 ),
…,FeA(mk ))をk個のブラインドメッセージFeA
(m1 ),…,FeA(mk )から生成して、Pに送信す
る。
【0010】ステップ3:Pは、GeAを用いたブライン
ド署名後処理により、m1 ,…,m k に対応したAの真
のディジタル署名B=DeA(m1 ,…,mk )を算出す
る。 (ブラインド署名の手順終わり)RSA法をブラインド
署名に使用する場合には、ブラインドメッセージ(ブラ
インド署名前処理)を、xi =Fe ( mi )=ri e ×
m modn、ここでri は攪乱するための乱数、仮の署名
を、 y=Ω=De ( x1 , ・・・,xk ) =Π( Xi ) d mo
d n Πは1kについて行う ブラインド署名後処理を、 Ge (y)=Ω/( r1 ×・・・×rk ) mod n とそれぞれおいて、署名は、 y=B=Π( mi ) d mod n Πは1kについて行うとなる。このとき、検証式
e (m1 ,…,mk ,B)は (Π( mi ) )≡Be (mod n) のとき合格(OK)を出力する。ここで、(e,n)は
Aの使用するRSA法の公開鍵であり、次の式をみた
す。
【0011】n=P×Q e×d≡1(mod L) ただしL=LCM{(P−1),(Q−1)} ここで、L=LCM{a,b}はaとbの最小公倍数
を、a≡b(mod n)は(a−b)がnの倍数であるこ
とを表す。以降ではdを1/eと表すこともある。以下
の Chaum・Fiat・Naor法ではk>1の場合を、後述する
実施例では、k=1の場合を想定する。
【0012】RSA暗号の構成例は、文献 Rivest, R.
L. etal. “A Method for ObtainingDigital Signature
s and Public-Key Cryptosystems”,Communications o
f the ACM, Vol. 21, No.2, pp.120-126,(1978)に示さ
れている。ブラインド署名の構成法は、例えば、Chaum,
D. “Blind Signature Systems”,US Patent No.:4,7
59,063 や Ohta, K. etal. “Authentication System a
nd Apparatus Therefor”,US patent No.:4,969,189
に示されている。
【0013】ところで、利用者のブライバシは、ブライ
ンド署名を用いることで、利用者だけの責任において保
証できる。すなわち、攪乱用の乱数rの付加と除去を利
用者が実行するので、rを秘密にする限りは、誰もがy
=Ωとy′=Bの対応関係を知ることはできないことに
注意しよう。ここで、代表的な電子現金方式である Cha
um・Fiat・Naor法での、銀行と利用者間での電子現金の
発行処理、利用者の小売店での電子現金の支払い、小売
店と銀行間の決裁処理について述べる。電子現金の発行処理 利用者Pが、銀行Aから電子現金Cを発行してもらう手
順を示す。ここで、IDは利用者Pの識別情報、e
A は、利用者が指定する電子現金の金額(例えば1万
円)に対応する銀行のディジタル署名用の公開鍵とす
る。利用者が銀行から電子現金を発行してもらう手順
は、以下の通りである。
【0014】ステップ1:利用者Pは、乱数ai (ただ
し、i=1,…,K)を生成して、公開された一方向関
数gを用いて、 xi =g(ai ) yi =g(ai (+)ID) を求める。(+)は排他的論理和を示す。
【0015】ステップ2:Pは、公開された一方向関数
fとブラインド署名前処理関数FeAを用いて、 Wi =FeA(f(xi ,yi )) を計算して、銀行に提示する。 ステップ3:銀行Aは、1からKの中からランダムにK
/2個の部分集合U={ij }、(ただし1K/
2に対して1 j K)を選び、それを開示要求とし
て利用者に送信する。(以下では、表記を簡単にするた
めに、U={K/2+1,K/2+2,…,K)}が開
示要求として指定されたと仮定して説明する。)K個の
中からランダムにK/2個の部分集合の開示を要求する
手順を「抜き打ち検査」とよぶ。
【0016】ステップ4:利用者Pは、銀行Aから開示
要求を受信すると、指定されたK/2個のai とWi
作成するために関数FeAの中で用いた乱数をAに開示す
る。 ステップ5:銀行Aは、開示されたK/2組のすべてに
ついて正当性の検証を行ない、いずれかの検査に不合格
のときには、以降の処理を中止する。すべての検査に合
格のときには、銀行Aは開示対象でないi(ここでは、
i=1,2,…,K/2)に対して、次の手順を行な
う。
【0017】ステップ6:銀行Aは、 Ω=DeA(W1 ,…,WK/2 ) を計算して、利用者Pに送信する。 ステップ7:利用者Pは、銀行からの受信データΩから
電子現金Cを以下のように計算する。
【0018】C=GeA(Ω)=DeA(f(x1 ,y
1 ),…,f(xK/2,K/2 ))電子現金による支払 つぎに、利用者Pが銀行Aより発行された電子現金Cを
用いて小売店Vで支払をする場合について説明する。そ
れぞれのi(ただしi=1,2,…,K/2)に対し
て、次の処理を実行する。
【0019】ステップ1:利用者Pは、電子現金(C)
を小売店Vへ送信する。 ステップ2:小売店Vは乱数ビットei を生成して、利
用者Pへ送信する。 ステップ3:利用者Pは、ei =1のときai とy
i を、ei =0のときxiとai (+)IDを小売店V
へ送信する。 ステップ4:小売店Vは、銀行Aの公開鍵eA を用い
て、Cがメッセージf(x1 ,y1 ),…,f(x
K/2 ,yK/2 )の正しい署名であることを検査する。 決済 最後に、小売店Vと銀行Aの間の決済方法について説明
する。小売店Vは、利用者との電子現金使用時の交信履
歴Hを銀行に提出する。銀行はHの正当性を検査し、検
査に合格すれば、Hを記憶しておくと共に小売店の口座
に該当する金額を払い込む(もしくは、何らかの手段で
該当する金額を小売店に支払う)。銀行は、電子現金の
不正使用を見つけると、Hとすでに記憶している交信履
歴からCに対応して記憶しているai とai (+)ID
を探し出して、不正者の識別情報IDを確定する。
【0020】以上が Chaum・Fiat・Naor法であるが利用
者が不正にCを2回使用すると、e i =1のときai
i =0のときai (+)IDが銀行に記憶されている
ので、1回目と2回目のei が異なる場合には、a
i (+)(ai (+)ID)=IDが成り立つので、銀
行はこれを計算してIDを検出できる。銀行は、K/2
ビットを問い合わせるので、Cの二重使用を検出できな
い確率は2-K/2となる(通常、K=20程度が推奨され
ている)。
【0021】前述の電子現金方法は、複数の銀行が電子
現金を発行した場合、利用者はそれぞれの銀行公開鍵を
保有することが必要となるほか、銀行も他行発行の電子
現金を受け取った場合、不正使用の有無を検査するため
に発行元の銀行に戻す仕組みが必要となるなど、それぞ
れ管理負担が大きい。さらに、電子現金を払い出す銀行
は、必ず発行電子現金を負債として会計処理する発行銀
行となる必要があり、ある程度の信用力をもち、電子現
金の発行管理負担等を担う能力のある銀行でないと事実
上電子現金を利用できないほか、電子現金の発行機関を
1つに限りこれを一元的に管理することが不可能であっ
た。
【0022】また、前述の電子現金方法は、不正にコピ
ーされた電子現金の使用者を特定する目的で、過去に使
用された全ての電子現金の使用履歴を銀行が保持しなけ
ればならず、かつ決済時にはこれら全ての使用履歴を検
索する必要があり、即時決済を行うには大容量かつ高速
なデータベースが必要になるという問題がある。銀行が
保持すべき電子コインの履歴を削減する一つの方法は、
銀行が利用者に対し預金引き下ろし時に引換証を発行
し、一定期間内に利用者はこの引換証と交換に電子コイ
ンを発行して貰い、この時銀行はコイン番号を記憶して
おき、決済終了後に使用済コインの番号情報を削除する
ことである。しかしながら、この方法では、利用者にと
って引き下ろしの手続きが2回に分割されて不便なほ
か、この引換証を受け取ってから電子現金を発行して貰
うまでの一定の期間に規則性がみられたり、引き出し回
数が多い等の目立った行動パターンがあると、銀行によ
って容易に身元が特定され、コイン番号と紐づけられる
可能性があり、匿名性が完全ではない。
【0023】このような点から特願平8−239263
号「発行機関分離型番号登録式電子現金方法および利用
者装置」を提案した。この提案した方法によれば、ま
ず、利用者装置は引換番号Rc(乱数でもよい)からな
る署名対象Cを作成する。ブラインド署名を用いてこの
署名対象Cに対する日付情報付の銀行署名SCを入手
し、このSCを引換証とし、その後、利用者装置はRc
およびSCを発行機関装置へ送付し、発行機関装置はS
Cに付けられた日付情報付銀行署名SCから、発行され
てから一定期間内にあることを検証するとともに、引換
番号Rcが引換履歴HCに記憶されていないことを確認
し、更に、利用者装置と同じ手順でRcよりCを計算
し、SCがCに対する銀行署名であることを確認する。
その後、コイン番号Rf(乱数でもよい)を発行し、R
fに基づいて電子コインFを発行し、引換番号Rcを引
換履歴HCに、コイン番号Rfに関する情報を発行履歴
HFへそれぞれ記憶する。前記確認のいずれかを満たさ
なかった場合は電子コインの発行を中止する。
【0024】支払に使用された電子コインFは決済時に
銀行Bへ送信され、銀行Bはこれをさらに発行機関装置
に送信し、発行機関装置はコイン番号Rfが記憶されて
いることを確認した後、Rfに関する情報を発行履歴H
Fから削除する。また、Rcの署名に含まれる日付から
一定期間の後、Rcに関する情報を引換履歴HCから削
除する。削除したRc、Rfに関する情報を外部記憶装
置へ保存することもできる。
【0025】更にこの提案方法の具体例を以下に説明す
る。この方法は図6に示すように信託機関装置600、
利用者装置700、銀行装置800、発行機関装置90
0、受領者装置1000、および銀行装置1100を構
成要素とし、これらは例えば通信回線を介して接続され
ているが、情報を記録できるICカード等を介しての接
続であってもよい。準備 この電子現金方法では、電子現金の利用者Uは、まず最
初に、信託機関Jと呼ぶ機関により、利用許可証を発行
してもらう。銀行Aは利用者Uの要求に従い、利用者U
にある金額の電子現金の引換証を発行する。発行機関O
は、利用者Uから提示された電子現金の引換証と交換に
電子現金(または、電子コインと呼ぶ)を発行する。利
用者Uは、その電子コインを額面金額になるまで何回で
も各種小売店等の支払いに用いる。最後に、各小売店等
は、利用者の各支払い毎に銀行で決済を行う。
【0026】ここで、信託機関装置600、利用者装置
700、銀行装置800、発行機関装置900の署名ア
ルゴリズムは全てRSA方式とする。信託機関装置60
0、利用者装置700、発行機関装置900、それぞれ
の秘密鍵と公開鍵は、(dj,Nj)と(ej,N
j)、(du,Nu)と(eu,Nu)、(d2,N
2)と(e2,N2)(利用者装置700の公開鍵は匿
名公開情報である)である。銀行Aが使用する署名用の
鍵の法はN1(=LCM(p1−1,q1−1))であ
り、e1,d1は日付と額面金額をもとに公開鍵指数部
生成関数f等によって、その都度生成される。公開鍵指
数部生成関数は、一定のアルゴリズムをもち、以下の条
件を満たすものであれば何でもよい。例えば、f
(・m1) をm1番目の素数へのマッピング関数とするこ
と等が考えられる。
【0027】f(・m1) ≠f(・m )・P(f(・k ))
mod N1 ただし、m1≠m, P(f(・k ))はf(・k )(k=
1,2,…n)の多項式 GCD(f(・),LCM(p1−1,q1−1))
=1 なお、秘密鍵d1は1/f(・) mod LCM(p1−
1,q1−1)を計算することによって求められる。
【0028】信託機関装置600の署名、銀行装置80
0の署名、発行機関装置900の署名、利用者装置70
0の署名はそれぞれ、利用許可証の正当性の検査、引換
証の正当性の検査、電子コインの正当性の検査、支払・
譲渡行為確認の検査に使用する。利用者装置の署名で
は、公開鍵中のeuは共通としても良いが、Nuは利用
者ごとに定める。また、署名時に使用する一方向性関数
g,hもあわせて定め、公開しておく。利用許可証の発行処理 利用者Uは、利用許可証を信託機関Jから発行してもら
う(図4参照)。この手順は、それぞれの利用者が、N
uの登録時に1度だけ行う。
【0029】ステップ1:利用者装置700はNuを信
託機関装置600に送信する。 ステップ2:信託機関装置600は、利用者装置700
の身元を何らかの方法で確認をしたのちに、有効期限等
の情報Iを生成し、NuおよびIに対する署名Bを演算
する。その後、この署名BとIを利用者装置700に送
信する。 ステップ3:利用者装置700は、信託機関装置600
からの受信データB,Iと匿名公開情報Nuとを利用許
可証(B,I,Nu)として、記憶装置701に記憶す
る。電子現金の引換証の発行処理 つぎに、利用者Uが銀行Aから電子現金の引換証を発行
してもらう手順を示す(図5参照)。ここで、N1は取
引を行う銀行に対応する公開鍵の法である。
【0030】また利用者装置700は、銀行装置800
から日付情報DとそのDに対する銀行装置800の署名
SDを受取り、Dが正しいものであると検証してある。 ステップ1:利用者装置700は、日付情報Dと引出額
wi(金額情報:例えば1万円)を公開鍵指数部生成器
702に入力し、金額署名用の公開鍵e1を計算する。
続いて、乱数発生器703を用いて乱数Rcを生成し
て、記憶装置701に記憶し、一方、その乱数Rcと記
憶装置701から読みだしたBより、ハッシュ演算器7
04を用いてg(B‖Rc)を計算する。続いて、乱数
生成器703を駆動して乱数rを生成し、引出額wiと
先に計算したe1および公開鍵の法N1とともにブライ
ンド署名前処理器705へ入力し、次式の処理を行う。
【0031】 Z=g(B‖Rc)re1 mod N1 (3) この処理結果Zを電子コインの金額情報wi、日付情報
Dと共に銀行装置800に送信する。 ステップ2:銀行装置800は、秘密鍵作成用情報p
1,q1、およびD,wiを秘密鍵指数部生成器802
に入力し、金額署名用の秘密鍵d1を計算する。このd
1と公開鍵の法N1を署名生成器803へ入力し、受信
情報Zに対して次の仮署名処理を行う。
【0032】 Q=Zd1 mod N1 (4) この仮署名Qを利用者装置700に送信する。同時に利
用者Uの口座から該当する金額を引き落とす等の適当な
会計処理を講じる。 ステップ3:利用者装置は、乱数r、公開鍵の法N1と
受信情報Qとをブラインド署名後処理器706へ入力
し、次式の処理を行って指定した金額の引換証SCを得
る。
【0033】 SC=Q/r mod N1 (5) ここで、SC=g(B‖Rc)d1 mod N1となること
になる。引換証と電子現金の交換処理 引き続き、利用者装置700は引換証を発行機関装置9
00に送り、電子コインに引換える。以下では、この引
換処理の手順を示す(図6参照)。
【0034】ステップ1:利用者装置700は、発行機
関装置900へ引換証SCおよびwi,B,D,Rcを
送信する。 ステップ2:発行機関装置900は受信したDおよび、
記憶装置901に記憶されている引換証の有効日付JD
を比較器902へ入力してDが有効であることを確認す
る。Dが有効な場合は、Rcを検索器903へ入力して
Rcが引換履歴HCに記録されていないことを確認す
る。Rcが過去に使用されていない場合は、Dおよびw
iを公開鍵指数部生成器904に入力してe1を計算
し、これとB,Rc,SC,N1を署名検証器905へ
入力して、 g(B‖Rc)=SCe1 mod N1 を満たすことを確認する。
【0035】署名検証結果が正しければ、Rcを引換履
歴HCへ記憶する。更に、乱数発生器906を用いてR
fを生成し、wi,Rf,Bを発行履歴HFへ記憶す
る。その後、B,Rf,wiおよび(d2,N2)を署
名生成器907へ入力して、 F=g(B‖wi‖Rf)d2 mod N2 を計算し、F,Rfを利用者装置700へ返送する。こ
の時、発行機関装置900と銀行装置800との間で適
当な会計処理を講じる。
【0036】ステップ3:利用者装置700は受信した
Fおよび、wi,Rfを電子コイン情報として記憶装置
701へ格納する。電子コインによる支払 つぎに、利用者Uが発行機関Oにより発行された電子コ
インFを用いて、受領者Mに支払いを行う場合について
説明する(図7参照)。
【0037】ステップ1:利用者装置700は、I,N
u,B,Rf,F,wiを受領者装置1000に送る。 ステップ2:受領者装置1000は、受信したI,Nu
および、記憶装置1001から読み出したej,Njを
署名検証器1002へ入力し、I,Nuに対する署名B
の正当性を、次式を検証することにより確認する。
【0038】 g(Nu‖I)≡Bej mod Nj (6) 続いて、B,Rfに対する署名Fの正当性、つまり電子
コインFの正当性を検証するため、受信したB,wi,
Rf,Fおよび、記憶装置1001から読み出したe
2,N2を署名検証器1003へ入力し、次式を満たす
ことを確認する。 g(B‖wi‖Rf)≡Fe2 mod N2 (7) この検査の何れかが不合格のときは以降の処理を中止す
る。
【0039】ステップ3:この両検査に合格する場合、
受領者装置1000は乱数生成器1004を用いて乱数
E′を生成し、それを受領者装置1000の識別子ID
v及びタイマー1005が出力する時刻印Tと共に利用
者装置700に送る。 ステップ4:利用者装置700は、電子コインFのうち
金額xを使用することを決め、署名生成器707へx,
du,Nuと受信情報T,E′,IDvを入力し、次式
により署名を行う。
【0040】 S=g(x‖h(IDv‖T‖E′))du mod Nu (8) この署名S、公開鍵eu、およびxを受領者装置100
0に送る。 ステップ5:受領者装置1000は、署名検証器100
6へS,eu,Nu,x,T,E′,IDvを入力し、
次式が成り立つことを検証する。 g(x‖h(IDv‖T‖E′))≡Seu mod Nu (9) この検証に合格すれば、受領者装置1000は、利用者
装置700のxに該当する金額の支払いを正当なものと
みなして受領し、記憶装置1001に格納する。 決済 受領者装置1000と銀行装置1100の間の決済方法
について説明する(図8参照)。簡単のため、支払額x
と引き下ろし額wiは同じ値である。すなわち、一つの
電子コインが一度に使い切られる場合について説明す
る。
【0041】ステップ1:受領者装置1000は、利用
者装置700との電子コイン使用時の交信履歴HF、す
なわちX,S,T,E′,IDv,eu,I,Nu,
B,Rf,F,wiを銀行装置1100に提出する。 ステップ2:銀行装置1100は検証器1102を用い
て、電子コインによる支払時の検査と同様に、つまり、
式(6)、(7)、(9)の各検証を行うことによって
HFの正当性を検査する。検証結果が異常ならばFを不
正コインとみなし、処理を中断する。正常ならば、さら
に交信履歴Hを発行機関装置900に送信する。
【0042】ステップ3:発行機関装置900は、銀行
装置1100と同様にHFの正当性を検証する。検証結
果が異常ならば、Fを不正コインとみなし、処理を中断
する。正常ならばさらに、Rfを元に発行履歴HFを検
索し、Rfが存在すれば二重使用の不正行為はないと判
断し、Rfに関する情報を発行履歴から削除し、これを
必要に応じて外部記憶装置に保持する。
【0043】なお、発行機関装置および銀行装置がそれ
ぞれ保有する会計処理装置は、受領者装置からの電子コ
インの預入に際し適当な会計処理を講じる。引換履歴更新処理 公開情報Dは一定期間後に新たな公開情報D′に更新さ
れ、以前の日付情報Dに基づいて発行した引換証SCは
期限切れとなり、無効となる。この公開情報Dの更新処
理について説明する。
【0044】ステップ1:銀行装置800はD,SDの
期限切れ検査を行い、一定期間経過していれば記憶装置
801内の公開情報DをD′へ更新するとともに、D′
に対する署名SD′を計算して、D′,SD′を発行機
関装置900に通知する。 ステップ2:発行機関装置900は記憶装置901内の
D,SDを通知された日付情報D′,SD′に更新する
と共に、以前の日付情報Dに基づく引換履歴HCを削
除、または外部記憶装置へ移動する。引換処理におい
て、以前の日付情報Dが利用者装置700から発行機関
装置900に送付されてきた場合、対応する日付情報を
記憶装置901から読み出せないため、比較器902で
の比較結果が不良となり、引換処理は中断される。
【0045】上述において各装置内に示すブロック構成
は機能を示し、必ずしも1つの機器として存在するもの
ではない。以上の説明から理解されるように、この発明
による利用者装置は、図6中の記憶装置201、匿名検
証器202、208、引換番号発生器203、ハッシュ
演算器204、乱数生成器205、ブラインド署名前処
理器206、ブラインド署名後処理器207、を備え、
この装置は当然電子現金の受領を可能とされるから図7
中の記憶装置401を備えかつ、銀行装置、発行機関装
置、受領者装置に対し、それぞれ送信する手段を有して
いる。
【0046】この特願平8−239263号の方法によ
れば、発行機関が全ての電子現金の発行・還収を一元的
に管理するため、各銀行がそれぞれ個別に電子現金の発
行管理業務、不正使用のチェックなどを行う必要がな
い。また複数の銀行が同一の電子現金発行機関を利用す
るため、利用者はどの銀行から引き出した電子現金かを
意識することなく扱うことができる。
【0047】
【発明が解決しようとする課題】前述した特願平8−2
39263号の電子現金方法では、銀行から引出してき
た電子現金や、受領した電子現金のうち、一部を他への
支払いに使用した電子現金を預入れることができないと
いう課題がある。これは、上記に該当する電子現金を実
名を明かしながら銀行に送金すると、銀行は、支払者の
公開鍵と実名の対応付けが可能になり、以降、銀行は支
払者の購買履歴などを知る事ができるようになってしま
うため、支払者のプライバシを確保できなくなってしま
うからである。
【0048】この問題に対する簡単な解決方法として、
上記に該当する電子現金を銀行に預入れる際に、支払者
本人に対して支払いを行った(自己宛て支払い)後に預
入れを行うという方法が考えられる。しかし、このよう
な方法を毎回繰り返すと、特定の支払者(預け入れ者本
人)から受領した電子現金を数多く預入れることになっ
てしまい、電子現金の履歴情報から簡単に公開鍵と実名
の対応付けが可能になってしまう。
【0049】この発明の目的は、自己宛て支払いするこ
となく、プライバシを守ったまま実名を明かしながら銀
行に預入れすることを可能にすることにある。
【0050】
【課題を解決するための手段】この発明では預け入れ専
用コインを導入することにより上記課題を解決する。以
下に、預け入れ専用コインを用いた預け入れ方法の例を
示す。預け入れ者装置は、銀行装置に電子現金を預入れ
る際に、まず、発行機関(ここでは、電子現金発行機関
とするが、実際は銀行が信用する機関であれば、どのよ
うな機関であってもよい)装置にアクセスし、発行機関
装置に対して通常の支払処理を行い、かつ預け入れ者の
実名をブラインドした情報を発行機関装置に送信し、発
行機関装置は、預け入れ者装置からの支払いが正当であ
ることを確認し、預け入れ者装置から送信されてきた、
「預け入れ者の実名をブラインドした情報」に対して支
払金額対応の発行機関秘密鍵で署名を作成し、作成した
署名情報を預け入れ者装置に送信し、預け入れ者装置
は、発行機関装置から送られてきた発行機関署名情報を
アンブラインドし、預け入れ者装置の実名に対する発行
機関署名情報(以下、預入れ専用コインという)を取出
し、預入れ専用コインおよび預け入れ者装置の実名を銀
行装置に送信し、銀行装置は、預け入れ専用コインの正
当性を検証し、その預け入れ専用コインが正当である場
合には、預け入れ者装置の口座を増額する。
【0051】以上の方法により、自己宛て支払いするこ
となく、プライバシを守ったまま実名を明かしながら銀
行に預入れすることが可能になる。
【0052】
【発明の実施の形態】以下では、この発明を特願平8−
239263号「発行機関分離型番号登録式電子現金方
法および支払者装置」に適用した場合の実施例について
説明する。この発明が適用されるシステム構成例を図1
に示す。発行機関装置100と、銀行装置200と、支
払者装置300と、預け入れ者装置400とが例えば通
信回線を介して接続されている、通信回線を用いること
なく、情報を記録できるICカード等を介しての接続で
あってもよい。 準備 この実施例で前提としている電子現金方法は以下の通り
である。
【0053】銀行(ここでは、電子現金の決済者を銀行
と呼ぶが、実際は、どのような機関でも良い)装置は、
支払者装置の要求に従い、ある一定金額の電子コイン引
換証を発行する。支払者装置は、電子コイン引換証(ま
たは引換券と呼ぶ)を電子現金発行機関(または発行機
関と呼ぶ)装置に渡し、発行機関装置は、引換券の限度
額までの電子現金(または、電子コインと呼ぶ)を発行
する。支払い者装置は、その電子コインを預け入れ者装
置への支払いに用いる。
【0054】各預け入れ者装置は、支払者装置から支払
われた電子コインを発行機関装置に支払う。発行機関装
置は預け入れ者装置に預け入れ専用コインを発行する。
預け入れ者装置は預け入れ専用コインを銀行装置に預け
入れる。ここでは、発行機関装置の署名方法はRSA署
名を用いた例を示す。y円に対応する発行機関装置の公
開鍵はey,N y円に対応する発行機関装置の秘密鍵はdy x−y円に対応する発行機関装置の公開鍵はexy,N x−y円に対応する発行機関装置の秘密鍵はdxy とする。
【0055】また、銀行装置と預け入れ者装置は、秘密
情報SIDを共有しているものとする。引換券の発行処
理、電子コインの発行処理および電子コインによる支払
は前述した特願平8−239263号の電子現金方法と
同様の処理を行う。預入れ専用コインの取得 預け入れ者装置400と発行機関装置100間の預け入
れ専用コイン取得方法について説明する(図2参照)。
【0056】今、預け入れ者の所持金をx円、銀行に預
け入れたい金額をy円とする。 ステップ1 預け入れ者装置400は、発行機関装置100に対して
匿名でアクセスし、発行機関装置100にx円の支払を
行う。ここでの支払処理は、特願平8−239263号
の方法と同様の処理である。
【0057】図2中で、支払装置420は、図7中の利
用者装置700相当の装置であり、受領装置120は、
図7中の受領者装置1000相当の装置であり、電子現
金検証装置160は、図8中の発行機関装置900相当
の装置である。 ステップ2 預け入れ者装置400は、乱数R1およびR2を乱数生
成装置460で発生し、預け入れ者の識別情報IdU、
y円に対する公開鍵を用いてブラインド装置4 30でZ=(IdU‖R1)×R2ey mod N (ブラ
インド処理) (ここで、「‖」は結合を示す)なるZを生成し、yと
共に発行機関装置100に送信する。ステップ3発行機
関装置100では、x円の電子現金およびZを受取る
と、Zに対するy円用署名Cwiを署名装置130で以
下の計算により求め、 Cwi=Zdy mod N (発行機関署名作成) さらに、x−y円分の電子現金Cおよび乱数Rfをコイ
ン発行装置150で特願平8−239263号の方法と
同様の方法で作成し、これらCwiおよびCを預け入れ
者装置400に送信する。
【0058】図2中で、コイン発行装置150は、図6
中の発行機関装置900相当の装置である。 ステップ4 預け入れ者装置400は、Cを署名検証装置450で検
証し、合格すればCを電子コインとして記憶装置410
に保存すると共に、アンブラインド装置440で Cw=Cwi/R2 mod N (アンブラインド処
理) なるCwを計算し、Cwを預け入れ専用コインとして記
憶装置410に保存する。銀行への預入れ 預入れ専用コインを用いた預入れ方法について説明する
(図3参照)。 ステップ1 預け入れ者装置400は、発行機関装置100から取得
したCwの他に、IdU、R1およびyを銀行装置20
0に送信する。 ステップ2 銀行装置200は、署名検証装置220で (IdU ‖ R1)ey mod N を計算し、Cwと等しいことを検証した後、時間情報T
sおよび乱数情報Rsをそれぞれ時間取得装置240、
乱数生成装置230で生成し、Ts,Rsを預け入れ者
装置400に送信する。 ステップ3 預け入れ者装置400は、ハッシュ装置470で H=h(Cw ‖ SID ‖ Ts ‖ Rs) を計算し、(h(x)はxをハッシュすることを示
す)、Hを銀行装置200に送信する。 ステップ4 銀行装置200は、ハッシュ検証装置250でHがh
(Cw ‖ SID ‖ Ts ‖ Rs)と等しいこ
とを検証し、検証が正しかった場合には、預け入れ者装
置の口座をy円増額する。
【0059】
【発明の効果】従来、銀行装置から引出してきた電子現
金や、受領した電子現金のうち、一部を他への支払いに
使用した電子現金をプライバシを保ったまま預入れでき
ないという課題があった。しかしこの発明によれば預け
入れ専用コインを発行機関装置から発行してもらい、こ
のコインを銀行装置に預け入れることによって、自己宛
て支払いすることなく、プライバシを守ったまま実名を
明かしながら銀行装置に預入れすることを可能にする。
【図面の簡単な説明】
【図1】この発明を実施するためのシステム構成例を示
すブロック図。
【図2】この発明における預入れ専用コイン取得に必要
な機能構成例を示すブロック図。
【図3】この発明における預入れ処理に必要な機能構成
例を示すブロック図。
【図4】特願平8−239263号明細書に示す電子現
金方法が適用されるシステム構成例を示すブロック図。
【図5】前記先願方法における電子現金引換証発行処理
に必要な機能構成例を示すブロック図。
【図6】前記先願方法における引換証と電子現金の交換
処理に必要な機能構成例を示すブロック図。
【図7】前記先願方法における電子コインによる支払い
処理に必要な機能構成例を示すブロック図。
【図8】前記先願方法における決済処理に必要な機能構
成例を示すブロック図。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 17/60 410 G09C 1/00 660 JICSTファイル(JOIS)

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 銀行装置から電子現金引換証を発行して
    もらい、その電子現金引換証を発行機関装置へ送って電
    子現金を発行してもらい、その電子現金を受領した装置
    が電子現金を銀行装置へ送って決済することができる電
    子現金方法における預け入れ者装置による電子現金を銀
    行装置へ預け入れる方法において、 預け入れ者装置は発行機関装置にアクセスして、その発
    行機関装置に対して電子現金による支払処理を行い、 かつ、預け入れ者装置の識別情報を発行機関装置に知ら
    せることなく預け入れ者装置の識別情報及び金額に対す
    る発行機関署名を要求し、 発行機関装置は預け入れ者装置からの支払いが正当であ
    ることを確認して預け入れ者装置からの要求に応じて上
    記発行機関署名を作成し、預け入れ者装置に送信し、 預け入れ者装置は受取った発行機関署名を処理して預け
    入れ専用コインを取得し、 その預け入れ専用コインおよび預け入れ者装置識別情報
    名を銀行装置に送信し、 銀行装置は受取った預け入れ専用コインの正当性を検証
    し、その預け入れ専用コインが正当であれば、預け入れ
    者装置の口座をその預け入れ専用コインの金額分増額す
    ることを特徴とする匿名電子現金預け入れ方法。
  2. 【請求項2】 預け入れ者装置は発行機関装置への上記
    署名要求を、預け入れ者装置の識別情報名を撹拌した情
    報を発行機関装置へ送信することにより行い、 発行機関装置は受取った預け入れ者装置の識別情報名を
    撹拌した情報に対する署名を作成して上記発行機関署名
    とし、 預け入れ者装置は受取った発行機関署名に対し、上記識
    別情報の撹拌を解く処理を行って上記預け入れ者装置の
    識別情報に対する上記発行機関装置の署名を得て、上記
    預け入れ専用コインとすることを特徴とする請求項1記
    載の匿名電子現金預け入れ方法。
  3. 【請求項3】 預け入れ者装置は上記識別情報の撹拌
    を、上記電子現金による支払金額と対応して、ブライン
    ド署名におけるブラインド処理により行い、 発行機関装置は上記署名作成を上記支払金額と対応して
    行い、 上記預け入れ者装置は発行機関装置から送られてきた上
    記発行機関署名に対し、ブラインド署名におけるアンブ
    ラインド処理を行って上記預け入れ専用コインを得るこ
    とを特徴とする請求項2記載の匿名電子現金預け入れ方
    法。
  4. 【請求項4】 預け入れ者装置は上記識別情報の撹拌
    を、上記電子現金による支払金額より少ない預け入れ金
    額と対応して、ブラインド署名におけるブラインド処理
    を行い、かつその預け入れ金額を発行機関装置に送信
    し、 発行機関装置は上記署名作成を上記預け入れ金額と対応
    して行い、 かつ上記支払金額と上記預け入れ金額の差額と対応した
    電子現金を作成して預け入れ者装置へ送信し、 預け入れ者装置は発行機関装置から送られてきた上記発
    行機関署名に対し、ブラインド署名におけるアンブライ
    ンド処理を行って上記預け入れ専用コインを得ることを
    特徴とする請求項2記載の匿名電子現金預け入れ方法。
  5. 【請求項5】 上記銀行装置は上記預け入れ専用コイン
    が正当であることを検証すると、その検証ごとに異なる
    情報チャレンジを生成して預け入れ者装置へ送信し、 預け入れ者装置は上記チャレンジと上記預け入れ専用コ
    インと上記銀行装置と共有の秘密情報を一方向性関数で
    処理して銀行装置へ送信し、 上記銀行装置は上記一方向関数処理情報を検証し、この
    検証に合格することを、上記口座増額の条件とすること
    を特徴とする請求項1乃至4の何れかに記載の匿名電子
    現金預け入れ方法。
  6. 【請求項6】 電子現金、自己の識別情報、金額と対応
    した公開鍵を記憶する記憶手段と、 預け入れ金額yに応じた公開鍵で上記識別情報を、ブラ
    インド署名におけるブラインド処理を行うブラインド手
    段と、 上記ブラインド処理された情報と金額yを発行機関装置
    へ送る手段と、 金額x(x≧y)の電子現金を上記発行機関装置へ支払
    処理を行う手段と、 上記発行機関装置より受信された署名を、ブラインド署
    名におけるアンブラインド処理を行うアンブラインド手
    段と、 上記アンブラインド処理された情報と上記識別情報と上
    記預け入れ金額yを銀行装置へ送信する手段とを具備す
    る預け入れ者装置。
  7. 【請求項7】 金額xの電子現金から預け入れ金額y
    (y≦x)を銀行装置に預け入れる預け入れ者装置とし
    てコンピュータを機能させるためのプログラムを記録し
    た記録媒体であって、上記プログラムは上記コンピュータに、 上記預け入れ金額yに応じて、上記預け入れ者装置の識
    別情報を、ブラインド署名におけるブラインド処理を行
    い、 上記ブラインド処理された情報と金額yを発行機関装置
    へ送信し、 金額xの電子現金を発行機関装置へ支払い、 発行機関装置より受信された署名を、ブラインド署名に
    おけるアンブラインド処理を行い、 そのアンブラインド処理された情報と上記識別情報と金
    額yを銀行装置へ送る処理を実行させるためのものであ
    ることを特徴とするコンピュータ読み取り可能な記録媒
    体。
JP22038397A 1997-08-15 1997-08-15 匿名電子現金預け入れ方法、その装置およびプログラム記録媒体 Expired - Fee Related JP3388485B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22038397A JP3388485B2 (ja) 1997-08-15 1997-08-15 匿名電子現金預け入れ方法、その装置およびプログラム記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22038397A JP3388485B2 (ja) 1997-08-15 1997-08-15 匿名電子現金預け入れ方法、その装置およびプログラム記録媒体

Publications (2)

Publication Number Publication Date
JPH1166194A JPH1166194A (ja) 1999-03-09
JP3388485B2 true JP3388485B2 (ja) 2003-03-24

Family

ID=16750270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22038397A Expired - Fee Related JP3388485B2 (ja) 1997-08-15 1997-08-15 匿名電子現金預け入れ方法、その装置およびプログラム記録媒体

Country Status (1)

Country Link
JP (1) JP3388485B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008512060A (ja) * 2004-08-27 2008-04-17 株式会社エヌ・ティ・ティ・ドコモ 仮署名スキーム

Also Published As

Publication number Publication date
JPH1166194A (ja) 1999-03-09

Similar Documents

Publication Publication Date Title
US6299062B1 (en) Electronic cash system based on a blind certificate
EP0755136B1 (en) Method and apparatus for implementing traceable electronic cash
EP0891663A1 (en) Transmitting messages over a network
CN113994357A (zh) 在终端与支付系统之间直接传输电子硬币数据记录的方法
US8468100B2 (en) Issuing electronic vouchers
EP1012762A1 (en) Microprocessor card payment system
Wang et al. A consumer scalable anonymity payment scheme with role based access control
JP3388566B2 (ja) 利用許可証付き電子小切手方法および装置
JP3388485B2 (ja) 匿名電子現金預け入れ方法、その装置およびプログラム記録媒体
Wang et al. Building a consumer scalable anonymity payment protocol for Internet purchases
JP3171227B2 (ja) 信託機関付き電子紙幣実施方法
JP3599493B2 (ja) 発行機関分離型番号登録式電子現金方法および利用者装置
JP3435682B2 (ja) 電子現金預け入れ方法、その装置およびプログラム記録媒体
JPH0752460B2 (ja) 電子現金実施方法及びその装置
JP2879792B2 (ja) 電子現金の分割使用方法およびその装置
JP2631781B2 (ja) 電子現金実施方法
JP3599492B2 (ja) 番号登録式電子現金方法および利用者装置
JPH10334164A (ja) 電子小切手方法、その装置およびその実行プログラム記録媒体
JP3171228B2 (ja) 複数信託機関を利用した電子紙幣実施方法
Mu et al. A new scheme of credit based payment for electronic commerce
JP3435677B2 (ja) 追跡可能な電子現金実施方法及びその装置
EP3792857A1 (en) Efficient partially spendable e-cash
JPH10171903A (ja) 電子現金方法及びこれに用いる装置
JP2631776B2 (ja) 電子現金実施方法
JP3329431B2 (ja) 信託機関つき電子現金実施方法

Legal Events

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

Free format text: PAYMENT UNTIL: 20080117

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090117

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090117

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100117

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees