WO2003049358A1 - A method and system for authenticating digital certificates - Google Patents

A method and system for authenticating digital certificates Download PDF

Info

Publication number
WO2003049358A1
WO2003049358A1 PCT/US2001/044568 US0144568W WO03049358A1 WO 2003049358 A1 WO2003049358 A1 WO 2003049358A1 US 0144568 W US0144568 W US 0144568W WO 03049358 A1 WO03049358 A1 WO 03049358A1
Authority
WO
WIPO (PCT)
Prior art keywords
forgery
digital certificate
public key
signature
user
Prior art date
Application number
PCT/US2001/044568
Other languages
French (fr)
Inventor
Steven A. Ruegnitz
Curt Vincent
Andrew Sherman
Cesar Garcia
Marla Dans
Carson Gaspar
Original Assignee
Morgan Stanley
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 Morgan Stanley filed Critical Morgan Stanley
Priority to PCT/US2001/044568 priority Critical patent/WO2003049358A1/en
Priority to EP01990752A priority patent/EP1461891A4/en
Priority to AU2002230514A priority patent/AU2002230514A1/en
Priority to JP2003550428A priority patent/JP2005512395A/en
Publication of WO2003049358A1 publication Critical patent/WO2003049358A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Definitions

  • the following invention relates to secure communications and, in particular, to a method and system for verifying the authenticity of digital certificates.
  • PKI Public Key Infrastructure
  • a public/private key pair that is unique to each user in the PKI system.
  • Each user's private key is stored locally and maintained confidentially by the user whereas the public key is made publicly available.
  • the public/private key pair may then be used for authenticating and encrypting communications within the PKI system.
  • a hash function is applied to the message to be sent and the resulting message digest is then signed with the sender's private key thereby forming a digital signature.
  • the recipient Upon receiving the message.and the associated digital signature, the recipient applies the sender's public key to the digital signature to retrieve the message digest. If the message digest retrieved from the digital signature matches the message digest the recipient calculates directly, then the recipient may be certain that the message came from the sender having control over the corresponding private key.
  • the public/private key pair of the PKI system is also used to encrypt messages.
  • the sender uses the intended recipient's public key to encode the message so that only the recipient can decode the message with the recipient's corresponding private key.
  • the reliability of digital signature verification and message encryption depends on the reliability of the recipient's copy of the sender's public key (and the sender's copy of the recipient's public key for the case of encryption).
  • the sender transmits the sender's public key along with the original message.
  • an impostor to undermine the digital signature technique by creating a message purportedly from the original sender and encrypting a digest of the message according to a different private key.
  • the impostor would then send the message to the recipient with the new encrypted digest and with the public key corresponding to the impostor's private key.
  • the recipient will incorrectly conclude that the message came from the original sender.
  • System 100 includes a browser device 101 operated by a user.
  • Device 101 may be, for example, a personal computer operating browser software that generates a public/private key pair at the user's request.
  • the public key is then sent to a Registration Authority (RA) server 102 that initiates the process of forming a digital certificate for use with the user's public key.
  • RA server 102 may authenticate the requesting user by accessing a user authentication database 103.
  • RA server 102 may access a directory 104, such as an LDAP, for retrieving user identifying information such as, by way of non-limiting example, the user's name and email address, to be included in the digital certificate.
  • RA server 102 then formulates a Certificate Signing Request (CSR) that includes the user's public key and identifying information and the CSR is then signed with a private key generated by private key card 105 associated with RA server 102.
  • RA server 102 then encrypts the CSR with a public key belonging to a Certificate Authority (CA) 106. The encrypted CSR is then sent to CA 106 for creating the requested digital certificate.
  • CA Certificate Authority
  • CA 106 decrypts the CSR with its private key, verifies the CSR with the public key of RA server 102 (corresponding to the private key from card 105) and generates a digital certificate for the requesting user. The digital certificate is then signed, encrypted and returned to RA server 102 so that it is available for use by the user.
  • An example of a Certificate Authority that creates digital certificates in this manner is Verisign (www.verisign.com).
  • a drawback of the certification scheme described above is that in cases where the Certificate Authority is operated by a third-party (i.e. not the sender or recipient), it requires that the recipient trust the Certificate Authority in verifying the sender's digital certificate. It is possible, however, for the Certificate Authority to associate with a digital certificate a public/private key pair and represent that the particular digital certificate belongs to a certain entity when in fact neither the digital certificate nor the public/private key pair belong to the entity. The CA can then use the digital certificate and pose as the entity in communications with recipients. The possibility of an untrustworthy CA can therefore undermine secure communications over the Internet.
  • the present invention is directed to overcoming the drawbacks of the prior art.
  • a method and system for authenticating a digital certificate issued by a certificate authority for being used in conjunction with a user's public key and initially includes the step signing a message digest derived from the public key with an anti- forgery private key thereby forming an anti-forgery signature.
  • the anti-forgery signature is inserted into a request for the digital certificate.
  • the request for the digital certificate is forwarded to the certificate authority.
  • the step of signing the public key with an anti-forgery signature includes the steps of decoding the public key, extracting a portion of the decoded public key, signing the portion with the anti-forgery key thereby forming the anti-forgery signature and encoding the anti-forgery signature.
  • the digital certificate has an object identifier field and wherein the step of inserting the anti-forgery signature into a request for the digital certificate includes the step of designating the anti-forgery signature for placement into the object identifier field of the digital certificate.
  • the request for the digital certificate includes the user's public key.
  • the request for the digital certificate includes the user's identifying information.
  • the identifying information includes the user's name and email address.
  • the step of forwarding the request for the digital certificate to the certificate authority includes the steps of signing the request for the digital certificate with a private key and encrypting the request for the digital certificate with a public key belonging to the certificate authority.
  • the digital certificate including the anti-forgery signature in the object identifier field is generated by the certificate authority.
  • the digital certificate including the anti-forgery signature in the object identifier field is received from the certificate authority.
  • the anti-forgery signature is retrieved from the object identifier field of the digital certificate.
  • a first message digest based on the anti-forgery signature and a corresponding anti-forgery public key is generated.
  • a second message digest based on the hash function and the user's public key is generated.
  • the step of retrieving the at least a portion of the public key from the anti-forgery signature includes the step of decoding the anti-forgery signature.
  • the step of decoding the public key includes the step of decoding said public key using base64 and the step of encoding the anti-forgery signature includes the step of encoding the anti-forgery signature using base64.
  • the step of decoding the anti-forgery signature includes the step of decoding the anti-forgery signature using base64.
  • a method for authenticating a digital certificate issued by a certificate authority where the digital certificate being used in conjunction with a user's public key, the digital certificate includes an anti-forgery signature, the anti forgery signature is formed from at least a portion of the user's public key, an anti-forgery private key and a hash function and the anti-forgery private key has a corresponding anti-forgery public key.
  • a first message digest is generated based on the anti-forgery signature and the corresponding anti-forgery public key.
  • a second message digest is generated based on the hash function and the user's public key.
  • it is determined that the digital certificate is authentic if the first message digest equals the second message digest.
  • a system for authenticating a digital certificate issued by a certificate authority where the digital certificate is used in conjunction with a user's public key.
  • the system includes an anti-forgery private key card for generating an anti-forgery private key.
  • the system also includes a registration authority server for issuing a request for the digital certificate to the certificate authority.
  • the registration authority forms an anti-forgery signature from at least a portion of the user's public key, an anti-forgery private key and a hash function. The registration authority then inserts the anti- forgery signature into the request for the digital certificate and forwards the request for the digital certificate to the certificate authority.
  • the digital certificate has an object identifier field and the anti-forgery signature is designated by the registration authority for placement into the object identifier field of the digital certificate.
  • the registration authority signs the request for the digital certificate with a private key and encrypts the request with the certificate authority's public key before forwarding the request to the certificate authority.
  • the registration authority receives from the certificate authority the digital certificate including the anti-forgery signature.
  • the system includes an authentication engine that retrieves the anti-forgery signature from the object identifier field of the digital certificate.
  • the authentication engine also generates a first message digest based on the anti- forgery signature and the corresponding anti-forgery public key.
  • the authentication then generates a second message digest based on the hash function and the user's public key.
  • the authentication engine determines that the digital certificate is authentic if the first message digest equals the second message digest.
  • a computer executable program code residing on a computer-readable medium wherein the program code comprises instructions for causing the computer to authenticate a digital certificate issued by a certificate authority, the digital certificate being used in conjunction with a user's public key; sign a message digest derived from at least a portion of the public key with an anti-forgery private key thereby forming an anti-forgery signature; insert the anti-forgery signature into a request for the digital certificate and forward the request for the digital certificate to the certificate authority.
  • FIG. 1 is a block diagram of a prior art system for creating a digital certificate
  • FIG. 2 is a block diagram of a system for authenticating a digital certificate according to the present invention
  • FIG. 3 is a flowchart of the process by which a digital certificate that can be authenticated is formed according to the present invention
  • FIG. 4 is a flowchart of the process by which an anti-forgery signature is formed according to the present invention.
  • FIG. 5 is a flowchart of the process by which a digital certificate formed in accordance with the present invention may be authenticated.
  • FIG. 2 there is shown a block diagram of a system 200 for authenticating a digital certificate according to the present invention. Elements that are similar to elements contained in FIG. 1 are identically labeled and a detailed description thereof is omitted.
  • FIG. 2 includes a Registration Authority (RA) server 201 that includes an anti-forgery private key card 202.
  • Anti-forgery private key card 202 generates an anti-forgery private/public key that is used by RA server 201 for authenticating digital certificates, as will be described below.
  • anti-forgery private key card 202 is a card that is inserted into a card reader and that generates a private/public key.
  • An example of such a card and card reader is available from Chrysalis under the brand name of Luna (http://www.chrysalis-its.com/products/luna_ra.html).
  • each of private key card 105 and anti-forgery private key card 202 are Luna cards that are installed in a card reader for providing RA server 201 with private keys.
  • FIG. 3 there is shown a flowchart of the process by which a digital certificate that can be later authenticated is formed.
  • RA server 201 receives a request for a digital certificate from a user operating browser device 101.
  • Step 32 RA server 201 prepares a CSR that is forwarded to CA 106.
  • RA server 201 forms an anti-forgery digital signature for inclusion in the CSR (Step 33).
  • Step 41 the user's public key, which is encoded in a base64 format (in order to conform with the HTTP Transport Protocol), is decoded by RA server 201 using known decoding techniques. Alternatively, if an OpenSSL communication protocol is being used, then base64 encoding is not required.
  • Step 42 a hash function is applied to the public key resulting in a message digest.
  • the hash function is an MD5 hash function that generates an MD5 hash.
  • RA server 201 generates an anti-forgery signature by signing the message digest with the anti-forgery private key generated by anti-forgery private key card 202 using known techniques such as, by way of non-limiting example, RSA's signature algorithm, elliptic curve or ElGammal.
  • RA server 201 base64 encodes the anti- forgery signature so that the anti-forgery signature may be communicated using web-based protocols (such as HTTP). Alternatively, if an OpenSSL communication protocol is being used, then base64 decoding is not required.
  • RA server 201 places the anti- forgery signature in the CSR request for inclusion in the digital certificate.
  • RA server 201 designates the anti -forgery field for placement in an Object IDentifier (OID) field of the digital certificate.
  • OID Object IDentifier
  • Use of the OID field is preferred as opposed to placement of the anti-forgery field in the Distinguished Name (DN) section that includes unique identifying information about the user such as the user's name and email address.
  • DN Distinguished Name
  • the anti-forgery field is placed in the DN section and a user then requests (from RA server 201) a second digital certificate using a second public key, then the inclusion of an anti- forgery signature based on that second public key in the DN section will distinguish this request from a previous request and therefore enable the user to get a second digital certificate.
  • the benefit of placing the anti-forgery signature in the OID field is that the contents of the OID field are not checked for uniqueness by RA server 201 or CA 106 so placing the anti-forgery signature in an OID field will not enable a user to get a second digital certificate.
  • Step 35 RA server 201 signs the CSR with a private key generated by private key card 105 and encrypts the CSR with a public key belonging to CA 106.
  • Step 36 RA server 201 communicates the CSR to CA 106 using any known communications medium and protocol, such as the Internet.
  • CA 106 decrypts the CSR with its private key and verifies the CSR with the public key of RA server 201.
  • Step 38 CA 106 generates a digital certificate, using known techniques, based on the user information provided in the CSR. The resulting digital certificate thus includes the anti-forgery signature being placed in an OID field according to a specification provided for in the particular CSR.
  • Step 39 CA 106 signs the digital certificate with its private key and encrypts the digital certificate with the public key of RA server 201.
  • Step 40 RA server 201 receives the digital certificate from CA 106, decrypts and verifies the digital certificate using its private key and the public key of CA 106, respectively, and makes the digital certificate available to the requesting user.
  • a digital certificate that includes an anti-forgery signature can have only been created based on a CSR originating from RA server 201. Even if CA 106 decides to revoke the digital certificate and reissue another digital certificate in its place, the anti- forgery signature of the original digital certificate cannot be recreated because the anti- forgery signature corresponds only to the public/private key pair associated with the original digital certificate. Accordingly, a digital certificate may be determined to be authentic, i.e., have originated from RA server 201, if it contains a valid anti-forgery signature in the OID field.
  • RA server 201 includes an authentication engine 203 that implements the process of validating an anti-forgery signature for authenticating a digital certificate.
  • the authentication process begins with Step 51 in which the value contained in the OID field of the digital certificate to be authenticated is retrieved.
  • Step 52 the anti-forgery signature is base64 decoded.
  • Step 53 the particular user's public key is retrieved from the digital certificate being authenticated and, in Step 54, the encoded public key is base64 decoded for extracting the SubjectPublicKeylnfo value.
  • SubjectPublicKeylnfo is the name of the ASN.l data format for public keys as defined by the X.509 standard.
  • authentication engine 203 generates a first message digest based on the decoded signature value to be verified and the anti-forgery public key.
  • Step 56 a second message digest is formed from the SubjectPublicKeylnfo value using the hash function that was used to originally create the anti-forgery signature in the OID field.
  • the first message digest is compared to the second message digest and, if in Step 58, they are found to be equal, then the digital certificate is authentic. If, however, the first message digest and the second message digest are not equal, then the digital certificate is not authentic (i.e., was not created pursuant to a CSR originating from RA server 201) and was forged by a third party having access to the user's public key, identifying information and the private key of CA 106.
  • authentication engine 203 is a software program that runs on RA server 201 for performing the authentication process.
  • authentication engine 203 is a separate device, such as a computer, that is in communication with RA server 201 for receiving the anti-forgery key required for the authentication process.
  • a system and method for verifying the authenticity of digital certificates.
  • an anti-forgery signature that is formed from an anti-forgery private key that is only known to RA server 201, it can be determined whether the digital certificate was created pursuant to a CSR originating from RA server 201. Therefore, if a valid anti-forgery signature is found in the OID field, the digital certificate is deemed authentic. If a valid anti-forgery signature is not found in the OID field, then the digital certificate is a forgery.
  • the anti-forgery signature may be used to verify the authenticity of digital certificates in situations where a third-party Certificate Authority is used.
  • Suitable processors include, by way of example, both general and special purpose microprocessors.
  • alternate embodiments of the invention that implement the system in hardware, firmware or a combination of both hardware and software, as well as distributing modules and/or data in a different fashion will be apparent to those skilled in the art and are also within the scope of the invention.
  • a conventional database management system such as, by way of non-limiting example, Sybase, Oracle and DB2, as a platform for implementing the present invention.
  • network access devices can comprise a personal computer executing an operating system such as Microsoft WindowsTM, UnixTM, or Apple Mac OSTM, as well as software applications, such as a JAVA program or a web browser.
  • Browser device 101 can also be a terminal device, a palm-type computer, mobile WEB access device or other device that can adhere to a point-to-point or network communication protocol such as the Internet protocol.
  • Computers and network access devices can include a processor, RAM and/or ROM memory, a display capability, an input device and hard disk or other relatively permanent storage. Accordingly, other embodiments are within the scope of the following claims.

Abstract

A method is provided for authenticating a digital certificate issued by a certificate authority (200) for being used in conjunction with a user's public key and initially includes the step of signing a message digest derived form said public key with an anti-forgery private key thereby forming an anti-forgery signature. Next, the anti-forgery signature is inserted into a request for the digital certificate. Finally, the request for the digital certificate is forwarded to the certificate authority (200).

Description

A METHOD AND SYSTEM FOR AUTHENTICATING DIGITAL CERTIFICATES
BACKGROUND
The following invention relates to secure communications and, in particular, to a method and system for verifying the authenticity of digital certificates.
Secure communications are essential for delivering business-critical applications over the Internet. The element that has emerged as the foundation for secure communications over the Internet is the Public Key Infrastructure (PKI). PKI facilitates the authentication and encryption of messages transmitted over a public medium, such as the Internet.
At the heart of the PKI system is a public/private key pair that is unique to each user in the PKI system. Each user's private key is stored locally and maintained confidentially by the user whereas the public key is made publicly available. The public/private key pair may then be used for authenticating and encrypting communications within the PKI system.
To authenticate a message within a PKI system, a hash function is applied to the message to be sent and the resulting message digest is then signed with the sender's private key thereby forming a digital signature. Upon receiving the message.and the associated digital signature, the recipient applies the sender's public key to the digital signature to retrieve the message digest. If the message digest retrieved from the digital signature matches the message digest the recipient calculates directly, then the recipient may be certain that the message came from the sender having control over the corresponding private key.
In addition to authentication, the public/private key pair of the PKI system is also used to encrypt messages. To encrypt a message for secure transmission to a recipient, the sender uses the intended recipient's public key to encode the message so that only the recipient can decode the message with the recipient's corresponding private key. The reliability of digital signature verification and message encryption depends on the reliability of the recipient's copy of the sender's public key (and the sender's copy of the recipient's public key for the case of encryption). Typically, the sender transmits the sender's public key along with the original message. As a result, it is possible for an impostor to undermine the digital signature technique by creating a message purportedly from the original sender and encrypting a digest of the message according to a different private key. The impostor would then send the message to the recipient with the new encrypted digest and with the public key corresponding to the impostor's private key. By using the public key that came with the message to verify the digital signature, the recipient will incorrectly conclude that the message came from the original sender.
One known method for preventing this kind of subversion involves the use of digital certificates, for example as set forth in International Telecommunication Union, "Recommendation X.509--Information Technology— Open Systems Interconnection— the Directory: Authentication Framework" November 1993 ("Recommendation X.509"), incorporated herein by reference. According to this standard, the sender transmits the original message and encrypted digest in conjunction with a digital certificate containing the sender's public key.
Referring now to FIG. 1, there is shown a block diagram of a prior art system 100 for creating a digital certificate. System 100 includes a browser device 101 operated by a user. Device 101 may be, for example, a personal computer operating browser software that generates a public/private key pair at the user's request. The public key is then sent to a Registration Authority (RA) server 102 that initiates the process of forming a digital certificate for use with the user's public key. RA server 102 may authenticate the requesting user by accessing a user authentication database 103. In addition, RA server 102 may access a directory 104, such as an LDAP, for retrieving user identifying information such as, by way of non-limiting example, the user's name and email address, to be included in the digital certificate. RA server 102 then formulates a Certificate Signing Request (CSR) that includes the user's public key and identifying information and the CSR is then signed with a private key generated by private key card 105 associated with RA server 102. RA server 102 then encrypts the CSR with a public key belonging to a Certificate Authority (CA) 106. The encrypted CSR is then sent to CA 106 for creating the requested digital certificate. CA 106 decrypts the CSR with its private key, verifies the CSR with the public key of RA server 102 (corresponding to the private key from card 105) and generates a digital certificate for the requesting user. The digital certificate is then signed, encrypted and returned to RA server 102 so that it is available for use by the user. An example of a Certificate Authority that creates digital certificates in this manner is Verisign (www.verisign.com). Once the user's digital certificate is created, the user sends an intended recipient the user's digital certificate along with the message. The recipient can then verify the sender's identity by requesting verification of the sender's digital certificate from CA 106.
A drawback of the certification scheme described above is that in cases where the Certificate Authority is operated by a third-party (i.e. not the sender or recipient), it requires that the recipient trust the Certificate Authority in verifying the sender's digital certificate. It is possible, however, for the Certificate Authority to associate with a digital certificate a public/private key pair and represent that the particular digital certificate belongs to a certain entity when in fact neither the digital certificate nor the public/private key pair belong to the entity. The CA can then use the digital certificate and pose as the entity in communications with recipients. The possibility of an untrustworthy CA can therefore undermine secure communications over the Internet.
Accordingly, it is desirable to provide a system and method for verifying the authenticity of digital certificates. SUMMARY OF THE INVENTION
The present invention is directed to overcoming the drawbacks of the prior art. Under the present invention a method and system is provided for authenticating a digital certificate issued by a certificate authority for being used in conjunction with a user's public key and initially includes the step signing a message digest derived from the public key with an anti- forgery private key thereby forming an anti-forgery signature. Next, the anti-forgery signature is inserted into a request for the digital certificate. Finally, the request for the digital certificate is forwarded to the certificate authority.
In an exemplary embodiment, the step of signing the public key with an anti-forgery signature includes the steps of decoding the public key, extracting a portion of the decoded public key, signing the portion with the anti-forgery key thereby forming the anti-forgery signature and encoding the anti-forgery signature.
In another exemplary embodiment, the digital certificate has an object identifier field and wherein the step of inserting the anti-forgery signature into a request for the digital certificate includes the step of designating the anti-forgery signature for placement into the object identifier field of the digital certificate.
In yet another exemplary embodiment, the request for the digital certificate includes the user's public key.
In still yet another exemplary embodiment, the request for the digital certificate includes the user's identifying information.
In an exemplary embodiment, the identifying information includes the user's name and email address.
In another exemplary embodiment, the step of forwarding the request for the digital certificate to the certificate authority includes the steps of signing the request for the digital certificate with a private key and encrypting the request for the digital certificate with a public key belonging to the certificate authority.
In another exemplary embodiment, the digital certificate including the anti-forgery signature in the object identifier field is generated by the certificate authority.
In yet another exemplary embodiment, the digital certificate including the anti-forgery signature in the object identifier field is received from the certificate authority.
In still yet another exemplary embodiment, the anti-forgery signature is retrieved from the object identifier field of the digital certificate. Next, a first message digest based on the anti-forgery signature and a corresponding anti-forgery public key is generated. Next, a second message digest based on the hash function and the user's public key is generated. Finally, it is determined that the digital certificate is authentic if the first message digest equals the second message digest.
In an exemplary embodiment, the step of retrieving the at least a portion of the public key from the anti-forgery signature includes the step of decoding the anti-forgery signature.
In another exemplary embodiment, the step of decoding the public key includes the step of decoding said public key using base64 and the step of encoding the anti-forgery signature includes the step of encoding the anti-forgery signature using base64.
In yet another exemplary embodiment, the step of decoding the anti-forgery signature includes the step of decoding the anti-forgery signature using base64.
Under the present invention, a method for authenticating a digital certificate issued by a certificate authority where the digital certificate being used in conjunction with a user's public key, the digital certificate includes an anti-forgery signature, the anti forgery signature is formed from at least a portion of the user's public key, an anti-forgery private key and a hash function and the anti-forgery private key has a corresponding anti-forgery public key. According to the method, a first message digest is generated based on the anti-forgery signature and the corresponding anti-forgery public key. Next, a second message digest is generated based on the hash function and the user's public key. Finally, it is determined that the digital certificate is authentic if the first message digest equals the second message digest.
Under the present invention, a system is provided for authenticating a digital certificate issued by a certificate authority where the digital certificate is used in conjunction with a user's public key. The system includes an anti-forgery private key card for generating an anti-forgery private key. The system also includes a registration authority server for issuing a request for the digital certificate to the certificate authority. The registration authority forms an anti-forgery signature from at least a portion of the user's public key, an anti-forgery private key and a hash function. The registration authority then inserts the anti- forgery signature into the request for the digital certificate and forwards the request for the digital certificate to the certificate authority.
In an exemplary embodiment, the digital certificate has an object identifier field and the anti-forgery signature is designated by the registration authority for placement into the object identifier field of the digital certificate.
In another exemplary embodiment, includes a private key and wherein the registration authority signs the request for the digital certificate with a private key and encrypts the request with the certificate authority's public key before forwarding the request to the certificate authority.
In yet another exemplary embodiment, the registration authority receives from the certificate authority the digital certificate including the anti-forgery signature.
In still yet another exemplary embodiment, the system includes an authentication engine that retrieves the anti-forgery signature from the object identifier field of the digital certificate. The authentication engine also generates a first message digest based on the anti- forgery signature and the corresponding anti-forgery public key. The authentication then generates a second message digest based on the hash function and the user's public key. The authentication engine then determines that the digital certificate is authentic if the first message digest equals the second message digest.
Under the present invention, a computer executable program code residing on a computer-readable medium is provided wherein the program code comprises instructions for causing the computer to authenticate a digital certificate issued by a certificate authority, the digital certificate being used in conjunction with a user's public key; sign a message digest derived from at least a portion of the public key with an anti-forgery private key thereby forming an anti-forgery signature; insert the anti-forgery signature into a request for the digital certificate and forward the request for the digital certificate to the certificate authority.
Accordingly, a system and method is provided for verifying the authenticity of digital certificates.
The invention accordingly comprises the features of construction, combination of elements and arrangement of parts that will be exemplified in the following detailed disclosure, and the scope of the invention will be indicated in the claims. Other features and advantages of the invention will be apparent from the description, the drawings and the claims.
DESCRIPTION OF THE DRAWINGS
For a fuller understanding of the invention, reference is made to the following description taken in conjunction with the accompanying drawings, in which:
FIG. 1 is a block diagram of a prior art system for creating a digital certificate; FIG. 2 is a block diagram of a system for authenticating a digital certificate according to the present invention;
FIG. 3 is a flowchart of the process by which a digital certificate that can be authenticated is formed according to the present invention;
FIG. 4 is a flowchart of the process by which an anti-forgery signature is formed according to the present invention; and
FIG. 5 is a flowchart of the process by which a digital certificate formed in accordance with the present invention may be authenticated.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Referring now to FIG. 2, there is shown a block diagram of a system 200 for authenticating a digital certificate according to the present invention. Elements that are similar to elements contained in FIG. 1 are identically labeled and a detailed description thereof is omitted.
FIG. 2 includes a Registration Authority (RA) server 201 that includes an anti-forgery private key card 202. Anti-forgery private key card 202 generates an anti-forgery private/public key that is used by RA server 201 for authenticating digital certificates, as will be described below. In an exemplary embodiment, anti-forgery private key card 202 is a card that is inserted into a card reader and that generates a private/public key. An example of such a card and card reader is available from Chrysalis under the brand name of Luna (http://www.chrysalis-its.com/products/luna_ra.html). In an exemplary embodiment, each of private key card 105 and anti-forgery private key card 202 are Luna cards that are installed in a card reader for providing RA server 201 with private keys. Referring now to FIG. 3, there is shown a flowchart of the process by which a digital certificate that can be later authenticated is formed. Initially, in Step 31, RA server 201 receives a request for a digital certificate from a user operating browser device 101. Next, in Step 32, RA server 201 prepares a CSR that is forwarded to CA 106. In addition to including the user's name, email address and public key, RA server 201 forms an anti-forgery digital signature for inclusion in the CSR (Step 33).
Referring now to FIG. 4, there is shown a flowchart of the process by which an anti- forgery signature is formed by RA server 201. Initially, in Step 41, the user's public key, which is encoded in a base64 format (in order to conform with the HTTP Transport Protocol), is decoded by RA server 201 using known decoding techniques. Alternatively, if an OpenSSL communication protocol is being used, then base64 encoding is not required. Next, in Step 42, a hash function is applied to the public key resulting in a message digest. In an exemplary embodiment, the hash function is an MD5 hash function that generates an MD5 hash. Next, in Step 43, RA server 201 generates an anti-forgery signature by signing the message digest with the anti-forgery private key generated by anti-forgery private key card 202 using known techniques such as, by way of non-limiting example, RSA's signature algorithm, elliptic curve or ElGammal. In Step 44, RA server 201 base64 encodes the anti- forgery signature so that the anti-forgery signature may be communicated using web-based protocols (such as HTTP). Alternatively, if an OpenSSL communication protocol is being used, then base64 decoding is not required.
Once the anti-forgery signature is formed, in Step 34 RA server 201 places the anti- forgery signature in the CSR request for inclusion in the digital certificate. In an exemplary embodiment, RA server 201 designates the anti -forgery field for placement in an Object IDentifier (OID) field of the digital certificate. Use of the OID field is preferred as opposed to placement of the anti-forgery field in the Distinguished Name (DN) section that includes unique identifying information about the user such as the user's name and email address. If the anti-forgery field is placed in the DN section and a user then requests (from RA server 201) a second digital certificate using a second public key, then the inclusion of an anti- forgery signature based on that second public key in the DN section will distinguish this request from a previous request and therefore enable the user to get a second digital certificate. The benefit of placing the anti-forgery signature in the OID field is that the contents of the OID field are not checked for uniqueness by RA server 201 or CA 106 so placing the anti-forgery signature in an OID field will not enable a user to get a second digital certificate.
Next, in Step 35, RA server 201 signs the CSR with a private key generated by private key card 105 and encrypts the CSR with a public key belonging to CA 106. In Step 36, RA server 201 communicates the CSR to CA 106 using any known communications medium and protocol, such as the Internet. Next, in Step 37, CA 106 decrypts the CSR with its private key and verifies the CSR with the public key of RA server 201. In Step 38, CA 106 generates a digital certificate, using known techniques, based on the user information provided in the CSR. The resulting digital certificate thus includes the anti-forgery signature being placed in an OID field according to a specification provided for in the particular CSR. Next, in Step 39, CA 106 signs the digital certificate with its private key and encrypts the digital certificate with the public key of RA server 201. Finally, in Step 40, RA server 201 receives the digital certificate from CA 106, decrypts and verifies the digital certificate using its private key and the public key of CA 106, respectively, and makes the digital certificate available to the requesting user.
Because the anti-forgery private key is only known to RA server 201 and the anti- forgery signature is formed by signing the message digest of the user's public key with the anti-forgery private key, a digital certificate that includes an anti-forgery signature can have only been created based on a CSR originating from RA server 201. Even if CA 106 decides to revoke the digital certificate and reissue another digital certificate in its place, the anti- forgery signature of the original digital certificate cannot be recreated because the anti- forgery signature corresponds only to the public/private key pair associated with the original digital certificate. Accordingly, a digital certificate may be determined to be authentic, i.e., have originated from RA server 201, if it contains a valid anti-forgery signature in the OID field.
Referring now to FIG. 5, there is shown a flowchart of the process by which a digital certificate formed in accordance with the present invention may be authenticated. Included in RA server 201 is an authentication engine 203 that implements the process of validating an anti-forgery signature for authenticating a digital certificate. The authentication process begins with Step 51 in which the value contained in the OID field of the digital certificate to be authenticated is retrieved.
Next, in Step 52, the anti-forgery signature is base64 decoded. In Step 53, the particular user's public key is retrieved from the digital certificate being authenticated and, in Step 54, the encoded public key is base64 decoded for extracting the SubjectPublicKeylnfo value. (SubjectPublicKeylnfo is the name of the ASN.l data format for public keys as defined by the X.509 standard). Next, in Step 55, authentication engine 203 generates a first message digest based on the decoded signature value to be verified and the anti-forgery public key. Next, in Step 56, a second message digest is formed from the SubjectPublicKeylnfo value using the hash function that was used to originally create the anti-forgery signature in the OID field. Next, in- Step 57, the first message digest is compared to the second message digest and, if in Step 58, they are found to be equal, then the digital certificate is authentic. If, however, the first message digest and the second message digest are not equal, then the digital certificate is not authentic (i.e., was not created pursuant to a CSR originating from RA server 201) and was forged by a third party having access to the user's public key, identifying information and the private key of CA 106.
In an exemplary embodiment, authentication engine 203 is a software program that runs on RA server 201 for performing the authentication process. Alternatively, authentication engine 203 is a separate device, such as a computer, that is in communication with RA server 201 for receiving the anti-forgery key required for the authentication process.
Accordingly, a system and method is provided for verifying the authenticity of digital certificates. By including in the OID field of the digital certificate an anti-forgery signature that is formed from an anti-forgery private key that is only known to RA server 201, it can be determined whether the digital certificate was created pursuant to a CSR originating from RA server 201. Therefore, if a valid anti-forgery signature is found in the OID field, the digital certificate is deemed authentic. If a valid anti-forgery signature is not found in the OID field, then the digital certificate is a forgery. Thus, the anti-forgery signature may be used to verify the authenticity of digital certificates in situations where a third-party Certificate Authority is used.
A number of embodiments of the present invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. Based on the above description, it will be obvious to one of ordinary skill to implement the system and methods of the present invention in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. Each computer program may be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language if desired; and in any case, the language may be a compiled or interpreted language. Suitable processors include, by way of example, both general and special purpose microprocessors. Furthermore, alternate embodiments of the invention that implement the system in hardware, firmware or a combination of both hardware and software, as well as distributing modules and/or data in a different fashion will be apparent to those skilled in the art and are also within the scope of the invention. In addition, it will be obvious to one of ordinary skill to use a conventional database management system such as, by way of non-limiting example, Sybase, Oracle and DB2, as a platform for implementing the present invention. Also, network access devices can comprise a personal computer executing an operating system such as Microsoft Windows™, Unix™, or Apple Mac OS™, as well as software applications, such as a JAVA program or a web browser. Browser device 101 can also be a terminal device, a palm-type computer, mobile WEB access device or other device that can adhere to a point-to-point or network communication protocol such as the Internet protocol. Computers and network access devices can include a processor, RAM and/or ROM memory, a display capability, an input device and hard disk or other relatively permanent storage. Accordingly, other embodiments are within the scope of the following claims.
It will thus be seen that the objects set forth above, among those made apparent from the preceding description, are efficiently attained and, since certain changes may be made in carrying out the above process, in a described product, and in the construction set forth without departing from the spirit and scope of the invention, it is intended that all matter contained in the above description shown in the accompanying drawing shall be interpreted as illustrative and not in a limiting sense.
It is also to be understood that the following claims are intended to cover all of the generic and specific features of the invention herein described, and all statements of the scope of the invention, which, as a matter of language, might be said to fall therebetween.

Claims

1. A method for authenticating a digital certificate issued by a certificate authority, said digital certificate being associated with a user's public key, comprising the steps of:
signing a message digest derived from said public key with an anti-forgery private key thereby forming an anti-forgery signature;
inserting said anti-forgery signature into a request for said digital certificate;
forwarding said request for said digital certificate to said certificate authority.
2. The method of claim 2, wherein the step of signing includes the steps of:
decoding said public key;
applying a hash function to said decoded public key thereby forming said message digest;
signing said message digest with said anti-forgery key thereby forming said anti- forgery signature;
encoding said anti-forgery signature.
3. The method of claim 2, wherein said digital certificate has an object identifier field and wherein the step of inserting said anti-forgery signature into a request for said digital certificate includes the step of:
designating said anti-forgery signature for placement into said object identifier field of said digital certificate.
4. The method of claim 1, wherein said request for said digital certificate includes said user's public key.
5. The method of claim 1, wherein said request for said digital certificate includes said user's identifying information.
6. The method of claim 5, wherein said identifying information includes the user's name and email address.
7. The method of claim 1, wherein the step of forwarding said request for said digital certificate to said certificate authority includes the steps of:
signing said request for said digital certificate with a private key; and
encrypting said request for said digital certificate with a public key belonging to said certificate authority.
8. The method of claim 3, further comprising the step of:
creating said digital certificate including said anti-forgery signature in said object identifier field.
9. The method of claim 3, further comprising the step of:
receiving from said certificate authority said digital certificate including said anti- forgery signature in said object identifier field.
10. The method of claim 9, wherein said anti-forgery private key has a corresponding anti-forgery public key, the method further comprising the steps of:
retrieving said anti-forgery signature from said object identifier field of said digital certificate;
generating a first message digest based on said anti-forgery signature and said corresponding anti-forgery public key;
generating a second message digest based on said hash function and said user's public key; and determining that said digital certificate is authentic if said first message digest equals said second message digest.
11. The method of claim 10, wherein the step of retrieving said at least a portion of said public key from said anti-forgery signature includes the step of:
decoding said anti-forgery signature.
12. The method of claim 2, wherein the step of decoding said public key includes the step of:
decoding said public key using base64;
and wherein the step of encoding said anti-forgery signature includes the step of:
encoding said anti-forgery signature using base64.
13. The method of claim 11 , wherein the step of decoding said anti-forgery signature includes the step of:
decoding said anti-forgery signature using base64.
14. A method for authenticating a digital certificate issued by a certificate authority, said digital certificate being associated with a user's public key, said digital certificate including an anti-forgery signature, said anti-forgery signature being formed from at least a portion of said user's public key, an anti-forgery private key and a hash function, said anti-forgery private key having a corresponding anti-forgery public key, the method comprising the steps of:
generating a first message digest based on said anti-forgery signature and said corresponding anti-forgery public key;
generating a second message digest based on said hash function and said user's public key; and determining that said digital certificate is authentic if said first message digest equals said second message digest.
15. A system for authenticating a digital certificate issued by a certificate authority, said digital certificate being associated with a user's public key, comprising:
an anti-forgery private key card for generating an anti-forgery private key; and
a registration authority server for issuing a request for said digital certificate to said certificate authority, said registration authority forming an anti-forgery signature from at least a portion of said user's public key, an anti-forgery private key and a hash function, said registration authority inserting said anti-forgery signature into said request for said digital certificate and forwarding said request for said digital certificate to said certificate authority.
16. The system of claim 15, wherein said digital certificate has an object identifier field and said anti-forgery signature is designated by said registration authority for placement into said object identifier field of said digital certificate.
17. The system of claim 15, wherein said request for said digital certificate includes said user's public key.
18. The system of claim 15, wherein said request for said digital certificate includes said user's identifying information.
19. The system of claim 18, wherein said identifying information includes the user's name and email address.
20. The system of claim 15, further comprising a registration authority private key and wherein said registration authority signs said request for said digital certificate with said registration authority private key and encrypts said request with said certificate authority's public key before forwarding said request to said certificate authority.
21. The system of claim 15, wherein said certificate authority generates said digital certificate including said anti-forgery signature.
22. The system of claim 15, wherein said registration authority receives from said certificate authority said digital certificate including said anti-forgery signature.
23. The system of claim 22, wherein said digital certificate includes an object identifier field and said anti-forgery signature is included in said object identifier field.
24. The system of claim 22, wherein said anti-forgery private key has a corresponding anti-forgery public key and further comprising an authentication engine, said authentication engine retrieving said anti-forgery signature from said object identifier field of said digital certificate; said authentication engine generating a first message digest based on said anti- forgery signature and said corresponding anti-forgery public key; said authentication engine generating a second message digest based on said hash function and said user's public key and said authentication engine determining that said digital certificate is authentic if said first message digest equals said second message digest.
25. Computer executable program code residing on a computer-readable medium, the program code comprising instructions for causing the computer to:
authenticate a digital certificate issued by a certificate authority, said digital certificate being associated with a user's public key;
sign a message digest derived from said public key with an anti-forgery private key thereby forming an anti-forgery signature;
insert said anti-forgery signature into a request for said digital certificate;
forward said request for said digital certificate to said certificate authority.
26. The computer executable program of claim 25, wherein the program code additionally causes the computer to:
decode said user's public key;
extract a portion of said decoded public key;
sign said portion with said anti-forgery key thereby forming said anti-forgery signature; and
encode said anti-forgery signature.
27. The computer executable program of claim 26, wherein said digital certificate has an object identifier field and wherein the program code additionally causes the computer to:
designate said anti-forgery signature for placement into said object identifier field of said digital certificate.
28. The computer executable program of claim 25, wherein said request for said digital certificate includes said user's public key.
29. The computer executable program of claim 25, wherein said request for said digital certificate includes said user's identifying information.
30. The computer executable program of claim 29, wherein said identifying information includes the user's name and email address.
31. The computer executable program of claim 25, wherein the program code additionally causes the computer to:
sign said request for said digital certificate with a registration authority private key; and
encrypt said request for said digital certificate with a public key belonging to said certificate authority.
32. The computer executable program of claim 27, wherein the program code additionally causes the computer to:
generate said digital certificate including said anti-forgery signature in said object identifier field.
33. The computer executable program of claim 27, wherein the program code additionally causes the computer to:
receive from said certificate authority said digital certificate including said anti- forgery signature in said object identifier field.
34. The computer executable program of claim 33, wherein the program code additionally causes the computer to:
retrieve said anti-forgery signature from said object identifier field of said digital certificate;
generate a first message digest based on said anti-forgery signature and said corresponding anti-forgery public key;
generate a second message digest based on said hash function and said user's public key; and
determine that said digital certificate is authentic if said first message digest equals said second message digest.
35. The computer executable program of claim 34, wherein the program code additionally causes the computer to:
decode said anti-forgery signature.
36. The computer executable program of claim 26, wherein the program code additionally causes the computer to: decode said public key using base64; and
encode said anti-forgery signature using base64.
37. The computer executable program of claim 35, wherein the program code additionally causes the computer to:
decode said anti-forgery signature using base64.
38. Computer executable program code residing on a computer-readable medium, the program code comprising instructions for causing the computer to:
authenticate a digital certificate issued by a certificate authority, said digital certificate being associated with a user's public key, said digital certificate including an anti-forgery signature, said anti-forgery signature being formed from at least a portion of said user's public key, an anti-forgery private key and a hash function; said anti-forgery private key having a corresponding anti-forgery public key
generate a first message digest based on said anti-forgery signature and said corresponding anti-forgery public key;
generate a second message digest based on said hash function and said user's public key; and
determine that said digital certificate is authentic if said first message digest equals said second message digest.
39. A method for authenticating a digital certificate issued by a certificate authority, said digital certificate being associated with a user's public key, said digital certificate including an anti-forgery signature, said anti-forgery signature being formed from at least a portion of said user's public key, an anti-forgery private key and a hash function, said anti-forgery private key having a corresponding anti-forgery public key, the method comprising the steps of:
retrieving said anti-forgery signature from said object identifier field of said digital certificate;
generating a first message digest based on said anti-forgery signature and said corresponding anti-forgery public key;
generating a second message digest based on said hash function and said user's public key; and
determining that said digital certificate is authentic if said first message digest equals said second message digest.
PCT/US2001/044568 2001-11-29 2001-11-29 A method and system for authenticating digital certificates WO2003049358A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/US2001/044568 WO2003049358A1 (en) 2001-11-29 2001-11-29 A method and system for authenticating digital certificates
EP01990752A EP1461891A4 (en) 2001-11-29 2001-11-29 A method and system for authenticating digital certificates
AU2002230514A AU2002230514A1 (en) 2001-11-29 2001-11-29 A method and system for authenticating digital certificates
JP2003550428A JP2005512395A (en) 2001-11-29 2001-11-29 Method and system for authenticating electronic certificates

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2001/044568 WO2003049358A1 (en) 2001-11-29 2001-11-29 A method and system for authenticating digital certificates

Publications (1)

Publication Number Publication Date
WO2003049358A1 true WO2003049358A1 (en) 2003-06-12

Family

ID=21743031

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/044568 WO2003049358A1 (en) 2001-11-29 2001-11-29 A method and system for authenticating digital certificates

Country Status (4)

Country Link
EP (1) EP1461891A4 (en)
JP (1) JP2005512395A (en)
AU (1) AU2002230514A1 (en)
WO (1) WO2003049358A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005354200A (en) * 2004-06-08 2005-12-22 Canon Inc Information processing apparatus
US8234490B2 (en) 2007-06-27 2012-07-31 Globalsign K.K. Server certificate issuing system
CN103490884A (en) * 2012-09-28 2014-01-01 卡巴斯基实验室封闭式股份公司 System and method for verification of digital certificates
US9178888B2 (en) 2013-06-14 2015-11-03 Go Daddy Operating Company, LLC Method for domain control validation
US9521138B2 (en) 2013-06-14 2016-12-13 Go Daddy Operating Company, LLC System for domain control validation
US10193699B2 (en) 2015-05-15 2019-01-29 Microsoft Technology Licensing, Llc Probabilistic classifiers for certificates
CN112328279A (en) * 2020-11-02 2021-02-05 宁波和利时信息安全研究院有限公司 System firmware file upgrading method, device and system
CN112511297A (en) * 2020-11-30 2021-03-16 郑州信大捷安信息技术股份有限公司 Method and system for updating key pair and digital certificate
US20230299978A1 (en) * 2022-03-18 2023-09-21 Target Brands, Inc. Digital certificate request system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007089116A (en) * 2005-09-22 2007-04-05 Gerard Lin Electronic message system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638445A (en) * 1995-09-19 1997-06-10 Microsoft Corporation Blind encryption
US5671279A (en) * 1995-11-13 1997-09-23 Netscape Communications Corporation Electronic commerce using a secure courier system
US6085321A (en) * 1998-08-14 2000-07-04 Omnipoint Corporation Unique digital signature
US6122742A (en) * 1997-06-18 2000-09-19 Young; Adam Lucas Auto-recoverable and auto-certifiable cryptosystem with unescrowed signing keys
US6324645B1 (en) * 1998-08-11 2001-11-27 Verisign, Inc. Risk management for public key management infrastructure using digital certificates
US6367013B1 (en) * 1995-01-17 2002-04-02 Eoriginal Inc. System and method for electronic transmission, storage, and retrieval of authenticated electronic original documents

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7162635B2 (en) * 1995-01-17 2007-01-09 Eoriginal, Inc. System and method for electronic transmission, storage, and retrieval of authenticated electronic original documents
US5768389A (en) * 1995-06-21 1998-06-16 Nippon Telegraph And Telephone Corporation Method and system for generation and management of secret key of public key cryptosystem
JPH09307544A (en) * 1996-05-16 1997-11-28 Nippon Telegr & Teleph Corp <Ntt> Portable ciphering key verification system
JPH10135943A (en) * 1996-10-25 1998-05-22 Dainippon Printing Co Ltd Portable information storage medium, verification method and verification system
JP2000115160A (en) * 1998-10-05 2000-04-21 Ntt Data Corp Public key certificate issuance system and method and recording medium
JP3972522B2 (en) * 1999-07-01 2007-09-05 三菱電機株式会社 Data management system
JP3696445B2 (en) * 1999-08-25 2005-09-21 日本電信電話株式会社 Public key certificate issuance method, user terminal, authentication center apparatus, and medium storing these programs
JP2001320356A (en) * 2000-02-29 2001-11-16 Sony Corp Data communication system using public key system cypher, and data communication system constructing method
JP2001285282A (en) * 2000-03-30 2001-10-12 Mitsubishi Electric Corp Authentication system
JP2001305956A (en) * 2000-04-26 2001-11-02 Nippon Telegr & Teleph Corp <Ntt> Method for issuing open key certificate and authentication station, user terminal and recording medium with program recored thereon

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6367013B1 (en) * 1995-01-17 2002-04-02 Eoriginal Inc. System and method for electronic transmission, storage, and retrieval of authenticated electronic original documents
US5638445A (en) * 1995-09-19 1997-06-10 Microsoft Corporation Blind encryption
US5671279A (en) * 1995-11-13 1997-09-23 Netscape Communications Corporation Electronic commerce using a secure courier system
US6122742A (en) * 1997-06-18 2000-09-19 Young; Adam Lucas Auto-recoverable and auto-certifiable cryptosystem with unescrowed signing keys
US6324645B1 (en) * 1998-08-11 2001-11-27 Verisign, Inc. Risk management for public key management infrastructure using digital certificates
US6085321A (en) * 1998-08-14 2000-07-04 Omnipoint Corporation Unique digital signature

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1461891A4 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005354200A (en) * 2004-06-08 2005-12-22 Canon Inc Information processing apparatus
JP4717378B2 (en) * 2004-06-08 2011-07-06 キヤノン株式会社 Information processing device
US8037300B2 (en) 2004-06-08 2011-10-11 Canon Kabushiki Kaisha Information processing apparatus with certificate invalidity determination
US8234490B2 (en) 2007-06-27 2012-07-31 Globalsign K.K. Server certificate issuing system
CN103490884A (en) * 2012-09-28 2014-01-01 卡巴斯基实验室封闭式股份公司 System and method for verification of digital certificates
US8732472B2 (en) 2012-09-28 2014-05-20 Kaspersky Lab Zao System and method for verification of digital certificates
US9178888B2 (en) 2013-06-14 2015-11-03 Go Daddy Operating Company, LLC Method for domain control validation
US9521138B2 (en) 2013-06-14 2016-12-13 Go Daddy Operating Company, LLC System for domain control validation
US10193699B2 (en) 2015-05-15 2019-01-29 Microsoft Technology Licensing, Llc Probabilistic classifiers for certificates
CN112328279A (en) * 2020-11-02 2021-02-05 宁波和利时信息安全研究院有限公司 System firmware file upgrading method, device and system
CN112328279B (en) * 2020-11-02 2023-04-14 宁波和利时信息安全研究院有限公司 System firmware file upgrading method, device and system
CN112511297A (en) * 2020-11-30 2021-03-16 郑州信大捷安信息技术股份有限公司 Method and system for updating key pair and digital certificate
CN112511297B (en) * 2020-11-30 2022-03-11 郑州信大捷安信息技术股份有限公司 Method and system for updating key pair and digital certificate
US20230299978A1 (en) * 2022-03-18 2023-09-21 Target Brands, Inc. Digital certificate request system

Also Published As

Publication number Publication date
JP2005512395A (en) 2005-04-28
AU2002230514A1 (en) 2003-06-17
EP1461891A4 (en) 2005-09-14
EP1461891A1 (en) 2004-09-29

Similar Documents

Publication Publication Date Title
US9813249B2 (en) URL-based certificate in a PKI
US7383434B2 (en) System and method of looking up and validating a digital certificate in one pass
US5774552A (en) Method and apparatus for retrieving X.509 certificates from an X.500 directory
EP3149887B1 (en) Method and system for creating a certificate to authenticate a user identity
EP1714422B1 (en) Establishing a secure context for communicating messages between computer systems
US20030126085A1 (en) Dynamic authentication of electronic messages using a reference to a certificate
US20090319434A1 (en) Maintaining privacy for transactions performable by a user device having a security module
JP2003521154A (en) How to issue electronic identification information
US20040236953A1 (en) Method and device for transmitting an electronic message
EP2291787A2 (en) Techniques for ensuring authentication and integrity of communications
EP2595340A2 (en) Cryptographic document processing in a network
JPH10105057A (en) Time stamp server system
EP1461891A1 (en) A method and system for authenticating digital certificates
TWI773161B (en) Digital signature private key verification method
US20020144120A1 (en) Method and apparatus for constructing digital certificates
US20050289349A1 (en) Method for generating and/or validating electronic signatures
JP4554264B2 (en) Digital signature processing method and program therefor
US20020152383A1 (en) Method for measuring the latency of certificate providing computer systems
JP3725020B2 (en) Electronic data content certification method and system
JP3796528B2 (en) Communication system for performing content certification and content certification site device
CN115150184A (en) Method and system for applying metadata in fabric blockchain certificate
JP2003143137A (en) Apparatus and method for lapse confirmation
CA2374195C (en) System and method of looking up and validating a digital certificate in one pass
Tanwar Public Key Technology Introduction Infrastructure
TW200812331A (en) System and method for signing electronic documents automatically

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2003550428

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2001990752

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2001990752

Country of ref document: EP