JPH10177341A - Method and system for depositing secret key for ras cipher - Google Patents

Method and system for depositing secret key for ras cipher

Info

Publication number
JPH10177341A
JPH10177341A JP9200545A JP20054597A JPH10177341A JP H10177341 A JPH10177341 A JP H10177341A JP 9200545 A JP9200545 A JP 9200545A JP 20054597 A JP20054597 A JP 20054597A JP H10177341 A JPH10177341 A JP H10177341A
Authority
JP
Japan
Prior art keywords
key
secret key
entity
divided
escrow
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.)
Pending
Application number
JP9200545A
Other languages
Japanese (ja)
Inventor
Masanori Obata
雅典 小畠
Hiroyuki Sugiyama
広幸 杉山
Morifumi Okugawa
守文 奥川
Tatsuaki Okamoto
龍明 岡本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP9200545A priority Critical patent/JPH10177341A/en
Publication of JPH10177341A publication Critical patent/JPH10177341A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To make it possible to more safely hold a secret key without always carrying a storage medium. SOLUTION: The secret key out of user's disclosed key and secret key is divided into two parts (S1) and the 1st divided secret key is stored by user's entity A (S2). Then the 2nd divided secret key is deposited in the other entity B (S3) and the 2nd divided secret key is delivered to the user's entity A based on a request (S5) from the entity A (S6). The entity A combines the stored 1st divided secret key and the 2nd divided secret key delivered from the entity B to obtain the secret key for an RSA cipher (S7).

Description

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

【0001】[0001]

【発明の属する技術分野】本発明はクライアント/サー
バシステムで構成されるようなコンピュータネットワー
ク環境において、クライアント/サーバ間でのRSA暗
号方式による利用者認証・秘密通信といったセキュリテ
ィサービスを行う上で、クライアント利用者の秘密鍵を
鍵管理サーバのような信頼される機関に預託し、また預
託する鍵を変更するRSA暗号における秘密鍵預託方法
及びシステムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to providing a client service in a computer network environment such as a client / server system, such as user authentication and confidential communication using the RSA encryption method, between a client and a server. The present invention relates to a method and system for depositing a private key of a user in a trusted organization such as a key management server and changing the deposited key in RSA cryptography.

【0002】[0002]

【従来の技術】近年、ダウンサイジングやインターネッ
トの普及と共に、オープンなコンピュータネットワーク
環境のセキュリティに対する取り組みが盛んに行われて
いる。
2. Description of the Related Art In recent years, with the spread of downsizing and the Internet, efforts for security in an open computer network environment have been actively made.

【0003】例えば、PEM(Privacy Enhanced Mail
)は、インターネットにおいて、暗号記述を取り入れ
た最初の暗号化メール規格としてIETFで標準化作業
が行われ、現在RFC(Request for comments)として
仕様書が発行されている。
For example, PEM (Privacy Enhanced Mail)
) Is standardized by the IETF on the Internet as the first encrypted mail standard that incorporates a cryptographic description, and a specification is currently issued as RFC (Request for comments).

【0004】このようなネットワークで安全な通信を行
うためには、通信データの機密性(privacy )とユーザ
認証によるユーザの真正性(authenticity)を保証する
ことが不可欠であり、機密性と真正性を保証するために
は、暗号技術を利用することて実現する。
In order to perform secure communication in such a network, it is essential to guarantee the confidentiality (privacy) of communication data and the authenticity (authenticity) of a user by user authentication. Is realized by using encryption technology.

【0005】例えば、公開鍵暗号方式は、暗号化に用い
る鍵(暗号化鍵)と復号に用いる鍵(復号鍵)を異なる
ものとし、暗号化鍵から復号鍵の推測を困難にした暗号
方式である。公開鍵暗号方式を利用するユーザは、ユー
ザ個々の暗号化鍵と復号鍵を持っており、送信者が受信
者に通信文を送信する場合、送信者は公開された受信者
の暗号化鍵で暗号化し、受信者は、自己の復号鍵で復号
することで、機密性のある通信を行うことができる。ま
た、暗号化と復号の順序を逆にすることで、復号鍵(秘
密鍵)を保有する人のみがディジタル署名でき、その人
の暗号化鍵(公開鍵)を知っている誰もが検証できる。
この特徴を利用して通信相手の認証及び通信事実の証明
が可能となる。
For example, the public key cryptosystem is a cryptosystem in which the key used for encryption (encryption key) and the key used for decryption (decryption key) are different, and it is difficult to guess the decryption key from the encryption key. is there. Users who use public key cryptography have their own encryption and decryption keys, and when a sender sends a message to a recipient, the sender uses the disclosed recipient's encryption key. The receiver can perform confidential communication by encrypting and decrypting with the decryption key of the receiver. Also, by reversing the order of encryption and decryption, only the person holding the decryption key (private key) can digitally sign, and anyone who knows the person's encryption key (public key) can verify it. .
By utilizing this feature, it is possible to authenticate the communication partner and prove the communication fact.

【0006】公開鍵暗号方式の代表的な暗号としては、
RSA暗号方式(R.L.Rivest,A.Shamir and L. Adlema
n ,”A Method for Obtaining Digital Signatures an
d Public-key Cryptosystems”,Communications of th
e ACM, Vol 21 (2), pp.120-126 ,Feb.1978)がよく知
られている。
[0006] Typical ciphers of the public key cryptosystem include:
RSA encryption method (RLRivest, A. Shamir and L. Adlema
n, "A Method for Obtaining Digital Signatures an
d Public-key Cryptosystems ”, Communications of th
e ACM, Vol 21 (2), pp.120-126, Feb.1978) are well known.

【0007】[0007]

【発明が解決しようとする課題】しかしながら、上記に
示した従来の安全な通信を暗号技術を用いて行う場合、
ユーザ固有の秘密鍵は安全な方法により管理されなけれ
ばならない。そのため、例えば、スマートカードのよう
な暗号処理機能を備えた記憶媒体に秘密鍵を保持するこ
とにより、カード外部からは容易に鍵を取り出せなく
し、与えられた入力データに対し、カード内部の秘密鍵
に基づいて暗号処理計算されたデータのみを出力すると
いった安全性の高い方法を利用する場合や、ユーザのパ
スワードフレーズに基づいて生成した鍵復号化鍵で秘密
鍵を暗号化して保持し、また、必要な時に正しいユーザ
が知っているパスワードを与えることによって、再び同
じ鍵復号化鍵を生成し、暗号化された秘密鍵を復号し、
取り出すといった方法が用いられている。後者の方法
は、公開暗号技術を利用する場合の実装に関する標準と
してRSA研究所から提案されているPKCS(”Priv
ate-Key Information Syntax Standard ”,Version1.
2,RSA Data Security Inc.,Nov.1993 )により規定さ
れている。
However, when the above-mentioned conventional secure communication is performed using encryption technology,
User-specific private keys must be managed in a secure manner. Therefore, for example, by holding the secret key in a storage medium having a cryptographic processing function such as a smart card, the key cannot be easily taken out from the outside of the card. In the case of using a highly secure method such as outputting only data that has been subjected to encryption processing calculation based on the secret key, encrypting and holding the secret key with a key decryption key generated based on the user's password phrase, Generates the same key decryption key again by giving the password known to the correct user when needed, decrypts the encrypted private key,
The method of taking out is used. The latter method is based on PKCS ("Private") proposed by the RSA Research Institute as a standard for implementation when using public encryption technology.
ate-Key Information Syntax Standard ”, Version 1.
2, RSA Data Security Inc., Nov. 1993).

【0008】ところが、前者の方法では、ユーザは常に
スマートカードのような記憶媒体に保持された秘密鍵を
携帯する必要があり、また、後者の方法では、もし、暗
号化された秘密鍵を解読された場合に正しい利用者にな
りすますことができるといった問題がある。
However, in the former method, the user must always carry a private key held in a storage medium such as a smart card, and in the latter method, if the encrypted private key is decrypted, There is a problem that if it is done, it can impersonate the correct user.

【0009】また、鍵の変更周期を短くすることで、安
全性を高めることが可能であるが、RSA暗号のような
公開鍵暗号方式では、勝手に鍵ペアを生成し、他人に偽
って不正を働くことができるため、通常、利用者とその
公開鍵の関連を保証するために信頼される第3者機関ま
たは、自分が信頼できる他の利用者の秘密鍵で署名され
た、公開鍵証明書が発行される。利用者間でお互いに認
証を行う時には、相手の公開鍵証明書を第三者期間(ま
たは、信頼できる他の利用者)の公開鍵で検証し、相手
の利用者名とその公開鍵が確かに正しいことを確認した
後に用いる。ところが、鍵の変更を行う際には、秘密鍵
を変更すれば、公開鍵も変更されるため、既に発行さ
れ、多数の利用者間で公開されている公開鍵証明書の変
更をその都度行う必要があり、管理上面倒であるという
問題がある。
[0009] Further, it is possible to improve security by shortening the key change cycle. However, in a public key cryptosystem such as the RSA encryption, a key pair is generated without permission and falsely impersonated by others. A public key certificate, usually signed by a trusted third party or the private key of another user that you trust, to guarantee the association between you and its public key A letter is issued. When mutually authenticating between users, the public key certificate of the other party is verified with the public key of the third party (or another trusted user), and the other party's user name and its public key are verified. Use after confirming the correctness. However, when the key is changed, if the private key is changed, the public key is also changed. Therefore, the public key certificate that has already been issued and that has been published among many users must be changed each time. There is a problem that it is necessary and management is complicated.

【0010】本発明は、上記の点に鑑みなされたもの
で、従来のように、記憶媒体を常に携帯することなく、
より安全な秘密鍵の保持を実現することが可能なRSA
暗号における秘密鍵預託方法及びシステムを提供するこ
とを目的とする。
[0010] The present invention has been made in view of the above points, and does not always carry a storage medium as in the related art.
RSA that can realize more secure secret key storage
It is an object of the present invention to provide a secret key escrow method and system in cryptography.

【0011】また、本発明は、利用者の秘密鍵を2つ以
上に分割して使用し、利用者の公開鍵を変更することな
く、利用者の秘密鍵から得られた分割秘密鍵を変更でき
るようなRSA暗号における秘密鍵預託方法及びシステ
ムを提供することを目的とする。
The present invention also uses a user's private key by dividing the user's private key into two or more, and changes a divided secret key obtained from the user's private key without changing the user's public key. It is an object of the present invention to provide a secret key escrow method and system in RSA encryption that can be performed.

【0012】[0012]

【課題を解決するための手段】上記課題を解決するた
め、本発明は、RSA暗号方式で用いる利用者の公開鍵
と秘密鍵のうち、該秘密鍵を利用者エンティティで2つ
に分割し、分割された秘密鍵のうちの第1の分割秘密鍵
は前記利用者エンティティにおいて保持され、分割され
た秘密鍵のうちの第2の分割秘密鍵を前記利用者エンテ
ィティから他のエンティティに預託しておき、前記利用
者エンティティからの要求に応じて、前記他のエンティ
ティから前記第2の分割秘密鍵を該利用者エンティティ
に配送し、前記利用者エンティティにおいて、保持され
ている前記第1の分割秘密鍵と前記他のエンティティか
ら配送された前記第2の分割秘密鍵を合成して、RSA
暗号方式による処理に用いる秘密鍵を得ることを特徴と
するRSA暗号における秘密鍵預託方法を提供する。
In order to solve the above problems, the present invention divides a secret key of a user's public key and secret key used in the RSA cryptosystem into two by a user entity, A first split secret key of the split secret keys is held at the user entity, and a second split secret key of the split secret keys is deposited from the user entity to another entity. In response to a request from the user entity, delivering the second split secret key from the other entity to the user entity, wherein the first split secret stored in the user entity is stored. Combining the key with the second split secret key delivered from the other entity,
Provided is a secret key escrow method in RSA encryption, characterized in that a secret key used for processing by an encryption method is obtained.

【0013】また、本発明では、前記利用者エンティテ
ィは、前記第2の分割秘密鍵を該利用者エンティティの
みが知り得る鍵復号化鍵で復号できるように暗号化鍵に
より暗号化して、暗号化された第2の分割秘密鍵を前記
他のエンティティに預託し、前記他のエンティティは、
前記利用者エンティティからの要求に応じて、前記暗号
化された第2の分割秘密鍵を該利用者エンティティに配
送し、前記利用者エンティティは、前記暗号化された第
2の分割秘密鍵を前記鍵復号化鍵により復号して前記第
2の分割秘密鍵を得ることを特徴とする。
Further, in the present invention, the user entity encrypts the second divided secret key with an encryption key so that the second divided secret key can be decrypted with a key decryption key known only to the user entity. Depositing the obtained second divided secret key with the other entity, the other entity:
In response to a request from the user entity, deliver the encrypted second divided secret key to the user entity, and the user entity sends the encrypted second divided secret key to the user entity. The second divided secret key is obtained by decrypting with the key decryption key.

【0014】また、本発明では、前記暗号化鍵および前
記鍵復号化鍵は、前記利用者エンティティにおいて生成
された共通鍵であることを特徴とする。
In the present invention, the encryption key and the key decryption key are a common key generated by the user entity.

【0015】また、本発明では、前記共通鍵は、前記利
用者エンティティにおいて前記第1の分割秘密鍵から一
方向性ハッシュ関数により求められたハッシュ値である
ことを特徴とする。
Further, in the present invention, the common key is a hash value obtained by the user entity from the first divided secret key using a one-way hash function.

【0016】また、本発明では、前記暗号化鍵は、前記
第2の分割秘密鍵そのものであり、前記鍵復号化鍵は、
前記第1の分割秘密鍵と前記公開鍵からなるものである
ことを特徴とする。
In the present invention, the encryption key is the second divided secret key itself, and the key decryption key is:
It is characterized by comprising the first divided secret key and the public key.

【0017】また、本発明では、前記他のエンティティ
は、前記第2の分割秘密鍵を前記公開鍵と共に保持し、
前記利用者エンティティからの要求に応じて、前記第2
の分割秘密鍵と共に前記公開鍵を該利用者エンティティ
に配送し、前記利用者エンティティは、保持されている
前記第1の分割秘密鍵と前記他のエンティティから配送
された前記公開鍵を前記鍵復号化鍵として用いることを
特徴とする。
In the present invention, the other entity holds the second divided secret key together with the public key,
In response to a request from the user entity, the second
Distributes the public key to the user entity together with the divided private key of the above, and the user entity decrypts the held first divided secret key and the public key distributed from the other entity to the key. It is characterized in that it is used as an encryption key.

【0018】また、本発明では、前記利用者エンティテ
ィは、前記第2の分割秘密鍵を該第2の分割秘密鍵自身
により暗号化し、さらに暗号化された第2の分割秘密鍵
を該利用者エンティティのみが知り得る共通鍵で暗号化
して預託鍵を求め、該預託鍵を前記他のエンティティに
預託し、前記他のエンティティは、前記利用者エンティ
ティからの要求に応じて、前記預託鍵を該利用者エンテ
ィティに配送し、前記利用者エンティティは、前記預託
鍵を前記共通鍵により復号して前記暗号化された第2の
分割秘密鍵を求め、該暗号化された第2の分割秘密鍵を
前記第1の分割秘密鍵と前記公開鍵により復号して前記
第2の分割秘密鍵を得ることを特徴とする。
Further, in the present invention, the user entity encrypts the second divided secret key with the second divided secret key itself, and further encrypts the encrypted second divided secret key with the user. An escrow key is obtained by encrypting the escrow key with a common key that only the entity can know, and the escrow key is escrowed with the other entity, and the other entity replaces the escrow key with the request from the user entity. Delivering to the user entity, the user entity decrypts the escrow key with the common key to obtain the encrypted second divided secret key, and obtains the encrypted second divided secret key. The second divided secret key is obtained by decrypting with the first divided secret key and the public key.

【0019】また、本発明では、前記共通鍵は、前記利
用者エンティティにおいて前記第1の分割秘密鍵から一
方向性ハッシュ関数により求められたハッシュ値である
ことを特徴とする。
Further, in the present invention, the common key is a hash value obtained by the user entity from the first divided secret key using a one-way hash function.

【0020】また、本発明では、前記他のエンティティ
は、前記第2の分割秘密鍵を前記公開鍵と共に保持し、
前記利用者エンティティからの要求に応じて、前記第2
の分割秘密鍵と共に前記公開鍵を該利用者エンティティ
に配送し、前記利用者エンティティは、保持されている
前記第1の分割秘密鍵と前記他のエンティティから配送
された前記公開鍵により前記暗号化された第2の分割秘
密鍵を復号することを特徴とする。
In the present invention, the other entity holds the second divided secret key together with the public key,
In response to a request from the user entity, the second
Distributes the public key to the user entity together with the divided private key of the user, and the user entity encrypts the public key by using the held first divided secret key and the public key distributed from the other entity. The decrypted second divided secret key is decrypted.

【0021】また、本発明では、前記第1の分割秘密鍵
は、前記利用者が記憶するパスワードとして前記利用者
エンティティにおいて保持されることを特徴とする。
Further, in the present invention, the first divided secret key is stored in the user entity as a password stored by the user.

【0022】また、本発明では、前記利用者エンティテ
ィは、前記利用者により前記パスワードが入力される
と、前記他のエンティティに対して前記第2の分割秘密
鍵を配送するように要求することを特徴とする。
Further, in the present invention, when the password is input by the user, the user entity requests the other entity to deliver the second divided secret key to the other entity. Features.

【0023】また、本発明では、前記利用者エンティテ
ィは、前記利用者がRSA暗号方式による処理を行う際
に前記他のエンティティに対して前記第2の分割秘密鍵
を配送するように要求することを特徴とする。
In the present invention, the user entity may request the other entity to deliver the second divided secret key to the other entity when the user performs a process according to the RSA encryption method. It is characterized by.

【0024】また、本発明では、前記第2の分割秘密鍵
と共に、前記秘密鍵の生成時に用いられた素数p、素数
qも前記他のエンティティに預託しておき、前記他のエ
ンティティは、前記利用者エンティティからの要求に応
じて、前記第2の分割秘密鍵と共に前記素数p、素数q
を該利用者エンティティに配送し、前記利用者エンティ
ティは、前記第1の分割秘密鍵と前記第2の分割秘密鍵
を合成して得られた前記秘密鍵と、前記他のエンティテ
ィから配送された前記素数p、素数qを用いて、前記第
1の分割秘密鍵,第2の分割秘密鍵とは異なる新たな第
1の分割秘密鍵、第2の分割秘密鍵を前記公開鍵を変更
することなく生成することを特徴とする。
In the present invention, together with the second divided secret key, the prime numbers p and q used at the time of generating the secret key are deposited with the other entity, and the other entity is The prime number p and the prime number q together with the second divided secret key in response to a request from a user entity.
To the user entity, the user entity receives the secret key obtained by combining the first divided secret key and the second divided secret key, and the Using the prime numbers p and q to change the public keys of new first and second divided secret keys different from the first and second divided secret keys. It is characterized by generating without.

【0025】さらに、本発明は、RSA暗号方式で用い
る利用者の公開鍵と秘密鍵のうち、該秘密鍵を利用者エ
ンティティで複数に分割し、分割された秘密鍵のうちの
一つの分割秘密鍵は前記利用者エンティティにおいて保
持され、分割された秘密鍵のうちの残りの分割秘密鍵の
各々を前記利用者エンティティから相異なる他のエンテ
ィティに預託しておき、前記利用者エンティティからの
要求に応じて、前記他のエンティティの各々から前記残
りの分割秘密鍵を該利用者エンティティに配送し、前記
利用者エンティティにおいて、保持されている前記一つ
の分割秘密鍵と前記他のエンティティから配送された前
記残りの分割秘密鍵を合成して、RSA暗号方式による
処理に用いる秘密鍵を得ることを特徴とするRSA暗号
における秘密鍵預託方法を提供する。
Further, according to the present invention, of the user's public key and private key used in the RSA encryption method, the private key is divided into a plurality of pieces by a user entity, and one of the divided The key is held in the user entity, and each of the remaining divided secret keys among the divided secret keys is escrowed from the user entity to another different entity, and upon request from the user entity, In response, the remaining split secret key is delivered from each of the other entities to the user entity, where the one split secret key retained and delivered from the other entity is delivered to the user entity. Combining the remaining divided secret keys to obtain a secret key to be used for processing by the RSA encryption method; To provide a method.

【0026】また、本発明では、前記残りの分割秘密鍵
と共に、前記秘密鍵の生成時に用いられた素数p、素数
qも前記他のエンティティのいづれかに預託しておき、
前記他のエンティティのいづれかは、前記利用者エンテ
ィティからの要求に応じて、前記残りの分割秘密鍵と共
に前記素数p、素数qを該利用者エンティティに配送
し、前記利用者エンティティは、前記一つの分割秘密鍵
と前記残りの分割秘密鍵を合成して得られた前記秘密鍵
と、前記他のエンティティのいづれかから配送された前
記素数p、素数qを用いて、前記一つの分割秘密鍵、残
りの分割秘密鍵とは異なる新たな複数の分割秘密鍵を前
記公開鍵を変更することなく生成することを特徴とす
る。
In the present invention, together with the remaining divided secret keys, the prime numbers p and q used at the time of generating the secret key are deposited in any of the other entities,
Any of the other entities, in response to a request from the user entity, deliver the prime p and the prime q to the user entity together with the remaining divided secret key, wherein the user entity Using the secret key obtained by synthesizing the split secret key and the remaining split secret key, and the prime numbers p and q delivered from any of the other entities, the one split secret key and the remaining And generating a plurality of new divided secret keys different from the divided secret key without changing the public key.

【0027】さらに、本発明は、利用者エンティティと
他のエンティティからなるRSA暗号における秘密鍵預
託システムであって、該利用者エンティティは、RSA
暗号方式で用いる利用者の公開鍵と秘密鍵のうち、該秘
密鍵を2つに分割する秘密鍵分割手段と、分割された秘
密鍵のうちの該利用者エンティティにおいて保持される
第1の分割秘密鍵を除いた残りの第2の分割秘密鍵を他
のエンティティに預託する鍵預託手段と、前記他のエン
ティティに前記第2の分割秘密鍵の配送を要求し、配送
された該第2の分割秘密鍵を受け取る分割秘密鍵取得手
段と、該利用者エンティティにおいて保持されている前
記第1の分割秘密鍵と前記他のエンティティから配送さ
れた前記第2の分割秘密鍵を合成して、RSA暗号方式
による処理に用いる秘密鍵を得る秘密鍵合成手段と、を
有することを特徴とするRSA暗号における秘密鍵預託
システムを提供する。
Further, the present invention is a secret key escrow system in an RSA cryptosystem comprising a user entity and another entity, wherein the user entity includes an RSA
Secret key splitting means for splitting the secret key into two out of the user's public key and secret key used in the cryptosystem, and first splitting of the split secret key held by the user entity Key escrow means for escrowing the remaining second divided secret key excluding the secret key to another entity; requesting the other entity to deliver the second divided secret key; A divided secret key obtaining means for receiving a divided secret key; combining the first divided secret key held in the user entity with the second divided secret key delivered from the other entity; Secret key synthesizing means for obtaining a secret key used for processing by an encryption method; and a secret key escrow system in RSA encryption.

【0028】また、本発明では、前記鍵預託手段は、前
記第2の分割秘密鍵を前記利用者エンティティのみが知
り得る鍵復号化鍵で復号できるように暗号化鍵により暗
号化して、暗号化された第2の分割秘密鍵を前記他のエ
ンティティに預託し、前記他のエンティティは、前記利
用者エンティティからの要求に応じて、前記暗号化され
た第2の分割秘密鍵を該利用者エンティティに配送し、
前記秘密鍵合成手段は、前記暗号化された第2の分割秘
密鍵を前記鍵復号化鍵により復号して前記第2の分割秘
密鍵を得ることを特徴とする。
Further, in the present invention, the key escrow means encrypts the second divided secret key with an encryption key so that the second divided secret key can be decrypted with a key decryption key known only to the user entity. Depositing the encrypted second divided secret key with the other entity, and the other entity stores the encrypted second divided secret key in response to a request from the user entity. Delivered to
The secret key combining means decrypts the encrypted second divided secret key with the key decryption key to obtain the second divided secret key.

【0029】また、本発明では、前記暗号化鍵および前
記鍵復号化鍵は、前記利用者エンティティにおいて生成
された共通鍵であることを特徴とする。
Further, in the present invention, the encryption key and the key decryption key are a common key generated by the user entity.

【0030】また、本発明では、前記共通鍵は、前記利
用者エンティティにおいて前記第1の分割秘密鍵から一
方向性ハッシュ関数により求められたハッシュ値である
ことを特徴とする。
Further, in the present invention, the common key is a hash value obtained by the user entity from the first divided secret key using a one-way hash function.

【0031】また、本発明では、前記暗号化鍵は、前記
第2の分割秘密鍵そのものであり、前記鍵復号化鍵は、
前記第1の分割秘密鍵と前記公開鍵からなるものである
ことを特徴とする。
In the present invention, the encryption key is the second divided secret key itself, and the key decryption key is
It is characterized by comprising the first divided secret key and the public key.

【0032】また、本発明では、前記他のエンティティ
は、前記第2の分割秘密鍵を前記公開鍵と共に保持し、
前記利用者エンティティからの要求に応じて、前記第2
の分割秘密鍵と共に前記公開鍵を該利用者エンティティ
に配送し、前記秘密鍵合成手段は、前記利用者エンティ
ティにおいて保持されている前記第1の分割秘密鍵と前
記他のエンティティから配送された前記公開鍵を前記鍵
復号化鍵として用いることを特徴とする。
Further, in the present invention, the other entity holds the second divided secret key together with the public key,
In response to a request from the user entity, the second
The public key is distributed to the user entity together with the divided secret key of the above, and the secret key synthesizing means is configured to distribute the first divided secret key held in the user entity and the other entity distributed from the other entity. A public key is used as the key decryption key.

【0033】また、本発明では、前記鍵預託手段は、前
記第2の分割秘密鍵を該第2の分割秘密鍵自身により暗
号化し、さらに暗号化された第2の分割秘密鍵を前記利
用者エンティティのみが知り得る共通鍵で暗号化して預
託鍵を求め、該預託鍵を前記他のエンティティに預託
し、前記他のエンティティは、前記利用者エンティティ
からの要求に応じて、前記預託鍵を該利用者エンティテ
ィに配送し、前記秘密鍵合成手段は、前記預託鍵を前記
共通鍵により復号して前記暗号化された第2の分割秘密
鍵を求め、該暗号化された第2の分割秘密鍵を前記第1
の分割秘密鍵と前記公開鍵により復号して前記第2の分
割秘密鍵を得ることを特徴とする。
Further, in the present invention, the key escrow means encrypts the second divided secret key with the second divided secret key itself, and further encrypts the encrypted second divided secret key with the user. An escrow key is obtained by encrypting the escrow key with a common key that only the entity can know, and the escrow key is escrowed with the other entity, and the other entity replaces the escrow key with the request from the user entity. Delivered to the user entity, the secret key synthesizing means decrypts the escrow key with the common key to obtain the encrypted second divided secret key, and obtains the encrypted second divided secret key. The first
And the second divided secret key is obtained by decryption using the divided secret key and the public key.

【0034】また、本発明では、前記共通鍵は、前記利
用者エンティティにおいて前記第1の分割秘密鍵から一
方向性ハッシュ関数により求められたハッシュ値である
ことを特徴とする。
Further, in the present invention, the common key is a hash value obtained by the one-way hash function from the first divided secret key in the user entity.

【0035】また、本発明では、前記他のエンティティ
は、前記第2の分割秘密鍵を前記公開鍵と共に保持し、
前記利用者エンティティからの要求に応じて、前記第2
の分割秘密鍵と共に前記公開鍵を該利用者エンティティ
に配送し、前記秘密鍵合成手段は、前記利用者エンティ
ティにおいて保持されている前記第1の分割秘密鍵と前
記他のエンティティから配送された前記公開鍵により前
記暗号化された第2の分割秘密鍵を復号することを特徴
とする。
In the present invention, the other entity holds the second divided secret key together with the public key,
In response to a request from the user entity, the second
The public key is distributed to the user entity together with the divided secret key of the above, and the secret key synthesizing means is configured to distribute the first divided secret key held in the user entity and the other entity distributed from the other entity. The encrypted second divided secret key is decrypted with a public key.

【0036】また、本発明では、前記第1の分割秘密鍵
は、前記利用者が記憶するパスワードとして前記利用者
エンティティにおいて保持されることを特徴とする。
In the present invention, the first divided secret key is stored in the user entity as a password stored by the user.

【0037】また、本発明では、前記分割秘密鍵取得手
段は、前記利用者により前記パスワードが入力される
と、前記他のエンティティに対して前記第2の分割秘密
鍵を配送するように要求することを特徴とする。
In the present invention, when the password is input by the user, the divided secret key acquisition means requests the other entity to deliver the second divided secret key. It is characterized by the following.

【0038】また、本発明では、前記分割秘密鍵取得手
段は、前記利用者がRSA暗号方式による処理を行う際
に前記他のエンティティに対して前記第2の分割秘密鍵
を配送するように要求することを特徴とする。
[0038] In the present invention, the divided secret key obtaining means requests the other entity to deliver the second divided secret key to the other entity when the user performs a process using the RSA encryption method. It is characterized by doing.

【0039】また、本発明では、前記鍵預託手段は、前
記第2の分割秘密鍵と共に、前記秘密鍵の生成時に用い
られた素数p、素数qも前記他のエンティティに預託
し、前記他のエンティティは、前記利用者エンティティ
からの要求に応じて、前記第2の分割秘密鍵と共に前記
素数p、素数qを該利用者エンティティに配送し、前記
秘密鍵合成手段は、前記第1の分割秘密鍵と前記第2の
分割秘密鍵を合成して得られた前記秘密鍵と、前記他の
エンティティから配送された前記素数p、素数qを用い
て、前記第1の分割秘密鍵、第2の分割秘密鍵とは異な
る新たな第1の分割秘密鍵、第2の分割秘密鍵を前記公
開鍵を変更することなく生成することを特徴とする。
In the present invention, the key escrow means also deposits, with the second divided secret key, the prime numbers p and q used at the time of generation of the secret key to the other entity, and The entity distributes the prime numbers p and q together with the second divided secret key to the user entity in response to a request from the user entity, and the secret key synthesizing means transmits the first divided secret Using the secret key obtained by synthesizing the key and the second divided secret key, and the prime numbers p and q distributed from the other entity, the first divided secret key and the second A new first divided secret key and a second divided secret key different from the divided secret key are generated without changing the public key.

【0040】さらに、本発明は、利用者エンティティと
他のエンティティからなるRSA暗号における秘密鍵預
託システムであって、該利用者エンティティは、RSA
暗号方式で用いる利用者の公開鍵と秘密鍵のうち、該秘
密鍵を複数に分割する秘密鍵分割手段と、分割された秘
密鍵のうちの該利用者エンティティにおいて保持される
一つの分割秘密鍵を除いた残りの分割秘密鍵の各々を相
異なる他のエンティティに預託する鍵預託手段と、前記
他のエンティティの各々に前記残りの分割秘密鍵の配送
を要求し、配送された該残りの分割秘密鍵を受け取る分
割秘密鍵取得手段と、該利用者エンティティにおいて保
持されている前記一つの分割秘密鍵と前記他のエンティ
ティから配送された前記残りの分割秘密鍵を合成して、
RSA暗号方式による処理に用いる秘密鍵を得る秘密鍵
合成手段と、を有することを特徴とするRSA暗号にお
ける秘密鍵預託システムを提供する。
Further, the present invention is a secret key escrow system in RSA cryptography comprising a user entity and another entity, wherein the user entity includes an RSA
Secret key dividing means for dividing the secret key into a plurality of public keys and private keys of a user used in the encryption method, and one divided secret key held in the user entity among the divided secret keys Key escrow means for escrowing each of the remaining divided secret keys except for the other entity, and requesting each of the other entities to distribute the remaining divided secret key, and distributing the remaining divided key. Divided secret key obtaining means for receiving a secret key, and synthesizing the one divided secret key held in the user entity and the remaining divided secret key delivered from the other entity,
Secret key synthesizing means for obtaining a secret key to be used for processing by the RSA encryption method.

【0041】また、本発明では、前記鍵預託手段は、前
記残りの分割秘密鍵と共に、前記秘密鍵の生成時に用い
られた素数p、素数qも前記他のエンティティのいづれ
かに預託し、前記他のエンティティのいづれかは、前記
利用者エンティティからの要求に応じて、前記残りの分
割秘密鍵と共に前記素数p、素数qを該利用者エンティ
ティに配送し、前記秘密鍵合成手段は、前記一つの分割
秘密鍵と前記残りの分割秘密鍵を合成して得られた前記
秘密鍵と、前記他のエンティティのいづれかから配送さ
れた前記素数p、素数qを用いて、前記一つの分割秘密
鍵、残りの分割秘密鍵とは異なる新たな複数の分割秘密
鍵を前記公開鍵を変更することなく生成することを特徴
とする。
Further, in the present invention, the key escrow means escrows the prime numbers p and q used at the time of generation of the secret key, together with the remaining divided secret keys, to one of the other entities. Any of the following entities distributes the primes p and q together with the remaining divided secret keys to the user entity in response to a request from the user entity, and the secret key synthesizing means Using the secret key obtained by synthesizing the secret key and the remaining divided secret key, and the prime numbers p and q delivered from any of the other entities, the one divided secret key and the remaining A plurality of new divided secret keys different from the divided secret key are generated without changing the public key.

【0042】[0042]

【発明の実施の形態】図1は、本発明を適用するシステ
ムの概略構成を示し、図2は本発明の第1の実施の形態
のおける秘密鍵預託方法の概要を示す。
FIG. 1 shows a schematic configuration of a system to which the present invention is applied, and FIG. 2 shows an outline of a secret key escrow method according to a first embodiment of the present invention.

【0043】図1に示すシステムは、エンティティA2
00、エンティティB300及び他のエンティティ40
0から構成され、エンティティA200では、RSA暗
号方式で用いる利用者の公開鍵と秘密鍵のうち秘密鍵を
2つに分割し(S1)、そのうちの一方の分割秘密鍵
(第1の分割秘密鍵)を保持する(S2)。もう一方の
分割秘密鍵(第2の分割秘密鍵)はエンティティB30
0に預託され(S3)、エンティティB300がこれを
保持する(S4)。
The system shown in FIG.
00, entity B300 and other entities 40
0, and the entity A200 divides the secret key of the user's public key and secret key used in the RSA encryption method into two (S1), and divides one of the two into the divided secret key (the first divided secret key). ) Is held (S2). The other divided secret key (second divided secret key) is entity B30.
0 (S3), and the entity B300 holds it (S4).

【0044】ここで、分割される秘密鍵は、Multiple-K
ey暗号(C.A.Boyd,“Some Applications of Multiple
Key Ciphers ”,Proceedings of Eurocrypt 88 ,Spri
nger-Verlag,1988)に基づき、以下の式1で示される合
同式を満足するような秘密鍵である。
Here, the secret key to be divided is a Multiple-K
ey cipher (CABoyd, “Some Applications of Multiple
Key Ciphers ", Proceedings of Eurocrypt 88, Spri
nger-Verlag, 1988), the secret key satisfies the congruence expressed by the following expression 1.

【0045】[0045]

【数1】 kp×ks1×ks2≡1(mod L) (1) ここで、ks1を第1の分割秘密鍵、ks2を第2の分
割秘密鍵、kpを公開鍵とする。また、Lは、(p−
1)と(q−1)の最小公倍数であり、p、qは、任意
の異なる大きな素数であり、また以下においてnは、
p、qの積である。
Kp × ks1 × ks2≡1 (mod L) (1) Here, ks1 is a first divided secret key, ks2 is a second divided secret key, and kp is a public key. L is (p−
1) is the least common multiple of (q-1), p and q are any different large prime numbers, and in the following n is
It is the product of p and q.

【0046】つまり、エンティティA200は、予め自
己の第2の分割秘密鍵を、エンティティA200のみが
知ってる鍵復号化鍵で復号できるように暗号化し、エン
ティティB300に預けておく。ここで、鍵復号化鍵と
鍵復号化鍵で復号できるように暗号化する暗号化鍵は、
例えば、DES暗号(FIPS pub 46 ,“Data Encry
ption Standard”,NBS, 1977 )や、FEAL暗号(宮
口、白石、清水、“FEAL−8暗号アルゴリズム”、
研実報、37, 4/5,pp.321-327,1988)に代表されるよ
うな暗号化鍵と復号鍵を同じ共通鍵とする共通鍵暗号化
方式に基づいて共通鍵とすることもでき、また、RSA
暗号方式により、第2の分割秘密鍵を暗号化鍵とし、第
1の分割秘密鍵と公開鍵を鍵復号化鍵として用いること
も可能である。
That is, the entity A 200 encrypts its own second divided secret key in advance so that it can be decrypted with a key decryption key known only to the entity A 200, and deposits it in the entity B 300. Here, the encryption key to be encrypted so as to be decrypted with the key decryption key and the key decryption key is:
For example, DES encryption (FIPS pub 46, “Data Encry
ption Standard ”, NBS, 1977), FEAL encryption (Miyaguchi, Shiraishi, Shimizu,“ FEAL-8 encryption algorithm ”,
(Research report, 37, 4/5, pp. 321-227, 1988). A common key can be used as a common key based on a common key encryption method in which an encryption key and a decryption key are the same common key. Yes, and RSA
According to the encryption method, the second divided secret key can be used as an encryption key, and the first divided secret key and the public key can be used as a key decryption key.

【0047】また、上記の2つの方法を組み合わせるこ
とにより、暗号化された第2の分割秘密鍵を解読するた
めの計算量を多くし、暗号化に用いられた鍵のしらみつ
ぶし攻撃をより困難にすることもできる。
Further, by combining the above two methods, the amount of calculation for decrypting the encrypted second divided secret key is increased, and it is more difficult to attack the key used for encryption. You can also

【0048】次に、エンティティA200からエンティ
ティB300に対して、第2の分割秘密鍵を取得するた
めの要求を発行する(S5)と、エンティティB300
は、保持している第2の分割秘密鍵をエンティティA2
00に配送する(S6)。
Next, the entity A 200 issues a request for obtaining the second divided secret key to the entity B 300 (S 5), and the entity B 300
Stores the held second divided secret key in entity A2
00 (S6).

【0049】ここで、エンティティA200が第2の分
割秘密鍵をエンティティB300から配送してもらう場
合には、エンティティA200の第2の分割秘密鍵取得
要求を発行する。エンティティB300は、第2の分割
秘密鍵取得要求を受け付け、暗号化鍵で暗号化されるこ
とで安全に保護されている第2の分割秘密鍵を検索し、
当該第2の分割秘密鍵をエンティティA200に配送す
る。
Here, when the entity A 200 has the second divided secret key delivered from the entity B 300, the entity A 200 issues a second divided secret key acquisition request of the entity A 200. The entity B300 receives the second divided secret key acquisition request, searches for the second divided secret key that is securely protected by being encrypted with the encryption key,
The second secret key is delivered to the entity A200.

【0050】次にエンティティA200では、自己が保
持する第1の分割秘密鍵と、配送された第2の分割秘密
鍵を合成した秘密鍵を用いて他エンティティ400と認
証処理を行う(S7)。このとき、エンティティA20
0では、暗号化された第2の分割秘密鍵を取得すると、
これを復号するための鍵復号化鍵を取り出して、第2の
分割秘密鍵を復号し、第2の分割秘密鍵を取り出す。こ
れにより、正しい鍵復号化鍵を知っているエンティティ
A200のみが第2の分割秘密鍵を取得することがで
き、さらに、得られた第2の分割秘密鍵と、第1の分割
秘密鍵を同時に用いることにより、利用者の秘密鍵とし
てRSA暗号処理を行い、他エンティティ400と認証
を行う。
Next, the entity A 200 performs an authentication process with the other entity 400 using the secret key obtained by synthesizing the first divided secret key held by itself and the distributed second divided secret key (S 7). At this time, the entity A20
0, when the encrypted second divided secret key is obtained,
A key decryption key for decrypting the key is extracted, the second divided secret key is decrypted, and the second divided secret key is extracted. As a result, only the entity A200 that knows the correct key decryption key can obtain the second divided secret key, and furthermore, simultaneously obtains the obtained second divided secret key and the first divided secret key. By using this, the RSA encryption process is performed as the user's secret key, and authentication is performed with the other entity 400.

【0051】図3は、本発明の第1の実施の形態おける
秘密鍵預託システムの構成を示す。
FIG. 3 shows the configuration of the secret key escrow system in the first embodiment of the present invention.

【0052】図3に示す秘密鍵預託システムは、エンテ
ィティA200とエンティティB300より構成され
る。
The secret key escrow system shown in FIG. 3 includes an entity A 200 and an entity B 300.

【0053】エンティティA200は、鍵分割部20
5、鍵預託部206、鍵記憶部203、預託鍵取得要求
部204、預託鍵受付部208、預託鍵取出部209及
び、秘密鍵合成部210より構成される。
The entity A 200 includes the key dividing unit 20
5, a key escrow unit 206, a key storage unit 203, a escrow key acquisition request unit 204, a escrow key reception unit 208, a escrow key extraction unit 209, and a secret key synthesis unit 210.

【0054】エンティティB300は、預託鍵取得要求
受付部305、預託鍵記憶部306、及び預託鍵配送部
307より構成される。
The entity B 300 includes a deposit key acquisition request receiving unit 305, a deposit key storage unit 306, and a deposit key distribution unit 307.

【0055】鍵分割部205は、RSA暗号方式で用い
られる秘密鍵を2つに分割し、一方の第1の分割秘密鍵
は、鍵記憶部203に転送し、もう一方の第2の分割秘
密鍵は預託鍵として、鍵預託部206に転送する。
The key division unit 205 divides the secret key used in the RSA encryption system into two, and transfers one of the first divided secret keys to the key storage unit 203 and the other of the second divided secret keys. The key is transferred to the key escrow unit 206 as a escrow key.

【0056】鍵預託部206は、鍵分割部205で分割
された預託鍵をエンティティB300に預託する。
The key deposit unit 206 deposits the deposit key divided by the key dividing unit 205 with the entity B300.

【0057】鍵記憶部203は、秘密鍵を分割した第1
の分割秘密鍵と鍵復号化鍵を記憶する。
The key storage unit 203 stores the first divided private key.
Is stored.

【0058】預託鍵取得要求部204は、エンティティ
B300に対して、預託してある預託鍵の取得要求を発
行する。
The escrow key acquisition request unit 204 issues a request for acquiring the escrowed key to the entity B300.

【0059】預託鍵受付部208は、エンティティB3
00から預託鍵を取得する。
The escrow key receiving unit 208 is provided for the entity B3
A deposit key is obtained from 00.

【0060】預託鍵取出部209は、鍵記憶部203か
ら預託鍵を復号するための鍵復号化鍵を取得して、預託
鍵を復号する。
The escrow key extracting unit 209 obtains a key decryption key for decrypting the escrow key from the key storage unit 203, and decrypts the escrow key.

【0061】秘密鍵合成部210は、復号された預託鍵
と第1の分割秘密鍵とを合成して用いることで、他のエ
ンティティ400と認証を行う。
The secret key synthesizing unit 210 performs authentication with another entity 400 by synthesizing and using the decrypted escrow key and the first divided secret key.

【0062】エンティティB300の、預託鍵記憶部3
06は、エンティティA200から預託された預託鍵を
格納する。
Deposit key storage unit 3 of entity B300
Reference numeral 06 stores a deposit key deposited from the entity A200.

【0063】預託鍵取得要求受付部305は、エンティ
ティA200からの預託鍵の取得要求を受け付け、当該
要求に基づいて預託鍵記憶部306を検索し、取得した
預託鍵を預託鍵配送部307に転送する。
The escrow key acquisition request receiving unit 305 receives the escrow key acquisition request from the entity A 200, searches the escrow key storage unit 306 based on the request, and transfers the obtained escrow key to the escrow key distribution unit 307. I do.

【0064】これにより、預託鍵配送部307は、預託
鍵をエンティティA200に配送する。
As a result, the escrow key distribution unit 307 distributes the escrow key to the entity A200.

【0065】次に、本発明の第1の実施の形態における
秘密鍵預託システムの具体例について説明する。
Next, a specific example of the secret key escrow system according to the first embodiment of the present invention will be described.

【0066】最初に、以下の説明に用いる変数及び関数
例について説明する。
First, examples of variables and functions used in the following description will be described.

【0067】kpは、利用者のRSA公開鍵、ks1,
ks2は、利用者のRSA秘密鍵の分割鍵であって、各
鍵kp,ks1,ks2は、Multiple-Key暗号に基づ
く、前述の式(1)を満足するように決定される。さら
に、ks1は、利用者がパスワードとして記憶できる程
度の短い桁数として決定し、ks2は、秘密鍵預託機関
に預けられる預託鍵とする。Mは、任意の平文ブロック
とし、Mを暗号化した結果をCとし、(a mod b )は、
aをbで割った余りである。また、X’は、預託鍵ks
2を預託鍵ks2自身でRSA暗号化したデータとし、
Xは、X’をさらに、パスワードに基づいて生成された
共通鍵Skey で共通鍵暗号により暗号化したデータとす
る。関数Eは、共通鍵暗号アルゴリズムを表し、関数D
は、関数Eの逆関数を表す。
Kp is the user's RSA public key, ks1,
ks2 is a division key of the user's RSA private key, and each of the keys kp, ks1, and ks2 is determined so as to satisfy the above-described expression (1) based on Multiple-Key encryption. Further, ks1 is determined as a short number of digits that can be stored as a password by the user, and ks2 is a escrow key deposited in a private key escrow organization. M is an arbitrary plaintext block, C is the result of encrypting M, and (a mod b) is
This is the remainder of dividing a by b. X ′ is the deposit key ks
2 is RSA encrypted data with the escrow key ks2 itself,
X is data obtained by further encrypting X ′ with a common key encryption using a common key Skey generated based on a password. Function E represents a secret key encryption algorithm, and function D
Represents an inverse function of the function E.

【0068】図4は、本発明の第1の実施の形態による
秘密鍵預託システムの具体例を示す。
FIG. 4 shows a specific example of the secret key escrow system according to the first embodiment of the present invention.

【0069】ノードA(エンティティA)200と秘密
鍵預託機関(エンティティB)300がネットワーク5
00で接続され、利用者600は、秘密鍵預託機関30
0から安全に自己の預託鍵を配送してもらうために、ノ
ードA200を操作する。ノードA200は、利用者6
00からパスワードを受け付けるパスワード入力受付部
201と、受け付けたパスワードから共通鍵Skey を生
成する共通鍵生成部202を有する。図4において、そ
れ以外の図3と同一構成部分には、同一符号を付し、そ
の説明を省略する。
The node A (entity A) 200 and the private key depository (entity B) 300
00, and the user 600
From node 0, the node A200 is operated in order to have its escrow key safely delivered. Node A200 is the user 6
A password input receiving unit 201 that receives a password from 00 and a common key generating unit 202 that generates a common key Skey from the received password. 4, the same components as those in FIG. 3 are denoted by the same reference numerals, and description thereof will be omitted.

【0070】以下、図4に示す構成の動作を図5に基づ
いて説明する。
The operation of the configuration shown in FIG. 4 will be described below with reference to FIG.

【0071】図4の構成において、ノードA200は、
パスワード入力受付部201により、利用者600から
パスワードks1を受け付けると(S101)、鍵記憶
部203に保持すると共に、パスワードks1を共通鍵
生成部202に与える(S102)。
In the configuration of FIG. 4, node A 200
When the password ks1 is received from the user 600 by the password input reception unit 201 (S101), the password ks1 is stored in the key storage unit 203 and is given to the common key generation unit 202 (S102).

【0072】共通鍵生成部202は、共通鍵暗号アルゴ
リズムで用いるための共通鍵Skeyを生成し(S10
3)、同様に鍵記憶部203に転送する。共通鍵生成部
202における共通鍵Skeyの生成は、例えば、生成
後の状態から生成前の情報を容易に見いだせない一方向
性ハッシュ関数のようなアルゴリズムを用いることがで
きる。
The common key generation unit 202 generates a common key SKey for use in the common key encryption algorithm (S10).
3) Similarly, transfer to the key storage unit 203. For generation of the common key SKey in the common key generation unit 202, for example, an algorithm such as a one-way hash function that cannot easily find information before generation from a state after generation can be used.

【0073】代表的な一方向性関数として、Ron Rivest
により考案されたMD5(R.L. Rivest,“The MD5 Mess
age Digest Algorithm”,RFC 1321,Apr 1992)があ
る。MD5では、任意の長さのメッセージに対して12
8ビットのハッシュ値を作ることができる。
As a representative one-way function, Ron Rivest
MD5 (RL Rivest, “The MD5 Mess
age Digest Algorithm ”, RFC 1321, Apr 1992).
An 8-bit hash value can be created.

【0074】次に、ノードA200は、予め秘密鍵預託
機関300に登録している預託鍵を取得するため、預託
鍵取得要求部204により預託鍵を取得するための要求
メッセージを生成し(S104)、ネットワーク500
を介して要求メッセージを送信する(S105)。当該
要求メッセージには、利用者名が含まれる。
Next, the node A 200 generates a request message for acquiring the escrow key by the escrow key acquisition request unit 204 in order to acquire the escrow key registered in the secret key escrow organization 300 in advance (S 104). , Network 500
The request message is transmitted via the server (S105). The request message includes the user name.

【0075】秘密鍵預託機関300では、預託鍵取得要
求受付部305によりノードA200からの要求メッセ
ージを受け付けると、秘密鍵預託機関300により管理
されている預託鍵記憶部(鍵管理DB)306から、要
求メッセージに含まれる利用者名に対応する公開鍵と預
託鍵を検索して取り出す(S106)。鍵管理DB30
6で管理される公開鍵kpと保護された預託鍵Xは、予
め登録されている。また、保護された預託鍵Xは、次式
により暗号化され、保護されている。
In the private key escrow organization 300, when the escrow key acquisition request receiving unit 305 receives the request message from the node A200, the escrow key storage unit (key management DB) 306 managed by the secret key escrow organization 300 The public key and the escrow key corresponding to the user name included in the request message are retrieved and retrieved (S106). Key management DB30
The public key kp and the protected escrow key X managed in 6 are registered in advance. The protected escrow key X is encrypted and protected by the following equation.

【0076】X’=ks2ks2mod n (2) X =E(Skey, X’) (3) 預託鍵取得要求受付部305により鍵管理DB306か
ら取り出された利用者の公開鍵と保護された預託鍵は、
預託鍵配送部307に渡される。預託鍵配送部307で
は、ノードA200保護された預託鍵を配送するための
応答メッセージを作成し、ノードA200に送信する
(S107)。応答メッセージには、利用者の保護され
た預託鍵と公開鍵が含まれる。
X ′ = ks2 ks2 mod n (2) X = E (Skey, X ′) (3) The public key of the user extracted from the key management DB 306 by the escrow key acquisition request receiving unit 305 and the protected escrow The key is
It is passed to the deposit key distribution unit 307. The escrow key delivery unit 307 creates a response message for delivering the escrow key protected by the node A200, and transmits it to the node A200 (S107). The response message contains the user's protected escrow key and public key.

【0077】ノードA200では、預託鍵受付部208
により応答メッセージを受け取ると、預託鍵を取り出す
ために応答メッセージに含まれる保護された預託鍵と公
開鍵を預託鍵取出部209に与える(S108)。ま
た、同時に、鍵記憶部203で記憶されている分割鍵k
s1と、共通鍵Skeyを預託鍵取出部209に与え
る。
In node A 200, escrow key accepting section 208
When the response message is received, the protected escrow key and the public key included in the response message are provided to the escrow key extracting unit 209 to extract the escrow key (S108). At the same time, the divided key k stored in the key storage unit 203
s1 and the common key SKey are given to the escrow key extracting unit 209.

【0078】預託鍵取出部209では、以下の計算式に
より預託鍵を算出する(S109)。
The escrow key extraction unit 209 calculates the escrow key using the following formula (S109).

【0079】X’=D(Skey,X) (4)X '= D (Skey, X) (4)

【数2】 預託鍵ks2=(X’)ks1xkp mod n =ks2ks2xks1xkp mod n (5) ここで、正しい預託鍵ks2を算出するためには、利用
者から正しいパスワードとして与えられた分割鍵ks1
と、共通鍵Skeyが必要であることは明らかである。
このようにして算出された預託鍵ks2は、分割鍵ks
1と共に、RSA秘密鍵として利用するために、秘密鍵
合成部210に渡される。秘密鍵合成部210では、鍵
記憶部203から与えられた分割鍵ks1と預託鍵取出
部209から与えられた預託鍵ks2の2つの分割鍵を
合成することで、RSA暗号での秘密鍵として利用する
(S110)。利用方法は、暗号化の場合は、式(6)
であり、復号の場合には式(7)で示される。
(2) Deposited key ks2 = (X ′) ks1xkp mod n = ks2 ks2xks1xkp mod n (5) Here, in order to calculate a correct escrow key ks2, a division key ks1 given as a correct password by a user.
It is clear that the common key SKey is required.
The escrow key ks2 calculated in this way is divided key ks
1 is passed to the secret key synthesizing unit 210 for use as an RSA secret key. The secret key synthesizing unit 210 synthesizes the two split keys, ie, the split key ks1 given from the key storage unit 203 and the escrow key ks2 given from the escrow key extracting unit 209, and uses them as a secret key in RSA encryption (S110). In the case of encryption, the usage method is the formula (6)
In the case of decoding, it is expressed by equation (7).

【0080】C=Mkp mod n (6) M=Cks1xks2 nod n (7) これにより、秘密鍵預託機関300で保持されている預
託鍵を、利用者600からの要求によって、ノードA2
00に配送し、利用者600は、自己の知っている第1
の分割秘密鍵であるパスワードと秘密鍵預託機関300
から配送された預託鍵である第2の分割秘密鍵を用いる
ことで、他エンティティと認証を行うことができる。
C = M kp mod n (6) M = C ks1xks2 node n (7) Thus, the escrow key held by the private key escrow organization 300 is transmitted to the node A2 by the request from the user 600.
00, and the user 600 receives the first
Password and private key escrow organization 300
By using the second divided secret key, which is the escrow key distributed from, it is possible to perform authentication with another entity.

【0081】また、預託鍵の保管及び配送においては、
利用者600のみが知っているパスワードのような鍵復
号化鍵で復号できるように暗号化することで、預託鍵を
安全に管理し、配送できる。
In storing and delivering the escrow key,
Encrypting the key so that it can be decrypted with a key decryption key such as a password known only to the user 600 allows the escrow key to be safely managed and delivered.

【0082】さらに、保護された預託鍵を復号するため
の鍵復号化鍵に、共通鍵や第1の分割秘密鍵、または、
その両方を組み合わせて用いることで預託鍵を安全に配
送できる。
Further, the key decryption key for decrypting the protected escrow key may be a common key, a first divided secret key, or
By using both in combination, the escrow key can be safely delivered.

【0083】次に、本発明における鍵変更に関する第2
の実施の形態を説明する。ここで、本発明を適用するシ
ステムの概略構成は図1に示すものと同じである。
Next, a second key change in the present invention will be described.
An embodiment will be described. Here, the schematic configuration of a system to which the present invention is applied is the same as that shown in FIG.

【0084】図6は、本発明の第2の実施の形態におけ
る秘密鍵預託システムの構成を示し、図7は同実施の形
態における秘密鍵預託方法の概要を示す。
FIG. 6 shows a configuration of a secret key escrow system according to the second embodiment of the present invention, and FIG. 7 shows an outline of a secret key escrow method in the second embodiment.

【0085】図6に示すエンティティA200は、秘密
鍵を第1の分割秘密鍵及び第2の分割秘密鍵に分割する
鍵分割部211、第1の分割秘密鍵、鍵復号化鍵を記憶
する鍵記憶部213、エンティティB300に預託され
ている第2の分割秘密鍵、素数p、素数qからなる預託
鍵情報の配送要求を行うための預託鍵情報取得要求部2
14、エンティティB300からの預託鍵情報を受け付
ける預託鍵情報受付部218、預託鍵情報受付部218
から与えられる暗号化された預託鍵情報と、鍵記憶部2
13により記憶されている鍵復号化鍵から、預託鍵情報
を復号し、第2の分割秘密鍵、素数p、素数qを取り出
す預託鍵情報取出部219、素数p,素数qから新たな
第1の分割秘密鍵と、新たな第2の分割秘密鍵を生成す
る分割秘密鍵生成部220から構成される。
The entity A 200 shown in FIG. 6 includes a key dividing section 211 for dividing a secret key into a first divided secret key and a second divided secret key, a first divided secret key, and a key for storing a key decryption key. Storage unit 213, escrow key information acquisition request unit 2 for making a delivery request of escrow key information composed of the second divided secret key, prime number p and prime number q deposited in entity B300
14. Deposited key information receiving unit 218 for receiving the deposited key information from entity B300, and deposited key information receiving unit 218
Escrowed key information provided from the
The escrow key information extracting unit 219 that decodes the escrow key information from the key decryption key stored by 13 and extracts the second divided secret key, the prime number p and the prime number q. And a divided secret key generation unit 220 that generates a new second divided secret key.

【0086】エンティティB300は、エンティティA
200から預託鍵情報の配送要求を受け付ける預託鍵情
報取得要求受付部315、予め暗号化鍵により暗号化さ
れた預託鍵情報を記憶し、預託鍵情報取得要求受付部3
15からの検索要求によりエンティティA200に対応
する保護された預託鍵情報を返す預託鍵情報記憶部31
6と、保護された預託鍵情報を預託鍵情報取得要求受付
部315から受けて、エンティティA200に配送する
預託鍵情報配送部317より構成される。
The entity B 300 is the entity A
The escrow key information acquisition request receiving unit 315 that receives the escrow key information delivery request from the escrow unit 200 stores the escrow key information encrypted in advance with the encryption key,
Escrow key information storage unit 31 that returns protected escrow key information corresponding to entity A200 in response to a search request from 15
6 and a deposit key information delivery unit 317 that receives the protected deposit key information from the deposit key information acquisition request receiving unit 315 and delivers it to the entity A200.

【0087】まず、エンティティA200では、RSA
暗号方式で用いられる利用者の公開鍵と秘密鍵のうち、
秘密鍵を2つの分割し(S11)、そのうちの一方の第
1の分割秘密鍵を保持する(S12)。もう一方の第2
の分割秘密鍵はエンティティB300に預託され(S1
3)、エンティティB300がこれを保持する。
First, in the entity A200, the RSA
Of the public and private keys of the user used in the encryption method,
The secret key is divided into two (S11), and one of the first divided secret keys is held (S12). The other second
Is deposited with the entity B300 (S1
3), the entity B300 holds this.

【0088】エンティティA200の鍵分割部211に
おいて分割される秘密鍵はMultiple-Key暗号(C.A.Boy
d,“Some Applications of Multiple Key Ciphers
”,Proceedings Eurocrypt 88,Springer-Verlag ,1
988)に基づいて、
The secret key divided by the key dividing section 211 of the entity A 200 is a multiple-key encryption (CABoy
d, “Some Applications of Multiple Key Ciphers
”, Proceedings Eurocrypt 88, Springer-Verlag, 1
988)

【数3】 kp×ks1×ks2≡1(mod L) (1) の合同式を満足するような秘密鍵である。ここで、ks
1を第1の分割秘密鍵、ks2を第2の分割秘密鍵、k
pを公開鍵とする。また、Lは、(p−1)と(q−
1)の最小公倍数であり、p、qは、任意の異なる大き
な素数であり、また以下においてnは、p、qの積であ
る。
## EQU3 ## The secret key satisfies the congruence of kp × ks1 × ks2≡1 (mod L) (1). Where ks
1 is the first split secret key, ks2 is the second split secret key, k
Let p be the public key. L is (p-1) and (q-
The least common multiple of 1), where p and q are any different large prime numbers, and in the following, n is the product of p and q.

【0089】エンティティA200は鍵分割部211で
秘密鍵を分割して得られた第2の分割秘密鍵、素数p、
素数qからなる預託鍵情報を、エンティティAのみが知
っている鍵復号化鍵で復号できるように暗号化し、エン
ティティB300の預託鍵情報記憶部316に預託して
おく、ここで、鍵復号化鍵と鍵復号化鍵で復号できるよ
うに暗号化する暗号化鍵は、例えば、DES暗号(FI
PS pub 46 ,“DataEncryption Standard”,NBS ,
1977)や、FEAL暗号(宮口、白石、清水、“F
EAL−8暗号化アルゴリズム”、研実報、37,4/5 ,
pp.321-327,1988)に代表されるような暗号化鍵と復号
鍵を同じ共通鍵とする共通鍵暗号方式に基づいて共通鍵
とすることもでき、また、RSA暗号方式により、第2
の分割秘密鍵を暗号化鍵とし、第1の分割秘密鍵と公開
鍵を鍵復号化鍵として用いることも可能である。
The entity A 200 generates a second divided secret key obtained by dividing the secret key by the key dividing unit 211, a prime number p,
The escrow key information consisting of the prime number q is encrypted so that it can be decrypted with the key decryption key known only to the entity A, and is deposited in the escrow key information storage unit 316 of the entity B300. The encryption key for encrypting so that it can be decrypted with the key decryption key is, for example, DES encryption (FI
PS pub 46, “DataEncryption Standard”, NBS,
1977) and FEAL code (Miyaguchi, Shiraishi, Shimizu, "F
EAL-8 Encryption Algorithm ", Research Report, 37, 4/5,
pp. 321-327, 1988), a common key can be used as a common key based on a common key cryptosystem in which an encryption key and a decryption key are the same common key.
Can be used as an encryption key, and the first divided secret key and the public key can be used as a key decryption key.

【0090】また、上記の2通りの方法を組み合わせる
ことにより、暗号化された第2の分割秘密鍵を解読する
ための計算量を多くし、暗号化に用いられた鍵のしらみ
つぶし攻撃をより困難にすることもできる。
Further, by combining the above two methods, the amount of calculation for decrypting the encrypted second divided secret key is increased, and the brute force attack of the key used for encryption is reduced. It can be difficult.

【0091】次に、エンティティA200の預託鍵情報
取得部214は、エンティティB300に預託鍵情報の
取得要求を発行する(S14)。
Next, the escrow key information obtaining unit 214 of the entity A 200 issues a request for obtaining escrow key information to the entity B 300 (S 14).

【0092】これにより、エンティティB300の預託
鍵情報取得要求受付部315は、当該要求を受け付ける
と、預託鍵情報記憶部316から暗号化鍵で暗号化され
ることで安全に保護されている預託鍵情報を検索し取得
する。そして、エンティティB300は、預託鍵情報配
送部317から、保護されている預託鍵情報をエンティ
ティA200に配送する(S15)。
Thus, upon receiving the request, the escrow key information acquisition request accepting unit 315 of the entity B 300 receives the request from the escrow key information storage unit 316 and encrypts the escrow key with the encryption key. Search and retrieve information. Then, the entity B300 delivers the protected escrow key information from the escrow key information delivery unit 317 to the entity A200 (S15).

【0093】次に、エンティティA200では、預託鍵
情報配送部317から配送された預託鍵情報を預託鍵情
報受付部218で受け取り、当該預託鍵情報を復号する
ために預託鍵情報取出部219に転送する。
Next, in the entity A 200, the escrow key information delivered from the escrow key information delivery unit 317 is received by the escrow key information receiving unit 218 and transferred to the escrow key information extraction unit 219 to decrypt the escrow key information. I do.

【0094】預託鍵情報取出部219は、保護された預
託鍵情報を鍵記憶部213に保持されている鍵復号化鍵
を使って復号し、預託鍵情報を取り出す(S16)。こ
れにより、正しい鍵復号化鍵を知っているエンティティ
A200のみが預託鍵情報を得ることができ、第1の分
割秘密鍵と第2の分割秘密鍵を合成し一つの秘密鍵ks
として用いることができる(S17)。
The escrow key information extracting unit 219 decrypts the protected escrow key information using the key decryption key stored in the key storage unit 213, and extracts the escrow key information (S16). As a result, only the entity A200 that knows the correct key decryption key can obtain the escrow key information, synthesizes the first divided secret key and the second divided secret key, and creates one secret key ks
(S17).

【0095】さらに、分割秘密鍵生成部220におい
て、預託鍵情報のうち、素数p、素数qから、
Further, in the divided secret key generation unit 220, the prime numbers p and q of the escrow key information are

【数4】 ks1’×ks2’≡ks(mod L) (8) が成り立つような新たな第1の分割秘密鍵ks1’と、
第2の分割秘密鍵ks2’を生成することにより、公開
鍵を変更することなくそれぞれの分割秘密鍵を変更でき
る(S18)。
Ks1 ′ × ks2′≡ks (mod L) (8) A new first divided secret key ks1 ′ such that
By generating the second divided secret key ks2 ', each divided secret key can be changed without changing the public key (S18).

【0096】次に、本発明の第2の実施の形態における
秘密鍵預託システムの具体例について説明する。
Next, a specific example of the secret key escrow system according to the second embodiment of the present invention will be described.

【0097】まず、以下の説明で用いられる変数及び関
数例について説明する。kpは、利用者のRSA公開
鍵、ks1,ks2はそれぞれ利用者のRSA秘密鍵の
分割鍵てあって、各鍵kp,ks1,ks2は、Multip
le-Key暗号に基づく式(1)を満足するように決定され
る。さらに、ks1は、利用者がパスワードとして記憶
できる程度の短い桁数として決定し、ks2、素数p,
素数qは、秘密鍵預託機関に預けられる預託鍵情報とす
る。Mは、任意の平文ブロックとし、Mを暗号化した結
果をCとし、(a mod b)は、aをbで割った余
りである。また、X″は、預託鍵情報を預託鍵ks2自
身でRSA暗号化したデータとする。
First, examples of variables and functions used in the following description will be described. kp is the user's RSA public key, ks1 and ks2 are the split keys of the user's RSA private key, and each of the keys kp, ks1, and ks2 is the Multip
It is determined so as to satisfy Equation (1) based on le-Key encryption. Further, ks1 is determined as a short number of digits that can be stored as a password by the user, and ks2, a prime number p,
The prime q is escrow key information to be deposited at a private key escrow organization. M is an arbitrary plaintext block, C is the result of encrypting M, and (a mod b) is the remainder of dividing a by b. X ″ is data obtained by performing RSA encryption on the escrow key information with the escrow key ks2 itself.

【0098】図8は、本発明の第2の実施の形態による
秘密鍵預託システムの具体例を示す。
FIG. 8 shows a specific example of a secret key escrow system according to the second embodiment of the present invention.

【0099】図8において、ノードAは前述のエンティ
ティA200に対応し、秘密鍵預託機関は前述のエンテ
ィティB300に対応する。図8では図6と同一構成部
分には、同一符号を付与し、その説明を省略する。
In FIG. 8, node A corresponds to the above-described entity A200, and the private key depository corresponds to the above-described entity B300. 8, the same reference numerals are given to the same components as those in FIG. 6, and the description thereof will be omitted.

【0100】図8の構成において、ノードA200は、
利用者600からパスワードを受け付けるパスワード入
力受付部212、鍵記憶部213、預託鍵情報取得要求
部214、預託鍵情報受付部218、預託鍵情報取出部
219及び分割秘密鍵生成部220より構成される。
In the configuration shown in FIG. 8, node A 200
It comprises a password input receiving unit 212 for receiving a password from the user 600, a key storage unit 213, a deposit key information acquisition request unit 214, a deposit key information receiving unit 218, a deposit key information extracting unit 219, and a divided secret key generation unit 220. .

【0101】秘密鍵預託機関300は、預託鍵情報取得
要求受付部315、利用者名毎に公開鍵と利用者のノー
ドから預託された預託鍵情報を格納する預託鍵情報記憶
部(鍵管理データベース)316、預託鍵情報配送部3
17より構成される。
The secret key escrow system 300 includes a escrow key information acquisition request receiving unit 315, a escrow key information storage unit (a key management database) for storing a public key for each user name and escrow key information deposited from the user node. ) 316, escrow key information distribution unit 3
17.

【0102】なお、ノードA200と秘密鍵預託機関3
00はネットワーク500で接続されている。
The node A 200 and the secret key escrow system 3
00 is connected by a network 500.

【0103】以下に、図8の構成における動作を説明す
る。
The operation of the configuration shown in FIG. 8 will be described below.

【0104】ノードA200は、パスワード入力受付部
212により利用者600からパスワードks1を受け
付けると、鍵記憶部213に保持する。
When the password ks1 is received from the user 600 by the password input receiving unit 212, the node A200 holds the password ks1 in the key storage unit 213.

【0105】次に、ノードA200は、予め秘密鍵預託
機関300に登録している預託鍵情報を取得するため、
預託鍵情報取得要求部214により預託鍵情報を取得す
るための要求メッセージを作成し、ネットワーク500
を介して要求メッセージを送信する。なお、要求メッセ
ージには、利用者名が含まれているものとする。
Next, the node A 200 obtains escrow key information registered in the secret key escrow organization 300 in advance.
A request message for acquiring escrow key information is created by the escrow key information acquisition
Send the request message via. It is assumed that the request message includes the user name.

【0106】秘密鍵預託機関300では、預託鍵情報取
得要求受付部315によりノードA200からの要求メ
ッセージを受け付けると、秘密鍵預託機関300により
管理されている鍵管理データベース316から、要求メ
ッセージに含まれる利用者名に対応する公開鍵と預託鍵
情報を検索して取り出す。なお、鍵管理データベース3
16で管理される公開鍵kpと保護された預託鍵情報
X″は、予め登録されている。また、保護された預託鍵
情報X″は次式により、暗号化されて保護されている。
In secret key escrow organization 300, upon receipt of the request message from node A 200 by escrow key information acquisition request receiving section 315, the request message is included in the request message from key management database 316 managed by secret key escrow organization 300. Search and retrieve the public key and escrow key information corresponding to the user name. The key management database 3
The public key kp and the protected escrow key information X ″ managed in 16 are registered in advance. The protected escrow key information X ″ is encrypted and protected by the following equation.

【0107】[0107]

【数5】 X″=(ks2,p,q)ks2 mod n (9) 預託鍵情報取得要求受付部315により鍵管理データベ
ース316から取り出された利用者の公開鍵と保護され
た預託鍵情報は、預託鍵情報配送部317に渡される。
X ″ = (ks2, p, q) ks2 mod n (9) The user's public key and protected escrow key information extracted from the key management database 316 by the escrow key information acquisition request receiving unit 315 are: Is transferred to the deposit key information delivery unit 317.

【0108】預託鍵情報配送部317では、ノードA2
00に保護された預託鍵情報を配送するための応答メッ
セージを作成し、ノードA200に送信する。なお、応
答メッセージには、利用者の保護された預託鍵情報と公
開鍵が含まれる。
[0108] The escrow key information delivery unit 317 sends the information to the node A2.
A response message for delivering the escrow key information protected to 00 is created and transmitted to the node A200. The response message includes the user's protected escrow key information and the public key.

【0109】ノードA200では、預託鍵情報受付部2
18により応答メッセージを受け取ると、預託鍵情報を
取り出すために応答メッセージに含まれる保護された預
託鍵情報と公開鍵を預託鍵情報取出部219に与える。
また、同時に、鍵記憶部213で記憶されてる分割鍵k
s1を預託鍵情報取出部219に与える。
At node A200, escrow key information receiving unit 2
When the response message is received by 18, the protected escrow key information and the public key included in the response message are given to the escrow key information extraction unit 219 to extract the escrow key information.
At the same time, the divided key k stored in the key storage unit 213
s1 is given to the escrow key information extraction unit 219.

【0110】預託鍵情報取出部219では、以下の計算
式により預託鍵情報を算出する。
[0110] The escrow key information extraction unit 219 calculates escrow key information by the following formula.

【0111】[0111]

【数6】 (ks2,p,q)=(X″)ks1xkpmod n =(ks2,p,q)ks2xks1xkpmod n (10) ここで、正しい預託鍵情報を算出するためには、利用者
から正しいパスワードとして与えられた分割鍵ks1が
必要であることは明らかである。このようにして、算出
された預託鍵情報内の預託鍵ks2は、分割鍵ks1と
共に、 ks=ks1×ks2 (11) の乗算を行うことで、RSA秘密鍵ksとして利用でき
る。
(Ks2, p, q) = (X ″) ks1xkp mod n = (ks2, p, q) ks2xks1xkp mod n (10) Here, in order to calculate correct escrow key information, It is clear that the divided key ks1 given as the correct password is necessary, and the escrow key ks2 in the calculated escrow key information is ks = ks1 × ks2 together with the divided key ks1. Can be used as the RSA secret key ks.

【0112】また、分割秘密鍵生成部220では、鍵記
憶部213から与えられた分割鍵ks1と預託鍵情報取
出部219から与えられた預託鍵ks2、素数p、素数
qから、前述の式(8)により新たな分割鍵ks1’
と、分割鍵ks2’を生成できる。
In the divided secret key generation section 220, the above-described equation (1) is obtained from the divided key ks1 given from the key storage section 213 and the escrow key ks2 given from the escrow key information extraction section 219, the prime number p and the prime number q. 8), the new split key ks1 ′
And a split key ks2 ′ can be generated.

【0113】生成後、パスワードとして用いるあらたな
分割鍵ks1’を利用者600に通知し、さらに、秘密
鍵預託機関300に預るための新たな預託鍵情報を前述
の式(9)と同様に以下の式(12)により計算する。
After generation, a new split key ks1 ′ used as a password is notified to the user 600, and new deposit key information for depositing with the secret key deposit organization 300 is obtained in the same manner as in the above equation (9). It is calculated by the following equation (12).

【0114】[0114]

【数7】 X″=(ks2’,p,q)ks2'mod n (12) 上記の一連の手順により、利用者の2つの分割秘密鍵
は、公開鍵kpを変更することなく、随時変更できるこ
とが明らかである。
X ″ = (ks2 ′, p, q) ks2 ′ mod n (12) According to the above series of procedures, the user's two divided secret keys can be changed at any time without changing the public key kp. It's clear what you can do.

【0115】なお、上記の各実施の形態においては、秘
密鍵を二つに分割する場合について説明したが、本発明
の秘密鍵預託方法はより一般に秘密鍵を複数個に分割す
る場合にも適用可能である。即ち、Multiple-Key暗号に
基づき、以下の式(13)で示される合同式を満足するよ
うな秘密鍵を用い、
In each of the above embodiments, the case where the secret key is divided into two has been described, but the secret key escrow method of the present invention is more generally applied to the case where the secret key is divided into a plurality. It is possible. That is, based on Multiple-Key encryption, a secret key that satisfies the congruence expressed by the following equation (13) is used,

【数8】 kp×ks1×ks2×……×ksm≡1 (mod L) (13) ks1を第1の分割秘密鍵、ks2を第2の分割秘密
鍵、ksmを第mの分割秘密鍵、kpを公開鍵とする。
.Times..times..times..times..times..times..times..times..times..times..tim- es..times..times..times..times..times..times..times..times..tim- es..times..times..times..times..times. Let kp be the public key.

【0116】この場合、第一の分割秘密鍵は利用者が保
持し、残りの(m−1)個の分割秘密鍵は(m−1)個
の他のエンティティに各々預託しておく。
In this case, the first divided secret key is held by the user, and the remaining (m-1) divided secret keys are deposited in (m-1) other entities.

【0117】利用者のエンティティでは、これら各エン
ティティに要求して配送されてくる分割秘密鍵と自分が
保持する第1の分割秘密鍵から、 ks=ks1×ks2×……×ksm (14) を算出してRSA秘密鍵ksを求めることができる。
The user's entity obtains ks = ks1 × ks2 ×... × ksm (14) from the split secret key requested and delivered to each of these entities and the first split secret key held by the user entity. By calculating, the RSA secret key ks can be obtained.

【0118】また、上記第2の実施の形態と同様に、秘
密鍵の生成時に用いられた素数pと素数qを他のエンテ
ィティのいづれかに残りの分割秘密鍵と共に預託してお
き、利用者のエンティティで合成された秘密鍵ksと該
他のエンティティのいづれかから該残りの分割秘密鍵と
共に配送された素数pと素数qから
Also, as in the second embodiment, the prime numbers p and q used when generating the secret key are deposited with any of the other entities together with the remaining divided secret keys, and the user's From the secret key ks synthesized by the entity and the prime numbers p and q delivered together with the remaining divided secret keys from any of the other entities

【数9】 ks1’×ks2’×……×ksm’≡ks(mod L) (15) が成り立つような新たな分割秘密鍵ks1’,ks
2’,……,ksm’を生成することにより、公開鍵を
変更することなくそれぞれの分割秘密鍵を変更すること
が可能である。
(9) ks1 ′ × ks2 ′ ×... × ksm′9ks (mod L) (15)
By generating 2 ′,..., Ksm ′, each of the divided secret keys can be changed without changing the public key.

【0119】この場合、基本的には素数pと素数qを他
のエンティティの1つに預託すればよいが、素数pと素
数qを別々の他のエンティティに分けて預託することに
してもよい。
In this case, basically, the prime number p and the prime number q may be deposited in one of the other entities, but the prime number p and the prime number q may be deposited separately in another entity. .

【0120】また、新たな分割秘密鍵の数を元の分割秘
密鍵の数と異なるようにしてもよいし、新たな分割秘密
鍵を預託するエンティティを変更したり入れ替えたりし
て元の分割秘密鍵とは異なるエンティティに預託するよ
うにしてもよい。
Further, the number of new divided secret keys may be made different from the number of original divided secret keys, or the entity for depositing new divided secret keys may be changed or replaced to change the original divided secret keys. It may be deposited in an entity different from the key.

【0121】また、上記の実施の形態においては、公開
鍵を他のエンティティから取得する例を示しているが、
この例に限定されることなく、鍵記憶部213に保持す
るようにしてもよい。
In the above embodiment, an example is shown in which the public key is obtained from another entity.
The present invention is not limited to this example, and may be stored in the key storage unit 213.

【0122】また、本発明は、上記の実施の形態に限定
されることなく、特許請求の範囲内で種々変更・応用が
可能である。
Further, the present invention is not limited to the above-described embodiment, but can be variously modified and applied within the scope of the claims.

【0123】[0123]

【発明の効果】上述したように、本発明のRSA暗号に
おける秘密鍵預託方法及びシステムによれば、RSA暗
号方式で用いる利用者の秘密鍵を2つに分割して、片方
を秘密鍵預託機関に預託しておき、必要に応じて秘密鍵
預託機関から分割された片方の分割秘密鍵を取得して、
もう一方と合成することにより正しい利用者のみが、秘
密鍵を取得することが可能となる。
As described above, according to the secret key escrow method and system in the RSA cryptography of the present invention, the user's secret key used in the RSA cryptosystem is divided into two, and one of the two is divided into two. And obtain one of the divided secret keys from the private key escrow organization as necessary,
By combining with the other, only the correct user can acquire the secret key.

【0124】また、秘密鍵預託機関に預託する分割秘密
鍵を共通鍵で暗号化して預託することにより、利用者の
エンティティから当該鍵の取得の要求が発行された場
合、当該エンティティにおいて、預託鍵を復号すること
により、正しい共通鍵を所有するエンティティのみが預
託鍵を取得することができる。
Further, by enciphering and depositing a divided secret key to be deposited at a private key depository with a common key, when a request to obtain the key is issued from a user entity, the deposit key By decrypting, only the entity that has the correct common key can obtain the escrow key.

【0125】さらに、預託する分割秘密鍵を、該分割秘
密鍵自身で暗号化して、秘密鍵預託機関に預託する預託
鍵を生成して預託することにより、預託鍵が配送された
エンティティにおいて正しい片方の分割した秘密鍵(第
1の分割秘密鍵)を有していないと、秘密鍵預託機関か
ら渡された預託鍵を復号できなくできる。
Further, the divided private key to be deposited is encrypted by the divided private key itself, and a deposit key to be deposited at the private key depositor is generated and deposited. Without the divided private key (first divided secret key), the escrow key passed from the private key escrow organization cannot be decrypted.

【0126】これに加えて、暗号化された預託鍵をさら
に、利用者のエンティティのみが知る共通鍵で暗号化
し、秘密鍵預託機関に預託することにより、さらに厳重
なセキュリテイ効果を奏する。
In addition, by encrypting the encrypted escrow key with a common key known only to the user entity and escrowing it with a secret key escrow organization, a more strict security effect is achieved.

【0127】また、本発明によれば、RSA暗号方式で
利用される利用者の公開鍵と秘密鍵のうち、秘密鍵を2
つに分割し、第1の分割秘密鍵を利用者のエンティティ
で保持しておき、もう一方の第2の分割秘密鍵を他のエ
ンティティに預託しておくことで、利用者のエンティテ
ィでは第1の分割秘密鍵のみを保持していればよく、必
要な時に、他のエンティティからもう一方の第2の分割
秘密鍵を取得して、2つの秘密鍵を合成して用いること
により、双方の分割秘密鍵を一カ所で保持する必要がな
いため、安全である。
According to the present invention, the secret key of the user's public key and secret key used in the RSA
The first divided private key is held in the user entity and the other second divided secret key is deposited in another entity, so that the first It is only necessary to hold the divided secret key of the other. When necessary, the other second divided secret key is obtained from the other entity, and the two divided It is secure because there is no need to keep the private key in one place.

【0128】また、他のエンティティに預ける第2の分
割秘密鍵にさらに、素数p、素数qを付与しておき、第
1の分割秘密鍵及び第2の分割秘密鍵の変更を行う場合
には、素数p,素数qを用いて公開鍵を変更することな
く、利用者のエンティティで独自に新たな第1の分割秘
密鍵及び新たな第2の分割秘密鍵を生成することで、鍵
の変更・管理を容易に行うことができ、他のエンティテ
ィにおいて公開鍵の変更を行う必要がない。
In addition, when a prime number p and a prime number q are further added to the second divided secret key deposited in another entity and the first divided secret key and the second divided secret key are changed, , Without changing the public key using the prime number p and the prime number q, the user's entity generates a new first divided secret key and a new second divided secret key independently, thereby changing the key. Management can be performed easily, and there is no need to change public keys in other entities.

【0129】本発明によれば、RSA秘密鍵を複数に分
割し、そのうちの一つの分割秘密鍵は利用者が保持し、
残りの分割秘密鍵は他のエンティティに預託しておくの
で、秘密鍵が複数に分割されて保管されることから安全
である。また、利用者の保持する分割秘密鍵を人間が記
憶できる程度の短い長さのパスワードとすることが可能
となる。これらのことから、本発明では以下のような効
果が実現可能となる。
According to the present invention, the RSA secret key is divided into a plurality of keys, one of which is held by the user,
Since the remaining divided private key is deposited in another entity, it is safe because the private key is divided into a plurality of pieces and stored. In addition, it becomes possible to use a password having a length as short as a human can store the divided secret key held by the user. From these, the following effects can be realized in the present invention.

【0130】(1)ロケーションフリー 利用者にとって、RSA暗号方式を用いた処理が、特定
のローカルコンピュータのみで可能なばかりでなく、ネ
ットワークに接続されたあらゆるコンピュータから可能
となる。
(1) Location Free For a user, processing using the RSA encryption method can be performed not only by a specific local computer but also by any computer connected to a network.

【0131】(2)デバイスフリー 利用者は、秘密情報を格納するためのいかなるデバイス
を持つ必要もない。つまり、利用者を特定するための秘
密情報が、人間が記憶できる情報量を元に提供できるよ
うになる。
(2) Device Free The user does not need to have any device for storing secret information. That is, the secret information for identifying the user can be provided based on the amount of information that can be stored by a human.

【0132】(3)安全性 分割秘密鍵の一つが他者に知られたとしても、残りの分
割秘密鍵が知られなければRSA秘密鍵として利用でき
ないため、高い安全性を実現できる。
(3) Security Even if one of the divided secret keys is known to others, it cannot be used as an RSA secret key unless the remaining divided secret key is known, so that high security can be realized.

【0133】また、秘密情報を知っている正当な利用者
のみが、秘密鍵を利用できるようにすることが可能とな
る。
Further, it is possible to make only the authorized user who knows the secret information use the secret key.

【0134】また、本発明が適用される閉じた範囲内に
おいて、その安全性の根拠を明確に示すことが可能とな
る。例えば、従来の秘密鍵をファイルに格納する方式で
は、エンティティ認証を行うためにはRSA暗号アルゴ
リズムを用いているにも拘わらず、その秘密鍵を暗号化
するためにはDES暗号のような異なるアルゴリズムを
用いるので、結果的に安全性がどのアルゴリズムの強度
に依存しているのか明確にはできなかったが、本発明に
よればシステムの安全性を利用者に対して明確に示すこ
とが可能である。
Further, within the closed range to which the present invention is applied, the basis of the security can be clearly shown. For example, in a conventional method of storing a secret key in a file, although an RSA encryption algorithm is used to perform entity authentication, a different algorithm such as DES encryption is used to encrypt the secret key. As a result, it was not possible to clarify as to which algorithm the security depends on, but according to the present invention, it is possible to clearly show the security of the system to the user. is there.

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

【図1】本発明を適用するシステムの概略構成を示すブ
ロック図。
FIG. 1 is a block diagram showing a schematic configuration of a system to which the present invention is applied.

【図2】本発明の第1の実施の形態における秘密鍵預託
方法の概要を示すシーケンスチャート。
FIG. 2 is a sequence chart showing an outline of a secret key escrow method according to the first embodiment of the present invention.

【図3】本発明の第1の実施の形態における秘密鍵預託
システムの構成を示すブロック図。
FIG. 3 is a block diagram showing a configuration of a secret key escrow system according to the first embodiment of the present invention.

【図4】本発明の第1の実施の形態における秘密鍵預託
システムの具体例を示すブロック図。
FIG. 4 is a block diagram showing a specific example of a secret key escrow system according to the first embodiment of the present invention.

【図5】図4の秘密鍵預託システムの具体例における動
作手順を示すシーケンスチャート。
FIG. 5 is a sequence chart showing an operation procedure in a specific example of the secret key escrow system of FIG. 4;

【図6】本発明の第2の実施の形態における秘密鍵預託
システムの構成を示すブロック図。
FIG. 6 is a block diagram showing a configuration of a secret key escrow system according to a second embodiment of the present invention.

【図7】本発明の第2の実施の形態における秘密鍵預託
方法の概要を示すシーケンスチャート。
FIG. 7 is a sequence chart showing an outline of a secret key escrow method according to the second embodiment of the present invention.

【図8】本発明の第2の実施の形態における秘密鍵預託
システムの具体例を示すブロック図。
FIG. 8 is a block diagram showing a specific example of a secret key escrow system according to the second embodiment of the present invention.

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

200 エンティティA(ノードA) 201 パスワード入力受付部 202 共通鍵生成部 203,213 鍵記憶部 204 預託鍵取得要求部 205,211 鍵分割部 206 鍵預託部 208 預託鍵受付部 209 預託鍵取出部 210 秘密鍵合成部 214 預託鍵情報取得要求部 218 預託鍵情報受付部 219 預託鍵情報取出部 220 分割秘密鍵生成部 300 エンティティB(秘密鍵預託機関) 305 預託鍵取得要求受付部 306 預託鍵記憶部(鍵管理DB) 307 預託鍵配送部 315 預託鍵情報取得要求受付部 316 預託鍵情報配送部 317 預託鍵情報記憶部(鍵管理DB) 400 他エンティティ 500 ネットワーク 600 利用者 Reference Signs List 200 Entity A (Node A) 201 Password input receiving unit 202 Common key generating unit 203, 213 Key storage unit 204 Escrow key acquisition request unit 205, 211 Key splitting unit 206 Key escrow unit 208 Escrow key accepting unit 209 Escrow key extracting unit 210 Secret key synthesizing unit 214 Escrowed key information acquisition requesting unit 218 Escrowed key information receiving unit 219 Escrowed key information extracting unit 220 Divided secret key generation unit 300 Entity B (private key escrow organization) 305 Escrowed key acquisition request receiving unit 306 Escrowed key storage unit (Key management DB) 307 Escrow key distribution unit 315 Escrow key information acquisition request receiving unit 316 Escrow key information distribution unit 317 Escrow key information storage unit (key management DB) 400 Other entity 500 Network 600 User

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 FI H04L 9/08 H04L 9/00 601Z 601A 601F (72)発明者 岡本 龍明 東京都新宿区西新宿三丁目19番2号 日本 電信電話株式会社内──────────────────────────────────────────────────の Continued on the front page (51) Int.Cl. 6 Identification code FI H04L 9/08 H04L 9/00 601Z 601A 601F (72) Inventor Tatsuaki Okamoto 3-19-2 Nishishinjuku, Shinjuku-ku, Tokyo Japan Telegraph and Telephone Corporation

Claims (30)

【特許請求の範囲】[Claims] 【請求項1】 RSA暗号方式で用いる利用者の公開鍵
と秘密鍵のうち、該秘密鍵を利用者エンティティで2つ
に分割し、 分割された秘密鍵のうちの第1の分割秘密鍵は前記利用
者エンティティにおいて保持され、 分割された秘密鍵のうちの第2の分割秘密鍵を前記利用
者エンティティから他のエンティティに預託しておき、 前記利用者エンティティからの要求に応じて、前記他の
エンティティから前記第2の分割秘密鍵を該利用者エン
ティティに配送し、 前記利用者エンティティにおいて、保持されている前記
第1の分割秘密鍵と前記他のエンティティから配送され
た前記第2の分割秘密鍵を合成して、RSA暗号方式に
よる処理に用いる秘密鍵を得ることを特徴とするRSA
暗号における秘密鍵預託方法。
1. A secret key of a user's public key and secret key used in the RSA encryption method is divided into two by a user entity, and a first divided secret key of the divided secret keys is The second divided secret key of the divided secret keys held in the user entity is deposited from the user entity to another entity, and in response to a request from the user entity, Delivering the second split secret key from the entity to the user entity, and the first split secret key held by the user entity and the second split delivered from the other entity. RSA characterized in that a secret key is synthesized to obtain a secret key to be used for processing by the RSA encryption method.
Private key escrow method in cryptography.
【請求項2】 前記利用者エンティティは、前記第2の
分割秘密鍵を該利用者エンティティのみが知り得る鍵復
号化鍵で復号できるように暗号化鍵により暗号化して、
暗号化された第2の分割秘密鍵を前記他のエンティティ
に預託し、 前記他のエンティティは、前記利用者エンティティから
の要求に応じて、前記暗号化された第2の分割秘密鍵を
該利用者エンティティに配送し、 前記利用者エンティティは、前記暗号化された第2の分
割秘密鍵を前記鍵復号化鍵により復号して前記第2の分
割秘密鍵を得ることを特徴とする請求項1記載のRSA
暗号における秘密鍵預託方法。
2. The user entity encrypts the second divided secret key with an encryption key so that the second divided secret key can be decrypted with a key decryption key known only to the user entity,
Depositing an encrypted second divided secret key with the other entity, wherein the other entity uses the encrypted second divided secret key in response to a request from the user entity; 2. The user entity, wherein the user entity obtains the second divided secret key by decrypting the encrypted second divided secret key with the key decryption key. RSA described
Private key escrow method in cryptography.
【請求項3】 前記暗号化鍵および前記鍵復号化鍵は、
利用者エンティティにおいて生成された共通鍵であるこ
とを特徴とする請求項2記載のRSA暗号における秘密
鍵預託方法。
3. The encryption key and the key decryption key,
3. The method according to claim 2, wherein the common key is a common key generated by a user entity.
【請求項4】 前記共通鍵は、前記利用者エンティティ
において前記第1の分割秘密鍵から一方向性ハッシュ関
数により求められたハッシュ値であることを特徴とする
請求項3記載のRSA暗号における秘密鍵預託方法。
4. The secret in the RSA encryption according to claim 3, wherein the common key is a hash value obtained by the one-way hash function from the first divided secret key in the user entity. Key escrow method.
【請求項5】 前記暗号化鍵は、前記第2の分割秘密鍵
そのものであり、前記鍵復号化鍵は、前記第1の分割秘
密鍵と前記公開鍵からなるものであることを特徴とする
請求項2記載のRSA暗号における秘密鍵預託方法。
5. The method according to claim 1, wherein the encryption key is the second divided secret key itself, and the key decryption key is composed of the first divided secret key and the public key. 3. The secret key escrow method in the RSA encryption according to claim 2.
【請求項6】 前記他のエンティティは、前記第2の分
割秘密鍵を前記公開鍵と共に保持し、前記利用者エンテ
ィティからの要求に応じて、前記第2の分割秘密鍵と共
に前記公開鍵を該利用者エンティティに配送し、前記利
用者エンティティは、保持されている前記第1の分割秘
密鍵と前記他のエンティティから配送された前記公開鍵
を前記鍵復号化鍵として用いることを特徴とする請求項
5記載のRSA暗号における秘密鍵預託方法。
6. The other entity holds the second divided secret key together with the public key, and in response to a request from the user entity, stores the public key together with the second divided secret key. Delivering to a user entity, wherein the user entity uses the held first divided secret key and the public key delivered from the other entity as the key decryption key. Item 6. The secret key escrow method in RSA encryption according to Item 5.
【請求項7】 前記利用者エンティティは、前記第2の
分割秘密鍵を該第2の分割秘密鍵自身により暗号化し、
さらに暗号化された第2の分割秘密鍵を該利用者エンテ
ィティのみが知り得る共通鍵で暗号化して預託鍵を求
め、該預託鍵を前記他のエンティティに預託し、 前記他のエンティティは、前記利用者エンティティから
の要求に応じて、前記預託鍵を該利用者エンティティに
配送し、 前記利用者エンティティは、前記預託鍵を前記共通鍵に
より復号して前記暗号化された第2の分割秘密鍵を求
め、該暗号化された第2の分割秘密鍵を前記第1の分割
秘密鍵と前記公開鍵により復号して前記第2の分割秘密
鍵を得ることを特徴とする請求項1記載のRSA暗号に
おける秘密鍵預託方法。
7. The user entity encrypts the second split secret key with the second split secret key itself,
Further, the encrypted second divided secret key is encrypted with a common key that can be known only to the user entity to obtain an escrow key, and the escrow key is escrowed with the other entity. Delivering the escrow key to the user entity in response to a request from the user entity, the user entity decrypting the escrow key with the common key and encrypting the encrypted second divided secret key 2. The RSA according to claim 1, wherein the second divided secret key is obtained by decrypting the encrypted second divided secret key with the first divided secret key and the public key. Private key escrow method in cryptography.
【請求項8】 前記共通鍵は、前記利用者エンティティ
において前記第1の分割秘密鍵から一方向ハッシュ関数
により求められたハッシュ値であることを特徴とする請
求項7記載のRSA暗号における秘密鍵預託方法。
8. The secret key in the RSA encryption according to claim 7, wherein the common key is a hash value obtained by the one-way hash function from the first divided secret key in the user entity. Deposit method.
【請求項9】 前記他のエンティティは、前記第2の分
割秘密鍵を前記公開鍵と共に保持し、利用者エンティテ
ィからの要求に応じて、前記第2の分割秘密鍵と共に前
記公開鍵を該利用者エンティティに配送し、 前記利用者エンティティは、保持されている前記第1の
分割秘密鍵と前記他のエンティティから配送された前記
公開鍵により前記暗号化された第2の分割秘密鍵を復号
することを特徴とする請求項7記載のRSA暗号におけ
る秘密鍵預託方法。
9. The other entity holds the second divided secret key together with the public key, and uses the public key together with the second divided secret key in response to a request from a user entity. And the user entity decrypts the encrypted second divided secret key using the held first divided secret key and the public key distributed from the other entity. 8. The secret key escrow method in RSA encryption according to claim 7, wherein
【請求項10】 前記第1の分割秘密鍵は、前記利用者
が記憶するパスワードとして前記利用者エンティティに
おいて保持されることを特徴とする請求項1記載のRS
A暗号における秘密鍵預託方法。
10. The RS according to claim 1, wherein the first divided secret key is held in the user entity as a password stored by the user.
Secret key escrow method in A-encryption.
【請求項11】 前記利用者エンティティは、前記利用
者により前記パスワードが入力されると、前記他のエン
ティティに対して前記第2の分割秘密鍵を配送するよう
に要求することを特徴とする請求項10記載のRSA暗
号における秘密鍵預託方法。
11. The user entity, wherein when the password is input by the user, the user entity requests the other entity to deliver the second divided secret key. Item 10. The secret key escrow method in the RSA encryption according to Item 10.
【請求項12】 前記利用者エンティティは、前記利用
者がRSA暗号方式による処理を行う際に前記他のエン
ティティに対して前記第2の分割秘密鍵を配送するよう
に要求することを特徴とする請求項1記載のRSA暗号
における秘密鍵預託方法。
12. The user entity requests the other entity to deliver the second divided secret key to the other entity when the user performs a process according to the RSA encryption method. The secret key escrow method in the RSA encryption according to claim 1.
【請求項13】 前記第2の分割秘密鍵と共に、前記秘
密鍵の生成時に用いられた素数p、素数qも前記他のエ
ンティティに預託しておき、 前記他のエンティティは、前記利用者エンティティから
の要求に応じて、前記第2の分割秘密鍵と共に前記素数
p、素数qを該利用者エンティティに配送し、 前記利用者エンティティは、前記第1の分割秘密鍵と前
記第2の分割秘密鍵を合成して得られた前記秘密鍵と、
前記他のエンティティから配送された前記素数p、素数
qを用いて、前記第1の分割秘密鍵,第2の分割秘密鍵
とは異なる新たな第1の分割秘密鍵、第2の分割秘密鍵
を前記公開鍵を変更することなく生成することを特徴と
する請求項1記載のRSA暗号における秘密鍵預託方
法。
13. The prime number p and the prime number q used at the time of generation of the secret key are also deposited with the other entity together with the second divided secret key, and the other entity receives a request from the user entity. Distributes the prime number p and the prime number q to the user entity together with the second divided secret key, wherein the user entity transmits the first divided secret key and the second divided secret key The secret key obtained by combining
Using the prime numbers p and q delivered from the other entity, a new first divided secret key and a second divided secret key different from the first divided secret key and the second divided secret key 2. The secret key escrow method in the RSA encryption according to claim 1, wherein the public key is generated without changing the public key.
【請求項14】 RSA暗号方式で用いる利用者の公開
鍵と秘密鍵のうち、該秘密鍵を利用者エンティティで複
数に分割し、 分割された秘密鍵のうちの一つの分割秘密鍵は前記利用
者エンティティにおいて保持され、 分割された秘密鍵のうちの残りの分割秘密鍵の各々を前
記利用者エンティティから相異なる他のエンティティに
預託しておき、 前記利用者エンティティからの要求に応じて、前記他の
エンティティの各々から前記残りの分割秘密鍵を該利用
者エンティティに配送し、 前記利用者エンティティにおいて、保持されている前記
一つの分割秘密鍵と前記他のエンティティから配送され
た前記残りの分割秘密鍵を合成して、RSA暗号方式に
よる処理に用いる秘密鍵を得ることを特徴とするRSA
暗号における秘密鍵預託方法。
14. The user's public key and secret key used in the RSA encryption method, the secret key is divided into a plurality of pieces by a user entity, and one of the divided secret keys is used for the secret key. Each of the remaining divided private keys among the divided private keys is stored in the user entity and deposited in another entity different from the user entity, and in response to a request from the user entity, Delivering the remaining split secret key from each of the other entities to the user entity, wherein the one split secret key held at the user entity and the remaining splits delivered from the other entity; RSA characterized in that a secret key is synthesized to obtain a secret key to be used for processing by the RSA encryption method.
Private key escrow method in cryptography.
【請求項15】 前記残りの分割秘密鍵と共に、前記秘
密鍵の生成時に用いられた素数p、素数qも前記他のエ
ンティティのいづれかに預託しておき、 前記他のエンティティのいづれかは、前記利用者エンテ
ィティからの要求に応じて、前記残りの分割秘密鍵と共
に前記素数p、素数qを該利用者エンティティに配送
し、 前記利用者エンティティは、前記一つの分割秘密鍵と前
記残りの分割秘密鍵を合成して得られた前記秘密鍵と、
前記他のエンティティのいづれかから配送された前記素
数p、素数qを用いて、前記一つの分割秘密鍵、残りの
分割秘密鍵とは異なる新たな複数の分割秘密鍵を前記公
開鍵を変更することなく生成することを特徴とする請求
項14記載のRSA暗号における秘密鍵預託方法。
15. The prime numbers p and q used in generating the secret key together with the remaining divided secret keys are deposited with one of the other entities, and any of the other entities is used for the usage. In response to a request from a user entity, the prime number p and the prime number q are delivered to the user entity together with the remaining divided secret key, and the user entity transmits the one divided secret key and the remaining divided secret key. The secret key obtained by combining
Using the prime p and the prime q delivered from any of the other entities to change the public key to a new plurality of divided secret keys different from the one divided secret key and the remaining divided secret keys. The secret key escrow method in the RSA encryption according to claim 14, wherein the secret key is generated without using the key.
【請求項16】 利用者エンティティと他のエンティテ
ィからなるRSA暗号における秘密鍵預託システムであ
って、該利用者エンティティは、 RSA暗号方式で用いる利用者の公開鍵と秘密鍵のう
ち、該秘密鍵を2つに分割する秘密鍵分割手段と、 分割された秘密鍵のうちの該利用者エンティティにおい
て保持される第1の分割秘密鍵を除いた残りの第2の分
割秘密鍵を他のエンティティに預託する鍵預託手段と、 前記他のエンティティに前記第2の分割秘密鍵の配送を
要求し、配送された該第2の分割秘密鍵を受け取る分割
秘密鍵取得手段と、 該利用者エンティティにおいて保持されている前記第1
の分割秘密鍵と前記他のエンティティから配送された前
記第2の分割秘密鍵を合成して、RSA暗号方式による
処理に用いる秘密鍵を得る秘密鍵合成手段と、 を有することを特徴とするRSA暗号における秘密鍵預
託システム。
16. A secret key escrow system in RSA cryptography comprising a user entity and another entity, wherein the user entity is a secret key of a user's public key and secret key used in the RSA cryptosystem. Key dividing means for dividing the secret key into two, and exchanging the remaining second divided secret key excluding the first divided secret key held in the user entity among the divided secret keys with another entity Key escrow means for escrow, split secret key acquisition means for requesting the other entity to deliver the second split secret key, and receiving the delivered second split secret key, held in the user entity Said first
Secret key synthesizing means for synthesizing the divided secret key of the above and the second divided secret key delivered from the other entity to obtain a secret key to be used for processing by the RSA encryption method. Secret key escrow system in cryptography.
【請求項17】 前記鍵預託手段は、第2の分割秘密鍵
を前記利用者エンティティのみが知り得る鍵復号化鍵で
復号できるように暗号化鍵により暗号化して、暗号化さ
れた第2の分割秘密鍵を前記他のエンティティに預託
し、 前記他のエンティティは、前記利用者エンティティから
の要求に応じて、前記暗号化された第2の分割秘密鍵を
該利用者エンティティに配送し、 前記秘密鍵合成手段は、前記暗号化された第2の分割秘
密鍵を前記鍵復号化鍵により復号して前記第2の分割秘
密鍵を得ることを特徴とする請求項16記載のRSA暗
号における秘密鍵預託システム。
17. The key escrow means encrypts the second divided secret key with an encryption key so that it can be decrypted with a key decryption key known only to the user entity. Depositing the split secret key with the other entity, the other entity delivering the encrypted second split secret key to the user entity in response to a request from the user entity, 17. The secret according to claim 16, wherein the secret key synthesizing means obtains the second divided secret key by decrypting the encrypted second divided secret key with the key decryption key. Key escrow system.
【請求項18】 前記暗号化鍵および前記鍵復号化鍵
は、前記利用者エンティティにおいて生成された共通鍵
であることを特徴とする請求項17記載のRSA暗号に
おける秘密鍵預託システム。
18. The private key escrow system in the RSA encryption according to claim 17, wherein the encryption key and the key decryption key are common keys generated in the user entity.
【請求項19】 前記共通鍵は、前記利用者エンティテ
ィにおいて前記第1の分割秘密鍵から一方向性ハッシュ
関数により求められたハッシュ値であることを特徴とす
る請求項18記載のRSA暗号における秘密鍵預託シス
テム。
19. The secret according to claim 18, wherein the common key is a hash value obtained by the one-way hash function from the first divided secret key in the user entity. Key escrow system.
【請求項20】 前記暗号化鍵は、前記第2の分割秘密
鍵そのものであり、前記鍵復号化鍵は、前記第1の分割
秘密鍵と前記公開鍵からなるものであることを特徴とす
る請求項17記載のRSA暗号における秘密鍵預託シス
テム。
20. The method according to claim 20, wherein the encryption key is the second divided secret key itself, and the key decryption key is composed of the first divided secret key and the public key. The secret key escrow system in the RSA encryption according to claim 17.
【請求項21】 前記他のエンティティは、前記第2の
分割秘密鍵を前記公開鍵と共に保持し、前記利用者エン
ティティからの要求に応じて、前記第2の分割秘密鍵と
共に前記公開鍵を該利用者エンティティに配送し、 前記秘密鍵合成手段は、前記利用者エンティティにおい
て保持されている前記第1の分割秘密鍵と前記他のエン
ティティから配送された前記公開鍵を前記鍵復号化鍵と
して用いることを特徴とする請求項20記載のRSA暗
号における秘密鍵預託システム。
21. The other entity holds the second divided secret key together with the public key, and in response to a request from the user entity, stores the public key together with the second divided secret key. Delivered to a user entity, the secret key synthesizing means uses the first divided secret key held in the user entity and the public key delivered from the other entity as the key decryption key 21. The secret key escrow system in RSA encryption according to claim 20, wherein
【請求項22】 前記鍵預託手段は、前記第2の分割秘
密鍵を該第2の分割秘密鍵自身により暗号化し、さらに
暗号化され第2の分割秘密鍵を前記利用者エンティティ
のみが知り得る共通鍵で暗号化して預託鍵を求め、該預
託鍵を前記他のエンティティに預託し、 前記他のエンティティは、前記利用者エンティティから
の要求に応じて、前記預託鍵を該利用者エンティティに
配送し、 前記秘密鍵合成手段は、前記預託鍵を前記共通鍵により
復号して前記暗号化された第2の分割秘密鍵を求め、該
暗号化された第2の分割秘密鍵を前記第1の分割秘密鍵
と前記公開鍵により復号して前記第2の分割秘密鍵を得
ることを特徴とする請求項16記載のRSA暗号におけ
る秘密鍵預託システム。
22. The key escrow means encrypts the second divided secret key with the second divided secret key itself, and further encrypts the second divided secret key so that only the user entity can know the second divided secret key. A escrow key is obtained by encrypting with a common key, the escrow key is escrowed to the other entity, and the other entity distributes the escrow key to the user entity in response to a request from the user entity. The secret key synthesizing unit decrypts the escrow key with the common key to obtain the encrypted second divided secret key, and converts the encrypted second divided secret key into the first divided secret key. 17. The secret key escrow system in the RSA encryption according to claim 16, wherein the second divided secret key is obtained by decrypting with the divided secret key and the public key.
【請求項23】 前記共通鍵は、利用者エンティティに
おいて前記第1の分割秘密鍵から一方向性ハッシュ関数
により求められたハッシュ値であることを特徴とする請
求項22記載のRSA暗号における秘密鍵預託システ
ム。
23. The secret key according to claim 22, wherein the common key is a hash value obtained by the user entity from the first divided secret key using a one-way hash function. Deposit system.
【請求項24】 前記他のエンティティは、前記第2の
分割秘密鍵を前記公開鍵と共に保持し、前記利用者エン
ティティからの要求に応じて、前記第2の分割秘密鍵と
共に前記公開鍵を該利用者エンティティに配送し、 前記秘密鍵合成手段は、前記利用者エンティティにおい
て保持されている前記第1の分割秘密鍵と前記他のエン
ティティから配送された前記公開鍵により前記暗号化さ
れた第2の分割秘密鍵を復号することを特徴とする請求
項22記載のRSA暗号における秘密鍵預託システム。
24. The other entity holds the second divided secret key together with the public key, and in response to a request from the user entity, stores the public key together with the second divided secret key. Delivering to the user entity, the secret key synthesizing means, the second divided private key held by the user entity and the encrypted second public key delivered from the other entity. 23. The secret key escrow system in the RSA encryption according to claim 22, wherein the secret key is decrypted.
【請求項25】 前記第1の分割秘密鍵は、前記利用者
が記憶するパスワードとして前記利用者エンティティに
おいて保持されることを特徴とする請求項16記載のR
SA暗号における秘密鍵預託システム。
25. The R according to claim 16, wherein the first divided secret key is held in the user entity as a password stored by the user.
Secret key escrow system in SA encryption.
【請求項26】 前記分割秘密鍵取得手段は、前記利用
者により前記パスワードが入力されると、前記他のエン
ティティに対して前記第2の分割秘密鍵を配送するよう
に要求することを特徴とする請求項25記載のRSA暗
号における秘密鍵預託システム。
26. The split secret key obtaining means, when the password is input by the user, requests the other entity to deliver the second split secret key. 26. The secret key escrow system in RSA encryption according to claim 25.
【請求項27】 前記分割秘密鍵取得手段は、前記利用
者がRSA暗号方式による処理を行う際に前記他のエン
ティティに対して前記第2の分割秘密鍵を配送するよう
に要求することを特徴とする請求項16記載のRSA暗
号における秘密鍵預託システム。
27. The divided secret key acquisition means requests the other entity to deliver the second divided secret key to the other entity when the user performs a process using the RSA encryption method. 17. The secret key escrow system in RSA encryption according to claim 16.
【請求項28】 前記鍵預託手段は、前記第2の分割秘
密鍵と共に、前記秘密鍵の生成時に用いられた素数p、
素数qも前記他のエンティティに預託し、 前記他のエンティティは、前記利用者エンティティから
の要求に応じて、前記第2の分割秘密鍵と共に前記素数
p、素数qを該利用者エンティティに配送し、 前記秘密鍵合成手段は、第1の分割秘密鍵と前記第2の
分割秘密鍵を合成して得られた前記秘密鍵と、前記他の
エンティティから配送された前記素数p、素数qを用い
て、前記第1の分割秘密鍵、第2の分割秘密鍵とは異な
る新たな第1の分割秘密鍵、第2の分割秘密鍵を前記公
開鍵を変更することなく生成することを特徴とする請求
項16記載のRSA暗号における秘密鍵預託システム。
28. The key escrow means, together with the second divided secret key, a prime p used when the secret key is generated,
The prime number q is also deposited with the other entity, and the other entity delivers the prime number p and the prime number q to the user entity together with the second divided secret key in response to a request from the user entity. The secret key synthesizing means uses the secret key obtained by synthesizing a first split secret key and the second split secret key, and the prime numbers p and q distributed from the other entity. And generating a new first divided secret key and a second divided secret key different from the first divided secret key and the second divided secret key without changing the public key. The secret key escrow system in the RSA encryption according to claim 16.
【請求項29】 利用者エンティティと他のエンティテ
ィからなるRSA暗号における秘密鍵預託システムであ
って、該利用者エンティティは、 RSA暗号方式で用いる利用者の公開鍵と秘密鍵のう
ち、該秘密鍵を複数に分割する秘密鍵分割手段と、 分割された秘密鍵のうちの該利用者エンティティにおい
て保持される一つの分割秘密鍵を除いた残りの分割秘密
鍵の各々を相異なる他のエンティティに預託する鍵預託
手段と、 前記他のエンティティの各々に前記残りの分割秘密鍵の
配送を要求し、配送された該残りの分割秘密鍵を受け取
る分割秘密鍵取得手段と、 該利用者エンティティにおいて保持されている前記一つ
の分割秘密鍵と前記他のエンティティから配送された前
記残りの分割秘密鍵を合成して、RSA暗号方式による
処理に用いる秘密鍵を得る秘密鍵合成手段と、 を有することを特徴とするRSA暗号における秘密鍵預
託システム。
29. A secret key escrow system in RSA cryptography comprising a user entity and another entity, wherein the user entity is a secret key of a user's public key and secret key used in the RSA cryptosystem. A private key dividing means for dividing the private key into a plurality of sub-keys, and depositing each of the remaining divided private keys other than one divided private key held in the user entity among the divided private keys into another different entity Key escrow means, requesting each of the other entities to deliver the remaining split secret key, and receiving the delivered remaining split secret key, split secret key obtaining means, and held by the user entity And combining the one divided secret key and the remaining divided secret key delivered from the other entity for processing by RSA encryption. Private key escrow system in RSA cryptography, characterized by having a secret key combining means for obtaining a secret key that.
【請求項30】 前記鍵預託手段は、前記残りの分割秘
密鍵と共に、前記秘密鍵の生成時に用いられた素数p、
素数qも前記他のエンティティのいづれかに預託し、 前記他のエンティティのいづれかは、前記利用者エンテ
ィティからの要求に応じて、前記残りの分割秘密鍵と共
に前記素数p、素数qを該利用者エンティティに配送
し、 前記秘密鍵合成手段は、前記一つの分割秘密鍵と前記残
りの分割秘密鍵を合成して得られた前記秘密鍵と、前記
他のエンティティのいづれかから配送された前記素数
p、素数qを用いて、前記一つの分割秘密鍵、残りの分
割秘密鍵とは異なる新たな複数の分割秘密鍵を前記公開
鍵を変更することなく生成することを特徴とする請求項
29記載のRSA暗号における秘密鍵預託システム。
30. The key escrow means, together with the remaining divided secret key, a prime p used when generating the secret key,
The prime q is also deposited with any of the other entities, and any of the other entities, upon request from the user entity, is used to store the prime p and the prime q together with the remaining divided secret key in the user entity. The secret key synthesizing means, the secret key obtained by synthesizing the one split secret key and the remaining split secret key, and the prime p delivered from any of the other entities, 30. The RSA according to claim 29, wherein a new plurality of divided secret keys different from the one divided secret key and the remaining divided secret keys are generated without changing the public key using a prime number q. Secret key escrow system in cryptography.
JP9200545A 1996-07-26 1997-07-25 Method and system for depositing secret key for ras cipher Pending JPH10177341A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9200545A JPH10177341A (en) 1996-07-26 1997-07-25 Method and system for depositing secret key for ras cipher

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP19799696 1996-07-26
JP8-274734 1996-10-17
JP8-197996 1996-10-17
JP27473496 1996-10-17
JP9200545A JPH10177341A (en) 1996-07-26 1997-07-25 Method and system for depositing secret key for ras cipher

Publications (1)

Publication Number Publication Date
JPH10177341A true JPH10177341A (en) 1998-06-30

Family

ID=27327450

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9200545A Pending JPH10177341A (en) 1996-07-26 1997-07-25 Method and system for depositing secret key for ras cipher

Country Status (1)

Country Link
JP (1) JPH10177341A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002084269A (en) * 2000-09-07 2002-03-22 Hitachi Ltd Recovery method for private key and storage method
US6625733B1 (en) 2000-01-13 2003-09-23 Yutaka Yasukura Electronic information inquiry method
KR100404246B1 (en) * 2000-08-07 2003-11-03 정인숙 Methode and system for generating non-periodical encryption data stream
JP2005295570A (en) * 2004-04-02 2005-10-20 Microsoft Corp Method and system which restore private data protected with password through communication network without exposing private data
JP2005537763A (en) * 2002-09-03 2005-12-08 ベリサイン・インコーポレイテッド Method and system for securely escrowing private keys within public key infrastructure
JP2009087183A (en) * 2007-10-02 2009-04-23 Nippon Telegr & Teleph Corp <Ntt> Security method for information recording medium, information processing device, program and recording medium
JP2009104575A (en) * 2007-10-02 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> Security method for information recording medium, information processor, program and recording medium
JP2009103968A (en) * 2007-10-24 2009-05-14 Kddi Corp Key generation device, terminal device, storage server, and computer program
JP2009116454A (en) * 2007-11-02 2009-05-28 Nippon Telegr & Teleph Corp <Ntt> User authentication method, terminal device for access, program, and recording medium

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6625733B1 (en) 2000-01-13 2003-09-23 Yutaka Yasukura Electronic information inquiry method
KR100404246B1 (en) * 2000-08-07 2003-11-03 정인숙 Methode and system for generating non-periodical encryption data stream
JP2002084269A (en) * 2000-09-07 2002-03-22 Hitachi Ltd Recovery method for private key and storage method
JP2005537763A (en) * 2002-09-03 2005-12-08 ベリサイン・インコーポレイテッド Method and system for securely escrowing private keys within public key infrastructure
JP4680596B2 (en) * 2002-09-03 2011-05-11 ベリサイン・インコーポレイテッド Method and system for securely escrowing private keys within public key infrastructure
JP2005295570A (en) * 2004-04-02 2005-10-20 Microsoft Corp Method and system which restore private data protected with password through communication network without exposing private data
JP2009087183A (en) * 2007-10-02 2009-04-23 Nippon Telegr & Teleph Corp <Ntt> Security method for information recording medium, information processing device, program and recording medium
JP2009104575A (en) * 2007-10-02 2009-05-14 Nippon Telegr & Teleph Corp <Ntt> Security method for information recording medium, information processor, program and recording medium
JP2009103968A (en) * 2007-10-24 2009-05-14 Kddi Corp Key generation device, terminal device, storage server, and computer program
JP2009116454A (en) * 2007-11-02 2009-05-28 Nippon Telegr & Teleph Corp <Ntt> User authentication method, terminal device for access, program, and recording medium

Similar Documents

Publication Publication Date Title
US6072876A (en) Method and system for depositing private key used in RSA cryptosystem
US11552792B2 (en) Systems and methods for generating signatures
US6868160B1 (en) System and method for providing secure sharing of electronic data
US5796833A (en) Public key sterilization
US7657037B2 (en) Apparatus and method for identity-based encryption within a conventional public-key infrastructure
US5588061A (en) System and method for identity verification, forming joint signatures and session key agreement in an RSA public cryptosystem
JP4659749B2 (en) Identity-based cryptographic messaging system
US5631961A (en) Device for and method of cryptography that allows third party access
US7634085B1 (en) Identity-based-encryption system with partial attribute matching
US6389136B1 (en) Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys
US20110145576A1 (en) Secure method of data transmission and encryption and decryption system allowing such transmission
JPH03128541A (en) System and method for cipher communication
US20140032909A1 (en) Method and apparatus for public key cryptography
US12010216B2 (en) Computer-implemented system and method for highly secure, high speed encryption and transmission of data
JP2001211154A (en) Secret key generating method, ciphering method, and cipher communication method
CN111656728B (en) Device, system and method for secure data communication
JPH10177341A (en) Method and system for depositing secret key for ras cipher
CN109299618A (en) Anti- quantum calculation cloud storage method and system based on quantum key card
JP2023505629A (en) Method and system for verifiable identity-based encryption (VIBE) using certificateless authentication encryption (CLAE)
KR20030047148A (en) Method of messenger security based on client/server using RSA
JP2001060944A (en) Cipher communication system
JPH11187008A (en) Delivering method for cryptographic key
Jain et al. Email security using encrption and compression
JP3862397B2 (en) Information communication system
Abdelsatir et al. On the Implementation of a Secure Email System with ID-based Encryption