[go: up one dir, main page]

JP2003318891A - Signature verification apparatus and method, computer program and recording medium storing the program, certificate authority and public key certificate issuing method - Google Patents

Signature verification apparatus and method, computer program and recording medium storing the program, certificate authority and public key certificate issuing method

Info

Publication number
JP2003318891A
JP2003318891A JP2002126887A JP2002126887A JP2003318891A JP 2003318891 A JP2003318891 A JP 2003318891A JP 2002126887 A JP2002126887 A JP 2002126887A JP 2002126887 A JP2002126887 A JP 2002126887A JP 2003318891 A JP2003318891 A JP 2003318891A
Authority
JP
Japan
Prior art keywords
signature
verification program
signature verification
verification
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002126887A
Other languages
Japanese (ja)
Inventor
Yoshito Oshima
嘉人 大嶋
Hironori Takeuchi
宏典 竹内
Yoshiaki Nakajima
良彰 中嶋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2002126887A priority Critical patent/JP2003318891A/en
Publication of JP2003318891A publication Critical patent/JP2003318891A/en
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 署名検証装置での署名検証プログラムの前準
備を不要としつつ、さまざまな署名方式による署名の検
証を可能とする署名検証装置を提供する。 【解決手段】 証明書内情報取得手段12が、公開鍵証
明書から検証プログラム保持サーバアドレスと公開鍵と
を取得する。検証プログラム取得手段13が、検証プロ
グラム保持サーバアドレスにより特定される検証プログ
ラム保持サーバに接続して、署名アルゴリズム識別子を
送信し、この署名アルゴリズム識別子に対応する署名検
証プログラムを取得する。署名検証実行手段14が署名
対象データと署名データと公開鍵とに対して署名検証プ
ログラムに記載の署名生成手順を適用して検証を行う。
(57) [Summary] [PROBLEMS] To provide a signature verification device which can perform signature verification by various signature methods without requiring preparation of a signature verification program in the signature verification device. SOLUTION: In-certificate information acquiring means 12 acquires a verification program holding server address and a public key from a public key certificate. The verification program obtaining means 13 connects to the verification program storage server specified by the verification program storage server address, transmits the signature algorithm identifier, and obtains the signature verification program corresponding to the signature algorithm identifier. The signature verification executing means 14 verifies the signature target data, the signature data, and the public key by applying a signature generation procedure described in the signature verification program.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、電子データの完全
性や送信者の確認のために、認証局が発行する公開鍵証
明書を用いて、電子データに付与されたディジタル署名
を検証する署名検証装置、その方法、その方法を実行さ
せるコンピュータプログラム及びそのプログラムを記録
した記録媒体、ならびに認証局及び公開鍵証明書発行方
法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention uses a public key certificate issued by a certificate authority to verify the integrity of electronic data and the sender, and a signature for verifying a digital signature attached to electronic data. The present invention relates to a verification device, a method therefor, a computer program for executing the method, a recording medium recording the program, a certificate authority, and a public key certificate issuing method.

【0002】[0002]

【従来の技術】電子的文書や通信相手の認証等を行うた
めに、認証対象の電子的文書や、認証対象の通信相手が
送信してきた電子データとこの電子データに対して生成
されたディジタル署名とに対し認証局が発行する公開鍵
証明書を用いて署名検証を行う方法が広く用いられてい
る。
2. Description of the Related Art In order to authenticate an electronic document or a communication partner, an electronic document to be authenticated, electronic data transmitted by a communication partner to be authenticated, and a digital signature generated for this electronic data There is widely used a method of verifying a signature by using a public key certificate issued by a certificate authority.

【0003】ディジタル署名の生成と検証は、メッセー
ジダイジェストを生成する手順と公開鍵暗号に基づく暗
号化ならびに復号化の組み合わせによって行われる。メ
ッセージダイジェストは入力されたデータを一定の長さ
のデータに変換する方法であり、その手順としては一方
向性関数であるSHA−1やMD5等が広く用いられて
いる。また、公開鍵暗号に基づく暗号化、復号化手順を
決定する鍵アルゴリズムについては、NTTによるES
IGNや米国RSA社のRSA等が知られている。
The generation and verification of a digital signature is performed by a combination of a procedure for generating a message digest and encryption / decryption based on public key cryptography. The message digest is a method of converting input data into data of a fixed length, and as its procedure, one-way function SHA-1, MD5 and the like are widely used. For the key algorithm that determines the encryption / decryption procedure based on public key cryptography, refer to
IGN, RSA of USA RSA, etc. are known.

【0004】ディジタル署名の生成は通常、署名対象デ
ータからこの署名対象データのメッセージダイジェスト
を生成し、これに対して、所有者が秘密裏に保持してい
る秘密鍵により暗号処理を行うことで行われる。このメ
ッセージダイジェストを秘密鍵で暗号化した結果が署名
対象データの署名すなわち署名データである。
The generation of a digital signature is usually performed by generating a message digest of the data to be signed from the data to be signed, and performing a cryptographic process on the message digest with a secret key secretly held by the owner. Be seen. The result of encrypting this message digest with the private key is the signature of the signature target data, that is, the signature data.

【0005】ディジタル署名の検証は通常、署名データ
を公開鍵によって復号化した結果得られたデータが、こ
の署名対象データから生成したメッセージダイジェスト
と一致するか否かを判定することにより行われる。公開
鍵が署名データの生成に用いられた秘密鍵と対をなす公
開鍵である場合にのみ署名検証は成功する。
The verification of the digital signature is usually performed by determining whether or not the data obtained as a result of decrypting the signature data with the public key matches the message digest generated from this signature target data. The signature verification succeeds only if the public key is the public key paired with the private key used to generate the signature data.

【0006】すなわち、署名検証が成功した場合、署名
データは公開鍵と対をなす秘密鍵と署名対象データとに
よって生成されたことが確認される。
That is, when the signature verification is successful, it is confirmed that the signature data is generated by the private key paired with the public key and the signature target data.

【0007】また公開鍵証明書は、信頼される第三者機
関としての認証局が、秘密鍵の所有者の識別情報と、こ
の秘密鍵と対をなす公開鍵とを含むデータに対して、こ
の認証局が秘密裏に保持する秘密鍵によって署名データ
を生成して該データに付与したものであり、この公開鍵
と秘密鍵の所有者の対応関係を証明するものである。認
証局が発行した公開鍵証明書により、この公開鍵証明書
に含まれる公開鍵と対をなす秘密鍵の所有者を特定する
ことが可能である。
[0007] In the public key certificate, a certificate authority as a trusted third party, with respect to the data including the identification information of the owner of the private key and the public key paired with this private key, This certificate authority generates signature data with a secret key that is secretly held and adds it to the data, and certifies the correspondence between the public key and the owner of the secret key. With the public key certificate issued by the certificate authority, it is possible to identify the owner of the private key paired with the public key included in this public key certificate.

【0008】公開鍵証明書から取得した公開鍵を用い
て、電子的文書や、通信相手が送信してきた電子データ
に付与されている署名データを検証することによって、
この署名データの生成者がこの公開鍵証明書に記載の識
別情報によって特定される者であることが確認でき、こ
れにより、電子的文書の作成者や通信相手を認証するこ
とができる。
By using the public key obtained from the public key certificate to verify the signature data attached to the electronic document or the electronic data transmitted by the communication partner,
It can be confirmed that the creator of this signature data is the person specified by the identification information described in this public key certificate, and thus the creator of the electronic document and the communication partner can be authenticated.

【0009】上記手順において、認証局が発行する公開
鍵証明書を用いて、電子データに付与されたディジタル
署名の検証を行う際、通常は、検証対象の署名対象デー
タとこの署名対象データに対する署名データとこの署名
データの生成に用いられた署名アルゴリズムを識別する
署名アルゴリズム識別子と、この署名データの生成者の
公開鍵証明書とを入手し、公開鍵証明書から公開鍵を取
得し、署名対象データと署名データと公開鍵とに対し
て、署名アルゴリズム識別子によって識別される署名ア
ルゴリズムに対応する署名検証手順を適用して、署名デ
ータが公開鍵に対応する秘密鍵と署名対象データとに対
して、署名アルゴリズム識別子によって識別される署名
アルゴリズムに対応する署名生成手順を適用して生成さ
れたデータであることを検証するという処理を行い、こ
の署名検証が成功した場合には署名対象データの署名デ
ータは有効であると判定し、失敗した場合には署名対象
データの署名データは無効であると判定する。
In the above procedure, when verifying the digital signature attached to the electronic data using the public key certificate issued by the certificate authority, usually the signature target data to be verified and the signature on the signature target data are verified. Obtain the signature algorithm identifier that identifies the data and the signature algorithm used to generate this signature data, and the public key certificate of the creator of this signature data, obtain the public key from the public key certificate, and sign The signature verification procedure corresponding to the signature algorithm identified by the signature algorithm identifier is applied to the data, the signature data, and the public key, and the private key and the signature target data in which the signature data corresponds to the public key are applied. , The data generated by applying the signature generation procedure corresponding to the signature algorithm identified by the signature algorithm identifier. Performs a process of verifying the signature data of the data to be signed if the signature verification is successful is determined to be valid, the signature data of the signature target data in case of failure is determined to be invalid.

【0010】上記署名検証を実施するにあたり、従来の
技術では、検証を実施する装置に署名アルゴリズムに対
応する署名検証手順を実行する署名検証プログラムを予
め1ないしは複数用意しておき、署名データの検証を行
う場合には、署名に用いられた署名アルゴリズムに対応
する署名検証プログラムが、予め用意された署名検証プ
ログラムの中に存在するかを確認し、存在すればそれを
用いて署名の検証を実施し、存在しなければ署名検証処
理を異常終了し、署名データの有効性は判定不可能とい
う結果を返す。
In carrying out the above-mentioned signature verification, in the prior art, one or more signature verification programs for executing the signature verification procedure corresponding to the signature algorithm are prepared in advance in the apparatus for carrying out the verification, and the signature data is verified. When performing the above, check whether the signature verification program corresponding to the signature algorithm used for the signature exists in the prepared signature verification program, and if there is, verify the signature using it. If it does not exist, the signature verification process is abnormally terminated, and the result that the validity of the signature data cannot be determined is returned.

【0011】[0011]

【発明が解決しようとする課題】しかしながら、上記従
来技術では、検証を実施する装置に各署名アルゴリズム
に対応する署名検証手順を実行する署名検証プログラム
を予め複数用意しておく必要があったため、検証を行う
装置によって、検証可能な署名アルゴリズムが異なり装
置間の相互運用性が損なわれるという問題があった。
However, in the above-mentioned conventional technique, it is necessary to prepare in advance a plurality of signature verification programs for executing the signature verification procedure corresponding to each signature algorithm in the apparatus for performing the verification. There is a problem in that the verifiable signature algorithm differs depending on the device that performs the method, and interoperability between the devices is impaired.

【0012】また、予め装置に登録されている非常に限
られた署名アルゴリズムに頼ることによるリスク、すな
わち、それらアルゴリズムの脆弱性が明らかになったと
きの新たな署名アルゴリズムへの対応が困難であるとい
う問題点を抱えていた。
Further, it is difficult to deal with the risk of relying on a very limited signature algorithm registered in advance in the device, that is, to cope with a new signature algorithm when vulnerabilities of those algorithms become clear. I had a problem.

【0013】そこで本発明は、上記従来の課題に鑑みて
なされたものであり、その目的とするところは、署名検
証装置での署名検証プログラムの前準備を不要としつ
つ、さまざまな署名方式による署名の検証を可能とする
署名検証装置、その方法、コンピュータプログラム及び
そのプログラムを記録した記録媒体、ならびに認証局及
び公開鍵証明書発行方法を提供することにある。
Therefore, the present invention has been made in view of the above conventional problems, and an object of the present invention is to perform signatures by various signature methods without requiring preparation of a signature verification program in a signature verification device. The present invention provides a signature verification device, a method thereof, a computer program and a recording medium recording the program, a certificate authority, and a public key certificate issuing method capable of verifying.

【0014】[0014]

【課題を解決するための手段】上記課題を解決するため
に、請求項1の本発明は、公開鍵と該公開鍵の鍵アルゴ
リズムに対応する署名アルゴリズムに対応する署名検証
手順の記載されたプログラムである署名検証プログラム
を保持する検証プログラム保持サーバのアドレスである
検証プログラム保持サーバアドレスとを含む公開鍵証明
書が認証局から発行され、前記検証プログラム保持サー
バに1ないしは複数個の署名検証プログラムが該署名検
証プログラムに記載された署名検証手順に対応する署名
アルゴリズム識別子とともに格納されているときに、検
証対象の署名データとともに入力された公開鍵証明書か
ら検証プログラム保持サーバアドレスと公開鍵とを取得
する証明書内情報取得手段と、この取得された検証プロ
グラム保持サーバアドレスによって特定される検証プロ
グラム保持サーバに接続し、前記署名データとともに入
力された署名アルゴリズム識別子によって特定される署
名アルゴリズムに対応する署名検証手順の記載された署
名検証プログラムを取得する署名検証プログラム取得手
段と、この取得された署名検証プログラムに記載の署名
検証手順を、前記署名データとともに入力された署名対
象データと当該署名データと前記取得された公開鍵とに
適用して、当該署名データが前記署名アルゴリズム識別
子によって特定される署名アルゴリズムに対応する署名
生成手順を当該公開鍵と対をなす秘密鍵と当該署名対象
データとに適用して生成されたデータであることを検証
する署名検証実行手段とを備えることを特徴とする署名
検証装置をもって解決手段とする。
In order to solve the above problems, the present invention according to claim 1 provides a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A public key certificate including a verification program holding server address that is the address of a verification program holding server that holds the signature verification program is issued by the certificate authority, and one or more signature verification programs are issued to the verification program holding server. When stored together with the signature algorithm identifier corresponding to the signature verification procedure described in the signature verification program, the verification program holding server address and the public key are acquired from the public key certificate input together with the signature data to be verified. Means for obtaining information in a certificate and the obtained verification program holding server Signature verification program acquisition means for connecting to the verification program holding server specified by the address and acquiring the signature verification program in which the signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier input together with the signature data is described. And applying the signature verification procedure described in the acquired signature verification program to the signature target data input together with the signature data, the signature data, and the acquired public key, and the signature data is the signature. Signature verification execution means for verifying that the data is generated by applying the signature generation procedure corresponding to the signature algorithm specified by the algorithm identifier to the private key paired with the public key and the signature target data. A signature verifying device characterized by being provided is a solution means.

【0015】請求項1の本発明によれば、検証対象の署
名データとともに入力された公開鍵証明書から検証プロ
グラム保持サーバアドレスと公開鍵とを取得する証明書
内情報取得手段と、この取得された検証プログラム保持
サーバアドレスによって特定される検証プログラム保持
サーバに接続し、前記署名データとともに入力された署
名アルゴリズム識別子によって特定される署名アルゴリ
ズムに対応する署名検証手順の記載された署名検証プロ
グラムを取得する署名検証プログラム取得手段と、この
取得された署名検証プログラムに記載の署名検証手順
を、前記署名データとともに入力された署名対象データ
と当該署名データと前記取得された公開鍵とに適用し
て、当該署名データが前記署名アルゴリズム識別子によ
って特定される署名アルゴリズムに対応する署名生成手
順を当該公開鍵と対をなす秘密鍵と当該署名対象データ
とに適用して生成されたデータであることを検証する署
名検証実行手段とを備えるので、署名検証プログラムを
必要時に取得して署名検証を行うことができるようにな
り、その結果、署名検証装置での署名検証プログラムの
前準備を不要としつつ、さまざまな署名方式による署名
の検証を可能とすることができる。
According to the present invention of claim 1, the in-certificate information acquiring means for acquiring the verification program holding server address and the public key from the public key certificate input together with the signature data to be verified, and the acquired information. Connected to the verification program holding server specified by the verification program holding server address, and acquires the signature verification program in which the signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier input together with the signature data is described. By applying the signature verification program acquisition means and the signature verification procedure described in the acquired signature verification program to the signature target data input together with the signature data, the signature data, and the acquired public key, Signature data whose signature data is specified by the signature algorithm identifier Since a signature verification execution means for verifying that the data is generated by applying the signature generation procedure corresponding to the gorism to the private key paired with the public key and the signature target data, the signature verification program is executed. It will be possible to obtain the signature when necessary and verify the signature. As a result, it is possible to verify the signature by various signature methods without requiring the preparation of the signature verification program in the signature verification device. .

【0016】また、請求項2の本発明は、署名検証プロ
グラムに対応する署名検証プログラム認証情報の検証に
用いられる署名検証プログラム検証情報の記憶される署
名検証プログラム検証情報記憶手段を備え、前記署名検
証プログラム取得手段は、検証プログラム保持サーバか
ら署名検証プログラムに対応する署名検証プログラム認
証情報を取得し、該署名検証プログラム認証情報と前記
署名検証プログラム認証情報記憶手段に記憶された署名
検証プログラム検証情報とを用いて署名検証プログラム
を認証することを特徴とする請求項1記載の署名検証装
置をもって解決手段とする。
The present invention according to claim 2 further comprises a signature verification program verification information storage means for storing the signature verification program verification information used for verifying the signature verification program authentication information corresponding to the signature verification program, and the signature verification program verification information storage means. The verification program acquisition means acquires signature verification program authentication information corresponding to the signature verification program from the verification program holding server, and the signature verification program authentication information and the signature verification program verification information stored in the signature verification program authentication information storage means. The signature verification apparatus according to claim 1, wherein the signature verification program is authenticated using and.

【0017】請求項2の本発明によれば、署名検証プロ
グラムに対応する署名検証プログラム認証情報の検証に
用いられる署名検証プログラム検証情報の記憶される署
名検証プログラム検証情報記憶手段を備え、署名検証プ
ログラム取得手段は、検証プログラム保持サーバから署
名検証プログラムに対応する署名検証プログラム認証情
報を検証プログラム保持サーバから取得し、該署名検証
プログラム認証情報と署名検証プログラム認証情報記憶
手段に記憶された署名検証プログラム検証情報とを用い
て署名検証プログラムを認証するようにしたので、上記
効果に加えて、好ましくない署名検証プログラム、つま
り誤った署名検証プログラムや、サーバとの通信途上で
不正に入れ替えられた悪意ある署名検証プログラムによ
って署名が検証されてしまう不都合を防止して、より安
全に署名検証できるようになる。
According to the present invention of claim 2, there is provided signature verification program verification information storage means for storing the signature verification program verification information used for verifying the signature verification program authentication information corresponding to the signature verification program. The program acquisition means acquires from the verification program holding server signature verification program authentication information corresponding to the signature verification program from the verification program holding server, and the signature verification program authentication information and the signature verification program stored in the signature verification program authentication information storage means. Since the signature verification program is authenticated by using the program verification information, in addition to the above effect, an undesired signature verification program, that is, an incorrect signature verification program or malicious maliciously replaced during communication with the server The signature is verified by a signature verification program. The and cause inconvenience to prevent, will be able to more safely signature verification.

【0018】また、請求項3の本発明は、検証プログラ
ム保持サーバから取得されるサーバ認証情報の認証に用
いられるサーバ検証情報の記憶されるサーバ検証情報記
憶手段を備え、検証プログラム保持サーバからサーバ認
証情報を取得し、該サーバ認証情報と前記サーバ検証情
報記憶手段に記憶されたサーバ検証情報とを用いて当該
検証プログラム保持サーバを認証することを特徴とする
請求項1または2記載の署名検証装置をもって解決手段
とする。
According to the present invention of claim 3, there is provided a server verification information storage means for storing server verification information used for authenticating the server authentication information acquired from the verification program holding server, and the verification program holding server stores the server verification information. 3. The signature verification according to claim 1, wherein the verification information is acquired, and the verification program holding server is authenticated using the server verification information and the server verification information stored in the server verification information storage means. The device is the solution.

【0019】請求項3の本発明によれば、検証プログラ
ム保持サーバから取得されるサーバ認証情報の認証に用
いられるサーバ検証情報の記憶されるサーバ検証情報記
憶手段を備え、検証プログラム保持サーバからサーバ認
証情報を取得し、該サーバ認証情報とサーバ検証情報記
憶手段に記憶されたサーバ検証情報とを用いて当該検証
プログラム保持サーバを認証するので、上記効果に加え
て、好ましくない検証プログラム保持サーバ、例えば、
なりすまされたサーバ等の保持する署名検証プログラム
によって署名が検証されてしまう不都合を防止して、よ
り安全に署名検証できるようになる。
According to the third aspect of the present invention, there is provided server verification information storage means for storing server verification information used for authenticating the server authentication information acquired from the verification program holding server, and the verification program holding server operates as a server. Since the verification program holding server is authenticated by obtaining the authentication information and using the server verification information and the server verification information stored in the server verification information storage means, in addition to the above effects, an undesirable verification program holding server, For example,
It is possible to prevent the inconvenience that the signature is verified by the signature verification program held by the spoofed server or the like, and perform the signature verification more safely.

【0020】また、請求項4の本発明は、署名検証プロ
グラムと該署名検証プログラムに記載された署名検証手
順に対応する署名アルゴリズム識別子との組である署名
検証プログラム情報が記憶される署名検証プログラム情
報記憶手段を備え、前記署名検証実行手段は、前記入力
された署名アルゴリズム識別子を含む署名検証プログラ
ム情報が前記署名検証プログラム情報記憶手段に記憶さ
れているか否かを判定し、記憶されていると判定した場
合には当該署名検証プログラム情報から署名検証プログ
ラムを取得し、該取得した署名検証プログラムで署名デ
ータを検証することを特徴とする請求項1ないし3のい
ずれかに記載の署名検証装置をもって解決手段とする。
Further, the present invention according to claim 4 is a signature verification program in which signature verification program information, which is a set of a signature verification program and a signature algorithm identifier corresponding to the signature verification procedure described in the signature verification program, is stored. An information storage unit is provided, and the signature verification execution unit determines whether or not the signature verification program information including the input signature algorithm identifier is stored in the signature verification program information storage unit, and stores it. The signature verification apparatus according to claim 1, wherein when the determination is made, a signature verification program is acquired from the signature verification program information, and the signature data is verified by the acquired signature verification program. Use it as a solution.

【0021】請求項4の本発明によれば、署名検証プロ
グラムと該署名検証プログラムに記載された署名検証手
順に対応する署名アルゴリズム識別子との組である署名
検証プログラム情報が記憶される署名検証プログラム情
報記憶手段を備え、署名検証実行手段は、入力された署
名アルゴリズム識別子を含む署名検証プログラム情報が
署名検証プログラム情報記憶手段に記憶されているか否
かを判定し、記憶されていると判定した場合には当該署
名検証プログラム情報から署名検証プログラムを取得
し、該取得した署名検証プログラムで署名データを検証
するので、上記効果に加えて、検証プログラム保持サー
バから署名検証プログラムを取得できない場合であって
も署名を検証することができる。また、検証プログラム
保持サーバとの通信回数や通信量を削減することが可能
となる。
According to the present invention of claim 4, a signature verification program storing signature verification program information which is a set of a signature verification program and a signature algorithm identifier corresponding to a signature verification procedure described in the signature verification program. When the signature verification execution means is provided with information storage means, determines whether the signature verification program information including the input signature algorithm identifier is stored in the signature verification program information storage means, and determines that it is stored. Since the signature verification program is acquired from the signature verification program information and the signature data is verified by the acquired signature verification program, in addition to the above effect, there is a case where the signature verification program cannot be acquired from the verification program holding server. Can also verify the signature. Further, it is possible to reduce the number of times of communication with the verification program holding server and the amount of communication.

【0022】また、請求項5の本発明は、署名検証プロ
グラムと該署名検証プログラムに記載された署名検証手
順に対応する署名アルゴリズム識別子との組である署名
検証プログラム情報が記憶される署名検証プログラム情
報記憶手段と、検証プログラム保持サーバから取得され
た署名検証プログラムと該署名検証プログラムに対応す
る署名アルゴリズム識別子との組を署名検証プログラム
情報として前記署名検証プログラム情報記憶手段に記憶
させる署名検証プログラム情報登録手段とを備えること
を特徴とする請求項1ないし4のいずれかに記載の署名
検証装置をもって解決手段とする。
Further, the present invention according to claim 5 is a signature verification program in which signature verification program information, which is a set of a signature verification program and a signature algorithm identifier corresponding to a signature verification procedure described in the signature verification program, is stored. Signature verification program information for storing, in the signature verification program information storage means, a set of an information storage means, a signature verification program acquired from a verification program holding server, and a signature algorithm identifier corresponding to the signature verification program. A signature verifying device according to any one of claims 1 to 4 is a solution means.

【0023】請求項5の本発明によれば、署名検証プロ
グラムと該署名検証プログラムに記載された署名検証手
順に対応する署名アルゴリズム識別子との組である署名
検証プログラム情報が記憶される署名検証プログラム情
報記憶手段と、検証プログラム保持サーバから取得され
た署名検証プログラムと該署名検証プログラムに対応す
る署名アルゴリズム識別子との組を署名検証プログラム
情報として署名検証プログラム情報記憶手段に記憶させ
る署名検証プログラム情報登録手段とを備えるので、過
去に検証プログラム保持サーバから取得した署名検証プ
ログラムを再度取得する必要が無くなる。
According to the present invention of claim 5, a signature verification program in which signature verification program information, which is a set of a signature verification program and a signature algorithm identifier corresponding to the signature verification procedure described in the signature verification program, is stored. Signature verification program information registration for storing a combination of an information storage means, a signature verification program acquired from a verification program holding server, and a signature algorithm identifier corresponding to the signature verification program as signature verification program information in the signature verification program information storage means Since it is provided with the means, it is not necessary to reacquire the signature verification program acquired from the verification program holding server in the past.

【0024】また、請求項6の本発明は、署名検証プロ
グラムは該署名検証プログラムの作成日時を含むもので
あり、署名検証プログラムと該署名検証プログラムに記
載された署名検証手順に対応する署名アルゴリズム識別
子との組である署名検証プログラム情報の記憶される署
名検証プログラム情報記憶手段を備え、前記署名検証実
行手段は、前記入力された署名アルゴリズム識別子を含
む署名検証プログラム情報を前記署名検証プログラム情
報記憶手段から取得し、当該署名検証プログラム情報の
署名検証プログラムに含まれる作成日時と検証プログラ
ム保持サーバから取得された署名検証プログラムに含ま
れる作成日時の新しい方の作成日時を含む署名検証プロ
グラムで署名データを検証することを特徴とする請求項
1ないし5のいずれかに記載の署名検証装置をもって解
決手段とする。
According to the sixth aspect of the present invention, the signature verification program includes the creation date and time of the signature verification program, and the signature algorithm corresponding to the signature verification program and the signature verification procedure described in the signature verification program. The signature verification program information storage unit stores signature verification program information that is a set with an identifier, and the signature verification execution unit stores the signature verification program information including the input signature algorithm identifier. The signature verification program includes the creation date and time included in the signature verification program of the signature verification program information and the newer creation date and time included in the signature verification program acquired from the verification program holding server. 6. The method according to any one of claims 1 to 5, characterized in that And solutions with a signature verifying apparatus crab according.

【0025】請求項6の本発明によれば、署名検証プロ
グラムと該署名検証プログラムに記載された署名検証手
順に対応する署名アルゴリズム識別子との組である署名
検証プログラム情報の記憶される署名検証プログラム情
報記憶手段を備え、署名検証実行手段は、入力された署
名アルゴリズム識別子を含む署名検証プログラム情報を
署名検証プログラム情報記憶手段から取得し、当該署名
検証プログラム情報の署名検証プログラムに含まれる作
成日時と検証プログラム保持サーバから取得された署名
検証プログラムに含まれる作成日時の新しい方の作成日
時を含む署名検証プログラムで署名データを検証するの
で、新しい署名検証プログラムで署名検証することがで
きる。従って、性能などの面で改善された署名検証プロ
グラムで署名検証することができる。
According to the present invention of claim 6, a signature verification program in which signature verification program information, which is a set of a signature verification program and a signature algorithm identifier corresponding to the signature verification procedure described in the signature verification program, is stored. The signature verification execution means includes the information storage means, acquires the signature verification program information including the input signature algorithm identifier from the signature verification program information storage means, and generates the creation date and time included in the signature verification program of the signature verification program information. Since the signature data is verified by the signature verification program including the latest creation date and time included in the signature verification program acquired from the verification program holding server, the signature verification can be performed by the new signature verification program. Therefore, the signature can be verified by the signature verification program improved in terms of performance.

【0026】また、請求項7の本発明は、前記署名検証
実行手段による署名データの検証が成功したときは署名
データは有効であると出力し、一方で、署名データの検
証が失敗したときは署名データは無効であると出力する
検証結果出力手段を備えることを特徴とする請求項1な
いし6のいずれかに記載の署名検証装置をもって解決手
段とする。
The present invention of claim 7 outputs that the signature data is valid when the verification of the signature data by the signature verification executing means is successful, and outputs the signature data when the verification of the signature data fails. The signature verification apparatus according to any one of claims 1 to 6, further comprising a verification result output means for outputting that the signature data is invalid.

【0027】請求項7の本発明によれば、署名検証実行
手段による署名データの検証が成功したときは署名デー
タは有効であると出力し、一方で、署名データの検証が
失敗したときは署名データは無効であると出力する検証
結果出力手段を備えるので、利用者が署名の検証結果を
認識できる。
According to the present invention of claim 7, when the verification of the signature data by the signature verification executing means is successful, the signature data is output as valid, while when the verification of the signature data fails, the signature data is signed. Since the verification result output means for outputting that the data is invalid is provided, the user can recognize the verification result of the signature.

【0028】また、請求項8の本発明は、署名データと
署名対象データと署名アルゴリズム識別子と公開鍵証明
書を入力する検証対象入力手段を備えることを特徴とす
る請求項1ないし7のいずれかに記載の署名検証装置を
もって解決手段とする。
The present invention according to claim 8 further comprises verification target input means for inputting signature data, signature target data, signature algorithm identifier, and public key certificate. The signature verification device described in (3) is used as a solution.

【0029】請求項8の本発明によれば、検証対象入力
手段により入力された署名データと署名対象データと署
名アルゴリズム識別子と公開鍵証明書で署名の検証を行
うことができる。
According to the present invention of claim 8, the signature can be verified by the signature data, the signature target data, the signature algorithm identifier, and the public key certificate input by the verification target input means.

【0030】請求項9の本発明は、公開鍵と該公開鍵の
鍵アルゴリズムに対応する署名アルゴリズムに対応する
署名検証手順の記載されたプログラムである署名検証プ
ログラムを保持する検証プログラム保持サーバのアドレ
スである検証プログラム保持サーバアドレスとを含む公
開鍵証明書が認証局から発行され、前記検証プログラム
保持サーバに1ないしは複数個の署名検証プログラムが
該署名検証プログラムに記載された署名検証手順に対応
する署名アルゴリズム識別子とともに格納されていると
きに、検証対象の署名データとともに入力された公開鍵
証明書から検証プログラム保持サーバアドレスと公開鍵
とを取得する証明書内情報取得ステップと、この取得さ
れた検証プログラム保持サーバアドレスによって特定さ
れる検証プログラム保持サーバに接続し、前記署名デー
タとともに入力された署名アルゴリズム識別子によって
特定される署名アルゴリズムに対応する署名検証手順の
記載された署名検証プログラムを取得する署名検証プロ
グラム取得ステップと、この取得された署名検証プログ
ラムに記載の署名検証手順を、前記署名データとともに
入力された署名対象データと当該署名データと前記取得
された公開鍵とに適用して、当該署名データが前記署名
アルゴリズム識別子によって特定される署名アルゴリズ
ムに対応する署名生成手順を当該公開鍵と対をなす秘密
鍵と当該署名対象データとに適用して生成されたデータ
であることを検証する署名検証実行ステップとを備える
ことを特徴とする署名検証方法をもって解決手段とす
る。
According to the present invention of claim 9, the address of a verification program holding server holding a signature verification program which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A public key certificate including a verification program holding server address is issued from a certificate authority, and one or a plurality of signature verification programs corresponds to the signature verification procedure described in the signature verification program. An in-certificate information acquisition step of acquiring the verification program holding server address and the public key from the public key certificate input together with the signature data to be verified when stored with the signature algorithm identifier, and the acquired verification Verification program specified by program holding server address A signature verification program acquisition step of connecting to a holding server and acquiring a signature verification program in which a signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier input together with the signature data is acquired, and the acquired signature. The signature verification procedure described in the verification program is applied to the signature target data input together with the signature data, the signature data, and the acquired public key, and the signature data is identified by the signature algorithm identifier. A signature characterized by comprising a signature generation procedure corresponding to an algorithm and a signature verification execution step for verifying that the data is generated by applying a secret key paired with the public key and the signature target data. The verification method is the solution.

【0031】請求項9の本発明によれば、検証対象の署
名データとともに入力された公開鍵証明書から検証プロ
グラム保持サーバアドレスと公開鍵とを取得する証明書
内情報取得ステップと、この取得された検証プログラム
保持サーバアドレスによって特定される検証プログラム
保持サーバに接続し、署名データとともに入力された署
名アルゴリズム識別子によって特定される署名アルゴリ
ズムに対応する署名検証手順の記載された署名検証プロ
グラムを取得する署名検証プログラム取得ステップと、
この取得された署名検証プログラムに記載の署名検証手
順を、署名データとともに入力された署名対象データと
当該署名データと取得された公開鍵とに適用して、当該
署名データが署名アルゴリズム識別子によって特定され
る署名アルゴリズムに対応する署名生成手順を当該公開
鍵と対をなす秘密鍵と当該署名対象データとに適用して
生成されたデータであることを検証する署名検証実行ス
テップとを備えるので、署名検証プログラムを必要時に
取得して署名検証を行うことができるようになり、その
結果、署名検証装置での署名検証プログラムの前準備を
不要としつつ、さまざまな署名方式による署名の検証を
可能とすることができる。
According to the present invention of claim 9, an in-certificate information acquiring step of acquiring the verification program holding server address and the public key from the public key certificate input together with the signature data to be verified, and the acquired information. A signature that connects to the verification program holding server specified by the verification program holding server address and obtains the signature verification program in which the signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier input with the signature data is described. Verification program acquisition step,
The signature verification procedure described in the acquired signature verification program is applied to the signature target data input together with the signature data, the signature data and the acquired public key, and the signature data is identified by the signature algorithm identifier. A signature verification procedure for verifying that the data is generated by applying the signature generation procedure corresponding to the signature algorithm to the private key paired with the public key and the signature target data. It will be possible to acquire the program when necessary and perform signature verification, and as a result, it will be possible to verify signatures by various signature methods without requiring the preparation of the signature verification program in the signature verification device. You can

【0032】また、請求項10の本発明は、前記署名検
証プログラム取得ステップでは、検証プログラム保持サ
ーバから署名検証プログラムに対応する署名検証プログ
ラム認証情報を取得し、該署名検証プログラム認証情報
と予め記憶された署名検証プログラム検証情報とを用い
て署名検証プログラムを認証することを特徴とする請求
項9記載の署名検証方法をもって解決手段とする。請求
項11の本発明は、検証プログラム保持サーバからサー
バ認証情報を取得し、該サーバ認証情報と予め記憶され
たサーバ検証情報とを用いて当該検証プログラム保持サ
ーバを認証することを特徴とする請求9または10記載
の署名検証装置をもって解決手段とする。
In the signature verification program acquisition step of the present invention, the signature verification program authentication information corresponding to the signature verification program is acquired from the verification program holding server, and the signature verification program authentication information is stored in advance. The signature verification program is authenticated using the generated signature verification program verification information, and the signature verification method according to claim 9 is a solution means. The present invention according to claim 11 is characterized in that the server authentication information is acquired from the verification program holding server, and the verification program holding server is authenticated using the server authentication information and the server verification information stored in advance. The signature verification device described in 9 or 10 is used as a solution.

【0033】請求項10の本発明によれば、署名検証プ
ログラム取得ステップでは、検証プログラム保持サーバ
から署名検証プログラムに対応する署名検証プログラム
認証情報を取得し、該署名検証プログラム認証情報と予
め記憶された署名検証プログラム検証情報とを用いて署
名検証プログラムを認証するので、上記効果に加えて、
好ましくない署名検証プログラム、つまり誤った署名検
証プログラムや、サーバとの通信途上で不正に入れ替え
られた悪意ある署名検証プログラムによって署名が検証
されてしまう不都合を防止して、より安全に署名検証で
きるようになる。
According to the present invention of claim 10, in the signature verification program acquisition step, the signature verification program authentication information corresponding to the signature verification program is acquired from the verification program holding server, and the signature verification program authentication information is stored in advance. Since the signature verification program is authenticated using the signature verification program verification information that has been added, in addition to the above effects,
Prevents the inconvenience that the signature is verified by an unfavorable signature verification program, that is, an incorrect signature verification program or a malicious signature verification program that has been illegally replaced during communication with the server, and enables more secure signature verification. become.

【0034】また、請求項11の本発明は、検証プログ
ラム保持サーバからサーバ認証情報を取得し、該サーバ
認証情報と予め記憶されたサーバ検証情報とを用いて当
該検証プログラム保持サーバを認証することを特徴とす
る請求9または10記載の署名検証方法をもって解決手
段とする。
According to the present invention of claim 11, server authentication information is acquired from the verification program holding server, and the verification program holding server is authenticated using the server authentication information and the server verification information stored in advance. The signature verification method according to claim 9 or 10 is a solution.

【0035】請求項11の本発明によれば、検証プログ
ラム保持サーバからサーバ認証情報を取得し、該サーバ
認証情報と予め記憶されたサーバ検証情報とを用いて当
該検証プログラム保持サーバを認証するので、上記効果
に加えて、好ましくない検証プログラム保持サーバ、例
えば、なりすまされたサーバ等の保持する署名検証プロ
グラムによって署名が検証されてしまう不都合を防止し
て、より安全に署名検証できるようになる。また、請求
項12の本発明は、前記署名検証実行ステップでは、前
記入力された署名アルゴリズム識別子を含む署名検証プ
ログラム情報が署名検証プログラム情報の記憶される署
名検証プログラム情報記憶手段に記憶されているか否か
を判定し、記憶されていると判定した場合には当該署名
検証プログラム情報から該署名検証プログラム情報に予
め含まれている署名検証プログラムを取得し、該取得し
た署名検証プログラムで署名データを検証することを特
徴とする請求項9ないし11のいずれかに記載の署名検
証方法をもって解決手段とする。
According to the present invention of claim 11, the server authentication information is acquired from the verification program holding server, and the verification program holding server is authenticated using the server authentication information and the server verification information stored in advance. In addition to the above effects, it is possible to prevent the inconvenience that the signature is verified by an undesired verification program holding server, for example, a signature verification program held by a spoofed server, so that the signature can be verified more safely . According to the twelfth aspect of the present invention, in the signature verification execution step, the signature verification program information including the input signature algorithm identifier is stored in the signature verification program information storage means in which the signature verification program information is stored. If it is determined that it is stored, a signature verification program included in advance in the signature verification program information is acquired from the signature verification program information, and the signature data is acquired by the acquired signature verification program. The signature verification method according to any one of claims 9 to 11 is a solution means.

【0036】請求項12の本発明によれば、署名検証実
行ステップでは、入力された署名アルゴリズム識別子を
含む署名検証プログラム情報が署名検証プログラム情報
の記憶される署名検証プログラム情報記憶手段に記憶さ
れているか否かを判定し、記憶されていると判定した場
合には当該署名検証プログラム情報から該署名検証プロ
グラム情報に予め含まれている署名検証プログラムを取
得し、該取得した署名検証プログラムで署名データを検
証するので、上記効果に加えて、検証プログラム保持サ
ーバから署名検証プログラムを取得できない場合であっ
ても署名を検証することができる。また、検証プログラ
ム保持サーバとの通信回数や通信量を削減することが可
能となる。
According to the twelfth aspect of the present invention, in the signature verification execution step, the signature verification program information including the input signature algorithm identifier is stored in the signature verification program information storage means in which the signature verification program information is stored. If it is determined that it is stored, a signature verification program included in advance in the signature verification program information is acquired from the signature verification program information, and signature data is acquired by the acquired signature verification program. In addition to the above effects, the signature can be verified even when the signature verification program cannot be acquired from the verification program holding server. Further, it is possible to reduce the number of times of communication with the verification program holding server and the amount of communication.

【0037】また、請求項13の本発明は、検証プログ
ラム保持サーバから取得された署名検証プログラムと該
署名検証プログラムに対応する署名アルゴリズム識別子
との組を署名検証プログラム情報として記憶させる署名
検証プログラム情報登録ステップを備えることを特徴と
する請求9ないし12のいずれかに記載の署名検証方法
をもって解決手段とする。
According to the present invention of claim 13, signature verification program information for storing a set of a signature verification program acquired from a verification program holding server and a signature algorithm identifier corresponding to the signature verification program as signature verification program information. A signature verifying method according to any one of claims 9 to 12 is a solution means.

【0038】請求項13の本発明によれば、検証プログ
ラム保持サーバから取得された署名検証プログラムと該
署名検証プログラムに対応する署名アルゴリズム識別子
との組を署名検証プログラム情報として記憶させる署名
検証プログラム情報登録ステップを備えるので、過去に
検証プログラム保持サーバから取得した署名検証プログ
ラムを再度取得する必要が無くなる。
According to the thirteenth aspect of the present invention, the signature verification program information for storing the set of the signature verification program acquired from the verification program holding server and the signature algorithm identifier corresponding to the signature verification program as the signature verification program information. Since the registration step is provided, there is no need to reacquire the signature verification program acquired from the verification program holding server in the past.

【0039】また、請求項14の本発明は、署名検証プ
ログラムは該署名検証プログラムの作成日時を含むもの
であり、前記署名検証実行ステップでは、前記入力され
た署名アルゴリズム識別子を含む署名検証プログラム情
報を該署名検証プログラム情報の記憶された署名検証プ
ログラム情報記憶手段から取得し、当該署名検証プログ
ラム情報の署名検証プログラムに含まれる作成日時と検
証プログラム保持サーバから取得された署名検証プログ
ラムに含まれる作成日時の新しい方の作成日時を含む署
名検証プログラムで署名データを検証することを特徴と
する請求項9ないし13のいずれかに記載の署名検証方
法をもって解決手段とする。
According to the 14th aspect of the present invention, the signature verification program includes a creation date and time of the signature verification program, and in the signature verification execution step, signature verification program information including the input signature algorithm identifier. From the signature verification program information storage means in which the signature verification program information is stored, and the creation date and time included in the signature verification program of the signature verification program information and the creation included in the signature verification program acquired from the verification program holding server. 14. A signature verification method according to claim 9, wherein the signature data is verified by a signature verification program including a creation date and time of a later date and time.

【0040】請求項14の本発明によれば、署名検証実
行ステップでは、入力された署名アルゴリズム識別子を
含む署名検証プログラム情報を該署名検証プログラム情
報の記憶された署名検証プログラム情報記憶手段から取
得し、当該署名検証プログラム情報の署名検証プログラ
ムに含まれる作成日時と検証プログラム保持サーバから
取得された署名検証プログラムに含まれる作成日時の新
しい方の作成日時を含む署名検証プログラムで署名デー
タを検証するので、新しい署名検証プログラムで署名を
検証することができる。従って、性能などの面で改善さ
れた署名検証プログラムで署名検証することができる。
According to the present invention of claim 14, in the signature verification execution step, the signature verification program information including the inputted signature algorithm identifier is acquired from the signature verification program information storage means in which the signature verification program information is stored. , The signature verification program including the creation date and time included in the signature verification program of the signature verification program information and the newer creation date and time included in the signature verification program acquired from the verification program holding server is used to verify the signature data. , You can verify your signature with the new signature verification program. Therefore, the signature can be verified by the signature verification program improved in terms of performance.

【0041】また、請求項15の本発明は、前記署名検
証実行ステップでの署名データの検証が成功したときは
署名データは有効であると出力し、一方で、署名データ
の検証が失敗したときは署名データは無効であると出力
する検証結果出力ステップを備えることを特徴とする請
求項9ないし14のいずれかに記載の署名検証方法をも
って解決手段とする。
Further, according to the present invention of claim 15, when the verification of the signature data in the signature verification execution step is successful, the signature data is output as valid, while when the verification of the signature data fails. 15. A signature verification method according to claim 9, further comprising: a verification result output step of outputting that the signature data is invalid.

【0042】請求項15の本発明によれば、署名検証実
行ステップでの署名データの検証が成功したときは署名
データは有効であると出力し、一方で、署名データの検
証が失敗したときは署名データは無効であると出力する
検証結果出力ステップを備えるので、利用者が署名の検
証結果を認識できる。
According to the fifteenth aspect of the present invention, when the verification of the signature data in the signature verification execution step is successful, the signature data is output as valid, while when the verification of the signature data fails. Since the signature data output step of outputting that the signature data is invalid is provided, the user can recognize the verification result of the signature.

【0043】また、請求項16の本発明は、署名データ
と署名対象データと署名アルゴリズム識別子と公開鍵証
明書を入力する検証対象入力ステップを備えることを特
徴とする請求項9ないし15のいずれかに記載の署名検
証方法をもって解決手段とする。
The present invention of claim 16 further comprises a verification target input step of inputting signature data, signature target data, signature algorithm identifier, and public key certificate. The solution is the signature verification method described in.

【0044】請求項16の本発明によれば、検証対象入
力ステップで入力された署名データと署名対象データと
署名アルゴリズム識別子と公開鍵証明書で署名の検証を
行うことができる。
According to the sixteenth aspect of the present invention, the signature can be verified with the signature data, the signature target data, the signature algorithm identifier, and the public key certificate input in the verification target input step.

【0045】また、請求項17の本発明は、請求項9な
いし16のいずれかに記載の署名検証方法を実行させる
コンピュータプログラムをもって解決手段とする。
Further, the present invention of claim 17 provides a computer program for executing the signature verification method according to any one of claims 9 to 16 as a solving means.

【0046】請求項17の本発明によれば、署名検証プ
ログラムの前準備を不要としつつ、さまざまな署名方式
による署名の検証を可能とするコンピュータプログラム
を通信回線等を介して流通させることができる。
According to the seventeenth aspect of the present invention, a computer program that enables signature verification by various signature methods can be distributed through a communication line or the like without requiring preparation of the signature verification program. .

【0047】また、請求項18の本発明は、請求項9な
いし16のいずれかに記載の署名検証方法を実行させる
コンピュータプログラムを記録した記録媒体をもって解
決手段とする。
Further, the present invention of claim 18 provides a solving means by a recording medium recording a computer program for executing the signature verifying method according to any one of claims 9 to 16.

【0048】請求項18の本発明によれば、署名検証プ
ログラムの前準備を不要としつつ、さまざまな署名方式
による署名の検証を可能とするコンピュータプログラム
を光学的に読み取り可能な記録媒体線等を介して流通さ
せることができる。
According to the eighteenth aspect of the present invention, there is provided a recording medium line or the like which can optically read a computer program which enables verification of signatures by various signature systems without requiring preparation of the signature verification program. Can be distributed through.

【0049】また、請求項19の本発明は、公開鍵と該
公開鍵の鍵アルゴリズムに対応する署名アルゴリズムに
対応する署名検証手順が記載されたプログラムである署
名検証プログラムを保持する検証プログラム保持サーバ
のアドレスである検証プログラム保持サーバアドレスと
を含む公開鍵証明書を発行することを特徴とする認証局
をもって解決手段とする。
Further, the present invention of claim 19 is a verification program holding server for holding a signature verification program which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A certificate authority that issues a public key certificate that includes the verification program holding server address that is the address of

【0050】請求項19の本発明によれば、公開鍵と該
公開鍵の鍵アルゴリズムに対応する署名アルゴリズムに
対応する署名検証手順が記載されたプログラムである署
名検証プログラムを保持する検証プログラム保持サーバ
のアドレスである検証プログラム保持サーバアドレスと
を含む公開鍵証明書を発行する認証局であるので、署名
検証装置がこの認証局の発行した公開鍵証明書で署名を
検証できるようになる。
According to the present invention of claim 19, a verification program holding server holding a signature verification program which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. Since it is a certificate authority that issues a public key certificate including the verification program holding server address that is the address of the certificate authority, the signature verification device can verify the signature with the public key certificate issued by this certificate authority.

【0051】また、請求項20の本発明は、公開鍵と該
公開鍵の鍵アルゴリズムに対応する署名アルゴリズムに
対応する署名検証手順が記載されたプログラムである署
名検証プログラムを保持する検証プログラム保持サーバ
のアドレスである検証プログラム保持サーバアドレスと
を含む公開鍵証明書を発行することを特徴とする公開鍵
証明書発行方法をもって解決手段とする。
Further, the present invention of claim 20 is a verification program holding server which holds a signature verification program which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A public key certificate including a verification program holding server address that is the address of the public key certificate is issued as a solving means.

【0052】請求項20の本発明によれば、公開鍵と該
公開鍵の鍵アルゴリズムに対応する署名アルゴリズムに
対応する署名検証手順が記載されたプログラムである署
名検証プログラムを保持する検証プログラム保持サーバ
のアドレスである検証プログラム保持サーバアドレスと
を含む公開鍵証明書を発行するので、署名検証装置がこ
の発行された公開鍵証明書で署名を検証できるようにな
る。
According to the twentieth aspect of the present invention, a verification program holding server holding a signature verification program, which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. Since the public key certificate including the verification program holding server address, which is the address of the public key certificate, is issued, the signature verification device can verify the signature with the issued public key certificate.

【0053】[0053]

【発明の実施の形態】以下、本発明の実施の形態につい
て図面を用いて詳細に説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described in detail below with reference to the drawings.

【0054】図1に本発明を具現化した署名検証装置1
0の機能構成例を示し、図2に署名検証装置10を適用
した署名検証システムの構成例を示す。
FIG. 1 shows a signature verification device 1 embodying the present invention.
0 shows a functional configuration example of 0, and FIG. 2 shows a configuration example of a signature verification system to which the signature verification device 10 is applied.

【0055】図2の署名検証システムは、署名検証を行
う1ないしは複数の署名検証装置10と、署名検証装置
10における署名検証で使用される署名検証プログラム
を1ないしは複数保持する1ないしは複数の検証プログ
ラム保持サーバ20からなる。署名検証装置10と、検
証プログラム保持サーバ20とは、通信ネットワーク3
0により接続されており、通信することが可能である。
The signature verification system shown in FIG. 2 holds one or more signature verification devices 10 for performing signature verification, and one or more verifications for holding one or more signature verification programs used for signature verification in the signature verification device 10. The program holding server 20. The signature verification device 10 and the verification program holding server 20 are connected to the communication network 3
It is connected by 0 and can communicate.

【0056】図1に示すように、署名検証装置10は、
検証対象入力手段11と証明書内情報取得手段12と検
証プログラム取得手段13と署名検証実行手段14と検
証結果出力手段15とを備える。
As shown in FIG. 1, the signature verification apparatus 10
The verification target input means 11, the certificate information acquisition means 12, the verification program acquisition means 13, the signature verification execution means 14, and the verification result output means 15 are provided.

【0057】検証対象入力手段11は、検証の対象であ
る署名対象データと署名データと署名アルゴリズム識別
子と公開鍵証明書とを入力として受け取る機能を有す
る。
The verification target input means 11 has a function of receiving as input the signature target data, the signature data, the signature algorithm identifier, and the public key certificate which are the verification targets.

【0058】証明書内情報取得手段12は、検証対象入
力手段11に入力された公開鍵証明書から、検証プログ
ラム保持サーバアドレスと公開鍵とを取り出す機能を有
する。
The in-certificate information acquisition means 12 has a function of extracting the verification program holding server address and the public key from the public key certificate input to the verification target input means 11.

【0059】検証プログラム取得手段13は、証明書内
情報取得手段12で取得した検証プログラム保持サーバ
アドレスによって特定されるサーバに接続して通信を行
い、検証対象入力手段11で取得した署名アルゴリズム
識別子に対応する署名検証プログラムを要求し、これを
取得する機能を有する。
The verification program acquisition means 13 connects to the server specified by the verification program holding server address acquired by the in-certificate information acquisition means 12 for communication, and uses the signature algorithm identifier acquired by the verification target input means 11 as the signature algorithm identifier. It has a function of requesting and acquiring a corresponding signature verification program.

【0060】署名検証実行手段14は、検証対象入力手
段11により取得された署名対象データと署名データ
と、証明書内情報取得手段12により取得された公開鍵
とに対して、検証プログラム取得手段13により取得さ
れた署名検証プログラムに記載の署名検証手順を適用
し、該署名データが検証対象入力手段11により取得し
た署名アルゴリズム識別子によって識別される署名アル
ゴリズムに対応する署名生成手順を該公開鍵と対をなす
秘密鍵と該署名対象データとに対して適用して生成され
た署名データであることを検証する機能を有する。
The signature verification execution means 14 verifies the signature target data and signature data acquired by the verification target input means 11 and the public key acquired by the in-certificate information acquisition means 12 with the verification program acquisition means 13 The signature verification procedure described in the signature verification program acquired by the above is applied, and the signature generation procedure corresponding to the signature algorithm whose signature data is identified by the signature algorithm identifier acquired by the verification target input means 11 is paired with the public key. It has a function of verifying that the signature data is generated by applying it to the private key and the signature target data.

【0061】署名検証プログラムと署名検証実行手段1
4は、例えば、Java言語によるプログラム、あるい
は、Perl等のスクリプト言語によるスクリプトプロ
グラムと、その実行環境などによって構成することが可
能である。
Signature verification program and signature verification execution means 1
4 can be configured by, for example, a program in Java language, or a script program in script language such as Perl and its execution environment.

【0062】検証結果出力手段15は、署名検証実行手
段14による検証が成功した場合には該署名データは有
効であると出力し、一方で、失敗した場合には該署名デ
ータは無効であると出力する機能を有する。
The verification result output means 15 outputs that the signature data is valid when the verification by the signature verification executing means 14 is successful, while the signature data is invalid if the verification fails. Has a function to output.

【0063】図3に認証局により発行された公開鍵証明
書100の構成例を示す。
FIG. 3 shows a configuration example of the public key certificate 100 issued by the certificate authority.

【0064】公開鍵証明書100は署名対象部101と
署名部102とから構成され、さらに署名対象部101
は該公開鍵証明書100を発行した認証局を識別する情
報である認証局識別情報103と、該公開鍵証明書の所
有者を識別する所有者識別情報104と、公開鍵情報1
05と、検証プログラム保持サーバアドレス106等か
ら構成される。公開鍵情報105は、該公開鍵証明書1
00の所有者が秘密裏に保持する秘密鍵と対をなす公開
鍵108と、該公開鍵108の鍵アルゴリズムを識別す
る鍵アルゴリズム識別子107とからなる。本発明の認
証局は、この構成を有する公開鍵証明書を発行するの
で、署名検証装置10において署名検証が可能となる。
The public key certificate 100 is composed of a signature target section 101 and a signature section 102, and further the signature target section 101.
Is the certification authority identification information 103 that is the information that identifies the certification authority that issued the public key certificate 100, the owner identification information 104 that identifies the owner of the public key certificate, and the public key information 1
05 and the verification program holding server address 106 and the like. The public key information 105 is the public key certificate 1
The owner of 00 secretly holds a public key 108 that makes a pair with a private key, and a key algorithm identifier 107 that identifies the key algorithm of the public key 108. Since the certificate authority of the present invention issues a public key certificate having this configuration, the signature verification device 10 can perform signature verification.

【0065】検証プログラム保持サーバアドレス106
は、公開鍵108の鍵アルゴリズムを用いた1ないし複
数の署名アルゴリズムに各々対応する署名検証手順を記
載した署名検証プログラムを1ないし複数保持する検証
プログラム保持サーバ20のアドレスである。
Verification program holding server address 106
Is the address of the verification program holding server 20 that holds one or more signature verification programs in which signature verification procedures corresponding to one or more signature algorithms using the key algorithm of the public key 108 are described.

【0066】署名部102は、署名対象部101に対し
て、該公開鍵証明書を発行した認証局が秘密裏に保持す
る秘密鍵を用いて生成した署名データである。
The signature unit 102 is signature data generated for the signature target unit 101 using a private key secretly held by the certificate authority that issued the public key certificate.

【0067】認証局の公開鍵を安全に取得し、この公開
鍵を用いて公開鍵証明書100の署名検証を行うことに
より、公開鍵証明書100に含まれる公開鍵108と対
をなす秘密鍵の所有者が、所有者識別情報104により
特定されるものであることが確認できる。
By securely obtaining the public key of the certificate authority and verifying the signature of the public key certificate 100 using this public key, the private key paired with the public key 108 included in the public key certificate 100. It can be confirmed that the owner of is identified by the owner identification information 104.

【0068】図4に認証局により発行された公開鍵証明
書の具体的な内容を示す。
FIG. 4 shows the specific contents of the public key certificate issued by the certificate authority.

【0069】例えば、公開鍵証明書110は、署名対象
部111と署名部112とから構成され、署名対象部1
11は「C=JP,O=xyz,CN=CA」なる認証
局識別情報113と、「C=JP,O=abc,CN=
User1」なる所有者識別情報114と、鍵アルゴリ
ズム「RSA」に対応する鍵アルゴリズム識別子117
及び「00 0A 9C D8…37199」なる公開
鍵118からなる公開鍵情報115と、「KENSHO
1.CO.JP」なる検証プログラム保持サーバアドレ
ス116等から構成される。
For example, the public key certificate 110 is composed of a signature target section 111 and a signature section 112.
Reference numeral 11 denotes the certificate authority identification information 113 that is “C = JP, O = xyz, CN = CA”, and “C = JP, O = abc, CN =”.
User identification information 114 "User1" and a key algorithm identifier 117 corresponding to the key algorithm "RSA"
And public key information 115 consisting of the public key 118 "00A 9C D8 ... 37199" and "KENSHO
1. CO. It is composed of a verification program holding server address 116 and the like called "JP".

【0070】図5に署名検証装置10による検証対象の
情報の構成を示す。検証対象の情報は、署名アルゴリズ
ム識別子200と署名対象データ201と署名データ2
02とからなるものである。
FIG. 5 shows the structure of information to be verified by the signature verification apparatus 10. The verification target information includes the signature algorithm identifier 200, the signature target data 201, and the signature data 2
02 and.

【0071】図6に署名検証装置10による検証対象の
情報の具体的な内容を示す。
FIG. 6 shows the specific contents of the information to be verified by the signature verification device 10.

【0072】例えば、図5に示した各検証対象データ
は、署名アルゴリズム「sha1 with Rsa
Encryption」を識別する情報である署名アル
ゴリズム識別子210と、「契約書 甲と乙とは以下に
示す…」というテキストデータである署名対象データ2
11と、「9F 46…」という16進データである署
名データ212である。
For example, each of the verification target data shown in FIG. 5 has the signature algorithm "sha1 with Rsa".
Signature algorithm identifier 210 that is information for identifying "Encryption" and signature target data 2 that is text data "The contract document A and B are as follows ..."
11 and the signature data 212, which is hexadecimal data “9F 46 ...”.

【0073】図7に検証プログラム保持サーバ20の機
能構成を示す。
FIG. 7 shows the functional configuration of the verification program holding server 20.

【0074】検証プログラム保持サーバ20は、検証プ
ログラム提供手段21と検証プログラム情報保持手段2
2とを備える。
The verification program holding server 20 includes a verification program providing means 21 and a verification program information holding means 2.
2 and.

【0075】検証プログラム保持サーバ20はネットワ
ーク上で該サーバ20を一意に特定可能なアドレスであ
る検証プログラム保持サーバアドレス23(具体的には
「KENSHO1.CO.JP」)を有しており、該ア
ドレスにより通信ネットワーク30を介して接続し、通
信することが可能である。
The verification program holding server 20 has a verification program holding server address 23 (specifically, "KENSHO1.CO.JP") which is an address that can uniquely identify the server 20 on the network. It is possible to connect and communicate via the communication network 30 by the address.

【0076】検証プログラム情報保持手段22は、署名
検証手順が記載されたプログラムである署名検証プログ
ラム3と、該署名検証プログラム3に記載された署名検
証手順に対応する署名アルゴリズムを識別する情報であ
る署名アルゴリズム識別子2とからなる検証プログラム
情報1を、1ないしは複数個予め保持しておく。
The verification program information holding means 22 is information for identifying the signature verification program 3 which is a program in which the signature verification procedure is described and the signature algorithm corresponding to the signature verification procedure described in the signature verification program 3. One or more pieces of verification program information 1 including the signature algorithm identifier 2 are held in advance.

【0077】検証プログラム提供手段21は、通信ネッ
トワーク30を介して接続してきた署名検証装置10に
対し、該署名検証装置10が指定した署名アルゴリズム
識別子に対応する署名検証プログラムを検証プログラム
情報保持手段22から取り出し、該署名検証装置10に
送信する機能を有する。
The verification program providing means 21 sends the signature verification program corresponding to the signature algorithm identifier designated by the signature verification device 10 to the signature verification device 10 connected via the communication network 30, and the verification program information holding means 22. And has a function of transmitting the signature to the signature verification apparatus 10.

【0078】図8に検証プログラム保持サーバ20の検
証プログラム情報保持手段22で保持される検証プログ
ラム情報の具体例を示す。
FIG. 8 shows a specific example of the verification program information held by the verification program information holding means 22 of the verification program holding server 20.

【0079】鍵アルゴリズム「RSA」に対応する検証
プログラム情報としては署名アルゴリズム「sha1
with Rsa Encryption」に対する検
証プログラム情報1Aと、署名アルゴリズム「md5
with Rsa Encryption」に対する検
証プログラム情報1Bとが含まれている。
As the verification program information corresponding to the key algorithm "RSA", the signature algorithm "sha1" is used.
Verification program information 1A for "with Rsa Encryption" and signature algorithm "md5"
The verification program information 1B for “with Rsa Encryption” is included.

【0080】同様に、鍵アルゴリズム「ESIGN」に
対応する検証プログラム情報として署名アルゴリズム
「sha1 with RSIGN」に対する検証プロ
グラム情報1Cと、「md5 with ESIGN」
に対する検証プログラム情報1Dとが、また、鍵アルゴ
リズム「DSA」に対応する検証プログラム情報として
署名アルゴリズム「sha1 with DSA」に対
する検証プログラム情報1Eとが含まれている。
Similarly, as verification program information corresponding to the key algorithm "ESSIGN", verification program information 1C for the signature algorithm "sha1 with RSIGN" and "md5 with ESIGN".
And verification program information 1D for the signature algorithm “sha1 with DSA” as verification program information corresponding to the key algorithm “DSA”.

【0081】図9に署名検証装置10が実行する署名検
証方法を示す。
FIG. 9 shows a signature verification method executed by the signature verification apparatus 10.

【0082】ステップS1では、検証対象入力手段11
が署名対象データ201と署名データ202と署名アル
ゴリズム識別子200と公開鍵証明書100とを入力と
して取得する。続くステップS2では、証明書内情報取
得手段12が公開鍵証明書100から検証プログラム保
持サーバアドレス106と公開鍵108とを取得する。
続くステップS3では、検証プログラム取得手段13
が、ステップS2で取得された検証プログラム保持サー
バアドレス106で特定される検証プログラム保持サー
バ20に接続して、ステップS1で取得された署名アル
ゴリズム識別子200を送信し、この検証プログラム保
持サーバ20の検証プログラム提供手段21から、この
署名アルゴリズム識別子200によって特定される署名
アルゴリズムに対応する署名検証手順の記載された署名
検証プログラム3を取得する。続くステップS4では、
署名検証実行手段14が署名対象データ201と署名デ
ータ202と公開鍵108とに対して、ステップS3で
取得された署名検証プログラム3に記載の署名検証手順
を適用し、署名データ202が署名アルゴリズム識別子
200によって特定される署名アルゴリズムに対応する
署名生成手順を公開鍵108と対をなす秘密鍵と署名対
象データ201とに対して適用して生成された署名デー
タであることを検証する。続くステップS5では、検証
結果出力手段15が、ステップS4での検証が成功した
か否かを判定し、成功したと判定した場合には署名は有
効であると出力し(ステップS6−1)、一方で、失敗
したと判定した場合には署名は無効であると出力して
(ステップS6−2)、終了する。なお、出力先は、例
えば印刷装置(プリンタ)や表示装置(ディスプレイ)
などである。
In step S1, the verification target input means 11
Acquires the signature target data 201, the signature data 202, the signature algorithm identifier 200, and the public key certificate 100 as inputs. In the subsequent step S2, the in-certificate information acquisition means 12 acquires the verification program holding server address 106 and the public key 108 from the public key certificate 100.
In the following step S3, the verification program acquisition means 13
Connects to the verification program holding server 20 specified by the verification program holding server address 106 acquired in step S2, transmits the signature algorithm identifier 200 acquired in step S1, and verifies this verification program holding server 20. From the program providing unit 21, the signature verification program 3 in which the signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier 200 is described is acquired. In the following step S4,
The signature verification execution means 14 applies the signature verification procedure described in the signature verification program 3 acquired in step S3 to the signature target data 201, the signature data 202, and the public key 108, and the signature data 202 is the signature algorithm identifier. The signature generation procedure corresponding to the signature algorithm specified by 200 is applied to the private key paired with the public key 108 and the signature target data 201 to verify that the signature data is generated. In the subsequent step S5, the verification result output means 15 determines whether or not the verification in step S4 has succeeded, and if it determines that the verification has succeeded, it outputs that the signature is valid (step S6-1). On the other hand, if it is determined that the signature has failed, the signature is output as invalid (step S6-2), and the process ends. The output destination is, for example, a printing device (printer) or a display device (display).
And so on.

【0083】また、ステップS1は検証対象入力ステッ
プ、ステップS2は証明書内情報取得ステップ、ステッ
プS3は検証プログラム取得ステップ、ステップS4は
署名検証実行ステップ、ステップS5、S6−1及びS
6−2は検証結果出力ステップにそれぞれ相当する。
Step S1 is a verification target input step, step S2 is a certificate information acquisition step, step S3 is a verification program acquisition step, step S4 is a signature verification execution step, steps S5, S6-1 and S.
6-2 corresponds to the verification result output step.

【0084】以下、署名検証装置10が、図6に示す署
名アルゴリズム210と署名対象データ211と署名デ
ータ212と、図4に示す公開鍵証明書110に対する
署名検証を行う場合における署名検証装置10の動作を
詳細に説明する。
Hereinafter, the signature verification apparatus 10 in the case where the signature verification apparatus 10 performs signature verification on the signature algorithm 210, the signature target data 211, the signature data 212 shown in FIG. 6 and the public key certificate 110 shown in FIG. The operation will be described in detail.

【0085】図10に署名検証装置10が実行する具体
的な署名検証方法を示す。
FIG. 10 shows a specific signature verification method executed by the signature verification apparatus 10.

【0086】検証対象入力手段11が、例えば署名アル
ゴリズム識別子210と署名対象データ211と署名デ
ータ212と公開鍵証明書110とを入力として受け取
り(ステップS1)、証明書内情報取得手段12が、公
開鍵証明書110から検証プログラム保持サーバアドレ
ス116と公開鍵118とを取得し(ステップS2)、
検証プログラム取得手段13が、検証プログラム保持サ
ーバアドレス116により特定される検証プログラム保
持サーバ20に接続して、署名アルゴリズム識別子21
0を送信し、この署名アルゴリズム識別子210(検証
プログラム保持サーバ20では署名アルゴリズム識別子
2)に対応する署名検証プログラム3Aを取得し(ステ
ップS3)、署名検証実行手段14が署名対象データ2
11と署名データ212と公開鍵118とに対して署名
検証プログラム3Aに記載の署名生成手順を適用して検
証を行い(ステップS4)、検証結果出力手段15が、
署名検証が成功したか否かを判定し(ステップS5)、
成功した場合には署名データは有効であると出力し(ス
テップS6−1)、失敗した場合には署名データは無効
であると出力し(ステップS6−2)、終了する。
The verification target input means 11 receives, for example, the signature algorithm identifier 210, the signature target data 211, the signature data 212, and the public key certificate 110 as inputs (step S1), and the in-certificate information acquisition means 12 publishes them. The verification program holding server address 116 and the public key 118 are acquired from the key certificate 110 (step S2),
The verification program acquisition means 13 connects to the verification program holding server 20 specified by the verification program holding server address 116, and the signature algorithm identifier 21
0 is transmitted, the signature verification program 3A corresponding to this signature algorithm identifier 210 (the signature algorithm identifier 2 in the verification program holding server 20) is acquired (step S3), and the signature verification execution means 14 causes the signature target data 2
11, the signature data 212 and the public key 118 are verified by applying the signature generation procedure described in the signature verification program 3A (step S4), and the verification result output means 15
It is determined whether the signature verification is successful (step S5),
If it succeeds, the signature data is output as valid (step S6-1), and if it fails, the signature data is output as invalid (step S6-2), and the process ends.

【0087】以上説明したように、本実施の形態にあっ
ては、署名検証装置10が本発明の署名検証装置に相当
し、本発明の署名検証方法を実行する。
As described above, in the present embodiment, the signature verification device 10 corresponds to the signature verification device of the present invention and executes the signature verification method of the present invention.

【0088】つまり、署名検証装置10は、公開鍵と該
公開鍵の鍵アルゴリズムに対応する署名アルゴリズムに
対応する署名検証手順の記載されたプログラムである署
名検証プログラムを保持するサーバ20のアドレスであ
る検証プログラム保持サーバアドレスとを含む公開鍵証
明書が認証局から発行され、検証プログラム保持サーバ
20に1ないしは複数個の署名検証プログラムが該署名
検証プログラムに記載された署名検証手順に対応する署
名アルゴリズム識別子とともに格納されているときに利
用されるものであり、検証対象の署名データとともに入
力された公開鍵証明書から検証プログラム保持サーバア
ドレスと公開鍵とを取得する証明書内情報取得手段12
と、この取得された検証プログラム保持サーバアドレス
によって特定される検証プログラム保持サーバ20に接
続し、署名データとともに入力された署名アルゴリズム
識別子によって特定される署名アルゴリズムに対応する
署名検証手順の記載された署名検証プログラムを取得す
る署名検証プログラム取得手段13と、この取得された
署名検証プログラムに記載の署名検証手順を、署名デー
タとともに入力された署名対象データと当該署名データ
と取得された公開鍵とに適用して、当該署名データが署
名アルゴリズム識別子によって特定される署名アルゴリ
ズムに対応する署名生成手順を当該公開鍵と対をなす秘
密鍵と当該署名対象データとに適用して生成されたデー
タであることを検証する署名検証実行手段14とを備
え、証明書内情報取得手段12が検証対象の署名データ
とともに入力された公開鍵証明書から検証プログラム保
持サーバアドレスと公開鍵とを取得する証明書内情報取
得ステップ(S2)と、検証プログラム取得手段13が
この取得された検証プログラム保持サーバアドレスによ
って特定される検証プログラム保持サーバに接続し、署
名データとともに入力された署名アルゴリズム識別子に
よって特定される署名アルゴリズムに対応する署名検証
手順の記載された署名検証プログラムを取得する署名検
証プログラム取得ステップ(S3)と、署名検証実行手
段14がこの取得された署名検証プログラムに記載の署
名検証手順を、署名データとともに入力された署名対象
データと当該署名データと取得された公開鍵とに適用し
て、当該署名データが前記署名アルゴリズム識別子によ
って特定される署名アルゴリズムに対応する署名生成手
順を当該公開鍵と対をなす秘密鍵と当該署名対象データ
とに適用して生成されたデータであることを検証する署
名検証実行ステップ(S4)とを備える署名検証方法を
実行するようにしたので、署名検証プログラムを必要時
に取得して署名検証を行うことができるようになり、そ
のため署名検証装置での署名検証プログラムの前準備を
不要としつつ、さまざまな署名方式による署名の検証を
可能とすることができる。
That is, the signature verification apparatus 10 is the address of the server 20 that holds the signature verification program, which is the program in which the public key and the signature verification procedure corresponding to the signature algorithm corresponding to the key algorithm of the public key are described. A public key certificate including a verification program holding server address is issued from the certificate authority, and one or a plurality of signature verification programs is provided in the verification program holding server 20 in accordance with the signature verification procedure described in the signature verification program. It is used when it is stored together with the identifier, and the in-certificate information acquisition means 12 acquires the verification program holding server address and the public key from the public key certificate input together with the signature data to be verified.
And a signature with a signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier input together with the signature data, by connecting to the verification program holding server 20 specified by the acquired verification program holding server address. The signature verification program acquisition unit 13 for acquiring the verification program and the signature verification procedure described in the acquired signature verification program are applied to the signature target data input together with the signature data, the signature data, and the acquired public key. Then, the signature data is data generated by applying the signature generation procedure corresponding to the signature algorithm specified by the signature algorithm identifier to the private key paired with the public key and the signature target data. A signature verification execution unit 14 for verifying the The in-certificate information acquisition step (S2) in which the means 12 acquires the verification program holding server address and the public key from the public key certificate input together with the signature data to be verified, and the verification program acquisition means 13 are acquired. Verification program holding server Signature verification that connects to the verification program holding server specified by the address and obtains the signature verification program that describes the signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier that was input with the signature data. The program acquisition step (S3) and the signature verification procedure described by the signature verification execution means 14 in the acquired signature verification program are applied to the signature target data input together with the signature data, the signature data and the acquired public key. The signature data is applied to the signature data. Signature verification procedure corresponding to the signature algorithm specified by the signature identifier is applied to the private key paired with the public key and the signature target data to verify that the data is generated (S4). ) And the signature verification method is executed, it becomes possible to obtain the signature verification program and perform the signature verification when necessary, and therefore, the preparation of the signature verification program in the signature verification device is unnecessary. At the same time, it is possible to verify the signature by various signature methods.

【0089】また、署名検証実行手段14による署名デ
ータの検証が成功したときは署名データは有効であると
出力し、一方で、署名データの検証が失敗したときは署
名データは無効であると出力する検証結果出力手段15
を備えるので、利用者が署名の検証結果を認識できる。
When the signature verification execution means 14 succeeds in verifying the signature data, it outputs that the signature data is valid, while when the verification of the signature data fails, it outputs that the signature data is invalid. Verification result output means 15
With this, the user can recognize the verification result of the signature.

【0090】また、署名データと署名対象データと署名
アルゴリズム識別子と公開鍵証明書を入力する検証対象
入力手段11を備えるので、検証対象入力手段11によ
り入力された署名データと署名対象データと署名アルゴ
リズム識別子と公開鍵証明書で署名の検証を行うことが
できる。
Further, since the verification target input means 11 for inputting the signature data, the signature target data, the signature algorithm identifier and the public key certificate is provided, the signature data, the signature target data and the signature algorithm input by the verification target input means 11 are provided. The signature can be verified with the identifier and the public key certificate.

【0091】また、上記説明した認証局は、公開鍵と該
公開鍵の鍵アルゴリズムに対応する署名アルゴリズムに
対応する署名検証手順が記載されたプログラムである署
名検証プログラムを保持する検証プログラム保持サーバ
のアドレスである検証プログラム保持サーバアドレスと
を含む公開鍵証明書を発行する認証局であって、公開鍵
と該公開鍵の鍵アルゴリズムに対応する署名アルゴリズ
ムに対応する署名検証手順が記載されたプログラムであ
る署名検証プログラムを保持する検証プログラム保持サ
ーバのアドレスである検証プログラム保持サーバアドレ
スとを含む公開鍵証明書を発行するので、署名検証装置
がこの認証局の発行した公開鍵証明書で署名を検証でき
るようになる。
Further, the above-described certificate authority is a verification program holding server that holds a signature verification program that is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A certificate authority that issues a public key certificate including a verification program holding server address that is an address, and is a program that describes a signature verification procedure corresponding to a public key and a signature algorithm corresponding to the key algorithm of the public key. Since the public key certificate including the verification program holding server address which is the address of the verification program holding server holding a certain signature verification program is issued, the signature verification device verifies the signature with the public key certificate issued by this certificate authority. become able to.

【0092】次に、上記形態を応用した実施の形態を説
明する。なお、新たな構成要素の図示は省略することに
する。
Next, an embodiment applying the above-mentioned embodiment will be described. It should be noted that illustration of new components will be omitted.

【0093】署名検証装置10に、署名検証プログラム
に対応する署名検証プログラム認証情報の検証に用いら
れる署名検証プログラム検証情報の記憶される署名検証
プログラム検証情報記憶手段16を設け、そして、この
署名検証プログラム検証情報記憶手段16に署名検証プ
ログラム検証情報を記憶させておき、署名検証プログラ
ム取得手段13は、検証プログラム保持サーバ20から
署名検証プログラムに対応する署名検証プログラム認証
情報を取得し、該署名検証プログラム認証情報と署名検
証プログラム認証情報記憶手段16に記憶された署名検
証プログラム検証情報とを用いて署名検証プログラムを
認証するようにしてもよい。
The signature verification apparatus 10 is provided with a signature verification program verification information storage means 16 for storing the signature verification program verification information used for verifying the signature verification program authentication information corresponding to the signature verification program, and this signature verification The signature verification program verification information is stored in the program verification information storage means 16, and the signature verification program acquisition means 13 acquires the signature verification program authentication information corresponding to the signature verification program from the verification program holding server 20, and the signature verification program authentication information is acquired. The signature verification program may be authenticated using the program verification information and the signature verification program verification information stored in the signature verification program verification information storage unit 16.

【0094】この実施の形態の署名検証装置10によれ
ば、好ましくない署名検証プログラム、つまり誤った署
名検証プログラムや、サーバとの通信途上で不正に入れ
替えられた悪意ある署名検証プログラムによって署名が
検証されてしまう不都合を防止して、より安全に署名検
証できるようになる。
According to the signature verification apparatus 10 of this embodiment, the signature is verified by an unfavorable signature verification program, that is, an incorrect signature verification program, or a malicious signature verification program that is illegally replaced during communication with the server. It is possible to prevent the inconvenience of being performed and to perform signature verification more safely.

【0095】また、署名検証装置10に、検証プログラ
ム保持サーバ20から取得されるサーバ認証情報の認証
に用いられるサーバ検証情報の記憶されるサーバ検証情
報記憶手段17を設け、そして、このサーバ検証情報記
憶手段17にサーバ検証情報を記憶させ、検証プログラ
ム保持サーバ20からサーバ認証情報を取得し、該サー
バ認証情報とサーバ検証情報記憶手段17に記憶された
サーバ検証情報とを用いて当該検証プログラム保持サー
バ20を認証するようにしてもよい。
Further, the signature verification apparatus 10 is provided with a server verification information storage means 17 for storing server verification information used for authenticating the server authentication information acquired from the verification program holding server 20, and this server verification information. The server verification information is stored in the storage unit 17, the server authentication information is acquired from the verification program holding server 20, and the verification program is held by using the server authentication information and the server verification information stored in the server verification information storage unit 17. The server 20 may be authenticated.

【0096】この実施の形態の署名検証装置10によれ
ば、好ましくない検証プログラム保持サーバ、例えば、
なりすまされたサーバ等の保持する署名検証プログラム
によって署名が検証されてしまう不都合を防止して、よ
り安全に署名検証できるようになる。
According to the signature verification apparatus 10 of this embodiment, an undesired verification program holding server, for example,
It is possible to prevent the inconvenience that the signature is verified by the signature verification program held by the spoofed server or the like, and perform the signature verification more safely.

【0097】また、署名検証装置10に、署名検証プロ
グラムと該署名検証プログラムに記載された署名検証手
順に対応する署名アルゴリズム識別子との組である署名
検証プログラム情報が記憶される署名検証プログラム情
報記憶手段18を設け、そして、この署名検証プログラ
ム情報記憶手段18に署名検証プログラム情報を記憶さ
せ、署名検証実行手段14は、入力された署名アルゴリ
ズム識別子を含む署名検証プログラム情報が署名検証プ
ログラム情報記憶手段18に記憶されているか否かを判
定し、記憶されていると判定した場合には当該署名検証
プログラム情報から署名検証プログラムを取得し、該取
得した署名検証プログラムで署名データを検証するよう
にしてもよい。
Further, the signature verification program information storage in which the signature verification program information, which is a set of the signature verification program and the signature algorithm identifier corresponding to the signature verification procedure described in the signature verification program, is stored in the signature verification apparatus 10. The signature verification program information storage means 18 stores the signature verification program information, and the signature verification execution means 14 stores the signature verification program information including the input signature algorithm identifier in the signature verification program information storage means. It is determined whether the signature verification program is stored in No. 18, and if it is determined that the signature verification program is stored, the signature verification program is acquired from the signature verification program information and the signature data is verified by the acquired signature verification program. Good.

【0098】この実施の形態の署名検証装置10によれ
ば、検証プログラム保持サーバから署名検証プログラム
を取得できない場合であっても署名を検証することがで
きる。また、検証プログラム保持サーバとの通信回数や
通信量を削減することが可能となる。
According to the signature verification apparatus 10 of this embodiment, the signature can be verified even if the signature verification program cannot be obtained from the verification program holding server. Further, it is possible to reduce the number of times of communication with the verification program holding server and the amount of communication.

【0099】また、上記の署名検証プログラム情報記憶
手段18を設けて上記のように署名検証プログラム情報
を記憶させ、検証プログラム保持サーバ20から取得さ
れた署名検証プログラムと該署名検証プログラムに対応
する署名アルゴリズム識別子との組を署名検証プログラ
ム情報として署名検証プログラム情報記憶手段18に記
憶させる署名検証プログラム情報登録手段19を設ける
ようにしてもよい。
Further, the signature verification program information storage means 18 is provided to store the signature verification program information as described above, and the signature verification program obtained from the verification program holding server 20 and the signature corresponding to the signature verification program. You may make it provide the signature verification program information registration means 19 which makes the signature verification program information storage means 18 memorize | store the combination with an algorithm identifier as signature verification program information.

【0100】この実施の形態の署名検証装置10によれ
ば、過去に検証プログラム保持サーバから取得した署名
検証プログラムを再度取得する必要が無くなる。
According to the signature verification apparatus 10 of this embodiment, there is no need to reacquire the signature verification program previously acquired from the verification program holding server.

【0101】また、署名検証プログラムに該署名検証プ
ログラムの作成日時を含むものとし、署名検証装置10
に、上記の署名検証プログラム情報記憶手段18を設け
て上記のように署名検証プログラム情報を記憶させ、署
名検証実行手段14を、入力された署名アルゴリズム識
別子を含む署名検証プログラム情報を署名検証プログラ
ム情報記憶手段18から取得し、当該署名検証プログラ
ム情報の署名検証プログラムに含まれる作成日時と検証
プログラム保持サーバ20から取得された署名検証プロ
グラムに含まれる作成日時の新しい方の作成日時を含む
署名検証プログラムで署名データを検証するようにして
もよい。
Further, the signature verification program includes the creation date and time of the signature verification program, and the signature verification device 10
In addition, the signature verification program information storage means 18 is provided to store the signature verification program information as described above, and the signature verification execution means 14 sends the signature verification program information including the input signature algorithm identifier to the signature verification program information. A signature verification program including the creation date and time included in the signature verification program of the signature verification program information acquired from the storage unit 18 and the creation date and time included in the signature verification program acquired from the verification program holding server 20 whichever is newer. The signature data may be verified with.

【0102】この実施の形態の署名検証装置10によれ
ば、新しい署名検証プログラムで署名検証することがで
きる。従って、性能などの面で改善された署名検証プロ
グラムで署名検証することができる。
According to the signature verification apparatus 10 of this embodiment, it is possible to verify the signature with a new signature verification program. Therefore, the signature can be verified by the signature verification program improved in terms of performance.

【0103】なお、上記説明した処理を署名検証装置1
0等に実行させるコンピュータプログラムは、半導体メ
モリ、磁気ディスク、光ディスク、光磁気ディスク、磁
気テープなどのコンピュータ読み取り可能な記録媒体に
記録したり、インターネットなどの通信網を介して伝送
させて、広く流通させることができる。
The above-described processing is executed by the signature verification device 1
The computer program executed by the computer 0 or the like is recorded on a computer-readable recording medium such as a semiconductor memory, a magnetic disk, an optical disk, a magneto-optical disk, or a magnetic tape, or transmitted via a communication network such as the Internet, and is widely distributed. Can be made.

【0104】[0104]

【発明の効果】以上説明したように、本発明によれば、
検証対象の署名データとともに入力された公開鍵証明書
から検証プログラム保持サーバアドレスと公開鍵とを取
得し、この取得された検証プログラム保持サーバアドレ
スによって特定される検証プログラム保持サーバに接続
し、署名データとともに入力された署名アルゴリズム識
別子によって特定される署名アルゴリズムに対応する署
名検証手順の記載された署名検証プログラムを取得し、
この取得された署名検証プログラムに記載の署名検証手
順を、署名データとともに入力された署名対象データと
当該署名データと取得された公開鍵とに適用して、当該
署名データが署名アルゴリズム識別子によって特定され
る署名アルゴリズムに対応する署名生成手順を当該公開
鍵と対をなす秘密鍵と当該署名対象データとに適用して
生成されたデータであることを検証するようにしたの
で、署名検証プログラムを必要時に取得して署名検証を
行うことができるようになり、その結果、署名検証装置
での署名検証プログラムの前準備を不要としつつ、さま
ざまな署名方式による署名の検証を可能とすることがで
きる。
As described above, according to the present invention,
The verification program holding server address and the public key are acquired from the public key certificate input together with the signature data to be verified, and the verification program holding server specified by the acquired verification program holding server address is connected to obtain the signature data. Acquire a signature verification program that describes the signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier input with
The signature verification procedure described in the acquired signature verification program is applied to the signature target data input together with the signature data, the signature data and the acquired public key, and the signature data is identified by the signature algorithm identifier. The signature verification procedure corresponding to the signature algorithm is applied to the private key paired with the public key and the signature target data to verify that the data is generated. As a result, the signature can be acquired and the signature can be verified. As a result, it is possible to verify the signature by various signature methods without requiring the preparation of the signature verification program in the signature verification apparatus.

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

【図1】本発明を具現化した署名検証装置の機能構成例
を示す図である。
FIG. 1 is a diagram showing a functional configuration example of a signature verification device embodying the present invention.

【図2】署名検証装置を適用した署名検証システムの構
成例を示す図である。
FIG. 2 is a diagram showing a configuration example of a signature verification system to which a signature verification device is applied.

【図3】認証局により発行された公開鍵証明書の構成例
を示す図である。
FIG. 3 is a diagram showing a configuration example of a public key certificate issued by a certificate authority.

【図4】認証局により発行された公開鍵証明書の具体的
な内容を示す図である。
FIG. 4 is a diagram showing specific contents of a public key certificate issued by a certificate authority.

【図5】署名検証装置による検証対象の情報の構成を示
す図である。
FIG. 5 is a diagram showing a configuration of information to be verified by the signature verification device.

【図6】署名検証装置による検証対象の情報の具体的な
内容を示す図である。
FIG. 6 is a diagram showing specific contents of information to be verified by the signature verification device.

【図7】検証プログラム保持サーバ20の機能構成を示
す図である。
7 is a diagram showing a functional configuration of a verification program holding server 20. FIG.

【図8】検証プログラム情報の具体例を示す図である。FIG. 8 is a diagram showing a specific example of verification program information.

【図9】署名検証装置10が実行する署名検証方法を示
す図である。
9 is a diagram showing a signature verification method executed by the signature verification device 10. FIG.

【図10】署名検証装置10が実行する具体的な署名検
証方法を示す図である。
10 is a diagram showing a specific signature verification method executed by the signature verification apparatus 10. FIG.

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

1,1A,1B,1C,1D,1E 検証プログラム情
報 2,2A,2B,2C,2D,2E 署名アルゴリズム
識別子 3,3A,3B,3C,3D,3E 署名検証プログラ
ム 10 署名検証装置 11 検証対象入力手段 12 証明書内情報取得手段 13 検証プログラム取得手段 14 署名検証実行手段 15 検証結果出力手段 16 署名検証プログラム検証情報記憶手段 17 サーバ検証情報記憶手段 18 署名検証プログラム情報記憶手段 19 署名検証プログラム情報登録手段 20 検証プログラム保持サーバ 21 検証プログラム提供手段 22 検証プログラム情報保持手段 30 通信ネットワーク 100,110 公開鍵証明書 101,111 署名対象部 102,112 署名部 103,113 認証局識別情報 104,114 所有者識別情報 105,115 公開鍵情報 106,116 検証プログラム保持サーバアドレス 107,117 鍵アルゴリズム識別子 108,118 公開鍵 200,210 署名アルゴリズム識別子 201,211 署名対象データ 202,212 署名データ
1, 1A, 1B, 1C, 1D, 1E Verification program information 2, 2A, 2B, 2C, 2D, 2E Signature algorithm identifier 3, 3A, 3B, 3C, 3D, 3E Signature verification program 10 Signature verification device 11 Verification target input Means 12 Certificate information acquisition means 13 Verification program acquisition means 14 Signature verification execution means 15 Verification result output means 16 Signature verification program verification information storage means 17 Server verification information storage means 18 Signature verification program information storage means 19 Signature verification program information registration Means 20 Verification program holding server 21 Verification program providing means 22 Verification program information holding means 30 Communication networks 100, 110 Public key certificates 101, 111 Signature target parts 102, 112 Signature parts 103, 113 Certification authority identification information 104, 114 Owner Identification information 105,1 15 public key information 106, 116 verification program holding server address 107, 117 key algorithm identifier 108, 118 public key 200, 210 signature algorithm identifier 201, 211 signature target data 202, 212 signature data

───────────────────────────────────────────────────── フロントページの続き (72)発明者 中嶋 良彰 東京都千代田区大手町二丁目3番1号 日 本電信電話株式会社内 Fターム(参考) 5J104 AA09 LA03 LA06    ─────────────────────────────────────────────────── ─── Continued front page    (72) Inventor Yoshiaki Nakajima             2-3-1, Otemachi, Chiyoda-ku, Tokyo             Inside Telegraph and Telephone Corporation F-term (reference) 5J104 AA09 LA03 LA06

Claims (20)

【特許請求の範囲】[Claims] 【請求項1】 公開鍵と該公開鍵の鍵アルゴリズムに対
応する署名アルゴリズムに対応する署名検証手順の記載
されたプログラムである署名検証プログラムを保持する
検証プログラム保持サーバのアドレスである検証プログ
ラム保持サーバアドレスとを含む公開鍵証明書が認証局
から発行され、前記検証プログラム保持サーバに1ない
しは複数個の署名検証プログラムが該署名検証プログラ
ムに記載された署名検証手順に対応する署名アルゴリズ
ム識別子とともに格納されているときに、検証対象の署
名データとともに入力された公開鍵証明書から検証プロ
グラム保持サーバアドレスと公開鍵とを取得する証明書
内情報取得手段と、 この取得された検証プログラム保持サーバアドレスによ
って特定される検証プログラム保持サーバに接続し、前
記署名データとともに入力された署名アルゴリズム識別
子によって特定される署名アルゴリズムに対応する署名
検証手順の記載された署名検証プログラムを取得する署
名検証プログラム取得手段と、 この取得された署名検証プログラムに記載の署名検証手
順を、前記署名データとともに入力された署名対象デー
タと当該署名データと前記取得された公開鍵とに適用し
て、当該署名データが前記署名アルゴリズム識別子によ
って特定される署名アルゴリズムに対応する署名生成手
順を当該公開鍵と対をなす秘密鍵と当該署名対象データ
とに適用して生成されたデータであることを検証する署
名検証実行手段とを備えることを特徴とする署名検証装
置。
1. A verification program holding server which is an address of a verification program holding server which holds a signature verification program which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A public key certificate including an address is issued from a certificate authority, and one or more signature verification programs are stored in the verification program holding server together with a signature algorithm identifier corresponding to the signature verification procedure described in the signature verification program. In this case, the in-certificate information acquisition means for acquiring the verification program holding server address and the public key from the public key certificate input together with the signature data to be verified, and the acquired verification program holding server address Connected to the verification program holding server Signature verification program acquisition means for acquiring a signature verification program in which a signature verification procedure corresponding to the signature algorithm specified by the signature algorithm identifier input together with the signature data, and a signature described in the acquired signature verification program A verification procedure is applied to the signature target data input together with the signature data, the signature data, and the acquired public key to generate a signature corresponding to the signature algorithm specified by the signature algorithm identifier. A signature verification apparatus comprising: a signature verification execution unit that verifies that the data is generated by applying a procedure to a private key paired with the public key and the signature target data.
【請求項2】 署名検証プログラムに対応する署名検証
プログラム認証情報の検証に用いられる署名検証プログ
ラム検証情報の記憶される署名検証プログラム検証情報
記憶手段を備え、 前記署名検証プログラム取得手段は、検証プログラム保
持サーバから署名検証プログラムに対応する署名検証プ
ログラム認証情報を取得し、該署名検証プログラム認証
情報と前記署名検証プログラム認証情報記憶手段に記憶
された署名検証プログラム検証情報とを用いて署名検証
プログラムを認証することを特徴とする請求項1記載の
署名検証装置。
2. A signature verification program verification information storage unit for storing the signature verification program verification information used for verifying the signature verification program authentication information corresponding to the signature verification program, wherein the signature verification program acquisition unit is a verification program. The signature verification program authentication information corresponding to the signature verification program is acquired from the holding server, and the signature verification program authentication information and the signature verification program verification information stored in the signature verification program authentication information storage means are used to execute the signature verification program. The signature verification apparatus according to claim 1, wherein authentication is performed.
【請求項3】 検証プログラム保持サーバから取得され
るサーバ認証情報の認証に用いられるサーバ検証情報の
記憶されるサーバ検証情報記憶手段を備え、 検証プログラム保持サーバからサーバ認証情報を取得
し、該サーバ認証情報と前記サーバ検証情報記憶手段に
記憶されたサーバ検証情報とを用いて当該検証プログラ
ム保持サーバを認証することを特徴とする請求項1また
は2記載の署名検証装置。
3. A server verification information storage means for storing server verification information used for authenticating the server authentication information acquired from the verification program holding server, the server authentication information acquiring means acquiring the server authentication information from the verification program holding server. 3. The signature verification apparatus according to claim 1, wherein the verification program holding server is authenticated using the authentication information and the server verification information stored in the server verification information storage means.
【請求項4】 署名検証プログラムと該署名検証プログ
ラムに記載された署名検証手順に対応する署名アルゴリ
ズム識別子との組である署名検証プログラム情報が記憶
される署名検証プログラム情報記憶手段を備え、 前記署名検証実行手段は、前記入力された署名アルゴリ
ズム識別子を含む署名検証プログラム情報が前記署名検
証プログラム情報記憶手段に記憶されているか否かを判
定し、記憶されていると判定した場合には当該署名検証
プログラム情報から署名検証プログラムを取得し、該取
得した署名検証プログラムで署名データを検証すること
を特徴とする請求項1ないし3のいずれかに記載の署名
検証装置。
4. A signature verification program information storage unit for storing signature verification program information, which is a set of a signature verification program and a signature algorithm identifier corresponding to a signature verification procedure described in the signature verification program, and the signature. The verification execution means determines whether or not the signature verification program information including the input signature algorithm identifier is stored in the signature verification program information storage means, and if it is determined to be stored, the signature verification program information is verified. 4. The signature verification apparatus according to claim 1, wherein the signature verification program is acquired from the program information, and the signature data is verified by the acquired signature verification program.
【請求項5】 署名検証プログラムと該署名検証プログ
ラムに記載された署名検証手順に対応する署名アルゴリ
ズム識別子との組である署名検証プログラム情報が記憶
される署名検証プログラム情報記憶手段と、 検証プログラム保持サーバから取得された署名検証プロ
グラムと該署名検証プログラムに対応する署名アルゴリ
ズム識別子との組を署名検証プログラム情報として前記
署名検証プログラム情報記憶手段に記憶させる署名検証
プログラム情報登録手段とを備えることを特徴とする請
求項1ないし4のいずれかに記載の署名検証装置。
5. A signature verification program information storage unit for storing signature verification program information, which is a set of a signature verification program and a signature algorithm identifier corresponding to a signature verification procedure described in the signature verification program, and a verification program storage unit. A signature verification program information registration means for storing a set of a signature verification program acquired from a server and a signature algorithm identifier corresponding to the signature verification program as signature verification program information in the signature verification program information storage means. The signature verification device according to any one of claims 1 to 4.
【請求項6】 署名検証プログラムは該署名検証プログ
ラムの作成日時を含むものであり、署名検証プログラム
と該署名検証プログラムに記載された署名検証手順に対
応する署名アルゴリズム識別子との組である署名検証プ
ログラム情報の記憶される署名検証プログラム情報記憶
手段を備え、 前記署名検証実行手段は、前記入力された署名アルゴリ
ズム識別子を含む署名検証プログラム情報を前記署名検
証プログラム情報記憶手段から取得し、当該署名検証プ
ログラム情報の署名検証プログラムに含まれる作成日時
と検証プログラム保持サーバから取得された署名検証プ
ログラムに含まれる作成日時の新しい方の作成日時を含
む署名検証プログラムで署名データを検証することを特
徴とする請求項1ないし5のいずれかに記載の署名検証
装置。
6. The signature verification program includes a creation date and time of the signature verification program, and is a pair of a signature verification program and a signature algorithm identifier corresponding to a signature verification procedure described in the signature verification program. Signature verification program information storage means for storing program information, wherein the signature verification execution means acquires signature verification program information including the input signature algorithm identifier from the signature verification program information storage means, and verifies the signature. The signature data is verified by a signature verification program that includes the creation date and time included in the signature verification program of the program information and the newer creation date and time included in the signature verification program acquired from the verification program holding server. The signature verification device according to claim 1.
【請求項7】 前記署名検証実行手段による署名データ
の検証が成功したときは署名データは有効であると出力
し、一方で、署名データの検証が失敗したときは署名デ
ータは無効であると出力する検証結果出力手段を備える
ことを特徴とする請求項1ないし6のいずれかに記載の
署名検証装置。
7. The signature data is output as valid when the verification of the signature data by the signature verification executing unit is successful, while the signature data is output as invalid when the verification of the signature data fails. 7. The signature verification device according to claim 1, further comprising: a verification result output unit.
【請求項8】 署名データと署名対象データと署名アル
ゴリズム識別子と公開鍵証明書を入力する検証対象入力
手段を備えることを特徴とする請求項1ないし7のいず
れかに記載の署名検証装置。
8. The signature verification apparatus according to claim 1, further comprising verification target input means for inputting the signature data, the signature target data, the signature algorithm identifier, and the public key certificate.
【請求項9】 公開鍵と該公開鍵の鍵アルゴリズムに対
応する署名アルゴリズムに対応する署名検証手順の記載
されたプログラムである署名検証プログラムを保持する
検証プログラム保持サーバのアドレスである検証プログ
ラム保持サーバアドレスとを含む公開鍵証明書が認証局
から発行され、前記検証プログラム保持サーバに1ない
しは複数個の署名検証プログラムが該署名検証プログラ
ムに記載された署名検証手順に対応する署名アルゴリズ
ム識別子とともに格納されているときに、検証対象の署
名データとともに入力された公開鍵証明書から検証プロ
グラム保持サーバアドレスと公開鍵とを取得する証明書
内情報取得ステップと、この取得された検証プログラム
保持サーバアドレスによって特定される検証プログラム
保持サーバに接続し、前記署名データとともに入力され
た署名アルゴリズム識別子によって特定される署名アル
ゴリズムに対応する署名検証手順の記載された署名検証
プログラムを取得する署名検証プログラム取得ステップ
と、 この取得された署名検証プログラムに記載の署名検証手
順を、前記署名データとともに入力された署名対象デー
タと当該署名データと前記取得された公開鍵とに適用し
て、当該署名データが前記署名アルゴリズム識別子によ
って特定される署名アルゴリズムに対応する署名生成手
順を当該公開鍵と対をなす秘密鍵と当該署名対象データ
とに適用して生成されたデータであることを検証する署
名検証実行ステップとを備えることを特徴とする署名検
証方法。
9. A verification program holding server which is an address of a verification program holding server which holds a signature verification program which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A public key certificate including an address is issued from a certificate authority, and one or more signature verification programs are stored in the verification program holding server together with a signature algorithm identifier corresponding to the signature verification procedure described in the signature verification program. The certificate information acquisition step of acquiring the verification program holding server address and the public key from the public key certificate input together with the signature data to be verified, and the verification program holding server address acquired. Connected to the verification program holding server A signature verification program acquisition step of acquiring a signature verification program in which a signature verification procedure corresponding to a signature algorithm specified by the signature algorithm identifier input together with the signature data is described; A signature verification procedure is applied to the signature target data input together with the signature data, the signature data, and the acquired public key, and the signature data corresponds to the signature algorithm specified by the signature algorithm identifier. A signature verification method, comprising: a signature verification execution step of verifying that the data is generated by applying a generation procedure to a private key paired with the public key and the signature target data.
【請求項10】 前記署名検証プログラム取得ステップ
では、検証プログラム保持サーバから署名検証プログラ
ムに対応する署名検証プログラム認証情報を取得し、該
署名検証プログラム認証情報と予め記憶された署名検証
プログラム検証情報とを用いて署名検証プログラムを認
証することを特徴とする請求項9記載の署名検証方法。
10. The signature verification program acquisition step acquires signature verification program authentication information corresponding to the signature verification program from the verification program holding server, and the signature verification program authentication information and the signature verification program verification information stored in advance. 10. The signature verification method according to claim 9, wherein the signature verification program is authenticated using.
【請求項11】 検証プログラム保持サーバからサーバ
認証情報を取得し、該サーバ認証情報と予め記憶された
サーバ検証情報とを用いて当該検証プログラム保持サー
バを認証することを特徴とする請求9または10記載の
署名検証方法。
11. The verification program holding server is obtained by acquiring server authentication information from the verification program holding server and using the server authentication information and the server verification information stored in advance. Signature verification method described.
【請求項12】 前記署名検証実行ステップでは、前記
入力された署名アルゴリズム識別子を含む署名検証プロ
グラム情報が署名検証プログラム情報の記憶される署名
検証プログラム情報記憶手段に記憶されているか否かを
判定し、記憶されていると判定した場合には当該署名検
証プログラム情報から該署名検証プログラム情報に予め
含まれている署名検証プログラムを取得し、該取得した
署名検証プログラムで署名データを検証することを特徴
とする請求項9ないし11のいずれかに記載の署名検証
方法。
12. The signature verification execution step determines whether or not the signature verification program information including the input signature algorithm identifier is stored in a signature verification program information storage unit in which the signature verification program information is stored. When it is determined that the signature verification program is stored, the signature verification program included in the signature verification program information is acquired from the signature verification program information, and the signature data is verified by the acquired signature verification program. The signature verification method according to any one of claims 9 to 11.
【請求項13】 検証プログラム保持サーバから取得さ
れた署名検証プログラムと該署名検証プログラムに対応
する署名アルゴリズム識別子との組を署名検証プログラ
ム情報として記憶させる署名検証プログラム情報登録ス
テップを備えることを特徴とする請求9ないし12のい
ずれかに記載の署名検証方法。
13. A signature verification program information registration step for storing a set of a signature verification program acquired from a verification program holding server and a signature algorithm identifier corresponding to the signature verification program as signature verification program information. The signature verification method according to any one of claims 9 to 12.
【請求項14】 署名検証プログラムは該署名検証プロ
グラムの作成日時を含むものであり、 前記署名検証実行ステップでは、前記入力された署名ア
ルゴリズム識別子を含む署名検証プログラム情報を該署
名検証プログラム情報の記憶された署名検証プログラム
情報記憶手段から取得し、当該署名検証プログラム情報
の署名検証プログラムに含まれる作成日時と検証プログ
ラム保持サーバから取得された署名検証プログラムに含
まれる作成日時の新しい方の作成日時を含む署名検証プ
ログラムで署名データを検証することを特徴とする請求
項9ないし13のいずれかに記載の署名検証方法。
14. The signature verification program includes a creation date and time of the signature verification program, and in the signature verification execution step, signature verification program information including the input signature algorithm identifier is stored in the signature verification program information. The created date and time acquired from the signature verification program information storage means obtained and stored in the signature verification program of the signature verification program information and the creation date and time included in the signature verification program acquired from the verification program holding server 14. The signature verification method according to claim 9, further comprising verifying the signature data with a signature verification program including the signature verification program.
【請求項15】 前記署名検証実行ステップでの署名デ
ータの検証が成功したときは署名データは有効であると
出力し、一方で、署名データの検証が失敗したときは署
名データは無効であると出力する検証結果出力ステップ
を備えることを特徴とする請求項9ないし14のいずれ
かに記載の署名検証方法。
15. The signature data is output as valid when the verification of the signature data in the signature verification execution step is successful, while the signature data is invalid when the verification of the signature data fails. 15. The signature verification method according to claim 9, further comprising a verification result output step of outputting.
【請求項16】 署名データと署名対象データと署名ア
ルゴリズム識別子と公開鍵証明書を入力する検証対象入
力ステップを備えることを特徴とする請求項9ないし1
5のいずれかに記載の署名検証方法。
16. The method according to claim 9, further comprising a verification target input step for inputting the signature data, the signature target data, the signature algorithm identifier, and the public key certificate.
5. The signature verification method according to any one of 5 above.
【請求項17】 請求項9ないし16のいずれかに記載
の署名検証方法を実行させるコンピュータプログラム。
17. A computer program for executing the signature verification method according to claim 9. Description:
【請求項18】 請求項9ないし16のいずれかに記載
の署名検証方法を実行させるコンピュータプログラムを
記録した記録媒体。
18. A recording medium on which a computer program for executing the signature verification method according to claim 9 is recorded.
【請求項19】 公開鍵と該公開鍵の鍵アルゴリズムに
対応する署名アルゴリズムに対応する署名検証手順が記
載されたプログラムである署名検証プログラムを保持す
る検証プログラム保持サーバのアドレスである検証プロ
グラム保持サーバアドレスとを含む公開鍵証明書を発行
することを特徴とする認証局。
19. A verification program holding server which is an address of a verification program holding server which holds a signature verification program which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A certificate authority which issues a public key certificate including an address.
【請求項20】 公開鍵と該公開鍵の鍵アルゴリズムに
対応する署名アルゴリズムに対応する署名検証手順が記
載されたプログラムである署名検証プログラムを保持す
る検証プログラム保持サーバのアドレスである検証プロ
グラム保持サーバアドレスとを含む公開鍵証明書を発行
することを特徴とする公開鍵証明書発行方法。
20. A verification program holding server which is an address of a verification program holding server which holds a signature verification program which is a program in which a public key and a signature verification procedure corresponding to a signature algorithm corresponding to the key algorithm of the public key are described. A public key certificate issuing method, characterized in that a public key certificate including an address is issued.
JP2002126887A 2002-04-26 2002-04-26 Signature verification apparatus and method, computer program and recording medium storing the program, certificate authority and public key certificate issuing method Pending JP2003318891A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002126887A JP2003318891A (en) 2002-04-26 2002-04-26 Signature verification apparatus and method, computer program and recording medium storing the program, certificate authority and public key certificate issuing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002126887A JP2003318891A (en) 2002-04-26 2002-04-26 Signature verification apparatus and method, computer program and recording medium storing the program, certificate authority and public key certificate issuing method

Publications (1)

Publication Number Publication Date
JP2003318891A true JP2003318891A (en) 2003-11-07

Family

ID=29541172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002126887A Pending JP2003318891A (en) 2002-04-26 2002-04-26 Signature verification apparatus and method, computer program and recording medium storing the program, certificate authority and public key certificate issuing method

Country Status (1)

Country Link
JP (1) JP2003318891A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008099909A1 (en) * 2007-02-16 2008-08-21 Hitachi, Ltd. Ic tag system
KR20190128531A (en) * 2018-05-08 2019-11-18 한국과학기술원 Universal second factor authentication method and system based on sealing and remote attestation
JP2020088854A (en) * 2018-11-16 2020-06-04 トラストニック リミテッド Boot loader verification extension method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008099909A1 (en) * 2007-02-16 2008-08-21 Hitachi, Ltd. Ic tag system
JP2008205565A (en) * 2007-02-16 2008-09-04 Hitachi Ltd IC tag system
KR20190128531A (en) * 2018-05-08 2019-11-18 한국과학기술원 Universal second factor authentication method and system based on sealing and remote attestation
KR102078920B1 (en) 2018-05-08 2020-02-19 한국과학기술원 Universal second factor authentication method and system based on sealing and remote attestation
JP2020088854A (en) * 2018-11-16 2020-06-04 トラストニック リミテッド Boot loader verification extension method
JP7525253B2 (en) 2018-11-16 2024-07-30 トラストニック リミテッド Bootloader Verification Extension Method

Similar Documents

Publication Publication Date Title
US8185938B2 (en) Method and system for network single-sign-on using a public key certificate and an associated attribute certificate
US8775794B2 (en) System and method for end to end encryption
US7353383B2 (en) System and method for single session sign-on with cryptography
KR101054970B1 (en) A system, apparatus, method, and computer readable recording medium for authenticating a communication party using an electronic certificate containing personal information
US20020176582A1 (en) Technique for obtaining a single sign-on certificate from a foreign PKI system using an existing strong authentication PKI system
CN104038486B (en) System and method for realizing user login identification based on identification type codes
US11777743B2 (en) Method for securely providing a personalized electronic identity on a terminal
CN100383694C (en) Maintain privacy for transactions that can be performed by user equipment with a security module
WO2018145127A1 (en) Electronic identification verification methods and systems with storage of certification records to a side chain
KR20090041365A (en) A method of using a biological sampling device in conjunction with an authentication system, a computer readable medium having computer executable instructions for performing the method and a computer system accessing the authentication system
JP2007081482A (en) Terminal authentication method, apparatus thereof, and program
JP2002024177A (en) Electronic notarization system and method
US11082236B2 (en) Method for providing secure digital signatures
JP2020014168A (en) Electronic signature system, certificate issuing system, key management system, and electronic certificate issuing method
KR102157695B1 (en) Method for Establishing Anonymous Digital Identity
JP6983685B2 (en) Information processing system, client device, authentication / authorization server, control method and its program
JP5380368B2 (en) IC chip issuing system, IC chip issuing method, and IC chip issuing program
JP2004140636A (en) System, server, and program for sign entrustment of electronic document
CN118606918A (en) Authentication method, device, electronic device, storage medium and program product
CN118611920A (en) Electronic tender document processing method, device, electronic device and storage medium
JP3791169B2 (en) Authentication apparatus and method
JP2003318891A (en) Signature verification apparatus and method, computer program and recording medium storing the program, certificate authority and public key certificate issuing method
KR101933090B1 (en) System and method for providing electronic signature service
US12355903B2 (en) Method and device for authenticating a user with an application
CN115442046A (en) Signature method, signature device, electronic equipment and storage medium