Internet DRAFT - draft-pinkas-2560bis-certinfo
draft-pinkas-2560bis-certinfo
INTERNET-DRAFT D.Pinkas
Intended Status: Proposed Standard Bull SAS
Updates: 2560bis (if approved) August 31, 2012
Expires: March 1, 2013
CertInfo single response extension
Update to OCSP
< draft-pinkas-2560bis-certinfo-00.txt >
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as
Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress".
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.html
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
Copyright and License Notice
Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with
respect to this document.
Denis Pinkas Expires March 1, 2013 [Page 1]
INTERNET DRAFT CertInfo single response extension August 31, 2012
Abstract
OCSP [RFC2560] has been designed to allow an OCSP server to use
any kind of trustable information to answer to a client varying
from CRLs to an access to a database of issued certificates.
In its original version, OCSP does not allow taking full advantage
of an access to a database of issued certificates.
When a database of issued certificates is used by an OCSP server,
this document explains how the OCSP server shall respond and how
OCSP clients shall react.
The proposal is intended to update 2560bis. It defines a new single
extension in a single response, called certInfo. The extension is
non critical. The meaning of "good", "revoked" and "unknown" are
unchanged.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3
2. CertInfo single extension . . . . . . . . . . . . . . . . . . . 3
3. Text to be placed in the Security Considerations section . . . . 5
4. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
6. References . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.1. Normative References . . . . . . . . . . . . . . . . . . . . 6
6.2. Informative References . . . . . . . . . . . . . . . . . . . 6
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 6
8. Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 6
9. ASN.1 module . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
This document is intended to be incorporated in 2560bis, a draft
document being currently discussed in the PKIX WG to replace
RFC 2560 [RFC2560].
1.1. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
Denis Pinkas Expires March 1, 2013 [Page 2]
INTERNET DRAFT CertInfo single response extension August 31, 2012
2. certInfo single extension
This single extension may be used in singleExtensions within a
SingleResponse. It either contains:
- an indication that the serial number of the target
certificate is not present in the database, or
- a hash value of the target certificate computed using the
value of the certificate that is present in the database.
This extension may only be used when an OCSP server has access to
a database maintained by a CA which contains, for every issued
certificate, the following up-to-date information:
- its serial number,
- its revocation status, and
- the value of the certificate.
The use of this single extension is RECOMMENDED, when the server is
able to support it.
The following only applies when this single extension is supported
by the OCSP server.
When the serial number of the target certificate is present in the
database, then the OCSP server SHALL indicate the revocation
status of the target certificate accordingly to the revocation
status indicated in the database and the extension SHALL contain
a hash value of the target certificate computed using the value of
the certificate that is present in the database. The critical flag
SHALL NOT be set.
When the serial number of the certificate is not present in the
database, then the OCSP server SHALL indicate that the revocation
status of the target certificate is "unknown" and the extension
SHALL contain an indication that the serial number of the target
certificate is not present in the database. The critical flag
SHALL NOT be set.
The identifier for this extension is id-pkix-ocsp-certInfo,
while the value is CertInfo.
id-pkix-ocsp OBJECT IDENTIFIER ::= { id-ad-ocsp }
id-pkix-ocsp-certInfo OBJECT IDENTIFIER ::= { id-pkix-ocsp 9 }
CertInfo ::= CHOICE {
certSerialNumberUnknown [0] BOOLEAN DEFAULT TRUE,
certHashValue [1] CertHashValue
}
Denis Pinkas Expires March 1, 2013 [Page 3]
INTERNET DRAFT CertInfo single response extension August 31, 2012
CertHashValue ::= SEQUENCE {
hashAlgorithm AlgorithmIdentifier,
hashValue OCTET STRING
}
certSerialNumberUnknown is a Boolean which indicates that the serial
number of the target certificate is not present in the list of the
certificates issued by the CA to which the OCSP responder has
access. In that case, certStatus SHALL be set to "unknown".
certHashValue contains a hash value of the target certificate
computed using the same hash function that was used by the OCSP
client in the CertID field from the OCSP request.
If this extension is not understood by the OCSP client, then it
SHALL be ignored.
If this extension is understood by the OCSP client, the OCSP
client should make sure that there is no mistake with the serial
number value. It should also make sure that it holds a certificate
which includes that serial number and for which a certification
path has been verified valid up to a trusted root (except the
revocation status of the target certificate).
The processing of this extension by an OCSP client is as follows:
If the certSerialNumberUnknown Boolean is returned in the single
extension, then the CertStatus is necessarily "unknown". The OCSP
client SHOULD use this information to alert the OCSP server using
out of bands means.
If a hash of the certificate is returned in the single extension,
the OCSP client SHALL compare its value with a hash computed
locally on the target certificate it holds.
If the hashes match, then the revocation status of the target
certificate, as indicated by the OCSP server, is valid.
If the hashes do not match, then the OCSP client SHOULD use this
information to alert the OCSP server using out of bands means.
Denis Pinkas Expires March 1, 2013 [Page 4]
INTERNET DRAFT CertInfo single response extension August 31, 2012
3. Text to be placed in the Security Considerations section
X.X. Certificate not regularly issued
The advantages and the limitations provided through the use of the
single extension "CertInfo" are indicated below:
When certSerialNumberUnknown is returned, this extension indicates:
- either that the target certificate has indeed not been
issued and thus is a forged certificate,
- or that the target certificate which was indeed regularly
issued has been removed from the database by an attacker
(denial of service attack) or by accident.
When certHashValue is returned and the hashes do not match, this
extension allows detecting an abnormal situation : there exists two
certificates with the same serial number: one regularly issued by
the CA and another one which has either been forged or obtained
irregularly.
When certHashValue is returned and the hashes match, then everything
looks fine, but this case does not allow detecting an abnormal
situation if the RA software has been corrupted or if the database
to which the OCSP server has access has been maliciously corrupted.
When an OCSP server receives an alert from an OCSP client, it should
use the information provided by the OCSP client to investigate the
case.
If the target certificate is unknown to the OCSP server, but has
been regularly issued, it is necessary to discriminate between a
denial of service attack or an accident and to correct the problem
so that the situation does not persist.
If the target certificate has not been regularly issued, its serial
number should be immediately added by the CA to the list of revoked
certificates.
Then after, the OCSP server should continue to investigate the case:
- either the extend of the damage can be evaluated by the CA and
only those certificates which have been fraudulently issued
shall be revoked by the CA, or
- the extend of damage cannot be evaluated and in that case the CA
should ask to its superior CA to revoke its CA certificate.
Denis Pinkas Expires March 1, 2013 [Page 5]
INTERNET DRAFT CertInfo single response extension August 31, 2012
It is up to the CA and to the OCSP server to cooperate together in
order to attempt to recover from these situations. OCSP servers and
CAs should include in their recovery plans, the above situations.
4. Security Considerations
The text covering the security considerations is provided in
section 3.
5. IANA Considerations
This document has no actions for IANA.
6. References
6.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5912] Hoffman, P. and J. Schaad, "New ASN.1 Modules for the
Public Key Infrastructure Using X.509 (PKIX)", RFC 5912,
June 2010.
6.2. Informative References
[RFC2560] Myers, M., Ankney, R., Malpani, A., Galperin, S., and
Adams, C., "X.509 Internet Public Key Infrastructure
Online Certificate Status Protocol - OCSP", RFC 2560,
June 1999.
7. Acknowledgements
Several of the ideas present in this document came from discussions
on the PKIW WG list and with Romain Santini.
8. Author's Address
Denis Pinkas
Bull SAS
BP 78
78340 Les Clayes sous bois
France
EMail: denis.pinkas@bull.net
Denis Pinkas Expires March 1, 2013 [Page 6]
INTERNET DRAFT CertInfo single response extension August 31, 2012
9. ASN.1 Module
CERTINFO-2012 { iso(1) identified-organization(3) dod(6)
internet(1) security(5) mechanisms(5) pkix(7) id-mod(0)
id-mod-ocsp-cert-info-2012-93(79) }
DEFINITIONS EXPLICIT TAGS ::=
BEGIN
EXPORTS ALL; -- export all items from this module
IMPORTS
Extensions, AlgorithmIdentifier
FROM PKIX1Explicit88 { iso(1) identified-organization(3)
dod(6) internet(1) security(5) mechanisms(5) pkix(7)
id-mod(0) id-pkix1-explicit(18) }
id-pkix-ocsp
FROM OCSP-2009 -- From [RFC5912]
{ iso(1) identified-organization(3) dod(6) internet(1) security(5)
mechanisms(5) pkix(7) id-mod(0) id-mod-ocsp-02(48) }
;
certInfo EXTENSION ::= {
SYNTAX CertInfo,
IDENTIFIED BY id-pkix-ocsp-certInfo
}
id-pkix-ocsp-certInfo OBJECT IDENTIFIER ::= { id-pkix-ocsp 9 }
CertInfo ::= CHOICE {
certSerialNumberUnknown [0] BOOLEAN DEFAULT TRUE,
certHashValue [1] CertHashValue
}
CertHashValue ::= SEQUENCE {
hashAlgorithm AlgorithmIdentifier,
hashValue OCTET STRING
}
END
Denis Pinkas Expires March 1, 2013 [Page 7]