Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3314900B2 - Information delivery method and system using zero knowledge proof protocol - Google Patents
[go: Go Back, main page]

JP3314900B2 - Information delivery method and system using zero knowledge proof protocol - Google Patents

Information delivery method and system using zero knowledge proof protocol

Info

Publication number
JP3314900B2
JP3314900B2 JP04711595A JP4711595A JP3314900B2 JP 3314900 B2 JP3314900 B2 JP 3314900B2 JP 04711595 A JP04711595 A JP 04711595A JP 4711595 A JP4711595 A JP 4711595A JP 3314900 B2 JP3314900 B2 JP 3314900B2
Authority
JP
Japan
Prior art keywords
information
sentence
user device
encryption
user
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
JP04711595A
Other languages
Japanese (ja)
Other versions
JPH08149124A (en
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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP04711595A priority Critical patent/JP3314900B2/en
Publication of JPH08149124A publication Critical patent/JPH08149124A/en
Application granted granted Critical
Publication of JP3314900B2 publication Critical patent/JP3314900B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、電気通信システムを用
いて利用者が要求した情報を情報提供者が提供する場合
に、情報提供者が利用者認証により利用者の正当性を認
証しつつ、かつ利用者に要求された情報を利用者まで確
実に配送するとともに、後日利用者から要求した情報を
受信していないなどの異議申し立てに対して、情報提供
者が間違いなく要求された情報を利用者に配送し、かつ
利用者が受信している事実を証明できるようにするため
のものであり、特に有料情報提供サービスや配達証明サ
ービスなどに有用な情報配送方法およびシステムに関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for providing information requested by a user using a telecommunications system, wherein the information provider authenticates the user by user authentication. In addition to ensuring that the information requested by the user is delivered to the user, and that the information provider will definitely send the requested information in response to an appeal such as not receiving the information requested by the user at a later date. The present invention relates to an information delivery method and system useful for a paid information providing service, a delivery proof service, and the like, for delivering to a user and proving the fact that the user is receiving the information.

【0002】[0002]

【従来の技術】従来、代表的な認証方法としてはシステ
ム利用者の正当性を検査する利用者認証方式と、情報が
正当なものであることを証明するメッセージ認証方式
と、更にこれらを組み合わせて作成した情報が正当なも
のであることを情報作成者が保証するディジタル署名方
式がある。ここで、簡単に利用者認証方式とメッセージ
認証方式とディジタル署名方式について、それぞれ図を
参照しながら説明する。
2. Description of the Related Art Conventionally, typical authentication methods include a user authentication method for checking the validity of a system user, a message authentication method for proving that information is valid, and a combination of these. There is a digital signature system in which an information creator guarantees that created information is valid. Here, the user authentication method, the message authentication method, and the digital signature method will be briefly described with reference to the drawings.

【0003】図1(a)は利用者認証方式の代表的な例
であるFiat Shamir 法(A.Fiat andA.Shamir:“How to
prove yourself,practical solutions to identificati
onand signature problems”,Proc. of Crypto' 86,19
86.5並びに米国特許第4,748,668 号)による認証方式の
概念図である。
FIG. 1A shows a Fiat Shamir method (A. Fiat and A. Shamir: “How to
prove yourself, practical solutions to identificati
onand signature problems ”, Proc. of Crypto '86,19
86.5 and U.S. Pat. No. 4,748,668).

【0004】このFiat Shamir 法によれば、秘密情報s
を所有している者(以下、証明者という)が検証者に対
してその正当性を証明しようとしたとき、N(=pq:
p,qは互いに異なる大きな素数)とI(=s2 (mod
N))を証明者の公開情報とし、sとp,qを証明者の
秘密情報として以下のように認証される。
According to the Fiat Shamir method, secret information s
(Hereinafter referred to as a prover) tries to prove its validity to a verifier, and N (= pq:
p and q are mutually different large prime numbers) and I (= s 2 (mod
N)) is the prover's public information, and s, p, and q are the prover's secret information, and authentication is performed as follows.

【0005】まず始めに証明者が乱数Rを生成させ、初
期応答文X=R2 (mod N)を計算し、検証者にXを送
る。前記Xを受信した検証者は検査文eとしてランダム
に0または1を選び、証明者にeを送る。前記eを受信
した証明者は、応答文Y=Rse (mod N)を計算し、
検証者にYを送る。前記Yを受信した検証者は、検証式
2 =X×Ie (mod N)が成立するかを検証する。
First, the prover generates a random number R, calculates an initial response sentence X = R 2 (mod N), and sends X to the verifier. The verifier that has received the X randomly selects 0 or 1 as the check sentence e, and sends e to the prover. Prover having received the e calculates the response sentence Y = Rs e (mod N) ,
Send Y to verifier. The verifier receiving the Y verifies whether the verification formula Y 2 = X × I e (mod N) holds.

【0006】ここまでを1ラウンドとして、これをtラ
ウンド繰り返すことにより、秘密情報sを知らない第三
者が検証者の検証式をクリアできる確率は(1/2t
となる。したがって、十分に大きなtにおいて正常に認
証が終了した場合、検証者は検証相手(証明者)を秘密
情報sを所有している正当な証明者であると判断して構
わない。
[0006] By repeating the above procedure as one round and repeating t rounds, the probability that a third party who does not know the secret information s can clear the verification formula of the verifier is (1/2 t ).
Becomes Therefore, when the authentication is completed normally at a sufficiently large t, the verifier may determine that the verification partner (prover) is a valid certifier possessing the secret information s.

【0007】なお、この認証方式は一般にゼロ知識証明
に基づく認証方式と呼ばれ、証明者は検証者に対して秘
密情報sを所有している事実だけを伝え、秘密情報sに
関するその他の内容は一切漏らさないというメリットが
ある。
This authentication method is generally called an authentication method based on zero-knowledge proof, and the prover informs the verifier only of the fact that the confidential information s is possessed. There is a merit of not leaking at all.

【0008】しかし、Fiat Shamir 法では証明者と検証
者との通信履歴が、後日検証者が証明者を認証したこと
の証拠にならないという問題があった。そのため、この
問題に対する解決方法としては桜井(特開平5−123
21号)による認証方式が提案されている。この認証方
式によれば、検証者が証明者を認証した後でも検証者が
証明者を本当に認証したことの証拠が残るとされてい
る。
However, the Fiat Shamir method has a problem that the communication history between the prover and the verifier does not prove that the verifier has authenticated the prover at a later date. Therefore, as a solution to this problem, Sakurai (JP-A-5-123)
No. 21) has been proposed. According to this authentication method, evidence that the verifier has truly authenticated the prover remains even after the verifier has authenticated the prover.

【0009】しかし、ここで証拠として残るのはあくま
で検証者が証明者を通信を介して認証したという事実に
ついてのみであり、この認証事実の他は通信内容を始め
としてどのような通信が行われたのかについて何ら言及
するものではない。また、認証事実の証拠として通信系
列全てを記録保管するため、検証者が記録保管しておか
なければならない情報量が多いという欠点もある。
[0009] However, what remains as evidence here is only the fact that the verifier has authenticated the prover via communication. Other than this authentication fact, what kind of communication including communication contents is performed. It does not mention anything about that. In addition, since all communication sequences are recorded and stored as evidence of the authentication fact, there is also a disadvantage that the amount of information that the verifier must record and store is large.

【0010】次に、図1(b)は、メッセージ認証の一
例である認証子法による認証方式の概念図である。この
認証方式によれば、メッセージMを送信したい証明者は
秘密鍵Kh をパラメータとするハッシュ関数hを利用し
てメッセージMに対する認証子hk (M)を作成し、前
記メッセージMと共に前記認証子を送信相手である検証
者に送信する。検証者はあらかじめ証明者と同じ秘密鍵
h を秘密裏に共有しているので、受信したメッセージ
から上記と同じように秘密鍵Kh を用いて認証子を作成
し、受信した認証子と照合検査する。この照合に成功す
れば、受信したメッセージの正当性が保証される。これ
は秘密鍵Kh を知らなければ、任意のメッセージに対す
る正しい認証子は作成できないためである。
Next, FIG. 1B is a conceptual diagram of an authentication method based on an authenticator method which is an example of message authentication. According to this authentication method, a prover who wants to transmit a message M creates an authenticator h k (M) for the message M using a hash function h having a secret key K h as a parameter, and together with the message M, Sends the child to the verifier that is the sender. Since the verifier shares the same secret key K h as the prover in advance, the verifier creates an authenticator from the received message using the secret key K h in the same manner as described above, and verifies the authenticator against the received authenticator. inspect. If this verification is successful, the validity of the received message is guaranteed. This is if you do not know the secret key K h, the correct authenticator for any message is because you can not create.

【0011】しかし、上記の利用者認証、メッセージ認
証は共に、基本的には第三者による不正行為を防止する
ことが最大の目的であり、前記利用者認証が正常に終了
したことで保証されるのは、あくまで証明者が正当な秘
密情報の所有者であること、すなわち第三者が不正に利
用していないということだけであり、また前記メッセー
ジ認証において照合検査に成功したことで保証されるの
は、第三者によるメッセージの改竄などの不正行為が行
われていないということだけである。したがって、上記
の2つの認証方式は共に、基本的には第三者の不正行為
に対してのみ有効であり、証明者もしくは検証者による
不正行為に対してはまるで効力を持たないのが欠点であ
る。
However, both the user authentication and the message authentication described above are basically intended to prevent unauthorized actions by a third party, and are guaranteed by the successful completion of the user authentication. Only that the prover is the owner of the legitimate confidential information, that is, that the third party has not used it improperly, and is guaranteed by the successful verification of the message authentication. All that is required is that no fraudulent acts, such as falsification of messages, have been performed by third parties. Therefore, both of the above two authentication methods are basically effective only against third-party fraudulent activities, and have the disadvantage that they have no effect on fraudulent activities by certifiers or verifiers. is there.

【0012】次に、図1(c)はディジタル署名の一例
であるRSA署名法(R.L.Rivest,A.Shamir,L.Adlema
n,“A method for obtaining digital signatures and
public-key cryptosystem ”,Comm. ACM, vol.21, N
o.2,1978.2)の概念図である。
Next, FIG. 1C shows an RSA signature method (RL Rivest, A. Shamir, L. Adlema) which is an example of a digital signature.
n, “A method for obtaining digital signatures and
public-key cryptosystem ”, Comm. ACM, vol.21, N
o.2, 1978.2).

【0013】RSA署名法によれば、eとN(=pq:
p,qは互いに異なる大きな素数)を署名者の公開情
報、d[e×d(mod(p-1)(q-1))=1]とp,qを署名
者の秘密情報として以下のように認証される。
According to the RSA signature method, e and N (= pq:
p and q are large prime numbers different from each other) and the signer's public information, d [e × d (mod (p-1) (q-1)) = 1] and p and q are the signer's secret information as follows. Will be authenticated.

【0014】まず署名者は、メッセージMを確かに署名
者が作成したものであることを保証するために署名文C
=Md (mod N)を計算し、Cを検証者に送信する。前
記Cを受信した検証者はM=Ce (mod N)を計算し、
得られたメッセージMの正当性を判断する。この時、得
られたメッセージMが正当であると判断されれば、受信
したメッセージMが署名者により間違いなく作成された
ものであることが保証される。
First, the signer makes a signature statement C to ensure that the message M is indeed created by the signer.
= M d (mod N) and send C to the verifier. The verifier receiving the C calculates M = C e (mod N),
The validity of the obtained message M is determined. At this time, if the obtained message M is determined to be valid, it is assured that the received message M is definitely created by the signer.

【0015】これは秘密情報dを知らなければ任意のメ
ッセージに対する正しい署名文を作成できないためであ
り、しかも秘密情報dは各個人固有のもので一人ずつ異
なるため、署名者自体も特定されることになるからであ
る。したがって、第三者や検証者がメッセージ内容を改
竄したり、あるいは署名者がメッセージ内容を否定した
りするなどの不正行為は困難であると考えられている。
This is because a correct signature sentence for an arbitrary message cannot be created without knowing the secret information d. Further, since the secret information d is unique to each individual and differs from one to another, the signer itself is also specified. Because it becomes. Therefore, it is considered that it is difficult for a third party or a verifier to falsify the message content or for a signer to deny the message content, for example.

【0016】しかし、これはあくまでメッセージのやり
取りが正常に終了した時点以後から効力が生じるもので
あり、それ以前、すなわち署名者からみて送信した署名
文Cが確実に検証者に届いているかどうかの保証は何も
ないため、検証者に署名文Cを受信していないと主張さ
れてしまえば、署名者にはその主張に対抗する手段がな
いのが欠点である。
However, this is effective only after the message exchange ends normally, and before that, that is, whether or not the sentence C transmitted from the signer has surely reached the verifier. Since there is no guarantee, if the verifier claims that the signature C has not been received, the disadvantage is that the signer has no means to counter the claim.

【0017】[0017]

【発明が解決しようとする課題】利用者が要求した情報
を情報提供者が提供する場合には以下の4条件、すなわ
ち、(1)正当な利用者であることを保証する利用者認
証、(2)情報提供者は利用者が要求した情報を確実に
提供し、かつ利用者が提供された情報を受信したことを
保証する配送証明、(3)提供した情報が正当なもので
あり、改竄などの不正行為を防止できる内容照明、
(4)後日、必要に応じて情報提供者が調停者に通信履
歴などの証拠を提示することにより(1)〜(3)のす
べてについて証明できること、を満たすことが必要であ
る。
When an information provider provides information requested by a user, the following four conditions are required: (1) user authentication for assuring that the user is a valid user; 2) The information provider surely provides the information requested by the user and guarantees that the user has received the provided information. (3) The provided information is legitimate and is falsified. Content lighting that can prevent misconduct such as
(4) It is necessary that the information provider can prove all of (1) to (3) by presenting evidence such as a communication history to the arbitrator as needed.

【0018】しかし、従来方式で説明したようにFiat S
hamir 法では(1)のみ、桜井(特開平5−12321
号)の方式では(1)と(4)の一部(利用者認証の証
拠のみ)、メッセージ証拠では(3)の一部のみ(情報
が正当である保証のみ)、RSA署名法では(3)のみ
が満たされるだけであるため、ある種の不正行為、特に
(2)のように利用者が提供された情報を受信している
にもかかわらず、受信していないというような不当な主
張に対して、情報提供者は全く対抗できないという欠点
がある。
However, as described in the conventional method, Fiat S
In the hamir method, only (1) is used for Sakurai (Japanese Patent Laid-Open No. Hei 5-12321).
(1) and (4) (only for user authentication), message proof (3) only (for assurance that information is valid), and RSA signature method (3). ) Is only satisfied, so some unfair claims, especially if the user has received but not received the provided information as in (2) On the other hand, there is a disadvantage that the information provider cannot compete at all.

【0019】本発明の目的は、情報提供者から利用者
(カード、利用者端末等を含む)に対して必要なメッセ
ージを送信する場合に、従来方式では満たせなかった上
記の4条件すべてを満たすことができるゼロ知識証明プ
ロトコルを利用した情報配送方法およびシステムを提供
することである。
An object of the present invention is to satisfy all of the above four conditions which cannot be satisfied by the conventional method when a necessary message is transmitted from an information provider to a user (including a card, a user terminal, etc.). It is an object of the present invention to provide an information delivery method and system using a zero knowledge proof protocol.

【0020】[0020]

【課題を解決するための手段】本発明の一側面による
と、少なくとも情報提供者と利用者とを含むシステムに
おいて、利用者が情報提供者に情報の配送を要求した時
に、情報提供者が、ゼロ知識証明プロトコルにしたがっ
て利用者の利用者認証を行なう過程と、情報提供者が利
用者に配送する情報Mをゼロ知識証明プロトコル中にお
ける検査文Eに含めて送信し、利用者に情報を1ビット
または複数ビット単位で配送する過程と、情報提供者
が、ゼロ知識証明プロトコルの通信履歴データHを記録
管理する過程とを同時に行なうことを特徴とする情報配
送方法が提供される。
According to one aspect of the present invention, in a system including at least an information provider and a user, when the user requests the information provider to deliver information, the information provider A process of performing user authentication of the user according to the zero knowledge proof protocol, transmitting the information M delivered by the information provider to the user in the check sentence E in the zero knowledge proof protocol, and transmitting the information to the user by 1 An information delivery method is provided, wherein a step of delivering in units of bits or a plurality of bits and a step of recording and managing the communication history data H of the zero knowledge proof protocol by an information provider are performed simultaneously.

【0021】また、本発明の他の側面によると、少なく
とも利用者端末と情報提供者端末とを含むシステムであ
って、利用者端末は、情報提供者端末との間の通信を制
御する利用者通信制御手段と、利用者が秘密に保持すべ
き秘密情報を蓄積しておく利用者秘密情報蓄積手段と、
乱数を発生する乱数発生手段と、前記利用者通信制御手
段を介して通信される初期応答文と応答文を前記秘密情
報と乱数に基づいて生成する利用者演算手段とを有し、
情報提供者端末は、利用者端末との間の通信を制御する
情報提供者通信制御手段と、前記情報提供者通信制御手
段を介して利用者に提供する情報を蓄積しておく情報デ
ータベースと、前記情報提供者通信制御手段を介して利
用者の認証を行なう検証手段とを有することを特徴とす
る情報配送システムが提供される。
According to another aspect of the present invention, there is provided a system including at least a user terminal and an information provider terminal, wherein the user terminal controls communication with the information provider terminal. Communication control means, and user secret information storage means for storing secret information to be kept secret by the user;
Random number generating means for generating a random number, and a user computing means for generating an initial response sentence and a response sentence communicated via the user communication control means based on the secret information and the random number,
An information provider terminal, an information provider communication control means for controlling communication with the user terminal, an information database for storing information to be provided to the user via the information provider communication control means, There is provided an information delivery system comprising verification means for performing user authentication via the information provider communication control means.

【0022】また、本発明の他の側面によると、少なく
とも利用者端末と情報提供者端末とを含むシステムであ
って、利用者端末は、情報提供者端末との間の通信を制
御する利用者通信制御手段と、利用者が秘密に保持すべ
き秘密情報を蓄積しておく利用者秘密情報蓄積手段と、
前記利用者通信制御手段を介して情報提供者端末との間
で暗号通信を行う利用者共通鍵暗号手段と、乱数を発生
する乱数発生手段と、前記利用者通信制御手段を介して
送信される初期応答文と応答文と秘密鍵を生成する利用
者演算手段と、前記利用者通信制御手段を介して情報提
供者から配送された情報を蓄積する情報蓄積手段とを有
し、情報提供者端末は、利用者端末との間の通信を制御
する情報提供者通信制御手段と、前記情報提供者通信制
御手段を介して利用者に提供する情報を蓄積しておく情
報データベースと、秘密鍵と検査文を生成する情報提供
者演算手段と、前記情報提供者通信制御手段を介して利
用者端末との間で暗号通信を行なう情報提供者共通鍵暗
号手段と、前記情報提供者通信制御手段を介して利用者
の認証を行なう検証手段とを有することを特徴とする情
報配送システムが提供される。
According to another aspect of the present invention, there is provided a system including at least a user terminal and an information provider terminal, wherein the user terminal controls communication with the information provider terminal. Communication control means, and user secret information storage means for storing secret information to be kept secret by the user;
User common key encryption means for performing cryptographic communication with the information provider terminal via the user communication control means, random number generation means for generating a random number, and transmitted via the user communication control means An information provider terminal comprising: a user operation unit for generating an initial response sentence, a response sentence, and a secret key; and an information storage unit for storing information delivered from an information provider via the user communication control unit. Comprises: an information provider communication control means for controlling communication with the user terminal; an information database for storing information to be provided to the user via the information provider communication control means; Information provider computing means for generating a sentence, information provider common key encryption means for performing encrypted communication with the user terminal via the information provider communication control means, and information provider communication control means Authentication to authenticate users Information delivery system characterized by a means is provided.

【0023】[0023]

【作用】本発明によれば、第一に情報提供者による利用
者の認証方法としてゼロ知識証明プロトコルを利用して
いるため、ゼロ知識証明プロトコルの目的や従来からの
利用方法からいっても、利用者が正当なカードを利用し
ていなければ情報提供者の検証をクリアし続けることは
ほとんど不可能であり、認証段階でほぼ完全に拒絶され
る。
According to the present invention, first, the zero-knowledge proof protocol is used as a method of authenticating a user by an information provider. If the user does not use a valid card, it is almost impossible to continue to pass the information provider's verification and is almost completely rejected at the authentication stage.

【0024】第二に情報提供者から配送情報を利用者へ
配送する部分では、配送情報をゼロ知識証明プロトコル
の検査文に含めて配送を行なっているため、ゼロ知識証
明プロトコルが正常に終了すれば、カード上において間
違いなく検査文、すなわち配送情報を受信・記録し、適
正な処理をしていたことになる。また、途中で情報提供
者の検証に失敗した場合にはそれ以降の認証は打ち切ら
れ、残りの検査文は配送されないため、利用者が知るこ
とのできる配送情報は検証に失敗する以前のものに限ら
れる。
Second, in the part where the delivery information is delivered from the information provider to the user, the delivery information is included in the check sentence of the zero knowledge proof protocol and the delivery is performed, so that the zero knowledge proof protocol ends normally. If this is the case, the inspection statement, that is, the delivery information, is definitely received and recorded on the card, and appropriate processing is performed. Also, if the verification of the information provider fails in the middle, the subsequent authentication will be terminated and the remaining inspection statements will not be delivered, so the delivery information that the user can know will be the one before the failure. Limited.

【0025】第三に通信履歴を記録管理することにより
情報提供者と利用者との間で正常な認証が行なわれたこ
とを情報提供者は確認できるので、第二の効果と合わせ
て利用者は配送情報を受信し、かつカードの蓄積手段に
配送情報が記録されているはずである。このことは、情
報提供者から開示される通信履歴と利用者から提出され
るカードに記録された配送情報とを照合することによっ
て、利用者が情報暗号化用秘密鍵を生成できる状態であ
るかどうかを判定できる。なお、この場合、利用者から
カードの提出がない場合には、情報暗号化用秘密鍵は生
成できる状態にあると判定する。
Third, by recording and managing the communication history, the information provider can confirm that normal authentication has been performed between the information provider and the user. Has received the delivery information, and the delivery information must be recorded in the storage means of the card. This means that the user can generate a secret key for information encryption by comparing the communication history disclosed by the information provider with the delivery information recorded on the card submitted by the user. Can be determined. In this case, if the user does not submit the card, it is determined that the information encryption private key can be generated.

【0026】したがって、不正な利用者がシステムを利
用したり、あるいは配送情報のすべてを不正に搾取した
りすることはできない。また、正常に認証が終了してい
るにも関わらず利用者が配送情報を受信していないなど
という不当な主張に対して、情報提供者は通信履歴を開
示するとともに、利用者にカードを提出するよう要求す
ることにより対抗できる。
Therefore, an unauthorized user cannot use the system or exploit all of the delivery information. In addition, the information provider discloses the communication history and submits a card to the user in response to an unjust claim that the user has not received the delivery information even though the authentication has been completed normally. Can be challenged by asking them to do so.

【0027】[0027]

【実施例】以下、本発明の実施例を図面を用いて説明す
る。
Embodiments of the present invention will be described below with reference to the drawings.

【0028】図2は、本発明の第1実施例における情報
配送システムの構成例を示す図である。図2において、
1は利用者が所有するカードであり、11はカード固有
の秘密情報を蓄積する秘密情報蓄積手段、12はゼロ知
識証明プロトコルで利用する乱数発生手段、13はプロ
トコルを実行するうえで必要な演算を行う演算手段、1
4は情報提供者からの情報を記録する蓄積手段である。
なお、これらの手段はいずれもIC等の耐タンパー装置
上に組み込まれており、物理的に安全である。
FIG. 2 is a diagram showing a configuration example of the information delivery system according to the first embodiment of the present invention. In FIG.
1 is a card owned by the user, 11 is secret information storage means for storing secret information unique to the card, 12 is random number generation means used in the zero knowledge proof protocol, and 13 is an operation required for executing the protocol. Computing means for performing
Reference numeral 4 denotes storage means for recording information from an information provider.
All of these means are incorporated on a tamper-resistant device such as an IC and are physically safe.

【0029】2は利用者が使用する固定型の利用者端末
であり、21はカード挿入手段、22は情報提供者から
の情報を蓄積する蓄積手段、23は情報を利用する利用
手段、24は情報提供者との間で通信を行なうための通
信制御手段である。
Reference numeral 2 denotes a fixed user terminal used by the user, 21 is a card insertion unit, 22 is a storage unit for storing information from an information provider, 23 is a use unit that uses information, and 24 is a use unit that uses information. This is communication control means for communicating with an information provider.

【0030】3は利用者に配送情報の配送する情報提供
者端末であり、31は配送情報を蓄積する情報蓄積手
段、32は配送情報を分割して検査文の組を作成する情
報分割手段、33はゼロ知識証明プロトコルの検証を行
なう検証手段、34は通信履歴や認証記録を記録管理し
ておく履歴管理手段、35は利用者端末との間で通信を
行うための通信制御手段である。
Reference numeral 3 denotes an information provider terminal for delivering the delivery information to the user, 31 is an information storage means for storing the delivery information, 32 is an information dividing means for dividing the delivery information and creating a set of check statements, Reference numeral 33 denotes verification means for verifying the zero knowledge proof protocol, 34 denotes history management means for recording and managing a communication history and an authentication record, and 35 denotes communication control means for performing communication with a user terminal.

【0031】次に、図2のシステムにおけるゼロ知識証
明プロトコルを利用した情報配送方法について、図3お
よび図4に示す処理フローチャートと配送情報の例を基
に説明する。なお、ここではゼロ知識証明プロトコルと
してFiat Shamir 法を用いることとし、準備段階とし
て、信頼できるセンタが各利用者ごとにP,Q,N,
I,sを設定し、このうちNとIを利用者の公開情報と
して公開し、sを利用者の秘密情報としてカード1の秘
密情報蓄積手段11に蓄積して利用者に配布する。ここ
で、PとQは互いに異なる大きな素数であり、N=PQ
である。また、I=s2 (mod N)が成立している。
Next, an information delivery method using the zero-knowledge proof protocol in the system of FIG. 2 will be described based on the processing flowcharts shown in FIGS. 3 and 4 and examples of delivery information. Here, the Fiat Shamir method is used as the zero-knowledge proof protocol, and as a preparatory stage, a reliable center establishes P, Q, N,
I and s are set, N and I are made public as the user's public information, and s is stored in the secret information storage means 11 of the card 1 as the user's secret information and distributed to the user. Here, P and Q are large different prime numbers, and N = PQ
It is. Also, I = s 2 (mod N) holds.

【0032】情報暗号化用秘密鍵Wで暗号化されたメッ
セージW(m)をすでに利用者端末2の蓄積手段22に
蓄積している利用者に対して、前記情報暗号化用秘密鍵
Wを配送情報として配送する場合の例を説明する。
For a user who has already stored the message W (m) encrypted with the information encryption secret key W in the storage means 22 of the user terminal 2, the information encryption secret key W is sent to the user. An example in the case of delivery as delivery information will be described.

【0033】まず、利用者は、自分のカード1をカード
挿入手段21に挿入後、情報提供者に情報暗号化用秘密
鍵Wの配送を依頼する。(S1)。
First, the user inserts his / her card 1 into the card insertion means 21, and then requests the information provider to deliver the information encryption private key W. (S1).

【0034】情報提供者は、情報蓄積手段31に蓄積さ
れている情報暗号化用秘密鍵Wを図4に示す配送情報5
0のように情報分割手段32においてgビットごとに分
割し、gビットで構成される検査文ejiの組を作成する
(S2)。ここで、情報暗号化用秘密鍵Wのビット数を
w とすると、検査文の組はLw /g個作成されること
になり、iは1からgまで、jは1からLw /gまでの
値をとる。
The information provider stores the information encryption secret key W stored in the information storage means 31 in the delivery information 5 shown in FIG.
The information dividing means 32 divides the data by g bits as in 0, and creates a check sentence ji set composed of g bits (S2). Here, when the number of bits of information for encryption secret key W and L w, set of inspection statement would be L w / g pieces created, i is from 1 to g, j is from 1 L w / Take values up to g.

【0035】次に、カード1は、乱数発生手段12にお
いてg個の乱数Ri を生成し(S3)、それぞれについ
て演算手段13においてXi =Ri 2 (mod N)を計算
し、Xi を通信制御手段24を経由して情報提供者に送
信する(S4)。
Next, in the card 1, the random number generating means 12 generates g random numbers R i (S3), and the calculating means 13 calculates X i = R i 2 (mod N) for each of them, thereby obtaining X i. Is transmitted to the information provider via the communication control means 24 (S4).

【0036】通信制御手段35を経由してXi を受信し
た情報提供者は、j組目の検査文ejiの組を通信制御手
段35を経由してカード1に送信する(S5)。
The information provider that has received Xi via the communication control means 35 transmits the j-th set of check statements eji to the card 1 via the communication control means 35 (S5).

【0037】カード1では、通信制御手段24を経由し
て受信した検査文ejiの組のそれぞれのビットiについ
て、演算手段13において0ならYi =Ri を、1なら
秘密情報蓄積手段11に蓄積されている秘密情報sを用
いてYi =sRi (mod N)を計算し、蓄積手段14に
検査文ejiの組を記録した後、通信制御手段24を経由
してYi を情報提供者に送信する(S6)。
In the card 1, for each bit i of the set of check statements eji received via the communication control means 24, the arithmetic means 13 accumulates Yi = Ri if 0 and accumulates it in the secret information accumulating means 11 if 1. Using the secret information s, Yi = sRi (mod N) is calculated, a set of check statements eji is recorded in the storage means 14, and then Yi is transmitted to the information provider via the communication control means 24 ( S6).

【0038】情報提供者は、通信制御手段35を経由し
て受信した前記Xi と前記Yi 、および前記検査文eji
の組から、検証手段33において検査ビットが0ならば
検証式Yi 2 =Xi (mod N)を、1ならば検証式Yi
2 =Xi I(mod N)を満たすかどうかをそれぞれのビ
ットiについて検証する(S7)。この検証に失敗した
場合には、カード1は不正であるとみなして、それ以降
の利用を中止(S8)し、成功した場合には前記Xi と
前記Yi 、および前記検査文ejiを通信履歴として履歴
管理手段34に記録管理する(S9)。そして、上記S
3以降のステップを情報分割手段32で作成したLw /
g個の検査文ejiの組すべてを送信し終わるまで繰り返
し(S10)、最終的に情報提供者は、情報分割手段3
2で作成したLw /g個の検査文ejiの組すべての送信
が終了した時点をもって情報暗号化用秘密鍵Wの配送が
終了したとみなす(S11)。
The information provider receives the Xi and Yi received via the communication control means 35 and the check sentence eji
From the set, the verification unit 33 verifies the verification formula Yi 2 = Xi (mod N) if the check bit is 0, and verifies the verification formula Yi if the check bit is 1.
It is verified whether each bit i satisfies 2 = Xi I (mod N) (S7). If the verification fails, the card 1 is regarded as invalid and the subsequent use is stopped (S8). If the verification is successful, the Xi, the Yi, and the check sentence ji are used as the communication history. Records are managed in the history management means 34 (S9). And the above S
Steps 3 and after are performed using Lw /
This processing is repeated until all the sets of g check statements eji have been transmitted (S10).
When the transmission of all the sets of Lw / g check statements eji created in step 2 is completed, it is considered that the delivery of the information encryption private key W has been completed (S11).

【0039】カード1では蓄積手段14に記録されたL
w /g個の検査文ejiの組すべてを結合し、情報暗号化
用秘密鍵Wを複製した(S12)後、利用者端末2の利
用手段23に転送する(S13)。利用手段23では転
送されてきた情報暗号化用秘密鍵Wを用いて蓄積手段2
2に蓄積されている暗号化されたメッセージW(m)を
復号し、メッセージmを得ることができる(S14)。
In the card 1, the L recorded in the storage means 14
All the w / g sets of check statements ji are combined, the information encryption secret key W is copied (S12), and then transferred to the use means 23 of the user terminal 2 (S13). The use unit 23 uses the transferred information encryption private key W to store the
2 can be decrypted to obtain the message m (S14).

【0040】以上の説明は、利用者に対して確実に必要
な情報を配送し、かつ利用者のカードに記録されたこと
を情報提供者が確認できるものである。例えば、メッセ
ージmを著作物などの有料情報とした時、情報暗号化用
秘密鍵Wで暗号化したW(m)をあらかじめ利用者に送
信し、またはCD−ROM等の媒体に記録して配布して
おき、その後情報提供者が前記情報暗号化用秘密鍵Wを
上記の配送方法によって送信することにより、メッセー
ジmを間違いなく購入した利用者に対して著作権使用料
などの情報料を徴収するときに、情報提供者は履歴管理
手段34に記録管理された通信履歴を利用できる。ま
た、電子メールにおいて郵便内容mを情報暗号化用秘密
鍵Wで暗号化し、あらかじめ配達先にW(m)を送信し
ておき、後日電子メール管理者から配達先に対して前記
情報暗号化用秘密鍵Wを上記の配送方法により送信する
ことにより、電子メール管理者は電子メールの配達証明
に利用できるなど、さまざまな利用が可能である。
In the above description, the necessary information is reliably delivered to the user, and the information provider can confirm that the information has been recorded on the user's card. For example, when the message m is paid information such as a copyrighted work, W (m) encrypted with the information encryption secret key W is transmitted to the user in advance, or is recorded on a medium such as a CD-ROM and distributed. After that, the information provider transmits the information encryption secret key W by the above-mentioned delivery method, and collects an information fee such as a copyright royalty fee from a user who has definitely purchased the message m. In this case, the information provider can use the communication history recorded and managed by the history management unit 34. Also, the mail content m is encrypted with the secret key W for information encryption in the e-mail, and W (m) is transmitted to the delivery destination in advance, and the e-mail administrator later sends the information encryption key to the delivery destination. By transmitting the secret key W by the above-described delivery method, the e-mail administrator can use the e-mail for various purposes, such as using it for e-mail delivery certification.

【0041】以上説明したとおり、この第1実施例で
は、第一に情報提供者による利用者の認証方法としてゼ
ロ知識証明プロトコルを利用しているため、ゼロ知識証
明プロトコルの目的や従来からの利用方法からいって
も、利用者が正当なカードを利用していなければ情報提
供者の検証をクリアし続けることはほとんど不可能であ
り、認証段階でほぼ完全に拒絶される。
As described above, in the first embodiment, first, the zero-knowledge proof protocol is used as a method of authenticating a user by an information provider. According to the method, if the user does not use a valid card, it is almost impossible to continue to pass the verification of the information provider, and is almost completely rejected in the authentication stage.

【0042】第二に情報提供者から配送情報を利用者へ
配送する部分では、配送情報をゼロ知識証明プロトコル
の検査文に含めて配送を行なっているため、ゼロ知識証
明プロトコルが正常に終了すれば、カード上において間
違いなく検査文、すなわち配送情報を受信・記録し、適
正な処理をしていたことになる。また、途中で情報提供
者の検証に失敗した場合にはそれ以降の認証は打ち切ら
れ、残りの検査文は配送されないため、利用者が知るこ
とのできる配送情報は検証に失敗する以前のものに限ら
れる。
Second, in the part where the delivery information is delivered from the information provider to the user, the delivery information is included in the check statement of the zero knowledge proof protocol and the delivery is performed, so that the zero knowledge proof protocol ends normally. If this is the case, the inspection statement, that is, the delivery information, is definitely received and recorded on the card, and appropriate processing is performed. Also, if the verification of the information provider fails in the middle, the subsequent authentication will be terminated and the remaining inspection statements will not be delivered, so the delivery information that the user can know will be the one before the failure. Limited.

【0043】第三に通信履歴(前記Xi 、前記Yi 、前
記検査文eji)を記録管理することにより情報提供者と
利用者との間で正常な認証が行なわれたことを情報提供
者は確認できるので、第二の効果と合わせて利用者は配
送情報を受信し、かつカードの蓄積手段14に配送情報
が記録されているはずである。このことは、情報提供者
から開示される通信履歴と利用者から提出されるカード
に記録された配送情報とを照合することによって、利用
者が情報暗号化用秘密鍵Wを生成できる状態であるかど
うかを判定できる。なお、この場合、利用者からカード
の提出がない場合には、情報暗号化用秘密鍵Wは生成で
きる状態にあると判定する。
[0043] Third communication history (the X i, wherein Y i, the test statement e ji) providing information that a successful authentication has been performed between the information providers and users by recording managing Since the user can confirm the delivery information, the user should receive the delivery information together with the second effect, and the delivery information should be recorded in the storage means 14 of the card. This means that the user can generate the information encryption private key W by comparing the communication history disclosed by the information provider with the delivery information recorded on the card submitted by the user. Can be determined. In this case, if the user does not submit the card, it is determined that the information encryption private key W can be generated.

【0044】したがって、不正な利用者がシステムを利
用したり、あるいは配送情報のすべてを不正に搾取した
りすることはできない。また、正常に認証が終了してい
るにも関わらず利用者が配送情報を受信していないなど
という不当な主張に対して、情報提供者は通信履歴を開
示するとともに、利用者にカードを提出するよう要求す
ることにより対抗できる。
Therefore, an unauthorized user cannot use the system or exploit all the delivery information illegally. In addition, the information provider discloses the communication history and submits a card to the user in response to an unjust claim that the user has not received the delivery information even though the authentication has been completed normally. Can be challenged by asking them to do so.

【0045】なお当然のことであるが、上記の実施例に
おいても、配送情報すべてを分割して検査文ejiを生成
する必要性はなく、例えば、配送情報の始めからgnビ
ット目までを検査文eji(j=1,…,n)とし、n組
の検査文ejiによるゼロ知識証明プロトコルが終了した
後、配送情報の残りの部分を一括して送信するような情
報の配送方法も考えられる。この場合、nの値を様々に
変えることにより、ゼロ知識証明におけるセキュリティ
レベルを変えられるうえ、通信量を削減できるといった
特徴がある。例えばnをLw /gの半分とすれば、通信
量もほぼ半分となる。
As a matter of course, in the above embodiment, there is no need to divide all the delivery information to generate the check sentence ji. A statement e ji (j = 1,..., N) and an information delivery method in which the remaining part of the delivery information is transmitted collectively after the zero-knowledge proof protocol based on n sets of check statements e ji is completed. Conceivable. In this case, by changing the value of n variously, the security level in the zero knowledge proof can be changed and the amount of communication can be reduced. For example, if n is set to half of L w / g, the communication amount is also almost half.

【0046】また、検査文ejiの生成方法についても、
単純に配送情報を分割して生成するだけでなく、ダミー
情報を付加したり、あるいは暗号化を行ったりして生成
することも可能である。この場合、カード内にあらかじ
め設定されている秘密情報、もしくは蓄積された検査文
jiから自律的にダミー情報を除去、あるいは復号を行
ったりして元の配送情報に復元する機能を持たせること
により、ゼロ知識証明を正常に終了しないかぎり、前記
配送情報を取り出せないようにできる。したがって、第
三者もしくは利用者が検査文ejiを不正に搾取したり、
大部分の検査文ejiを受信した後、故意に認証を失敗さ
せ、検査文ejiのうち配送されてこない残りの部分を予
測したりする等の不正行為を行ない、情報提供者が配送
に失敗したと判断あるいは気がつかないうちに、第三者
もしくは利用者が配送情報を獲得してしまうことがない
ようにできる。
Also, regarding the method of generating the check sentence e ji ,
In addition to simply generating the distribution information by dividing it, the distribution information can be generated by adding dummy information or performing encryption. In this case, a function to restore the original delivery information by autonomously removing or decrypting the dummy information from the secret information set in advance in the card or the stored inspection statement ji is provided. As a result, the delivery information cannot be taken out unless the zero knowledge proof is normally terminated. Therefore, a third party or a user illegally exploits the inspection sentence e ji ,
After receiving most of the check statements e ji , deliberately failing the authentication and performing fraudulent acts such as predicting the remaining parts of the check statement e ji that have not been delivered, and the information provider has decided to deliver It is possible to prevent a third party or user from acquiring the delivery information before the failure is determined or noticed.

【0047】なお、上述の第1実施例による情報配送方
法およびシステムでは、ゼロ知識証明プロトコルに必要
な情報はすべて耐タンパー装置上に組み込まれており、
実際の情報配送においても耐タンパー装置上に組み込ま
れた手段のみを用いて実行されるため、前記情報が外部
に漏れることはなく、たとえカード所有者であっても前
記情報を知ることができない。したがって、カード自体
を偽造したり、あるいはカード上の記録情報を書き変え
たりする等の不正行為を防止できる。
In the information delivery method and system according to the first embodiment, all information necessary for the zero-knowledge proof protocol is incorporated in the tamper-resistant device.
Since the actual information delivery is also performed using only the means incorporated in the tamper-resistant device, the information does not leak to the outside, and even the card owner cannot know the information. Therefore, it is possible to prevent fraudulent acts such as falsifying the card itself or rewriting recorded information on the card.

【0048】次に本発明の第2実施例について説明す
る。
Next, a second embodiment of the present invention will be described.

【0049】図5は本発明の第2実施例における情報配
送システムの構成を示すブロック図であり、10は情報
提供者端末20から情報の提供を受ける利用者の端末
(利用者端末)を示し、100は通信回線30を制御す
る通信制御手段、101は利用者の秘密情報を蓄積して
おく利用者秘密情報蓄積手段、102は利用者が必要な
情報を一時的に蓄積する一時メモリ、103は利用者が
乱数を生成するための乱数発生手段、104は利用者が
必要な演算を行う機能を有する演算手段、105は共通
鍵暗号方法(例えば、DES,FEAL)による暗号通
信を行うための共通鍵暗号手段、106は利用者が受信
した情報を出力もしくは利用する情報出力/利用手段で
ある。
FIG. 5 is a block diagram showing the configuration of an information delivery system according to a second embodiment of the present invention. Reference numeral 10 denotes a terminal (user terminal) of a user who receives information from the information provider terminal 20. , 100 are communication control means for controlling the communication line 30, 101 is user secret information storage means for storing user secret information, 102 is a temporary memory for temporarily storing information required by the user, 103 Is a random number generating means for the user to generate a random number, 104 is an arithmetic means having a function of performing a necessary operation by the user, and 105 is an encryption means for performing a cryptographic communication by a common key encryption method (for example, DES, FEAL). A common key encryption unit 106 is an information output / use unit that outputs or uses information received by the user.

【0050】また、20は情報を提供する情報提供者の
端末(情報提供者端末)を示し、200は通信回線30
を制御する通信制御手段、201は情報提供者の秘密情
報を蓄積しておく情報提供者秘密情報蓄積手段、202
は提供する情報が蓄積してある情報データベース、20
3は情報提供者が必要な情報を一時的に蓄積する一時メ
モリ、204は情報提供者が必要な演算を行う機能を有
する演算手段、205は共通鍵暗号方法による暗号通信
を行うための共通鍵暗号手段、206はFiat Shamir 法
に基づいて通信系列の正当性を検証する検証手段であ
る。30は利用者と情報提供者とを通信で接続する通信
回線を表す。
Reference numeral 20 denotes an information provider terminal (information provider terminal) for providing information, and reference numeral 200 denotes a communication line 30.
Communication control means 201 for controlling the information provider secret information storage means for storing secret information of the information provider 202
Is an information database storing information to be provided, 20
3 is a temporary memory for temporarily storing information required by the information provider, 204 is an arithmetic unit having a function of performing an operation required by the information provider, and 205 is a common key for performing cryptographic communication using a common key encryption method. The encryption means 206 is a verification means for verifying the validity of the communication sequence based on the Fiat Shamir method. Reference numeral 30 denotes a communication line for connecting a user and an information provider by communication.

【0051】以下、図6のフローチャートにしたがって
動作手順を説明する。
The operation procedure will be described below with reference to the flowchart of FIG.

【0052】まず基準段階として、信頼できるセンタが
各利用者ごとにp1,q1,I,sを設定し、このうち
N1とIを利用者の公開情報として公開し、sを利用者
の秘密情報として利用者秘密情報蓄積手段101に蓄積
して利用者に秘密裏に配布する。ここで、p1とq1は
それぞれ互いに異なる大きな素数であり、N1=p1×
q1である。また、I=s2 (mod N1)が成立してい
る。
First, as a reference stage, a reliable center sets p1, q1, I, and s for each user, among which N1 and I are disclosed as public information of the user, and s is secret information of the user. Is stored in the user secret information storage means 101 and distributed secretly to the user. Here, p1 and q1 are large prime numbers different from each other, and N1 = p1 ×
q1. Also, I = s 2 (mod N1) holds.

【0053】さらに、各情報提供者と各利用者の間には
システム秘密鍵SKを設定し、利用者秘密情報蓄積手段
101および情報提供者秘密情報蓄積手段201に登録
しておく。このシステム秘密鍵SKは、各情報提供者と
各利用者の間ごとに異なる方が好ましいことはいうまで
もないが、システム設計上、システム全体の共通鍵とし
て1種類あるいは複数種類のシステム秘密鍵を複数の利
用者で利用しても構わない。
Further, a system secret key SK is set between each information provider and each user, and registered in the user secret information storage means 101 and the information provider secret information storage means 201. It is needless to say that the system secret key SK is preferably different for each information provider and each user. However, in terms of system design, one or more types of system secret keys are used as a common key for the entire system. May be used by multiple users.

【0054】(1)配送確認ステップ 利用者端末10は、乱数発生手段103によりg個の乱
数Ri (i=1,2,…,g)を生成し、一時メモリ1
02に蓄積し(S101)、その後、それぞれの乱数に
ついて演算手段104により初期応答文Xi =R
i 2 (mod N1)(i=1,2,…,g)を計算し(S
102)、通信回線30を介して情報提供者端末20に
送信する(S103)。
(1) Delivery Confirmation Step The user terminal 10 generates g random numbers R i (i = 1, 2,..., G) by the random number generation means 103 and
02 (S101), and then, for each random number, the initial response sentence X i = R
i 2 (mod N1) (i = 1, 2,..., g) is calculated (S
102), and transmits to the information provider terminal 20 via the communication line 30 (S103).

【0055】情報提供者端末20は、受信した初期応答
文Xi (i=1,2,…,g)を一時メモリ203に蓄
積し(S104)、その後、利用者端末10に配送する
情報Mを情報データベース202より取り出して(S1
05)、情報提供者秘密情報蓄積手段201に蓄積され
たシステム秘密鍵SKを秘密鍵として、共通鍵暗号手段
205により暗号化した暗号文C=ESK(M)を通信回
線30を介して利用者端末10に送信する(S10
6)。
The information provider terminal 20 accumulates the received initial response sentence X i (i = 1, 2,..., G) in the temporary memory 203 (S104), and thereafter transmits the information M to be delivered to the user terminal 10. From the information database 202 (S1
05), using the system secret key SK stored in the information provider secret information storage unit 201 as a secret key and using the ciphertext C = E SK (M) encrypted by the common key encryption unit 205 via the communication line 30 To the user terminal 10 (S10
6).

【0056】利用者端末10は、受信した暗号文Cを一
時メモリ102に蓄積し(S107)、その後、演算手
段104において暗号文Cを用いてgビットの情報圧縮
関数であるハッシュ関数hにより検査文e=(e1,e
2,…,eg)=h(C)を生成する(S108)。生
成した検査文eのそれぞれのビットiについて、一時メ
モリ102に蓄積された乱数Ri と利用者秘密情報蓄積
手段101に蓄積された利用者の秘密情報sとからei
=0ならばYi =Ri を、ei =1ならばYi=sRi
(mod N1)を計算し(S109)、応答文Yi (i=
1,2,…,g)として情報提供者端末20に通信回線
30を介して送信する(S110)。
The user terminal 10 stores the received cipher text C in the temporary memory 102 (S 107), and then checks the cipher text C using the hash function h, which is a g-bit information compression function, using the cipher text C in the arithmetic means 104. The sentence e = (e1, e
2,..., Eg) = h (C) (S108). For each bit i of the generated check sentence e, ei is calculated from the random number Ri stored in the temporary memory 102 and the user secret information s stored in the user secret information storage means 101.
= 0, Yi = Ri, ei = 1, Yi = sRi
(Mod N1) is calculated (S109), and the response sentence Yi (i =
, G) are transmitted to the information provider terminal 20 via the communication line 30 (S110).

【0057】情報提供者端末20は、受信した応答文Y
i (i=1,2,…,g)を一時メモリ203に蓄積し
(S111)、その後、演算手段204において暗号文
Cを用いてgビットの情報圧縮関数であるハッシュ関数
hにより検査文e=(e1,e2,…,eg)=h
(C)を生成する(S112)。検証手段206におい
て利用者の公開情報Iおよび一時メモリ203に蓄積さ
れた初期応答文Xi と応答文Yi と検査文eiとから、
ei =0ならば検証式Yi 2 =Xi (mod N1)を、e
i =1ならば検証式Yi 2 =Xi ×I(mod N1)を満
たすかどうかをそれぞれのビットiについて検証する
(S113)。この検証に失敗した場合には利用者は不
正であると見做してそれ以降の利用を禁止し(S114
A)、成功した場合には情報Mの配送が正常に終了した
と判断する(S114B)。
The information provider terminal 20 receives the response sentence Y
i (i = 1, 2,..., g) are stored in the temporary memory 203 (S111). = (E1, e2, ..., eg) = h
(C) is generated (S112). Based on the public information I of the user and the initial response sentence Xi, the response sentence Yi and the check sentence ei stored in the temporary memory 203 by the verification means 206,
If ei = 0, the verification equation Yi2 = Xi (mod N1) is given by e
If i = 1, it is verified whether or not each of the bits i satisfies the verification formula Yi 2 = Xi × I (mod N1) (S113). If this verification fails, the user is deemed to be illegal and prohibits further use (S114).
A) If successful, it is determined that the delivery of the information M has been completed normally (S114B).

【0058】(2)情報取り出しステップ 利用者端末1は、一時メモリ102に蓄積された暗号文
Cを利用者秘密情報蓄積手段101に蓄積されたシステ
ム秘密鍵SKを秘密鍵として共通鍵暗号手段105によ
り情報M=DSK(C)に復号して、情報出力/利用手段
106から情報Mを出力する(S115)。
(2) Information Retrieval Step The user terminal 1 uses the ciphertext C stored in the temporary memory 102 as the secret key using the system secret key SK stored in the user secret information storage means 101 as a secret key. And the information M = D SK (C), and the information M is output from the information output / use means 106 (S115).

【0059】上記の情報配送方法を用いて配送確認ステ
ップが正常に終了したことは、ゼロ知識証明プロトコル
による利用者認証が正常に行われたことのほかに、検査
文e=(e1,e2,…,eg)が正しく生成されたこ
との証明となる。また、検査文e=(e1,e2,…,
eg)は利用者端末10が受信した暗号文Cより情報圧
縮関数であるハッシュ関数を用いて生成されることか
ら、正しい暗号文Cを受信しなければ正しい検査文e=
(e1,e2,…,eg)を生成することはできない。
したがって、検査文e=(e1,e2,…,eg)を利
用者が正しく生成できることと、利用者が暗号文C(お
よび情報M)を正常に受信したこととは同値となる。以
上の説明から明らかなように、情報提供者は正確かつ確
実に情報を利用者に配送したことを確認できる。
The normal completion of the delivery confirmation step using the above information delivery method means that the user authentication by the zero-knowledge proof protocol has been normally performed, and that the check sentence e = (e1, e2, , Eg) are proof that they have been generated correctly. Also, the check sentence e = (e1, e2,...,
eg) is generated from the ciphertext C received by the user terminal 10 using a hash function, which is an information compression function. Therefore, if the correct ciphertext C is not received, the correct check text e =
(E1, e2, ..., eg) cannot be generated.
Therefore, the fact that the user can correctly generate the check sentence e = (e1, e2,..., Eg) is equivalent to the fact that the user has successfully received the cipher text C (and the information M). As is clear from the above description, the information provider can confirm that the information has been delivered to the user accurately and reliably.

【0060】なお、上記の説明において共通鍵暗号方法
を利用して暗号化/復号を行なっているが、公開鍵暗号
方法を利用しても当然構わない。また、Fiat Shamir 法
をもとに説明したが、本方法は拡張Fiat Shamir 法(太
田−岡本「Fiat-Shamir 法の高次への拡張」、電子情報
通信学会技術研究報告ISEC88−13)を始めとす
る、素因数分解困難性あるいは離散対数問題等の困難性
に安全性の根拠を置く全てのゼロ知識対話証明プロトコ
ルに応用が可能である。
In the above description, the encryption / decryption is performed using the common key encryption method, but the public key encryption method may be used. In addition, the explanation was based on the Fiat Shamir method, but this method has been extended to the extended Fiat Shamir method (Ota-Okamoto "Extension of the Fiat-Shamir method to a higher order", IEICE Technical Report ISEC88-13). It can be applied to any zero-knowledge interactive proof protocol that bases its security on the difficulty of factorization or discrete logarithm problem.

【0061】次に、本発明の第3実施例について説明す
る。
Next, a third embodiment of the present invention will be described.

【0062】図7は本発明の第3の実施例における情報
配送システムの構成を示すブロック図であり、10は情
報提供者20から情報の提供を受ける利用者の端末(利
用者端末)を示し、構成手段は図5に示す第2実施例と
同様である。20は情報を提供する情報提供者の端末
(情報提供者端末)を示し、200から206までの構
成手段は第2実施例と同様であり、207は情報任意ビ
ット長の複数のブロックに分割し、蓄積する情報分割手
段、208は後日情報を利用者に配送した事実を証明す
る証拠としての通信履歴を記録管理する通信履歴ファイ
ルである。30は第2実施例と同様に通信回線を表す。
40は後日、情報提供者が通信履歴ファイル208に記
録管理している通信履歴について、中立的立場によりそ
の通信履歴の正当性を判定する調停者の端末(調停者端
末)を表し、401は必要な演算を行う機能を有する演
算手段、402は調停者が必要な情報を一時的に蓄積す
る一時メモリ、403は正当性の判定を依頼された通信
履歴についてその正当性を検証する検証手段、404は
情報を任意ビット長の複数のブロックに分割し、蓄積す
る情報分割手段である。
FIG. 7 is a block diagram showing a configuration of an information delivery system according to a third embodiment of the present invention. Reference numeral 10 denotes a user terminal (user terminal) that receives information from an information provider 20. The components are the same as those of the second embodiment shown in FIG. Numeral 20 denotes an information provider terminal (information provider terminal) for providing information. The constituent means from 200 to 206 are the same as in the second embodiment, and 207 divides the information into a plurality of blocks having an arbitrary bit length. An information dividing means 208 for storing information is a communication history file which records and manages a communication history as proof that the information has been delivered to the user at a later date. Reference numeral 30 denotes a communication line as in the second embodiment.
Reference numeral 40 denotes an arbitrator's terminal (arbitrator terminal) that determines the validity of the communication history from a neutral standpoint with respect to the communication history recorded and managed by the information provider in the communication history file 208 at a later date. Arithmetic means having a function of performing various calculations; 402, a temporary memory for temporarily storing information required by the arbitrator; 403, verification means for verifying the validity of a communication history requested to be determined for validity; Is an information dividing means for dividing information into a plurality of blocks having an arbitrary bit length and storing the divided blocks.

【0063】以下、図8のフローチャートにしたがって
配送確認ステップでの動作手順を、また、図9のフロー
チャートにしたがって調停での動作手順を説明する。
尚、準備段階は、前述した第2実施例と同様である。
Hereinafter, the operation procedure in the delivery confirmation step will be described according to the flowchart of FIG. 8, and the operation procedure in the arbitration will be described according to the flowchart of FIG.
The preparation stage is the same as in the second embodiment described above.

【0064】(1)配送確認ステップ 情報提供者端末20は、利用者端末10に配送する情報
Mを情報データベース202から取り出し(S12
1)、情報分割手段207において情報Mを任意ビット
長サイズの複数のブロックに分割し、情報ブロックMB
j (i=1,2,…,m)として蓄積する(S12
2)。ここでは説明を簡単にするため、分割したブロッ
ク数をm、全てのブロックについビット長をgで一定と
する。
(1) Delivery Confirmation Step The information provider terminal 20 retrieves the information M to be delivered to the user terminal 10 from the information database 202 (S12).
1) The information dividing unit 207 divides the information M into a plurality of blocks having an arbitrary bit length, and
j (i = 1, 2,..., m) (S12)
2). Here, for the sake of simplicity, it is assumed that the number of divided blocks is m and the bit length of all blocks is constant at g.

【0065】これより以下の処理は第jブロックについ
てのものであり、第1ブロックから第mブロックまで各
ブロックごとに以下の処理を順次(m回)繰り返し行
う。
The following processing is for the j-th block, and the following processing is sequentially repeated (m times) for each block from the first block to the m-th block.

【0066】利用者端末10は、乱数発生手段103に
よりg個の乱数Rij(i=1,2,…,g)を生成した
後一時メモリ102に蓄積し(S123)、それぞれの
乱数について演算手段104により初期応答文Xij=R
ij 2 (mod N1)(i=1,2,…,g)を計算した後
一時メモリ102に蓄積する(S124)。その後、利
用者秘密情報蓄積手段101に蓄積されているシステム
秘密鍵SKを秘密鍵として、共通鍵暗号手段105によ
り暗号化した暗号化初期応答文CXij=ESK(Xij
(i=1,2,…,g)を通信回線30を介して情報提
供者端末20に送信する(S125)。
The user terminal 10 generates g random numbers R ij (i = 1, 2,..., G) by the random number generating means 103 and then accumulates them in the temporary memory 102 (S123). By means 104, the initial response sentence X ij = R
ij 2 (mod N1) (i = 1, 2,..., g) is calculated and then stored in the temporary memory 102 (S124). After that, the encrypted initial response sentence CX ij = E SK (X ij ) encrypted by the common key encryption unit 105 using the system secret key SK stored in the user secret information storage unit 101 as a secret key.
(I = 1, 2,..., G) are transmitted to the information provider terminal 20 via the communication line 30 (S125).

【0067】情報提供者端末20は、受信した暗号化初
期応答文CXij(i=1,2,…,g)を情報提供者秘
密情報蓄積手段201に蓄積されているシステム秘密鍵
SKを秘密鍵として、共通鍵暗号手段205により初期
応答文Xij=DSK(CXij)(i=1,2,…,g)に
復号して、一時メモリ203に蓄積する(S126)。
その後、情報提供者秘密情報蓄積手段201に蓄積され
ているシステム秘密鍵SKを秘密鍵として、情報分割手
段207に蓄積された情報ブロックMBj を共通鍵暗号
手段205により暗号化した暗号文ブロックCBj =E
SK(MBj )を通信回線30を介して利用者端末10に
送信する(S127)。
The information provider terminal 20 transfers the received encrypted initial response sentence CX ij (i = 1, 2,..., G) to the system secret key SK stored in the information provider secret information storage means 201. As a key, the common key encrypting means 205 decrypts the initial response sentence X ij = D SK (CX ij ) (i = 1, 2,..., G) and stores it in the temporary memory 203 (S126).
Thereafter, the system secret key SK stored in the information provider secret information storage means 201 as secret key, common information block MB j stored in the information dividing unit 207 key encryption unit 205 by encrypted ciphertext block CB j = E
SK (MB j ) is transmitted to the user terminal 10 via the communication line 30 (S127).

【0068】利用者端末10は、受信した暗号文ブロッ
クCBj を利用者秘密情報蓄積手段101に蓄積されて
いるシステム秘密鍵SKを秘密鍵として、共通鍵暗号手
段105により情報ブロックMBj =DSK(CBj )に
復号して、情報出力/利用手段106から情報ブロック
MBj を出力する(S128)。
The user terminal 10 uses the received ciphertext block CB j as the system secret key SK stored in the user secret information storage unit 101 as a secret key, and the information block MB j = D by the common key encryption unit 105. SK (CB j ), and outputs the information block MB j from the information output / use means 106 (S128).

【0069】さらに情報ブロックMBj を出力すると同
時に、演算手段104において情報ブロックMBj と一
時メモリ102に蓄積された初期応答文Xij(i=1,
2,…,g)とを用いて一方向性ランダムハッシュ関数
hにより検査文ej=(e1j,e2j,…,egj)
=h(MBj ‖X1j‖X2j‖…‖Xgj)を生成し(S1
29)、生成した検査文ejのそれぞれのビットiにつ
いて、一時メモリ102に蓄積された乱数Rijと利用者
秘密情報蓄積手段101に蓄積された利用者の秘密情報
sとからeij=0ならばYji=Rijを、eij=1ならば
Yij=sRij(mod N1)を計算して(S130)、応
答文Yij(i=1,2,…,g)として情報提供者端末
20に通信回線30を介して送信する(S131)。
Further, at the same time that the information block MBj is output, the initial response sentence Xij (i = 1,
2,..., G) and a check sentence ej = (e1j, e2j,..., Egj) by a one-way random hash function h.
= H (MBj‖X1j‖X2j‖... ‖Xgj) (S1
29) For each bit i of the generated check statement ej, from the random number Rij stored in the temporary memory 102 and the user secret information s stored in the user secret information storage means 101, if eij = 0, then Yji = Rij, and if eij = 1, Yij = sRij (mod N1) is calculated (S130), and a response sentence Yij (i = 1, 2,..., G) is sent to the information provider terminal 20 via the communication line 30. (S131).

【0070】情報提供者端末20は、受信した応答文Y
ij(i=1,2,…,g)を一時メモリ203に蓄積し
(S132)、その後、演算手段204において一時メ
モリ203に蓄積された初期応答文Xij(i=1,2,
…,g)と情報分割手段207に蓄積された情報ブロッ
クMBj とを用いて、一方向性ランダムハッシュ関数h
により検査文ej=(e1j,e2j,…,egj)=
h(MBj ‖X1j‖X2j‖…‖Xgj)を生成し、一時メ
モリ203に蓄積する(S133)。
The information provider terminal 20 receives the response message Y
ij (i = 1, 2,..., g) are stored in the temporary memory 203 (S132), and thereafter, the initial response sentence Xij (i = 1, 2, 2,
, G) and the information block MBj stored in the information dividing means 207, the one-way random hash function h
The check sentence ej = (e1j, e2j,..., Egj) =
h (MBj‖X1j‖X2j‖... ‖Xgj) is generated and stored in the temporary memory 203 (S133).

【0071】そして、検証手段206において利用者の
公開情報Iおよび一時メモリ203に蓄積された初期応
答文Xijと応答文Yijと検査文eijとから、eij=0な
らば検証式Yij2 =Xij(mod N1)を、eij=1なら
ば検証式Yij2 =Xij×I(mod N1)を満たすかどう
かをそれぞれのビットiについて検証する(S13
4)。この検証に失敗した場合には利用者は不正である
と見做して直ちにプロトコルの実行を中止し(S13
5)、成功した場合には全てのブロックが終了するまで
以上の処理を繰り返す(S136)。そして、第1ブロ
ックから第mブロックまでの全てのブロックについて検
証に成功した場合には、一時メモリ203に蓄積された
情報M、検査文eij、応答文Yij(i=1,2,…,
g:j=1,2,…,m)を通信履歴Hとして通信履歴
ファイル208に記録管理する(S137)。
Then, based on the public information I of the user and the initial response sentence Xij, the response sentence Yij and the check sentence eij stored in the temporary memory 203 by the verification means 206, if eij = 0, the verification expression Yij2 = Xij (mod N1), if eij = 1, it is verified for each bit i whether or not the verification formula Yij2 = Xij × I (mod N1) is satisfied (S13).
4). If this verification fails, the user deems that the user is invalid and immediately stops executing the protocol (S13).
5) If successful, the above processing is repeated until all blocks are completed (S136). When the verification is successful for all the blocks from the first block to the m-th block, the information M, the check sentence eij, and the response sentence Yij (i = 1, 2,.
g: j = 1, 2,..., m) is recorded and managed in the communication history file 208 as the communication history H (S137).

【0072】(2)調停 後日、利用者が情報Mを受信していないと主張した場合
には、情報提供者端末20は通信履歴ファイル208に
記録管理された通信履歴Hを提示し、調停者端末40の
一時メモリ402に蓄積する(S141)。
(2) Mediation If the user later claims that the information M has not been received, the information provider terminal 20 presents the communication history H recorded and managed in the communication history file 208, and It is stored in the temporary memory 402 of the terminal 40 (S141).

【0073】調停者端末40は、情報分割手段404に
おいて、一時メモリ402に蓄積された通信履歴中の情
報Mについて、情報Mを複数の情報ブロックMBj (j
=1,2,…,m)に分割して蓄積する(S142)。
The arbitrator terminal 40 uses the information dividing means 404 to convert the information M in the communication history stored in the temporary memory 402 into a plurality of information blocks MB j (j
= 1, 2, ..., m) and accumulate (S142).

【0074】各ブロック(第jブロック)について、演
算手段401において利用者端末10の公開情報Iと一
時メモリ402に蓄積された通信履歴H中の検査文eij
および応答文Yijから、eij=0ならばYij=Yij2
(mod N1)を、eij=1ならばXij=Yij2 /I(mo
d N1)をそれぞれのビットiについて計算し、計算結
果Xij(i=1,2,…,g)を一時メモリ402に蓄
積する(S143)。
For each block (j-th block), the check means eij in the public information I of the user terminal 10 and the communication history H stored in the temporary memory 402 by the calculating means 401
From the response sentence Yij, if eij = 0, then Yij = Yij2
(Mod N1), if eij = 1, Xij = Yij2 / I (mo
dN1) is calculated for each bit i, and the calculation result Xij (i = 1, 2,..., g) is stored in the temporary memory 402 (S143).

【0075】次に、情報分割手段404に蓄積された情
報ブロックMBj と一時メモリ402に蓄積された計算
結果Xij(i=1,2,…,g)とから演算手段401
の一方向性ランダムハッシュ関数hにより検査文ej=
(e1j,e2j,…,egj)=h(MBj ‖X1j‖
X2j‖…‖Xgj)を生成する。(S144)。
Next, the calculating means 401 is obtained from the information block MBj stored in the information dividing means 404 and the calculation result Xij (i = 1, 2,..., G) stored in the temporary memory 402.
The check sentence ej = by the one-way random hash function h
(E1j, e2j, ..., egj) = h (MBj {X1j}
X2j‖... {Xgj). (S144).

【0076】その後、検証手段403において一時メモ
リ402に蓄積された通信履歴H中の検査文ej=(e
1j,e2j,…,egj)と一致するかどうかを検査
する(S145)。全てのブロック(第1ブロックから
第mブロックまでのmブロック)について一致すれば
(S146)、通信履歴Hの正当性が保証されたことと
なり(S147)、そうでなければ通信履歴Hは無効と
なる(S148)。
Thereafter, the verification statement ej = (e) in the communication history H stored in the temporary memory 402 by the verification means 403.
1j, e2j,..., Egj) is checked (S145). If all blocks (m blocks from the first block to the m-th block) match (S146), the validity of the communication history H is guaranteed (S147). Otherwise, the communication history H is invalid. (S148).

【0077】上記の情報配送方法を用いて配送確認ステ
ップが正常に終了したことは、ゼロ知識証明プロトコル
による利用者認証が正常に行われたことのほかに、検査
文eij(i=1,2,…,g:j=1,2,…,m)が
正しく生成されたことの証明となる。また、検査文eij
(i=1,2,…,g:j=1,2,…,m)は利用者
が受信した情報ブロックMBj (j=1,2,…,m)
と利用者が生成した初期応答文Xij(i=1,2,…,
g:j=1,2,…,m)とから一方向性ランダムハッ
シュ関数hを用いて生成されることから、正しい情報ブ
ロックMBj (j=1,2,…,m)を受信しなければ
正しい検査文eij(i=1,2,…,g:j=1,2,
…,m)を生成することはできない。したがって、検査
文eij(i=1,2,…,g:j=1,2,…,m)を
利用者が正しく生成できることと利用者が情報ブロック
MBj (j=1,2,…,m)を正常に受信したことと
は同値となる。したがって、情報提供者は正確かつ確実
に情報を利用者に配送したことを確認できる。
The fact that the delivery confirmation step has been normally completed using the above information delivery method means that the user authentication by the zero-knowledge proof protocol has been performed normally, and that the check sentence e ij (i = 1, 2,..., G: j = 1, 2,..., M). Also, check statement e ij
(I = 1, 2,..., G: j = 1, 2,..., M) is the information block MB j (j = 1, 2,.
And the initial response sentence X ij (i = 1, 2,...,
g: j = 1, 2,..., m) and the correct information block MB j (j = 1, 2,..., m) must be received. If the correct check sentence e ij (i = 1, 2,..., G: j = 1, 2,
, M) cannot be generated. Therefore, the user can correctly generate the check sentence e ij (i = 1, 2,..., G: j = 1, 2,..., M) and the user can obtain the information block MB j (j = 1, 2,. , M) has the same value as that received normally. Therefore, the information provider can confirm that the information has been accurately and reliably delivered to the user.

【0078】なお、上記の説明では、共通鍵暗号方法を
利用して暗号化/復号を行った例を説明したが、公開鍵
暗号方法を利用しても当然構わない。また、Fiat Shami
r 法をもとに説明をしたが、本方法は拡張Fiat Shamir
法(太田−岡本「Fiat-Shamir 法の高次への拡張」、電
子情報通信学会技術研究報告ISEC88−13)を始
めとする、素因数分解困難性あるいは離散対数問題等の
困難性に安全性の根拠を置く全てのゼロ知識対話証明プ
ロトコルに対応が可能である。
In the above description, an example in which encryption / decryption is performed using a common key encryption method has been described. However, a public key encryption method may be used. Also, Fiat Shami
This method was explained based on the r method, but this method is an extended Fiat Shamir
Security (such as Ota-Okamoto "Extension of Fiat-Shamir method to higher order", IEICE technical report ISEC88-13) and other difficulties such as difficulty in factorization or discrete logarithm problem. Compatible with all zero-knowledge interactive proof protocols on which grounds are based.

【0079】次に、検査文eij、応答文Yij、(i=
1,2,…,g:j=1,2,…,m)、情報Mからな
る通信履歴Hの関係では、ゼロ知識証明プロトコルにお
ける検証式と一方向性ランダムハッシュ関数とにより相
互に関係し合っているため、一部を不正に改竄するなど
して通信履歴Hを偽造することは不可能である。したが
って、通信履歴Hを記録管理することにより、情報Mを
利用者が確実に受信していることの証拠として、後日、
調停者などの中立的な第三者に提示することができる。
Next, the check sentence e ij , the response sentence Y ij , (i =
1, 2,..., G: j = 1, 2,..., M) and the communication history H composed of information M, are related to each other by the verification formula in the zero-knowledge proof protocol and the one-way random hash function. Therefore, it is impossible to forge the communication history H by falsifying part of the communication history H. Therefore, by recording and managing the communication history H, as evidence that the user has reliably received the information M,
It can be presented to a neutral third party, such as a mediator.

【0080】さらに、情報提供者端末と利用者端末との
間の通信が情報Mの分割ブロック数mと同じ回数だけ繰
り返し行われるため、途中で情報提供者の検証に失敗し
た場合にはそれ以降の通信は打ち切られ、残りの情報ブ
ロックは送信されない。すなわち、利用者が知ることの
できる情報ブロックは検証に失敗する以前のもののみに
限られるので、情報提供者の検証を失敗させた利用者は
結果として情報M全体を正しく受信することが不可能と
なる。したがって、利用者の秘密情報sを知らない不正
な利用者が不正な応答文Yij(i=1,2,…,g)を
送信する場合はもとより、応答文そのものを送信しない
ような不正行為を行い、情報提供者が情報Mを利用者に
配送した事実を証明する通信履歴Hを情報提供者が記録
管理できないにもかかわらず、利用者が情報M全体を不
正に獲得してしまうことがないようにすることが可能で
ある。
Further, since the communication between the information provider terminal and the user terminal is repeated as many times as the number m of the divided blocks of the information M, if the verification of the information provider fails in the middle, Is aborted and the remaining information blocks are not transmitted. That is, since the information blocks that the user can know are limited only to those before the verification fails, the user who fails the verification of the information provider cannot receive the entire information M correctly as a result. Becomes Therefore, when an unauthorized user who does not know the user's secret information s transmits an incorrect response text Y ij (i = 1, 2,..., G), an unauthorized act that does not transmit the response text itself. The user may illegally obtain the entire information M even though the information provider cannot record and manage the communication history H proving that the information provider has delivered the information M to the user. It is possible not to.

【0081】また、上記の説明では分割するブロックを
各ブロックともビット長をgで一定としたが、例えば第
1ブロックは1ビット、第2ブロックは2ビット、第3
ブロックは4ビットというようにブロックごとにビット
長サイズを変えても当然構わない。
In the above description, the blocks to be divided have the same bit length of g for each block. For example, the first block is 1 bit, the second block is 2 bits, and the third block is 3 bits.
Of course, the bit length size may be changed for each block such as 4 bits.

【0082】以上の説明は、情報提供者が情報Mを正確
かつ確実に利用者に配送したことを証明できるものであ
り、例えば著作物などの有料情報を情報Mとして配送す
る場合、あるいはあらかじめ暗号化されたソフトウェア
などをCD−ROM等により無償あるいは有償で配布し
た後、暗号化されたソフトウェアを復号するための鍵を
情報Mとして配送する場合、上記の情報配送方法によっ
て情報提供者が利用者に情報Mを配送することにより、
情報提供者が記録管理する通信履歴Hを著作権使用料等
の情報料あるいはソフトウェアの販売代金を徴収すると
きの証明情報として利用できるなど、様々な利用が可能
である。
The above explanation can prove that the information provider has delivered the information M to the user accurately and reliably. For example, when pay information such as a copyrighted work is delivered as the information M, When distributing a key for decrypting the encrypted software as information M after distributing the encrypted software or the like on a CD-ROM or the like for free or for a fee, the information provider uses the above information distribution method to provide By delivering information M to
The communication history H recorded and managed by the information provider can be used in various ways, for example, it can be used as an information fee such as a royalty fee or as proof information when collecting a sales price of software.

【0083】次に、本発明の第4実施例について説明す
る。
Next, a fourth embodiment of the present invention will be described.

【0084】図10は本発明の第4実施例における情報
配送システムの構成を示すブロック図であり、10は情
報提供者端末20から情報の提供を受ける利用者の端末
(利用者端末)を示し、100から106までは第2実
施例と同様の構成であり、107は公開鍵暗号方法(例
えば、RSA,ElGamal )による暗号通信を行うための
公開鍵暗号手段、108は分割されたブロック情報を元
の情報再構成する情報再構成手段、109は情報提供者
から受信した情報を蓄積する情報蓄積手段である。20
は情報を提供する情報提供者の端末(情報提供者端末)
を示し、200から208までは第3実施例と同様の構
成であり、209は情報提供者が乱数を生成するための
乱数発生手段、210は公開鍵暗号方法による暗号通信
を行うための公開鍵暗号手段である。30は第2実施例
と同様に通信回線である。40は調停者端末を表し、4
01から404までは第3実施例と同様の構成であり、
405は公開鍵暗号方法による暗号化を行うための公開
鍵暗号手段である。
FIG. 10 is a block diagram showing the configuration of an information delivery system according to a fourth embodiment of the present invention. Reference numeral 10 denotes a terminal (user terminal) of a user who receives information from the information provider terminal 20. , 100 to 106 have the same configuration as in the second embodiment, 107 is a public key encryption means for performing encrypted communication by a public key encryption method (for example, RSA, ElGamal), and 108 is An information reconstructing unit 109 for reconstructing the original information is an information storage unit for storing information received from the information provider. 20
Is the terminal of the information provider that provides the information (information provider terminal)
200 to 208 have the same configuration as in the third embodiment, 209 is a random number generating means for the information provider to generate random numbers, and 210 is a public key for performing cryptographic communication by a public key encryption method. It is an encryption means. Reference numeral 30 is a communication line as in the second embodiment. 40 represents an arbitrator terminal;
The configuration from 01 to 404 is the same as that of the third embodiment.
Reference numeral 405 denotes a public key encryption unit for performing encryption by a public key encryption method.

【0085】以下、図11のフローチャートにしたがっ
て配送確認ステップと情報取り出しステップでの動作手
順を、また図12のフローチャートにしたがって調停で
の動作手順を説明する。
Hereinafter, the operation procedure in the delivery confirmation step and the information extraction step will be described according to the flowchart of FIG. 11, and the operation procedure in arbitration will be described according to the flowchart of FIG.

【0086】まず、準備段階として、信頼できるセンタ
が各利用者ごとにp1,q1,I,s,p2,q2,P
U,SUを設定し、このうちN1,N2,I,PUを利
用者の公開情報(公開鍵)として公開し、s,SUを利
用者の秘密情報(秘密鍵)として利用者秘密情報蓄積手
段101に蓄積して利用者に秘密裏に配布する。ここ
で、(p1,q1)と(p2,q2)の各組はそれぞれ
互いに異なる大きな素数の組になっており、N1=p1
×q1、N2=p2×q2である。また、I=s2 (mo
d N1),PU×SU=1(mod (p2-1)(q2-1))が成立
している。なお、p1=p2,q1=q2としてもよ
い。
First, as a preparatory stage, a reliable center establishes p1, q1, I, s, p2, q2, P for each user.
U and SU are set, N1, N2, I, and PU are disclosed as user's public information (public key), and s and SU are user's secret information storage means as user's secret information (secret key). It is stored in the server 101 and distributed to users in secret. Here, each set of (p1, q1) and (p2, q2) is a set of mutually different large prime numbers, and N1 = p1
× q1, N2 = p2 × q2. Also, I = s 2 (mo
d N1), PU × SU = 1 (mod (p2-1) (q2-1)). Note that p1 = p2 and q1 = q2 may be set.

【0087】(1)配送確認ステップ 利用者端末10は、乱数発生手段103によりg×m個
の乱数Rjk(j=1,2,…,g:k=1,2,…,
m)を生成し、一時メモリ102に蓄積する(S15
1)。それぞれの乱数について演算手段104により初
期応答文Xjk=Rjk 2 (mod N1)(j=1,2,…,
g:k=1,2,…,m)を計算し(S152)、通信
回線30を介して情報提供者に送信する(S153)。
(1) Delivery Confirmation Step The user terminal 10 uses the random number generation means 103 to generate g × m random numbers R jk (j = 1, 2,..., G: k = 1, 2 ,.
m) is generated and stored in the temporary memory 102 (S15).
1). The initial response sentence X jk = R jk 2 (mod N1) (j = 1, 2,...,
g: k = 1, 2,..., m) (S152), and transmits it to the information provider via the communication line 30 (S153).

【0088】情報提供者端末20は、受信した初期応答
文Xjk(j=1,2,…,g:k=1,2,…,m)を
一時メモリ203に蓄積し(S154)、また乱数発生
手段209により乱数文Zをランダムに生成して一時メ
モリ203に蓄積する(S155)。
The information provider terminal 20 stores the received initial response sentence X jk (j = 1, 2,..., G: k = 1, 2,..., M) in the temporary memory 203 (S154). The random number generation unit 209 randomly generates a random number sentence Z and stores it in the temporary memory 203 (S155).

【0089】次に、初期応答文Xjk(j=1,2,…,
g:k=1,2,…,m)と乱数文Zとから演算手段2
04の一方向性ランダムハッシュ関数hによりgビット
サイズの情報暗号化用秘密鍵W=(W1,W2,…,W
g)=h(Z‖X11‖X21‖…‖Xgm)を生成して一時
メモリ203に蓄積する(S156)。ここで、一般に
gの値は共通鍵暗号手段105および共通鍵暗号手段2
05で使用する秘密鍵の鍵長と等しいかそれ以上であ
る。その後、配送する情報Mを情報データベース202
から取り出し(S157)、情報暗号化用秘密鍵Wを秘
密鍵として共通鍵暗号手段205により暗号文C=Ew
(M)に暗号化した後、利用者端末10に暗号文Cを通
信回線30を介して送信する(S158)。
Next, an initial response sentence Xjk (j = 1, 2,...,
g: k = 1, 2,..., m) and the random number sentence Z
04 using a one-way random hash function h, a g-bit sized information encryption secret key W = (W1, W2,..., W
g) = h (Z‖X11‖X21‖... ‖Xgm) is generated and stored in the temporary memory 203 (S156). Here, in general, the value of g is determined by the common key encrypting means 105 and the common key encrypting means 2.
05 is equal to or longer than the key length of the secret key used in step S05. After that, the information M to be delivered is stored in the information database 202.
(S157), the ciphertext C = Ew by the common key encryption unit 205 using the information encryption secret key W as a secret key.
After encryption to (M), the ciphertext C is transmitted to the user terminal 10 via the communication line 30 (S158).

【0090】利用者端末10は、暗号文Cを情報蓄積手
段109に受信/蓄積した後、受信した旨を通信回線3
0を介して情報提供者端末20に通知する(S15
9)。
After receiving / accumulating the ciphertext C in the information accumulating means 109, the user terminal 10 notifies the communication line 3 that the ciphertext C has been received.
0 to the information provider terminal 20 (S15).
9).

【0091】情報提供者端末20は、一時メモリ203
に蓄積された情報暗号化用秘密鍵Wj (j=1,2,
…,g)を利用者の公開情報PUを用いて公開鍵暗号手
段210により暗号化して検査文e=(e1,e2,
…,eL)=(W1 ‖W2 ‖…‖Wg )PU(mod N2)
を生成する(S160)。なお、LはN2のビット長に
等しい。
The information provider terminal 20 has a temporary memory 203
Secret key Wj (j = 1, 2, 2,
, G) are encrypted by the public key encryption means 210 using the user's public information PU, and the check sentence e = (e1, e2,
.., EL) = (W 1 ‖W 2 ‖... ‖W g) PU (mod N2)
Is generated (S160). Note that L is equal to the bit length of N2.

【0092】次に、情報分割手段207において検査文
e=(e1,e2,…,eL)を複数個のブロックに分
割し、検査文ブロックとして蓄積する(S161)。こ
こでは説明を簡単にするため、分割したブロック数を
m、全てのブロックについてビット長をgで一定とし、
分割した検査文を検査文ブロックeBjk(j=1,2,
…,g:k=1,2,…,m)と表す。すなわち、eB
jk=e(j+g(k-1))であり、例えばeB11=e1 ,eBg1
=eg ,eB12=eg+1 ,eBLm=eL のようになる。
Next, the check sentence e = (e1, e2,..., EL) is divided into a plurality of blocks by the information dividing means 207 and stored as a check sentence block (S161). Here, for the sake of simplicity, the number of divided blocks is m, and the bit length of all blocks is constant at g.
The divided check statement is converted into a check statement block eBjk (j = 1, 2, 2, 3).
, G: k = 1, 2,..., M). That is, eB
jk = e (j + g (k-1)), for example, eB11 = e1, eBg1
= Eg, eB12 = eg + 1, eBLm = eL.

【0093】これより以下の処理は第kブロックについ
てのものであり、第1ブロックから第mブロックまで各
ブロックごとに以下の処理を順次(m回)繰り返し行
う。
The following processing is for the k-th block, and the following processing is sequentially repeated (m times) for each block from the first block to the m-th block.

【0094】情報提供者端末20は、情報分割手段20
7に蓄積された検査文ブロックeBjk(j=1,2,
…,g)を通信回線30を介して利用者端末10に送信
する(S162)。
[0094] The information provider terminal 20 is
7, the check statement block eB jk (j = 1, 2, 2,
, G) are transmitted to the user terminal 10 via the communication line 30 (S162).

【0095】利用者端末10は、受信した検査文ブロッ
クeBjk(j=1,2,…,g)を一時メモリ102に
蓄積し(S163)、その後、演算手段104において
受信した検査文ブロックeBjkを用いて、一時メモリ1
02に蓄積された乱数Rjkと利用者秘密情報蓄積手段1
01に蓄積された利用者の秘密情報sとからeBjk=0
ならばYjk=Rjkを、eBjk=1ならばYjk=sRjk
(mod N1)をそれぞれのビットjについて計算して
(S164)、応答文Yjk(j=1,2,…,g)とし
て情報提供者端末20に通信回線30を介して送信する
(S165)。
The user terminal 10 stores the received check sentence block eBjk (j = 1, 2,..., G) in the temporary memory 102 (S163). Using, temporary memory 1
02 and the user secret information storage means 1
EBjk = 0 from the user secret information s stored in 01
If so, then Yjk = Rjk, if eBjk = 1, then Yjk = sRjk
(Mod N1) is calculated for each bit j (S164), and transmitted as a response sentence Yjk (j = 1, 2,..., G) to the information provider terminal 20 via the communication line 30 (S165).

【0096】情報提供者端末20は、受信した応答文Y
jk(j=1,2,…,g)を一時メモリ203に蓄積し
(S166)、その後、検証手段206において利用者
の公開情報Iおよび一時メモリ203に蓄積された初期
応答文Xjkと応答文Yjkと検査文ejkとから、ejk=0
ならば検証式Yjk2 =Xjk(mod N1)を、ejk=1な
らば検証式Yjk2 =Xjk×I(mod N1)を満たすかど
うかをそれぞれのビットiについて検証する(S16
7)。この検証に失敗した場合には利用者は不正である
と見做して直ちにプロトコルの実行を中止し(S16
8)、成功した場合には全てのブロックが終了するまで
以上の処理を繰り返す(S169)。そして、第1ブロ
ックから第mブロックまでの全てのブロックについて検
証に成功した場合には、一時メモリ203に蓄積された
乱数文Z、検査文ejk、応答文Yjk(j=1,2,…,
g:k=1,2,…,m)を通信履歴Hとして通信履歴
ファイル208に記録管理する(S170)。
The information provider terminal 20 receives the response sentence Y
jk (j = 1, 2,..., g) are stored in the temporary memory 203 (S166), and thereafter, the public information I of the user and the initial response text Xjk and the response text stored in the temporary memory 203 by the verification means 206. From Yjk and the check statement ejk, ejk = 0
Then, the verification equation Yjk2 = Xjk (mod N1) is verified for each bit i, and if ejk = 1, the verification equation Yjk2 = Xjk × I (mod N1) is verified for each bit i (S16).
7). If this verification fails, the user deems that the user is illegal and immediately stops executing the protocol (S16).
8) If successful, the above processing is repeated until all blocks are completed (S169). If the verification is successful for all the blocks from the first block to the m-th block, the random number sentence Z, the check sentence ejk, and the response sentence Yjk (j = 1, 2,.
g: k = 1, 2,..., m) is recorded and managed in the communication history file 208 as the communication history H (S170).

【0097】(2)情報取り出しステップ 利用者端末10は、情報再構成手段108において、一
時メモリ102に蓄積された検査文ブロックeBjk(j
=1,2,…,g:k=1,2,…,m)から検査文e
i (i=1,2,…,L)を再構成し(S171)、利
用者秘密情報蓄積手段101に蓄積されている利用者の
秘密情報SUを用いて公開鍵暗号手段107により復号
して情報暗号化用秘密鍵W=(W1,W2,…,Wg)
=(e1‖e2 ‖…‖eL )SU(mod N2)を獲得した
後、情報蓄積手段109に蓄積する(S172)。
(2) Information Retrieval Step In the user terminal 10, the information reconstructing means 108 checks the check sentence block eBjk (j) stored in the temporary memory 102.
= 1, 2,..., G: k = 1, 2,.
i (i = 1, 2,..., L) is reconstructed (S171) and decrypted by the public key encryption means 107 using the user secret information SU stored in the user secret information storage means 101. Information encryption private key W = (W1, W2,..., Wg)
= (E1‖e2‖... ‖EL) SU (mod N2), and then accumulates in the information accumulating means 109 (S172).

【0098】最後に、情報蓄積手段109に蓄積された
情報暗号化用秘密鍵W=(W1,W2,…,Wg)を秘
密鍵として、共通鍵暗号手段105により情報蓄積手段
109に蓄積された暗号文Cを復号し、情報M=Dw
(C)を情報出力/利用手段106より獲得することが
できる(S173)。
Finally, the secret key for information encryption W = (W1, W2,..., Wg) stored in the information storage means 109 is stored in the information storage means 109 by the common key encryption means 105 as a secret key. Decrypt ciphertext C and obtain information M = Dw
(C) can be obtained from the information output / use means 106 (S173).

【0099】(3)調停 後日、利用者が情報Mを受信していないと主張した場合
には、情報提供者端末20は通信履歴ファイル208に
記録管理された通信履歴Hを提示し、調停者端末40の
一時メモリ402に蓄積する(S181)。
(3) Mediation If the user later claims that the information M has not been received, the information provider terminal 20 presents the communication history H recorded and managed in the communication history file 208, and It is stored in the temporary memory 402 of the terminal 40 (S181).

【0100】調停者端末40は、各ブロック(第kブロ
ック)について一時メモリ402に蓄積された通信履歴
H中の検査文ejkおよび応答文Yjkから、演算手段40
1においてejk=0ならばXjk=Yjk2 (mod N1)
を、ejk=1ならばXjk=Yjk2 /I(mod N1)をそ
れぞれのビットjについて計算し、計算結果Xjk(j=
1,2,…,g)を一時メモリ402に蓄積する(S1
82)。
The arbitrator's terminal 40 calculates the arithmetic means 40 from the check sentence ejk and the response sentence Yjk in the communication history H stored in the temporary memory 402 for each block (k-th block).
If ejk = 0 in 1, Xjk = Yjk2 (mod N1)
Is calculated for each bit j, and if ejk = 1, Xjk = Yjk2 / I (mod N1) is calculated for each bit j, and the calculation result Xjk (j =
, G) are stored in the temporary memory 402 (S1).
82).

【0101】次いで、一時メモリ402に蓄積された計
算結果Xjk(j=1,2,…,g)と乱数文Zとを用い
て演算手段401の一方向性ランダムハッシュ関数hに
よりgビットサイズの情報暗号化用秘密鍵W=(W1,
W2,…,Wg)=h(Z‖X11‖X21‖…‖Xgm)
(j=1,2,…,g)を生成し(S183)、利用者
の公開情報PUを用いて公開鍵暗号手段405により暗
号化して検査文e=(e1,e2,…,eL)=(W1
‖W2 ‖…‖Wg )PU(mod N2)を生成する(S18
4)。
Next, using the calculation result Xjk (j = 1, 2,..., G) stored in the temporary memory 402 and the random number sentence Z, the g-bit size Information encryption private key W = (W1,
W2,..., Wg) = h (Z‖X11‖X21‖ ... ‖Xgm)
(J = 1, 2,..., G) are generated (S183), and are encrypted by the public key encrypting means 405 using the public information PU of the user, and the check statement e = (e1, e2,..., EL) = (W1
{W2}... {Wg) PU (mod N2) is generated (S18).
4).

【0102】その後、情報分割手段404において検査
文e=(e1,e2,…,eL)を複数個のブロックに
分割して、検査文ブロックeBjk(j=1,2,…,
g:k=1,2,…,m)生成し(S185)、最後に
各ブロック(第kブロック)について、検証手段403
において一時メモリ402に蓄積された通信履歴H中の
検査文ejk(j=1,2,…,g)と一致するかどうか
を検査する(S186)。全てのブロック(第1ブロッ
クから第mブロックまでのmブロック)について一致す
れば(S187)、通信履歴Hの正当性が証明されたこ
とになり、利用者が情報Mを受信していることが保証さ
れたこととなり(S188)、そうでなければ通信履歴
Hは無効とされる(S189)。
After that, the check sentence e = (e1, e2,..., EL) is divided into a plurality of blocks by the information dividing means 404, and the check sentence block eBjk (j = 1, 2,.
g: k = 1, 2,..., m) (S185), and finally, for each block (k-th block), the verification unit 403
In step S186, it is checked whether the sentence matches the check sentence ejk (j = 1, 2,..., G) in the communication history H stored in the temporary memory 402. If all the blocks (m blocks from the first block to the m-th block) match (S187), the validity of the communication history H has been proved, and the user has received the information M. It is guaranteed (S188), otherwise the communication history H is invalidated (S189).

【0103】上記の情報配送方法を用いれば、情報M本
体は初めに暗号文Cに暗号化されて利用者に送信される
ため、暗号文Cを利用者が受信した時点では情報Mを獲
得されることはない。そして、ゼロ知識証明プロトコル
が正常に終了した時点で、ゼロ知識証明プロトコルによ
る利用者認証が正常に行われたことのほかに、検査文e
jk(j=1,2,…,g:k=1,2,…,m)を利用
者が正しく受信したことの証明となる。
When the information delivery method described above is used, the information M itself is first encrypted into the ciphertext C and transmitted to the user. Therefore, when the user receives the ciphertext C, the information M is obtained. Never. Then, when the zero-knowledge proof protocol is normally completed, in addition to the fact that the user authentication by the zero-knowledge proof protocol has been normally performed, a check statement e
This proves that the user has correctly received jk (j = 1, 2,..., g: k = 1, 2,..., m).

【0104】また、検査文ejk(j=1,2,…,g:
k=1,2,…,m)を利用者が復号することにより情
報暗号化用秘密鍵Wj (j=1,2,…,g)を生成
し、生成した情報暗号化用秘密鍵Wj (j=1,2,
…,g)を用いて暗号文Cを復号して情報Mを獲得する
ことができる。したがって、検査文ejk(j=1,2,
…,g:k=1,2,…,m)を利用者が正しく受信し
たことと利用者が情報Mを正常に受信したこととは同値
となる。したがって、情報提供者は正確かつ確実に情報
を利用者に配送したことを確認できる。
The check sentence e jk (j = 1, 2,..., G:
The user decrypts k = 1, 2,..., m) to generate an information encryption secret key W j (j = 1, 2,..., g), and generates the generated information encryption secret key W j (j = 1, 2,
, G) to decrypt the ciphertext C to obtain the information M. Therefore, the check statement e jk (j = 1, 2, 2,
.., G: k = 1, 2,..., M) are equivalent to the fact that the user has correctly received the information M. Therefore, the information provider can confirm that the information has been accurately and reliably delivered to the user.

【0105】なお、上記の説明において公開鍵暗号方法
を利用して暗号化/復号を行っているが、共通鍵暗号方
法を利用しても当然構わない。また、Fiat Shamir 法を
もとに説明したが、本方法は拡張Fiat Shamir 法(太田
−岡本「Fiat-Shamir 法の高次への拡張」、電子情報通
信学会技術研究報告ISEC88−13)を始めとす
る、素因数分解困難性あるいは離散対数問題等の困難性
に安全性の根拠を置く全てのゼロ知識対話証明プロトコ
ルに応用が可能である。
In the above description, the encryption / decryption is performed by using the public key encryption method. However, the common key encryption method may be used. In addition, the explanation was based on the Fiat Shamir method, but this method has been extended to the extended Fiat Shamir method (Ota-Okamoto, "Extension of the Fiat-Shamir method to higher orders", IEICE Technical Report ISEC88-13). It can be applied to any zero-knowledge interactive proof protocol that bases its security on the difficulty of factorization or discrete logarithm problem.

【0106】次に、検査文ejk、応答文Yjk、(j=
1,2,…,g:k=1,2,…,m)、乱数文Zから
なる通信履歴Hの関係では、ゼロ知識証明プロトコルに
おける検証式と一方向性ランダムハッシュ関数とにより
相互に関係し合っているため、一部を不正に改竄するな
どして通信履歴Hを偽造することは不可能である。した
がって、通信履歴Hを記録管理することにより、情報暗
号化用秘密鍵Wj (j=1,2,…,g)を利用者が確
実に受信していることの証拠として、後日、調停者など
の中立的な第三者に提示することができる。
Next, the check sentence e jk , the response sentence Y jk , (j =
1, 2,..., G: k = 1, 2,..., M) and the communication history H composed of the random number sentence Z, are mutually related by the verification formula in the zero knowledge proof protocol and the one-way random hash function. Therefore, it is impossible to forge the communication history H by falsifying part of the communication history H. Therefore, by recording and managing the communication history H, the arbitrator will later provide proof that the user has received the information encryption private key W j (j = 1, 2,..., G) reliably. Such can be presented to a neutral third party.

【0107】さらに、情報提供者と利用者との間の通信
が情報暗号化用秘密鍵Wj (j=1,2,…,g)の分
割ブロック数mと同じ回数だけ繰り返し行われるため、
途中で情報提供者の検証に失敗した場合にはそれ以降の
通信は打ち切られ、残りの検査文は送信されない。すな
わち、利用者が知ることのできる検査文は検証に失敗す
る以前のもののみに限られるので、情報提供者の検証を
失敗させた利用者は暗号文Cを復号するために必要な情
報の一部しか獲得することができず、結果として正しい
情報暗号化用秘密鍵Wj (j=1,2,…,g)を生成
することが不可能となる。したがって、利用者の秘密情
報sを知らない不正な利用者が不正な応答文Yjk(j=
1,2,…,g:k=1,2,…,m)を送信する場合
はもとより、応答文そのものを送信しないような不正行
為を行い、情報提供者が情報Mを利用者に配送した事実
を証明する通信履歴Hを情報提供者が記録管理できない
にもかかわらず、利用者が情報Mを獲得するのに必要な
検査文ejk(j=1,2,…,g:k=1,2,…,
m)を受信し、情報Mを不正に復号/獲得してしまうこ
とがないようにすることが可能である。また、上記の説
明では分割するブロックを各ブロックともビット長をg
で一定としたが、例えば第1ブロックは1ビット、第2
ブロックは2ビット、第3ブロックは4ビットというよ
うにブロックごとにビット長サイズを変えても当然構わ
ない。
Furthermore, the communication between the information provider and the user is repeated as many times as the number m of divided blocks of the information encryption secret key W j (j = 1, 2,..., G).
If the verification of the information provider fails on the way, the subsequent communication is terminated and the remaining check text is not transmitted. That is, since the check sentence that the user can know is limited only to the one before the verification failed, the user who failed the verification of the information provider can obtain one of the information necessary for decrypting the ciphertext C. Only the copy can be obtained, and as a result, it becomes impossible to generate a correct information encryption private key W j (j = 1, 2,..., G). Therefore, an unauthorized user who does not know the user's confidential information s can send an unauthorized response sentence Y jk (j =
1, 2,..., G: k = 1, 2,..., M) as well as fraudulent acts not to transmit the response itself, and the information provider delivered the information M to the user. Inspection sentences e jk (j = 1, 2,..., G: k = 1) necessary for the user to acquire the information M even though the information provider cannot record and manage the communication history H proving the fact. , 2,…,
m) to prevent the information M from being illegally decrypted / acquired. In the above description, the blocks to be divided are represented by the bit length g for each block.
, For example, the first block is 1 bit, the second block is
Of course, the bit length size may be changed for each block, such as 2 bits for the block and 4 bits for the third block.

【0108】以上の説明は、情報提供者が大容量の情報
Mを正確かつ確実に利用者に配送したことを証明できる
ものであり、例えば情報Mを著作物などの「オンデマン
ドサービス」としての有料情報とした場合、上記の情報
配送方法によって情報提供者が利用者に情報Mを配送す
ることにより、情報提供者が記録管理する通信履歴Hを
著作権使用料等の情報料を徴収するときの証明情報とし
て利用できるなど、様々な利用が可能である。
The above description can prove that the information provider has delivered the large amount of information M accurately and reliably to the user. For example, the information M can be used as an “on-demand service” such as a copyrighted work. In the case of pay information, when the information provider delivers information M to the user according to the information delivery method described above, and the information provider collects the communication history H recorded and managed by the information provider, and collects information charges such as a copyright fee. It can be used in various ways, for example, it can be used as certification information.

【0109】以上説明したとおり、本発明の第2〜第4
実施例のゼロ知識証明プロトコルを利用した情報配送方
法では、第一にプロトコルの動作自体は利用者認証とし
てのゼロ知識証明プロトコルと同等であるため、ゼロ知
識証明プロトコルと同様に、不正な利用者が情報提供者
の検証をクリアすることはほぼ不可能である。第二に配
送確認ステップが正常に終了した場合には、ゼロ知識証
明プロトコルが正常に終了したことと同値であるので、
情報提供者は正しい利用者が情報を正しく受信している
と判断できる。
As described above, the second to fourth embodiments of the present invention are described.
In the information delivery method using the zero-knowledge proof protocol of the embodiment, firstly, since the operation of the protocol itself is equivalent to the zero-knowledge proof protocol as user authentication, an illegal user It is almost impossible to pass the information provider's verification. Secondly, if the delivery confirmation step is completed successfully, it is equivalent to that the zero-knowledge proof protocol has been completed normally.
The information provider can determine that the correct user has correctly received the information.

【0110】叉、情報を暗号化し暗号文として送信する
ことにより、第三者による情報の盗聴を防止し、かつ第
三者が情報を解読するために有効な情報も得られないよ
うにすることもできる。
Further, by encrypting the information and transmitting it as a ciphertext, it is possible to prevent eavesdropping on the information by a third party and prevent the third party from obtaining effective information for decrypting the information. Can also.

【0111】叉、本発明の第2実施例によれば、暗号文
の復号処理を配送確認ステップと切り離して実行するこ
とができる。
According to the second embodiment of the present invention, the decryption of the ciphertext can be executed separately from the delivery confirmation step.

【0112】叉、本発明の第2、第3実施例によれば、
例えばハッシュ関数などを用いて情報(または利用者が
復号可能な暗号文)から検査文を生成することにより検
査文のサイズを小さくすることができ、配送確認ステッ
プにおける通信量及び処理時間を削減できる。
According to the second and third embodiments of the present invention,
For example, by generating a check sentence from information (or a user-encryptable cipher text) using a hash function or the like, the size of the check sentence can be reduced, and the communication amount and processing time in the delivery confirmation step can be reduced. .

【0113】叉、本発明の第3実施例によれば、一方向
性関数を用いて検査文を生成することにより、情報(ま
たは利用者が復号可能な暗号文)、応答文、及び検査文
とからなる通信履歴の偽造を不可能にする。
According to the third embodiment of the present invention, by generating a check sentence using a one-way function, information (or a ciphertext that can be decrypted by a user), a response sentence, and a check sentence Forgery of the communication history consisting of

【0114】叉、例えば不正な利用者による利用などに
より配送確認ステップの途中で情報提供者のプロトコル
に失敗した場合には、直ちにプロトコルの実行が中止さ
れ、検証に失敗した以降のブロックは利用者に送信され
ないことになるため、結果として情報(または利用者が
復号可能な暗号文)全てを不正に獲得してしまうことが
ないようにできる。
If the protocol of the information provider fails during the delivery confirmation step due to, for example, use by an unauthorized user, the execution of the protocol is immediately stopped, and the blocks after the failure of the verification are replaced by the user. Therefore, it is possible to prevent the information (or the encrypted text that can be decrypted by the user) from being illegally acquired as a result.

【0115】叉、本発明の第4実施例によれば、大容量
の情報を送信する場合に、第一に情報は情報提供者が生
成した情報暗号化用秘密鍵によって初めに暗号化されて
利用者に配送されるため、利用者の認証が行われる以前
に情報本体を利用者が取り出すことはできない。第二に
情報暗号化用秘密鍵についてのみ検査文として配送確認
を行うことにより、通信量及び配送確認のための処理時
間を大幅に短縮できる。第三に配送確認ステップが正常
に終了すれば利用者は検査文を正しく受信したことが確
認でき、情報取り出しステップにおいて情報暗号化用秘
密鍵を獲得することが保証されるので、この時点で初め
て情報を間違いなく取り出すことができる。したがっ
て、これらの効果により情報配送方法が終了した場合に
は、情報提供者は正規の利用者に対して情報を暗号化し
た状態で提供した後、利用者が暗号化された情報を復号
するために必要な情報を利用者に配送し、かつ確実に利
用者が受信したことが確認できるので、情報提供者は情
報を利用者まで確実に配送したと判断できる。
According to the fourth embodiment of the present invention, when transmitting a large amount of information, the information is first encrypted by the information encryption private key generated by the information provider. Since the information is delivered to the user, the user cannot retrieve the information body before the user is authenticated. Second, by performing delivery confirmation as a check sentence only for the information encryption secret key, it is possible to greatly reduce the amount of communication and the processing time for delivery confirmation. Third, if the delivery confirmation step is completed normally, the user can confirm that the inspection sentence has been correctly received, and it is guaranteed that the information encryption private key will be obtained in the information retrieval step. Information can be retrieved without fail. Therefore, when the information delivery method is completed due to these effects, the information provider provides the information to an authorized user in an encrypted state, and then the user decrypts the encrypted information. The information provider can deliver the necessary information to the user and reliably confirm that the user has received the information, so that the information provider can determine that the information has been reliably delivered to the user.

【0116】叉、一方向性関数を用いて情報暗号化用秘
密鍵を生成することにより情報提供者にとって都合の良
い情報暗号化用秘密鍵を不正に生成できないようにする
ことができる。また、同様に一方向性関数を用いること
により、乱数文と検査文と応答文とからなる通信履歴を
偽造することは不可能になるので、情報提供者は正規の
利用者に対して要求された情報を暗号化した状態で提供
した後、利用者が暗号化された情報を復号するために必
要な情報を利用者に配送し、かつ確実に利用者が受信し
たことを後日証明できる証拠能力を持つことができる。
Also, by generating a secret key for information encryption using a one-way function, it is possible to prevent unauthorized generation of a secret key for information encryption which is convenient for the information provider. Similarly, by using a one-way function, it becomes impossible to forge a communication history consisting of a random number sentence, a check sentence, and a response sentence. Capability to provide the user with the information necessary to decrypt the encrypted information after providing the encrypted information to the user, and to prove at a later date that the user has received the information reliably. Can have.

【0117】叉、検査文について暗号通信を行うこと
は、情報暗号化用秘密鍵についても暗号通信を行なって
いることと同等の効果が得られるため、第三者による情
報暗号化用秘密鍵の盗聴を防止し、かつ第三者が情報暗
号化用秘密鍵を解読するために有効な情報も得られない
ようにもなる。
Also, performing the cryptographic communication on the check sentence has the same effect as performing the cryptographic communication on the information encryption private key. This prevents eavesdropping and prevents a third party from obtaining effective information for decrypting the secret key for information encryption.

【0118】叉、検査文の復号処理を配送確認ステップ
と切り離して実行することができる。
Further, the decryption processing of the check sentence can be executed separately from the delivery confirmation step.

【0119】叉、例えば不正な利用者による利用などに
より配送確認ステップの途中で情報提供者の検証に失敗
した場合には、ただちにプロトコルの実行が中止され、
検証に失敗した以降のブロックは利用者に送信されない
ことになる。したがって、情報提供者の検証を失敗させ
た利用者は暗号化された情報を復号するために必要な情
報の一部しか獲得することができず、結果として情報本
体もしくは情報暗号化用秘密鍵を生成することが不可能
となるので、不正な利用者が要求した情報を不正に獲得
してしまうことがないようにできる。
If the verification of the information provider fails during the delivery confirmation step due to, for example, an unauthorized user, the execution of the protocol is immediately stopped.
Blocks after the failed verification will not be sent to the user. Therefore, the user who fails the verification of the information provider can obtain only a part of the information necessary for decrypting the encrypted information, and as a result, the information itself or the secret key for information encryption can be obtained. Since it is impossible to generate the information, it is possible to prevent the information requested by the unauthorized user from being illegally obtained.

【0120】叉、本発明の第3、第4実施例によれば、
偽造不可能な通信履歴を実際に情報を配送した証拠とし
て記録管理することができ、かつ必要に応じて提示でき
るようになる。さらに、情報提供者が情報を配送した事
実の証拠として記録管理しなければならない情報量が桜
井(特開平5−12321)の方式と比較して大幅に削
減できる。
According to the third and fourth embodiments of the present invention,
The communication history that cannot be forged can be recorded and managed as evidence of the actual delivery of information, and can be presented as needed. Furthermore, the amount of information that must be recorded and managed as evidence of the fact that the information provider has delivered the information can be significantly reduced as compared with the method of Sakurai (Japanese Patent Laid-Open No. 5-12321).

【0121】叉、情報提供者と利用者の間で情報の提供
の有無について調停を行う必要が生じた場合、情報提供
者が通信履歴を裁判所等の中立な調停機関に提示し、調
停機関が証拠能力を有する通信履歴についてその正当性
を検査することにより、情報提供者と利用者のどちらの
主張が正当であるのかを判定できる。すなわち、情報提
供者が利用者に対して情報(または利用者が復号可能な
暗号文)を送信し、かつ利用者が確実に受信したこと
を、後日調停者が確認できるので、利用者が情報(また
は利用者が復号可能な暗号文)を受信しているにも関わ
らず、利用者が情報を受信していないなどという不当な
主張を防止できる。
When it is necessary to arbitrate whether information is provided between the information provider and the user, the information provider presents the communication history to a neutral arbitration organization such as a court, and the arbitration organization determines By examining the validity of the communication history having the evidential ability, it is possible to determine which of the information provider and the user is valid. In other words, the arbitrator can later confirm that the information provider has transmitted the information (or a ciphertext that can be decrypted by the user) to the user and that the user has received the information without fail. (Or a ciphertext that can be decrypted by the user), it is possible to prevent an unjust assertion that the user has not received information.

【0122】叉、これらの実施例によれば、情報提供者
が要求された情報を利用者に確実に配送し、かつ利用者
が確実に受信していることを情報提供者が確認できるシ
ステムとなる。また、必要に応じて情報提供者が利用者
を認証する利用者認証方法としてのゼロ知識証明プロト
コルを単独に使用することもできる。
Further, according to these embodiments, there is provided a system which enables an information provider to reliably deliver requested information to a user and to confirm that the user has received the information reliably. Become. Further, the zero-knowledge proof protocol as a user authentication method in which the information provider authenticates the user can be used alone as needed.

【0123】叉、情報提供者と利用者の間で暗号通信が
できるようにしたシステムとなる。
In addition, a system is provided in which encrypted communication can be performed between the information provider and the user.

【0124】叉、本発明の第4実施例によれば、情報提
供者から提供された情報を蓄積し、利用者が必要に応じ
て情報を利用できるようにしたシステムとなる。
According to the fourth embodiment of the present invention, there is provided a system in which information provided by an information provider is stored, and the user can use the information as needed.

【0125】叉、情報暗号化用秘密鍵の生成機能を有
し、情報暗号化用秘密鍵を用いた情報配送ができように
したシステムとなる。
Further, the system has a function of generating a secret key for information encryption, and can deliver information using the secret key for information encryption.

【0126】叉、本発明の第3、第4実施例によれば、
証拠能力を有する通信履歴を必要に応じて提示できるよ
うにしたシステムとなる。
According to the third and fourth embodiments of the present invention,
This is a system that can present a communication history having an evidential ability as necessary.

【0127】叉、不正な利用者であることを検出した際
には直ちにプロトコルの実行を中止して、不正な利用者
が要求した情報を不正に獲得してしまうことがないよう
にしたシステムとなる。
[0127] Further, when a system detects that the user is an unauthorized user, the execution of the protocol is immediately stopped to prevent the information requested by the unauthorized user from being illegally obtained. Become.

【0128】叉、裁判所等の中立な調停機関により、証
拠能力を有する通信履歴についてその正当性を検査し、
情報提供者と利用者のどちらの主張が正当であるのかを
判定することができるようにしたシステムとなる。
Also, a neutral arbitration body such as a court examines the validity of the communication history having evidential ability,
This is a system that can determine which of the information provider and the user is valid.

【0129】次に本発明の第5実施例について説明す
る。
Next, a fifth embodiment of the present invention will be described.

【0130】図13は本発明の第5実施例における情報
配送システムの構成を示すブロック図であり、10は情
報提供者に対して情報の配送を必要とする利用者(端
末)を示し、100は通信回線30を制御する通信制御
手段、101はセンタが作成し利用者の秘密情報を蓄積
しておく利用者秘密情報蓄積手段、105は共通鍵暗号
方法(例えば、DES,FEAL)による暗号通信を行
うための共通鍵暗号手段、107は公開鍵暗号方法(例
えば、RSA)による暗号通信を行うための公開鍵暗号
手段、109は情報提供者から配送された情報を蓄積す
る情報蓄積手段、102は利用者が必要な情報を一時的
に蓄積する一時メモリ、103は利用者が乱数を生成す
るための乱数発生手段、104は必要な演算を行う演算
手段、106は利用者が要求した情報を出力もしくは利
用する情報出力/利用手段である。
FIG. 13 is a block diagram showing the configuration of an information delivery system according to the fifth embodiment of the present invention. Reference numeral 10 denotes a user (terminal) that needs to deliver information to an information provider; Is a communication control means for controlling the communication line 30, 101 is a user secret information storage means which is created by the center and stores user secret information, and 105 is a cryptographic communication by a common key encryption method (for example, DES, FEAL). , A public key encryption unit for performing encrypted communication by a public key encryption method (for example, RSA), an information storage unit for storing information delivered from an information provider, and Is a temporary memory for temporarily storing information required by the user, 103 is a random number generating means for the user to generate random numbers, 104 is a calculating means for performing necessary calculations, and 106 is a use means. There is information output / utilization means for outputting or utilizing the requested information.

【0131】また、20は情報を提供する情報提供者
(端末)を示し、200は通信回線30を制御する通信
制御手段、201はセンタが作成した情報提供者の秘密
情報を蓄積しておく情報提供者秘密情報蓄積手段、20
5は共通鍵暗号方法による暗号通信を行うための共通鍵
暗号手段、210は公開鍵暗号方法による暗号通信を行
うための公開鍵暗号手段、202は提供する情報が蓄積
してある情報データベース、203は情報提供者が必要
な情報を一時的に蓄積する一時メモリ、209は情報提
供者が乱数を生成するための乱数発生手段、204は必
要な演算を行う演算手段、206はFiat Shamir 法に基
づいて通信系列の正当性を検証する検証手段である。3
0は利用者と情報提供者とを通信で接続する通信回線を
表す。
Reference numeral 20 denotes an information provider (terminal) for providing information; 200, communication control means for controlling the communication line 30; 201, information for storing secret information of the information provider created by the center; Provider secret information storage means, 20
Reference numeral 5 denotes a common key encryption unit for performing encrypted communication by a common key encryption method, 210 denotes a public key encryption unit for performing encryption communication by a public key encryption method, 202 denotes an information database storing information to be provided, 203 Is a temporary memory for temporarily storing information required by the information provider, 209 is a random number generating means for the information provider to generate random numbers, 204 is an arithmetic means for performing necessary calculations, and 206 is based on the Fiat Shamir method. Verification means for verifying the validity of the communication sequence. 3
0 represents a communication line that connects the user and the information provider by communication.

【0132】以下、図14のフローチャートにしたがっ
て情報配送ステップ、配送確認ステップ、情報取り出し
ステップの動作手順を説明する。
The operation procedure of the information delivery step, delivery confirmation step, and information retrieval step will be described below with reference to the flowchart of FIG.

【0133】まず基準段階として、信頼できるセンタが
各利用者ごとにp1,q1,I,s,p2,q2,P
U,SUを設定し、このうちN1,N2,I,PUを利
用者の公開情報(公開鍵)として公開し、s,SUを利
用者の秘密情報(秘密鍵)として利用者秘密情報蓄積手
段101に蓄積して利用者に秘密裏に配布する。ここ
で、(p1,q1)と(p2,q2)の各組はそれぞれ
互いに異なる大きな素数の組になっており、N1=p1
×q1,N2=p2×q2である。また、I=s2(mod
N1),PU×SU=1(mod(p2-1)(q2-1) )が成立
している。なお、p1=p2,q1=q2としてもよ
い。
First, as a reference stage, a reliable center is assigned to each user by p1, q1, I, s, p2, q2, P
U and SU are set, N1, N2, I, and PU are disclosed as user's public information (public key), and s and SU are user's secret information storage means as user's secret information (secret key). It is stored in the server 101 and distributed to users in secret. Here, each set of (p1, q1) and (p2, q2) is a set of mutually different large prime numbers, and N1 = p1
× q1, N2 = p2 × q2. Also, I = s 2 (mod
N1), PU × SU = 1 (mod (p2-1) (q2-1)). Note that p1 = p2 and q1 = q2 may be set.

【0134】さらに、各情報提供者ごとにp,q,P
C,SCを設定し、このうちN,PCを情報提供者の公
開情報(公開鍵)として公開し、SCを情報提供者の秘
密情報(秘密鍵)として情報提供者秘密情報蓄積手段2
01に蓄積して情報提供者に秘密裏に配布する。ここ
で、p,qは互いに異なる大きな素数であり、N=pq
である。また、PC×SC=1(mod(p-1)(q-1) )が成
立している。
Furthermore, p, q, P for each information provider
C and SC are set, of which N and PC are made public as the information provider's public information (public key), and SC is used as the information provider's secret information (secret key).
01 and secretly distributed to the information provider. Here, p and q are large prime numbers different from each other, and N = pq
It is. Also, PC × SC = 1 (mod (p−1) (q−1)) holds.

【0135】(1)情報配送ステップ 情報提供者は、乱数発生手段209によりgビットサイ
ズの情報暗号化用秘密鍵Wi (i=1,2,…,g)を
生成して一時メモリ203に蓄積する(S201)。こ
こで、一般にgの値は共通鍵暗号手段105,205で
使用する秘密鍵の鍵長と等しいかそれ以上ある。なお、
ここでは情報暗号化用秘密鍵Wi (i=1,2,…,
g)について乱数発生手段209により生成している
が、実際には関数を使用して生成したり、あるいは特定
の秘密鍵を一意的に使用するなどしても構わない。
(1) Information Delivery Step The information provider generates a g-bit sized information encryption private key W i (i = 1, 2,..., G) by the random number generation means 209 and stores it in the temporary memory 203. It accumulates (S201). Here, the value of g is generally equal to or longer than the key length of the secret key used in the common key encryption means 105, 205. In addition,
Here, the information encryption secret key W i (i = 1, 2,...,
Although g) is generated by the random number generation means 209, it may actually be generated using a function or a specific secret key may be used uniquely.

【0136】次に、利用者に配送する情報Mを情報デー
タベース202から取り出し(S202)、情報暗号化
用秘密鍵W=(W1,W2,…,Wg)を秘密鍵として
共通鍵暗号手段205により暗号文C=Ew (M)に暗
号化した後(S203)、利用者に暗号文Cを通信回線
30(および通信制御手段100,200)を介して送
信する(S204)。
Next, the information M to be delivered to the user is extracted from the information database 202 (S202), and the secret key for information encryption W = (W1, W2,..., Wg) is used as a secret key by the common key encryption means 205. After encrypting the ciphertext C = Ew (M) (S203), the ciphertext C is transmitted to the user via the communication line 30 (and the communication control means 100 and 200) (S204).

【0137】利用者は、暗号文Cを情報蓄積手段109
に受信/蓄積した後、受信した旨を通信回線30を介し
て情報提供者に通知する(S205)。
The user stores the ciphertext C in the information storage means 109
Then, the information provider is notified of the reception via the communication line 30 (S205).

【0138】(2)配送確認ステップ 利用者は、乱数発生手段103によりg個の乱数R
i (i=1,2,…,g)を生成し、一時メモリ102
に蓄積した後(S206)、それぞれの乱数について演
算手段104により初期応答文Xi =Ri 2 (mod N
1)(i=1,2,…,g)を計算し(S207)、情
報提供者の公開鍵PCを用いて公開鍵暗号手段107に
より暗号化初期応答文CXi =Xi PC(mod N)(i=
1,2,…,g)に暗号化して(S208)、通信回線
30を介して情報提供者に送信する(S209)。
(2) Delivery Confirmation Step The user uses the random number generation means 103 to generate g random numbers R
i (i = 1, 2,..., g) are generated and the temporary memory 102
After that, the initial response sentence X i = R i 2 (mod N
1) (i = 1, 2,..., G) is calculated (S207), and the encrypted initial response text CX i = X i PC (mod N ) (I =
, G) (S208) and transmitted to the information provider via the communication line 30 (S209).

【0139】情報提供者は、情報提供者秘密情報蓄積手
段201に蓄積された秘密鍵SCを用いて公開鍵暗号手
段210により受信した暗号化初期応答文CXi を初期
応答文Xi =CXi SC(mod N)(i=1,2,…,
g)に復号した後、一時メモリ203に蓄積する(S2
10)。
[0139] Information providers, initial response sentence encryption initial response sentence CX i received by the public key encryption unit 210 using the secret key SC accumulated in the information provider secret information storage unit 201 X i = CX i SC (mod N) (i = 1, 2,...,
g), and is stored in the temporary memory 203 (S2).
10).

【0140】次に、一時メモリ203に蓄積された情報
暗号化用秘密鍵Wi (i=1,2,…,g)を秘密鍵配
送文Vi および検査文ei (i=1,2,…,g)とし
て一時メモリ203に蓄積した後(S211)、利用者
の公開鍵PUを用いて公開鍵暗号手段210により暗号
化検査文Ce=(Ce1,Ce2,…,Ce|N2|)
=(e1 ‖e2 ‖…‖eg )PU(mod N2)に暗号化し
て(S212)、通信回線30を介して送信する(S2
13)。ここで、|N2|はN2のビット数を表す。
Next, the secret key for information encryption Wi (i = 1, 2,..., G) stored in the temporary memory 203 is transferred to the secret key delivery statement Vi and the check statement ei (i = 1, 2,. g) is stored in the temporary memory 203 (S211), and the encryption check sentence Ce = (Ce1, Ce2,..., Ce | N2 |) by the public key encryption means 210 using the user's public key PU.
= (E1‖e2‖... ‖Eg) PU (mod N2) is encrypted (S212) and transmitted via the communication line 30 (S2).
13). Here, | N2 | represents the number of bits of N2.

【0141】利用者は、利用者秘密情報蓄積手段101
に蓄積された秘密鍵SUを用いて公開鍵暗号手段107
により受信した暗号化検査文Cei (i=1,2,…,
g)を検査文e=(e1,e2,…,eg)=(Ce1
‖Ce2 ‖…‖Ce|N2|)SU(mod N2)に復号した
後、一時メモリ102に蓄積する(S214)。
The user can store the user secret information storage means 101
Using the private key SU stored in the public key encryption unit 107
, The encrypted check sentence Cei (i = 1, 2,...,
g) to the check sentence e = (e1, e2,..., eg) = (Ce1
{Ce2}... {Ce | N2 |) SU (mod N2), and then store it in the temporary memory 102 (S214).

【0142】次に、演算手段104において検査文ei
を用いて、一時メモリ102に蓄積された乱数Ri と利
用者秘密情報蓄積手段101に蓄積された利用者の秘密
情報sとからei =0ならばYi =Ri を、ei =1な
らばYi =sRi (mod N1)をそれぞれのビットiに
ついて計算し(S215)、応答文Yi (i=1,2,
…,g)として情報提供者に通信回線30を介して送信
する(S216)。
Next, the arithmetic unit 104 checks the check sentence ei.
From the random number Ri stored in the temporary memory 102 and the user secret information s stored in the user secret information storage means 101, if ei = 0, Yi = Ri, and if ei = 1, Yi = Ri. sRi (mod N1) is calculated for each bit i (S215), and the response sentence Yi (i = 1, 2, 2) is calculated.
, G) to the information provider via the communication line 30 (S216).

【0143】情報提供者は、受信した応答文Yi (i=
1,2,…,g)を一時メモリ203に蓄積した(S2
17)後、検証手段206において利用者の公開情報I
および一時メモリ203に蓄積された初期応答文Xi と
応答文Yi と検査文ei とから、ei =0ならば検証式
Yi 2 =Xi (mod N1)を、ei =1ならば検証式Y
i 2 =Xi ×I(mod N1)を満たすかどうかをそれぞ
れのビットiについて検証する(S218)。この検証
に失敗した場合には利用者は不正であるとみなしてそれ
以降の利用を禁止し(S219A)、そうでなければ正
常に終了する(S219B)。
The information provider receives the response text Yi (i =
, G) are stored in the temporary memory 203 (S2
17) After that, the public information I of the user is
From the initial response sentence Xi, the response sentence Yi, and the check sentence ei stored in the temporary memory 203, the verification expression Yi 2 = Xi (mod N1) if ei = 0, and the verification expression Y if ei = 1.
It is verified whether each bit i satisfies i 2 = Xi × I (mod N1) (S218). If the verification fails, the user is considered to be illegal and the subsequent use is prohibited (S219A), otherwise the process ends normally (S219B).

【0144】(3)情報取り出しステップ 利用者は、一時メモリ102に蓄積された検査文e
i (i=1,2,…,g)から演算手段104において
秘密鍵配送文Vi および情報暗号化用秘密鍵Wi (i=
1,2,…,g)を取り出し、情報蓄積手段109に蓄
積する(S220)。
(3) Information Retrieval Step The user can check the check sentence e stored in the temporary memory 102.
i (i = 1,2, ..., g) a secret key delivery statements in the operation unit 104 from V i and information encrypted secret key W i (i =
, G) are taken out and stored in the information storage means 109 (S220).

【0145】最後に、情報蓄積手段109に蓄積された
情報暗号化用秘密鍵W=(W1,W2,…,Wg)を秘
密鍵として、共通鍵暗号手段105により情報蓄積手段
109に蓄積された暗号文Cを復号し(S221)、要
求した情報M=Dw (C)を情報出力/利用手段106
より獲得することができる(S222)。
Finally, the secret key W = (W1, W2,..., Wg) for information encryption stored in the information storage means 109 is used as a secret key and stored in the information storage means 109 by the common key encryption means 105. The ciphertext C is decrypted (S221), and the requested information M = Dw (C) is output to the information output / use unit 106.
More can be obtained (S222).

【0146】上記の情報配送方法を用いれば、情報Mは
初めに暗号文Cに暗号化されて利用者に送信されるた
め、暗号文Cを利用者が受信した時点では情報Mを獲得
されることはない。そして、ゼロ知識証明プロトコルが
正常に終了した時点で、ゼロ知識証明プロトコルによる
利用者認証が正常に行われたことのほかに、検査文ei
(i=1,2,…,g)を利用者が正常に受信し、適切
な処理を行っていることがわかる。
If the above information delivery method is used, the information M is first encrypted into the cipher text C and transmitted to the user, so that the information M is obtained when the user receives the cipher text C. Never. When the zero-knowledge proof protocol ends normally, the user sentence is normally verified by the zero-knowledge proof protocol, and the check sentence e i
It can be seen that the user has received (i = 1, 2,..., G) normally and is performing appropriate processing.

【0147】また、利用者は検査文ei (i=1,2,
…,g)を正しく受信していれば情報暗号化用秘密鍵W
i (i=1,2,…,g)を生成し、利用者が要求した
情報の暗号文Cを復号して情報Mを獲得することができ
るため、検査文ei (i=1,2,…,g)を利用者が
正常に受信したことと利用者が要求した情報を正常に受
信したこととは同値となる。したがって、情報提供者は
要求された情報を正確かつ確実に利用者に配送したこと
を確認できる。
Further, the user can check the check sentence e i (i = 1, 2, 2, 3)
.., G) are correctly received, the information encryption private key W
i (i = 1,2, ..., g) to generate, it is possible to acquire information M by decrypting the ciphertext C of information requested by the user, the test statement e i (i = 1,2 ,..., G) are equivalent to the fact that the user has normally received the information requested by the user. Therefore, the information provider can confirm that the requested information has been accurately and reliably delivered to the user.

【0148】なお、上記の説明において公開鍵暗号方法
を利用して暗号化/復号を行っている部分については、
共通鍵暗号方法を利用しても当然構わない。また、上記
の説明ではFiat Shamir 法をもとに説明したが、本方法
は拡張Fiat Shamir 法(太田−岡本「Fiat-Shamir 法の
高次への拡張」、電子情報通信学会技術研究報告ISE
C88−13)を始めとする、素因数分解困難性あるい
は離散対数問題等の困難性に安全性の根拠を置く全ての
ゼロ知識対話証明プロトコルに応用が可能である。
In the above description, the part which performs encryption / decryption using the public key encryption method is described below.
Of course, a common key encryption method may be used. Although the above description is based on the Fiat Shamir method, the present method is based on the extended Fiat Shamir method (Ota-Okamoto, "Extension of Fiat-Shamir method to higher order", IEICE Technical Report ISE).
The present invention can be applied to any zero-knowledge interactive proof protocol based on security such as C88-13) or other difficulties such as the difficulty of factorization or the discrete logarithm problem.

【0149】次に、本発明の第6実施例について説明す
る。
Next, a sixth embodiment of the present invention will be described.

【0150】図15は本発明の第6の実施例における情
報配送システムの構成を示すブロック図であり、システ
ム構成は情報提供者(端末)20の情報提供者秘密情報
蓄積手段201が必要ないことを除き、第5実施例の構
成と同様である。
FIG. 15 is a block diagram showing the configuration of an information delivery system according to the sixth embodiment of the present invention. The system configuration is such that the information provider secret information storage means 201 of the information provider (terminal) 20 is not required. Except for this, the configuration is the same as that of the fifth embodiment.

【0151】以下、図16のフローチャートにしたがっ
て情報配送ステップ、配送確認ステップ、情報取り出し
ステップの動作手順を説明する。
The operation procedure of the information delivery step, delivery confirmation step, and information retrieval step will be described below with reference to the flowchart of FIG.

【0152】まず、準備段階として、信頼できるセンタ
が各利用者ごとにp1,q1,I,s,p2,q2,P
U,SUを設定し、このうちN1,N2,I,PUを利
用者の公開情報(公開鍵)として公開し、s,SUを利
用者の秘密情報(秘密鍵)として利用者秘密情報蓄積手
段101に蓄積して利用者に秘密裏に配布する。ここ
で、(p1,q1)と(p2,q2)の各組はそれぞれ
互いに異なる大きな素数の組になっており、N1=p1
×q1,N2=p2×q2である。また、I=s2 (mo
d N1),PU×SU=1(mod(p2-1)(q2-1) )が成立
している。なお、p1=p2,q1=q2としてもよ
い。
First, as a preparatory stage, a reliable center establishes p1, q1, I, s, p2, q2, P for each user.
U and SU are set, N1, N2, I, and PU are disclosed as user's public information (public key), and s and SU are user's secret information storage means as user's secret information (secret key). It is stored in the server 101 and distributed to users in secret. Here, each set of (p1, q1) and (p2, q2) is a set of mutually different large prime numbers, and N1 = p1
× q1, N2 = p2 × q2. Also, I = s 2 (mo
d N1), PU × SU = 1 (mod (p2-1) (q2-1)). Note that p1 = p2 and q1 = q2 may be set.

【0153】(1)情報配送ステップ 第5実施例と同様である(S231〜235)。 (2)配送確認ステップ 利用者は、乱数発生手段103により|N2|個の乱数
i (i=1,2,…,|N2|)を生成し、一時メモ
リ102に蓄積した後(S236)、それぞれの乱数に
ついて演算手段104により初期応答文Xi =R
i 2 (mod N1)(i=1,2,…,|N2|)を計算
し(S237)、通信回線30を介して情報提供者に送
信する。(S238)。ここで、|N2|はN2のビッ
ト数を表す。
(1) Information distribution step This is the same as the fifth embodiment (S231 to 235). (2) Delivery Confirmation Step The user generates | N2 | random numbers R i (i = 1, 2,..., | N2 |) by the random number generation means 103 and stores them in the temporary memory 102 (S236). , The initial response sentence X i = R
i 2 (mod N1) (i = 1, 2,..., | N2 |) is calculated (S237), and transmitted to the information provider via the communication line 30. (S238). Here, | N2 | represents the number of bits of N2.

【0154】情報提供者は、受信した初期応答文Xi
(i=1,2,…,|N2|)を一時メモリ203に蓄
積する(S239)。次に、一時メモリ203に蓄積さ
れた情報暗号化用秘密鍵Wi を秘密鍵配送文Vi (i=
1,2,…,g)として利用者の公開鍵PUを用いて公
開鍵暗号手段210により暗号化し、検査文e=(e
1,e2,…,e|N2|)=(V1 ‖V2 ‖…‖Vg
)PU(mod N2)を生成した後、一時メモリ203に
蓄積する(S240)。その後、検査文ei (i=1,
2,…,|N2|)を通信回線30を介して送信する
(S241)。
The information provider sends the received initial response sentence Xi
(I = 1, 2,..., | N2 |) are stored in the temporary memory 203 (S239). Next, the secret key for information encryption Wi stored in the temporary memory 203 is stored in the secret key delivery statement Vi (i =
.., G) are encrypted by the public key encryption means 210 using the user's public key PU, and the check sentence e = (e
, E | N2 |) = (V12V2 =... ‖Vg
) After generating the PU (mod N2), the PU (mod N2) is stored in the temporary memory 203 (S240). Then, check sentence ei (i = 1,
, | N2 |) are transmitted via the communication line 30 (S241).

【0155】利用者は、受信した検査文ei (i=1,
2,…,|N2|)を一時メモリ102に蓄積した(S
242)後、演算手段104において検査文ei を用い
て、一時メモリ102に蓄積された乱数Ri と利用者秘
密情報蓄積手段101に蓄積された利用者秘密情報sと
からei =0ならばYi =Ri を、ei =1ならばYi
=sRi (mod N1)をそれぞれのビットiについて計
算し(S243)、応答文Yi (i=1,2,…,g)
として情報提供者に通信回線30を介して送信する(S
244)。
The user checks the received check sentence ei (i = 1,
, | N2 |) are stored in the temporary memory 102 (S
242) Thereafter, the arithmetic means 104 uses the check sentence ei to determine the random number Ri stored in the temporary memory 102 and the user secret information s stored in the user secret information storage means 101, and if ei = 0, Yi = Ri is defined as Yi if ei = 1.
= SRi (mod N1) is calculated for each bit i (S243), and the response sentence Yi (i = 1, 2,..., G)
To the information provider via the communication line 30 (S
244).

【0156】情報提供者は、受信した応答文Yi (i=
1,2,…,|N2|)を一時メモリ203に蓄積した
(S245)後、検証手段206において利用者の公開
情報Iおよび一時メモリ203に蓄積された初期応答文
Xi と応答文Yi と検査文ei とから、ei =0ならば
検証式Yi 2 =Xi (mod N1)を、ei =1ならば検
証式Yi 2 =Xi ×I(mod N1)を満たすかどうかを
それぞれのビットiについて検証する(S246)。こ
の検証に失敗した場合には利用者は不正であるとみなし
てそれ以降の利用を禁止し(S247A)、そうでなけ
れば正常に終了する(S247B)。
The information provider receives the response sentence Yi (i =
, | N2 |) are stored in the temporary memory 203 (S245), and the verification means 206 examines the public information I of the user and the initial response sentence Xi and the response sentence Yi stored in the temporary memory 203. From the statement ei, it is verified whether each bit i satisfies the verification formula Yi 2 = Xi (mod N1) if ei = 0, and whether the verification formula Yi 2 = Xi × I (mod N1) if ei = 1. (S246). If the verification fails, the user is considered to be illegal and the subsequent use is prohibited (S247A), otherwise the process ends normally (S247B).

【0157】(3)情報取り出しステップ 利用者は、一時メモリ102に蓄積された検査文ei
(i=1,2,…,|N2|)を利用者秘密情報蓄積手
段101に蓄積された秘密鍵SUを用いて公開鍵暗号手
段107により秘密鍵配送文V=(V1 ,V2 ,…,V
g )=(e1 ‖e2 ‖…‖e|N2|)SU(mod N2)に
復号した(S248)後、演算手段104において情報
暗号化用秘密鍵Wi (i=1,2,…,g)を取り出
し、情報蓄積手段109に蓄積する(S249)。
(3) Information Retrieval Step The user can check the check text ei stored in the temporary memory 102.
(I = 1, 2,..., | N2 |) by the public key encryption means 107 using the secret key SU stored in the user secret information storage means 101 by the secret key delivery statement V = (V1, V2,. V
g) = (e1‖e2‖... ‖e | N2 |) SU (mod N2), and then decrypted by the arithmetic means 104 (S248), and then the information encrypting secret key Wi (i = 1, 2,. Is taken out and stored in the information storage means 109 (S249).

【0158】最後に、情報蓄積手段109に蓄積された
情報暗号化用秘密鍵W=(W1,W2,…,Wg)を秘
密鍵として、共通鍵暗号手段105により情報蓄積手段
109に蓄積された暗号文Cを復号し(S250)、要
求した情報M=Dw (C)を情報出力/利用手段106
より獲得することができる(S251)。
Finally, the secret key for information encryption W = (W1, W2,..., Wg) stored in the information storage means 109 is stored in the information storage means 109 by the common key encryption means 105 as a secret key. The ciphertext C is decrypted (S250), and the requested information M = Dw (C) is output to the information output / use unit 106.
More can be obtained (S251).

【0159】上記の情報配送方法を用いれば、第5実施
例と全く同等の効果が得られる。また第5実施例と比較
して、一時メモリ等に蓄積しなければならない情報量の
サイズは大きくなるが、処理速度の遅い公開鍵暗号方法
を利用する回数が1回ですむため、処理時間の短縮化が
期待できる。
When the above information delivery method is used, the same effects as in the fifth embodiment can be obtained. Although the amount of information that must be stored in a temporary memory or the like is larger than that of the fifth embodiment, the number of times of using the public key encryption method having a low processing speed is only one, so that the processing time is reduced. Shortening can be expected.

【0160】なお、上記の説明において公開鍵暗号方法
を利用して暗号化/復号を行っている部分については共
通鍵暗号方法を利用しても当然構わない。また、上記の
説明ではFiat Shamir 法をもとに説明したが、本方法は
拡張Fiat Shamir 法(太田−岡本「Fiat-Shamir 法の高
次への拡張」、電子情報通信学会技術研究報告ISEC
88−13)を始めとする、素因数分解困難性あるいは
離散対数問題等の困難性に安全性の根拠を置く全てのゼ
ロ知識対話証明プロトコルに応用が可能である。
In the above description, the common key encryption method may be used for the portion where encryption / decryption is performed using the public key encryption method. Although the above description has been made based on the Fiat Shamir method, this method is based on the extended Fiat Shamir method (Ota-Okamoto, "Extension of Fiat-Shamir method to higher order", IEICE Technical Report ISEC).
It can be applied to all zero-knowledge interactive proof protocols based on security such as difficulty of factorization or discrete logarithm problem such as 88-13).

【0161】次に、本発明の第7実施例について説明す
る。
Next, a seventh embodiment of the present invention will be described.

【0162】図17は本発明の第7の実施例における情
報配送システムの構成を示すブロック図であり、10は
利用者(端末)を示し、公開鍵暗号手段107が必要な
いことを除いて100から109までの構成手段は第6
実施例と同様であり、110は情報配送要求文を作成す
る入力手段である。20は情報提供者(端末)を示し、
公開鍵暗号手段210が必要ないことを除いて200か
ら206までと209の構成手段は第6実施例と同様で
あり、208は後日、情報を利用者に配送した事実を証
明する証拠としての通信履歴Hを記録管理する通信履歴
ファイルである。30は利用者と情報提供者とを通信で
接続する通信回線を表す。40は後日、情報提供者が通
信履歴ファイル208に記録管理している通信履歴Hに
ついて、中立的立場によりその通信履歴Hの正当性を判
定する調停者(端末)を表し、402は調停者が必要な
情報を一時的に蓄積する一時メモリ、401は必要な演
算を行う演算手段、403は正当性の判定を依頼された
通信履歴Hについてその正当性を検証する検証手段であ
る。
FIG. 17 is a block diagram showing the configuration of an information delivery system according to the seventh embodiment of the present invention. Reference numeral 10 denotes a user (terminal), which is 100 except that the public key encryption means 107 is not required. The configuration means from to
As in the embodiment, reference numeral 110 denotes an input unit for creating an information delivery request statement. Reference numeral 20 denotes an information provider (terminal),
The components of 200 to 206 and 209 are the same as those of the sixth embodiment except that the public key encryption unit 210 is not required, and 208 is communication at a later date as proof that the information has been delivered to the user. This is a communication history file for recording and managing the history H. Reference numeral 30 denotes a communication line for connecting a user and an information provider by communication. Reference numeral 40 denotes an arbitrator (terminal) that determines the validity of the communication history H from a neutral standpoint with respect to the communication history H recorded and managed by the information provider in the communication history file 208 at a later date. Temporary memory for temporarily storing necessary information, 401 is an operation unit for performing necessary operations, and 403 is a verification unit for verifying the validity of the communication history H requested to be determined.

【0163】以下、図18のフローチャートにしたがっ
て情報配送ステップ、配送確認ステップ、情報取り出し
ステップの動作手順を、また図19のフローチャートに
したがって調停での動作手順を説明する。
The operation procedure of the information delivery step, the delivery confirmation step, and the information retrieval step will be described below with reference to the flowchart of FIG. 18, and the operation procedure of the arbitration will be described with reference to the flowchart of FIG.

【0164】まず、準備段階として、信頼できるセンタ
が各利用者ごとにp1,q1,I,sを設定し、このう
ちN1とIを利用者の公開情報として公開し、sを利用
者の秘密情報として利用者秘密情報蓄積手段101に蓄
積して利用者に秘密裏に配布する。ここで、p1とq1
は互いに異なる大きな素数を表し、N1=p1×q1で
ある。また、I=s2 (mod N1)が成立している。
First, as a preparation stage, a reliable center sets p1, q1, I, and s for each user, among which N1 and I are disclosed as public information of the user, and s is a secret of the user. The information is stored in the user secret information storage unit 101 and distributed to the user in secret. Here, p1 and q1
Represents large prime numbers different from each other, and N1 = p1 × q1. Also, I = s 2 (mod N1) holds.

【0165】(1)情報配送ステップ 利用者は、情報提供者に提供して欲しい情報について入
力手段110から情報配送要求文RSを作成し、一時メ
モリ102に蓄積した(S261)後、通信回線30を
介して情報提供者に送信する(S262)。ここで、情
報配送要求文RSは、例えば図20に示すように要求日
時、利用者識別番号、要求情報名、要求情報コード等か
ら構成される。なお、図20は情報配送要求文RSの構
成形態を表している。
(1) Information Delivery Step The user creates an information delivery request sentence RS from the input means 110 for information desired to be provided to the information provider and stores it in the temporary memory 102 (S261). (S262). Here, the information delivery request statement RS includes, for example, a request date and time, a user identification number, a request information name, a request information code, and the like as shown in FIG. FIG. 20 shows the configuration of the information delivery request statement RS.

【0166】ここでは情報配送要求文RSを利用者より
情報提供者に送信しているが、実際には要求情報コード
のみを利用者が情報提供者に送信するなどして、情報提
供者と利用者がそれぞれ独自に同じ情報配送要求文RS
を作成するようにしてもよい。
Here, the information delivery request statement RS is transmitted from the user to the information provider. However, in practice, the user transmits only the requested information code to the information provider, and the information delivery request statement RS is transmitted to the information provider. The same information delivery request statement RS
May be created.

【0167】情報提供者は、乱数発生手段209により
乱数文Zをランダムに生成し(S263)、情報配送要
求文RSと生成した乱数文Zとを一時メモリ203に蓄
積した(S264)後、情報配送要求文RSと乱数文Z
とから演算手段204中の第一の一方向性ランダムハッ
シュ関数f1によりgビットサイズの情報暗号化用秘密
鍵W=(W1,W2,…,Wg)=f1(RS,Z)を
生成して一時メモリ203に蓄積する(S265)。こ
こで、一般にgの値は共通鍵暗号手段105,205で
使用する秘密鍵の鍵長と等しいかそれ以上である。次
に、情報配送要求文RS中の要求情報コードをもとに、
そのコードに対応する情報Mを情報データベース202
から取り出し(S266)、情報暗号化用秘密鍵W=
(W1,W2,…,Wg)を秘密鍵として共通鍵暗号手
段205により暗号文C=Ew (M)に暗号化した(S
267)後、利用者に暗号文Cを通信回線30を介して
送信する(S268)。
The information provider randomly generates a random number sentence Z by the random number generation means 209 (S263), and stores the information delivery request sentence RS and the generated random number sentence Z in the temporary memory 203 (S264). Delivery request statement RS and random number statement Z
Then, a g-bit sized information encryption secret key W = (W1, W2,..., Wg) = f1 (RS, Z) is generated by the first one-way random hash function f1 in the arithmetic means 204. It is stored in the temporary memory 203 (S265). Here, the value of g is generally equal to or longer than the key length of the secret key used in the common key encryption means 105, 205. Next, based on the request information code in the information delivery request statement RS,
The information M corresponding to the code is stored in the information database 202.
(S266), and the information encryption secret key W =
(W1, W2,..., Wg) are encrypted as a secret key by the common key encryption unit 205 into the ciphertext C = Ew (M) (S
267) Then, the ciphertext C is transmitted to the user via the communication line 30 (S268).

【0168】利用者は、暗号文Cを情報蓄積手段109
に受信/蓄積した後、受信した旨を通信回線30を介し
て情報提供者に通知する(S269)。
The user stores the cipher text C in the information storage means 109
After receiving / accumulating the information, the information provider is notified of the reception via the communication line 30 (S269).

【0169】(2)配送確認ステップ 利用者は、乱数発生手段103によりg個の乱数R
i (i=1,2,…,g)を生成した後一時メモリ10
2に蓄積し(S270)、それぞれの乱数について演算
手段104により初期応答文Xi =Ri 2 (mod N1)
(i=1,2,…,g)を計算した後一時メモリ102
に蓄積し(S271)、初期応答文Xi (i=1,2,
…,g)を通信回線30を介して情報提供者に送信する
(S272)。
(2) Delivery Confirmation Step The user uses the random number generation means 103 to generate g random numbers R
i (i = 1, 2,..., g) and then the temporary memory 10
2 (S270), and the initial response sentence X i = R i 2 (mod N1) for each random number by the arithmetic means 104.
(I = 1, 2,..., G) and then the temporary memory 102
(S271), and the initial response sentence X i (i = 1, 2, 2)
, G) are transmitted to the information provider via the communication line 30 (S272).

【0170】情報提供者は、受信した初期応答文Xi
(i=1,2,…,g)を一時メモリ203に蓄積した
(S273)後、一時メモリ203に蓄積された情報配
送要求文RSと初期応答文Xi (i=1,2,…,g)
とから演算手段204中の第二の一方向性ランダムハッ
シュ関数f2によりgビットサイズの鍵暗号化用秘密鍵
K=(K1,K2,…,Kg)=f2(RS,(X1 ‖
X2 ‖…‖Xg ))を生成し、一時メモリ203に蓄積
する(S274)。なお、f1とf2は同じ関数でも当
然構わない。
The information provider receives the initial response sentence Xi.
After storing (i = 1, 2,..., G) in the temporary memory 203 (S273), the information delivery request sentence RS and the initial response sentence Xi (i = 1, 2,. )
From the above, the secret key K for key encryption having a g-bit size is K = (K1, K2,..., Kg) = f2 (RS, (X1‖) by the second one-way random hash function f2 in the arithmetic means 204.
X2 ‖... ‖Xg)) is generated and stored in the temporary memory 203 (S274). Note that f1 and f2 may be the same function.

【0171】次に、一時メモリ203に蓄積された情報
暗号化用秘密鍵Wi と鍵暗号化用秘密鍵Ki (i=1,
2,…,g)とから演算手段204中の第三の関数f3
により秘密鍵配送文Vi (i=1,2,…,g)を生成
し、検査文ei (i=1,2,…,g)として一時メモ
リ203に蓄積した(S275)後、利用者に検査文e
i (i=1,2,…,g)を通信回線30を介して送信
する(S276)。こ
Next, the secret key for information encryption Wi and the secret key for key encryption Ki stored in the temporary memory 203 (i = 1,
2,..., G) to calculate the third function f3
Generates a secret key delivery statement Vi (i = 1, 2,..., G) and accumulates it in the temporary memory 203 as a check statement ei (i = 1, 2,..., G) (S275). Check sentence e
i (i = 1, 2,..., g) are transmitted via the communication line 30 (S276). This

【外1】 利用者は、受信した検査文ei (i=1,2,…,g)
を一時メモリ102に蓄積した(S277)後、演算手
段104において検査文ei を用いて、一時メモリ10
2に蓄積された乱数Ri と利用者秘密情報蓄積手段10
1に蓄積された利用者の秘密情報sとからei =0なら
ばYi =Ri を、ei =1ならばYi =sRi (mod N
1)をそれぞれのビットiについて計算し(S27
8)、応答文Yi (i=1,2,…,g)として情報提
供者に通信回線30を介して送信する(S279)。
[Outside 1] The user checks the received inspection sentence ei (i = 1, 2,..., G)
Is stored in the temporary memory 102 (S277), and the arithmetic means 104 uses the check sentence ei to store the temporary
2 and the user secret information storage means 10
From the user's secret information s stored in 1, if ei = 0, Yi = Ri, and if ei = 1, Yi = sRi (mod N
1) is calculated for each bit i (S27).
8) A response sentence Yi (i = 1, 2,..., G) is transmitted to the information provider via the communication line 30 (S279).

【0172】情報提供者は、受信した応答文Yi (i=
1,2,…,g)を一時メモリ203に蓄積した(S2
80)後、検証手段206において利用者の公開情報I
および一時メモリ203に蓄積された初期応答文Xi と
応答文Yi と検査文ei とから、ei =0ならば検証式
Yi 2 =Xi (mod N1)を、ei =1ならば検証式Y
i 2 =Xi ×I(mod N1)を満たすかどうかをそれぞ
れのビットiについて検証する(S281)。この検証
に失敗した場合には利用者は不正であるとみなしてそれ
以降の利用を禁止し(S282)、成功した場合には図
21に示すように、一時メモリ203に蓄積された情報
配送要求文RS、乱数文Z、検査文ei、応答文Yi
(i=1,2,…,g)を通信履歴Hとして通信履歴フ
ァイル208に記録管理する(S283)。なお、図2
1は通信履歴Hの構成形態を示している。
The information provider receives the response sentence Yi (i =
, G) are stored in the temporary memory 203 (S2
80) Then, the public information I of the user is
From the initial response sentence Xi, the response sentence Yi, and the check sentence ei stored in the temporary memory 203, the verification expression Yi 2 = Xi (mod N1) if ei = 0, and the verification expression Y if ei = 1.
It is verified whether each bit i satisfies i 2 = Xi × I (mod N1) (S281). If the verification fails, the user is considered to be illegal and the subsequent use is prohibited (S282). If the verification succeeds, the information delivery request stored in the temporary memory 203 is stored as shown in FIG. Statement RS, random number statement Z, check statement ei, response statement Yi
(I = 1, 2,..., G) is recorded and managed in the communication history file 208 as the communication history H (S283). Note that FIG.
1 shows the configuration of the communication history H.

【0173】(3)情報取り出しステップ 利用者は、一時メモリ102に蓄積された情報配送要求
文RSと初期応答文Xi (i=1,2,…,g)とから
演算手段104中の第二の一方向性ランダムハッシュ関
数f2によりgビットサイズの鍵暗号化用秘密鍵K=
(K1,K2,…,Kg)=f2(RS,(X1 ‖X2
‖…‖Xg ))を生成し、一時メモリ102に蓄積する
(S284)。次に、一時メモリ102に蓄積された検
査文ei (i=1,2,…,g)から秘密鍵配送文Vi
(i=1,2,…,g)を生成し、生成した秘密鍵配送
文Vi と鍵暗号化用秘密鍵Ki (i=1,2,…,g)
とから演算手段104中の第三の関数f3の逆関数f
3′により情報暗号化用秘密鍵Wi (i=1,2,…,
g)を取り出し、情報蓄積手段109に蓄積する(S2
(3) Information Retrieval Step The user uses the information delivery request statement RS stored in the temporary memory 102 and the initial response statement Xi (i = 1, 2,..., G) The key encryption secret key K = g bits by the one-way random hash function f2
(K1, K2,..., Kg) = f2 (RS, (X1‖X2
... Xg)) is generated and stored in the temporary memory 102 (S284). Next, the secret key delivery sentence Vi is obtained from the check sentence ei (i = 1, 2,..., G) stored in the temporary memory 102.
(I = 1, 2,..., G), and the generated secret key delivery statement Vi and the secret key for key encryption Ki (i = 1, 2,..., G).
And the inverse function f of the third function f3 in the calculating means 104
3 ', the information encryption secret key Wi (i = 1, 2,...,
g) is taken out and stored in the information storage means 109 (S2).
8

【外2】 す。[Outside 2] You.

【0174】最後に、情報蓄積手段109に蓄積された
情報暗号化用秘密鍵W=(W1,W2,…,Wg)を秘
密鍵として共通鍵暗号手段105により情報蓄積手段1
09に蓄積された暗号文Cを復号し(S286)、要求
した情報M=Dw (C)を情報出力/利用手段106よ
り獲得することができる(S287)。
Finally, the common key encrypting means 105 uses the information encrypting secret key W = (W1, W2,..., Wg) stored in the information storing means 109 as a secret key.
The ciphertext C stored in 09 is decrypted (S286), and the requested information M = Dw (C) can be obtained from the information output / use means 106 (S287).

【0175】(4)調停 後日、利用者が要求した情報を受信していないと主張し
たり、情報配送の要求そのものを否定した場合には、情
報提供者は通信履歴ファイル208に記録管理された通
信履歴Hを提示し、調停者の一時メモリ402に蓄積す
る(S291)。
(4) After arbitration, if the user claims that the information requested by the user has not been received or denies the information delivery request itself, the information provider is recorded and managed in the communication history file 208. The communication history H is presented and stored in the arbitrator's temporary memory 402 (S291).

【0176】調停者は、演算手段401において利用者
の公開情報Iと一時メモリ402に蓄積された通信履歴
H中の検査文ei および応答文Yi から、ei =0なら
ば、Xi =Yi 2 (mod N1)をei =1ならばXi =
Yi 2 /I(mod N1)をそれぞれのビットiについて
計算し、一時メモリ402に蓄積する(S292)。
The arbitrator determines from the public information I of the user in the arithmetic means 401 and the inspection sentence ei and the response sentence Yi in the communication history H stored in the temporary memory 402 that if ei = 0, Xi = Yi 2 ( mod N1) is changed to Xi = if ei = 1.
Yi 2 / I (mod N1) is calculated for each bit i and stored in the temporary memory 402 (S292).

【0177】次に、一時メモリ402に蓄積された通信
履歴H中の配送要求文RSと乱数文Zとから演算手段4
01中の第一の一方向性ランダムハッシュ関数f1によ
り情報暗号化用秘密鍵W=(W1,W2,…,Wg)=
f1(RS,Z)を(S293)、また情報配送要求文
RSと計算結果Xi (i=1,2,…,g)とから演算
手段401中の第二の一方向性ランダムハッシュ関数f
2により鍵暗号化用秘密鍵K=(K1,K2,…,K
g)=f2(RS,(X1 ‖X2 ‖…‖Xg ))をそれ
ぞれ生成し、一時メモリ402に蓄積する(S29
4)。そして、情報暗号化用秘密鍵Wi と鍵暗号化用秘
密鍵Ki (i=1,2,…,g)とから演算手段401
中の第三の関数f3により秘密鍵配送文Vi (i=1,
2,…,g)を生成し(S295)、検査文ei (i=
1,2,…,g)として検証手段403において一時メ
モリ402に蓄積された通信履歴H中の検査文ei (i
=1,2,…,g)と一致するかどうかを検査する(S
296)。一致すれば、通信履歴Hの正当性が証明され
たことになり(S297)、利用者が情報配送を要求
し、かつ要求した情報を受信していることが保証され
る。そうでなければ通信履歴Hは無効とされる(S29
8)。
Next, the calculation means 4 is calculated from the delivery request statement RS and the random number statement Z in the communication history H stored in the temporary memory 402.
01, a secret key for information encryption W = (W1, W2,..., Wg) =
f1 (RS, Z) is calculated as (S293), and the second one-way random hash function f in the calculating means 401 is calculated from the information delivery request statement RS and the calculation result Xi (i = 1, 2,..., g).
2, the key encryption secret key K = (K1, K2,..., K
g) = f2 (RS, (X 1 ‖X 2 ‖... ‖X g)) are generated and stored in the temporary memory 402 (S29).
4). Then, the calculating means 401 is obtained from the secret key for information encryption Wi and the secret key for key encryption Ki (i = 1, 2,..., G).
The secret key distribution statement Vi (i = 1,
,..., G) are generated (S295), and the check sentence ei (i =
The check text ei (i) in the communication history H stored in the temporary memory 402 by the verification means 403 as 1, 2,.
= 1, 2,..., G) is checked (S
296). If they match, the validity of the communication history H is proved (S297), and it is guaranteed that the user has requested the information delivery and has received the requested information. Otherwise, the communication history H is invalidated (S29).
8).

【0178】上記の情報配送方式を用いれば、情報Mは
初めに暗号文Cに暗号化されて利用者に送信されるた
め、暗号文Cを利用者が受信した時点では情報Mを獲得
されることはない。そして、ゼロ知識証明プロトコルが
正常に終了した時点で、ゼロ知識証明プロトコルによる
利用者認証が正常に行われたことのほかに、検査文ei
(i=1,2,…,g)を利用者が正常に受信したこと
の証明となる。
If the information delivery method described above is used, the information M is first encrypted into the cipher text C and transmitted to the user. Therefore, when the user receives the cipher text C, the information M is obtained. Never. When the zero-knowledge proof protocol ends normally, the user sentence is normally verified by the zero-knowledge proof protocol, and the check sentence e i
(I = 1, 2,..., G) is proof that the user has received normally.

【0179】また、検査文ei (i=1,2,…,g)
の他は利用者自身が作成した情報配送要求文RSと初期
応答文Xi (i=1,2,…,g)とから情報暗号化用
秘密鍵Wi (i=1,2,…,g)を生成し、利用者が
暗号文Cを復号して要求した情報Mを獲得することがで
きるため、検査文ei (i=1,2,…,g)を利用者
が正常に受信したことと利用者が要求した情報を正常に
受信したこととは同値となる。したがって、情報提供者
は正確かつ確実に情報を利用者に配送したことを確認で
きる。
The check sentence e i (i = 1, 2,..., G)
Of other information delivery request the user himself has created sentence RS and the initial response sentence X i (i = 1,2, ... , g) because the information encrypted secret key W i (i = 1,2, ... , g), and the user can decrypt the ciphertext C to obtain the requested information M, so that the user normally receives the check sentence e i (i = 1, 2,..., g). And that the information requested by the user has been received normally has the same value. Therefore, the information provider can confirm that the information has been accurately and reliably delivered to the user.

【0180】また、上記の説明ではFiat Shamir 法をも
とに説明したが、本方法は拡張FiatShamir 法(太田−
岡本「Fiat-Shamir 法の高次への拡張」、電子情報通信
学会技術研究報告ISEC88−13)を始めとする、
素因数分解困難性あるいは離散対数問題等の困難性に安
全性の根拠を置く全てのゼロ知識対話証明プロトコルに
応用が可能である。
Although the above description has been made based on the Fiat Shamir method, this method is based on the extended Fiat Shamir method (Ota-
Okamoto, "Extension of Fiat-Shamir method to higher order", IEICE Technical Report ISEC88-13)
It can be applied to any zero-knowledge interactive proof protocol that bases its security on the difficulty of factorization or discrete logarithm problems.

【0181】次に情報要求文RS、乱数文Z、検査文e
i 、応答文Yi (i=1,2,…,g)からなる通信履
歴Hの関係では、ゼロ知識証明プロトコルにおける検証
式と第一および第二の一方向性ランダムハッシュ関数と
により相互に関係し合っているため、一部を不正に改竄
するなどして通信履歴Hを偽造することは不可能であ
る。したがって、通信履歴Hを記録管理することによ
り、暗号文Cを復号して利用者が要求した情報Mを獲得
できるための情報暗号化用秘密鍵Wi (i=1,2,
…,g)を利用者が確実に受信していることの証拠とし
て、後日、調停者などの中立的な第三者に提示すること
ができる。
Next, information request statement RS, random number statement Z, check statement e
i and the communication history H composed of the response sentence Y i (i = 1, 2,..., g), the mutual relation is obtained by the verification formula in the zero knowledge proof protocol and the first and second one-way random hash functions. Since they are related to each other, it is impossible to forge the communication history H by falsifying a part of the communication history H or the like. Therefore, by recording and managing the communication history H, the information encryption secret key W i (i = 1, 2, 2) for decrypting the ciphertext C and obtaining the information M requested by the user.
, G) can be presented to a neutral third party, such as a mediator, at a later date as evidence that the user has received it reliably.

【0182】以上の説明は、利用者が情報配送の要求を
情報提供者に行い、情報提供者が要求された情報を正確
かつ確実に利用者に配送したことを証明できるものであ
り、例えば情報Mを著作物などの有料情報とした場合、
上記の情報配送方式によって情報提供者が利用者に情報
Mを送信することにより、情報提供者が記録管理する通
信履歴Hを著作権使用料等の情報料を徴収するときの証
明情報として利用できるなど、様々な利用が可能であ
る。
In the above description, the user makes a request for information delivery to the information provider, and it can be proved that the information provider has delivered the requested information accurately and reliably to the user. If M is paid information such as copyrighted work,
By transmitting the information M to the user by the information provider according to the information delivery method described above, the communication history H recorded and managed by the information provider can be used as proof information for collecting information charges such as a royalty fee. Various uses are possible.

【0183】次に本発明の第8実施例について説明す
る。
Next, an eighth embodiment of the present invention will be described.

【0184】図22は本発明の第8実施例における情報
配送システムの構成を示すブロック図であり、10は利
用者の端末(端末)を示し、100から107までと1
09は第5の実施例と同様の構成であり、110は情報
配送要求文を作成する入力手段、108は分割されたブ
ロック情報を元の情報に再構成する情報再構成手段であ
る。20は情報提供者(端末)を示し、200から20
6までと209と210は第5実施例と同様の構成であ
り、208は後日、情報を利用者に配送した事実を証明
する証拠としての通信履歴Hを記録管理する通信履歴フ
ァイル、207は情報を任意ビット長の複数のブロック
に分割し、蓄積する情報分割手段である。30は利用者
と情報提供者とを通信で接続する通信回線を表す。40
は調停者(端末)を表し、401から403までは第7
実施例と同様の構成であり、404は情報を任意ビット
長の複数のブロックに分割し、蓄積する情報分割手段で
ある。
FIG. 22 is a block diagram showing the configuration of an information delivery system according to the eighth embodiment of the present invention. Reference numeral 10 denotes a user terminal (terminal).
Reference numeral 09 denotes a configuration similar to that of the fifth embodiment. Reference numeral 110 denotes an input unit for creating an information delivery request statement, and reference numeral 108 denotes an information reconstructing unit for reconstructing divided block information into original information. Reference numeral 20 denotes an information provider (terminal).
6, 209, and 210 have the same configuration as in the fifth embodiment. 208 is a communication history file that records and manages a communication history H as proof that the information has been delivered to the user at a later date. Is divided into a plurality of blocks having an arbitrary bit length and stored. Reference numeral 30 denotes a communication line for connecting a user and an information provider by communication. 40
Represents the arbitrator (terminal), and 401 to 403 are the seventh
The configuration is the same as that of the embodiment. Reference numeral 404 denotes an information dividing unit that divides information into a plurality of blocks having an arbitrary bit length and stores the information.

【0185】以下、図23および図24のフローチャー
トにしたがって情報配送ステップ、配送確認ステップ、
情報取り出しステップの動作手順を、また図25のフロ
ーチャートにしたがって調停での動作手順を説明する。
The information delivery step, delivery confirmation step,
The operation procedure of the information extraction step and the operation procedure in arbitration will be described with reference to the flowchart of FIG.

【0186】まず、準備段階として、信頼できるセンタ
が各利用者ごとにp1,q1,I,sを設定し、このう
ちN1とIを利用者の公開情報として公開し、sを利用
者の秘密情報として利用者秘密情報蓄積手段101に蓄
積して利用者に秘密裏に配布する。ここで、p1とq1
は互いに異なる大きな素数を表し、N1=p1×q1で
ある。また、I=s2 (mod N1)が成立している。
First, as a preparation stage, a reliable center sets p1, q1, I, and s for each user, among which N1 and I are disclosed as public information of the user, and s is a secret of the user. The information is stored in the user secret information storage unit 101 and distributed to the user in secret. Here, p1 and q1
Represents large prime numbers different from each other, and N1 = p1 × q1. Also, I = s 2 (mod N1) holds.

【0187】さらに、各情報提供者ごとにp,q,P
C,SCを設定し、このうちN,PCを情報提供者の公
開情報(公開鍵)として公開し、SCを情報提供者の秘
密情報(秘密鍵)として情報提供者秘密情報蓄積手段2
01に蓄積して情報提供者に秘密裏に配布する。ここ
で、p,qは互いに異なる大きな素数であり、N=pq
である。また、PC×SC=1(mod(p-1)(q-1))が成
立している。
Further, p, q, P for each information provider
C and SC are set, of which N and PC are made public as the information provider's public information (public key), and SC is used as the information provider's secret information (secret key).
01 and secretly distributed to the information provider. Here, p and q are large prime numbers different from each other, and N = pq
It is. Also, PC × SC = 1 (mod (p−1) (q−1)) holds.

【0188】(1)情報配送ステップ 利用者は、情報提供者に提供して欲しい情報入力につい
て入力手段110から情報配送要求文RSを作成し、一
時メモリ102に蓄積した(S301)後、情報提供者
の公開鍵PCを用いて公開鍵暗号手段107により暗号
化情報配送要求文CR=RSPC(mod N)に暗号化し
(S302)、通信回線30を介して情報提供者に送信
する(S303)。ここで、情報配送要求文RSは、第
7実施例と同じように、例えば要求日時、利用者識別番
号、要求情報名、要求情報コード等から構成される。
(1) Information Delivery Step The user creates an information delivery request statement RS from the input unit 110 for information input desired to be provided to the information provider, and stores it in the temporary memory 102 (S301). Using the public key PC of the user, the public key encrypting means 107 encrypts the encrypted information delivery request statement CR = RS PC (mod N) (S302), and transmits it to the information provider via the communication line 30 (S303). . Here, the information delivery request statement RS includes, for example, a request date and time, a user identification number, a request information name, a request information code, and the like, as in the seventh embodiment.

【0189】情報提供者は、情報提供者秘密情報蓄積手
段201に蓄積された秘密鍵SCを用いて、公開鍵暗号
手段210により受信した暗号化情報配送要求文CRを
情報配送要求文RS=CRSC(mod N)に復号した後一
時メモリ203に蓄積し(S304)、また乱数発生手
段209により乱数文Zをランダムに生成した後一時メ
モリ203に蓄積する(S305)。
Using the secret key SC stored in the information provider secret information storage means 201, the information provider converts the encrypted information delivery request text CR received by the public key encryption means 210 into an information delivery request text RS = CR After being decoded to SC (mod N), it is stored in the temporary memory 203 (S304), and a random number sentence Z is randomly generated by the random number generation means 209 and then stored in the temporary memory 203 (S305).

【0190】次に、情報配送要求文RSと乱数文Zとか
ら演算手段204中の第一の一方向性ランダムハッシュ
関数f1によりgビットサイズの情報暗号化用秘密鍵W
=(W1,W2,…,Wg)=f1(RS,Z)を生成
して一時メモリ203に蓄積する(S306)。ここ
で、一般にgの値は共通鍵暗号手段105,205で使
用する秘密鍵の鍵長と等しいかそれ以上である。その
後、情報配送要求文RS中の要求情報コードをもとに、
そのコードに対応する情報Mを情報データベース202
から取り出し(S307)、情報暗号化用秘密鍵W=
(W1,W2,…,Wg)を秘密鍵として共通鍵暗号手
段205により暗号文C=Ew (M)に暗号化した(S
308)後、利用者に暗号文Cを通信回線30を介して
送信する(S309)。
Next, the information encryption secret key W of g-bit size is calculated from the information delivery request statement RS and the random number statement Z by the first one-way random hash function f1 in the arithmetic means 204.
= (W1, W2,..., Wg) = f1 (RS, Z) is generated and stored in the temporary memory 203 (S306). Here, the value of g is generally equal to or longer than the key length of the secret key used in the common key encryption means 105, 205. Then, based on the request information code in the information delivery request statement RS,
The information M corresponding to the code is stored in the information database 202.
(S307), and the information encryption secret key W =
(W1, W2,..., Wg) are encrypted as a secret key by the common key encryption unit 205 into the ciphertext C = Ew (M) (S
308) Then, the ciphertext C is transmitted to the user via the communication line 30 (S309).

【0191】利用者は、暗号文Cを情報蓄積手段109
に受信/蓄積した後、受信した旨を通信回線30を介し
て情報提供者に通知する(S310)。
The user stores the ciphertext C in the information storage means 109
Then, the information provider is notified of the reception via the communication line 30 (S310).

【0192】(2)配送確認ステップ 情報提供者は、情報分割手段207において一時メモリ
203に蓄積された情報暗号化用秘密鍵W=(W1,W
2,…,Wg)を任意ビット長サイズの複数のブロック
に分割し、情報暗号化用ブロック秘密鍵として蓄積する
(S311)。ここでは説明を簡単にするため、分割し
たブロック数をm、全てのブロックについてビット長を
Lで一定とし、分割した情報暗号化用秘密鍵を情報暗号
化用ブロック秘密鍵WBij(i=1,2,…,L:j=
1,2,…,m)と表す。すなわち、WBij=W(i+L(j
-1))であり、例えばWB11=W1 、WBL1=WL 、WB
12=WL+1 、WBLm=Wg のようになる。
(2) Delivery Confirmation Step The information provider decides that the information encryption secret key W = (W1, W
,..., Wg) are divided into a plurality of blocks each having an arbitrary bit length and stored as a block secret key for information encryption (S311). Here, for the sake of simplicity, the number of divided blocks is m, the bit length of all blocks is constant at L, and the divided information encryption secret key is an information encryption block secret key WBij (i = 1, 2, ..., L: j =
1, 2,..., M). That is, WBij = W (i + L (j
-1)), for example, WB11 = W1, WBL1 = WL, WB
12 = WL + 1, WBLm = Wg.

【0193】これより以下の処理は第jブロックについ
てのものであり、配送確認ステップは第1ブロックから
第mブロックまで各ブロックごとに以下の処理を順次
(m回)繰り返し行う。
The following processing is for the j-th block. In the delivery confirmation step, the following processing is sequentially repeated (m times) for each block from the first block to the m-th block.

【0194】まず利用者は、乱数発生手段103により
L個の乱数Rij(i=1,2,…,L)を生成した後一
時メモリ102に蓄積し(S312)、それぞれについ
て演算手段104により初期応答文Xij=Rij 2 (mod
N1)(i=1,2,…,L)を計算した後一時メモリ
102に蓄積し(S313)、初期応答文Xij(i=
1,2,…,L)を通信回線30を介して情報提供者に
送信する(S314)。
First, the user generates L random numbers R ij (i = 1, 2,..., L) by the random number generating means 103 and then accumulates them in the temporary memory 102 (S312). Initial response sentence X ij = R ij 2 (mod
N1) (i = 1, 2,..., L) is calculated and then stored in the temporary memory 102 (S313), and the initial response sentence X ij (i =
, L) are transmitted to the information provider via the communication line 30 (S314).

【0195】情報提供者は、受信した初期応答文Xij
(i=1,2,…,L)を一時メモリ203に蓄積した
(S315)後、一時メモリ203に蓄積された情報配
送要求文RSと初期応答文Xij(i=1,2,…,L)
とから演算手段204中の第二の一方向性ランダムハッ
シュ関数f2によりLビットサイズの鍵暗号化用秘密鍵
K=(K1j,K2j,…,KLj)=f2(RS,
(X1j‖X2j‖…‖XLj))を生成して一時メモリ20
3に蓄積する(S316)。なお、f1とf2は同じ関
数でも当然構わない。
The information provider receives the initial response sentence Xij
After storing (i = 1, 2,..., L) in the temporary memory 203 (S315), the information delivery request sentence RS and the initial response sentence Xij (i = 1, 2,. )
From the above, the L-bit sized key encryption secret key K = (K1j, K2j,..., KLj) = f2 (RS,
(X1j‖X2j‖... ‖XLj)) and generate the temporary memory 20
No. 3 (S316). Note that f1 and f2 may be the same function.

【0196】次に、情報分割手段207に蓄積された第
jブロック目の情報暗号化用ブロック秘密鍵WBij(i
=1,2,…,L)と一時メモリ203に蓄積された鍵
暗号化用秘密鍵Kij(i=1,2,…,L)とから演算
手段204中の第三の関数f3により秘密鍵配送文Vij
(i=1,2,…,L)を生成し、検査文eij(i=
1,2,…,L)として一時メモリ203に蓄積した
(317)後、利用者に検査文eij(i=1,2,…,
L)を通信回線30を介して送信する(S318)
Next, the information encryption block secret key WBij (i) of the j-th block stored in the information dividing means 207
= 1, 2,..., L) and the key encryption secret key Kij (i = 1, 2,..., L) stored in the temporary memory 203 by the third function f3 in the arithmetic means 204. Delivery statement Vij
(I = 1, 2,..., L), and the check sentence eij (i =
After being stored in the temporary memory 203 as (1, 2,..., L) (317), the check text eij (i = 1, 2,.
L) is transmitted via the communication line 30 (S318).

【外3】 利用者は、受信した検査文eij(i=1,2,…,L)
を一時メモリ102に蓄積した(S319)後、演算手
段104において検査文eijを用いて、一時メモリ10
2に蓄積された乱数Rijと利用者秘密情報蓄積手段10
1に蓄積された利用者の秘密情報sとから、eij=0な
らばYij=Rijを、eij=1ならばYij=sRij(mod
N1)をそれぞれのビットiについて計算し(S32
0)、応答文Yij(i=1,2,…,L)として情報提
供者に通信回線30を介して送信する(S321)。
[Outside 3] The user checks the received check sentence eij (i = 1, 2,..., L)
Is stored in the temporary memory 102 (S319), and the arithmetic means 104 uses the check sentence eij to store the temporary
2 and the user secret information storage means 10
From the secret information s of the user stored in 1, Yij = Rij if eij = 0, and Yij = sRij (mod
N1) is calculated for each bit i (S32)
0), and transmits the response sentence Yij (i = 1, 2,..., L) to the information provider via the communication line 30 (S321).

【0197】情報提供者は、受信した応答文Yij(i=
1,2,…,L)を一時メモリ203に蓄積した(S3
22)後、検証手段206において利用者の公開情報I
および一時メモリ203に蓄積された初期応答文Xijと
応答文Yijと検査文eijとから、eij=0ならば検証式
Yij2 =Xij(mod N1)を、eij=1ならば検証式Y
ij2 =Xij×I(mod N1)を満たすかどうかをそれぞ
れのビットiについて検証する(S323)。この検証
に失敗した場合には利用者は不正であるとみなして、た
だちにプロトコルの実行を中止し(S324)、成功し
た場合にはすべてのブロックが終了するまで以上の処理
を繰り返す(S325)。そして、第1ブロックから第
mブロックまでの全てのブロックについて検証に成功し
た場合には、一時メモリ203に蓄積された情報配送要
求文RS、乱数文Z、検査文eij、応答文Yij(i=
1,2,…,L:i=1,2,…,m)を通信履歴Hと
して通信履歴ファイル208に記録管理する(S32
6)。
The information provider receives the response sentence Yij (i =
, L) are stored in the temporary memory 203 (S3
22) Then, the public information I of the user is
From the initial response sentence Xij, response sentence Yij, and check sentence eij stored in the temporary memory 203, the verification expression Yij2 = Xij (mod N1) if eij = 0, and the verification expression Y if eij = 1.
It is verified whether each bit i satisfies ij2 = Xij × I (mod N1) (S323). If the verification fails, the user deems that the user is illegal, and immediately stops the execution of the protocol (S324). If the verification is successful, the above process is repeated until all blocks are completed (S325). If the verification is successful for all the blocks from the first block to the m-th block, the information delivery request sentence RS, the random number sentence Z, the check sentence eij, and the response sentence Yij (i =
, L: i = 1, 2,..., M) are recorded and managed in the communication history file 208 as the communication history H (S32).
6).

【0198】(3)情報取り出しステップ 利用者は、各ブロックについて一時メモリ102に蓄積
された情報配送要求文RSと初期応答文Xij(i=1,
2,…,L:j=1,2,…,m))とから演算手段1
04中の第二の一方向性ランダムハッシュ関数f2によ
りLビットサイズの鍵暗号化用秘密鍵K=(K11,K
12,…,KLm)=f2(RS,(X1j‖X2j‖…‖
XLj))を生成し、一時メモリ102に蓄積する(S3
27)。
(3) Information Retrieval Step The user sends the information delivery request sentence RS and the initial response sentence Xij (i = 1,
2,..., L: j = 1, 2,.
04 using the second one-way random hash function f2 in FIG. 04, an L-bit sized key encryption secret key K = (K11, K
12, KLm) = f2 (RS, (X1j‖X2j‖...)
XLj)) is generated and stored in the temporary memory 102 (S3).
27).

【0199】次に、一時メモリ102に蓄積された検査
文eij(i=1,2,…,L:j=1,2,…,m)か
ら秘密鍵配送文Vij(i=1,2,…,L:j=1,
2,…,m)を生成し、(S328)、生成した秘密鍵
配送文Vijと鍵暗号化用秘密鍵Kij(i=1,2,…,
L:j=1,2,…,m)とから演算手段104中の第
三の関数f3の逆関数f3′により情報暗号化用ブロッ
ク秘密鍵WBij(i=1,2,…,L:j=1,2,
…,m)を取り出し、情報再構成手段108に蓄積する
(S329)。ここで、例えば第三の関数f3のVij
f3(Wij,Kij
Next, from the check sentence e ij (i = 1, 2,..., L: j = 1, 2,..., M) stored in the temporary memory 102, the secret key delivery sentence V ij (i = 1, 2,..., L: j = 1,
, M) (S328), and the generated secret key distribution statement V ij and key encryption secret key K ij (i = 1, 2,...,
L: j = 1, 2,..., M) and the block encryption key WB ij (i = 1, 2,..., L) for information encryption by the inverse function f3 ′ of the third function f3 in the arithmetic means 104. j = 1,2,
.., M) are taken out and stored in the information reconstructing means 108 (S329). Here, for example, V ij of the third function f3 =
f3 (W ij , K ij )

【外4】 排他的論理和を表す。[Outside 4] Indicates exclusive OR.

【0200】その後に、情報再構成手段108により蓄
積された情報暗号化用ブロック秘密鍵WBij(i=1,
2,…,L:j=1,2,…,m)を用いて情報暗号化
用秘密鍵Wi (i=1,2,…,g)に再構成して情報
蓄積手段109に蓄積する(S330)。
Thereafter, the block secret key for information encryption WB ij (i = 1,
2,..., L: j = 1, 2,..., M) to reconstruct the information encryption secret key W i (i = 1, 2,. (S330).

【0201】最後に、情報蓄積手段109に蓄積された
情報暗号化用秘密鍵W=(W1,W2,…,Wg)を秘
密鍵として、共通暗号手段105により情報蓄積手段1
09に蓄積された暗号文Cを復号し(S331)、要求
した情報M=Dw (C)を情報出力/利用手段106よ
り獲得することができる(S332)。 (4)調停 後日、利用者が要求した情報を受信していないと主張し
たり、情報配送の要求そのものを否定した場合には、情
報提供者は通信履歴ファイル208に記録管理された通
信履歴Hを提示し、調停者の一時メモリ402に蓄積す
る(S341)。
Finally, the common encryption means 105 uses the information encryption private key W = (W1, W2,..., Wg) stored in the information storage
The ciphertext C stored in 09 is decrypted (S331), and the requested information M = Dw (C) can be obtained from the information output / use means 106 (S332). (4) After the arbitration, if the user claims that the information requested by the user has not been received or denies the information delivery request itself, the information provider makes the communication history H recorded and managed in the communication history file 208. Is stored in the temporary memory 402 of the arbitrator (S341).

【0202】調停者は、演算手段401において利用者
の公開情報Iと一時メモリ402に蓄積された通信履歴
H中の検査文eijおよび応答文Yijから、eij=0なら
ば、Xij=Yij2 (mod N1)をeij=1ならばXij=
Yij2 /I(mod N1)をそれぞれのビットiについて
計算し、一時メモリ402に蓄積する(S342)。次
に、一時メモリ402に蓄積された通信履歴H中の情報
配送要求文RSと乱数文Zとから演算手段401中の第
一の一方向性ランダムハッシュ関数f1により情報暗号
化用秘密鍵W=(W1,W2,…,Wg)=f1(R
S,Z)を生成した(S343)後、情報分割手段40
4において情報暗号化用ブロック秘密鍵WBij(i=
1,2,…,L:j=1,2,…,m)に分割して蓄積
する(S344)。
The arbitrator determines from the check information eij and the response text Yij in the communication history H stored in the temporary memory 402 by the computing means 401 that the public information I and the response text Yij, if eij = 0, Xij = Yij2 (mod N1) is Xij = if eij = 1
Yij2 / I (mod N1) is calculated for each bit i and stored in the temporary memory 402 (S342). Next, from the information delivery request statement RS and the random number statement Z in the communication history H stored in the temporary memory 402, the information encryption secret key W = (W1, W2, ..., Wg) = f1 (R
After generating (S, Z) (S343), the information dividing means 40
4, the information encryption block secret key WBij (i =
1, 2,..., L: j = 1, 2,..., M) and store them (S344).

【0203】各ブロック(第jブロック)について、一
時メモリ402に蓄積された情報配送要求文RSと計算
結果Xij(i=1,2.…,L)とから演算手段401
中の第二の一方向性ランダムハッシュ関数f2により鍵
暗号化用秘密鍵K=(K1j,K2j,…,KLj)=
f2(RS,(X1j‖X2j‖…‖XLj)を生成して一時
メモリ402に蓄積する(S345)。そして、情報分
割手段404に蓄積された情報暗号化用ブロック秘密鍵
Wijと一時メモリ402に蓄積された鍵暗号化用秘密鍵
Kij(i=1,2,…,L)とから演算手段401中の
第三の関数f3により秘密鍵配送文Vij(i=1,2,
…,L)を生成し(S346)、検査文eij(i=1,
2,…,L)として検証手段403において一時メモリ
402に蓄積された通信履歴H中の検査文eij(i=
1,2,…,L)と一致するかどうかを検査する(S3
47)。全てのブロック(第1ブロックから第mブロッ
クまでのmブロック)について一致すれば(S34
8)、通信履歴Hの正当性が証明されたことになり(S
349)、利用者が情報配送を要求し、かつ要求した情
報を受信していることが保証される。そうでなければ通
信履歴Hは無効とされる(S350)。
For each block (j-th block), an operation means 401 is obtained from the information delivery request statement RS stored in the temporary memory 402 and the calculation result Xij (i = 1, 2,..., L).
Using the second one-way random hash function f2, the secret key for key encryption K = (K1j, K2j,..., KLj) =
f2 (RS, (X1j‖X2j‖... ‖XLj) is generated and stored in the temporary memory 402 (S345), and the information encryption block secret key Wij stored in the information dividing means 404 and the temporary memory 402 are stored in the temporary memory 402. The secret key distribution statement Vij (i = 1, 2,...) Is calculated from the accumulated key encryption secret key Kij (i = 1, 2,...
, L) (S346), and the check sentence eij (i = 1,
2,..., L) in the communication history H stored in the temporary memory 402 by the verification unit 403 in the check sentence eij (i =
, L) is checked (S3).
47). If all blocks (m blocks from the first block to the m-th block) match (S34)
8) The validity of the communication history H is proved (S
349) It is guaranteed that the user has requested information delivery and has received the requested information. Otherwise, the communication history H is invalidated (S350).

【0204】上記の情報配送方式を用いれば、第7実施
例と同様の効果が得られるほかに、情報提供者と利用者
の間で情報配送要求文RSについて暗号通信されている
ので、第三者が通信系列を盗聴したとしても、盗聴した
通信系列からは情報配送要求文RSおよび鍵暗号化用秘
密鍵Kij(i=1,2,…,L:j=1,2,…,m)
を求めることができない。また、情報暗号化用秘密鍵W
i (i=1,2.…,g)は検査文eijと鍵暗号化用秘
密鍵Kij(i=1,2,…,L:j=1,2,…,m)
とから求められることから、情報暗号化用秘密鍵W
i (i=1,2,…,g)を第三者が求めることができ
ないことと同値となるので、第三者が暗号文Cを復号
し、不正に情報Mを獲得することを防止することが可能
となる。
If the above information delivery method is used, the same effect as that of the seventh embodiment can be obtained. In addition, since the information delivery request message RS is encrypted and communicated between the information provider and the user, the third Even if a person eavesdrops on the communication sequence, the information transmission request statement RS and the key encryption secret key K ij (i = 1, 2,..., L: j = 1, 2,. )
Can not ask. Also, the information encryption secret key W
i (i = 1, 2,..., g) is a check sentence e ij and a key encryption private key K ij (i = 1, 2,..., L: j = 1, 2,.
And the information encryption secret key W
Since i (i = 1, 2,..., g) is equivalent to the fact that the third party cannot obtain it, it is possible to prevent the third party from decrypting the ciphertext C and illegally acquiring the information M. It becomes possible.

【0205】さらに、情報提供者と利用者との間の通信
が情報暗号化用秘密鍵Wi (i=1,2,…,g)の分
割ブロック数mと同じ回数だけ繰り返し行われるため、
途中で情報提供者の検証に失敗した場合にはそれ以降の
通信は打ち切られ、残りの検査文は送信されない。すな
わち、利用者が知ることのできる検査文は検証に失敗す
る以前のもののみに限られるので、情報提供者の検証を
失敗させた利用者は暗号文Cを復号するために必要な情
報の一部しか獲得することができず、結果として正しい
情報暗号化用秘密鍵Wi (i=1,2,…,g)を生成
することが不可能となる。
Furthermore, the communication between the information provider and the user is repeated as many times as the number m of divided blocks of the secret key W i (i = 1, 2,..., G) for encrypting information.
If the verification of the information provider fails on the way, the subsequent communication is terminated and the remaining check text is not transmitted. That is, since the check sentence that the user can know is limited only to the one before the verification failed, the user who failed the verification of the information provider can obtain one of the information necessary for decrypting the ciphertext C. Only the copy can be obtained, and as a result, it becomes impossible to generate a correct information encryption private key W i (i = 1, 2,..., G).

【0206】したがって、利用者の秘密情報sを知らな
い不正な利用者が不正な応答文Yij(i=1,2,…,
L:j=1,2,…,m)を送信する場合はもとより、
応答文そのものを送信しないような不正行為を行い、情
報提供者が要求された情報Mを利用者に配送した事実を
証明する通信履歴Hを情報提供者が記録管理できないに
もかかわらず、利用者が要求した情報Mを獲得するのに
必要な検査文eij((i=1,2,…,L:j=1,
2,…,m)を受信し、情報Mを不正に復号/獲得して
しまうことがないようにすることが可能である。
Therefore, an unauthorized user who does not know the user's secret information s receives an incorrect response text Yij (i = 1, 2,...,
L: j = 1, 2,..., M)
Despite the fact that the information provider cannot record and manage the communication history H that proves the fact that the information provider has delivered the requested information M to the user by performing an illegal act that does not transmit the response statement itself, Check text e ij ((i = 1, 2,..., L: j = 1, necessary for obtaining the information M requested by
2,..., M) to prevent the information M from being illegally decoded / acquired.

【0207】また、上記の説明では分割するブロックを
各ブロックともビット長をLで一定としたが、例えば第
1ブロックは1ビット、第2ブロックは2ビット、第3
ブロックは4ビットというようにブロックごとにビット
長サイズを変えても当然構わない。
Further, in the above description, the blocks to be divided have the same bit length of L for each block. For example, the first block is 1 bit, the second block is 2 bits, and the third block is 3 bits.
Of course, the bit length size may be changed for each block such as 4 bits.

【0208】最後に、上記の説明においる暗号通信のう
ち、公開鍵暗号方法による暗号通信については共通鍵暗
号方法による暗号通信を行っても当然構わない。また、
FiatShamir 法をもとに説明をしたが、本方法は拡張Fia
t-Shamir 法(太田−岡本「Fiat-Shamir 法の高次への
拡張」、電子情報通信学会技術研究報告ISEC88−
13)を始めとする、素因数分解困難性あるいは離散対
数問題等の困難性に安全性の根拠を置く全てのゼロ知識
対話証明プロトコルに応用が可能である。
Finally, of the cipher communication described above, the cipher communication by the public key cryptosystem may be performed by the cipher communication by the common key cryptosystem. Also,
Although the explanation was based on the FiatShamir method, this method is an extended Fia
t-Shamir method (Ota-Okamoto "Extension of Fiat-Shamir method to higher order", IEICE technical report ISEC88-
The present invention can be applied to all zero-knowledge interactive proof protocols based on security such as 13) and other difficulties such as the difficulty of factorization or the discrete logarithm problem.

【0209】以上説明したとおり、本発明の第5〜第8
実施例によれば、ゼロ知識証明プロトコルを利用した情
報配送方法では、第一に情報配送ステップにおいて、利
用者が要求した情報は情報提供者によって暗号化されて
利用者に配送されるため、この時点では要求した情報そ
のものを利用者が取り出すことはできない。第二に配送
確認ステップで行われるプロトコル動作自体は利用者認
証としてのゼロ知識証明プロトコルと同等であるため、
ゼロ知識証明プロトコルと同じように不正な利用者が情
報提供者の検証をクリアすることはほぼ不可能である。
第三に配送確認ステップが正常に終了した場合には、ゼ
ロ知識証明プロトコルが正常に終了したことと同値であ
るから、情報提供者は利用者が検査文を正しく受信し、
適正な処理をしていると判断できる。第四に情報取り出
しステップにおいて、利用者は検査文を正しく受信でき
れば、秘密鍵配送文及び情報暗号化用秘密鍵を作成する
ことができるので、この時点で前記情報暗号化用秘密鍵
により暗号化された情報を復号し、要求した情報を取り
出すことができる。したがって、これらの効果により、
情報配送方法の全てのステップが終了した場合には、情
報提供者は正規の利用者に対して要求された情報を暗号
化した状態で提供した後、利用者が暗号化された情報を
復号するために必要な情報を利用者に配送し、かつ確実
に利用者が受信したことが確認できるので、情報提供者
は利用者が要求した情報を利用者まで確実に配送したと
判断できる。
As described above, the fifth to eighth aspects of the present invention
According to the embodiment, in the information delivery method using the zero knowledge proof protocol, first, in the information delivery step, the information requested by the user is encrypted by the information provider and delivered to the user. At this point, the user cannot retrieve the requested information itself. Second, since the protocol operation itself performed in the delivery confirmation step is equivalent to the zero knowledge proof protocol as user authentication,
As with the zero-knowledge proof protocol, it is almost impossible for an unauthorized user to clear the verification of the information provider.
Third, if the delivery confirmation step is completed successfully, the information provider has the same value as that the zero-knowledge proof protocol has been completed normally.
It can be determined that proper processing is being performed. Fourth, in the information retrieval step, if the user can correctly receive the inspection statement, the user can create a secret key delivery statement and an information encryption secret key. At this point, the user can encrypt the information using the information encryption secret key. The requested information can be decrypted and the requested information can be extracted. Therefore, due to these effects,
When all the steps of the information delivery method are completed, the information provider provides the requested information to the authorized user in an encrypted state, and then the user decrypts the encrypted information. For this reason, it is possible to deliver the necessary information to the user and to surely confirm that the user has received the information. Therefore, the information provider can determine that the information requested by the user has been reliably delivered to the user.

【0210】叉、本発明の第5、第6実施例によれば、
検査文について暗号通信をすることは、情報暗号化用秘
密鍵についても暗号通信をしていることと同等の効果が
得られることになり、第三者が通信路を盗聴したとして
もこれらの秘密鍵が知られることはない。さらに、情報
暗号化用秘密鍵を解読するために有効な情報も得られな
いようにすることもできる。
According to the fifth and sixth embodiments of the present invention,
Performing cryptographic communication on the inspection statement has the same effect as performing cryptographic communication on the secret key for information encryption, and even if a third party eavesdrops on the communication path, these secrets will be protected. The key is never known. Further, it is also possible to prevent information that is valid for decrypting the secret key for information encryption from being obtained.

【0211】叉、本発明の第7、第8実施例によれば、
情報提供者にとって都合のよい情報暗号化用秘密鍵を不
正に作成できないようにすることができる。
According to the seventh and eighth embodiments of the present invention,
It is possible to prevent a secret key for information encryption convenient for the information provider from being illegally created.

【0212】叉、通信履歴を偽造することは不可能であ
るので、情報提供者は正規の利用者に対して要求された
情報を暗号化した状態で提供した後、利用者が暗号化さ
れた情報を復号するために必要な情報を利用者に配送
し、かつ確実に利用者が受信したことを後日証明できる
証拠能力を持つことができる。
Further, since it is impossible to forge the communication history, the information provider provides the required information to the authorized user in an encrypted state, and then the information is encrypted. The information necessary for decoding the information can be delivered to the user, and the user can have the evidential ability to prove that the user has received the information at a later date.

【0213】叉、証拠能力を有する通信履歴を必要に応
じて提示できるようになる。また、情報提供者が情報を
配送した事実の証拠として記録管理しなければならない
情報量が桜井(特開平5−12321)の方式と比較し
て大幅に削減できる。
[0213] Further, it becomes possible to present a communication history having an evidence ability as needed. Further, the amount of information that must be recorded and managed as evidence of the fact that the information provider has delivered the information can be significantly reduced as compared with the method of Sakurai (Japanese Patent Laid-Open No. 5-12321).

【0214】叉、情報提供者と利用者の間で情報の提供
の有無について調停をする必要が生じた場合、裁判所等
の中立な調停機関が証拠能力を有する通信履歴について
その正当性を検査することにより、情報提供者と利用者
のどちらの主張が正当であるのかを判定できる。
When it is necessary to arbitrate whether information is provided between the information provider and the user, a neutral arbitration body such as a court checks the validity of the communication history having an evidential ability. This makes it possible to determine which of the information provider and the user is valid.

【0215】叉、本発明の第8実施例によれば、情報配
送要求文を暗号送信することにより、第三者による情報
配送要求文の盗聴を防止し、どんな情報を要求したかな
どの利用者のプライバシーが保護できる。
According to the eighth embodiment of the present invention, the information delivery request sentence is encrypted and transmitted, thereby preventing a third party from eavesdropping on the information delivery request sentence and utilizing information such as what information is requested. Privacy can be protected.

【0216】叉、鍵暗号化用秘密鍵及び情報暗号化用秘
密鍵については、情報提供者と利用者のみの秘密の情報
によりスクランブルされるので、第三者が通信路を盗聴
したとしてもこれらの秘密鍵が知られることはなく、ま
た秘密鍵を解読するために有効な情報も得られない。し
たがって、利用者が要求した情報を第三者が不正に獲得
することはできない。
Further, the secret key for key encryption and the secret key for information encryption are scrambled by secret information of only the information provider and the user. Secret key is not known, and no information is available to decrypt the secret key. Therefore, the information requested by the user cannot be illegally acquired by a third party.

【0217】叉、例えば不正な利用者による利用などに
より配送確認ステップの途中で情報提供者の検証に失敗
した場合には、ただちにプロトコルの実行が中止され、
検証に失敗した以降のブロックは利用者に送信されない
ことになる。したがって、情報提供者の検証を失敗させ
た利用者は暗号化された情報を復号するために必要な情
報の一部しか獲得することができず、結果として鍵暗号
化用秘密鍵もしくは情報暗号化用秘密鍵を生成すること
が不可能となるので、不正な利用者が要求した情報を不
正に獲得してしまうことがないようにできる。
If the verification of the information provider fails in the middle of the delivery confirmation step due to, for example, an unauthorized user, the execution of the protocol is immediately stopped,
Blocks after the failed verification will not be sent to the user. Therefore, the user who fails the verification of the information provider can obtain only a part of the information necessary for decrypting the encrypted information, and as a result, the secret key for key encryption or information encryption. Since it becomes impossible to generate a secret key for use, it is possible to prevent the information requested by an unauthorized user from being illegally obtained.

【0218】叉、これらの実施例によれば、情報提供者
が要求された情報を利用者に確実に配送し、かつ利用者
が確実に受信していることを情報提供者が確認できるシ
ステムとなる。また、必要に応じて情報提供者が利用者
を認証する利用者認証方法としてのゼロ知識証明プロト
コルを単独に使用することもできる。
Further, according to these embodiments, there is provided a system which enables an information provider to reliably deliver requested information to a user and to confirm that the user has received the information reliably. Become. Further, the zero-knowledge proof protocol as a user authentication method in which the information provider authenticates the user can be used alone as needed.

【0219】叉、情報暗号化秘密鍵を生成するときに乱
数文を利用できるようにしたシステムとなる。
[0219] Further, a system in which a random number statement can be used when generating an information encryption private key is provided.

【0220】叉、本発明の第5、第8実施例によれば、
情報提供者が秘密に保持すべき情報を蓄積することがで
きる情報提供者秘密情報蓄積手段を有したシステムとな
る。
According to the fifth and eighth embodiments of the present invention,
The system has an information provider secret information storage unit that can store information that the information provider should keep secret.

【0221】叉、本発明の第5、第6、第8実施例によ
れば、情報提供者と利用者の間で公開鍵暗号方法による
暗号通信ができるようにしたシステムとなる。
According to the fifth, sixth, and eighth embodiments of the present invention, there is provided a system in which an information provider and a user can perform encrypted communication by a public key encryption method.

【0222】叉、本発明の第7、第8実施例によれば、
情報配送要求文を簡単に作成するための入力手段を利用
者端末に備えたシステムとなる。
According to the seventh and eighth embodiments of the present invention,
The user terminal is provided with input means for easily creating an information delivery request statement.

【0223】叉、鍵暗号化用秘密鍵と秘密鍵配送文との
生成機能を有し、情報暗号化用秘密鍵と鍵暗号用秘密鍵
とを利用した情報配送ができるようにしたシステムとな
る。
Further, the system has a function of generating a secret key for key encryption and a secret key distribution statement, and enables information distribution using the secret key for information encryption and the secret key for key encryption. .

【0224】叉、証拠能力を有する通信履歴を必要に応
じて提示できるようにしたシステムとなる。
[0224] Further, the present invention provides a system in which a communication history having an evidence ability can be presented as needed.

【0225】叉、裁判所等の中立な調停機関により、証
拠能力を有する通信履歴についてその正当性を検査し、
情報提供者と利用者のどちらの主張が正当であるのかを
判定することができるようにしたシステムとなる。
Also, a neutral arbitration body such as a court checks the validity of a communication history having an evidential ability,
This is a system that can determine which of the information provider and the user is valid.

【0226】叉、本発明の第8実施例によれば、不正な
利用者があることを検出した際には直ちにプロトコルの
実行を中止して、不正な利用者が要求した情報を不正に
獲得してしまうことがないようにしたシステムとなる。
Further, according to the eighth embodiment of the present invention, when it is detected that there is an unauthorized user, the execution of the protocol is immediately stopped, and the information requested by the unauthorized user is illegally obtained. It is a system that will not be done.

【0227】次に本発明の第9実施例について説明す
る。
Next, a ninth embodiment of the present invention will be described.

【0228】図26は本発明の第9実施例における情報
配送システムの構成を示すブロック図であり、10は情
報の配送を受ける利用者(端末)を示し、100は通信
回線30を制御する通信制御手段、101は利用者の秘
密情報を蓄積しておく利用者秘密情報蓄積手段、105
は共通鍵暗号方法(例えば、DES,FEAL)を利用
する共通鍵暗号手段、107は公開鍵暗号方法(例え
ば、RSA)を利用する公開鍵暗号手段、109は情報
提供者からの配送された情報を蓄積する情報蓄積手段、
102は利用者が必要な情報を一時的に蓄積する一時メ
モリ、103は利用者が乱数を生成するための乱数発生
手段、104は必要な演算を行う演算手段、106は情
報を出力もしくは利用する情報出力/利用手段である。
20は情報を提供する情報提供者(端末)を示し、20
0は通信回線30を制御する通信制御手段、201は情
報提供者の秘密情報を蓄積しておく情報提供者秘密情報
蓄積手段、205は共通鍵暗号方法を利用する共通鍵暗
号手段、210は公開鍵暗号方法を利用する公開鍵暗号
手段、202は提供する情報が蓄積してある情報データ
ベース、203は情報提供者が必要な情報を一時的に蓄
積する一時メモリ、204は必要な演算を行う演算手
段、206は情報の正当性を検証する検証手段、208
は後日情報を利用者に配送した事実を証明する証拠とし
ての通信履歴データHを記録管理する通信履歴ファイ
ル、209は情報提供者が乱数を生成するための乱数発
生手段である。30は利用者として情報提供者とを通信
で接続する通信回線を表す。40は後日、情報提供者が
通信履歴ファイル208に記録管理している通信履歴デ
ータHについて、中立的立場によりその通信履歴データ
Hの正当性を判定する調停者(端末)を表し、402は
調停者が必要な情報を一時的に蓄積する一時メモリ、4
05は公開鍵暗号方法を利用する公開鍵暗号手段、40
1は必要な演算を行う演算手段、403は正当性の判定
を依頼された通信履歴データHについてその正当性を検
証する検証手段である。
FIG. 26 is a block diagram showing the configuration of an information delivery system according to the ninth embodiment of the present invention. Reference numeral 10 denotes a user (terminal) receiving information delivery, and reference numeral 100 denotes a communication for controlling the communication line 30. Control means 101; user secret information storage means 105 for storing user secret information;
Is a common key encryption means using a common key encryption method (for example, DES, FEAL), 107 is a public key encryption means using a public key encryption method (for example, RSA), and 109 is information delivered from an information provider. Information storage means for storing
102 is a temporary memory for temporarily storing information required by the user, 103 is a random number generating means for the user to generate random numbers, 104 is a calculating means for performing necessary calculations, and 106 is an information output or use. Information output / use means.
Reference numeral 20 denotes an information provider (terminal) that provides information;
0 is communication control means for controlling the communication line 30, 201 is information provider secret information storage means for storing secret information of the information provider, 205 is a common key encryption means using a common key encryption method, and 210 is public information. Public key encryption means using a key encryption method; 202, an information database storing information to be provided; 203, a temporary memory for temporarily storing information required by an information provider; 204, an operation for performing necessary operations Means 206, verification means for verifying the validity of information, 208
Is a communication history file for recording and managing communication history data H as proof that the information has been delivered to the user at a later date, and 209 is a random number generating means for the information provider to generate a random number. Reference numeral 30 denotes a communication line that connects the information provider as a user by communication. Reference numeral 40 denotes an arbitrator (terminal) that determines the validity of the communication history data H from a neutral standpoint with respect to the communication history data H recorded and managed by the information provider in the communication history file 208 at a later date. Temporary memory for temporarily storing necessary information
05 is a public key encryption means using a public key encryption method, 40
Numeral 1 denotes an arithmetic unit for performing necessary arithmetic operations, and numeral 403 denotes a verification unit for verifying the validity of the communication history data H for which the determination of the validity has been requested.

【0229】以下、図27および図28のフローチャー
トにしたがって情報配送ステップ、配送確認ステップ、
情報取り出しステップの動作手順を、また図29のフロ
ーチャートにしたがって調停での動作手順を説明する。
An information delivery step, a delivery confirmation step,
The operation procedure of the information extraction step and the operation procedure in arbitration will be described with reference to the flowchart of FIG.

【0230】なお、乱数Rと初期応答文Xと応答文Yを
除くアルファベット文字は情報全体を表し、添え字付き
アルファベツト文字はその情報のビット情報を表す。例
えば、情報暗号化用秘密鍵Wはgビット長で構成される
情報暗号化用秘密鍵全体のことを表し、情報暗号化用秘
密鍵Wi (i=1,2,…,g)は情報暗号化用秘密鍵
の第iビット目のビット情報を表す。また、乱数Rと初
期応答文Xと応答文Yの添え字は複数個生成される同一
種類の情報の中のひとつの情報を表す。例えば、乱数R
i (i=1,2,…,g)はg個生成される乱数の中の
第i番目に生成された乱数情報であることを表す。
The alphabetic characters except the random number R, the initial response sentence X, and the response sentence Y represent the entire information, and the subscripted alphabetic characters represent the bit information of the information. For example, the information encryption secret key W represents the entire information encryption secret key having a g-bit length, and the information encryption secret key W i (i = 1, 2,..., G) Represents the bit information of the i-th bit of the secret key for encryption. The subscripts of the random number R, the initial response sentence X, and the response sentence Y represent one of a plurality of pieces of information of the same type generated. For example, a random number R
i (i = 1, 2,..., g) represents the i-th random number information among the g random numbers generated.

【0231】(0)準備段階 信頼できるセンタが各利用者ごとにp1,q1,ID,
S,p2,q2,PU,SUを設定し、このうちN1,
N2,ID,PUを利用者の公開情報として公開し、
S,SUを利用者の秘密情報として利用者秘密情報蓄積
手段101に蓄積して利用者に秘密裏に配布する。ここ
で、(p1,q1)と(p2,q2)の各組はそれぞれ
互いに異なる大きな素数の組になっており、N1=p1
×q1,N2=p2×q2である。また、ID=S
2 (mod N1)、PU×SU=1(mod(p2-1)(q2-1))
が成立している。なお、p1=p2,q1=q2として
もよい。
(0) Preparatory stage A reliable center establishes p1, q1, ID,
S, p2, q2, PU, SU are set, and N1,
Publish N2, ID and PU as public information of the user,
S and SU are stored in the user secret information storage means 101 as user secret information and distributed secretly to the user. Here, each set of (p1, q1) and (p2, q2) is a set of mutually different large prime numbers, and N1 = p1
× q1, N2 = p2 × q2. Also, ID = S
2 (mod N1), PU × SU = 1 (mod (p2-1) (q2-1))
Holds. Note that p1 = p2 and q1 = q2 may be set.

【0232】さらに、各情報提供者ごとにp,q,P
C,SCを設定し、このうちN,PCを情報提供者の公
開鍵として公開し、SCを情報提供者の秘密鍵として情
報提供者秘密情報蓄積手段201に蓄積して情報提供者
に秘密裏に配布する。ここで、p,qは互いに異なる大
きな素数であり、N=pqである。またPC×SC=1
(mod (p-1)(q-1))が成立している。
Further, p, q, P for each information provider
C and SC are set, of which N and PC are made public as the information provider's public key, and the SC is stored in the information provider secret information storage means 201 as the information provider's secret key, and the information provider is secretly provided. Distribute to Here, p and q are mutually different large prime numbers, and N = pq. PC × SC = 1
(Mod (p-1) (q-1)) holds.

【0233】(1)情報配送ステップ 情報提供者は、乱数発生手段209でgビット長の情報
暗号化用秘密鍵Wを任意に生成して一時メモリ203に
蓄積する(S361)。ここで、一般にgの値は共通鍵
暗号手段105と205で使用する秘密鍵の鍵長と等し
いかそれ以上である。後に、情報Mを情報データベース
202から取り出し(S362)、情報暗号化用秘密鍵
Wを秘密鍵として共通鍵暗号手段205により暗号文C
=Ew (M)に暗号化した(S363)後、利用者に暗
号文Cを通信回線30を介して送信するる(S36
4)。
(1) Information Delivery Step The information provider arbitrarily generates a g-bit length information encryption private key W with the random number generation means 209 and stores it in the temporary memory 203 (S361). Here, the value of g is generally equal to or longer than the key length of the secret key used in the common key encryption means 105 and 205. Thereafter, the information M is extracted from the information database 202 (S362), and the ciphertext C is generated by the common key encryption unit 205 using the information encryption secret key W as a secret key.
= E w (M) (S363), and then transmits the ciphertext C to the user via the communication line 30 (S36).
4).

【0234】利用者は、暗号文Cを情報蓄積手段109
に受信/蓄積した後、受信した旨を通信回線30を介し
て情報提供者に通知する(S365)。
The user stores the ciphertext C in the information storage means 109
Then, the information provider is notified of the reception via the communication line 30 (S365).

【0235】なお、ここではS364の暗号文Cの送信
について通信回線30を使用しているが、もちろんCD
−ROMなどの物理媒体に記録して、通信回線を使用せ
ずに一般に配布するようにしても構わない。その場合に
は、S365の動作は省略されることが多い。
In this case, the communication line 30 is used for transmitting the cipher text C in S364.
-It may be recorded on a physical medium such as a ROM and distributed to the general public without using a communication line. In that case, the operation of S365 is often omitted.

【0236】(2)配送確認ステップ 情報提供者は、公開鍵暗号手段210により情報暗号化
用秘密鍵Wを情報提供者の公開鍵PCで暗号化し(S3
66)、暗号化した情報暗号化用秘密鍵CW=WPC(mo
d N)を利用者に通信回線30を介して通信する(S3
67)。
(2) Delivery Confirmation Step The information provider encrypts the information encryption private key W with the information provider's public key PC using the public key encryption means 210 (S3).
66), the encrypted information encryption secret key CW = W PC (mo
dN) to the user via the communication line 30 (S3).
67).

【0237】利用者は、公開鍵暗号手段107により利
用者の秘密情報SUを用いて暗号化された情報暗号化用
秘密鍵CWにディジタル署名を行い(S368)、署名
付き情報暗号化用秘密鍵SW=CWSU(mod N2)を通
信回線30を介して情報提供者に送信する(S36
9)。
The user digitally signs the information encryption private key CW encrypted by the public key encryption means 107 using the user's secret information SU (S368), and the signed information encryption private key. SW = CW SU (mod N2) is transmitted to the information provider via the communication line 30 (S36).
9).

【0238】情報提供者は、署名付き情報暗号化用秘密
鍵SWを一時メモリ203に蓄積した(S370)後、
検証手段206において利用者の公開鍵PUを用いて署
名検証式CW=SWPU(mod N2)を満たすうかどうか
を検証する(S371)。この検証に失敗した場合には
利用者は不正であると見做してただちにプロトコルの実
行を中止する(S372)。また検証に成功した場合に
は、演算手段204において情報暗号化用秘密鍵Wを任
意ビット長の複数のブロックに分割し、情報暗号化用ブ
ロック秘密鍵WBを生成する(S373)。ここでは説
明を簡単にするため、分割したブロック数をb、全ての
ブロックについてビット長をLで一定とし、分割した情
報暗号化用秘密鍵を情報暗号化用ブロック秘密鍵WBij
(i=1,2,…,L:j=1,2,…,b)と表す。
すなわち、WBij=W(i+L(j-1))であり、例えばWB11
=W1 ,WL1=WL ,WB12=WL+1 ,WBLb=Wg
ようになる。
The information provider accumulates the signed information encryption private key SW in the temporary memory 203 (S370).
The verification unit 206 verifies whether the signature verification formula CW = SW PU (mod N2) is satisfied using the user's public key PU (S371). If this verification fails, the user deems that the user is illegal and immediately stops executing the protocol (S372). If the verification is successful, the arithmetic means 204 divides the information encryption secret key W into a plurality of blocks having an arbitrary bit length to generate an information encryption block secret key WB (S373). Here, for the sake of simplicity, the number of divided blocks is assumed to be b, the bit length of all blocks is fixed to L, and the divided information encryption secret key is used as the information encryption block secret key WB ij.
(I = 1, 2,..., L: j = 1, 2,..., B).
That is, WB ij = W (i + L (j−1)) , for example, WB 11
= W 1, W L1 = W L, so that the WB 12 = W L + 1, WB Lb = W g.

【0239】利用者は、乱数発生手段103によりg個
の乱数Rij(i=1,2,…,L:j=1,2,…,
b)を生成した後一時メモリ102に蓄積し(S37
4)、それぞれについて演算手段104により初期応答
文Xij=Rij 2 (mod N1)(i=1,2,…,L:j
=1,2,…,b)を計算した後一時メモリ102に蓄
積し(S375)、初期応答文Xij(i=1,2,…,
L:j=1,2,…,b)を通信回線30を介して情報
提供者に送信する(S376)。
The user generates g random numbers R ij (i = 1, 2,..., L: j = 1, 2,.
After generating b), it is stored in the temporary memory 102 (S37).
4) For each, the initial response sentence X ij = R ij 2 (mod N1) (i = 1, 2,..., L: j)
= 1, 2,..., B) are stored in the temporary memory 102 (S375), and the initial response sentence X ij (i = 1, 2 ,.
L: j = 1, 2,..., B) are transmitted to the information provider via the communication line 30 (S376).

【0240】情報提供者は、初期応答文Xij(i=1,
2,…,L:j=1,2,…,b)を一時メモリ203
に蓄積した(S377)後、演算手段204中の一方向
性ランダムハッシュ関数h(・)によりgビット長の鍵
暗号化用秘密鍵K=(K11,K12,…,KLb)=
h(X1j‖X2j‖…‖XLj)を生成し(S378)、情
報暗号化用ブロック秘密鍵WBijと鍵暗号化用秘密鍵K
ij(i=1,2,…,L:j=1,2,…,b)とから
演算手段204中の関数f(・)により検査文eij(i
=1,2,…,L:j=1,2,…,b)を生成して一
時メモリ203に蓄積する(S379)。ここで、関数
fには例えばeij=f(W
The information provider sets the initial response sentence Xij (i = 1,
2,..., L: j = 1, 2,.
(S377), and a g-bit long secret key K = (K11, K12,..., KLb) = by the one-way random hash function h (·) in the arithmetic means 204.
h (X1j‖X2j‖... ‖XLj) (S378), and a block secret key for information encryption WBij and a secret key for key encryption K
ij (i = 1, 2,..., L: j = 1, 2,..., b) and the check sentence eij (i)
= 1, 2,..., L: j = 1, 2,..., B) and store them in the temporary memory 203 (S379). Here, the function f includes eij = f (W

【外5】 これより以下の処理は第jブロックについてのものであ
り、配送確認ステップは第1ブロックから第bブロック
まで各ブロックごとに以下の処理を順次(b回)繰り返
し行なう。
[Outside 5] Accordingly, the following processing is for the j-th block, and the delivery confirmation step repeats the following processing for each block from the first block to the b-th block sequentially (b times).

【0241】情報提供者は、利用者に検査文eij(i=
1,2,…,L)を通信回線30を介して送信する(S
380)。
The information provider informs the user of the check sentence e ij (i =
, L) are transmitted via the communication line 30 (S
380).

【0242】利用者は、検査文eij(i=1,2,…,
L)を一時メモリ102に蓄積した(S381)後、演
算手段104において検査文eijを用いて、乱数Rijと
利用者の秘密情報Sとから、eij=0ならばYji=Rij
を、eij=1ならばYij=S×Rij(mod N1)をそれ
ぞれのビットiについて計算し(S382)、応答文Y
ij(i=1,2,…,L)として情報提供者に通信回線
30を介して送信する(S383)。
The user checks the check sentence eij (i = 1, 2,...,
L) is stored in the temporary memory 102 (S381), and then the arithmetic means 104 uses the check sentence eij to determine from the random number Rij and the user secret information S that if eij = 0, then Yji = Rij
If eij = 1, Yij = S × Rij (mod N1) is calculated for each bit i (S382), and the response sentence Y
ij (i = 1, 2,..., L) is transmitted to the information provider via the communication line 30 (S383).

【0243】情報提供者は、応答文Yij(i=1,2,
…,L)を一時メモリ203に蓄積した(S384)
後、検証手段206において利用者の公開情報ID、初
期応答文Xij、応答文Yijおよび検査文eijとから、e
ij=0ならば検証式Yij2 =Xij(mod N1)を、eij
=1ならば検証式Yij2 =Xij×ID(mod N1)を満
たすかどうかをそれぞれのビットiについて検証する
(S385)。この検証に失敗した場合には利用者は不
正であると見做して直ちにプロトコルの実行を中止し
(S386)、また成功した場合にはS380に戻り、
すべてのブロックが終了するまで以上の処理を繰り返す
(S387)。そして、第1ブロックから第bブロック
までの全てのブロックについて検証に成功した場合に
は、情報暗号化用秘密鍵W、署名付き情報暗号化用秘密
鍵SW、検査文eij、応答文Yij(i=1,2,…,
L:j=1,2,…,b)を通信履歴データHとして通
信履歴ファイル208に記録管理する(S388)。
The information provider sends the response sentence Yij (i = 1, 2, 2,
.., L) are stored in the temporary memory 203 (S384).
After that, the verification means 206 derives e from the user's public information ID, the initial response sentence Xij, the response sentence Yij and the check sentence eij.
If ij = 0, the verification equation Yij2 = Xij (mod N1) is calculated as eij
If = 1, it is verified whether or not each of the bits i satisfies the verification formula Yij2 = Xij × ID (mod N1) (S385). If this verification fails, the user is deemed to be invalid and immediately stops executing the protocol (S386), and if successful, returns to S380.
The above processing is repeated until all the blocks are completed (S387). If the verification is successful for all the blocks from the first block to the b-th block, the secret key W for encrypting information, the secret key SW for encrypting signed information, the check sentence eij, and the response sentence Yij (i = 1,2,…,
L: j = 1, 2,..., B) is recorded and managed as communication history data H in the communication history file 208 (S388).

【0244】(3)情報取り出しステップ 利用者は、初期応答文Xij(i=1,2,…,L:j=
1,2,…,b)から演算手段104中の一方向性ラン
ダムハッシュ関数h(・)によりgビット長の鍵暗号化
用秘密鍵K=(K11,K12,…,KLb)=h(X
1j‖X2j‖…‖XLj)を生成し(S389)、検査文e
ijと鍵暗号化用秘密鍵Kij(i=1,2,…,L:j=
1,2,…,b)とから演算手段104中の関数f
(・)の逆関数f′(・)により情報暗号化用ブロック
秘密鍵WBij(i=1,2,…,L:j=1,2,…,
b)を取り出す(S390)。ここで、例えば関
(3) Information Retrieval Step The user is required to enter the initial response sentence Xij (i = 1, 2,..., L: j =
, B), a g-bit long secret key K = (K11, K12,..., KLb) = h (X) by a one-way random hash function h (·) in the arithmetic means 104.
1j {X2j}... {XLj) is generated (S389), and the check statement e is generated.
ij and a key encryption secret key Kij (i = 1, 2,..., L: j =
The function f in the arithmetic means 104 is obtained from
The block secret key for information encryption WBij (i = 1, 2,..., L: j = 1, 2,.
b) is taken out (S390). Here, for example,

【外6】 論理和を表す。その後、演算手段104に情報暗号化用
ブロック秘密鍵WBij(i=1,2,…,L:j=1,
2,…,b)を用いて情報暗号化用秘密鍵W=(W1,
W2,…,Wg)を生成し、情報蓄積手段109に蓄積
する(S391)。最後に、情報暗号化用秘密鍵Wを秘
密鍵として共通暗号手段105により情報蓄積手段10
9に蓄積された暗号文Cを復号し(S392)、情報M
=Dw (C)を情報出力/利用手段106より獲得する
ことができる(S393)。
[Outside 6] Represents a logical sum. After that, the arithmetic means 104 gives the information encryption block secret key WBij (i = 1, 2,..., L: j = 1,
, B), the information encryption secret key W = (W1,
, Wg) are generated and stored in the information storage unit 109 (S391). Finally, the common encryption unit 105 uses the information encryption secret key W as a secret key to
9 (S392), and decrypts the information M
= Dw (C) can be obtained from the information output / use means 106 (S393).

【0245】(4)調停 後日、利用者が情報を受信していないと主張した場合に
は、情報提供者は通信履歴ファイル208に記録管理さ
れた通信履歴データHを提示し、調停者の一時メモリ4
02に蓄積する(S401)。
(4) Mediation If the user later claims that the information has not been received, the information provider presents the communication history data H recorded and managed in the communication history file 208, and the arbitrator's temporary Memory 4
02 (S401).

【0246】調停者は、公開暗号手段405において情
報暗号化用秘密鍵Wを情報提供者の公開鍵PCで暗号化
した情報暗号化用秘密鍵CW=WPC(mod N)を生成し
(S402)、検証手段403において署名付き情報暗
号化用秘密鍵SWが利用者の公開鍵PUを用いて署名検
証式CW=SWPU(mod N2)を満たすかどうかを検証
する。(S403)。検証が失敗した時は通信履歴デー
タHは無効とされる(S404)。
The arbitrator generates the information encryption secret key CW = W PC (mod N) in which the information encryption secret key W is encrypted by the information provider's public key PC in the public encryption means 405 (S402). The verification unit 403 verifies whether the secret key SW for encrypting the signed information satisfies the signature verification formula CW = SW PU (mod N2) using the user's public key PU. (S403). If the verification fails, the communication history data H is invalidated (S404).

【0247】署名の検証が成功した場合には、演算手段
401において利用者の公開情報IDと通信履歴データ
H中の検査文eijおよび応答文Yijから、eij=0なら
ば、Xij=Yij2 (mod N1)を、eij=1ならばXij
=Yij2 /ID(mod N1)をそれぞれのビットiにつ
いて計算して一時メモリ402に蓄積し(S405)、
情報暗号化用秘密鍵Wから演算手段401において情報
暗号化用ブロック秘密鍵WBij(i=1,2,…,L:
j=1,2,…,b)を生成する(S406)。次に、
計算結果Xij(i=1,2,…,L)から演算手段40
1中の一方向性ランダムハッシュ関数h(・)によりg
ビット長の鍵暗号化用秘密鍵K=(K11,K12,
…,KLb)=h(X1j‖X2j‖…‖XLj)を生成し
(S407)、情報暗号化用ブロック秘密鍵WBijと鍵
暗号化用秘密鍵Kij(i=1,2,…,L:j=1,
2,…,b)とから演算手段401中の関数f(・)に
より検査文eij(i=1,2,…,L:j=1,2,
…,b)を生成して(S408)、検証手段403にお
いて一時メモリ402に蓄積された通信履歴データH中
の検査文eij(i=1,2,…,L:j=1,2,…,
b)と全てのビットについて一致するかどうかを検査す
る(S409)。全てのビットについて一致すれば、通
信履歴データHの正当性が証明されたことになり、利用
者が情報Mを受信していることが保証される(S41
0)。そうでなければ通信履歴データHは無効とされる
(S411)。
If the signature verification is successful, the arithmetic means 401 determines from the public information ID of the user and the check sentence eij and the response sentence Yij in the communication history data H that if eij = 0, Xij = Yij2 (mod N1) is changed to Xij if eij = 1.
= Yij2 / ID (mod N1) is calculated for each bit i and stored in the temporary memory 402 (S405).
The information encrypting block secret key WBij (i = 1, 2,..., L:
j = 1, 2,..., b) are generated (S406). next,
From the calculation result Xij (i = 1, 2,..., L), the calculating means 40
G by the one-way random hash function h (•) in 1
Bit-length secret key for key encryption K = (K11, K12,
.., KLb) = h (X1j‖X2j‖... JXLj) (S407), and a block secret key WBij for information encryption and a secret key Kij for key encryption (i = 1, 2,..., L: j). = 1
2,..., B) and the check statement eij (i = 1, 2,..., L: j = 1, 2,.
, B) are generated (S408), and the check sentence eij (i = 1, 2,..., L: j = 1, 2,...) In the communication history data H stored in the temporary memory 402 by the verification means 403. ,
It is checked whether or not b) matches all the bits (S409). If all the bits match, the validity of the communication history data H is proved, and it is guaranteed that the user has received the information M (S41).
0). Otherwise, the communication history data H is invalidated (S411).

【0248】上記の情報配送方式を用いれば、情報Mは
初めに暗号文Cに暗号化されて利用者に送信もしくは物
理媒体により配布されるため、暗号文Cを利用者が入手
した時点では情報Mを獲得されることはない。そしてプ
ロトコルが正常に終了した時点で、ゼロ知識証明プロト
コルによる利用者認証が正常に行なわれたことのほか
に、検査文eを利用者が正常に受信したことが確認でき
る。また、検査文eの他は利用者自身が作成した初期応
答文Xij(i=1,2,…,L:j=1,2,…,b)
から情報暗号化用秘密鍵Wを生成し、利用者が暗号文C
を復号して情報Mを獲得することができるため、検査文
eを利用者が正常に受信したことと利用者が情報Mを正
常に受信したこととは同値となる。したがって、情報提
供者は正確かつ確実に情報Mを利用者に配送したことを
確認できる。
When the above information delivery method is used, the information M is first encrypted into the cipher text C and transmitted to the user or distributed by the physical medium. You won't get M. Then, when the protocol ends normally, it can be confirmed that the user has normally received the check sentence e in addition to the fact that the user authentication by the zero knowledge proof protocol has been normally performed. In addition to the check sentence e, an initial response sentence X ij (i = 1, 2,..., L: j = 1, 2,.
Generates a secret key W for information encryption from the
Can be decoded to obtain the information M, so that the user has successfully received the check sentence e and the user has received the information M normally have the same value. Therefore, the information provider can confirm that the information M has been delivered to the user accurately and reliably.

【0249】また、情報提供者と利用者との間の通信は
情報暗号化用秘密鍵Wの分割ブロック数bと同じ回数だ
け繰り返し行なわれるため、途中で情報提供者の検証に
失敗した場合にはそれ以降の通信は打ち切られ、残りの
検査文は送信されない。すなわち、利用者が知ることの
できる検査文は検証に失敗する以前のもののみに限られ
るので、情報提供者の検証を失敗させた利用者は暗号文
Cを復号するために必要な情報の一部しか獲得すること
ができず、結果として正しい情報暗号化用秘密鍵Wを生
成することが不可能となる。したがって、利用者の秘密
情報Sを知らない不正な利用者が不正な応答文を送信す
る場合はもとより、応答文そのものを送信しないような
不正行為を行ない、情報提供者が情報Mを利用者に配送
した事実を証明する通信履歴データHを情報提供者が記
録できないにも関わらず、利用者が情報Mを獲得するの
に必要な検査文eを全て受信し、情報Mを不正に復号/
獲得してしまうことがないようにすることが可能であ
る。なお、上記の説明では分割するブロックを各ブロッ
クともビット長をLで一定としたが、例えば第1ブロッ
クは1ビット、第ブロックは2ビット、第3ブロックは
4ビットというようにブロックごとにビット長を変えて
も当然構わない。
Since the communication between the information provider and the user is repeatedly performed the same number of times as the number of divided blocks b of the information encryption secret key W, if the verification of the information provider fails in the middle, The communication after that is aborted, and the remaining check statements are not transmitted. That is, since the check sentence that the user can know is limited only to the one before the verification failed, the user who failed the verification of the information provider can obtain one of the information necessary for decrypting the ciphertext C. Only the copy can be obtained, and as a result, it becomes impossible to generate a correct information encryption private key W. Therefore, when an unauthorized user who does not know the user's secret information S sends an incorrect response message, he or she performs an illegal act not to send the response message itself, and the information provider sends the information M to the user. In spite of the fact that the information provider cannot record the communication history data H proving the fact of delivery, the user receives all the check statements e necessary for acquiring the information M and illegally decrypts the information M /
It is possible to prevent it from being acquired. In the above description, the bit length of each divided block is fixed at L. For example, the first block is 1 bit, the second block is 2 bits, and the third block is 4 bits. Of course, you can change the length.

【0250】次に、署名付き情報暗号化用秘密鍵SWは
利用者にしか作成できないため、情報暗号化秘密鍵Wも
しくは署名付き情報暗号化用秘密鍵SWを情報提供者が
不正に改変することはできない。また、情報暗号化用秘
密鍵Wと、初期応答文Xij、検査文eij、応答文Y
ij(i=1,2,…,L:j=1,2,…,b)からな
る通信系列との関係では、ゼロ知識証明プロトコルにお
ける検証式と一方向性ランダムハッシュ関数h(・)と
により相互に関係し合っているため、それらの一部を不
正に改竄するなどして通信系列を改変・偽造することは
不可能である。したがって、通信履歴データHを記録保
管することにより暗号文Cを復号して利用者が情報Mを
獲得できるための情報暗号化用秘密鍵Wを利用者が確実
に受信していることの証拠として後に調停者などの中立
的な第三者に提示することができる。
Next, since the signed information encryption private key SW can be created only by the user, the information provider must not illegally modify the information encryption private key W or the signed information encryption private key SW. Can not. Further, the secret key W for information encryption, the initial response sentence X ij , the check sentence e ij , and the response sentence Y
ij (i = 1, 2,..., L: j = 1, 2,..., b), the relationship between the communication sequence and the verification formula in the zero-knowledge proof protocol and the one-way random hash function h (·) Therefore, it is impossible to alter or forge the communication sequence by illegally falsifying some of them. Therefore, as evidence that the user has received the information encryption private key W for the user to obtain the information M by decrypting the ciphertext C by recording and storing the communication history data H Later it can be presented to a neutral third party, such as a mediator.

【0251】以上の説明は、情報提供者が情報Mを正確
かつ確実に利用者に配送したことを証明できるものであ
り、例えば情報Mを著作物などの有料情報とした場合、
上記の情報配送方法によって情報提供者が利用者に情報
Mを送信することにより、情報提供者が記録管理する通
信履歴データHを著作権使用料等の情報料を徴収すると
きの証明情報として利用できるなど、様々な利用が可能
である。
The above description can prove that the information provider has accurately and reliably delivered the information M to the user. For example, when the information M is paid information such as a copyrighted work,
The information provider transmits the information M to the user according to the information delivery method described above, so that the communication history data H recorded and managed by the information provider is used as proof information when collecting information fees such as a royalty fee. Various uses are possible.

【0252】また、上記の説明ではFiat Shamir 法をも
とに説明をしたが、本方法は拡張Fiat Shamir 法(太田
−岡本「Fiat-Shamir 法の高次への拡張」、電子情報通
信学会技術研究報告ISEC88−13)を始めとす
る、素因数分解困難性あるいは離散対数問題等の困難性
に安全性の根拠を置く全てのゼロ知識対話証明プロトコ
ルに応用が可能である。
Although the above description has been made based on the Fiat Shamir method, this method is based on the extended Fiat Shamir method (Ota-Okamoto, "Extension of Fiat-Shamir Method to Higher Orders", IEICE technical report. The present invention can be applied to any zero-knowledge interactive proof protocol based on security, such as research report ISEC88-13) and difficulties such as prime factorization difficulty or discrete logarithm problem.

【0253】以上説明したとおり、本発明の第9実施例
によれば、ゼロ知識証明プロトコルを利用した情報配送
方法では、第一に情報配送ステップにおいて、利用者が
要求した情報は情報提供者によって暗号化されて利用者
に配送されるため、この時点では要求した情報そのもの
を利用者が取り出すことはできない。第二に配送確認ス
テップで行われるプロトコル動作自体は利用者認証とし
てのゼロ知識証明プロトコルと同等であるため、ゼロ知
識証明プロトコルと同じように不正な利用者が情報提供
者の検証をクリアすることはほぼ不可能である。第三に
配送確認ステップが正常に終了した場合には、ゼロ知識
証明プロトコルが正常に終了したことと同値であるか
ら、情報提供者は利用者が検査文を正しく受信し、適正
な処理をしていると判断できる。第四に情報取り出しス
テップにおいて、利用者は検査文を正しく受信できれば
情報暗号化用秘密鍵を作成することができるので、この
時点で前記情報暗号化用秘密鍵により暗号化された情報
を復号し、要求した情報を取り出すことができる。した
がって、これらの効果により、情報配送方法の全てのス
テップが終了した場合には、情報提供者は正規の利用者
に対して要求された情報を暗号化した状態で提供した
後、利用者が暗号化された情報を復号するために必要な
情報を利用者に配送し、かつ確実に利用者が受信したこ
とが確認できるので、情報提供者は利用者が要求した情
報を利用者まで確実に配送したと判断できる。
As described above, according to the ninth embodiment of the present invention, in the information delivery method using the zero-knowledge proof protocol, first, in the information delivery step, the information requested by the user is determined by the information provider. Since the encrypted information is delivered to the user, the user cannot retrieve the requested information itself at this time. Second, since the protocol operation itself performed in the delivery confirmation step is equivalent to the zero-knowledge proof protocol as user authentication, an unauthorized user must clear the information provider's verification in the same way as the zero-knowledge proof protocol. Is almost impossible. Third, if the delivery confirmation step is completed successfully, it is equivalent to the successful completion of the zero-knowledge certification protocol. Can be determined to be. Fourth, in the information extracting step, the user can create the information encryption private key if the inspection statement can be received correctly. At this point, the user decrypts the information encrypted by the information encryption private key. , The requested information can be retrieved. Therefore, due to these effects, when all the steps of the information delivery method are completed, the information provider provides the requested information to the authorized user in an encrypted state, and then the user The information provider delivers the information required to decrypt the coded information to the user and ensures that the user has received it, so the information provider can reliably deliver the information requested by the user to the user. It can be determined that it has been done.

【0254】叉、情報提供者が自分に都合のよい情報暗
号化用秘密鍵に不正に改竄できないようにすることがで
きる。さらに、暗号化された情報暗号化用秘密鍵は情報
提供者以外は復号することができないので、署名を行う
時点では利用者に情報暗号化用秘密鍵を知られることは
ない。
In addition, it is possible to prevent an information provider from illegally falsifying a private key for information encryption which is convenient for him / her. Furthermore, since the encrypted information encryption private key cannot be decrypted by anyone other than the information provider, the user does not know the information encryption private key at the time of signing.

【0255】叉、通信履歴を偽造することは不可能であ
るので、情報提供者は正規の利用者に対して要求された
情報を暗号化した状態で提供した後、利用者が暗号化さ
れた情報を復号するために必要な情報を利用者に配送
し、かつ確実に利用者が受信したことを後日証明できる
証拠能力を持つことができる。
Since it is impossible to forge the communication history, the information provider provides the requested information to the authorized user in an encrypted state, and then the The information necessary for decoding the information can be delivered to the user, and the user can have the evidential ability to prove that the user has received the information at a later date.

【0256】叉、証拠能力を有する通信履歴を必要に応
じて提示できるようになる。また、情報提供者が情報を
配送した事実の証拠として記録管理しなければならない
情報量が桜井(特開平5−12321)の方式と比較し
て大幅に削減できる。
Further, a communication history having an evidential ability can be presented as needed. Further, the amount of information that must be recorded and managed as evidence of the fact that the information provider has delivered the information can be significantly reduced as compared with the method of Sakurai (Japanese Patent Laid-Open No. 5-12321).

【0257】叉、情報提供者と利用者の間で情報の提供
の有無について調停をする必要が生じた場合、裁判所等
の中立な調停機関が証拠能力を有する通信履歴について
その正当性を検査することにより、情報提供者と利用者
のどちらの主張が正当であるのかを判定できる。
When it is necessary to arbitrate whether or not information is provided between the information provider and the user, a neutral arbitration body such as a court examines the validity of the communication history having an evidential ability. This makes it possible to determine which of the information provider and the user is valid.

【0258】叉、例えば不正な利用者による利用などに
より配送確認ステップの途中で情報提供者の検証に失敗
した場合には、ただちにプロトコルの実行が中止され、
検証に失敗した以降のブロックは利用者に送信されない
ことになる。したがって、情報提供者の検証を失敗させ
た利用者は暗号化された情報を復号するために必要な情
報の一部しか獲得することができず、結果として情報暗
号化用秘密鍵を生成することが不可能となるので、不正
な利用者が要求した情報を不正に獲得してしまうことが
ないようにできる。
If the verification of the information provider fails during the delivery confirmation step due to, for example, an unauthorized user, the execution of the protocol is immediately stopped.
Blocks after the failed verification will not be sent to the user. Therefore, the user who fails the verification of the information provider can obtain only a part of the information necessary for decrypting the encrypted information, and as a result, generates the information encryption private key. Therefore, it is possible to prevent unauthorized acquisition of information requested by an unauthorized user.

【0259】叉、この実施例によれば、情報提供者が要
求された情報を利用者に確実に配送し、かつ利用者が確
実に受信していることを情報提供者が確認できるシステ
ムとなる。また、必要に応じて情報提供者が利用者を認
証する利用者認証方法としてのゼロ知識証明プロトコル
を単独に使用することもできる。
According to this embodiment, the information provider can reliably deliver the requested information to the user, and the information provider can confirm that the user has received the information without fail. . Further, the zero-knowledge proof protocol as a user authentication method in which the information provider authenticates the user can be used alone as needed.

【0260】叉、情報暗号化秘密鍵を生成するときに乱
数文を利用できるようにしたシステムとなる。
In addition, a system in which a random number statement can be used when generating an information encryption private key is provided.

【0261】叉、情報提供者が秘密に保持すべき情報を
蓄積することができる情報提供者秘密情報蓄積手段を有
したシステムとなる。
In addition, a system having information provider secret information storage means capable of storing information to be kept secret by the information provider is provided.

【0262】叉、情報提供者と利用者の間で公開鍵暗号
方法による暗号通信ができるようにしたシステムとな
る。
[0262] Further, a system is provided in which encrypted communication can be performed between an information provider and a user by a public key encryption method.

【0263】叉、鍵暗号化用秘密鍵と生成機能を有し、
情報暗号化用秘密鍵と鍵暗号用秘密鍵とを利用した情報
配送ができるようにしたシステムとなる。
Also, it has a secret key for key encryption and a generation function,
A system that enables information delivery using a secret key for information encryption and a secret key for key encryption is provided.

【0264】叉、証拠能力を有する通信履歴を必要に応
じて提示できるようにしたシステムとなる。
[0264] Further, a system is provided in which a communication history having an evidential ability can be presented as needed.

【0265】叉、裁判所等の中立な調停機関により、証
拠能力を有する通信履歴についてその正当性を検査し、
情報提供者と利用者のどちらの主張が正当であるのかを
判定することができるようにしたシステムとなる。
Also, a neutral mediation organization such as a court examines the validity of a communication history having an evidential ability,
This is a system that can determine which of the information provider and the user is valid.

【0266】叉、不正な利用者があることを検出した際
には直ちにプロトコルの実行を中止して、不正な利用者
が要求した情報を不正に獲得してしまうことがないよう
にしたシステムとなる。
Further, when it is detected that there is an unauthorized user, the execution of the protocol is immediately stopped to prevent the information requested by the unauthorized user from being illegally obtained. Become.

【0267】尚、本発明は上述した各実施例に限定され
るものではなく、その要旨を逸脱しない範囲で、種々変
形して実施することができる。
The present invention is not limited to the above-described embodiments, but can be implemented in various modifications without departing from the scope of the invention.

【0268】[0268]

【発明の効果】以上説明したとおり、上記第1実施例で
は、第一に情報提供者による利用者の認証方法としてゼ
ロ知識証明プロトコルを利用しているため、ゼロ知識証
明プロトコルの目的や従来からの利用方法からいって
も、利用者が正当なカードを利用していなければ情報提
供者の検証をクリアし続けることはほとんど不可能であ
り、認証段階でほぼ完全に拒絶される。
As described above, in the first embodiment, first, the zero-knowledge proof protocol is used as a method of authenticating a user by an information provider. However, it is almost impossible to continue to pass the information provider's verification unless the user uses a valid card, and the user is almost completely rejected at the authentication stage.

【0269】第二に情報提供者から配送情報を利用者へ
配送する部分では、配送情報をゼロ知識証明プロトコル
の検査文に含めて配送を行なっているため、ゼロ知識証
明プロトコルが正常に終了すれば、カード上において間
違いなく検査文、すなわち配送情報を受信・記録し、適
正な処理をしていたことになる。また、途中で情報提供
者の検証に失敗した場合にはそれ以降の認証は打ち切ら
れ、残りの検査文は配送されないため、利用者が知るこ
とのできる配送情報は検証に失敗する以前のものに限ら
れる。
Secondly, in the part where the delivery information is delivered from the information provider to the user, the delivery information is included in the check sentence of the zero knowledge proof protocol and the delivery is performed, so that the zero knowledge proof protocol ends normally. If this is the case, the inspection statement, that is, the delivery information, is definitely received and recorded on the card, and appropriate processing is performed. Also, if the verification of the information provider fails in the middle, the subsequent authentication will be terminated and the remaining inspection statements will not be delivered, so the delivery information that the user can know will be the one before the failure. Limited.

【0270】第三に通信履歴(前記Xi 、前記Yi 、前
記検査文eji)を記録管理することにより情報提供者と
利用者との間で正常な認証が行なわれたことを情報提供
者は確認できるので、第二の効果と合わせて利用者は配
送情報を受信し、かつカードの蓄積手段14に配送情報
が記録されているはずである。このことは、情報提供者
から開示される通信履歴と利用者から提出されるカード
に記録された配送情報とを照合することによって、利用
者が情報暗号化用秘密鍵Wを生成できる状態であるかど
うかを判定できる。なお、この場合、利用者からカード
の提出がない場合には、情報暗号化用秘密鍵Wは生成で
きる状態にあると判定する。
Third, by recording and managing the communication history (the X i , the Y i , and the check sentence e ji ), it is possible to provide information that normal authentication has been performed between the information provider and the user. Since the user can confirm the delivery information, the user should receive the delivery information together with the second effect, and the delivery information should be recorded in the storage means 14 of the card. This means that the user can generate the information encryption private key W by comparing the communication history disclosed by the information provider with the delivery information recorded on the card submitted by the user. Can be determined. In this case, if the user does not submit the card, it is determined that the information encryption private key W can be generated.

【0271】したがって、不正な利用者がシステムを利
用したり、あるいは配送情報のすべてを不正に搾取した
りすることはできない。また、正常に認証が終了してい
るにも関わらず利用者が配送情報を受信していないなど
という不当な主張に対して、情報提供者は通信履歴を開
示するとともに、利用者にカードを提出するよう要求す
ることにより対抗できる。
[0271] Therefore, an unauthorized user cannot use the system or exploit all the delivery information illegally. In addition, the information provider discloses the communication history and submits a card to the user in response to an unjust claim that the user has not received the delivery information even though the authentication has been completed normally. Can be challenged by asking them to do so.

【0272】また、上記第1実施例において、配送情報
すべてを分割して検査文ejiを生成する必要性はなく、
例えば、配送情報の始めからgnビット目までを検査文
ji(j=1,…,n)とし、n組の検査文ejiによる
ゼロ知識証明プロトコルが終了した後、配送情報の残り
の部分を一括して送信するような情報の配送方法とすれ
ば、nの値を様々に変えることにより、ゼロ知識証明に
おけるセキュリティレベルを変えられるうえ、通信量を
削減できる。例えばnをLw /gの半分とすれば、通信
量もほぼ半分となる。
In the first embodiment, there is no need to divide all the delivery information to generate the check sentence ji .
For example, the test statement e ji from the beginning of the delivery information to gn bit (j = 1, ..., n ) and, after the zero-knowledge proof protocol according n sets of test statement e ji is finished, the rest of the delivery information , The security level in the zero-knowledge proof can be changed and the amount of communication can be reduced by changing the value of n in various ways. For example, if n is set to half of L w / g, the communication amount is also almost half.

【0273】また、検査文ejiの生成方法についても、
単純に配送情報を分割して生成するだけでなく、ダミー
情報を付加したり、あるいは暗号化を行ったりして生成
することも可能である。この場合、カード内にあらかじ
め設定されている秘密情報、もしくは蓄積された検査文
jiから自律的にダミー情報を除去、あるいは復号を行
ったりして元の配送情報に復元する機能を持たせること
により、ゼロ知識証明を正常に終了しないかぎり、前記
配送情報を取り出せないようにできる。したがって、第
三者もしくは利用者が検査文ejiを不正に搾取したり、
大部分の検査文ejiを受信した後、故意に認証を失敗さ
せ、検査文ejiのうち配送されてこない残りの部分を予
測したりする等の不正行為を行ない、情報提供者が配送
に失敗したと判断あるいは気がつかないうちに、第三者
もしくは利用者が配送情報を獲得してしまうことがない
ようにできる。
Also, regarding the method of generating the check sentence e ji ,
In addition to simply generating the distribution information by dividing it, the distribution information can be generated by adding dummy information or performing encryption. In this case, a function to restore the original delivery information by autonomously removing or decrypting the dummy information from the secret information set in advance in the card or the stored inspection statement ji is provided. As a result, the delivery information cannot be taken out unless the zero knowledge proof is normally terminated. Therefore, a third party or a user illegally exploits the inspection sentence e ji ,
After receiving most of the check statements e ji , deliberately failing the authentication and performing fraudulent acts such as predicting the remaining parts of the check statement e ji that have not been delivered, and the information provider has decided to deliver It is possible to prevent a third party or user from acquiring the delivery information before the failure is determined or noticed.

【0274】また、上記第1実施例による情報配送方法
およびシステムでは、ゼロ知識証明プロトコルに必要な
情報はすべて耐タンパー装置上に組み込まれており、実
際の情報配送においても耐タンパー装置上に組み込まれ
た手段のみを用いて実行されるため、前記情報が外部に
漏れることはなく、たとえカード所有者であっても前記
情報を知ることができない。したがって、カード自体を
偽造したり、あるいはカード上の記録情報を書き変えた
りする等の不正行為を防止できる。
In the information delivery method and system according to the first embodiment, all information necessary for the zero-knowledge proof protocol is incorporated in the tamper-resistant device. Since the information is executed using only the selected means, the information does not leak to the outside, and even the card owner cannot know the information. Therefore, it is possible to prevent fraudulent acts such as falsifying the card itself or rewriting recorded information on the card.

【0275】一方、上記第2〜第4実施例のゼロ知識証
明プロトコルを利用した情報配送方法では、第一にプロ
トコルの動作自体は利用者認証としてのゼロ知識証明プ
ロトコルと同等であるため、ゼロ知識証明プロトコルと
同様に、不正な利用者が情報提供者の検証をクリアする
ことはほぼ不可能である。第二に配送確認ステップが正
常に終了した場合には、ゼロ知識証明プロトコルが正常
に終了したことと同値であるので、情報提供者は正しい
利用者が情報を正しく受信していると判断できる。
On the other hand, in the information delivery method using the zero-knowledge proof protocol of the second to fourth embodiments, firstly, since the operation itself of the protocol is equivalent to the zero-knowledge proof protocol as user authentication, the Similar to the knowledge proof protocol, it is almost impossible for an unauthorized user to clear the verification of the information provider. Secondly, when the delivery confirmation step is completed normally, the information provider can determine that the correct user has correctly received the information because the value is equivalent to that the zero knowledge proof protocol has been completed normally.

【0276】叉、情報を暗号化し暗号文として送信する
ことにより、第三者による情報の盗聴を防止し、かつ第
三者が情報を解読するために有効な情報も得られないよ
うにすることもできる。
Also, by encrypting the information and transmitting it as a ciphertext, it is possible to prevent eavesdropping on the information by a third party and to prevent the third party from obtaining effective information for decrypting the information. You can also.

【0277】叉、上記第2実施例によれば、暗号文の復
号処理を配送確認ステップと切り離して実行することが
できる。
According to the second embodiment, the ciphertext decryption process can be executed separately from the delivery confirmation step.

【0278】叉、上記第2、第3実施例によれば、例え
ばハッシュ関数などを用いて情報(または利用者が復号
可能な暗号文)から検査文を生成することにより検査文
のサイズを小さくすることができ、配送確認ステップに
おける通信量及び処理時間を削減できる。
According to the second and third embodiments, the size of the check sentence is reduced by generating the check sentence from information (or a user-encryptable cipher text) using, for example, a hash function. And the amount of communication and the processing time in the delivery confirmation step can be reduced.

【0279】叉、上記第3実施例によれば、一方向性関
数を用いて検査文を生成することにより、情報(または
利用者が復号可能な暗号文)、応答文、及び検査文とか
らなる通信履歴の偽造を不可能にする。
According to the third embodiment, by generating a check sentence using a one-way function, information (or a ciphertext that can be decrypted by a user), a response sentence, and a check sentence are obtained. Forgery of the communication history becomes impossible.

【0280】叉、例えば不正な利用者による利用などに
より配送確認ステップの途中で情報提供者のプロトコル
に失敗した場合には、直ちにプロトコルの実行が中止さ
れ、検証に失敗した以降のブロックは利用者に送信され
ないことになるため、結果として情報(または利用者が
復号可能な暗号文)全てを不正に獲得してしまうことが
ないようにできる。
If the protocol of the information provider fails during the delivery confirmation step due to, for example, use by an unauthorized user, the execution of the protocol is immediately stopped, and the blocks after the failure of the verification are replaced by the user. Therefore, it is possible to prevent the information (or the encrypted text that can be decrypted by the user) from being illegally acquired as a result.

【0281】叉、上記第4実施例によれば、大容量の情
報を送信する場合に、第一に情報は情報提供者が生成し
た情報暗号化用秘密鍵によって初めに暗号化されて利用
者に配送されるため、利用者の認証が行われる以前に情
報本体を利用者が取り出すことはできない。第二に情報
暗号化用秘密鍵についてのみ検査文として配送確認を行
うことにより、通信量及び配送確認のための処理時間を
大幅に短縮できる。第三に配送確認ステップが正常に終
了すれば利用者は検査文を正しく受信したことが確認で
き、情報取り出しステップにおいて情報暗号化用秘密鍵
を獲得することが保証されるので、この時点で初めて情
報を間違いなく取り出すことができる。したがって、こ
れらの効果により情報配送方法が終了した場合には、情
報提供者は正規の利用者に対して情報を暗号化した状態
で提供した後、利用者が暗号化された情報を復号するた
めに必要な情報を利用者に配送し、かつ確実に利用者が
受信したことが確認できるので、情報提供者は情報を利
用者まで確実に配送したと判断できる。
According to the fourth embodiment, when transmitting a large amount of information, first, the information is first encrypted by the information encryption secret key generated by the information provider, and the information is encrypted by the user. The information body is not delivered to the user before the user is authenticated. Second, by performing delivery confirmation as a check sentence only for the information encryption secret key, it is possible to greatly reduce the amount of communication and the processing time for delivery confirmation. Third, if the delivery confirmation step is completed normally, the user can confirm that the inspection sentence has been correctly received, and it is guaranteed that the information encryption private key will be obtained in the information retrieval step. Information can be retrieved without fail. Therefore, when the information delivery method is completed due to these effects, the information provider provides the information to an authorized user in an encrypted state, and then the user decrypts the encrypted information. The information provider can deliver the necessary information to the user and reliably confirm that the user has received the information, so that the information provider can determine that the information has been reliably delivered to the user.

【0282】叉、一方向性関数を用いて情報暗号化用秘
密鍵を生成することにより情報提供者にとって都合の良
い情報暗号化用秘密鍵を不正に生成できないようにする
ことができる。また、同様に一方向性関数を用いること
により、乱数文と検査文と応答文とからなる通信履歴を
偽造することは不可能になるので、情報提供者は正規の
利用者に対して要求された情報を暗号化した状態で提供
した後、利用者が暗号化された情報を復号するために必
要な情報を利用者に配送し、かつ確実に利用者が受信し
たことを後日証明できる証拠能力を持つことができる。
In addition, by generating a secret key for information encryption using a one-way function, it is possible to prevent unauthorized generation of a secret key for information encryption which is convenient for an information provider. Similarly, by using a one-way function, it becomes impossible to forge a communication history consisting of a random number sentence, a check sentence, and a response sentence. Capability to provide the user with the information necessary to decrypt the encrypted information after providing the encrypted information to the user, and to prove at a later date that the user has received the information reliably. Can have.

【0283】叉、検査文について暗号通信を行うこと
は、情報暗号化用秘密鍵についても暗号通信を行なって
いることと同等の効果が得られるため、第三者による情
報暗号化用秘密鍵の盗聴を防止し、かつ第三者が情報暗
号化用秘密鍵を解読するために有効な情報も得られない
ようにもなる。
Also, performing cryptographic communication on a check sentence has the same effect as performing cryptographic communication on an information encryption private key. This prevents eavesdropping and prevents a third party from obtaining effective information for decrypting the secret key for information encryption.

【0284】叉、検査文の復号処理を配送確認ステップ
と切り離して実行することができる。
In addition, the decryption processing of the check sentence can be executed separately from the delivery confirmation step.

【0285】叉、例えば不正な利用者による利用などに
より配送確認ステップの途中で情報提供者の検証に失敗
した場合には、ただちにプロトコルの実行が中止され、
検証に失敗した以降のブロックは利用者に送信されない
ことになる。したがって、情報提供者の検証を失敗させ
た利用者は暗号化された情報を復号するために必要な情
報の一部しか獲得することができず、結果として情報本
体もしくは情報暗号化用秘密鍵を生成することが不可能
となるので、不正な利用者が要求した情報を不正に獲得
してしまうことがないようにできる。
If the verification of the information provider fails during the delivery confirmation step due to, for example, an unauthorized user, the execution of the protocol is immediately stopped.
Blocks after the failed verification will not be sent to the user. Therefore, the user who fails the verification of the information provider can obtain only a part of the information necessary for decrypting the encrypted information, and as a result, the information itself or the secret key for information encryption can be obtained. Since it is impossible to generate the information, it is possible to prevent the information requested by the unauthorized user from being illegally obtained.

【0286】叉、上記第3、第4実施例によれば、偽造
不可能な通信履歴を実際に情報を配送した証拠として記
録管理することができ、かつ必要に応じて提示できるよ
うになる。さらに、情報提供者が情報を配送した事実の
証拠として記録管理しなければならない情報量が桜井
(特開平5−12321)の方式と比較して大幅に削減
できる。
According to the third and fourth embodiments, a communication history that cannot be forged can be recorded and managed as evidence that information has been actually delivered, and can be presented as necessary. Furthermore, the amount of information that must be recorded and managed as evidence of the fact that the information provider has delivered the information can be significantly reduced as compared with the method of Sakurai (Japanese Patent Laid-Open No. 5-12321).

【0287】叉、情報提供者と利用者の間で情報の提供
の有無について調停を行う必要が生じた場合、情報提供
者が通信履歴を裁判所等の中立な調停機関に提示し、調
停機関が証拠能力を有する通信履歴についてその正当性
を検査することにより、情報提供者と利用者のどちらの
主張が正当であるのかを判定できる。すなわち、情報提
供者が利用者に対して情報(または利用者が復号可能な
暗号文)を送信し、かつ利用者が確実に受信したこと
を、後日調停者が確認できるので、利用者が情報(また
は利用者が復号可能な暗号文)を受信しているにも関わ
らず、利用者が情報を受信していないなどという不当な
主張を防止できる。
When it becomes necessary to arbitrate whether information is provided between the information provider and the user, the information provider presents the communication history to a neutral arbitration organization such as a court, and the arbitration organization By examining the validity of the communication history having the evidential ability, it is possible to determine which of the information provider and the user is valid. In other words, the arbitrator can later confirm that the information provider has transmitted the information (or a ciphertext that can be decrypted by the user) to the user and that the user has received the information without fail. (Or a ciphertext that can be decrypted by the user), it is possible to prevent an unjust assertion that the user has not received information.

【0288】叉、上記第2〜第4実施例によれば、情報
提供者が要求された情報を利用者に確実に配送し、かつ
利用者が確実に受信していることを情報提供者が確認で
きるシステムとなる。また、必要に応じて情報提供者が
利用者を認証する利用者認証方法としてのゼロ知識証明
プロトコルを単独に使用することもできる。
According to the above-described second to fourth embodiments, the information provider surely delivers the requested information to the user, and the information provider confirms that the user has received the information without fail. The system can be confirmed. Further, the zero-knowledge proof protocol as a user authentication method in which the information provider authenticates the user can be used alone as needed.

【0289】叉、情報提供者と利用者の間で暗号通信が
できるようにしたシステムとなる。
[0289] In addition, a system is provided that enables encrypted communication between an information provider and a user.

【0290】叉、上記第4実施例によれば、情報提供者
から提供された情報を蓄積し、利用者が必要に応じて情
報を利用できるようにしたシステムとなる。
According to the fourth embodiment, a system is provided in which information provided by an information provider is accumulated, and the user can use the information as needed.

【0291】叉、情報暗号化用秘密鍵の生成機能を有
し、情報暗号化用秘密鍵を用いた情報配送ができように
したシステムとなる。
Further, the system has a function of generating a secret key for information encryption, and can deliver information using the secret key for information encryption.

【0292】叉、上記第3、第4実施例によれば、証拠
能力を有する通信履歴を必要に応じて提示できるように
したシステムとなる。
Further, according to the third and fourth embodiments, there is provided a system in which a communication history having an evidential ability can be presented as needed.

【0293】叉、不正な利用者であることを検出した際
には直ちにプロトコルの実行を中止して、不正な利用者
が要求した情報を不正に獲得してしまうことがないよう
にしたシステムとなる。
[0293] Further, when the system detects that the user is an unauthorized user, the system immediately stops the execution of the protocol so that the information requested by the unauthorized user is not illegally obtained. Become.

【0294】叉、裁判所等の中立な調停機関により、証
拠能力を有する通信履歴についてその正当性を検査し、
情報提供者と利用者のどちらの主張が正当であるのかを
判定することができるようにしたシステムとなる。
Also, a neutral mediation organization such as a court examines the validity of a communication history having an evidential ability,
This is a system that can determine which of the information provider and the user is valid.

【0295】一方、上記第5〜第8実施例によれば、ゼ
ロ知識証明プロトコルを利用した情報配送方法では、第
一に情報配送ステップにおいて、利用者が要求した情報
は情報提供者によって暗号化されて利用者に配送される
ため、この時点では要求した情報そのものを利用者が取
り出すことはできない。第二に配送確認ステップで行わ
れるプロトコル動作自体は利用者認証としてのゼロ知識
証明プロトコルと同等であるため、ゼロ知識証明プロト
コルと同じように不正な利用者が情報提供者の検証をク
リアすることはほぼ不可能である。第三に配送確認ステ
ップが正常に終了した場合には、ゼロ知識証明プロトコ
ルが正常に終了したことと同値であるから、情報提供者
は利用者が検査文を正しく受信し、適正な処理をしてい
ると判断できる。第四に情報取り出しステップにおい
て、利用者は検査文を正しく受信できれば、秘密鍵配送
文及び情報暗号化用秘密鍵を作成することができるの
で、この時点で前記情報暗号化用秘密鍵により暗号化さ
れた情報を復号し、要求した情報を取り出すことができ
る。したがって、これらの効果により、情報配送方法の
全てのステップが終了した場合には、情報提供者は正規
の利用者に対して要求された情報を暗号化した状態で提
供した後、利用者が暗号化された情報を復号するために
必要な情報を利用者に配送し、かつ確実に利用者が受信
したことが確認できるので、情報提供者は利用者が要求
した情報を利用者まで確実に配送したと判断できる。
On the other hand, according to the fifth to eighth embodiments, in the information delivery method using the zero knowledge proof protocol, first, in the information delivery step, the information requested by the user is encrypted by the information provider. At this time, the requested information itself cannot be taken out by the user. Second, since the protocol operation itself performed in the delivery confirmation step is equivalent to the zero-knowledge proof protocol as user authentication, an unauthorized user must clear the information provider's verification in the same way as the zero-knowledge proof protocol. Is almost impossible. Third, if the delivery confirmation step is completed successfully, it is equivalent to the successful completion of the zero-knowledge certification protocol. Can be determined to be. Fourth, in the information retrieval step, if the user can correctly receive the inspection statement, the user can create a secret key delivery statement and an information encryption secret key. At this point, the user can encrypt the information using the information encryption secret key. The requested information can be decrypted and the requested information can be extracted. Therefore, due to these effects, when all the steps of the information delivery method are completed, the information provider provides the requested information to the authorized user in an encrypted state, and then the user The information provider delivers the information required to decrypt the coded information to the user and ensures that the user has received it, so the information provider can reliably deliver the information requested by the user to the user. It can be determined that it has been done.

【0296】叉、上記第5、第6実施例によれば、検査
文について暗号通信をすることは、情報暗号化用秘密鍵
についても暗号通信をしていることと同等の効果が得ら
れることになり、第三者が通信路を盗聴したとしてもこ
れらの秘密鍵が知られることはない。さらに、情報暗号
化用秘密鍵を解読するために有効な情報も得られないよ
うにすることもできる。
According to the fifth and sixth embodiments, the cryptographic communication of the check sentence has the same effect as the cryptographic communication of the information encryption private key. Therefore, even if a third party eavesdrops on the communication path, these secret keys are not known. Further, it is also possible to prevent information that is valid for decrypting the secret key for information encryption from being obtained.

【0297】叉、上記第7、第8実施例によれば、情報
提供者にとって都合のよい情報暗号化用秘密鍵を不正に
作成できないようにすることができる。
According to the seventh and eighth embodiments, it is possible to prevent unauthorized creation of a secret key for information encryption which is convenient for the information provider.

【0298】叉、通信履歴を偽造することは不可能であ
るので、情報提供者は正規の利用者に対して要求された
情報を暗号化した状態で提供した後、利用者が暗号化さ
れた情報を復号するために必要な情報を利用者に配送
し、かつ確実に利用者が受信したことを後日証明できる
証拠能力を持つことができる。
Since it is impossible to forge the communication history, the information provider provides the required information to the authorized user in an encrypted state, and then the information provider The information necessary for decoding the information can be delivered to the user, and the user can have the evidential ability to prove that the user has received the information at a later date.

【0299】叉、証拠能力を有する通信履歴を必要に応
じて提示できるようになる。また、情報提供者が情報を
配送した事実の証拠として記録管理しなければならない
情報量が桜井(特開平5−12321)の方式と比較し
て大幅に削減できる。
Further, a communication history having an evidence ability can be presented as needed. Further, the amount of information that must be recorded and managed as evidence of the fact that the information provider has delivered the information can be significantly reduced as compared with the method of Sakurai (Japanese Patent Laid-Open No. 5-12321).

【0300】叉、情報提供者と利用者の間で情報の提供
の有無について調停をする必要が生じた場合、裁判所等
の中立な調停機関が証拠能力を有する通信履歴について
その正当性を検査することにより、情報提供者と利用者
のどちらの主張が正当であるのかを判定できる。
When it is necessary to arbitrate whether information is provided between the information provider and the user, a neutral arbitration body such as a court checks the validity of the communication history having an evidential ability. This makes it possible to determine which of the information provider and the user is valid.

【0301】叉、上記第8実施例によれば、情報配送要
求文を暗号送信することにより、第三者による情報配送
要求文の盗聴を防止し、どんな情報を要求したかなどの
利用者のプライバシーが保護できる。
According to the eighth embodiment, by encrypting and transmitting the information delivery request message, eavesdropping of the information delivery request message by a third party can be prevented, and the information of the user such as what information has been requested can be prevented. Privacy can be protected.

【0302】叉、鍵暗号化用秘密鍵及び情報暗号化用秘
密鍵については、情報提供者と利用者のみの秘密の情報
によりスクランブルされるので、第三者が通信路を盗聴
したとしてもこれらの秘密鍵が知られることはなく、ま
た秘密鍵を解読するために有効な情報も得られない。し
たがって、利用者が要求した情報を第三者が不正に獲得
することはできない。
[0302] The secret key for key encryption and the secret key for information encryption are scrambled by the secret information of only the information provider and the user. Secret key is not known, and no information is available to decrypt the secret key. Therefore, the information requested by the user cannot be illegally acquired by a third party.

【0303】叉、例えば不正な利用者による利用などに
より配送確認ステップの途中で情報提供者の検証に失敗
した場合には、ただちにプロトコルの実行が中止され、
検証に失敗した以降のブロックは利用者に送信されない
ことになる。したがって、情報提供者の検証を失敗させ
た利用者は暗号化された情報を復号するために必要な情
報の一部しか獲得することができず、結果として鍵暗号
化用秘密鍵もしくは情報暗号化用秘密鍵を生成すること
が不可能となるので、不正な利用者が要求した情報を不
正に獲得してしまうことがないようにできる。
If the verification of the information provider fails during the delivery confirmation step due to, for example, an unauthorized user, the execution of the protocol is immediately stopped,
Blocks after the failed verification will not be sent to the user. Therefore, the user who fails the verification of the information provider can obtain only a part of the information necessary for decrypting the encrypted information, and as a result, the secret key for key encryption or information encryption. Since it becomes impossible to generate a secret key for use, it is possible to prevent the information requested by an unauthorized user from being illegally obtained.

【0304】叉、上記第5〜第8実施例によれば、情報
提供者が要求された情報を利用者に確実に配送し、かつ
利用者が確実に受信していることを情報提供者が確認で
きるシステムとなる。また、必要に応じて情報提供者が
利用者を認証する利用者認証方法としてのゼロ知識証明
プロトコルを単独に使用することもできる。
According to the fifth to eighth embodiments, the information provider surely delivers the requested information to the user, and the information provider confirms that the user has received the information without fail. The system can be confirmed. Further, the zero-knowledge proof protocol as a user authentication method in which the information provider authenticates the user can be used alone as needed.

【0305】叉、情報暗号化秘密鍵を生成するときに乱
数文を利用できるようにしたシステムとなる。
[0305] Further, a system in which a random number statement can be used when generating an information encryption private key is provided.

【0306】叉、上記第5、第8実施例によれば、情報
提供者が秘密に保持すべき情報を蓄積することができる
情報提供者秘密情報蓄積手段を有したシステムとなる。
Further, according to the fifth and eighth embodiments, a system having information provider secret information storage means capable of storing information to be kept secret by the information provider is provided.

【0307】叉、上記第5、第6、第8実施例によれ
ば、情報提供者と利用者の間で公開鍵暗号方法による暗
号通信ができるようにしたシステムとなる。
Further, according to the fifth, sixth, and eighth embodiments, a system is provided in which encrypted communication can be performed between an information provider and a user by a public key encryption method.

【0308】叉、上記第7、第8実施例によれば、情報
配送要求文を簡単に作成するための入力手段を利用者端
末に備えたシステムとなる。
According to the seventh and eighth embodiments, the user terminal is provided with an input means for easily creating an information delivery request sentence.

【0309】叉、鍵暗号化用秘密鍵と秘密鍵配送文との
生成機能を有し、情報暗号化用秘密鍵と鍵暗号用秘密鍵
とを利用した情報配送ができるようにしたシステムとな
る。
Further, the system has a function of generating a secret key for key encryption and a secret key delivery statement, so that information can be delivered using the secret key for information encryption and the secret key for key encryption. .

【0310】叉、証拠能力を有する通信履歴を必要に応
じて提示できるようにしたシステムとなる。
[0310] Further, a system is provided in which a communication history having an evidence ability can be presented as needed.

【0311】叉、裁判所等の中立な調停機関により、証
拠能力を有する通信履歴についてその正当性を検査し、
情報提供者と利用者のどちらの主張が正当であるのかを
判定することができるようにしたシステムとなる。
[0311] Also, a neutral arbitration body such as a court examines the legitimacy of the communication history having evidential ability,
This is a system that can determine which of the information provider and the user is valid.

【0312】叉、上記第8実施例によれば、不正な利用
者があることを検出した際には直ちにプロトコルの実行
を中止して、不正な利用者が要求した情報を不正に獲得
してしまうことがないようにしたシステムとなる。
According to the eighth embodiment, when it is detected that there is an unauthorized user, the execution of the protocol is immediately stopped, and the information requested by the unauthorized user is illegally acquired. It is a system that does not get lost.

【0313】一方、上記第9実施例によれば、ゼロ知識
証明プロトコルを利用した情報配送方法では、第一に情
報配送ステップにおいて、利用者が要求した情報は情報
提供者によって暗号化されて利用者に配送されるため、
この時点では要求した情報そのものを利用者が取り出す
ことはできない。第二に配送確認ステップで行われるプ
ロトコル動作自体は利用者認証としてのゼロ知識証明プ
ロトコルと同等であるため、ゼロ知識証明プロトコルと
同じように不正な利用者が情報提供者の検証をクリアす
ることはほぼ不可能である。第三に配送確認ステップが
正常に終了した場合には、ゼロ知識証明プロトコルが正
常に終了したことと同値であるから、情報提供者は利用
者が検査文を正しく受信し、適正な処理をしていると判
断できる。第四に情報取り出しステップにおいて、利用
者は検査文を正しく受信できれば情報暗号化用秘密鍵を
作成することができるので、この時点で前記情報暗号化
用秘密鍵により暗号化された情報を復号し、要求した情
報を取り出すことができる。したがって、これらの効果
により、情報配送方法の全てのステップが終了した場合
には、情報提供者は正規の利用者に対して要求された情
報を暗号化した状態で提供した後、利用者が暗号化され
た情報を復号するために必要な情報を利用者に配送し、
かつ確実に利用者が受信したことが確認できるので、情
報提供者は利用者が要求した情報を利用者まで確実に配
送したと判断できる。
On the other hand, according to the ninth embodiment, in the information delivery method using the zero-knowledge proof protocol, first, in the information delivery step, the information requested by the user is encrypted by the information provider and used. To be delivered to
At this point, the user cannot retrieve the requested information itself. Second, since the protocol operation itself performed in the delivery confirmation step is equivalent to the zero-knowledge proof protocol as user authentication, an unauthorized user must clear the information provider's verification in the same way as the zero-knowledge proof protocol. Is almost impossible. Third, if the delivery confirmation step is completed successfully, it is equivalent to the successful completion of the zero-knowledge certification protocol. Can be determined to be. Fourth, in the information extracting step, the user can create the information encryption private key if the inspection statement can be received correctly. At this point, the user decrypts the information encrypted by the information encryption private key. , The requested information can be retrieved. Therefore, due to these effects, when all the steps of the information delivery method are completed, the information provider provides the requested information to the authorized user in an encrypted state, and then the user Deliver the information necessary to decrypt the coded information to the user,
In addition, since the user can surely confirm that the information has been received, the information provider can determine that the information requested by the user has been reliably delivered to the user.

【0314】叉、情報提供者が自分に都合のよい情報暗
号化用秘密鍵に不正に改竄できないようにすることがで
きる。さらに、暗号化された情報暗号化用秘密鍵は情報
提供者以外は復号することができないので、署名を行う
時点では利用者に情報暗号化用秘密鍵を知られることは
ない。
Also, it is possible to prevent an information provider from illegally falsifying a private key for information encryption which is convenient for him / her. Furthermore, since the encrypted information encryption private key cannot be decrypted by anyone other than the information provider, the user does not know the information encryption private key at the time of signing.

【0315】叉、通信履歴を偽造することは不可能であ
るので、情報提供者は正規の利用者に対して要求された
情報を暗号化した状態で提供した後、利用者が暗号化さ
れた情報を復号するために必要な情報を利用者に配送
し、かつ確実に利用者が受信したことを後日証明できる
証拠能力を持つことができる。
Also, since it is impossible to forge the communication history, the information provider provides the required information to the authorized user in an encrypted state, and then the information is encrypted. The information necessary for decoding the information can be delivered to the user, and the user can have the evidential ability to prove that the user has received the information at a later date.

【0316】叉、証拠能力を有する通信履歴を必要に応
じて提示できるようになる。また、情報提供者が情報を
配送した事実の証拠として記録管理しなければならない
情報量が桜井(特開平5−12321)の方式と比較し
て大幅に削減できる。
Further, it becomes possible to present a communication history having an evidential ability as necessary. Further, the amount of information that must be recorded and managed as evidence of the fact that the information provider has delivered the information can be significantly reduced as compared with the method of Sakurai (Japanese Patent Laid-Open No. 5-12321).

【0317】叉、情報提供者と利用者の間で情報の提供
の有無について調停をする必要が生じた場合、裁判所等
の中立な調停機関が証拠能力を有する通信履歴について
その正当性を検査することにより、情報提供者と利用者
のどちらの主張が正当であるのかを判定できる。
If it is necessary to arbitrate whether information is provided between the information provider and the user, a neutral arbitration body such as a court checks the validity of the communication history having an evidential ability. This makes it possible to determine which of the information provider and the user is valid.

【0318】叉、例えば不正な利用者による利用などに
より配送確認ステップの途中で情報提供者の検証に失敗
した場合には、ただちにプロトコルの実行が中止され、
検証に失敗した以降のブロックは利用者に送信されない
ことになる。したがって、情報提供者の検証を失敗させ
た利用者は暗号化された情報を復号するために必要な情
報の一部しか獲得することができず、結果として情報暗
号化用秘密鍵を生成することが不可能となるので、不正
な利用者が要求した情報を不正に獲得してしまうことが
ないようにできる。
If the verification of the information provider fails during the delivery confirmation step due to, for example, an unauthorized user, the execution of the protocol is immediately stopped.
Blocks after the failed verification will not be sent to the user. Therefore, the user who fails the verification of the information provider can obtain only a part of the information necessary for decrypting the encrypted information, and as a result, generates the information encryption private key. Therefore, it is possible to prevent unauthorized acquisition of information requested by an unauthorized user.

【0319】叉、上記第9実施例によれば、情報提供者
が要求された情報を利用者に確実に配送し、かつ利用者
が確実に受信していることを情報提供者が確認できるシ
ステムとなる。また、必要に応じて情報提供者が利用者
を認証する利用者認証方法としてのゼロ知識証明プロト
コルを単独に使用することもできる。
According to the ninth embodiment, the information provider can reliably deliver the requested information to the user, and can confirm that the user has received the information reliably. Becomes Further, the zero-knowledge proof protocol as a user authentication method in which the information provider authenticates the user can be used alone as needed.

【0320】叉、情報暗号化秘密鍵を生成するときに乱
数文を利用できるようにしたシステムとなる。
[0320] Further, a system in which a random number sentence can be used when generating an information encryption private key is provided.

【0321】叉、情報提供者が秘密に保持すべき情報を
蓄積することができる情報提供者秘密情報蓄積手段を有
したシステムとなる。
[0321] Further, a system having information provider secret information storage means capable of accumulating information to be kept secret by the information provider is provided.

【0322】叉、情報提供者と利用者の間で公開鍵暗号
方法による暗号通信ができるようにしたシステムとな
る。
[0322] Further, a system is provided in which encrypted communication can be performed between the information provider and the user by the public key encryption method.

【0323】叉、鍵暗号化用秘密鍵と生成機能を有し、
情報暗号化用秘密鍵と鍵暗号用秘密鍵とを利用した情報
配送ができるようにしたシステムとなる。
[0323] Also, it has a secret key for key encryption and a generation function,
A system that enables information delivery using a secret key for information encryption and a secret key for key encryption is provided.

【0324】叉、証拠能力を有する通信履歴を必要に応
じて提示できるようにしたシステムとなる。
[0324] Further, a system is provided in which a communication history having an evidential ability can be presented as needed.

【0325】叉、裁判所等の中立な調停機関により、証
拠能力を有する通信履歴についてその正当性を検査し、
情報提供者と利用者のどちらの主張が正当であるのかを
判定することができるようにしたシステムとなる。
Also, a neutral mediation organization such as a court checks the validity of a communication history having an evidential ability,
This is a system that can determine which of the information provider and the user is valid.

【0326】叉、不正な利用者があることを検出した際
には直ちにプロトコルの実行を中止して、不正な利用者
が要求した情報を不正に獲得してしまうことがないよう
にしたシステムとなる。
Further, when it is detected that there is an unauthorized user, the execution of the protocol is immediately stopped to prevent the information requested by the unauthorized user from being illegally obtained. Become.

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

【図1】従来のFiat Shamir 法による利用者認証方式
と、従来の認証子法によるメッセージ認証方式と、従来
のRSA署名法によるディジタル署名方式を示す概念図
である。
FIG. 1 is a conceptual diagram showing a conventional user authentication method based on a Fiat Shamir method, a message authentication method based on a conventional authenticator method, and a digital signature method based on a conventional RSA signature method.

【図2】本発明の第1実施例における情報配送システム
の構成例を示すブロック図である。
FIG. 2 is a block diagram illustrating a configuration example of an information delivery system according to the first embodiment of the present invention.

【図3】図2に示す情報配送システムの動作手順を示す
フローチャートである。
FIG. 3 is a flowchart showing an operation procedure of the information delivery system shown in FIG.

【図4】図2に示す情報配送システムで用いる配送情報
の例を示す模式図である。
FIG. 4 is a schematic diagram showing an example of delivery information used in the information delivery system shown in FIG.

【図5】本発明の第2実施例における情報配送システム
の構成例を示すブロック図である。
FIG. 5 is a block diagram illustrating a configuration example of an information delivery system according to a second embodiment of the present invention.

【図6】図5に示す情報配送システムの動作手順を示す
フローチャートである。
6 is a flowchart showing an operation procedure of the information delivery system shown in FIG.

【図7】本発明の第3実施例における情報配送システム
の構成例を示すブロック図である。
FIG. 7 is a block diagram illustrating a configuration example of an information delivery system according to a third embodiment of the present invention.

【図8】図7に示す情報配送システムの配送確認に関す
る動作手順を示すフローチャートである。
8 is a flowchart showing an operation procedure relating to delivery confirmation of the information delivery system shown in FIG.

【図9】図7に示す情報配送システムの調停に関する動
作手順を示すフローチャートである。
9 is a flowchart showing an operation procedure regarding arbitration of the information delivery system shown in FIG.

【図10】本発明の第4実施例における情報配送システ
ムの構成例を示すブロック図である。
FIG. 10 is a block diagram illustrating a configuration example of an information delivery system according to a fourth embodiment of the present invention.

【図11】図10に示す情報配送システムの配送確認と
情報取り出しに関する動作手順を示すフローチャートで
ある。
11 is a flowchart showing an operation procedure regarding delivery confirmation and information retrieval of the information delivery system shown in FIG.

【図12】図10に示す情報配送システムの調停に関す
る動作手順を示すフローチャートである。
12 is a flowchart showing an operation procedure regarding arbitration of the information delivery system shown in FIG.

【図13】本発明の第5実施例における情報配送システ
ムの構成例を示すブロック図である。
FIG. 13 is a block diagram illustrating a configuration example of an information delivery system according to a fifth embodiment of the present invention.

【図14】図13に示す情報配送システムの動作手順を
示すフローチャートである。
14 is a flowchart showing an operation procedure of the information delivery system shown in FIG.

【図15】本発明の第6実施例における情報配送システ
ムの構成例を示すブロック図である。
FIG. 15 is a block diagram illustrating a configuration example of an information delivery system according to a sixth embodiment of the present invention.

【図16】図15に示す情報配送システムの動作手順を
示すフローチャートである。
16 is a flowchart showing an operation procedure of the information delivery system shown in FIG.

【図17】本発明の第7実施例における情報配送システ
ムの構成例を示すブロック図である。
FIG. 17 is a block diagram illustrating a configuration example of an information delivery system according to a seventh embodiment of the present invention.

【図18】図17に示す情報配送システムの情報配送、
配送確認、情報取り出しに関する動作手順を示すフロー
チャートである。
FIG. 18 shows information delivery of the information delivery system shown in FIG.
It is a flowchart which shows the operation | movement procedure regarding delivery confirmation and information extraction.

【図19】図17に示す情報配送システムの調停に関す
る動作手順を示すフローチャートである。
19 is a flowchart showing an operation procedure regarding arbitration of the information delivery system shown in FIG.

【図20】図17に示す情報配送システムで用いる情報
配送要求文の構成形態を示す模式図である。
20 is a schematic diagram showing a configuration of an information delivery request sentence used in the information delivery system shown in FIG.

【図21】図17に示す情報配送システムで用いる通信
履歴の構成形態を示す模式図である。
21 is a schematic diagram showing a configuration of a communication history used in the information delivery system shown in FIG.

【図22】本発明の第8実施例における情報配送システ
ムの構成例を示すブロック図である。
FIG. 22 is a block diagram illustrating a configuration example of an information delivery system according to an eighth embodiment of the present invention.

【図23】図22に示す情報配送システムの情報配送、
配送確認、情報取り出しに関する動作手順の前半を示す
フローチャートである。
FIG. 23 shows information delivery of the information delivery system shown in FIG. 22;
It is a flowchart which shows the first half of the operation | movement procedure regarding delivery confirmation and information extraction.

【図24】図22に示す情報配送システムの情報配送、
配送確認、情報取り出しに関する動作手順の後半を示す
フローチャートである。
FIG. 24 shows information delivery of the information delivery system shown in FIG. 22;
It is a flowchart which shows the latter half of the operation procedure regarding delivery confirmation and information extraction.

【図25】図22に示す情報配送システムの調停に関す
る動作手順を示すフローチャートである。
25 is a flowchart showing an operation procedure regarding arbitration of the information delivery system shown in FIG.

【図26】本発明の第9実施例における情報配送システ
ムの構成例を示すブロック図である。
FIG. 26 is a block diagram illustrating a configuration example of an information delivery system according to a ninth embodiment of the present invention.

【図27】図26に示す情報配送システムの情報配送、
配送確認、情報取り出しに関する動作手順の前半を示す
フローチャートである。
FIG. 27 shows information delivery of the information delivery system shown in FIG. 26;
It is a flowchart which shows the first half of the operation | movement procedure regarding delivery confirmation and information extraction.

【図28】図26に示す情報配送システムの情報配送、
配送確認、情報取り出しに関する動作手順の後半を示す
フローチャートである。
FIG. 28 shows information delivery of the information delivery system shown in FIG. 26;
It is a flowchart which shows the latter half of the operation procedure regarding delivery confirmation and information extraction.

【図29】図26に示す情報配送システムの調停に関す
る動作手順を示すフローチャートである。
FIG. 29 is a flowchart showing an operation procedure relating to arbitration of the information delivery system shown in FIG. 26;

【符号の説明】[Explanation of symbols]

1 カード 11 秘密情報蓄積手段 12 乱数発生手段 13 演算手段 14 蓄積手段 2 利用者端末 21 カード挿入手段 22 蓄積手段 23 利用手段 24 通信制御手段 3 情報提供者端末 31 情報蓄積手段 32 情報分割手段 33 検証手段 34 履歴管理手段 35 通信制御手段 50 配送情報 10 利用者端末 20 情報提供者端末 30 通信回線 40 調停者端末 100 通信制御手段 101 利用者秘密情報蓄積手段 102 一時メモリ 103 乱数発生手段 104 演算手段 105 共通鍵暗号手段 106 情報出力/利用手段 107 公開鍵暗号手段 108 情報再構成手段 109 情報蓄積手段 110 入力手段 41 演算手段 42 一時メモリ 43 検証手段 44 情報分割手段 45 公開鍵暗号手段 200 通信制御手段 201 情報提供者秘密情報蓄積手段 202 情報データベース 203 一時メモリ 204 演算手段 205 共通鍵暗号手段 206 検証手段 207 情報分割手段 208 通信履歴ファイル 209 乱数発生手段 210 公開鍵暗号手段 401 演算手段 402 一時メモリ 403 検証手段 404 情報分割手段 405 公開鍵暗号手段 REFERENCE SIGNS LIST 1 card 11 secret information storage means 12 random number generation means 13 calculation means 14 storage means 2 user terminal 21 card insertion means 22 storage means 23 usage means 24 communication control means 3 information provider terminal 31 information storage means 32 information division means 33 verification Means 34 History management means 35 Communication control means 50 Delivery information 10 User terminal 20 Information provider terminal 30 Communication line 40 Arbitrator terminal 100 Communication control means 101 User secret information storage means 102 Temporary memory 103 Random number generation means 104 Calculation means 105 Common key encryption means 106 Information output / use means 107 Public key encryption means 108 Information reconstruction means 109 Information storage means 110 Input means 41 Operation means 42 Temporary memory 43 Verification means 44 Information division means 45 Public key encryption means 200 Communication control means 201 Provision of information Secret information storage means 202 Information database 203 Temporary memory 204 Calculation means 205 Common key encryption means 206 Verification means 207 Information division means 208 Communication history file 209 Random number generation means 210 Public key encryption means 401 Calculation means 402 Temporary memory 403 Verification means 404 Information division Means 405 Public key encryption means

フロントページの続き (56)参考文献 特開 昭63−101987(JP,A) Zero−Knowledge Au thentication Schem e with Secret Key Exchange,Lecture N otes in Computer S cience,Vol.403,p.583− 588 (58)調査した分野(Int.Cl.7,DB名) H04L 9/32 JICSTファイル(JOIS)Continuation of the front page (56) References JP-A-63-101987 (JP, A) Zero-Knowledge AUTH Scheme Scheme with Secret Key Exchange, Lecture Notes in Computer Sci. 403, p. 583-588 (58) Field surveyed (Int. Cl. 7 , DB name) H04L 9/32 JICST file (JOIS)

Claims (43)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 少なくとも情報提供者装置と利用者装置
とを含むシステムにおいて、利用者装置が情報提供者装
置に情報の配送を要求した時に、 情報提供者装置が、ゼロ知識証明プロトコルにしたがっ
て利用者装置の利用者装置認証を行なう過程と、 情報提供者装置が、利用者装置に配送する情報Mをゼロ
知識証明プロトコル中における検査文Eに含めて送信
し、利用者装置に情報を1ビットまたは複数ビット単位
で配送する過程と、 情報提供者装置が、ゼロ知識証明プロトコルの通信履歴
データHを記録管理する過程と、 を行なう情報配送方法であって、前記利用者装置認証を
行なう過程及び前記配送する過程は、 利用者装置が、初期応答文Xを情報提供者装置に送信
し、 情報提供者装置が、利用者装置に配送する情報Mを利用
者装置に送信し、 利用者装置が、情報Mを検査文Eとして、初期応答文X
と検査文Eと利用者装置の秘密情報Sとを用いて応答文
Yを作成して情報提供者装置に送信し、 情報提供者装置が、情報Mを検査文Eとして、応答文Y
は初期応答文Xと検査文Eと利用者装置の公開情報Iと
に対する正しい応答になっているかを検査して、利用者
装置の秘密情報Sを漏らすことなく、利用者装置は秘密
情報Sを知っていることを認証するとともに、利用者装
置は情報Mを確実に受信していることを確認することか
らなる配送確認プロセスを含むことを特徴とする情報配
送方法。
In a system including at least an information provider device and a user device, when the user device requests the information provider device to deliver information, the information provider device uses the information provider device according to a zero knowledge proof protocol. Performing the user device authentication of the user device, the information provider device transmits the information M delivered to the user device in the check sentence E in the zero knowledge proof protocol, and transmits the information to the user device by one bit. Or a process in which the information provider device records and manages the communication history data H of the zero-knowledge proof protocol, and a process in which the user device authentication is performed. In the delivering step, the user device transmits an initial response sentence X to the information provider device, and the information provider device transmits information M to be delivered to the user device to the user device. The user device transmits the information M as the check sentence E and the initial response sentence X
A response sentence Y is created by using the check sentence E, the check sentence E, and the secret information S of the user device, and transmitted to the information provider device.
Checks whether the response is correct to the initial response sentence X, the check sentence E, and the public information I of the user device, and the user device transmits the secret information S without leaking the secret information S of the user device. An information delivery method, which includes a delivery confirmation process that authenticates the knowledge and confirms that the user device has reliably received the information M.
【請求項2】 請求項1に記載の情報配送方法におい
て、前記利用者装置認証を行なう過程及び前記配送する
過程は、 利用者装置が、初期応答文Xを情報提供者装置に送信
し、 情報提供者装置が、利用者装置に配送する情報Mを暗号
化した暗号文Cを利用者装置に送信し、 利用者装置が、暗号文Cを検査文Eとして、初期応答文
Xと検査文Eと利用者装置の秘密情報Sとを用いて応答
文Yを作成して情報提供者装置に送信し、 情報提供者装置が、送信した暗号文Cを検査文Eとし
て、応答文Yは初期応答文Xと検査文Eと利用者装置の
公開情報Iとに対する正しい応答になっているかを検査
して、利用者装置の秘密情報Sを漏らすことなく、利用
者装置は秘密情報Sを知っていることを認証するととも
に、利用者装置は暗号文Cを確実に受信していることを
確認することからなる配送確認プロセスと、 利用者装置が、暗号文Cを復号して情報Mを獲得するこ
とからなる情報取り出しプロセスとを含むことを特徴と
する情報配送方法。
2. The information delivery method according to claim 1, wherein in the step of performing the user device authentication and the step of delivering, the user device transmits an initial response sentence X to the information provider device. The provider device transmits to the user device an encrypted text C obtained by encrypting the information M to be delivered to the user device, and the user device sets the encrypted text C as the check text E, and the initial response text X and the check text E And a secret sentence S of the user device to create a response sentence Y and transmit it to the information provider device. The information provider device uses the transmitted ciphertext C as a check sentence E, and the response sentence Y The user device knows the secret information S without leaking the secret information S of the user device by checking whether the response is correct to the sentence X, the check sentence E, and the public information I of the user device. Authentication, and the user device surely receives the ciphertext C. Information delivery method to the delivery confirmation process consists of confirming that is, the user device, characterized by comprising a process information retrieval consists of acquiring information by decrypting the ciphertext C M.
【請求項3】 請求項1に記載の情報配送方法におい
て、 情報提供者装置から利用者装置に送信する情報Mについ
て暗号通信を行い、利用者装置から情報提供者装置に送
信する初期応答文Xについて暗号通信を行なうことを特
徴とする情報配送方法。
3. The information delivery method according to claim 1, wherein the information M transmitted from the information provider device to the user device is encrypted, and the initial response sentence X transmitted from the user device to the information provider device is transmitted. An information delivery method characterized by performing cryptographic communication for (1).
【請求項4】 請求項1から請求項3のいずれかに記載
の情報配送方法において、 利用者装置及び情報提供者装置は、少なくとも暗号文C
を用いて情報圧縮関数により検査文Eを作成することを
特徴とする情報配送方法。
4. The information delivery method according to claim 1, wherein the user device and the information provider device include at least a ciphertext C.
An information delivery method characterized in that a check sentence E is created by an information compression function by using an information compression function.
【請求項5】 請求項1から請求項4のいずれかに記載
の情報配送方法において、 利用者装置及び情報提供者装置は、少なくとも情報Mと
初期応答文Xとを用いて一方向性関数により検査文Eを
作成することを特徴とする情報配送方法。
5. The information delivery method according to claim 1, wherein the user device and the information provider device use a one-way function using at least the information M and the initial response sentence X. An information delivery method characterized by creating a check sentence E.
【請求項6】 請求項5に記載の情報配送方法におい
て、前記記録管理する過程では、 情報提供者装置が、少なくとも情報Mと検査文Eと応答
文Yとからなる通信履歴データHを記録管理することを
特徴とする情報配送方法。
6. The information delivery method according to claim 5, wherein, in the step of recording and managing, the information provider device records and manages communication history data H including at least information M, check text E and response text Y. An information delivery method characterized by:
【請求項7】 請求項6に記載の情報配送方法におい
て、更に、 情報提供者装置が、調停者装置に対し通信履歴データH
を提示し、 調停者装置が、検査文Eと応答文Yと利用者装置の公開
情報Iとから初期応答文Xを計算し、少なくとも初期応
答文Xと情報Mとを用いて一方向性関数により検査文E
を作成し、作成した検査文Eは通信履歴データHに含ま
れる検査文Eと一致するかを検査して、一致すれば情報
提供者装置は利用者装置を認証し、かつ利用者装置に対
して情報Mを配送したことを認めることからなる過程を
含むことを特徴とする情報配送方法。
7. The information delivery method according to claim 6, further comprising: the information provider device transmits the communication history data H to the arbitrator device.
The arbitrator device calculates an initial response sentence X from the inspection sentence E, the response sentence Y, and the public information I of the user device, and uses a one-way function using at least the initial response sentence X and information M. Check sentence E
And checks whether the created check statement E matches the check statement E included in the communication history data H. If the check statement E matches, the information provider device authenticates the user device, and Acknowledging that the information M has been delivered by using the information delivery method.
【請求項8】 請求項1から請求項7のいずれかに記載
の情報配送方法において、前記利用者装置認証を行なう
過程及び前記配送する過程は、 情報提供者装置が、利用者装置に送信する情報Mまはた
暗号文Cを任意ビット長のサイズの複数個のブロックに
分割し、各ブロックごとに配送確認プロセスを行なうこ
とを特徴とする情報配送方法。
8. The information delivery method according to claim 1, wherein the step of performing authentication of the user device and the step of delivering are performed by an information provider device transmitting to the user device. An information delivery method, comprising dividing information M or ciphertext C into a plurality of blocks each having an arbitrary bit length and performing a delivery confirmation process for each block.
【請求項9】 少なくとも情報提供者装置と利用者装置
とを含むシステムにおいて、利用者装置が情報提供者装
置に情報の配送を要求した時に、 情報提供者装置が、ゼロ知識証明プロトコルにしたがっ
て利用者装置の利用者装置認証を行なう過程と、 情報提供者装置が、利用者装置に配送する情報Mをゼロ
知識証明プロトコル中における検査文Eに含めて送信
し、利用者装置に情報を1ビットまたは複数ビット単位
で配送する過程と、 情報提供者装置が、ゼロ知識証明プロトコルの通信履歴
データHを記録管理する過程と、 を行なう情報配送方法であって、前記利用者装置認証を
行なう過程及び前記配送する過程は、 利用者装置が、初期応答文Xを情報提供者装置に送信
し、 情報提供者装置が、情報暗号化用秘密鍵Wを生成し、利
用者装置に配送する情報Mを情報暗号化用秘密鍵Wを用
いて共通鍵暗号方式により暗号化した暗号文Cを利用者
装置に送信し、 利用者装置が、暗号文Cを受信した後、受信した旨を情
報提供者装置に通知し、 情報提供者装置が、少なくとも情報暗号化用秘密鍵Wを
用いて検査文Eを生成して利用者装置に送信し、 利用者装置が、初期応答文Xと検査文Eと利用者装置の
秘密情報Sとを用いて応答文Yを作成して情報提供者装
置に送信し、 情報提供者装置が、応答文Yは初期応答文Xと検査文E
と利用者装置の公開情報Iとに対する正しい応答になっ
ているかを検査して、利用者装置の秘密情報Sを漏らす
ことなく、利用者装置は秘密情報Sを知っていることを
認証するとともに、利用者装置は検査文Eを確実に受信
していることを確認することからなる配送確認プロセス
と、 利用者装置が、少なくとも検査文Eを用いて情報暗号化
用秘密鍵Wを取り出し、情報暗号化用秘密鍵Wを用いて
共通鍵暗号方式により暗号文Cを復号して情報Mを獲得
することからなる情報取り出しプロセスとを含むことを
特徴とする情報配送方法。
9. In a system including at least an information provider device and a user device, when the user device requests the information provider device to deliver information, the information provider device uses the information provider device according to a zero knowledge proof protocol. Performing the user device authentication of the user device, the information provider device transmits the information M delivered to the user device in the check sentence E in the zero knowledge proof protocol, and transmits the information to the user device by one bit. Or a process in which the information provider device records and manages the communication history data H of the zero-knowledge proof protocol; and a process in which the user device authentication is performed. In the delivering step, the user device transmits an initial response sentence X to the information provider device, the information provider device generates a secret key W for information encryption, and the user device The ciphertext C obtained by encrypting the information M to be delivered to the user using the secret key W for information encryption by the common key cryptosystem is transmitted to the user device, and the user device receives the ciphertext C after receiving the ciphertext C. To the information provider device, the information provider device generates a check sentence E using at least the information encryption secret key W and sends it to the user device. A response sentence Y is created by using the response sentence Y, the check sentence E, and the secret information S of the user device, and transmitted to the information provider device.
The user device verifies that the user device knows the secret information S without leaking the secret information S of the user device by checking whether the response is correct to the public information I of the user device. A delivery confirmation process for confirming that the user device has reliably received the check sentence E; and a user device extracting the information encryption private key W using at least the check sentence E and performing information encryption. An information retrieval process comprising decrypting a ciphertext C by a common key cryptosystem using a decryption secret key W to obtain information M.
【請求項10】 請求項9に記載の情報配送方法におい
て、 情報提供者装置は、少なくとも初期応答文Xと乱数文Z
を用いて一方向性関数により情報暗号化用秘密鍵Wを生
成することを特徴とする情報配送方法。
10. The information delivery method according to claim 9, wherein the information provider device includes at least an initial response sentence X and a random number sentence Z.
An information distribution method, wherein an information encryption secret key W is generated by a one-way function using
【請求項11】 請求項10に記載の情報配送方法にお
いて、前記記録管理する過程では、 情報提供者装置が、少なくとも乱数文Zと検査文Eと応
答文Yとからなる通信履歴データHを記録管理すること
を特徴とする情報配送方法。
11. The information delivery method according to claim 10, wherein, in the recording management step, the information provider device records communication history data H including at least a random number sentence Z, a check sentence E, and a response sentence Y. An information delivery method characterized by management.
【請求項12】 請求項11に記載の情報配送方法にお
いて、更に、 情報提供者装置が、調停者装置に対し通信履歴データH
を提示し、 調停者装置が、検査文Eと応答文Yと利用者装置の公開
情報Iとから初期応答文Xを計算し、少なくとも初期応
答文Xと乱数文Zを用いて一方向性関数により情報暗号
化用秘密鍵Wを生成し、少なくとも情報暗号化用秘密鍵
Wを用いて検査文Eを作成し、作成した検査文Eは通信
履歴データHに含まれる検査文Eと一致するかを検査し
て、一致すれば情報提供者装置は利用者装置を認証し、
かつ利用者装置に対して情報Mを配送したことを認める
ことからなる過程とを含むことを特徴とする情報配送方
法。
12. The information delivery method according to claim 11, further comprising: the information provider device transmits the communication history data H to the arbitrator device.
The arbitrator device calculates an initial response sentence X from the inspection sentence E, the response sentence Y, and the public information I of the user device, and uses a one-way function using at least the initial response sentence X and the random number sentence Z. Generates a check key E for information encryption, generates a check statement E using at least the secret key W for information encryption, and confirms whether the check string E thus created matches the check statement E included in the communication history data H. And the information provider device authenticates the user device if they match,
Acknowledging that the information M has been delivered to the user device.
【請求項13】 請求項9に記載の情報配送方法におい
て、前記利用者装置認証を行なう過程及び前記配送する
過程は、 情報提供者装置が、情報暗号化用秘密鍵Wを生成し、情
報Mを情報暗号化用秘密鍵Wを用いて共通鍵暗号方式に
より暗号化した暗号文Cを利用者装置に送信し、 利用者装置が、暗号文Cを受信した後、受信した旨を情
報提供者装置に通知することからなる情報配送プロセス
と、 利用者装置が、初期応答文Xを情報提供者装置に送信
し、 情報提供者装置が、少なくとも情報暗号化秘密鍵Wを用
いて検査文Eを作成して利用者装置に送信し、 利用者装置が、初期応答文Xと検査文Eと利用者装置の
秘密情報Sとを用いて応答文Yを作成して情報提供者装
置に送信し、 情報提供者装置が、応答文Yは初期応答文Xと検査文E
と利用者装置の公開情報Iとに対する正しい応答になっ
ているかを検査して、利用者装置の秘密情報Sを漏らす
ことなく、利用者装置は秘密情報Sを知っていることを
認証するとともに、利用者装置は検査文Eを確実に受信
していることを確認することからなる配送確認プロセス
と、 利用者装置が、少なくとも検査文Eを用いて情報暗号化
用秘密鍵Wを獲得し、情報暗号化用秘密鍵Wを用いて共
通鍵暗号方式により暗号文Cを復号して情報Mを獲得す
ることからなる情報取り出しプロセスとを含むことを特
徴とする情報配送方法。
13. The information delivery method according to claim 9, wherein the step of performing the user device authentication and the step of delivering include the steps of: an information provider device generating an information encryption secret key W; Is transmitted to the user device using the secret key W for information encryption by the common key encryption method, and the user device receives the ciphertext C, and then notifies the information provider that the ciphertext C has been received. An information delivery process of notifying the device, the user device transmits an initial response sentence X to the information provider device, and the information provider device transmits the check statement E using at least the information encryption secret key W. The user device creates a response sentence Y using the initial response sentence X, the inspection sentence E, and the secret information S of the user device, and transmits the response sentence Y to the information provider device. The information provider device determines that the response sentence Y is an initial response sentence X and a check sentence E
The user device authenticates that it knows the secret information S without leaking the secret information S of the user device by checking whether the response is correct to the public information I of the user device. A delivery confirmation process consisting of confirming that the user device has received the check sentence E reliably; and a user device acquiring the information encryption private key W using at least the check sentence E, An information retrieving process comprising: decrypting a ciphertext C using a secret key W for encryption by a common key cryptosystem to obtain information M.
【請求項14】 請求項13に記載の情報配送方法にお
いて、 情報提供者装置は少なくとも自ら生成した乱数文Zを用
いて一方向性関数により情報暗号化用秘密鍵Wを生成す
ることを特徴とする情報配送方法。
14. The information delivery method according to claim 13, wherein the information provider device generates a secret key W for information encryption by a one-way function using at least a random number sentence Z generated by the information provider. The information delivery method you want.
【請求項15】 請求項14に記載の情報配送方法にお
いて、 前記配送確認プロセスでは、情報提供者装置は少なくと
も初期応答文Xを用いて一方向性関数により鍵暗号化用
秘密鍵Kを生成し、少なくとも情報暗号化用秘密鍵Wと
鍵暗号化用秘密鍵Kとを用いて検査文Eを生成して利用
者装置に送信し、 前記情報取り出しプロセスでは、利用者装置は少なくと
も初期応答文Xを用いて一方向性関数により鍵暗号化用
秘密鍵Kを生成し、少なくとも検査文Eと鍵暗号化用秘
密鍵Kとを用いて情報暗号化用秘密鍵Wを取り出すこと
を特徴とする情報配送方法。
15. The information delivery method according to claim 14, wherein in the delivery confirmation process, the information provider device generates a secret key K for key encryption by using a one-way function using at least the initial response sentence X. , Using at least the information encryption secret key W and the key encryption secret key K to generate a check sentence E and transmitting the check sentence to the user device; Generating a secret key K for key encryption by means of a one-way function, and extracting a secret key W for information encryption using at least the check statement E and the secret key K for key encryption. Shipping method.
【請求項16】 請求項15に記載の情報配送方法にお
いて、前記記録管理する過程では、 情報提供者装置が、少なくとも乱数文Zと検査文Eと応
答文Yとからなる通信履歴データHを記録管理すること
を特徴とする情報配送方法。
16. The information delivery method according to claim 15, wherein in the recording management step, the information provider device records communication history data H including at least a random number sentence Z, a check sentence E, and a response sentence Y. An information delivery method characterized by management.
【請求項17】 請求項16に記載の情報配送方法にお
いて、更に、 情報提供者装置が調停者装置に対し通信履歴データHを
提示し、 調停者装置が検査文Eと応答文Yと利用者装置の公開情
報Iとから初期応答文Xを計算し、少なくとも初期応答
文Xを用いて一方向性関数により鍵暗号用秘密鍵Kを、
また少なくとも乱数文Zを用いて一方向性関数により情
報暗号化用秘密鍵Wをそれぞれ生成し、少なくとも鍵暗
号用秘密鍵Kと情報暗号化用秘密鍵Wとを用いて検査文
Eを作成し、作成した検査文Eは通信履歴データHに含
まれる検査文Eと一致するかを検査して、一致すれば情
報提供者装置は利用者装置を認証し、かつ利用者装置に
対して情報Mを配送したことを認めることからなる過程
を含むことを特徴とする情報配送方法。
17. The information delivery method according to claim 16, wherein the information provider device presents the communication history data H to the arbitrator device, and the arbitrator device checks the inspection sentence E, the response sentence Y and the user. An initial response sentence X is calculated from the public information I of the device, and a secret key K for key encryption is calculated by a one-way function using at least the initial response sentence X,
Further, a secret key W for information encryption is generated by a one-way function using at least the random number sentence Z, and a check sentence E is created using at least the secret key K for key encryption and the secret key W for information encryption. It is checked whether the created inspection statement E matches the inspection statement E included in the communication history data H, and if they match, the information provider device authenticates the user device and sends the information M to the user device. An information delivery method, comprising the step of: acknowledging that the information has been delivered.
【請求項18】 請求項14に記載の情報配送方法にお
いて、 前記配送確認プロセスでは、情報提供者装置は少なくと
も初期応答文Xおよび利用者装置と情報提供者装置が秘
密に共有している秘密情報CSとを用いて一方向性関数
により鍵暗号化用秘密鍵Kを生成し、少なくとも情報暗
号化用秘密鍵Wと鍵暗号化用秘密鍵Kとを用いて検査文
Eを生成して利用者装置に送信し、 前記情報取り出しプロセスでは、利用者装置は少なくと
も初期応答文Xと秘密情報CSとを用いて一方向性関数
により鍵暗号化用秘密鍵Kを生成し、少なくとも検査文
Eと鍵暗号化用秘密鍵Kとを用いて情報暗号化用秘密鍵
Wを取り出すことを特徴とする情報配送方法。
18. The information delivery method according to claim 14, wherein in the delivery confirmation process, the information provider device includes at least an initial response sentence X and secret information that is secretly shared between the user device and the information provider device. A key encryption private key K is generated by a one-way function using CS, and a check statement E is generated using at least the information encryption private key W and the key encryption private key K, and In the information retrieval process, the user device generates a secret key K for key encryption by a one-way function using at least the initial response sentence X and the secret information CS, and at least the check sentence E and the key An information delivery method characterized by extracting an information encryption secret key W using an encryption secret key K.
【請求項19】 請求項18に記載の情報配送方法にお
いて、前記記録管理する過程では、 情報提供者装置が、少なくとも利用者装置と情報提供者
装置が秘密に共有している秘密情報CSと乱数文Zと検
査文Eと応答文Yとからなる通信履歴データHを記録管
理すること を特徴とする情報配送方法。
19. The information delivery method according to claim 18, wherein, in the record management step, the information provider device includes at least a user device and a secret information CS secretly shared by the information provider device and a random number. An information delivery method characterized by recording and managing communication history data H including a sentence Z, a check sentence E, and a response sentence Y.
【請求項20】 請求項19に記載の情報配送方法にお
いて、更に、 情報提供者装置が調停者装置に対し通信履歴データHを
提示し、 調停者装置が検査文Eと応答文Yと利用者装置の公開情
報Iとから初期応答文Xを計算し、少なくとも初期応答
文Xおよび利用者装置と情報提供者装置が秘密に共有し
ている秘密情報CSとを用いて一方向性関数により鍵暗
号用秘密鍵Kを、また少なくとも乱数文Zを用いて一方
向性関数により情報暗号化用秘密鍵Wをそれぞれ生成
し、少なくとも鍵暗号用秘密鍵Kと情報暗号化用秘密鍵
Wとを用いて検査文Eを作成し、作成した検査文Eは通
信履歴データHに含まれる検査文Eと一致するかを検査
して、一致すれば情報提供者装置は利用者装置を認証
し、かつ利用者装置に対して情報Mを配送したことを認
めることから成る過程を含むことを特徴とする情報配送
方法。
20. The information delivery method according to claim 19, wherein the information provider device presents the communication history data H to the arbitrator device, and the arbitrator device checks the inspection sentence E, the response sentence Y, and the user. An initial response sentence X is calculated from the public information I of the device, and key encryption is performed by a one-way function using at least the initial response sentence X and secret information CS secretly shared by the user device and the information provider device. A secret key K for information encryption and a secret key W for information encryption are generated by a one-way function using at least the random number sentence Z, and at least the secret key K for key encryption and the secret key W for information encryption are generated. A check sentence E is created, and it is checked whether the created check sentence E matches the check sentence E included in the communication history data H. If the check sentence E matches, the information provider device authenticates the user device, and Confirm that information M has been delivered to the device. Information delivery method characterized by comprising the step consisting Rukoto.
【請求項21】 請求項13に記載の情報配送方法にお
いて、 利用者装置は、要求文Rを情報提供者装置に送信し、 情報提供者装置は、少なくとも要求文Rと自ら生成した
乱数文Zとを用いて一方向性関数により情報暗号化用秘
密鍵Wを生成することを特徴とする情報配送方法。
21. The information delivery method according to claim 13, wherein the user device transmits a request text R to the information provider device, and the information provider device transmits at least the request text R and the random number text Z generated by the user device. And generating a secret key W for information encryption by a one-way function using the information distribution method.
【請求項22】 請求項21に記載の情報配送方法にお
いて、 利用者装置から情報提供者装置に送信する要求文Rにつ
いて暗号通信を行なうことを特徴とする情報配送方法。
22. The information delivery method according to claim 21, wherein the request message R transmitted from the user device to the information provider device is encrypted.
【請求項23】 請求項21または請求項22に記載の
情報配送方法において、 前記配送確認プロセスでは、情報提供者装置が、少なく
とも初期応答文Xを用いて一方向性関数により鍵暗号化
用秘密鍵Kを生成し、少なくとも情報暗号化用秘密鍵W
と鍵暗号化用秘密鍵Kとを用いて検査文Eを生成して利
用者装置に送信し、 前記情報取り出しプロセスでは、利用者装置が、少なく
とも初期応答文Xを用いて一方向性関数により鍵暗号化
用秘密鍵Kを生成し、少なくとも検査文Eと鍵暗号化用
秘密鍵Kとを用いて情報暗号化用秘密鍵Wを取り出すこ
とを特徴とする情報配送方法。
23. The information delivery method according to claim 21, wherein in the delivery confirmation process, the information provider device uses a one-way function using at least an initial response sentence X to encrypt the secret for key encryption. Generates a key K and at least a secret key W for information encryption
And generating a check sentence E using the key encryption secret key K and transmitting the check sentence to the user device. In the information retrieval process, the user device uses at least the initial response sentence X by a one-way function. An information delivery method comprising: generating a key encryption secret key K; and extracting an information encryption secret key W using at least the check sentence E and the key encryption secret key K.
【請求項24】 請求項23に記載の情報配送方法にお
いて、前記記録管理する過程では、 情報提供者装置が、少なくとも乱数文Zと検査文Eと応
答文Yと要求文Rとからなる通信履歴データHを記録管
理することを特徴とする情報配送方法。
24. The information delivery method according to claim 23, wherein, in the recording management step, the information provider device includes a communication history including at least a random number sentence Z, a check sentence E, a response sentence Y, and a request sentence R. An information delivery method characterized by recording and managing data H.
【請求項25】 請求項24に記載の情報配送方法にお
いて、更に、 情報提供者装置が、調停者装置に対し通信履歴データH
を提示し、 調停者装置が、検査文Eと応答文Yと利用者装置の公開
情報Iとから初期応答文Xを計算し、少なくとも初期応
答文Xを用いて一方向性関数により鍵暗号用秘密鍵K
を、また少なくとも乱数文Zと要求文Rとを用いて一方
向性関数により情報暗号化用秘密鍵Wをそれぞれ生成
し、少なくとも鍵暗号用秘密鍵Kと情報暗号化用秘密鍵
Wとを用いて検査文Eを作成し、作成した検査文Eは通
信履歴データHに含まれる検査文Eと一致するかを検査
して、一致すれば情報提供者装置は利用者装置を認証
し、かつ利用者装置に対して情報Mを配送したことを認
めることからなる過程を含むことを特徴とする情報配送
方法。
25. The information delivery method according to claim 24, further comprising the information provider device transmitting communication history data H to the arbitrator device.
The arbitrator device calculates an initial response sentence X from the inspection sentence E, the response sentence Y, and the public information I of the user device, and uses at least the initial response sentence X for a key encryption by a one-way function. Secret key K
And a secret key W for information encryption is generated by a one-way function using at least a random number sentence Z and a request sentence R, and at least a secret key K for key encryption and a secret key W for information encryption are used. Inspection statement E is created by checking whether the created inspection statement E matches the inspection statement E included in the communication history data H, and if they match, the information provider device authenticates the user device and uses it. An information delivery method, comprising the step of acknowledging that information M has been delivered to a user device.
【請求項26】 請求項21または請求項22に記載の
情報配送方法において、 前記配送確認プロセスでは、情報提供者装置が、少なく
とも初期応答文Xおよび利用者装置と情報提供者装置が
秘密に共有している秘密情報RSとを用いて一方向性関
数により鍵暗号化用秘密鍵Kを生成し、少なくとも情報
暗号化用秘密鍵Wと鍵暗号化用秘密鍵Kとを用いて検査
文Eを生成して利用者装置に送信し、 前記情報取り出しプロセスでは、利用者装置が、少なく
とも初期応答文Xと秘密情報RSとを用いて一方向性関
数により鍵暗号化用秘密鍵Kを生成し、少なくとも検査
文Eと鍵暗号化用秘密鍵Kとを用いて情報暗号化用秘密
鍵Wを取り出すこと を特徴とする情報配送方法。
26. The information delivery method according to claim 21, wherein in the delivery confirmation process, at least the initial response sentence X and the user device and the information provider device are secretly shared by the information provider device. A secret key K for key encryption is generated by a one-way function using the secret information RS and the check statement E using at least the secret key W for information encryption and the secret key K for key encryption. In the information retrieval process, the user device generates a secret key K for key encryption by a one-way function using at least the initial response sentence X and the secret information RS, An information delivery method characterized by extracting an information encryption secret key W using at least a check sentence E and a key encryption secret key K.
【請求項27】 請求項26に記載の情報配送方法にお
いて、前記記録管理する過程では、 情報提供者装置が、少なくとも利用者装置と情報提供者
装置が秘密に共有している秘密情報RSと乱数文Zと検
査文Eと応答文Yと要求文Rとからなる通信履歴データ
Hを記録管理することを特徴とする情報配送方法。
27. The information delivery method according to claim 26, wherein, in the step of recording and managing, the information provider device includes at least a user device and a secret information RS secretly shared by the information provider device and a random number. An information delivery method characterized by recording and managing communication history data H including a sentence Z, a check sentence E, a response sentence Y, and a request sentence R.
【請求項28】 請求項27に記載の情報配送方法にお
いて、更に、 情報提供者装置が、調停者装置に対し通信履歴データH
を提示し、 調停者装置が、検査文Eと応答文Yと利用者装置の公開
情報Iとから初期応答文Xを計算し、少なくとも初期応
答文Xおよび利用者装置と情報提供者装置が秘密に共有
している秘密情報RSとを用いて一方向性関数により鍵
暗号用秘密鍵Kを、また少なくとも乱数文Zと要求文R
とを用いて一方向性関数により情報暗号化用秘密鍵Wを
それぞれ生成し、少なくとも鍵暗号用秘密鍵Kと情報暗
号化用秘密鍵Wとを用いて検査文Eを作成し、作成した
検査文Eは通信履歴データHに含まれる検査文Eと一致
するかを検査して、一致すれば情報提供者装置は利用者
装置を認証し、かつ利用者装置に対して情報Mを配送し
たことを認めることから成る過程を含むことを特徴とす
る情報配送方法。
28. The information delivery method according to claim 27, further comprising: the information provider device transmits communication history data H to the arbitrator device.
The arbitrator device calculates an initial response sentence X from the inspection sentence E, the response sentence Y, and the public information I of the user device, and at least the initial response sentence X, the user device, and the information provider device are kept secret. , A secret key K for key encryption using a one-way function using the secret information RS shared by the
, A secret key W for information encryption is respectively generated by a one-way function, and a check sentence E is created using at least the secret key K for key encryption and the secret key W for information encryption, and the created check The sentence E checks whether it matches the check sentence E included in the communication history data H, and if it matches, the information provider device has authenticated the user device and has delivered the information M to the user device. An information delivery method, comprising the step of:
【請求項29】 請求項13に記載の情報配送方法にお
いて、更に、 情報提供者装置が、利用者装置には復号できない方式で
暗号化した情報暗号化用秘密鍵CWを利用者装置に送信
し、 利用者装置が、暗号化された情報暗号化用秘密鍵CWに
ディジタル署名した署名付き情報暗号用秘密鍵SWを情
報提供者装置に送信し、 情報提供者装置が、署名付き情報暗号用秘密鍵SWの署
名は正しいかを検証することからなる過程を含むことを
特徴とする情報配送方法。
29. The information delivery method according to claim 13, further comprising: transmitting the information encryption private key CW to the user device encrypted by a method that cannot be decrypted by the user device. The user device transmits a signed information encryption private key SW digitally signed to the encrypted information encryption secret key CW to the information provider device, and the information provider device transmits the signed information encryption secret. An information delivery method comprising a step of verifying whether a signature of a key SW is correct.
【請求項30】 請求項29に記載の情報配送方法にお
いて、 前記配送確認プロセスでは、情報提供者装置が、少なく
とも初期応答文Xを用いて一方向性関数により鍵暗号化
用秘密鍵Kを生成し、少なくとも情報暗号化用秘密鍵W
と鍵暗号化用秘密鍵Kとを用いて検査文Eを生成して利
用者装置に送信し、 前記情報取り出しプロセスでは、利用者装置が、少なく
とも初期応答文Xを用いて一方向性関数により鍵暗号化
用秘密鍵Kを生成し、少なくとも検査文Eと鍵暗号化用
秘密鍵Kとを用いて情報暗号化用秘密鍵Wを取り出すこ
とを特徴とする情報配送方法。
30. The information delivery method according to claim 29, wherein in the delivery confirmation process, the information provider device generates a secret key K for key encryption by using a one-way function using at least an initial response sentence X. And at least a secret key W for information encryption.
And generating a check sentence E using the key encryption secret key K and transmitting the check sentence to the user device. In the information retrieval process, the user device uses at least the initial response sentence X by a one-way function. An information delivery method comprising: generating a key encryption secret key K; and extracting an information encryption secret key W using at least the check sentence E and the key encryption secret key K.
【請求項31】 請求項30に記載の情報配送方法にお
いて、前記記録管理する過程では、 情報提供者装置が、少なくとも情報暗号用秘密鍵Wと署
名付き情報暗号用秘密鍵SWと検査文Eと応答文Yとか
らなる通信履歴データHを記録管理することを特徴とす
る情報配送方法。
31. The information delivery method according to claim 30, wherein in the recording management step, the information provider device includes at least an information encryption secret key W, a signed information encryption secret key SW, a check statement E, An information delivery method characterized by recording and managing communication history data H including a response sentence Y.
【請求項32】 請求項31に記載の情報配送方法にお
いて、更に、 情報提供者装置が、調停者装置に対し通信履歴データH
を提示し、 調停者装置が、署名付き情報暗号用秘密鍵SWは情報暗
号用秘密鍵Wに対する正しい署名であるかどうかを検証
した後、検査文Eと応答文Yと利用者装置の公開情報I
とから初期応答文Xを計算し、少なくとも初期応答文X
を用いて一方向性関数により鍵暗号用秘密鍵Kを生成
し、少なくとも鍵暗号用秘密鍵Kと情報暗号化用秘密鍵
Wとを用いて検査文Eを作成し、作成した検査文Eは通
信履歴データHに含まれる検査文Eと一致するかを検査
して、一致すれば情報提供者装置は利用者装置を認証
し、かつ利用者装置に対して情報Mを配送したことを認
めることからなる過程を含むことを特徴とする情報配送
方法。
32. The information delivery method according to claim 31, further comprising: the information provider device transmits the communication history data H to the arbitrator device.
After the arbitrator device verifies whether the signed information encryption secret key SW is a correct signature for the information encryption secret key W, the arbitrator device checks the inspection statement E, the response statement Y, and the public information of the user device. I
To calculate the initial response sentence X, and at least the initial response sentence X
, A secret key K for key encryption is generated by a one-way function, and a check statement E is created using at least the secret key K for key encryption and the secret key W for information encryption. Inspect whether it matches the check sentence E included in the communication history data H, and if they match, the information provider device authenticates the user device and acknowledges that the information M has been delivered to the user device. An information delivery method characterized by including a process consisting of:
【請求項33】 請求項29に記載の情報配送方法にお
いて、 前記配送確認プロセスでは、情報提供者装置は少なくと
も初期応答文X及び利用者装置と情報提供者装置が秘密
に共有している秘密情報RSを用いて一方向性関数によ
り鍵暗号化用秘密鍵Kを生成し、少なくとも情報暗号化
用秘密鍵Wと鍵暗号化用秘密鍵Kとを用いて検査文Eを
生成して利用者装置に送信し、 前記情報取り出しプロセスでは、利用者装置は少なくと
も初期応答文X及び利用者装置と情報提供者装置が秘密
に共有している秘密情報RSを用いて一方向性関数によ
り鍵暗号化用秘密鍵Kを生成し、少なくとも検査文Eと
鍵暗号化用秘密鍵Kとを用いて情報暗号化用秘密鍵Wを
取り出すことを特徴とする情報配送方法。
33. The information delivery method according to claim 29, wherein in the delivery confirmation process, the information provider device includes at least an initial response sentence X and secret information that is secretly shared between the user device and the information provider device. A user key is generated by using RS to generate a secret key K for key encryption by a one-way function, and generating a check text E using at least a secret key W for information encryption and a secret key K for key encryption. In the information retrieval process, the user device uses at least the initial response sentence X and secret information RS that is secretly shared by the user device and the information provider device to perform key encryption by a one-way function. An information delivery method, comprising: generating a secret key K; and extracting an information encryption secret key W using at least a check sentence E and a key encryption secret key K.
【請求項34】 請求項33に記載の情報配送方法にお
いて、前記記録管理する過程では、 情報提供者装置が、少なくとも情報暗号用秘密鍵Wと署
名付き情報暗号用秘密鍵SWと検査文Eと応答文Y及び
利用者装置と情報提供者装置が秘密に共有している秘密
情報RSとからなる通信履歴データHを記録管理するこ
とを特徴とする情報配送方法。
34. The information delivery method according to claim 33, wherein, in the recording management step, the information provider device includes at least an information encryption secret key W, a signed information encryption secret key SW, a check statement E, An information delivery method characterized by recording and managing response history Y and communication history data H comprising secret information RS secretly shared between a user device and an information provider device.
【請求項35】 請求項34に記載の情報配送方法にお
いて、更に、 情報提供者装置が調停者装置に対し通信履歴データHを
提示し、 調停者装置が署名付き情報暗号用秘密鍵SWは情報暗号
用秘密鍵Wに対する正しい署名であるかどうかを検証し
た後、検査文Eと応答文Yと利用者装置の公開情報Iと
から初期応答文Xを計算し、少なくとも初期応答文X及
び利用者装置と情報提供者装置が秘密に共有している秘
密情報RSを用いて一方向性関数により鍵暗号用秘密鍵
Kを生成し、少なくとも鍵暗号用秘密鍵Kと情報暗号化
用秘密鍵Wとを用いて検査文Eを作成し、作成した検査
文Eは通信履歴データHに含まれる検査文Eと一致する
かを検査して、一致すれば情報提供者装置は利用者装置
を認証し、かつ利用者装置に対して情報Mを配送したこ
とを認めることからなる過程を含むことを特徴とする情
報配送方法。
35. The information delivery method according to claim 34, further comprising: the information provider device presenting the communication history data H to the arbitrator device, wherein the arbitrator device transmits the signed information encryption secret key SW to the arbitrator device. After verifying whether the signature is correct for the encryption secret key W, an initial response sentence X is calculated from the check sentence E, the response sentence Y, and the public information I of the user device, and at least the initial response sentence X and the user A secret key K for key encryption is generated by a one-way function using secret information RS secretly shared between the device and the information provider device, and at least a secret key K for key encryption and a secret key W for information encryption are generated. Is used to check whether the created check sentence E matches the check sentence E included in the communication history data H, and if they match, the information provider device authenticates the user device, And deliver the information M to the user device. Information delivery method characterized by comprising the step consisting in admit.
【請求項36】 請求項9から請求項35のいずれかに
記載の情報配送方法において、 情報提供者装置から利用者装置に送信する検査文Eにつ
いて暗号通信を行なうことを特徴とする情報配送方法。
36. The information delivery method according to claim 9, wherein the check sentence E transmitted from the information provider device to the user device is encrypted. .
【請求項37】 請求項36の情報配送方法において、 利用者装置から情報提供者装置に送信する初期応答文X
について暗号通信を行なうことを特徴とする情報配送方
法。
37. The information delivery method according to claim 36, wherein the initial response sentence X transmitted from the user device to the information provider device.
An information delivery method characterized by performing cryptographic communication for (1).
【請求項38】 請求項9から請求項35のいずれかに
記載の情報配送方法において、 前記配送確認プロセスでは、情報提供者装置が、少なく
とも検査文Eを暗号化して利用者装置に送信し、 前記情報取り出しプロセスでは、利用者装置が、検査文
Eを復号することを特徴とする情報配送方法。
38. The information delivery method according to any one of claims 9 to 35, wherein in the delivery confirmation process, the information provider device encrypts at least the check sentence E and transmits it to the user device; An information delivery method, wherein the user device decrypts the check sentence E in the information retrieval process.
【請求項39】 請求項9から請求項38のいずれかに
記載の情報配送方法において、前記利用者装置認証を行
なう過程及び前記配送する過程は、 検査文Eを任意ビット長のサイズの複数個のブロックに
分割し、各ブロックことに配送確認プロセスを行なうこ
とを特徴とする情報配送方法。
39. The information delivery method according to claim 9, wherein the step of performing authentication of the user device and the step of delivering include a plurality of check statements E each having a size of an arbitrary bit length. An information delivery method characterized by dividing the data into blocks and performing a delivery confirmation process on each block.
【請求項40】 請求項1から請求項39のいずれかに
記載の情報配送方法において、 利用者装置側の動作は携帯可能な利用者装置のカードに
よって実行されることを特徴とする情報配送方法。
40. The information delivery method according to claim 1, wherein the operation of the user device is executed by a card of the portable user device. .
【請求項41】 請求項1から請求項40のいずれかに
記載の情報配送方法において、更に、 前記携帯可能な利用者装置のカードに利用者装置が受信
した情報Mまたは情報暗号用秘密鍵Wを記録することを
含むことを特徴とする情報配送方法。
41. The information delivery method according to any one of claims 1 to 40, further comprising information M or a secret key W for information encryption received by the user device on a card of the portable user device. Recording an information distribution method.
【請求項42】 少なくとも情報提供者装置と利用者装
置とを含むシステムにおいて、利用者装置が情報提供者
装置に情報の配送を要求した時に、 情報提供者装置が、ゼロ知識証明プロトコルにしたがっ
て利用者装置の利用者装置認証を行なう手段と、 情報提供者装置が、利用者装置に配送する情報Mをゼロ
知識証明プロトコル中における検査文Eに含めて送信
し、利用者装置に情報を1ビットまたは複数ビット単位
で配送する手段と、 情報提供者装置が、ゼロ知識証明プロトコルの通信履歴
データHを記録管理する手段と、 を備えた情報配送システムであって、前記利用者装置認
証を行なう手段及び前記配送する手段は、 利用者装置が、初期応答文Xを情報提供者装置に送信
し、 情報提供者装置が、利用者装置に配送する情報Mを利用
者装置に送信し、 利用者装置が、情報Mを検査文Eとして、初期応答文X
と検査文Eと利用者装置の秘密情報Sとを用いて応答文
Yを作成して情報提供者装置に送信し、 情報提供者装置が、情報Mを検査文Eとして、応答文Y
は初期応答文Xと検査文Eと利用者装置の公開情報Iと
に対する正しい応答になっているかを検査して、利用者
装置の秘密情報Sを漏らすことなく、利用者装置は秘密
情報Sを知っていることを認証するとともに、利用者装
置は情報Mを確実に受信していることを確認することか
らなる配送確認プロセスを行うことを特徴とする情報配
送システム。
42. In a system including at least an information provider device and a user device, when the user device requests information delivery to the information provider device, the information provider device uses the information provider device according to a zero knowledge proof protocol. Means for performing user device authentication of the user device, and the information provider device transmits the information M to be delivered to the user device in the check sentence E in the zero-knowledge proof protocol and transmits the information to the user device by one bit. Or an information delivery system comprising: means for delivering in units of a plurality of bits; and means for recording and managing the communication history data H of the zero-knowledge proof protocol, wherein the information provider apparatus comprises means for performing the user device authentication. And the delivery means, wherein the user device transmits an initial response sentence X to the information provider device, and the information provider device transmits the information M to be delivered to the user device to the user. The user device transmits the information M as the inspection sentence E to the initial response sentence X
A response sentence Y is created by using the check sentence E, the check sentence E, and the secret information S of the user device, and transmitted to the information provider device.
Checks whether the response is correct to the initial response sentence X, the check sentence E, and the public information I of the user device, and the user device transmits the secret information S without leaking the secret information S of the user device. An information delivery system, wherein the information delivery system performs a delivery confirmation process that authenticates the knowledge and confirms that the user device has reliably received the information M.
【請求項43】 少なくとも情報提供者装置と利用者装
置とを含むシステムにおいて、利用者装置が情報提供者
装置に情報の配送を要求した時に、 情報提供者装置が、ゼロ知識証明プロトコルにしたがっ
て利用者装置の利用者装置認証を行なう手段と、 情報提供者装置が、利用者装置に配送する情報Mをゼロ
知識証明プロトコル中における検査文Eに含めて送信
し、利用者装置に情報を1ビットまたは複数ビット単位
で配送する手段と、 情報提供者装置が、ゼロ知識証明プロトコルの通信履歴
データHを記録管理する手段と、 を備えた情報配送システムであって、前記利用者装置認
証を行なう手段及び前記配送する手段は、 利用者装置が、初期応答文Xを情報提供者装置に送信
し、 情報提供者装置が、情報暗号化用秘密鍵Wを生成し、利
用者装置に配送する情報Mを情報暗号化用秘密鍵Wを用
いて共通鍵暗号方式により暗号化した暗号文Cを利用者
装置に送信し、 利用者装置が、暗号文Cを受信した後、受信した旨を情
報提供者装置に通知し、 情報提供者装置が、少なくとも情報暗号化用秘密鍵Wを
用いて検査文Eを生成して利用者装置に送信し、 利用者装置が、初期応答文Xと検査文Eと利用者装置の
秘密情報Sとを用いて応答文Yを作成して情報提供者装
置に送信し、 情報提供者装置が、応答文Yは初期応答文Xと検査文E
と利用者装置の公開情報Iとに対する正しい応答になっ
ているかを検査して、利用者装置の秘密情報Sを漏らす
ことなく、利用者装置は秘密情報Sを知っていることを
認証するとともに、利用者装置は検査文Eを確実に受信
していることを確認することからなる配送確認プロセス
と、 利用者装置が、少なくとも検査文Eを用いて情報暗号化
用秘密鍵Wを取り出し、情報暗号化用秘密鍵Wを用いて
共通鍵暗号方式により暗号文Cを復号して情報Mを獲得
することからなる情報取り出しプロセスとを行うことを
特徴とする情報配送システム。
43. In a system including at least an information provider device and a user device, when the user device requests information delivery to the information provider device, the information provider device uses the information provider device according to a zero knowledge proof protocol. Means for performing user device authentication of the user device, and the information provider device transmits the information M to be delivered to the user device in the check sentence E in the zero-knowledge proof protocol and transmits the information to the user device by one bit. Or an information delivery system comprising: means for delivering in units of a plurality of bits; and means for recording and managing the communication history data H of the zero-knowledge proof protocol, wherein the information provider apparatus comprises means for performing the user device authentication. And the delivering means, wherein the user device transmits an initial response sentence X to the information provider device, and the information provider device generates an information encryption private key W A ciphertext C obtained by encrypting the information M to be delivered to the user device using the secret key W for information encryption by a common key cryptosystem is transmitted to the user device, and after the user device receives the ciphertext C, The information provider device notifies the information provider device of the reception, the information provider device generates a check sentence E using at least the information encryption private key W, and transmits the check statement E to the user device. A response sentence Y is created by using the sentence X, the check sentence E, and the secret information S of the user device and transmitted to the information provider device. E
The user device authenticates that it knows the secret information S without leaking the secret information S of the user device by checking whether the response is correct to the public information I of the user device. A delivery confirmation process consisting of confirming that the user device has reliably received the check sentence E; and a user device taking out the information encryption private key W using at least the check sentence E, An information delivery system, comprising: performing a process of decrypting a ciphertext C by a common key cryptosystem using a secret key W for encryption to obtain information M.
JP04711595A 1994-03-07 1995-03-07 Information delivery method and system using zero knowledge proof protocol Expired - Fee Related JP3314900B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04711595A JP3314900B2 (en) 1994-03-07 1995-03-07 Information delivery method and system using zero knowledge proof protocol

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
JP3579794 1994-03-07
JP21337494 1994-09-07
JP22628294 1994-09-21
JP6-213374 1994-09-21
JP6-226282 1994-09-21
JP6-35797 1994-09-21
JP04711595A JP3314900B2 (en) 1994-03-07 1995-03-07 Information delivery method and system using zero knowledge proof protocol

Publications (2)

Publication Number Publication Date
JPH08149124A JPH08149124A (en) 1996-06-07
JP3314900B2 true JP3314900B2 (en) 2002-08-19

Family

ID=27460148

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04711595A Expired - Fee Related JP3314900B2 (en) 1994-03-07 1995-03-07 Information delivery method and system using zero knowledge proof protocol

Country Status (1)

Country Link
JP (1) JP3314900B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3428876B2 (en) * 1997-10-03 2003-07-22 株式会社野村総合研究所 Processing system and method for issuing, transferring, certifying, and erasing electronic securities
US6219669B1 (en) * 1997-11-13 2001-04-17 Hyperspace Communications, Inc. File transfer system using dynamically assigned ports
FR2788909B1 (en) 1999-01-27 2004-02-20 France Telecom AUTHENTICATION OR SIGNATURE PROCESS WITH REDUCED NUMBER OF CALCULATIONS
AU7830200A (en) * 1999-09-21 2001-04-24 Discovery Communications, Inc. Electronic book security and copyright protection system
JP4134494B2 (en) 2000-06-15 2008-08-20 株式会社日立製作所 Contract method and contract processing system
JP4529825B2 (en) * 2005-07-08 2010-08-25 ソニー株式会社 AV equipment
CN104158791A (en) * 2013-05-14 2014-11-19 北大方正集团有限公司 Safe communication authentication method and system in distributed environment
CN110851858B (en) * 2019-10-16 2023-09-05 上海源庐加佳信息科技有限公司 Hotel personal privacy data protection method based on zero knowledge proof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Zero−Knowledge Authentication Scheme with Secret Key Exchange,Lecture Notes in Computer Science,Vol.403,p.583−588

Also Published As

Publication number Publication date
JPH08149124A (en) 1996-06-07

Similar Documents

Publication Publication Date Title
US6011848A (en) Method and system for message delivery utilizing zero knowledge interactive proof protocol
CN111916173B (en) Medical data safety sharing system and method based on IPFS and alliance chain
JP7585315B2 (en) Digital signature generation using cold wallets
KR100406754B1 (en) Forward-secure commercial key escrow system and escrowing method thereof
CN102664728B (en) Secure data parser method and system
CN115065679B (en) Electronic health record sharing model, method, system and medium based on blockchain
CN114866323A (en) User-controllable private data authorization sharing system and method
US20050105735A1 (en) Information processing system and method, information processing device and method, recording medium, and program
WO2019158209A1 (en) Methods and systems for secure data exchange
JP2008503966A (en) Anonymous certificate for anonymous certificate presentation
CN106452737A (en) Systems and methods for secure multi-tenant data storage
JPWO2017195886A1 (en) Authentication system, authentication method and program
JP2009089000A (en) Cryptographic module distribution system, cryptographic management server device, cryptographic processing device, client device, cryptographic management program, cryptographic processing program, and client program
CN110557367B (en) Secret key updating method and system for quantum computing secure communication resistance based on certificate cryptography
US11954672B1 (en) Systems and methods for cryptocurrency pool management
CN119363345B (en) Data transmission method, system, electronic equipment and storage medium
CN107347073B (en) A kind of resource information processing method
CN114417419A (en) Outsourcing cloud storage medical data aggregation method with security authorization and privacy protection
JP3314900B2 (en) Information delivery method and system using zero knowledge proof protocol
KR20250110229A (en) Key derivation for account management
CN109981736A (en) A kind of dynamic public audit method for supporting user and Cloud Server to trust each other
JP4525609B2 (en) Authority management server, authority management method, authority management program
KR102331451B1 (en) Digital content transaction method and blockchain system for digital content transaction
CN110784318B (en) Group key updating method, device, electronic equipment, storage medium and communication system
CN118694618A (en) A method to enhance the quantum security of the central authentication service protocol

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees