- Home
- RFC 9981
RFC 9981: Resource Public Key Infrastructure (RPKI) Manifest Number Handling
- T. Harrison,
- G. Michaelson,
- J. Snijders
Abstract
The Resource Public Key Infrastructure (RPKI) makes use of signed objects called "manifests", each of which includes a "manifest number". This document updates RFC 9286 by specifying issuer and Relying Party (RP) behaviour when a manifest number reaches the largest possible value, a situation not considered in RFC 9286.¶
Status of This Memo
This is an Internet Standards Track document.¶
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.¶
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
https://
Copyright Notice
Copyright (c) 2026 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
(https://
1. Introduction
The Resource Public Key Infrastructure (RPKI) [RFC6480] makes use of signed objects [RFC6488] called "manifests" [RFC9286]. A manifest lists each file that an
issuer intends to include within an RPKI repository
[RFC6481]. Manifests can also be used to detect
certain forms of attack against a repository. Manifests
include a "manifest number" (manifest
However, the manifest
While it is practically impossible for an issuer to reach
the largest possible value under normal operating
conditions (it would require that the issuer issue one
manifest per second for 23,171,956
- Incrementing by large values when issuing manifests, such that the time to reach that largest value is reduced.¶
- Reissuing new manifests in an infinite delay-free
loop, such that the manifest
Number increases by a large value in a comparatively short period of time.¶ - Inadvertently setting the manifest
Number to the largest possible value, such that the issuer will no longer be able to publish usable manifests for that repository.¶
These scenarios might also arise in combination and be more
severe as a result. For example, a CA might increase the
manifest
For a subordinate CA, the risk of repository invalidation
due to such a problem can be addressed by the issuer
using the key rollover process [RFC6489]
to get a new CA certificate. RPs will treat this new certificate
as though it represents a distinct CA; the manifest
However, this option is not available for RPKI Trust
Anchors (TAs). If a TA publishes a manifest with the
largest-
In order to avoid these problems, this document updates [RFC9286] by defining how issuers and RPs can handle this scenario in order to facilitate ongoing use of an affected repository.¶
1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
2. Manifest Number Handling
For a given CA, an RP MUST NOT reject a new manifest
issued by that CA on the basis of it not having a higher
manifest
With this behaviour, it is possible for a CA to be
configured such that, any time it issues a new manifest, it
uses a new filename for that manifest. If a CA were
configured in this way, the manifest
- Check that the purported new manifest has a greater
manifest
Number than the cached manifest, and¶ - Check that the purported new manifest has a more recent thisUpdate than the cached manifest.¶
An RP that
implements the behaviour in this section will momentarily
omit the manifest
3. Manifest Filenames
A CA specifies its manifest URI by way of a Subject Information Access (SIA) entry
with an accessMethod of id-
Section 4.8.8.1 of [RFC6487] states that a CA may include in its
certificate multiple id-
The corollary of the behaviour defined in the previous
paragraph is that a CA that includes multiple
id-
4. Manifest SIA Verification
To avoid certain forms of replay attack, RPs MUST verify
that the URI in the access
5. Comparison with RFC 8488
Section 3.2.1 of [RFC8488] describes a manifest-
6. General Repository Handling
Section 2 contains a specific update to [RFC9286] for the handling of manifest numbers, in order to address one potential permanent invalidity scenario. RPs that encounter other permanent invalidity scenarios should also consider how those can be addressed such that the scenario does not require the relevant CA or TA to perform a key rollover operation. For example, in the event that an RP recognises that a permanent invalidity scenario has occurred, the RP could alert the operator and provide an option to the operator to stop relying on cached data for the affected repository so that the CA can rectify the problem.¶
7. Operational Considerations
CA software may opt to support the manifest number reset
functionality in various ways. For example, it could
change the manifest filename when the manifest
8. Security Considerations
The RPKI primarily exists to support and improve security of the global Internet routing system. Reliability improvements to the RPKI itself, such as outlined in this document, strengthen its dependability (see Section 8 of [RFC6480]).¶
See Section 2, Paragraph 3 regarding the effect of
skipping the manifest
Section 4 describes an additional protection against certain forms of replay attack.¶
Although this document updates [RFC9286], the security considerations from [RFC9286] remain relevant.¶
9. IANA Considerations
This document has no IANA actions.¶
10. References
10.1. Normative References
- [RFC2119]
-
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487
/RFC2119 , , <https://www >..rfc- editor .org /info /rfc2119 - [RFC6487]
-
Huston, G., Michaelson, G., and R. Loomans, "A Profile for X.509 PKIX Resource Certificates", RFC 6487, DOI 10.17487
/RFC6487 , , <https://www >..rfc- editor .org /info /rfc6487 - [RFC6488]
-
Lepinski, M., Chi, A., and S. Kent, "Signed Object Template for the Resource Public Key Infrastructure (RPKI)", RFC 6488, DOI 10.17487
/RFC6488 , , <https://www >..rfc- editor .org /info /rfc6488 - [RFC8174]
-
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487
/RFC8174 , , <https://www >..rfc- editor .org /info /rfc8174 - [RFC8182]
-
Bruijnzeels, T., Muravskiy, O., Weber, B., and R. Austein, "The RPKI Repository Delta Protocol (RRDP)", RFC 8182, DOI 10.17487
/RFC8182 , , <https://www >..rfc- editor .org /info /rfc8182 - [RFC9286]
-
Austein, R., Huston, G., Kent, S., and M. Lepinski, "Manifests for the Resource Public Key Infrastructure (RPKI)", RFC 9286, DOI 10.17487
/RFC9286 , , <https://www >..rfc- editor .org /info /rfc9286
10.2. Informative References
- [RFC6480]
-
Lepinski, M. and S. Kent, "An Infrastructure to Support Secure Internet Routing", RFC 6480, DOI 10.17487
/RFC6480 , , <https://www >..rfc- editor .org /info /rfc6480 - [RFC6481]
-
Huston, G., Loomans, R., and G. Michaelson, "A Profile for Resource Certificate Repository Structure", RFC 6481, DOI 10.17487
/RFC6481 , , <https://www >..rfc- editor .org /info /rfc6481 - [RFC6489]
-
Huston, G., Michaelson, G., and S. Kent, "Certification Authority (CA) Key Rollover in the Resource Public Key Infrastructure (RPKI)", BCP 174, RFC 6489, DOI 10.17487
/RFC6489 , , <https://www >..rfc- editor .org /info /rfc6489 - [RFC8488]
-
Muravskiy, O. and T. Bruijnzeels, "RIPE NCC's Implementation of Resource Public Key Infrastructure (RPKI) Certificate Tree Validation", RFC 8488, DOI 10.17487
/RFC8488 , , <https://www >..rfc- editor .org /info /rfc8488 - [RFC8630]
-
Huston, G., Weiler, S., Michaelson, G., Kent, S., and T. Bruijnzeels, "Resource Public Key Infrastructure (RPKI) Trust Anchor Locator", RFC 8630, DOI 10.17487
/RFC8630 , , <https://www >..rfc- editor .org /info /rfc8630
Acknowledgements
The authors would like to thank Theo Buehler, Ben Maddison, Rob Austein, Tim Bruijnzeels, Russ Housley, Mohamed Boucadair, Luigi Iannone, Daniele Ceccarelli, Darren Dukes, Maria Ines Robles, Barry Leiba, Éric Vyncke, Gorry Fairhurst, Andy Newton, Roman Danyliw, Mike Bishop, and Deb Cooley for their review and feedback on this document.¶