Re: [pkix] Private key usage period extension

"Erik Andersen" <> Fri, 06 May 2016 12:25 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id B75E412D968 for <>; Fri, 6 May 2016 05:25:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.619
X-Spam-Status: No, score=-2.619 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id wkdx_7kapJwR for <>; Fri, 6 May 2016 05:25:35 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id A215512D95B for <>; Fri, 6 May 2016 05:25:34 -0700 (PDT)
Received: from Morten ([]) by (DanDomain Mailserver) with ASMTP id 2201605061425317390; Fri, 06 May 2016 14:25:31 +0200
From: "Erik Andersen" <>
To: "Directory list" <>, "PKIX" <>
References: <000901d1a773$379e1680$a6da4380$> <> <>
In-Reply-To: <>
Date: Fri, 6 May 2016 14:25:32 +0200
Message-ID: <005501d1a792$626cdb20$27469160$>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----=_NextPart_000_0056_01D1A7A3.25F77FE0"
X-Mailer: Microsoft Outlook 15.0
Thread-Index: AQJYEc9fvtVi9SNiQE1fwP6vqYjwqAK1ra7zAi9++pqed9NP4A==
Content-Language: en-gb
Archived-At: <>
Subject: Re: [pkix] Private key usage period extension
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: PKIX Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 06 May 2016 12:25:47 -0000

OK, it is being used. I have seen no reason so far that the private key use period starts before and/or ends after the certificates validity period.


If I get a message together with a certificate and the message is signed after the certificate validity period, but before the notAfter for the private key usage period, what do I do? Consider the certificate invalid and discard the message or do I validate the signature with the public key I am not supposed to use anymore.


It is of no help to me that there may be another certificates with the same key pair, where the certificate validity period is different. I might not know those certificates.






Fra: Erwann Abalea [] 
Sendt: 06 May 2016 12:30
Til: Stephen Farrell <>
Cc: Erik Andersen <>eu>; Directory list <>rg>; PKIX <>
Emne: Re: [pkix] Private key usage period extension




This extension is heavily used in electronic passports.

ICAO has set it to be mandatory for Root CA and Document Signer certificates (subscriber certs used to verify data in passports), and optional for MasterList signers.

See ICAO MRTD 9303 part 12 document (

ICAO did a bad job here; this extension already hurt them in the past (preventing some Roots to issue a fresh CRL), and their "solution" was to change the Name comparison rule for CRL checking, so that CAs that don't have the same Name but have the countryName in common are to be considered the same CAs, except for China. Yes, it's that bad.


This extension was already deprecated in RFC2459.



2016-05-06 11:53 GMT+02:00 Stephen Farrell < <> >:

Hi Erik,

I've a separate question: does anyone use this extension
or should we put it on a virtual/mental list of stuff to
be deprecated when/if someone has the energy?


On 06/05/16 09:42, Erik Andersen wrote:
> X.509 has a specification of the Private key usage period extension
> ( This extension is a little confusing. It has notBefore and
> notAfter specification. However, the text says:
> The notBefore component indicates the earliest date and time at which the
> private key could be used for signing. If the notBefore component is not
> present, then no information is provided as to when the period of valid use
> of the private key commences. The notAfter component indicates the latest
> date and time at which the private key could be used for signing. If the
> notAfter component is not present then no information is provided as to when
> the period of valid use of the private key concludes.
> With a little ill will, this can be read as the private key validation
> period may extend beyond the validity of the public key. Note 1 adds to the
> confusing, as it says:
> NOTE 1 - The period of valid use of the private key may be different from
> the certified validity of the public key as indicated by the certificate
> validity period. With digital signature keys, the usage period for the
> signing private key is typically shorter than that for the verifying public
> key.
> It is the word "typical" that confuses me. It implies it could be different.
> This extension was included in RFC 3280 with a heavy health warning. It was
> omitted from RFC 5280 (except for A.2).
> In my mind, the validity of the private key should not spread outside the
> validity period of the certificate.
> Have I misunderstood something?