JP2009267900A - Key generating device, certificate generating device, service providing system, key generating method, certificate generating method, service providing method, and program - Google Patents

Key generating device, certificate generating device, service providing system, key generating method, certificate generating method, service providing method, and program Download PDF

Info

Publication number
JP2009267900A
JP2009267900A JP2008116706A JP2008116706A JP2009267900A JP 2009267900 A JP2009267900 A JP 2009267900A JP 2008116706 A JP2008116706 A JP 2008116706A JP 2008116706 A JP2008116706 A JP 2008116706A JP 2009267900 A JP2009267900 A JP 2009267900A
Authority
JP
Japan
Prior art keywords
key
certificate
generated
public key
secret key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008116706A
Other languages
Japanese (ja)
Other versions
JP5324813B2 (en
Inventor
Shinsaku Kiyomoto
晋作 清本
Toshiaki Tanaka
俊昭 田中
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2008116706A priority Critical patent/JP5324813B2/en
Publication of JP2009267900A publication Critical patent/JP2009267900A/en
Application granted granted Critical
Publication of JP5324813B2 publication Critical patent/JP5324813B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To vary a key length to be used in accordance with a security level requested for a service by generating a plurality of public keys corresponding to a plurality of private keys from a single private key of a user and storing the public keys in a certificate. <P>SOLUTION: A master private key, that a user owns, and a key length (L bits) of a key desired to generate are inputted at least, information containing the inputted master private key and key length of the private key desired to generate is processed by a unidirectional function to generate a partial private key of (n) bits and by processing information containing the inputted master private key and key length of the private key desired to generate and the partial private key generated just before by means of a unidirectional function, a plurality (N pieces (N is a positive integer)) of partial private keys are generated. Then, the plurality of generated partial private keys are coupled to generate the private key having the key length (L=nN bits) of the private key desired to generate, and the generated private key is processed by a unidirectional function to generate a public key. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、サービスの提供に用いられる鍵生成装置、証明書生成装置、鍵生成方法、証明書生成方法および生成された鍵と証明書を用いたサービス提供システム、サービス提供方法およびプログラムに関する。   The present invention relates to a key generation device, a certificate generation device, a key generation method, a certificate generation method, and a service provision system using the generated key and certificate, a service provision method, and a program.

近年、コンピュータを利用した様々なサービスが提供されている。多くのサービスでは、利用者を認証するためや、データを秘匿するために様々な暗号方式が使用されている。また、暗号化の一方式である公開鍵暗号については、公開鍵暗号・署名技術の電子署名、暗号化への利用のため、公開鍵の所有者を認証し、公開鍵証明書を発行する認証基盤(PKI)の標準化・実用化が進んでいる。   In recent years, various services using computers have been provided. In many services, various encryption methods are used to authenticate users and conceal data. For public key cryptography, which is a method of encryption, authenticates the owner of a public key and issues a public key certificate for use in digital signature and encryption of public key cryptography and signature technology. The standardization and practical use of the base (PKI) is progressing.

ここで、公開鍵暗号については、鍵生成時において、利用者のバイオメトリクス情報Bを求め、秘密情報Rを求め、バイオメトリクス情報Bと秘密情報Rを用いて公開鍵暗号の秘密鍵SKを生成し、本人性を認証する際に、秘密情報Rと利用者の第1のバイオメトリクス情報Bを用いて生成されたRSA公開鍵方式における秘密鍵SKについて、利用者の第2のバイオメトリクス情報B’を求め、第2のバイオメトリクス情報B’を用いて、秘密鍵SKが、秘密情報Rと第1のバイオメトリクス情報Bから生成されたことを検証することにより、認証局で発行する公開鍵証明書の信頼性を高める技術が知られている(例えば、特許文献1参照。)。
特開2003−323116号公報
Here, for public key cryptography, at the time of key generation, the biometric information B of the user is obtained, the secret information R is obtained, and the secret key SK for the public key cryptography is generated using the biometric information B and the secret information R. Then, when authenticating the identity, the second biometric information B of the user is obtained with respect to the secret key SK in the RSA public key method generated using the secret information R and the first biometric information B of the user. The public key issued by the certificate authority by verifying that the secret key SK is generated from the secret information R and the first biometric information B using the second biometric information B A technique for increasing the reliability of a certificate is known (see, for example, Patent Document 1).
JP 2003-323116 A

しかしながら、一般に安全性と利便性はトレードオフの関係にあり、1つの方式がすべての機器に、適しているとは限らない。特に公開鍵暗号は、鍵長によって大きく処理時間が異なるため、要求条件に合わせて適切な長さの鍵を使用することが望ましいが、既存のPKIにおいては、公開鍵証明書を事前発行しなければならないため、常に、鍵長が固定された公開鍵と秘密鍵のペアを生成して使用していた。   However, in general, safety and convenience are in a trade-off relationship, and one method is not necessarily suitable for all devices. In particular, since public key cryptography has a processing time that varies greatly depending on the key length, it is desirable to use a key of an appropriate length according to the required conditions. However, in existing PKI, a public key certificate must be issued in advance. Therefore, a public / private key pair with a fixed key length was always generated and used.

そこで、本発明は、ユーザの単一の秘密鍵から、複数の秘密鍵と対応する公開鍵を複数生成し、その公開鍵を証明書内に格納することで、サービスの要求するセキュリティレベルに合わせて使用する鍵長を可変にする鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラムを提供することを目的とする。   Therefore, the present invention generates a plurality of public keys corresponding to a plurality of secret keys from a single secret key of the user, and stores the public keys in a certificate so as to match the security level required by the service. An object of the present invention is to provide a key generation device, a certificate generation device, a service provision system, a key generation method, a certificate generation method, a service provision method, and a program that can change the key length to be used.

本発明は、上述の課題を解決するために、以下の事項を提案している。   The present invention proposes the following items in order to solve the above-described problems.

(1)本発明は、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する入力手段と、該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する部分秘密鍵生成手段と、該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する秘密鍵生成手段と、該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する公開鍵生成手段と、を備えたことを特徴とする鍵生成装置を提案している。   (1) According to the present invention, an input means for inputting at least a master secret key owned by a user and a key length (L bits) of a key to be generated, the input master secret key, and a key of the secret key to be generated The information including the length is processed with a one-way function to generate an n-bit partial secret key, and thereafter the information including the input master secret key and the key length of the secret key to be generated, And a partial secret key generating means for generating a plurality of (N: N is a positive integer) partial secret keys by processing the generated partial secret keys with a one-way function, and the generated plurality of partial secrets A secret key generating means for generating a secret key having a key length (L = nN bits) of the secret key to be generated by combining the keys, and generating the public key by processing the generated secret key with a one-way function And a public key generation means for generating the key It has proposed a location.

この発明によれば、入力手段は、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する。部分秘密鍵生成手段は、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する。秘密鍵生成手段は、生成された複数の部分秘密鍵を結合して、生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する。公開鍵生成手段は、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する。したがって、ユーザが、ただ1つのマスター秘密鍵を管理し、通常使用する秘密鍵は、任意の鍵長で、動的に生成することができる。   According to the present invention, the input means inputs at least the master secret key owned by the user and the key length (L bits) of the key to be generated. The partial secret key generation unit generates an n-bit partial secret key by processing the information including the input master secret key and the key length of the secret key to be generated with a one-way function, and thereafter input The information including the master secret key, the key length of the secret key to be generated, and the partial secret key generated immediately before are processed with a one-way function to obtain a plurality of parts (N: N is a positive integer). Generate a secret key. The secret key generation unit combines the plurality of generated partial secret keys to generate a secret key having a key length (L = nN bits) of the secret key desired to be generated. The public key generation means generates a public key by processing the generated secret key with a one-way function. Therefore, the user manages only one master secret key, and the secret key normally used can be dynamically generated with an arbitrary key length.

(2)本発明は、(1)の鍵生成装置について、同一の鍵長の秘密鍵、公開鍵を複数生成する場合に、インデックス番号を前記入力手段に入力することを特徴とする鍵生成装置を提案している。   (2) In the key generation device according to (1), when a plurality of secret keys and public keys having the same key length are generated, an index number is input to the input unit. Has proposed.

この発明によれば、同一の鍵長の秘密鍵、公開鍵を複数生成する場合に、インデックス番号を入力手段に入力することから、仮に部分秘密鍵が第三者に露見しても、マスター秘密鍵のセキュリティを保つことができる。   According to the present invention, when a plurality of secret keys and public keys having the same key length are generated, the index number is input to the input means. Therefore, even if the partial secret key is revealed to a third party, the master secret Key security can be maintained.

(3)本発明は、(1)または(2)の鍵生成装置について、前記一方向性関数がハッシュ関数であることを特徴とする鍵生成装置を提案している。   (3) The present invention proposes a key generation device characterized in that the one-way function is a hash function for the key generation device of (1) or (2).

この発明によれば、一方向性関数がハッシュ関数であることから高速な演算処理を実現することができる。   According to this invention, since the one-way function is a hash function, high-speed arithmetic processing can be realized.

(4)本発明は、(1)または(2)の鍵生成装置について、前記入力手段、部分秘密鍵生成手段、秘密鍵生成手段を耐タンパデバイス内に設けたことを特徴とする鍵生成装置を提案している。   (4) The present invention relates to the key generation device according to (1) or (2), wherein the input unit, the partial secret key generation unit, and the secret key generation unit are provided in a tamper resistant device. Has proposed.

この発明によれば、入力手段、部分秘密鍵生成手段、秘密鍵生成手段を耐タンパデバイス内に設けたことから、マスター秘密鍵を保護しつつ、高速な暗号処理を実現することができる。   According to the present invention, since the input means, the partial secret key generation means, and the secret key generation means are provided in the tamper resistant device, high-speed encryption processing can be realized while protecting the master secret key.

(5)本発明は、(2)から(4)の鍵生成装置が生成した公開鍵を入力する公開鍵入力手段と、該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出するハッシュ値算出手段と、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う署名手段と、公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する格納手段と、を備えたことを特徴とする証明書生成装置を提案している。   (5) The present invention hashes the public key input means for inputting the public key generated by the key generation apparatus of (2) to (4), and the certificate information held by the input public key and the certificate authority server. The hash value obtained by processing the hash value of each public key and the hash value of the certificate information by processing the function, and the hash value obtained by processing the certificate information held by the certificate authority server And a signature means for signing with the private key held by the certificate authority server by combining the calculated hash values of the public keys, and the public key certificate, the certificate information, the respective public keys, A certificate generation device is proposed, which includes a storage means for storing a hash value of the public key and a signature.

この発明によれば、公開鍵入力手段は、前記鍵生成装置が生成した公開鍵を入力する。ハッシュ値算出手段は、入力した公開鍵をハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出する。署名手段は、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値とを結合して、認証局サーバが保有する秘密鍵で署名を行う。格納手段は、公開鍵証明書に、証明書情報、それぞれの公開鍵、公開鍵のハッシュ値、署名を格納する。したがって、公開鍵証明書の署名が、各公開鍵のハッシュ値と、その他の情報のハッシュ値を連結した値に対して計算するため、個々の公開鍵の開示/非開示を制御できる。   According to this invention, the public key input means inputs the public key generated by the key generation device. The hash value calculation means processes the input public key with a hash function to calculate a hash value of each public key and a hash value of the certificate information. The signing means combines the hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key, and uses the secret key held by the certificate authority server. Sign. The storage means stores the certificate information, each public key, the hash value of the public key, and the signature in the public key certificate. Accordingly, since the signature of the public key certificate is calculated with respect to a value obtained by concatenating the hash value of each public key and the hash value of other information, disclosure / non-disclosure of each public key can be controlled.

(6)本発明は、鍵生成装置と証明書生成装置と、サービス提供者が運営するサービス提供サーバとからなるサービス提供システムであって、前記鍵生成装置が、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する入力手段と、該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する部分秘密鍵生成手段と、該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する秘密鍵生成手段と、該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する公開鍵生成手段と、を備え、前記証明書生成装置が、該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出するハッシュ値算出手段と、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う署名手段と、公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する格納手段と、前記公開鍵証明書をユーザに送信する公開鍵証明書送信手段と、を備え、前記サービス提供サーバが、前記ユーザから前記公開鍵証明書を受信する受信手段と、該受信した公開鍵証明書の正当性を検証する検証手段と、前記サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを該選択した公開鍵で暗号化する暗号化手段と、該暗号化したデータと前記選択した公開鍵の情報をユーザに送信するデータ送信手段と、を備え、前記ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、該生成した秘密鍵によりデータを復号化することを特徴とするサービス提供システムを提案している。   (6) The present invention is a service providing system including a key generating device, a certificate generating device, and a service providing server operated by a service provider, wherein the key generating device includes a master secret key owned by a user, The information including at least the input means for inputting the key length (L bits) of the key to be generated, the input master secret key, and the key length of the secret key to be generated is processed by a one-way function, and n A bit partial secret key is generated, and thereafter, the information including the input master secret key, the key length of the secret key to be generated, and the partial secret key generated immediately before are processed with a one-way function. Then, a partial secret key generating means for generating a plurality of partial secret keys (N: N is a positive integer) and the generated plurality of partial secret keys are combined, and the key length of the secret key to be generated ( L = nN bits) private key And a public key generation unit that generates a public key by processing the generated secret key with a one-way function, and the certificate generation device authenticates the input public key and authentication Hash value calculation means for processing the certificate information held by the station server with a hash function to calculate the hash value of each public key and the hash value of the certificate information, and the certificate information held by the certificate authority server A signature means for signing with the private key held by the certificate authority server by combining the hash value obtained by processing the hash value with the hash function and the hash value of each calculated public key, and the public key certificate A storage means for storing the certificate information, each public key, a hash value of the public key, and a signature; and a public key certificate transmission means for transmitting the public key certificate to a user, and providing the service server Receiving means for receiving the public key certificate from the user, verification means for verifying the validity of the received public key certificate, and the service provider selecting a public key in accordance with the security level. Encryption means for encrypting data to be sent to the user with the selected public key, and data transmission means for sending the encrypted data and information on the selected public key to the user. A service providing system is proposed in which a secret key corresponding to a selected public key is generated from a master secret key, and data is decrypted with the generated secret key.

この発明によれば、鍵生成装置の入力手段は、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する。部分秘密鍵生成手段は、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する。秘密鍵生成手段は、生成された複数の部分秘密鍵を結合して、生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する。公開鍵生成手段は、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する。証明書生成装置の公開鍵入力手段は、前記鍵生成装置が生成した公開鍵を入力する。ハッシュ値算出手段は、入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出する。署名手段は、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値とを結合して、認証局サーバが保有する秘密鍵で署名を行う。格納手段は、公開鍵証明書に、証明書情報、それぞれの公開鍵、公開鍵のハッシュ値、署名を格納する。サービス提供サーバの受信手段は、ユーザから公開鍵証明書を受信する。検証手段は、受信した公開鍵証明書の正当性を検証する。暗号化手段は、サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを選択した公開鍵で暗号化する。データ送信手段は、暗号化したデータと選択した公開鍵の情報をユーザに送信する。そして、ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、生成した秘密鍵によりデータを復号化する。したがって、複数の鍵長の異なる公開鍵、秘密鍵を求められるセキュリティレベルに応じて使い分けることで効率的な暗号処理を実現することができる。また、複数の公開鍵・秘密鍵をサービスごとに使い分けることで、安全性を強化したり、署名レベルをコントロールすることができる。   According to this invention, the input means of the key generation device inputs at least the master secret key owned by the user and the key length (L bits) of the key to be generated. The partial secret key generation unit generates an n-bit partial secret key by processing the information including the input master secret key and the key length of the secret key to be generated with a one-way function, and thereafter input The information including the master secret key, the key length of the secret key to be generated, and the partial secret key generated immediately before are processed with a one-way function to obtain a plurality of parts (N: N is a positive integer). Generate a secret key. The secret key generation unit combines the plurality of generated partial secret keys to generate a secret key having a key length (L = nN bits) of the secret key desired to be generated. The public key generation means generates a public key by processing the generated secret key with a one-way function. The public key input means of the certificate generation device inputs the public key generated by the key generation device. The hash value calculation means processes the input public key and the certificate information held by the certificate authority server with a hash function, and calculates the hash value of each public key and the hash value of the certificate information. The signing means combines the hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key, and uses the secret key held by the certificate authority server. Sign. The storage means stores the certificate information, each public key, the hash value of the public key, and the signature in the public key certificate. The receiving means of the service providing server receives a public key certificate from the user. The verification means verifies the validity of the received public key certificate. In the encryption means, the service provider selects a public key in accordance with the security level, and encrypts data to be sent to the user with the selected public key. The data transmission means transmits the encrypted data and the selected public key information to the user. Then, the user generates a secret key corresponding to the selected public key from the master secret key, and decrypts the data with the generated secret key. Therefore, efficient encryption processing can be realized by properly using a plurality of public keys and secret keys having different key lengths according to the required security level. Also, by using a plurality of public / private keys for each service, security can be enhanced and the signature level can be controlled.

(7)本発明は、サービスの提供に用いる鍵を任意の鍵長で生成する鍵生成方法であって、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する第1のステップと、該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する第2のステップと、該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する第3のステップと、該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する第4のステップと、を備えたことを特徴とする鍵生成方法を提案している。   (7) The present invention provides a key generation method for generating a key used for providing a service with an arbitrary key length, and includes at least a master secret key owned by a user and a key length (L bits) of a key to be generated. The information including the input first step, the input master secret key, and the key length of the secret key to be generated is processed with a one-way function to generate an n-bit partial secret key. The input master secret key, information including the key length of the secret key to be generated, and the partial secret key generated immediately before are processed by a one-way function, and a plurality of (N: N is a positive integer) And a second step of generating a secret key having a key length (L = nN bits) of the secret key to be generated by combining the generated plurality of partial secret keys. And the generated secret key is processed with a one-way function. It proposes a key generation method characterized by comprising a fourth step of generating the public key, the Te.

この発明によれば、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力し、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する。そして、生成された複数の部分秘密鍵を結合して、生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成し、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する。したがって、ユーザが、ただ1つのマスター秘密鍵を管理し、通常使用する秘密鍵は、任意の鍵長で、動的に生成することができる。   According to the present invention, at least the master secret key owned by the user and the key length (L bits) of the key to be generated are input, and the information including the input master secret key and the key length of the secret key to be generated Is processed with a one-way function to generate an n-bit partial secret key, and thereafter, the information including the input master secret key, the key length of the secret key to be generated, and the partial secret generated immediately before The keys are processed with a one-way function to generate a plurality (N: N is a positive integer) partial secret keys. Then, a plurality of generated partial secret keys are combined to generate a secret key having a key length (L = nN bits) of the secret key to be generated, and the generated secret key is processed by a one-way function to public key Is generated. Therefore, the user manages only one master secret key, and the secret key normally used can be dynamically generated with an arbitrary key length.

(8)本発明は、(7)により生成された鍵に基づいて、証明書を生成する証明書生成方法であって、(7)により生成された公開鍵を入力する第1のステップと、該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出する第2のステップと、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う第3のステップと、公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する第4のステップと、を備えたことを特徴とする証明書生成方法を提案している。   (8) The present invention is a certificate generation method for generating a certificate based on the key generated in (7), wherein the first step of inputting the public key generated in (7); A second step of processing the input public key and certificate information held by the certificate authority server with a hash function to calculate a hash value of each public key and a hash value of the certificate information; A hash value obtained by processing the certificate information held by the server with a hash function and the calculated hash value of each public key are combined to sign with the private key held by the certificate authority server. And a fourth step of storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate. is suggesting.

この発明によれば、鍵生成装置により生成された公開鍵を入力し、入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出する。認証局サーバは、保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値を結合して、認証局サーバが保有する秘密鍵で署名を行う。そして、公開鍵証明書に、証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する。したがって、公開鍵証明書の署名が、各公開鍵のハッシュ値と、その他の情報のハッシュ値を連結した値に対して計算するため、個々の公開鍵の開示/非開示を制御できる。   According to this invention, the public key generated by the key generation device is input, the input public key and the certificate information held by the certificate authority server are processed by the hash function, and the hash value of each public key and Calculate the hash value of the certificate information. The certificate authority server combines the hash value obtained by processing the certificate information held by the hash function and the calculated hash value of each public key, and performs signature with the secret key held by the certificate authority server. Then, the certificate information, each public key, the hash value of the public key, and the signature are stored in the public key certificate. Accordingly, since the signature of the public key certificate is calculated with respect to a value obtained by concatenating the hash value of each public key and the hash value of other information, disclosure / non-disclosure of each public key can be controlled.

(9)本発明は、鍵生成装置と証明書生成装置と、サービス提供者が運営するサービス提供サーバとからなるサービス提供システムにおけるサービス提供方法であって、前記鍵生成装置が、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する第1のステップと、該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する第2のステップと、該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する第3のステップと、該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する第4のステップと、前記証明書生成装置が、入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出する第5のステップと、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う第6のステップと、公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する第7のステップと、前記公開鍵証明書をユーザに送信する第8のステップと、前記サービス提供サーバが、前記ユーザから前記公開鍵証明書を受信する第9のステップと、該受信した公開鍵証明書の正当性を検証する第10のステップと、前記サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを該選択した公開鍵で暗号化する第11のステップと、該暗号化したデータと前記選択した公開鍵の情報をユーザに送信する第12のステップと、前記ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、該生成した秘密鍵によりデータを復号化する第13のステップと、を備えることを特徴とするサービス提供方法を提案している。   (9) The present invention is a service providing method in a service providing system including a key generating device, a certificate generating device, and a service providing server operated by a service provider, and the key generating device is owned by a user. A first step of inputting at least a master secret key and a key length (L bits) of a key to be generated, and information including the input master secret key and the key length of the secret key to be generated. To generate an n-bit partial secret key, and thereafter, the information including the input master secret key, the key length of the secret key to be generated, and the partial secret key generated immediately before A second step of generating a plurality of partial secret keys (N: N is a positive integer) by processing with a one-way function and the generated plurality of partial secret keys are combined to generate the secret to be generated Key length ( = NN bits), a third step of generating a public key by processing the generated secret key with a one-way function, and the certificate generating apparatus A fifth step of processing the public key and the certificate information held by the certificate authority server with a hash function to calculate the hash value of each public key and the hash value of the certificate information, and the certificate authority server holds A sixth step of combining the hash value obtained by processing the certificate information with a hash function and the calculated hash value of each public key and signing with the secret key held by the certificate authority server; A seventh step of storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate; an eighth step of transmitting the public key certificate to the user; Service delivery A server that receives the public key certificate from the user, a tenth step that verifies the validity of the received public key certificate, and that the service provider matches the security level. An eleventh step of selecting a public key and encrypting data to be sent to the user with the selected public key, and a twelfth step of transmitting the encrypted data and information on the selected public key to the user And a thirteenth step in which the user generates a secret key corresponding to the selected public key from the master secret key and decrypts the data with the generated secret key. Proposes a provision method.

この発明によれば、鍵生成装置が、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力し、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する。そして、生成された複数の部分秘密鍵を結合して、生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成し、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する。一方、証明書生成装置は、入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出し、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値を結合して、認証局サーバが保有する秘密鍵で署名を行う。そして、公開鍵証明書に、証明書情報、それぞれの公開鍵、公開鍵のハッシュ値、署名を格納し、公開鍵証明書をユーザに送信する。サービス提供サーバは、ユーザから前記公開鍵証明書を受信し、受信した公開鍵証明書の正当性を検証する。サービス提供者は、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを選択した公開鍵で暗号化し、暗号化したデータと選択した公開鍵の情報をユーザに送信する、そして、ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、生成した秘密鍵によりデータを復号化する。したがって、複数の鍵長の異なる公開鍵、秘密鍵を求められるセキュリティレベルに応じて使い分けることで効率的な暗号処理を実現することができる。また、複数の公開鍵・秘密鍵をサービスごとに使い分けることで、安全性を強化したり、署名レベルをコントロールすることができる。   According to the present invention, the key generation device inputs at least the master secret key owned by the user and the key length (L bits) of the key to be generated, and the input master secret key and the key of the secret key to be generated The information including the length is processed with a one-way function to generate an n-bit partial secret key, and thereafter the information including the input master secret key and the key length of the secret key to be generated The generated partial secret key is processed by a one-way function to generate a plurality of (N: N is a positive integer) partial secret keys. Then, a plurality of generated partial secret keys are combined to generate a secret key having a key length (L = nN bits) of the secret key to be generated, and the generated secret key is processed by a one-way function to public key Is generated. On the other hand, the certificate generation device processes the input public key and the certificate information held by the certificate authority server with a hash function, calculates the hash value of each public key and the hash value of the certificate information, and performs authentication. The hash value obtained by processing the certificate information held by the station server with the hash function and the calculated hash value of each public key are combined, and the signature is signed with the private key held by the certificate authority server. Then, the certificate information, each public key, the hash value of the public key, and the signature are stored in the public key certificate, and the public key certificate is transmitted to the user. The service providing server receives the public key certificate from the user and verifies the validity of the received public key certificate. The service provider selects a public key in accordance with the security level, encrypts data to be sent to the user with the selected public key, transmits the encrypted data and information on the selected public key to the user, and The user generates a secret key corresponding to the selected public key from the master secret key, and decrypts the data using the generated secret key. Therefore, efficient encryption processing can be realized by properly using a plurality of public keys and secret keys having different key lengths according to the required security level. Also, by using a plurality of public / private keys for each service, security can be enhanced and the signature level can be controlled.

(10)本発明は、サービスの提供に用いる鍵を任意の鍵長で生成する鍵生成方法をコンピュータに実行させるためのプログラムであって、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する第1のステップと、該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する第2のステップと、該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する第3のステップと、該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する第4のステップと、をコンピュータに実行させるためのプログラムを提案している。   (10) The present invention is a program for causing a computer to execute a key generation method for generating a key used for providing a service with an arbitrary key length, the master secret key owned by the user, and the key to be generated A first step of inputting at least a length (L bits), information including the inputted master secret key and the key length of the secret key to be generated by a one-way function, and an n-bit partial secret A key is generated, and thereafter, the input master secret key, information including the key length of the secret key to be generated, and the partial secret key generated immediately before are processed with a one-way function, and a plurality of A second step of generating a partial secret key (N: N is a positive integer) and a plurality of the generated partial secret keys are combined, and the key length of the secret key to be generated (L = nN bits) The third step to generate the private key And flop, proposes a program for executing a fourth step of generating a public key was treated with a one-way function private key thus generated, to the computer.

この発明によれば、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力し、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する。そして、生成された複数の部分秘密鍵を結合して、生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成し、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する。したがって、ユーザが、ただ1つのマスター秘密鍵を管理し、通常使用する秘密鍵は、任意の鍵長で、動的に生成することができる。   According to the present invention, at least the master secret key owned by the user and the key length (L bits) of the key to be generated are input, and the information including the input master secret key and the key length of the secret key to be generated Is processed with a one-way function to generate an n-bit partial secret key, and thereafter, the information including the input master secret key, the key length of the secret key to be generated, and the partial secret generated immediately before The keys are processed with a one-way function to generate a plurality (N: N is a positive integer) partial secret keys. Then, a plurality of generated partial secret keys are combined to generate a secret key having a key length (L = nN bits) of the secret key to be generated, and the generated secret key is processed by a one-way function to public key Is generated. Therefore, the user manages only one master secret key, and the secret key normally used can be dynamically generated with an arbitrary key length.

(11)本発明は、(7)により生成された鍵に基づいて、証明書を生成する証明書生成方法をコンピュータに実行させるためのプログラムであって、(7)により生成された公開鍵を入力する第1のステップと、該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出する第2のステップと、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う第3のステップと、公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する第4のステップと、をコンピュータに実行させるためのプログラムを提案している。   (11) The present invention is a program for causing a computer to execute a certificate generation method for generating a certificate based on the key generated in (7), wherein the public key generated in (7) is The first input step and the input public key and the certificate information held by the certificate authority server are processed by a hash function to calculate a hash value of each public key and a hash value of the certificate information. The certificate authority server holds the hash value obtained by processing the second step, the certificate information held by the certificate authority server with a hash function, and the calculated hash value of each public key. A third step of signing with a private key and a fourth step of storing the certificate information, each public key, the hash value of the public key, and the signature in a public key certificate are implemented in a computer. It has proposed a program for.

この発明によれば、鍵生成装置により生成された公開鍵を入力し、入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出する。認証局サーバは、保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値を結合して、認証局サーバが保有する秘密鍵で署名を行う。そして、公開鍵証明書に、証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する。したがって、公開鍵証明書の署名が、各公開鍵のハッシュ値と、その他の情報のハッシュ値を連結した値に対して計算するため、個々の公開鍵の開示/非開示を制御できる。   According to this invention, the public key generated by the key generation device is input, the input public key and the certificate information held by the certificate authority server are processed by the hash function, and the hash value of each public key and Calculate the hash value of the certificate information. The certificate authority server combines the hash value obtained by processing the certificate information held by the hash function and the calculated hash value of each public key, and performs signature with the secret key held by the certificate authority server. Then, the certificate information, each public key, the hash value of the public key, and the signature are stored in the public key certificate. Accordingly, since the signature of the public key certificate is calculated with respect to a value obtained by concatenating the hash value of each public key and the hash value of other information, disclosure / non-disclosure of each public key can be controlled.

(12)本発明は、鍵生成装置と証明書生成装置と、サービス提供者が運営するサービス提供サーバとからなるサービス提供システムにおけるサービス提供方法をコンピュータに実行させるためのプログラムであって、前記鍵生成装置が、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する第1のステップと、該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する第2のステップと、該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する第3のステップと、該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する第4のステップと、前記証明書生成装置が、該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出する第5のステップと、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う第6のステップと、公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する第7のステップと、前記公開鍵証明書をユーザに送信する第8のステップと、前記サービス提供サーバが、前記ユーザから前記公開鍵証明書を受信する第9のステップと、該受信した公開鍵証明書の正当性を検証する第10のステップと、前記サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを該選択した公開鍵で暗号化する第11のステップと、該暗号化したデータと前記選択した公開鍵の情報をユーザに送信する第12のステップと、前記ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、該生成した秘密鍵によりデータを復号化する第13のステップと、をコンピュータに実行させるためのプログラムを提案している。   (12) The present invention is a program for causing a computer to execute a service providing method in a service providing system including a key generating device, a certificate generating device, and a service providing server operated by a service provider, the key A first step in which the generation device inputs at least a master secret key owned by the user and a key length (L bits) of a key to be generated, the input master secret key, and a key length of the secret key to be generated And an n-bit partial secret key to generate an n-bit partial secret key. Thereafter, information including the input master secret key and the key length of the secret key to be generated, A second step of generating a plurality of (N: N is a positive integer) partial secret keys by processing the generated partial secret keys with a one-way function; and the generated plurality of partial secrets. A third step of combining the keys to generate a secret key having a key length (L = nN bits) of the secret key to be generated, and generating the public key by processing the generated secret key with a one-way function And the certificate generation device processes the input public key and the certificate information held by the certificate authority server with a hash function, and the hash value of each public key and the certificate information The hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key, A sixth step of signing with a private key held by the certificate authority server; a seventh step of storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate; , The public key certificate An eighth step of transmitting to the user; a ninth step of receiving the public key certificate from the user; and a tenth step of verifying the validity of the received public key certificate. An eleventh step in which the service provider selects a public key in accordance with the security level, and encrypts data to be sent to the user with the selected public key; and the encrypted data and the selection A twelfth step of transmitting the public key information to the user, and the user generates a secret key corresponding to the selected public key from the master secret key and decrypts the data using the generated secret key. A program for causing a computer to execute 13 steps is proposed.

この発明によれば、鍵生成装置が、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力し、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する。そして、生成された複数の部分秘密鍵を結合して、生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成し、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する。一方、証明書生成装置は、入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出し、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値を結合して、認証局サーバが保有する秘密鍵で署名を行う。そして、公開鍵証明書に、証明書情報、それぞれの公開鍵、公開鍵のハッシュ値、署名を格納し、公開鍵証明書をユーザに送信する。サービス提供サーバは、ユーザから前記公開鍵証明書を受信し、受信した公開鍵証明書の正当性を検証する。サービス提供者は、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを選択した公開鍵で暗号化し、暗号化したデータと選択した公開鍵の情報をユーザに送信する、そして、ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、生成した秘密鍵によりデータを復号化する。したがって、複数の鍵長の異なる公開鍵、秘密鍵を求められるセキュリティレベルに応じて使い分けることで効率的な暗号処理を実現することができる。また、複数の公開鍵・秘密鍵をサービスごとに使い分けることで、安全性を強化したり、署名レベルをコントロールすることができる。   According to the present invention, the key generation device inputs at least the master secret key owned by the user and the key length (L bits) of the key to be generated, and the input master secret key and the key of the secret key to be generated The information including the length is processed with a one-way function to generate an n-bit partial secret key, and thereafter the information including the input master secret key and the key length of the secret key to be generated The generated partial secret key is processed by a one-way function to generate a plurality of (N: N is a positive integer) partial secret keys. Then, a plurality of generated partial secret keys are combined to generate a secret key having a key length (L = nN bits) of the secret key to be generated, and the generated secret key is processed by a one-way function to public key Is generated. On the other hand, the certificate generation device processes the input public key and the certificate information held by the certificate authority server with a hash function, calculates the hash value of each public key and the hash value of the certificate information, and performs authentication. The hash value obtained by processing the certificate information held by the station server with the hash function and the calculated hash value of each public key are combined, and the signature is signed with the private key held by the certificate authority server. Then, the certificate information, each public key, the hash value of the public key, and the signature are stored in the public key certificate, and the public key certificate is transmitted to the user. The service providing server receives the public key certificate from the user and verifies the validity of the received public key certificate. The service provider selects a public key in accordance with the security level, encrypts data to be sent to the user with the selected public key, transmits the encrypted data and information on the selected public key to the user, and The user generates a secret key corresponding to the selected public key from the master secret key, and decrypts the data using the generated secret key. Therefore, efficient encryption processing can be realized by properly using a plurality of public keys and secret keys having different key lengths according to the required security level. Also, by using a plurality of public / private keys for each service, security can be enhanced and the signature level can be controlled.

本発明によれば、個々のサービスにおいて最適な鍵長で暗号処理ができるようになり、処理時間の短縮による利便性の向上を図れるとともに、適切なセキュリティ対策が可能となるという効果がある。   According to the present invention, it is possible to perform cryptographic processing with an optimum key length in each service, and it is possible to improve convenience by reducing processing time and to take appropriate security measures.

以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
Note that the constituent elements in the present embodiment can be appropriately replaced with existing constituent elements, and various variations including combinations with other existing constituent elements are possible. Therefore, the description of the present embodiment does not limit the contents of the invention described in the claims.

図1から図7を用いて、本発明に係るサービス提供システムについて、詳細に説明する。   The service providing system according to the present invention will be described in detail with reference to FIGS.

<サービス提供システムの構成>
本実施形態に係るサービス提供システムは、図1に示すように、鍵生成装置1と、証明書生成装置2と、認証局サーバ3と、ユーザ端末4と、サービス提供サーバ5と、ネットワーク6とから構成されている。
<Configuration of service provision system>
As shown in FIG. 1, the service providing system according to the present embodiment includes a key generating device 1, a certificate generating device 2, a certificate authority server 3, a user terminal 4, a service providing server 5, and a network 6. It is composed of

鍵生成装置1は、ユーザが管理するマスター秘密鍵から、通常使用する任意の鍵長の秘密鍵を動的に生成する。証明書生成装置2は、鍵生成装置1が生成した複数の公開鍵、それら公開鍵のハッシュ値を格納するとともに、鍵生成装置1が生成した複数の公開鍵認のハッシュ値および認証局サーバ3が保持する証明書情報のハッシュ値を連結して、認証局サーバ3が保持する秘密鍵により行った署名を格納して、証明書を生成する。   The key generation device 1 dynamically generates a secret key having an arbitrary key length that is normally used from a master secret key managed by the user. The certificate generation device 2 stores a plurality of public keys generated by the key generation device 1 and hash values of the public keys, and also a plurality of public key authentication hash values generated by the key generation device 1 and the certificate authority server 3. The hash value of the certificate information held by the certificate authority server 3 is concatenated, the signature made with the private key held by the certificate authority server 3 is stored, and the certificate is generated.

認証局サーバ3は、証明書情報および署名に用いる秘密鍵を保持する。ユーザ端末4は、証明書生成装置2から公開鍵証明書を受信するとともに、受信した公開鍵証明書をサービス提供サーバ5にネットワーク6を介して、送信する。   The certificate authority server 3 holds certificate information and a secret key used for signature. The user terminal 4 receives the public key certificate from the certificate generation device 2 and transmits the received public key certificate to the service providing server 5 via the network 6.

サービス提供サーバ5は、ユーザ端末4から公開鍵証明書を受信し、受信した公開鍵証明書の正当性を検証する。そして、セキュリティレベルに合わせて、公開鍵を選択し、ユーザ端末4に送付するデータを選択した公開鍵で暗号化し、暗号化したデータと選択した公開鍵の情報をユーザに送信する。   The service providing server 5 receives the public key certificate from the user terminal 4 and verifies the validity of the received public key certificate. Then, according to the security level, the public key is selected, the data to be sent to the user terminal 4 is encrypted with the selected public key, and the encrypted data and the information on the selected public key are transmitted to the user.

<鍵生成装置の構成>
図2を用いて、本実施形態に係る鍵生成装置の構成について説明する。
本実施形態に係る鍵生成装置は、図2に示すように、入力部11と、部分秘密鍵生成部12と、秘密鍵生成部13と、公開鍵生成部14とから構成されている。
<Configuration of key generation device>
The configuration of the key generation apparatus according to this embodiment will be described with reference to FIG.
As shown in FIG. 2, the key generation apparatus according to the present embodiment includes an input unit 11, a partial secret key generation unit 12, a secret key generation unit 13, and a public key generation unit 14.

入力部11は、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)、インデックス値とを入力する。部分秘密鍵生成部12は、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長と、インデックス値とをハッシュ関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長と、インデックス値と、直前に生成された部分秘密鍵とをハッシュ関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する。   The input unit 11 inputs a master secret key owned by the user, a key length (L bits) of the key to be generated, and an index value. The partial secret key generation unit 12 processes the input master secret key, the key length of the secret key to be generated, and the index value with a hash function to generate an n-bit partial secret key. A plurality of (N: N is a positive integer) partial secrets by processing the generated master secret key, the key length of the secret key to be generated, the index value, and the partial secret key generated immediately before with a hash function Generate a key.

なお、秘密鍵の動的生成処理が、ハッシュ関数のみで構成されていることから、高速な演算を実現することができる。また、入力部11、部分秘密鍵生成部12、秘密鍵生成部13を耐タンパデバイス内に格納すれば、マスター秘密鍵を保護しつつ、高速な暗号処理を実現することができる。   Since the secret key dynamic generation process is composed of only a hash function, a high-speed calculation can be realized. Further, if the input unit 11, the partial secret key generation unit 12, and the secret key generation unit 13 are stored in the tamper resistant device, high-speed encryption processing can be realized while protecting the master secret key.

秘密鍵生成部13は、部分秘密鍵生成部12において、生成された複数の部分秘密鍵を結合して、生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する。公開鍵生成部14は、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する。なお、生成された公開鍵は、証明書生成装置2に送信される。   The secret key generation unit 13 combines the plurality of partial secret keys generated in the partial secret key generation unit 12 to generate a secret key having a key length (L = nN bits) of the secret key to be generated. The public key generation unit 14 generates a public key by processing the generated secret key with a one-way function. The generated public key is transmitted to the certificate generating device 2.

<証明書生成装置の構成>
図3を用いて、本実施形態に係る証明書生成装置の構成について説明する。
本実施形態に係る証明書生成装置は、図3に示すように、ハッシュ値算出部21a、21b、21cと、署名部22とから構成されている。
<Configuration of certificate generator>
The configuration of the certificate generation device according to the present embodiment will be described with reference to FIG.
As shown in FIG. 3, the certificate generation apparatus according to the present embodiment includes hash value calculation units 21 a, 21 b, 21 c and a signature unit 22.

ハッシュ値算出部21a、21b、21cは、鍵生成装置から入力した公開鍵と、認証局サーバ3が保持する証明書情報をハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出する。なお、ハッシュ値を算出する処理については、認証局サーバ3で実行してもよい。   The hash value calculation units 21a, 21b, and 21c process the public key input from the key generation device and the certificate information held by the certificate authority server 3 using a hash function, and the hash value and certificate information of each public key Calculate the hash value of. The process for calculating the hash value may be executed by the certificate authority server 3.

署名部22は、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値を結合して、認証局サーバが保有する秘密鍵で署名を行う。なお、証明書生成装置は、認証局サーバ3が保有する公開鍵証明書に、証明書情報、それぞれの公開鍵、公開鍵のハッシュ値、署名を格納するために、これらの情報を送信する。   The signature unit 22 combines the hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key, and uses the secret key held by the certificate authority server. Sign. Note that the certificate generation apparatus transmits these pieces of information in order to store the certificate information, each public key, the hash value of the public key, and the signature in the public key certificate held by the certificate authority server 3.

<サービス提供サーバの構成>
図4を用いて、本実施形態に係るサービス提供サーバの構成について説明する。
本実施形態に係るサービス提供サーバは、図4に示すように、受信部31と、検証部32と、暗号化部33と、送信部34とから構成されている。
<Configuration of service providing server>
The configuration of the service providing server according to the present embodiment will be described with reference to FIG.
As shown in FIG. 4, the service providing server according to the present embodiment includes a receiving unit 31, a verification unit 32, an encryption unit 33, and a transmission unit 34.

受信部31は、ユーザ端末4から公開鍵証明書を受信する。検証部32は、受信した公開鍵証明書の正当性を検証する。暗号化部33は、サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを選択した公開鍵で暗号化する。送信部34は、暗号化したデータと選択した公開鍵の情報をユーザに送信する。   The receiving unit 31 receives a public key certificate from the user terminal 4. The verification unit 32 verifies the validity of the received public key certificate. The encryption unit 33 selects a public key according to the security level by the service provider, and encrypts data to be sent to the user with the selected public key. The transmission unit 34 transmits the encrypted data and the selected public key information to the user.

<鍵生成装置の処理>
図5を用いて、本実施形態に係る鍵生成装置の処理について説明する。
まず、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力し(ステップS101)、入力したマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する(ステップS102)。
<Processing of key generation device>
The process of the key generation device according to this embodiment will be described with reference to FIG.
First, at least a master secret key owned by the user and a key length (L bits) of a key to be generated are input (step S101), and information including the input master secret key and the key length of the secret key to be generated is input. On the other hand, an n-bit partial secret key is generated by processing with a propensity function, and thereafter, information including the input master secret key, the key length of the secret key to be generated, and the partial secret key generated immediately before Are processed by a one-way function to generate a plurality of (N: N is a positive integer) partial secret keys (step S102).

生成された複数の部分秘密鍵を結合して、生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成し(ステップS103)、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する(ステップS104)。   A plurality of generated partial secret keys are combined to generate a secret key having a key length (L = nN bits) of the secret key to be generated (step S103), and the generated secret key is processed with a one-way function. A public key is generated (step S104).

したがって、ユーザが、ただ1つのマスター秘密鍵を管理し、通常使用する秘密鍵は、任意の鍵長で、動的に生成することができる。   Therefore, the user manages only one master secret key, and the secret key normally used can be dynamically generated with an arbitrary key length.

<証明書生成装置の処理>
図6を用いて、本実施形態に係る証明書生成装置の処理について説明する。
まず、鍵生成装置により生成された公開鍵を入力し(ステップS201)、入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出する(ステップS202)。
<Processing of certificate generation device>
The process of the certificate generation apparatus according to this embodiment will be described with reference to FIG.
First, the public key generated by the key generation device is input (step S201), the input public key and the certificate information held by the certificate authority server are processed by a hash function, and the hash value of each public key and A hash value of the certificate information is calculated (step S202).

認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値を結合して、認証局サーバが保有する秘密鍵で署名を行い(ステップS203)、公開鍵証明書に、証明書情報、それぞれの公開鍵、公開鍵のハッシュ値、署名を格納する(ステップS204)。   Combine the hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key, and sign with the private key held by the certificate authority server (step In step S203, the certificate information, each public key, the hash value of the public key, and the signature are stored in the public key certificate (step S204).

したがって、公開鍵証明書の署名が、各公開鍵のハッシュ値と、その他の情報のハッシュ値を連結した値に対して計算するため、個々の公開鍵の開示/非開示を制御できる。   Accordingly, since the signature of the public key certificate is calculated with respect to a value obtained by concatenating the hash value of each public key and the hash value of other information, disclosure / non-disclosure of each public key can be controlled.

<サービス提供システムの処理>
図7を用いて、本実施形態に係るサービス提供システムの処理について説明する。
まず、鍵生成装置は、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力し(ステップS301)、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する(ステップS302)。
<Processing of service providing system>
The process of the service providing system according to the present embodiment will be described using FIG.
First, the key generation device inputs at least the master secret key owned by the user and the key length (L bits) of the key to be generated (step S301), and the input master secret key and the key of the secret key to be generated The information including the length is processed with a one-way function to generate an n-bit partial secret key, and thereafter the information including the input master secret key and the key length of the secret key to be generated The generated partial secret key is processed with a one-way function to generate a plurality (N: N is a positive integer) partial secret keys (step S302).

そして、生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する(ステップS303)。そして、生成した秘密鍵を一方向性関数で処理して公開鍵を生成する(ステップS304)。   Then, a plurality of generated partial secret keys are combined to generate a secret key having the key length (L = nN bits) of the secret key to be generated (step S303). Then, the generated secret key is processed with a one-way function to generate a public key (step S304).

証明書生成装置は、入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および証明書情報のハッシュ値を算出し(ステップS305)、認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、算出したそれぞれの公開鍵のハッシュ値を結合して、認証局サーバが保有する秘密鍵で署名を行う(ステップS306)。そして、公開鍵証明書に、証明書情報、それぞれの公開鍵、公開鍵のハッシュ値、署名を格納し(ステップS307)、公開鍵証明書をユーザに送信する(ステップS308)。   The certificate generation device processes the input public key and the certificate information held by the certificate authority server with a hash function, and calculates the hash value of each public key and the hash value of the certificate information (step S305). Then, the hash value obtained by processing the certificate information held by the certificate authority server with the hash function and the calculated hash value of each public key are combined and signed with the private key held by the certificate authority server ( Step S306). Then, the certificate information, each public key, the hash value of the public key, and the signature are stored in the public key certificate (step S307), and the public key certificate is transmitted to the user (step S308).

サービス提供サーバは、ユーザから公開鍵証明書を受信し(ステップS309)、受信した公開鍵証明書の正当性を検証する(ステップS310)。そして、サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを選択した公開鍵で暗号化し(ステップS311)、暗号化したデータと選択した公開鍵の情報をユーザに送信する(ステップS312)。   The service providing server receives the public key certificate from the user (step S309), and verifies the validity of the received public key certificate (step S310). Then, the service provider selects a public key in accordance with the security level, encrypts data to be sent to the user with the selected public key (step S311), and stores the encrypted data and the information on the selected public key. (Step S312).

ユーザは、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、生成した秘密鍵によりデータを復号化する(ステップS313)。   The user generates a secret key corresponding to the selected public key from the master secret key, and decrypts the data using the generated secret key (step S313).

したがって、複数の鍵長の異なる公開鍵、秘密鍵を求められるセキュリティレベルに応じて使い分けることで効率的な暗号処理を実現することができる。また、複数の公開鍵・秘密鍵をサービスごとに使い分けることで、安全性を強化したり、署名レベルをコントロールすることができる。   Therefore, efficient encryption processing can be realized by properly using a plurality of public keys and secret keys having different key lengths according to the required security level. Also, by using a plurality of public / private keys for each service, security can be enhanced and the signature level can be controlled.

なお、鍵生成装置、証明書生成装置およびサービス提供システムの処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを鍵生成装置、証明書生成装置およびサービス提供システムに読み込ませ、実行することによって本発明の鍵生成装置、証明書生成装置およびサービス提供システムを実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。   The processing of the key generation device, certificate generation device, and service providing system is recorded on a computer-readable recording medium, and the program recorded on this recording medium is read into the key generation device, certificate generation device, and service providing system. The key generation device, certificate generation device, and service providing system of the present invention can be realized by executing. The computer system here includes an OS and hardware such as peripheral devices.

また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。   Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW (World Wide Web) system is used. The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.

また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。   The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.

以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。   The embodiments of the present invention have been described in detail with reference to the drawings. However, the specific configuration is not limited to the embodiments, and includes designs and the like that do not depart from the gist of the present invention.

本実施形態に係るサービス提供システムの構成図である。It is a block diagram of the service provision system which concerns on this embodiment. 本実施形態に係る鍵生成装置の構成図である。It is a block diagram of the key generation apparatus which concerns on this embodiment. 本実施形態に係る証明書生成装置の構成図である。It is a block diagram of the certificate generation apparatus which concerns on this embodiment. 本実施形態に係るサービス提供サーバの構成図である。It is a block diagram of the service provision server which concerns on this embodiment. 本実施形態に係る鍵生成装置の処理フローである。It is a processing flow of the key generation apparatus which concerns on this embodiment. 本実施形態に係る証明書生成装置の処理フローである。It is a processing flow of the certificate generation apparatus which concerns on this embodiment. 本実施形態に係るサービス提供サーバの処理フローである。It is a processing flow of the service provision server which concerns on this embodiment.

符号の説明Explanation of symbols

1・・・鍵生成装置
2・・・証明書生成装置
3・・・認証局サーバ
4・・・ユーザ端末
5・・・サービス提供サーバ
6・・・ネットワーク
11・・・入力部
12・・・部分秘密鍵生成部
13・・・秘密鍵生成部
14・・・公開鍵生成部
21a、21b、21c・・・ハッシュ値算出部
22・・・署名部
31・・・受信部
32・・・検証部
33・・・暗号化部
34・・・送信部
DESCRIPTION OF SYMBOLS 1 ... Key generation apparatus 2 ... Certificate generation apparatus 3 ... Certificate authority server 4 ... User terminal 5 ... Service provision server 6 ... Network 11 ... Input part 12 ... Partial secret key generation unit 13 ... Secret key generation unit 14 ... Public key generation unit 21a, 21b, 21c ... Hash value calculation unit 22 ... Signature unit 31 ... Reception unit 32 ... Verification Unit 33 ... encryption unit 34 ... transmission unit

Claims (12)

ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する入力手段と、
該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する部分秘密鍵生成手段と、
該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する秘密鍵生成手段と、
該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する公開鍵生成手段と、
を備えたことを特徴とする鍵生成装置。
An input means for inputting at least the master secret key owned by the user and the key length (L bits) of the key to be generated;
The information including the input master secret key and the key length of the secret key to be generated is processed by a one-way function to generate an n-bit partial secret key. Thereafter, the input master secret key and Then, a plurality of (N: N is a positive integer) partial secret keys are generated by processing the information including the key length of the secret key to be generated and the partial secret key generated immediately before with a one-way function. A partial secret key generation means;
A secret key generating means for combining the plurality of generated partial secret keys and generating a secret key having a key length (L = nN bits) of the secret key to be generated;
Public key generating means for processing the generated secret key with a one-way function to generate a public key;
A key generation device comprising:
同一の鍵長の秘密鍵、公開鍵を複数生成する場合に、インデックス番号を前記入力手段に入力することを特徴とする請求項1に記載の鍵生成装置。   The key generation apparatus according to claim 1, wherein when a plurality of secret keys and public keys having the same key length are generated, an index number is input to the input means. 前記一方向性関数がハッシュ関数であることを特徴とする請求項1または請求項2に記載の鍵生成装置。   The key generation apparatus according to claim 1, wherein the one-way function is a hash function. 前記入力手段、部分秘密鍵生成手段、秘密鍵生成手段を耐タンパデバイス内に設けたことを特徴とする請求項1または請求項2に記載の鍵生成装置。   The key generation apparatus according to claim 1, wherein the input unit, the partial secret key generation unit, and the secret key generation unit are provided in a tamper resistant device. 前記請求項1から請求項4に記載の鍵生成装置が生成した公開鍵を入力する公開鍵入力手段と、
該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出するハッシュ値算出手段と、
認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う署名手段と、
公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する格納手段と、
を備えたことを特徴とする証明書生成装置。
Public key input means for inputting a public key generated by the key generation device according to claim 1;
Hash value calculation means for processing the input public key and certificate information held by the certificate authority server with a hash function, and calculating a hash value of each public key and a hash value of the certificate information;
The hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key are combined, and the signature is signed with the private key held by the certificate authority server. Signing means;
Storage means for storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate;
A certificate generation device comprising:
鍵生成装置と証明書生成装置と、サービス提供者が運営するサービス提供サーバとからなるサービス提供システムであって、
前記鍵生成装置が、
ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する入力手段と、
該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する部分秘密鍵生成手段と、
該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する秘密鍵生成手段と、
該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する公開鍵生成手段と、
を備え、
前記証明書生成装置が、
該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出するハッシュ値算出手段と、
認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う署名手段と、
公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する格納手段と、
前記公開鍵証明書をユーザに送信する公開鍵証明書送信手段と、
を備え、
前記サービス提供サーバが、
前記ユーザから前記公開鍵証明書を受信する受信手段と、
該受信した公開鍵証明書の正当性を検証する検証手段と、
前記サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを該選択した公開鍵で暗号化する暗号化手段と、
該暗号化したデータと前記選択した公開鍵の情報をユーザに送信するデータ送信手段と、
を備え、
前記ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、該生成した秘密鍵によりデータを復号化することを特徴とするサービス提供システム。
A service providing system comprising a key generating device, a certificate generating device, and a service providing server operated by a service provider,
The key generation device is
An input means for inputting at least the master secret key owned by the user and the key length (L bits) of the key to be generated;
The information including the input master secret key and the key length of the secret key to be generated is processed by a one-way function to generate an n-bit partial secret key. Thereafter, the input master secret key and Then, a plurality of (N: N is a positive integer) partial secret keys are generated by processing the information including the key length of the secret key to be generated and the partial secret key generated immediately before with a one-way function. A partial secret key generation means;
A secret key generating means for combining the plurality of generated partial secret keys and generating a secret key having a key length (L = nN bits) of the secret key to be generated;
Public key generating means for processing the generated secret key with a one-way function to generate a public key;
With
The certificate generating device is
Hash value calculation means for processing the input public key and certificate information held by the certificate authority server with a hash function, and calculating a hash value of each public key and a hash value of the certificate information;
The hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key are combined, and the signature is signed with the private key held by the certificate authority server. Signing means;
Storage means for storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate;
Public key certificate transmission means for transmitting the public key certificate to the user;
With
The service providing server is
Receiving means for receiving the public key certificate from the user;
Verification means for verifying the validity of the received public key certificate;
The service provider selects a public key in accordance with the security level, and encrypts data to be sent to the user with the selected public key;
Data transmitting means for transmitting the encrypted data and the information of the selected public key to a user;
With
The service providing system, wherein the user generates a secret key corresponding to the selected public key from the master secret key, and decrypts the data using the generated secret key.
サービスの提供に用いる鍵を任意の鍵長で生成する鍵生成方法であって、
ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する第1のステップと、
該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する第2のステップと、
該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する第3のステップと、
該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する第4のステップと、
を備えたことを特徴とする鍵生成方法。
A key generation method for generating a key used for providing a service with an arbitrary key length,
A first step of inputting at least a master secret key owned by a user and a key length (L bits) of a key to be generated;
The information including the input master secret key and the key length of the secret key to be generated is processed by a one-way function to generate an n-bit partial secret key. Thereafter, the input master secret key and Then, a plurality of (N: N is a positive integer) partial secret keys are generated by processing the information including the key length of the secret key to be generated and the partial secret key generated immediately before with a one-way function. A second step;
A third step of generating a secret key having a key length (L = nN bits) of the secret key to be generated by combining the plurality of generated partial secret keys;
A fourth step of processing the generated secret key with a one-way function to generate a public key;
A key generation method comprising:
前記請求項7により生成された鍵に基づいて、証明書を生成する証明書生成方法であって、
前記請求項7により生成された公開鍵を入力する第1のステップと、
該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出する第2のステップと、
認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う第3のステップと、
公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する第4のステップと、
を備えたことを特徴とする証明書生成方法。
A certificate generation method for generating a certificate based on the key generated by the claim 7,
A first step of inputting a public key generated according to claim 7;
A second step of processing the input public key and certificate information held by the certificate authority server with a hash function to calculate a hash value of each public key and a hash value of the certificate information;
The hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key are combined, and the signature is signed with the private key held by the certificate authority server. A third step;
A fourth step of storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate;
A certificate generation method characterized by comprising:
鍵生成装置と証明書生成装置と、サービス提供者が運営するサービス提供サーバとからなるサービス提供システムにおけるサービス提供方法であって、
前記鍵生成装置が、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する第1のステップと、
該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する第2のステップと、
該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する第3のステップと、
該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する第4のステップと、
前記証明書生成装置が、該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出する第5のステップと、
認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う第6のステップと、
公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する第7のステップと、
前記公開鍵証明書をユーザに送信する第8のステップと、
前記サービス提供サーバが、前記ユーザから前記公開鍵証明書を受信する第9のステップと、
該受信した公開鍵証明書の正当性を検証する第10のステップと、
前記サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを該選択した公開鍵で暗号化する第11のステップと、
該暗号化したデータと前記選択した公開鍵の情報をユーザに送信する第12のステップと、
前記ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、該生成した秘密鍵によりデータを復号化する第13のステップと、
を備えることを特徴とするサービス提供方法。
A service providing method in a service providing system comprising a key generating device, a certificate generating device, and a service providing server operated by a service provider,
A first step in which the key generation device inputs at least a master secret key owned by a user and a key length (L bits) of a key to be generated;
The information including the input master secret key and the key length of the secret key to be generated is processed by a one-way function to generate an n-bit partial secret key. Thereafter, the input master secret key and Then, a plurality of (N: N is a positive integer) partial secret keys are generated by processing the information including the key length of the secret key to be generated and the partial secret key generated immediately before with a one-way function. A second step;
A third step of generating a secret key having a key length (L = nN bits) of the secret key to be generated by combining the plurality of generated partial secret keys;
A fourth step of processing the generated secret key with a one-way function to generate a public key;
The certificate generation device processes the input public key and the certificate information held by the certificate authority server with a hash function, and calculates a hash value of each public key and a hash value of the certificate information. 5 steps,
The hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key are combined, and the signature is signed with the private key held by the certificate authority server. A sixth step;
A seventh step of storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate;
An eighth step of transmitting the public key certificate to the user;
A ninth step in which the service providing server receives the public key certificate from the user;
A tenth step of verifying the validity of the received public key certificate;
An eleventh step in which the service provider selects a public key in accordance with a security level and encrypts data to be sent to a user with the selected public key;
A twelfth step of transmitting the encrypted data and the information of the selected public key to a user;
A thirteenth step in which the user generates a secret key corresponding to the selected public key from the master secret key, and decrypts the data with the generated secret key;
A service providing method comprising the steps of:
サービスの提供に用いる鍵を任意の鍵長で生成する鍵生成方法をコンピュータに実行させるためのプログラムであって、
ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する第1のステップと、
該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する第2のステップと、
該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する第3のステップと、
該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する第4のステップと、
をコンピュータに実行させるためのプログラム。
A program for causing a computer to execute a key generation method for generating a key used for providing a service with an arbitrary key length,
A first step of inputting at least a master secret key owned by a user and a key length (L bits) of a key to be generated;
The information including the input master secret key and the key length of the secret key to be generated is processed by a one-way function to generate an n-bit partial secret key. Thereafter, the input master secret key and Then, a plurality of (N: N is a positive integer) partial secret keys are generated by processing the information including the key length of the secret key to be generated and the partial secret key generated immediately before with a one-way function. A second step;
A third step of generating a secret key having a key length (L = nN bits) of the secret key to be generated by combining the plurality of generated partial secret keys;
A fourth step of processing the generated secret key with a one-way function to generate a public key;
A program that causes a computer to execute.
前記請求項7により生成された鍵に基づいて、証明書を生成する証明書生成方法をコンピュータに実行させるためのプログラムであって、
前記請求項7により生成された公開鍵を入力する第1のステップと、
該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出する第2のステップと、
認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う第3のステップと、
公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する第4のステップと、
をコンピュータに実行させるためのプログラム。
A program for causing a computer to execute a certificate generation method for generating a certificate based on the key generated according to claim 7,
A first step of inputting a public key generated according to claim 7;
A second step of processing the input public key and certificate information held by the certificate authority server with a hash function to calculate a hash value of each public key and a hash value of the certificate information;
The hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key are combined, and the signature is signed with the private key held by the certificate authority server. A third step;
A fourth step of storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate;
A program that causes a computer to execute.
鍵生成装置と証明書生成装置と、サービス提供者が運営するサービス提供サーバとからなるサービス提供システムにおけるサービス提供方法をコンピュータに実行させるためのプログラムであって、
前記鍵生成装置が、ユーザが所有するマスター秘密鍵と、生成したい鍵の鍵長(Lビット)とを少なくとも入力する第1のステップと、
該入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報を一方性向関数で処理して、nビットの部分秘密鍵を生成するとともに、以降、前記入力されたマスター秘密鍵と、生成したい秘密鍵の鍵長とを含む情報と、直前に生成された部分秘密鍵とを一方向性関数で処理して、複数(N:Nは正の整数)の部分秘密鍵を生成する第2のステップと、
該生成された複数の部分秘密鍵を結合して、前記生成したい秘密鍵の鍵長(L=nNビット)の秘密鍵を生成する第3のステップと、
該生成した秘密鍵を一方向性関数で処理して公開鍵を生成する第4のステップと、
前記証明書生成装置が、該入力した公開鍵と認証局サーバが保持する証明書情報とをハッシュ関数で処理して、それぞれの公開鍵のハッシュ値および前記証明書情報のハッシュ値を算出する第5のステップと、
認証局サーバが保有する証明書情報をハッシュ関数で処理して得たハッシュ値と、該算出したそれぞれの公開鍵のハッシュ値を結合して、前記認証局サーバが保有する秘密鍵で署名を行う第6のステップと、
公開鍵証明書に、前記証明書情報、それぞれの公開鍵、該公開鍵のハッシュ値、署名を格納する第7のステップと、
前記公開鍵証明書をユーザに送信する第8のステップと、
前記サービス提供サーバが、前記ユーザから前記公開鍵証明書を受信する第9のステップと、
該受信した公開鍵証明書の正当性を検証する第10のステップと、
前記サービス提供者が、セキュリティレベルに合わせて、公開鍵を選択し、ユーザに送付するデータを該選択した公開鍵で暗号化する第11のステップと、
該暗号化したデータと前記選択した公開鍵の情報をユーザに送信する第12のステップと、
前記ユーザが、選択された公開鍵に対応する秘密鍵をマスター秘密鍵から生成し、該生成した秘密鍵によりデータを復号化する第13のステップと、
をコンピュータに実行させるためのプログラム。
A program for causing a computer to execute a service providing method in a service providing system including a key generating device, a certificate generating device, and a service providing server operated by a service provider,
A first step in which the key generation device inputs at least a master secret key owned by a user and a key length (L bits) of a key to be generated;
The information including the input master secret key and the key length of the secret key to be generated is processed by a one-way function to generate an n-bit partial secret key. Thereafter, the input master secret key and Then, a plurality of (N: N is a positive integer) partial secret keys are generated by processing the information including the key length of the secret key to be generated and the partial secret key generated immediately before with a one-way function. A second step;
A third step of generating a secret key having a key length (L = nN bits) of the secret key to be generated by combining the plurality of generated partial secret keys;
A fourth step of processing the generated secret key with a one-way function to generate a public key;
The certificate generation device processes the input public key and the certificate information held by the certificate authority server with a hash function, and calculates a hash value of each public key and a hash value of the certificate information. 5 steps,
The hash value obtained by processing the certificate information held by the certificate authority server with a hash function and the calculated hash value of each public key are combined, and the signature is signed with the private key held by the certificate authority server. A sixth step;
A seventh step of storing the certificate information, each public key, a hash value of the public key, and a signature in a public key certificate;
An eighth step of transmitting the public key certificate to the user;
A ninth step in which the service providing server receives the public key certificate from the user;
A tenth step of verifying the validity of the received public key certificate;
An eleventh step in which the service provider selects a public key in accordance with a security level and encrypts data to be sent to a user with the selected public key;
A twelfth step of transmitting the encrypted data and the information of the selected public key to a user;
A thirteenth step in which the user generates a secret key corresponding to the selected public key from the master secret key, and decrypts the data with the generated secret key;
A program that causes a computer to execute.
JP2008116706A 2008-04-28 2008-04-28 Key generation apparatus, certificate generation apparatus, service provision system, key generation method, certificate generation method, service provision method, and program Expired - Fee Related JP5324813B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008116706A JP5324813B2 (en) 2008-04-28 2008-04-28 Key generation apparatus, certificate generation apparatus, service provision system, key generation method, certificate generation method, service provision method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008116706A JP5324813B2 (en) 2008-04-28 2008-04-28 Key generation apparatus, certificate generation apparatus, service provision system, key generation method, certificate generation method, service provision method, and program

Publications (2)

Publication Number Publication Date
JP2009267900A true JP2009267900A (en) 2009-11-12
JP5324813B2 JP5324813B2 (en) 2013-10-23

Family

ID=41393160

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008116706A Expired - Fee Related JP5324813B2 (en) 2008-04-28 2008-04-28 Key generation apparatus, certificate generation apparatus, service provision system, key generation method, certificate generation method, service provision method, and program

Country Status (1)

Country Link
JP (1) JP5324813B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013515301A (en) * 2009-12-21 2013-05-02 中国移▲動▼通信集▲団▼公司 Method, system and smart card for realizing general-purpose card system
CN106571912A (en) * 2016-10-31 2017-04-19 全球能源互联网研究院 Two-side authentication method for power system
US10044683B2 (en) 2013-07-19 2018-08-07 Sony Corporation Content transmission and reception device compatible to switch to a new encryption scheme
JP2018174508A (en) * 2017-03-31 2018-11-08 セコム株式会社 Communication system and terminal device
WO2020044666A1 (en) * 2018-08-28 2020-03-05 パナソニックIpマネジメント株式会社 Certificate generation method, certificate generation device, and computer program
CN112311534A (en) * 2019-08-01 2021-02-02 张英辉 Method for generating asymmetric algorithm key pair
US11240588B2 (en) 2016-03-29 2022-02-01 Sony Corporation Sound reproducing apparatus

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004159063A (en) * 2002-11-06 2004-06-03 Mitsubishi Electric Corp Encryption communication system and encryption communication apparatus
JP2006222505A (en) * 2005-02-08 2006-08-24 Kddi R & D Laboratories Inc Device, method and program for assisting design of public key certificate authentication base
JP2007049708A (en) * 2005-08-05 2007-02-22 Sap Ag System and method for updating keys used for public key cryptography
JP2008131057A (en) * 2006-11-16 2008-06-05 Kddi R & D Laboratories Inc Device and method for generating encryption protocol, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004159063A (en) * 2002-11-06 2004-06-03 Mitsubishi Electric Corp Encryption communication system and encryption communication apparatus
JP2006222505A (en) * 2005-02-08 2006-08-24 Kddi R & D Laboratories Inc Device, method and program for assisting design of public key certificate authentication base
JP2007049708A (en) * 2005-08-05 2007-02-22 Sap Ag System and method for updating keys used for public key cryptography
JP2008131057A (en) * 2006-11-16 2008-06-05 Kddi R & D Laboratories Inc Device and method for generating encryption protocol, and program

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNJ200710045155; 清本 晋作 他: 'セキュリティプロトコル自動生成手法の検討' 第69回(平成19年)全国大会講演論文集(3) ネットワーク セキュリティ , 20070306, p.3-323〜3-324, 社団法人情報処理学会 *
JPN6013020366; 清本 晋作 他: 'セキュリティプロトコル自動生成手法の検討' 第69回(平成19年)全国大会講演論文集(3) ネットワーク セキュリティ , 20070306, p.3-323〜3-324, 社団法人情報処理学会 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013515301A (en) * 2009-12-21 2013-05-02 中国移▲動▼通信集▲団▼公司 Method, system and smart card for realizing general-purpose card system
KR101509043B1 (en) 2009-12-21 2015-04-06 차이나 모바일 커뮤니케이션즈 코포레이션 Implementing method, system of universal card system and smart card
US10044683B2 (en) 2013-07-19 2018-08-07 Sony Corporation Content transmission and reception device compatible to switch to a new encryption scheme
US11240588B2 (en) 2016-03-29 2022-02-01 Sony Corporation Sound reproducing apparatus
CN106571912A (en) * 2016-10-31 2017-04-19 全球能源互联网研究院 Two-side authentication method for power system
CN106571912B (en) * 2016-10-31 2019-10-01 全球能源互联网研究院有限公司 A kind of two side's authentication methods towards electric system
JP2018174508A (en) * 2017-03-31 2018-11-08 セコム株式会社 Communication system and terminal device
WO2020044666A1 (en) * 2018-08-28 2020-03-05 パナソニックIpマネジメント株式会社 Certificate generation method, certificate generation device, and computer program
JPWO2020044666A1 (en) * 2018-08-28 2021-08-10 パナソニックIpマネジメント株式会社 Certificate generation method, certificate generator and computer program
JP7054796B2 (en) 2018-08-28 2022-04-15 パナソニックIpマネジメント株式会社 Certificate generation method, certificate generator and computer program
CN112311534A (en) * 2019-08-01 2021-02-02 张英辉 Method for generating asymmetric algorithm key pair

Also Published As

Publication number Publication date
JP5324813B2 (en) 2013-10-23

Similar Documents

Publication Publication Date Title
US10142107B2 (en) Token binding using trust module protected keys
US20130028419A1 (en) System and a method for use in a symmetric key cryptographic communications
WO2018025991A1 (en) Communication system, communication client, communication server, communication method, and program
KR20180114182A (en) Secure personal devices using elliptic curve cryptography for secret sharing
US20240143796A1 (en) Protecting data from brute force attack
US20110145576A1 (en) Secure method of data transmission and encryption and decryption system allowing such transmission
US10250576B2 (en) Communication of messages over networks
KR20080004165A (en) Method for device authentication using broadcast encryption
JP5324813B2 (en) Key generation apparatus, certificate generation apparatus, service provision system, key generation method, certificate generation method, service provision method, and program
CN108199847B (en) Digital security processing method, computer device, and storage medium
CN104901935A (en) Bilateral authentication and data interaction security protection method based on CPK (Combined Public Key Cryptosystem)
JP6627043B2 (en) SSL communication system, client, server, SSL communication method, computer program
US20120290833A1 (en) Certificate Blobs for Single Sign On
CN112784284B (en) Encryption processing system, encryption processing method, and recording medium
CN104200154A (en) Identity based installation package signing method and identity based installation package signing device
JP2013115522A (en) Link access control method, program, and system
JP6468567B2 (en) Key exchange method, key exchange system
Kaur et al. Security in cloud computing using hybrid of algorithms
KR20100114321A (en) Digital content transaction-breakdown the method thereof
JP2011091517A (en) Signcryption system and signcryption generation method
US8484471B2 (en) Multi-party distributed multiplication device, multi-party distributed multiplication system and method
JP2007267153A (en) Terminal apparatus, certificate issue apparatus, certificate issue system, certificate acquisition method, and certificate issue method
JP2008506293A (en) How to provide digital authentication functionality
CN116318784A (en) Identity authentication method, identity authentication device, computer equipment and storage medium
KR101793528B1 (en) Certificateless public key encryption system and receiving terminal

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130430

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130613

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130719

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees