JPH1083426A - 監視機関つき電子現金方法及びそれを実施するための利用者装置及び監視機関装置 - Google Patents

監視機関つき電子現金方法及びそれを実施するための利用者装置及び監視機関装置

Info

Publication number
JPH1083426A
JPH1083426A JP12584297A JP12584297A JPH1083426A JP H1083426 A JPH1083426 A JP H1083426A JP 12584297 A JP12584297 A JP 12584297A JP 12584297 A JP12584297 A JP 12584297A JP H1083426 A JPH1083426 A JP H1083426A
Authority
JP
Japan
Prior art keywords
user
signature
electronic cash
verification key
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.)
Granted
Application number
JP12584297A
Other languages
English (en)
Other versions
JP3329438B2 (ja
Inventor
Tatsuaki Okamoto
龍明 岡本
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.)
NTT Inc
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 JP12584297A priority Critical patent/JP3329438B2/ja
Publication of JPH1083426A publication Critical patent/JPH1083426A/ja
Application granted granted Critical
Publication of JP3329438B2 publication Critical patent/JP3329438B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

(57)【要約】 【課題】 電子現金の銀行毎の発行状況を監視可能とす
る。 【解決手段】 利用者Uが金額Xの電子現金の発行を署
名検証鍵NU と共に銀行Bに送り、銀行BはXとNU
対をUと対応して利用者データベースに保持すると共に
監視機関に送り、かつ(X,NU)に対する署名SB(X,NU)を生
成して利用者Uに送る。監視機関は(X,NU)を合計使用金
額Yと対応して監視データベースに登録する。利用者は
支払額yと、X,NU,SB(X,NU) と、小売店からの情報eに
対する署名SU(e,y) を小売店に送り、小売店は署名S
B(X,NU)、SU(e,y) を検証し、正しければ支払いを受け
る。小売店は利用者との全交信データHを監視機関に送
り、監視機関はデータH中の(X,NU)が監視データベース
に登録されており、かつ更新した支払合計金額Y+y がX
を越えなければ支払金額yを小売店の口座に振り込むよ
う銀行に指示し、そうでなければ(X,NU)を銀行に送り不
正者を特定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、電気通信システ
ムを介し、又はICカードを介して、分割利用が可能
で、プライバシイを保証し、かつ不正使用を防ぐ電子的
な現金を実現する電子現金方法及びそれを実施するため
の利用者及び監視機関装置に関する。
【0002】
【従来の技術】電気通信システムを用いた電子資金移動
が普及しつつある。一般に換金可能な証書(手形、小切
手など)は、証書の象徴的機能(証書を保持している人
に対して、証書に記載してある権利が供与されること)
を備えている。証書を電気通信システムで取り扱う場
合、証書はディジタル化されたデータであり、容易にコ
ピーを作成して複数回の不正な換金が可能となる。プリ
ペイドカードのような電子的現金を実現するときにも、
この問題が生じる。すなわち、プリペイドカードをコピ
ーすることで、不正に複数回の換金あるいは商品の購入
が可能となる。一方、クレジットカードでは、このよう
な2重使用の危険性はほとんどないが、その代わりに、
利用者の利用履歴がすべてカード会社に知られてしまう
という欠点がある(つまり、プライバシイが保証されて
ない)。これら問題の解決策として、計算機能を備えた
カードで換金時にカード読み取り装置とカードとの間の
データのやりとりを工夫することで、プライバシイを保
証し、かつカードの2重使用を検出する方法が提案され
ている。たとえば、Chaum, Fiat, Naor:"Untraceable E
lectronic Cash", Proc. of CRYPTO'88 がある。
【0003】
【発明が解決しようとする課題】しかしながら、Chaum
等の方法では、ある程度の安全性(例えば、不正が成功
する確率が1/230) を確保するため、利用者の小売店に
対する電子現金による支払処理における質問、応答及び
検証の3手順をその安全性に応じた回数だけ繰り返し
(例えば、30回)実行する必要があるため、相互交信
量がかなり大きくなる。また、発行された同一電子現金
を分割して利用することができない。従来提案されてい
る分割使用可能な電子現金の分割使用原理は、例えば米
国特許No.5,224,162に示されているように、階層構造を
使った数学的に巧妙な論理に基づいている。しかしなが
ら、実際にこれを実施する場合、処理手順が多く、かつ
演算量が大となる欠点がある。元来、電子現金実施シス
テムにおいては、電子現金の発行者と利用者口座を管理
する金融機関が同一であるため、各金融機関が電子現金
を発行するという想定で構成されており、発行された電
子現金は利用者から小売店、銀行を経て、発行元の銀行
に還流する。従って、それぞれの金融機関が発行する電
子現金の発行量を監視することができない。
【0004】この発明の第1の目的は、プライバシイを
保証し、不正使用をも防ぐ電子現金方法において、支払
処理における通信量が少なく、分割利用が可能で、特に
各金融機関が発行する電子現金の発行量を監視すること
ができるような電子現金方法を実現することにある。こ
の発明の第2の目的は、上記電子現金方法を実施するた
めの利用者装置及び監視機関装置を実現することにあ
る。
【0005】
【課題を解決するための手段】この発明による電子現金
方法は以下のステップを含む: (1) 利用者は、銀行に利用者情報Uと電子現金の額面に
対応する金額Xを送信し、利用者の口座から金額Xを引
き下ろすことを要請し、(2) 上記銀行は、上記利用者の
口座から金額Xを減額し、上記利用者の署名検証用鍵N
U 及び金額Xに対してその銀行の署名SB(X,NU)を生成し
上記利用者に送付すると共に、上記金額Xと上記署名検
証用鍵NU の情報を含む署名検証鍵情報nを上記利用者
情報Uと対応させて利用者データベースに記録し、更に
上記監視機関に上記署名検証鍵情報nを送付し、(3) 上
記監視機関は、上記署名検証鍵情報nを合計使用金額Y
と対応させて監視データベースに登録し、(4) 上記利用
者は残額xと、上記金額Xと、上記署名検証鍵NU と、
上記署名SB(X,NU)とを含む情報を額面Xの電子現金Cと
して使って支払金額yを上記小売店に支払い、上記小売
店は上記電子現金の正当性を検証して受け取り、(5) 上
記小売店は上記電子現金Cの情報を含む上記利用者との
全交信データHを上記監視機関に送信して決済を求め、
(6) 上記監視機関は受信した上記交信データH中の上記
電子現金Cの正当性を検証し、上記銀行に対し上記小売
店の口座に上記支払金額yを振り込むよう指示を与え
る。
【0006】上記方法のステップ(1) において、利用者
は監視機関の暗号鍵PKT を使って署名検証鍵NU と金額
Xを含む組を暗号関数ET により暗号化して得たET(X,N
U)と金額Xを銀行及び監視機関に送り、更に、署名検証
鍵NU をブラインド署名前処理してF(NU) を銀行に送
り、ステップ(2) で銀行は利用者名Uと対応して署名検
証鍵情報nをデータベースに記録する代わりにET(X,NU)
を記録し、また、(X,NU)に対する直接署名の代わりに、
F(NU) に対するブラインド署名Z(NU) を利用者に送り、
ステップ(4) で利用者はF(NU) ブラインド署名後処理に
より得た銀行署名SB(NU)を電子現金の一部として使うよ
うにしてもよい。
【0007】この発明による利用者装置は、利用者署名
用鍵SKU を生成する鍵生成手段と、金額Xと署名検証鍵
U とに対する銀行の署名SB(X,NU)と、残額xと、額面
Xと,署名検証鍵NU とを含む電子現金Cと、上記署名
用鍵SKU とを保持するメモリ手段と、支払金額yと上記
小売店から受信した任意の情報eとに対する署名を上記
署名用鍵SKU を使って行い、署名SU(e,y) を生成する署
名生成手段と、上記残額xから支払金額yを減算して残
額を更新する残額更新手段と、を含む。
【0008】上記利用者装置において、暗号手段を設
け、監視機関の暗号鍵を使って金額Xと署名検証鍵NU
を含む情報を暗号化して銀行に送り、更に、ブラインド
前処理手段とブラインド後処理手段を設け、署名検証鍵
U に対する銀行のブラインド署名Z(NU)を得て、そのZ
(NU)から銀行の署名SB(NU)を得てもよい。この発明によ
る監視機関装置は、発行された電子現金を所有する利用
者に対応する署名検証鍵情報nを合計使用金額Yと対応
させて登録する監視データベースと、小売店から受信し
た残金x、額面X、署名検証鍵NU 、銀行の署名SB(X,N
U)を含む電子現金Cと、支払金額yとを含む履歴データ
Hを保持する履歴データベースと、上記履歴データH中
の金額Xと検証鍵NU に対応する署名検証鍵情報nが上
記監視データベースに登録されているか検索し、登録さ
れていなければ不正使用された電子現金であると判定す
る手段と、上記署名検証鍵情報が登録されている場合、
上記履歴データH中の支払金額yを上記監視データベー
ス中の対応する合計使用金額Yに加算する加算手段と、
上記加算手段による加算結果Y+y を額面Xと比較する比
較手段と、上記比較手段による比較結果がY+y<X であれ
ば上記監視データベース中の対応する合計使用金額Yを
上記加算結果Y+y で更新し、Y+y=X であれば上記監視デ
ータベース中の対応する署名検証鍵情報nと合計使用金
額Yを削除し、Y+y>X であれば不正使用された電子現金
であると判定して上記n,Yを削除すると共に、その署
名検証鍵情報nを上記銀行に通知する制御手段、とを含
む。
【0009】上記監視機関装置において、復号手段を設
け、利用者からの暗号化情報ET(X,N U)を復号して得た
(X,NU)を監視データベースに登録するようにしてもよ
い。この発明によれば、電子現金発行を行う機関(銀
行)と決済のための検証処理を行う機関(監視機関)を
分離し、監視機関において銀行の発行した電子現金の流
通量を監視する。一方、利用者の支払い処理を利用者の
署名鍵を用いて行うことにより、分割支払いを可能とし
ている。つまり、支払い額に対して利用者の署名を付け
させることにより、利用者が一定金額以上の支払いをし
た場合、その不正行為を証拠として提示できる。
【0010】
【発明の実施の形態】図1は、この発明方法が適用され
るシステムの構成の例を示す。電子現金の発行を監視す
る監視機関の装置100 (この監視機関を表す情報をTと
記す)と、電子現金を発行する機関の装置200 (この銀
行を表す情報をBと記す)と、発行された電子現金を使
用する利用者の装置300 (この利用者を表す情報をUと
記す)と、利用者より電子現金を受領する小売店の装置
400 (この小売店を表す情報をWと記す)とが通信回線
などを介して接続されている。これらは情報を記録でき
るICカード等を介して接続されてもよい。以下に説明
するこの発明の実施例において使用されるディジタル署
名は既に確立した技術として様々な方式が知られてお
り、それらのどれを使ってもよい。
【0011】図1に示したシステム構成において適応さ
れるこの発明の電子現金実施方法を次ぎに説明する。 第1実施例 (1) 電子現金の発行処理 まず、利用者が、電子現金を発行してもらう場合を図2
を用いて説明する。
【0012】銀行200 は、あらかじめディジタル署名
(池野、小山著「現代暗号理論」電子情報通信学会、等
を参照)用の公開鍵PKB 及び秘密鍵SKB の組を生成して
メモリ20M に保持する。その秘密鍵SKB と、それを用い
て署名を生成するための署名生成関数SB を秘密とす
る。更に、そのディジタル署名を検証するための署名検
証関数VB と、その署名検証関数に使用する検証用公開
鍵PKB を公開する。
【0013】利用者は、銀行のその利用者300 の口座
(利用者情報Uと対応)から発行電子現金の額面と同じ
金額Xを引き下ろすことを要請するための手続きを以下
の手順で行う。 ステップ1:利用者300 は、ディジタル署名の鍵生成部
301 を用いて、署名生成鍵SKU 及び署名検証鍵NU を生
成し、メモリ30M に記録する。従って、署名検証鍵NU
は利用者情報Uと対応している。
【0014】電子現金の額面と等しい金額Xを利用者30
0 の口座から引き下ろすことを要請するメッセージと利
用者情報(利用者識別情報或いは口座番号)UをNU
共に銀行200 に送る。なお、この実施例では、利用者が
新しい電子現金の発行を行う毎に署名検証鍵NU を新し
く生成する、即ち、変更する場合について説明するが、
後述するように、同一署名検証鍵NU を複数の電子現金
に使用してもよい。
【0015】ステップ2:銀行200 は、利用者300 の口
座の残高をチェックし、その残高よりXを減額し、更に
利用者名Uと対応させて(X,NU)を署名検証鍵情報として
利用者データベース201 に記録しておく。そのとき、利
用者300 のディジタル署名のついた引き下ろし依頼メッ
セージがあればそれも一緒に記録しておく。次に、銀行
200 は署名関数SB の署名作成部202 を用いて、X,N
U に対する銀行200 のディジタル署名SB(X,NU)を計算
し、SB(X,NU)を利用者300 に送付するとともに、(X,NU)
を監視機関100 に送付する。 ステップ3:利用者300 はSB(X,NU)をx,X,NUと共に額面
X、残高xの電子現金C={x,X,NU,SB(X,NU)}としてメモ
リ30M に保持する。ただし、残高xの初期値はx=Xで
ある。
【0016】ステップ4:監査機関100 は、(X,NU)を署
名検証鍵情報として監視データベース101 に登録する。
ここで、その(X,NU)に対応する電子現金の現在までの支
払金額yの合計額Yの初期値をY=0 として(X,NU)に対応
して記録する。なお、この第1実施例では、署名検証鍵
U を利用者が生成する例を示しているが、他の機関、
例えば監視機関100 又は銀行200 が生成することにして
もよい。その場合は、電子現金発行依頼に応じて予め監
視機関又は銀行がその署名検証鍵NU を生成し利用者30
0 に送信することになる。 (2) 電子現金の支払 次に、利用者300 が、利用者の署名検証鍵NU と銀行20
0 より発行された署名SB(X,NU)の組を含む額面X、残高
x(初期値x=X)の電子現金Cを用いて小売店Wで金
額y(y≦x)を支払う場合について図3を用いて説明
する。
【0017】ステップ1:利用者300 は、メモリ30M か
ら読みだした残高xを表示部30D に表示してそれが利用
しようとする金額y以上であることを確認して電子現金
C={x,X,NU,SB(X,NU)}を小売店400 に送る。 ステップ2:小売店400 は、署名検証部401 を用いて、
電子現金の発行者(銀行200 )の署名SB(X,NU)の正当性
を署名検証関数VB により検証する。正しければ、一方
向関数演算部402 により一方向関数fを用いて時間TIM
E、小売店400 に対応する情報Wから検証のための問い
合わせ情報e=f(TIME,W)を生成し、TIME,W,eを利用
者300 に送る。
【0018】ステップ3:利用者300 は、一方向関数演
算部306 、比較部307 を用いて、e=f(TIME,W) の正当
性を検証する。正しければ、署名生成部305 を用いて、
送られてきたe及び支払金額y(y≦x)に対する利用者の
署名SU(e,y) を計算し、y,S U(e,y) を小売店400 に送
付する。 ステップ4:小売店400 は、利用者署名SU(e,y) と支払
金額yの正当性を、問い合わせ情報eと署名検証鍵NU
を使って署名検証部404 により検証し、更に、比較部40
3 を用いて、y≦xを検証する。いずれも正しければ、
該当支払金額yの電子現金による支払いを認め、少なく
とも1つが正しくなければ支払を認めない判定結果OK/N
G を利用者に送る。また、後の決済のため、利用者300
との間の交信データH={x,X,NU,SB(NU),TIME,W,e,y,S
U(e,y)}を小売店データ蓄積部40D に保持する。
【0019】なお、小売店400 がTIME,W,eを利用者
300 へ送った後、SB(X,NU)の正当性の検証を行ってもよ
い。 ステップ5:利用者300 は小売店400 からの判定結果OK
/NG がOKであれば、メモリ30M の残高xを減算部302 に
よりx←x-y と更新する。 (3) 決済 最後に、小売店400 と銀行200 の間の決済方法について
図4を用いて説明する。
【0020】ステップ1:小売店400 は決済のためにま
ず監視機関100 に利用者300 と小売店400 の間の全ての
相互通信データH={x,X,NU,SB(X,NU),TIME,W,e,y,S
U(e,y)}を自分の口座を有する銀行200 を経由して(ま
たは直接)送信する。 ステップ2:監視機関100 は、相互通信データHに含ま
れる利用者300 の署名検証用鍵NU と額面Xの組(X,NU)
が監視デーベース101 に登録されているかどうかを検査
する。登録されていれば、制御部114 は加算部107 及び
比較部103 を用いて、以下の処理を行う。まず、(X,NU)
に対応して記録されている支払金額の合計値YをY+y→Y
と更新し、更に更新されたYがXを越えてないことを検
査する。また、制御部114 は相互通信データHを履歴デ
ータベース108 に記録する。履歴データベース108 への
データの書き込みは、好ましくは予め決めた期限付きと
し、期限の切れたデータは消去することによりデータ量
を削減することが好ましい。
【0021】もし、更新された支払合計金額Yが額面X
を越えていなければ、使われた電子現金の発行銀行に対
し、小売店400 が指定した銀行の口座に金額yを振り込
むよう指示する。このとき、小売店400 が口座を持つ銀
行は、利用者300 の(X,NU)に対し署名した銀行200 でな
くても良い。更に、Y+y=X ならば、監視データベース10
1 から(X,NU)及びそれに対応する支払合計金額Yを削除
する。
【0022】(X,NU)が監視データベース101 に登録され
ていない場合は、利用者300 による不正支払いが行われ
たものとして、不正者特定処理を行う。また、Y+y>X な
らば、制御部114 は監視データベース101 からX,NU
の対及びそれに対応するYを削除すると共に、やはり、
利用者による不正支払いが行われたものとして、不正者
特定処理を行う。
【0023】ステップ3:不正者特定処理では、監視機
関100 は、(X,NU)を削除する前に履歴データベース108
より不正行為の証拠となる情報(不正支払に関する全て
の相互通信データH)を読み出し、電子現金発行元銀行
200 に送付する。銀行200 は、不正行為の証拠の正当性
を、署名検証部203 によりNU を使って検証し、正しけ
れば(X,NU)をキーワードとして利用者データベース201
から対応する利用者情報Uに該当する不正利用者300 を
特定する。
【0024】上述において、利用者は署名検証鍵NU
原型のまま含む情報(X,NU)を銀行及び監視機関に送る場
合を説明したが、一般には、署名検証鍵NU の情報をそ
のままの形態も含め、任意の形態に変換して送ってよ
い。この任意の形態の変換をn=f(NU) で表す。従って、
上述の実施例の説明におけるより一般的な表現として、
利用者は、n=f(NU) で表される署名検証鍵情報を額面X
と共に銀行及び監視機関に送る。例えば、利用者は一方
向関数fを使って署名検証鍵NU を含む情報をn=f(NU)
のように変換し、(X,n) を銀行200 、更に監視機関100
に送って、それぞれ署名検証鍵情報としてデータベース
201,101に書き込んでもよい。
【0025】上述の第1実施例において、銀行200 は例
えば一方向性のハッシュ関数hによりn=h(X,NU) なる圧
縮されたデータnを署名検証鍵情報として生成し、この
署名検証鍵情報nと利用者300 の名前Uとを対応させて
利用者データベース201 に記憶してもよい。同様に、監
視機関100 も銀行から受けた(X,NU)を一方向ハッシュ関
数により圧縮して得たデータn=h(X,NU) を監視データベ
ース101 に合計使用金額Yと対応して登録してもよい。
その場合、図4の監視機関100 は小売店400 からの履歴
データH中の(X,NU)を同じ一方向ハッシュ関数hにより
圧縮して得られた署名検証鍵情報nによりデータベース
101 を検索し、同じ署名検証鍵情報nが存在するか、即
ち(X,NU)が登録されているかを検査する。
【0026】上述のようにして使用された電子現金の残
額xを使って利用者300 が任意の小売店に支払を行う場
合の手順は、上述した利用者300 と小売店400 間の支払
手順と全く同じであり、またそれにともなう小売店と監
視機関100 との間の決済手順も前述と全く同様にして行
うことができる。上述したこの発明の電子現金実施方法
によれば、各銀行200 が発行する電子現金の金額Xは全
て監視機関100 に報告されるので、それぞれの銀行によ
る電子現金の発行総量を監視することもできるし、監視
機関100 は常に流通している電子現金の総量を把握する
ことができる。
【0027】また、この発明によれば、電子現金で支払
を行う場合、使用金額が現残額x以下であることを確認
するだけなので、電子現金の分割使用における処理手順
は前述の米国特許No.5,224,162に示された電子現金の分
割使用手順より著しく簡単であり、かつ、そのための交
信情報量も著しく少なくてすむ。更に、この発明の特徴
とするところは、監視機関100 において、監視データベ
ース101 に保持される監視対象の登録データ(X,NU)は、
対応する電子現金がその額面Xまで全て使いきった時点
で抹消されるので、それ以降、不正により同じ電子現金
が使用されても、小売店から監視機関に決済のため送ら
れるその電子現金のデータ(X,NU)は既にデータベース10
1 から抹消されているので、不正使用が直ちに露見す
る。また、この方法において特徴的なことは、上述のよ
うにデータベース101 に保持されている監視対象として
の登録データ(X,NU)は使用済み又は不正発覚時点で抹消
されるので、データベース101 に保持されている登録デ
ータ(X,NU)は、その時点で有効なものだけである。従っ
て電子現金の発行総量がある程度一定していれば、監視
データベース101 に保持しなければならない登録デー多
量はほぼ一定となり、累積していくことはない。これに
対し、従来の電子現金方式においては、各銀行は不正使
用された電子現金と使用済み電子現金(将来不正使用さ
れる可能性がある)のリストを監視対象として保持しな
ければならず、電子現金の発行量と共に監視データ量が
累積していく問題がある。
【0028】次に上述の第1実施例における特徴的な利
用者装置300 と監視機関100 の機能構成を以下に説明す
る。図5は上述の第1実施例において利用者300 の処理
手順を実行するための利用者装置の機能ブロック図を示
す。その構成は、図2及び3中の利用者300 が実行する
電子現金発行時の処理機能部300aと、電子現金使用時の
処理機能部300bが互いに入力部311 、制御部312 、メモ
リ30M を共有するように構成されている。電子下金発行
時の機能構成部300aは、入力部311 と、各部の動作を制
御するための制御部312 と、鍵生成部301 と、送信部31
3 と、受信部314 と、メモリ30M とから構成されてい
る。制御部312 は入力部311 からコマンド、利用者情報
U、額面Xが与えられると、電子現金発行要求のため利
用者情報Uと額面Xを送信部313 から銀行200(B)に送信
すると共に、鍵生成部301 に対し検証鍵NU と署名鍵SK
U の生成を行わせ、Xと共にメモり30M に保持させる。
更に生成した鍵NU を銀行200 に送信させる。
【0029】制御部312 は銀行200 から(X,NU)に対する
署名SB(X,NU)を受信部314 で受信すると制御部312 はそ
れをメモり30M に保持する。電子現金使用時の機能構成
部300bは入力部311 と、制御部312 と、メモリ30Mと、
表示部30D と、減算部302 と、署名構成部305 と、一方
向関数部306 と、比較判定部307 と、送信部315 と、受
信部316 とから構成される。小売店400 に対する支払額
が入力部311 から入力されるとメモリ30M から残額xを
読み出し、表示部30D に表示し、残額xが支払額以上で
あることを確認する。次にメモリ30Mから額面X、残金
xの電子現金C={x,X,NU,SB(X,NU)}を読み出し、送信部
315 から小売店400 に送信する。これに応答して小売店
400 から問い合わせ情報e、TIME、Wを受信部316 によ
り受信するとTIMEとWを一方向関数部306 により一方向
関数処理してf(TIME,W) を得て、これが受信したeと一
致するか、比較判定部307 で判定する。一致すれば署名
生成部305 で署名鍵SKU を使ってeとyの組に対する署
名SU(e,y) を生成し、支払金額yと共に小売店400 に送
信する。それと共に減算部302 で残額xから支払金額y
を減算して更新した残額xでメモリ30M 内の残額xを更
新する。
【0030】監視機関装置100 は図6に示すように、監
視データベース101 と、履歴データベース108 と、加算
部107 と、比較部103 と、これらの動作を制御する加算
部107 と、履歴データベース108 と、受信部112 と、送
信部113 と、受信部115 と、制御部114 とから構成され
ている。受信部112 で銀行200 から(X,NU)を受信すると
制御部114 は(X,NU)を監視データベースに登録し、それ
に対応して電子現金の合計使用金額初期値Y=0 を記録す
る。
【0031】以後、小売店400 から受信部115 により電
子現金C={x,X,NU,SB(X,NU)}による支払手順の履歴デー
タH={x,X,NU,SB(X,NU),TIME,W,e,y,SU(e,y)}を受信す
ると、制御部114 は受信データ中の(X,NU)が監視データ
ベース101 に既に登録されているか検索し、登録されて
いなければその電子現金による支払いは不正なものとし
て電子現金の発行銀行に(X,NU)を通知する。既に登録さ
れていればその(X,NU)に対応する監視データベース101
中の合計使用金額YとデータH中の支払金額yとを加算
部107 で加算する。その加算結果を比較部103 でデータ
H中の額面Xと比較する114 にその比較結果がY+y>Xで
あれば不正使用であると判定し、監視データベース101
から(X,NU)及びそれと対応するYを削除すると共に(X,N
U)を電子現金発行銀行に通知する。Y+y<Xであればその
電子現金の使用は不正のないものと判定、履歴データベ
ースにデータHを記録すると共に、監視データベース10
1中の対応する合計使用金額Yを加算部107 の加算結果
により更新する。Y+y=X の場合、その電子現金の額面X
が全額使用されてしまったことを意味し、従って監視デ
ータベース101 から(X,NU)とそれに対応するYを削除す
る。
【0032】上述の第1実施例では、同一利用者が電子
現金の発行を要求する毎に異なる署名検証鍵NU を生成
するため、額面Xが同じでも同一利用者の複数の電子現
金を区別することができる。同一利用者が常に同一署名
検証鍵NU を使用できるようにするには、電子現金毎に
異なる変数値R(例えば乱数)を生成し、前述のデータ
(X,NU)の代わりに(X,NU,R)を使用すればよい。即ち、銀
行200 では利用者情報Uに対応してデータ(X,NU,R)又は
n=h(X,NU,R) を記録する。また、監視機関100ではデー
タ(X,NU)を登録する代わりに(X,NU,R)又はn=h(X,NU,R)
を登録する。利用者は小売店400 にデータ(X,NU,R)及び
SB(X,NU,R)を含む電子現金Cを送る。決済においては、
監視機関100 は小売店からのデータH中の(X,NU,R)又は
それを変換したnが監視データベース101 に登録されて
いるかを検査する。その他の具体的手順は前述と同様で
ある。 第2実施例 ところで、図2、3及び4を参照に説明した実施例で
は、銀行と電子現金の発行を求める場合に、利用者は自
分の署名検証鍵NU を銀行に提出するので、銀行は利用
者の情報Uと(X,NU)との対応関係を知っている。一方、
小売店では電子現金の支払を受ける場合に利用者から
(X,NU)を受け取る。そこで、もし銀行が小売店と結託す
れば、銀行は小売店で電子現金を使用した利用者の情報
Uを得ることができることになるので、図2、3及び4
の実施例はプライバシ保護の面で十分といえない。この
点を改善した実施例を以下に図7、8及び9を参照して
説明する。
【0033】この第2実施例では、電子現金発行処理に
おいて利用者は銀行に利用者の(X,N U)の対が知られない
ようにするため、(X,NU)を監視機関の暗号化鍵で暗号化
して銀行に与える。また、銀行の電子現金発行手順にお
いて、銀行にNU が知れないようにするため、銀行の電
子現金に対する署名はブラインド署名を行う。以下、図
7、8、9を参照して詳細に説明する。 (1) 電子現金の発行処理 まず、利用者が、電子現金を発行してもらう場合を図7
を用いて説明する。
【0034】監視機関100 は、予め公開鍵暗号方式用の
公開鍵PKT と秘密鍵SKT を生成してメモリ10M に保持し
ておき、銀行200 はブラインド署名方式用の各額面Xに
対応した対の公開鍵PKB と秘密鍵SKB を生成して保持し
ているものとする。監視機関100 は、公開鍵暗号用の暗
号化関数ET と公開鍵PKT を公開すると共に、公開鍵PK
T と対をなす復号用の秘密鍵SKT と、それを用いる復号
関数DT を秘密に保持する。
【0035】銀行200 は、ブラインド署名用の公開鍵PK
B と署名検証関数VB を公開すると共に、ブラインド署
名用公開鍵PKB と対をなすブラインド署名用秘密鍵SKB
と、それを用いた署名生成関数SB を秘密に保持する。
利用者300 は、銀行200 の利用者300 の口座から電子現
金の額面金額Xを引き下ろすことを要請するための手続
きを以下の手順で行う。
【0036】ただし、この実施例では利用者は電子現金
の発行を要求するときは常に同一の署名検証鍵NU を使
う場合で説明する。従って、この場合、同一利用者の複
数の電子現金をそれぞれ区別できるように、前述した変
数値(例えば乱数)Rを(X,N U)と組み合わせて使用す
る。 ステップ1:利用者300 は、ディジタル署名の鍵生成部
301 を用いて、署名生成鍵SKU 及び署名検証鍵NU を生
成し、乱数生成部30R により変数値として乱数Rを生成
する。なお、この実施例では乱数Rを使うことにより安
全性をより高めているが、乱数Rの代わりに他のどの様
な任意の変数値を使ってもよい。
【0037】次に、監視機関100 の暗号化用公開鍵PKT
を使って公開されている暗号関数E T を計算する暗号部
303 によりET(X,NU,R)を計算し、金額Xを利用者300 の
口座から引き下ろすことを要請するメッセージをET(X,N
U,R)とともに銀行200 に送る。このメッセージは、利用
者300 のディジタル署名等で認証されていることが望ま
しい。前述の第1実施例で説明したと同様に、利用者は
U を所望の関数で変換してnを生成し、銀行200 に対
しXを引き下ろすように要請すると共に暗号化情報E
T(X,n) を生成して銀行へ送るようにしてもよい。
【0038】ステップ2:銀行200 は、利用者300 の口
座の残高をチェックし、その残高よりXを減額し、更に
利用者名Uと対応させてET(X,NU,R)を署名検証鍵情報と
して利用者データベース201 に記録しておく。利用者30
0 の署名のついた引き下ろし依頼メッセージがあればそ
れも一緒に記録しておく。銀行200 は暗号化データE
T(X,NU,R)を復号する復号秘密鍵SKT を持っていないの
で、(X,NU,R)を知ることはできない。
【0039】次に、{X,ET(X,NU,R)}を監視機関装置100
に送付する。 ステップ3:監視機関100 は、復号関数DT の復号部10
2 を用いて、ET(X,NU,R)を復号化して(X,NU,R)を求め
る。次に、銀行200 から送られてきたXと復号化により
得られたXの同一性を比較部103 により検証する。それ
が正しければ、(X,NU,R)を署名検証鍵情報として監視デ
ータベース105 に登録すると共に、それに対応して利用
金額の合計額Yの初期値Y=0 を記憶する。
【0040】ステップ4:利用者300 は、額面金額Xに
対応する銀行のブラインド署名公開鍵PKB を用いて、ブ
ラインド署名生成部304 によりF(NU) を生成し(ブライ
ンド署名前処理と呼ばれている)、それを銀行200 に送
る。銀行200 はF(NU) をブラインド署名作成部203 に入
力し、ブラインド署名秘密鍵SKB を使ってブラインド署
名Z(NU) を生成し、それを利用者300 に送る。
【0041】利用者300 は、ブラインド署名公開鍵PKB
を使ってブラインド署名抽出部308によりZ(NU) から銀
行の署名SB(NU)を得る(一般にブラインド署名後処理と
呼ばれている)。ブラインド署名の実現法については、
RSA法を用いた方式が、Chaum, Fiat,Naorによる"Un-
traceable Electronic Cash", Proc. of CRYPTO'88"に
紹介されており、更にSchnorr法を用いたブラインド署
名がT.Okamotoによる"Provably Secure and Practical
Identification Schemes and Corresponding Signature
Schemes", Proc. of CRYPTO'92, pp.31-53, 1993のApp
endix Bで紹介されている。
【0042】ここで、利用者300 はC={x,X,NU,R,S
B(NU)}を額面X、残高xの電子現金としてメモリ30M に
保持する。ただし、残高xの初期値はx=X である。この
第2実施例では、署名検証鍵NU を利用者300 が生成す
る例を示しているが、他の機関、例えば監視機関100 が
生成することにしてもよい。その場合は、利用者300 は
暗号鍵KU を作り、ET(KU)を銀行200 を経由して監視機
関100 に送り監視機関100 はET(K) を復号してKを求
め、生成したNU をKで暗号化してEK(NU)とし、そのEK
(NU)を銀行経由で利用者に送信する。利用者300 は暗号
鍵Kを使って受信したEK(NU)を復号してNU を得る。 (2) 電子現金の支払 次に、利用者300 が、利用者の署名検証鍵NU と銀行20
0 より発行された署名SB(NU)との組を額面X、残高x
(初期値x=X)の電子現金Cとして用いて小売店Wで
金額y(y≦x)を支払う場合について図8を用いて説
明する。一般にブラインド署名では、所望の種類の額面
Xにそれぞれ対応して固有な対の鍵SKB、PKB を生成す
ることが可能である。従って、額面を提示すれば、使用
すべきブラインド署名検証鍵PKB がわかる。即ち、署名
SB(NU)は署名検証鍵NU と額面Xの両方の情報を含んで
いることと同じである。
【0043】ステップ1:利用者300 は、メモリ30M か
ら読みだした残高xを表示部30D に表示してそれが利用
しようとする金額y以上であることを確認して電子現金
C={x,X,NU,R,SB(NU)} を小売店400 に送る。 ステップ2:小売店400 は、署名検証部401 により額面
Xに対応する公開鍵PK B を用いて、電子現金の発行者
(銀行200 )の署名SB(NU)の正当性を署名検証関数VB
により検証する。正しければ、一方向関数演算部402 に
より一方向関数fを用いて時間TIME、小売店400 に対応
する情報Wから検証のための問い合わせ情報e=f(TIME,
W)を生成し、TIME,W,eを利用者300 に送る。
【0044】ステップ3:利用者300 は、一方向関数演
算部306 、比較部307 を用いて、e=f(TIME,W) の正当
性を検証する。正しければ、署名生成部305 を用いて、
送られてきたe及び支払金額y(y≦x)に対する利用
者の署名SU(e,y) を計算し、y,SU(e,y) を小売店400
に送付する。 ステップ4:小売店400 は、署名検証部401 を用いて、
利用者署名SU(e,y) と支払金額yの正当性を問い合わせ
情報eと署名検証鍵NU を使って検証し、更に、比較部
403 を用いて、y≦xを検証する。いずれも正しけれ
ば、該当支払金額yの電子現金による支払いを認める。
また、後の決済のため、利用者300 との間の交信データ
H={x,X,NU,R,SB(NU),TIME,W,e,y,SU(e,y)}を小売店デー
タ蓄積部40D に保持する。、少なくとも1つが正しくな
ければ支払を認めない判定結果OK/NG を利用者に送る。
また、後の決済のため、利用者300との間の交信データH
={x,X,NU,R,SB(NU),TIME,W,e,y,SU(e,y)}を小売店デー
タ蓄積部40Dに保持する。
【0045】なお、小売店400 がTIME,W,eを利用者
300 へ送った後、SB(NU)の正当性の検証を行ってもよ
い。 ステップ5:利用者300 は小売店400 からの判定結果OK
/NG がOKであれば、メモリ30M の残高xを減算部302 に
よりx←x-y と更新する。 (3) 決済 最後に、小売店Wと銀行Bの間の決済方法について図9
を用いて説明する。
【0046】ステップ1:小売店400 は決済のためにま
ず監視機関100 に利用者300 と小売店400 の間の全ての
相互通信データH={x,X,NU,R,SB(NU),TIME,W,e,y,SU(e,
y)}を決済銀行名とともに送信する。 ステップ2:監視機関100 の制御部114 は、相互通信デ
ータHに含まれる利用者300 の署名検証用鍵NU と、乱
数Rと、額面Xの組(X,NU,R)が監視デタベース105 に登
録されているかどうかを検査する。登録されていれば、
制御部114 は加算部107 及び比較部103 を用いて、以下
の処理を行う。まず、(X,NU,R)に対応して記録されてい
る利用金額の合計値YをY+y→Yに更新し、更に更新され
たYがXを越えてないことを検査する。また、制御部11
4 は相互通信データHを履歴データベース108 に記録す
る。
【0047】もし、更新された合計支払額Yが額面Xを
越えてなければ、使用された電子現金の発行銀行200 に
対し、小売店400 の指定した銀行の口座に金額yを振り
込むよう指示する。このとき、小売店400 が口座を持つ
銀行は、利用者300 の検証用鍵NU にブラインド署名し
た銀行200 (電子現金を発行した銀行)でなくても良
い。更に、Y+y=X ならば、監視データベース105 から
(X,NU,R)及びそれに対応するYを削除する。
【0048】(X,NU,R)が監視データベース105 に登録さ
れていない場合は、利用者による不正支払いが行われた
ものとして、不正者特定処理を行う。また、Y+y>X なら
ば、制御部114 は監視データベース105 から(X,NU,R)及
びそれに対応するYを削除すると共に、やはり、利用者
による不正支払いが行われたものとして、不正者特定処
理を行う。
【0049】ステップ3:不正者特定処理では、制御部
114 は、履歴データベース108 より不正行為の証拠とな
る情報Hを読み出し、情報H中の(X,NU,R)を暗号部116
により公開鍵PKT を使って暗号化してET(X,NU,R)を得
て、情報Hと共に電子現金の発行元銀行200 に送付す
る。銀行200 は、不正行為の証拠である情報H中のS
U(e,y),SB(NU)の正当性を鍵NU,PKB を使って署名検証
部203 により検証し、正しければET(X,NU,R)をキーとし
て利用者データベース201 から対応する不正利用者情報
Uに該当する不正利用者300 を特定する。あるいは、監
視機関100 に暗号部116を設ける代わりに、銀行200 に
暗号部を設けて、監視機関100 から受けた(X,NU,R)を暗
号化してET(X,NU,R)を得てもよい。
【0050】更に、小売店400 が実名Wを監視機関100
に教えたくない場合は、小売店が監視機関に送る通信デ
ータH中には仮名W'を用いて実名W を使わないように
する。また、小売店400 は決済銀行に400 とWの対応を
通知しておくため、その銀行は監視機関より受け取った
Wへの振り込み依頼を小売店400 への振り込み依頼であ
ると判断する。
【0051】次に上述の第2実施例における特徴的な利
用者装置300 と監視機関100 の機能構成を以下に説明す
る。図10は上述の第1実施例において利用者300 の処
理手順を実行するための利用者装置の機能ブロック図を
示す。その構成は、図7及び8中の利用者300 が実行す
る電子現金発行時の処理機能部300aと、電子現金使用時
の処理機能部300bが互いに入力部311 、制御部312 、メ
モリ30M を共有するように構成されている。
【0052】電子下金発行時の機能構成部300aは、入力
部311 と、各部の動作を制御するための制御部312 と、
鍵生成部301 と、暗号化部303 と、ブラインド署名前処
理部304 と、ブラインド署名後処理部308 と、送信部31
3 と、受信部314 と、メモリ30M とから構成されてい
る。制御部312 は入力部311 からコマンド、利用者情報
U、額面Xが与えられると、電子現金発行要求のため利
用者情報Uと額面Xを送信部313 から銀行200(B)に送信
すると共に、鍵生成部301 に対し検証鍵NU と署名鍵SK
U の生成を行わせ、Xと共にメモり30M に保持させる。
また、監視機関100 の暗号化用公開鍵PKT を使って暗号
化部303 によりX,NU,Rを暗号化して得たET(X,NU,R)を銀
行200 に送信する。更に銀行のブラインド署名用公開鍵
PKB を使ってブラインド署名前処理部304 により検証鍵
U を前処理し、得られたF(NU) を銀行200 に送信す
る。
【0053】制御部312 は銀行200 からF(NU) に対する
ブラインド署名Z(NU) を受信するとブラインド署名後処
理部308 により銀行のブラインド署名用公開鍵PKB を使
って銀行の署名SB(NU)を抽出し、それをメモり30M に保
持する。電子現金使用時の機能構成部300bは入力部311
と、制御部312 と、メモリ30Mと、表示部30D と、減算
部302 と、署名構成部305 と、一方向関数部306 と、比
較判定部307 と、送信部315 と、受信部316 とから構成
される。小売店400 に対する支払額が入力部311 から入
力されるとメモリ30M から残額xを読み出し、表示部30
D に表示し、残額xが支払額以上であることを確認す
る。次にメモリ30Mから額面X、残金xの電子現金C=
{x,X,NU,SB(NU)}を読み出し、送信部315 から小売店400
に送信する。これに応答して小売店400 から問い合わ
せ情報e、TIME、Wを受信部316 により受信するとTIME
とWを一方向関数部306 により一方向関数処理してf(TI
ME,W) を得て、これが受信したeと一致するか、比較判
定部307で判定する。一致すれば署名生成部305 で署名
鍵SKU を使ってeとyの組に対する署名SU(e,y) を生成
し、支払金額yと共に小売店400 に送信する。それと共
に減算部302 で残額xから支払金額yを減算して更新し
た残額xでメモリ30M 内の残額xを更新する。
【0054】監視機関装置100 は図11に示すように、
メモリ10M と、監視データベース101 と、復号部102
と、比較部103 と、履歴データベース108 と、加算部10
7 と、比較部103 と、これらの動作を制御する加算部10
7 と、履歴データベース108 と、受信部112 と、送信部
113 と、受信部115 と、これらの各部の動作を制御する
制御部114 とから構成されている。受信部112 で銀行20
0 からXとET(X,NU,R)が受信されると、復号部102 は暗
号用秘密鍵SKT を使って(X,NU,R)を復号し、得られた金
額Xと受信したXが一致するかを比較部103 でチェック
し、一致すればN U と(X,NU,R)の対と、それに対応する
利用合計金額の初期値Y=0 を監視データベース101 に登
録する。
【0055】以後、小売店400 から受信部115 により電
子現金C={x,X,NU,R,SB(NU)}による支払手順の履歴デー
タH={x,X,NU,R,SB(NU),TIME,W,e,y,SU(e,y)} を受信す
ると、制御部114 は受信データ中の(X,NU,R)が監視デー
タベース101 に既に登録されているか検索し、登録され
ていなければその電子現金による支払いは不正なものと
して電子現金の発行銀行に(X,NU,R)を通知する。既に登
録されていればその(X,NU,R)に対応する監視データベー
ス101 中の合計使用金額YとデータH中の支払金額yと
を加算部107 で加算する。
【0056】その加算結果を比較部103 でデータH中の
額面Xと比較する114 にその比較結果がY+y>Xであれば
不正使用であると判定し、監視データベース101 から
(X,NU,R)及びそれと対応するYを削除すると共に(X,NU,
R)を電子現金発行銀行に通知する。Y+y<Xであればその
電子現金の使用は不正のないものと判定、履歴データベ
ースにデータHを記録すると共に、監視データベース10
1 中の対応する合計使用金額Yを加算部107 の加算結果
により更新する。Y+y=X の場合、その電子現金の額面X
が全額使用されてしまったことを意味し、従って監視デ
ータベース101 から(X,NU,R)とそれに対応するYを削除
する。
【0057】上述の第2実施例において、利用者はET
(X,NU,R)を銀行及び監視機関に送る代わりに、まず、
(X,NU)をハッシュ関数で署名検証鍵情報n=h(X,NU) に変
換し、(n,R) を暗号化して得たET(X,NU,R)を銀行及び監
視機関に送ってもよい。その場合、銀行はET(n,R) を署
名検証鍵情報として利用者データベースに記録紙、監視
機関はET(n,R)又は(n,R)を署名検証鍵情報として関しデ
ータベースに登録する。
【0058】第1実施例で述べたと同様に、利用者の署
名検証鍵NU を電子現金発行毎に変えれば、変数Rを使
用してもしなくてもよい。使用しない場合、銀行は利用
者名Uに対応して(X,NU)を利用者データベース201 に記
録し、監視機関100 は(X,NU)またはET(X,NU)を登録す
る。変数Rを使用する場合は、その変数Rを上述の第2
実施例と全く同様に扱えばよいし、あるいは変数Rを利
用者、銀行、監視機関間の通信の安全性を高めるために
のみ使用する。後者の場合、小売店400 への支払電子現
金Cには変数Rを含めないので、決済において、小売店
400 からの情報H中に含まれる利用者の署名検証鍵NU
が監視データベース105 に登録されているかを検査する
ためには、予め監視データベース105 に(X,NU)とET(X,N
U,R)の対を登録しておく。決済時に(X,NU)をキーワード
として検索し、それが登録されていれば、必要に応じて
(即ち不正利用者検出の必要があれば)検出したET(X,N
U,R)を銀行に送る。
【0059】
【発明の効果】この発明の第1実施例では、銀行と小売
店が結託すると利用者のプライバシイが保証されなくな
るという欠点があるが、銀行が不正をしなければ利用者
のプライバシイを保証でき、かつ不正使用を検出でき
る、という特徴を備えている。この発明の第2実施例で
は、Chaum らの方式と同様に、銀行が小売店と結託して
も利用者のプライバシイを保証でき、かつ不正使用を検
出できる、という特徴を備えている。
【0060】更に、この発明のいずれかの方法でも、Ch
aum らの方式よりも支払処理における通信量を少なくす
ることができる。また、分割利用が可能で、更に電子現
金の発行者と利用者の口座を管理する金融機関を階層的
に分離することができる。例えば、Chaum 等の方法で
は、電子現金の支払において、不正が成功する確率が1/
230 のとき、処理回数を30回実行する必要があるた
め、一方向関数の出力サイズを128 ビットとすると、少
なくとも(3×128×30)=11520 ビットの通信量を必要と
する。
【0061】一方、この発明での支払処理においては、
y,e及びそれに対する利用者の署名のサイズが通信量
となる。y,e(更にTIME,W)のサイズの合計は高々
200ビット程度あれば十分である。署名のサイズを10
24ビットとすると高々1200ビット程度となる。従って、
この発明の通信量は、支払処理時における通信量を10
倍程度少なくすることが可能である。
【0062】また、この発明では発行した電子現金を合
計が額面金額になるまで何回でも分割して利用が可能で
ある。更に、電子現金発行を行う機関(銀行)と決済の
ための検証処理を行う機関(監視機関)を分離し、監視
機関において銀行の発行した電子現金の流通量を監視す
ることを可能としている。つまり、監視機関では、銀行
が発行した電子現金の総量と銀行に還流してきた電子現
金の総量を知ることができるため、各時点で流通してい
る電子現金量を監視することが可能となる。
【図面の簡単な説明】
【図1】この発明が適用されるシステム構成の例を示す
図。
【図2】この発明の第1実施例における電子現金の発行
方法を機能的に示すブロック図。
【図3】この発明の第1実施例における電子現金の支払
方法を機能的に示すブロック図。
【図4】この発明の第1実施例における電子現金の決済
方法を機能的に示すブロック図。
【図5】この発明の第1実施例における利用者装置の機
能構成を示すブロック図。
【図6】この発明の第1実施例における監視機関装置の
機能構成を示すブロック図。
【図7】の発明の第2実施例における電子現金の発行方
法を機能的に示すブロック図。
【図8】この発明の第2実施例における電子現金の支払
方法を機能的に示すブロック図。
【図9】この発明の第2実施例における電子現金の決済
方法を機能的に示ブロック図。
【図10】この発明の第2実施例における利用者装置の
機能構成を示すブロック図。
【図11】この発明の第2実施例における監視機関装置
の機能構成を示す。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G09C 1/00 640 7259−5J G09C 1/00 640D 660 7259−5J 660C 7259−5J 660B H04L 9/32 G06F 15/30 Z H04L 9/00 675D 675B

Claims (18)

    【特許請求の範囲】
  1. 【請求項1】 電子現金の発行を監視する監視機関と、
    電子現金を発行する銀行と、電子現金を利用する利用者
    と、電子現金により支払を受ける小売店とより構成され
    た電子現金システムの監視機関付き電子現金方法におい
    て、以下のステップを含む: (1) 上記利用者は、銀行に利用者情報Uと電子現金の額
    面に対応する金額Xを送信し、利用者の口座から金額X
    を引き下ろすことを要請し、 (2) 上記銀行は、上記利用者の口座から金額Xを減額
    し、上記利用者の署名検証用鍵NU 及び金額Xに対して
    その銀行の署名SB(X,NU)を生成し上記利用者に送付する
    と共に、上記金額Xと上記署名検証用鍵NU の情報を含
    む署名検証鍵情報nを上記利用者情報Uと対応させて利
    用者データベースに記録し、更に上記監視機関に上記署
    名検証鍵情報を送付し、 (3) 上記監視機関は、上記署名検証鍵情報nを監視デー
    タベースに登録し、 (4) 上記利用者は上記金額Xと、上記署名検証鍵NU
    と、上記署名SB(X,NU)とを含む情報を額面Xの電子現金
    Cとして使って支払金額yを上記小売店に支払い、 上記小売店は上記電子現金の正当性を検証して受け取
    り、 (5) 上記小売店は上記電子現金Cの情報を含む上記利用
    者との全交信データHを上記監視機関に送信して決済を
    求め、 (6) 上記監視機関は受信した上記交信データH中の上記
    電子現金Cの正当性を検証し、上記銀行に対し上記小売
    店の口座に上記支払金額yを振り込むよう指示を与え
    る。
  2. 【請求項2】 請求項1の方法において、上記ステップ
    (1) で上記監視機関は上記署名検証鍵情報と対応させて
    合計使用金額Yを上記監視データベースに記録し、上記
    ステップ(2) で上記利用者は上記電子現金内に残額xを
    上記電子現金の情報に含めて上記小売店に送る。
  3. 【請求項3】 請求項2の方法において、上記ステップ
    (4) は以下のステップを含む: (4a) 上記小売店は任意の情報eを生成し、それを上記
    利用者に送り、 (4b) 上記利用者は、支払金額yと送られてきた上記情
    報eとに対する利用者の署名SU(e,y) を生成し、上記電
    子現金Cと,上記支払金額yと上記利用者の署名SU(e,
    y)を上記小売店に送付し、 (4c) 上記小売店は、上記銀行の署名SB(X,NU)の正当性
    を検証し、また上記利用者署名SU(e,y) の正当性を上記
    検証鍵NU を用いて検証し、更に上記支払金額yが上記
    電子現金の残額x以下であることを検証し、いずれの検
    証も正しければ、上記支払金額yの上記電子現金による
    支払いを認める。
  4. 【請求項4】 請求項2又は3の方法において、上記ス
    テップ(6) は以下のステップを含む: (6a) 上記監視機関は、上記相互通信データHより得ら
    れる上記署名検証鍵情報nが上記監視データベースに登
    録されているかどうかを検査し、 (6b) 登録されていれば、上記署名検証鍵情報に対応す
    る合計使用金額YをY+y に更新し、 (6c) その更新された合計使用金額Y+y が上記額面Xを
    越えないことを検査し、この検査が正しければ上記小売
    店の銀行口座に金額yを振り込むように上記銀行に指示
    し、 (6d) 更に、Y+y=X ならば、上記監視データベースから
    上記署名検証鍵情報とそれに対応する合計使用金額Yを
    削除し、 (6e) 上記検査の何れかでも合格でない場合は上記利用
    者による不正支払いが行われたものとして、上記監視デ
    ータベースから上記署名検証鍵情報とそれに対応する合
    計使用金額Yを削除し、上記銀行に上記署名検証鍵情報
    を送り、上記利用者データベースより不正利用者名を特
    定する。
  5. 【請求項5】 請求項1、2又は3の方法において、上
    記ステップ(1) は上記利用者が変数値Rを生成して、上
    記検証鍵NU と共に上記銀行及び上記監視機関に送るス
    テップを含み、上記ステップ(2) は上記銀行が上記署名
    検証鍵NU と上記変数値Rを含む情報を上記署名検証鍵
    情報として記録するステップを含み、上記ステップ(3)
    は上記監視機関が上記署名検証鍵NU と上記変数値Rを
    含む情報で上記署名検証鍵情報として上記監視データベ
    ースに登録するステップを含む。
  6. 【請求項6】 電子現金の発行を監視する監視機関と、
    電子現金を発行する銀行と、電子現金を利用する利用者
    と、電子現金の支払いを受ける小売店とより構成され、
    上記監視機関は暗号関数ET を公開し、上記銀行は署名
    検証関数VB を公開した電子現金システムの電子現金方
    法において、以下のステップを含む: (1) 上記利用者は、銀行に利用者情報Uと電子現金の額
    面に対応する金額Xを送信して銀行に金額Xを利用者の
    口座から引き下ろすことを要請すると共に、上記額面X
    と、上記署名検証鍵NU とを含む署名検証鍵情報を暗号
    化して、暗号化情報ET を得て銀行に送り、 (2) 上記銀行は、上記利用者の口座から金額Xを減額
    し、上記金額Xと上記暗号化情報ET を上記監視機関に
    送付すると共に、上記暗号化情報ET を上記利用者情報
    Uに対応させて署名検証鍵情報として利用者データベー
    スに記録し、 (3) 上記監視機関は、上記暗号化情報ET を復号化して
    署名検証鍵情報を得て、上記署名検証鍵情報と暗号化情
    報ET の少なくともいずれか一方を監視データベースに
    登録し、 (4) 上記利用者は、上記署名検証鍵情報と上記額面金額
    Xに対するブラインド署名を銀行に要求し、上記額面金
    額Xに対応した銀行の署名SB(n) を得て、 (5) 上記利用者は上記署名SB(n) と、上記額面Xと、上
    記署名検証鍵NU とを含む情報を額面Xの電子現金Cと
    して使って支払金額yを上記小売店に支払い、上記小売
    店は上記電子現金の正当性を検証して受け取り、 (6) 上記小売店は上記電子現金Cの情報を含む上記利用
    者との全交信データHを上記監視機関に送信して決済を
    求め、 (7) 上記監視機関は受信した上記交信データH中の上記
    電子現金Cの正当性を検証し、上記銀行に対し上記小売
    店の口座に上記支払金額yを振り込むよう指示を与え
    る。
  7. 【請求項7】 請求項6の方法において、上記ステップ
    (3) は上記監視機関が上記署名検証鍵情報と上記暗号化
    情報ET の上記少なくとも一方を合計使用金額Yと対応
    させて上記監視データベースに登録するステップを含
    み、上記ステップ(4) は上記利用者が上記電子現金の残
    額xを上記電子現金の情報に含めて上記小売店に送るス
    テップを含む。
  8. 【請求項8】 請求項7の方法において、上記ステップ
    (4) は以下のステップを含む: (4a) 上記小売店は、任意の情報eを生成し、それを利
    用者に送り、 (4b) 上記利用者は、支払金額yと、送られてきた上記
    情報eとに対する利用者の署名SU(e,y)を生成し、上記
    電子現金C={x,X,NU,SB(n)}と、{y,SU(e,y)}を小売店
    に送付し、 (4c) 上記小売店は、上記銀行の署名SB(n) の正当性を
    署名検証関数VB を用いて検証し、更に利用者署名S
    U(e,y) の正当性を上記署名検証鍵NU を用いて検証
    し、いずれの検証も正しければ、該当支払金額yの電子
    現金による支払いを認める。
  9. 【請求項9】 請求項7又は8の方法において、上記ス
    テップ(7) は以下のステップを含む: (7a) 上記監視機関は、上記相互通信データHより得ら
    れる上記署名検証鍵情報及び上記暗号化情報ET の上記
    いずれか一方が上記監視データベースに登録されている
    かどうかを検査し、 (7b) 登録されていれば、上記署名検証鍵情報及び上記
    暗号化情報ET の上記少なくとも一方に対応する合計使
    用金額YをY+y に更新し、 (7c) その更新された合計使用金額Y+y が上記額面Xを
    越えないことを検査し、この検査が正しければ上記小売
    店の銀行口座に金額yを振り込むように上記銀行に指示
    し、 (7d) 更に、Y+y=X ならば、上記監視データベースから
    上記署名検証鍵情報及び上記暗号化情報ET の上記少な
    くとも一方とそれに対応する合計使用金額Yを削除し、 (7e) 上記検査の何れかでも合格でない場合は上記利用
    者による不正支払いが行われたものとして、上記監視デ
    ータベースから上記署名検証鍵情報及び上記暗号化ET
    の上記少なくとも一方とそれに対応する合計使用金額Y
    を削除し、上記銀行に上記署名検証鍵情報n及び上記暗
    号化情報ET の上記少なくとも一方を送り、上記利用者
    データベースより不正利用者名を特定する。
  10. 【請求項10】 請求項4又は9の方法において、上記
    署名検証鍵情報は上記額面Xと上記署名検証鍵NU との
    組で構成する。
  11. 【請求項11】 請求項1、2、3、6、7又は8の方
    法において、上記ステップ(1) は上記利用者が上記検証
    鍵NU を生成するステップを含む。
  12. 【請求項12】 請求項6、7又は8の方法において、
    上記ステップ(1) は上記利用者が変数値Rを生成し、上
    記検証鍵NU と上記変数値Rを含む情報を上記署名検証
    鍵情報とするステップを含む。
  13. 【請求項13】 請求項1、2、3、6、7又は8の方
    法において、上記監視機関は上記利用者のための上記署
    名検証鍵NU を生成し、上記利用者に送るステップを含
    む。
  14. 【請求項14】 請求項1、2、3、6、7又は8の方
    法において、上記署名検証鍵情報は上記額面Xと上記署
    名検証鍵NU の組を予め決めた一方向ハッシュ関数hに
    より処理をして得る。
  15. 【請求項15】 電子現金の発行を監視する監視機関
    と、電子現金を発行する銀行と、電子現金を利用する利
    用者と、電子現金により支払を受ける小売店とより構成
    された電子現金システムを実行する利用者装置であり、 利用者署名用鍵SKU を生成する鍵生成手段と、 金額Xと署名検証鍵NU とに対する銀行の署名SB(NU)
    と、残額xと、額面Xと,署名検証鍵NU とを含む電子
    現金Cと、上記署名用鍵SKU とを保持するメモリ手段
    と、 支払金額yと上記小売店から受信した任意の情報eとに
    対する署名を上記署名用鍵SKU を使って行い、署名S
    U(e,y) を生成する署名生成手段と、 上記残額xから支払金額yを減算して残額を更新する残
    額更新手段と、を含む。
  16. 【請求項16】 電子現金の発行を監視する監視機関
    と、電子現金を発行する銀行と、電子現金を利用する利
    用者と、電子現金の支払いを受ける小売店とより構成さ
    れた電子現金システムを実施する監視機関装置であり、 発行された電子現金を所有する利用者に対応する署名検
    証鍵情報を合計使用金額Yと対応させて登録する監視デ
    ータベースと、 小売店から受信した残金x、額面X、署名検証鍵NU
    銀行の署名SB(X,NU)を含む電子現金Cと、支払金額yと
    を含む履歴データHを保持する履歴データベースと、 上記履歴データH中の金額Xと検証鍵NU に対応する署
    名検証鍵情報が上記監視データベースに登録されている
    か検索し、登録されていなければ不正使用された電子現
    金であると判定する手段と、 上記署名検証鍵情報が登録されている場合、上記履歴デ
    ータH中の支払金額yを上記監視データベース中の対応
    する合計使用金額Yに加算する加算手段と、 上記加算手段による加算結果Y+y を額面Xと比較する比
    較手段と、 上記比較手段による比較結果がY+y<X であれば上記監視
    データベース中の対応する合計使用金額Yを上記加算結
    果Y+y で更新し、Y+y=X であれば上記監視データベース
    中の対応する署名検証鍵情報と合計使用金額Yを削除
    し、Y+y>X であれば不正使用された電子現金であると判
    定して上記署名検証鍵情報及び上記合計使用金額Yを削
    除すると共に、その署名検証鍵情報を上記銀行に通知す
    る制御手段、とを含む。
  17. 【請求項17】 電子現金の発行を監視する監視機関
    と、電子現金を発行する銀行と、電子現金を利用する利
    用者と、電子現金により支払を受ける小売店とより構成
    された電子現金システムを実行する利用者装置であり、 利用者署名用鍵SKU 及び署名検証鍵NU を生成する鍵生
    成手段と、 監視機関の公開暗号鍵PKT を使って上記金額Xと上記署
    名検証鍵NU を暗号化して暗号化情報ET を生成し、銀
    行に与える暗号化手段と、 上記署名検証鍵NU に対しブラインド署名前処理を行っ
    て上記銀行に与えるブラインド署名前処理手段と、 上記銀行から受信した上記署名検証鍵に対するブライン
    ド署名Z(NU) を処理して上記銀行の署名SB(NU)を得るブ
    ラインド署名後処理手段と、 上記残額x、額面X、署名検証鍵NU 及び署名SB(NU)を
    含む電子現金Cと、上記利用者署名用鍵SKU と上記監視
    機関の公開暗号鍵PKT とを保持するメモリ手段と、 支払金額yと上記小売店から受信した任意の情報eとに
    対する署名を上記署名用鍵SKU を使って行い、署名S
    U(e,y) を生成する署名生成手段と、 上記残額xから支払金額yを減算して残額を更新する残
    額更新手段、とを含む。
  18. 【請求項18】 電子現金の発行を監視する監視機関
    と、電子現金を発行する銀行と、電子現金を利用する利
    用者と、電子現金の支払いを受ける小売店とより構成さ
    れ、上記監視機関は暗号関数ET を公開し、上記銀行は
    署名検証関数V B を公開した電子現金システムを実施す
    る監視機関装置であり、 公開暗号関数ET を複合するための秘密複合鍵SKT を保
    持するメモリと、 上記利用者が生成した署名検証鍵を含む署名検証鍵情報
    に対する暗号化情報E T(n) を、上記秘密複合鍵SKT
    使って復号して署名検証鍵情報を得る復号手段と、 復号された上記署名検証鍵情報とそれに対応する合計使
    用金額Yとを登録する監視データベースと、 小売店から受信した残金x、額面X、署名検証鍵NU
    銀行の署名SB(NU)を含む電子現金Cと、支払金額yとを
    含む履歴データHを保持する履歴データベースと、 上記履歴データH中の金額Xと検証鍵NU に対応する署
    名検証鍵情報が上記監視データベースに登録されている
    か検索し、登録されていなければ不正使用された電子現
    金であると判定する手段と、 上記署名検証鍵情報が登録されている場合、上記履歴デ
    ータH中の支払金額yを上記監視データベース中の対応
    する合計使用金額Yに加算する加算手段と、 上記加算手段による加算結果Y+y を額面Xと比較する比
    較手段と、 上記比較手段による比較結果がY+y<X であれば上記監視
    データベース中の対応する合計使用金額Yを上記加算結
    果Y+y で更新し、Y+y=X であれば上記監視データベース
    中の対応する署名検証鍵情報と合計使用金額Yを削除
    し、Y+y>X であれば不正使用された電子現金であると判
    定して上記署名検証鍵情報及び合計使用金額Yを削除す
    ると共に、その署名検証鍵情報を上記銀行に通知する制
    御手段、とを含む。
JP12584297A 1996-05-16 1997-05-15 監視機関つき電子現金方法及びそれを実施するための利用者装置及び監視機関装置 Expired - Fee Related JP3329438B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12584297A JP3329438B2 (ja) 1996-05-16 1997-05-15 監視機関つき電子現金方法及びそれを実施するための利用者装置及び監視機関装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-121688 1996-05-16
JP12168896 1996-05-16
JP12584297A JP3329438B2 (ja) 1996-05-16 1997-05-15 監視機関つき電子現金方法及びそれを実施するための利用者装置及び監視機関装置

Publications (2)

Publication Number Publication Date
JPH1083426A true JPH1083426A (ja) 1998-03-31
JP3329438B2 JP3329438B2 (ja) 2002-09-30

Family

ID=26458981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12584297A Expired - Fee Related JP3329438B2 (ja) 1996-05-16 1997-05-15 監視機関つき電子現金方法及びそれを実施するための利用者装置及び監視機関装置

Country Status (1)

Country Link
JP (1) JP3329438B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016502703A (ja) * 2012-10-25 2016-01-28 ジエマルト・エス・アー 電子マネーを安全に保存および転送するシステムおよび方法
CN111105224A (zh) * 2019-11-13 2020-05-05 泰康保险集团股份有限公司 支付反馈信息的处理方法、装置、电子设备和存储介质
CN116057555A (zh) * 2020-07-08 2023-05-02 德国捷德进步52有限公司 支付系统、币登记册、参与者单元、交易登记册、监督登记册和利用电子币数据组进行支付的方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016502703A (ja) * 2012-10-25 2016-01-28 ジエマルト・エス・アー 電子マネーを安全に保存および転送するシステムおよび方法
CN111105224A (zh) * 2019-11-13 2020-05-05 泰康保险集团股份有限公司 支付反馈信息的处理方法、装置、电子设备和存储介质
CN116057555A (zh) * 2020-07-08 2023-05-02 德国捷德进步52有限公司 支付系统、币登记册、参与者单元、交易登记册、监督登记册和利用电子币数据组进行支付的方法

Also Published As

Publication number Publication date
JP3329438B2 (ja) 2002-09-30

Similar Documents

Publication Publication Date Title
JP3329432B2 (ja) 階層型電子現金実施方法およびこれに用いられる装置
US6003765A (en) Electronic cash implementing method with a surveillance institution, and user apparatus and surveillance institution apparatus for implementing the same
JP3802074B2 (ja) 携帯可能な身分証明要素でのトランザクション方法
US7184986B2 (en) Content transaction system and method, and program providing medium therefor
EP0047285B1 (en) A system for authenticating users and devices in on-line transaction networks
US7028191B2 (en) Trusted authorization device
US7099479B1 (en) Information transmission system, transmitter, and transmission method as well as information reception system, receiver and reception method
US6766306B1 (en) Electronic cash system
CN111062717B (zh) 一种数据转移处理方法、装置和计算机可读存储介质
US20010044786A1 (en) Content usage management system and method, and program providing medium therefor
JP2002259605A (ja) 情報処理装置及び方法、並びに記憶媒体
EP0848343A2 (en) Shopping system
JP3659090B2 (ja) 電子情報流通システム及び電子情報流通プログラムを格納した記憶媒体及び電子情報流通方法
KR20030078485A (ko) 자기앞 전자수표 발행 및 결제방법
JP3329438B2 (ja) 監視機関つき電子現金方法及びそれを実施するための利用者装置及び監視機関装置
EP0886248B1 (en) Method and apparatus for registration of information with plural institutions and recording medium with registration program stored thereon
JPH1132037A (ja) 証明データ生成装置
JP3396638B2 (ja) 利用者署名を用いた電子現金方法、その装置及び記録媒体
KR100261743B1 (ko) 계층형 전자현금 실현방법 및 장치
JP3747008B2 (ja) 事前登録型電子決済システム、及び事前登録型電子決済プログラム
JP3329431B2 (ja) 信託機関つき電子現金実施方法
JP3466478B2 (ja) 複数機関への登録方法、その装置及びそのプログラム記録媒体
JPH11110464A (ja) 電子証券の発行、移転、証明、消去のための処理システム及びその処理方法
KR20180044149A (ko) 상품권 관리 방법 및 장치
CN116561739A (zh) 数据交易方法以及装置、电子设备、存储介质

Legal Events

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

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090719

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100719

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100719

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110719

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120719

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20130719

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees