BGPsec key rollover: BGPsec Router Certificate Rollover
How to swap the keys a BGPsec router signs with, without breaking route verification.
Weis, B., Gagliano, R., and K. Patel, "BGPsec Router Certificate Rollover", BCP 224, RFC 8634, DOI 10.17487/RFC8634, August 2019, <https://www.rfc-editor.org/info/rfc8634>.
@misc{rfc8634,
series = {Request for Comments},
number = 8634,
howpublished = {RFC 8634},
publisher = {RFC Editor},
doi = {10.17487/RFC8634},
url = {https://www.rfc-editor.org/info/rfc8634},
author = {B. Weis and R. Gagliano and K. Patel},
title = {{BGPsec Router Certificate Rollover}},
pagetotal = 11,
year = 2019,
month = aug,
} RFC text
Contents
Internet Engineering Task Force (IETF) B. Weis
Request for Comments: 8634 Independent
BCP: 224 R. Gagliano
Category: Best Current Practice Cisco Systems
ISSN: 2070-1721 K. Patel
Arrcus, Inc.
August 2019
BGPsec Router Certificate Rollover
Abstract
Certification Authorities (CAs) within the Resource Public Key
Infrastructure (RPKI) manage BGPsec router certificates as well as
RPKI certificates. The rollover of BGPsec router certificates must
be carefully performed in order to synchronize the distribution of
router public keys with BGPsec UPDATE messages verified with those
router public keys. This document describes a safe rollover process,
and it discusses when and why the rollover of BGPsec router
certificates is necessary. When this rollover process is followed,
the rollover will be performed without routing information being
lost.
Status of This Memo
This memo documents an Internet Best Current Practice.
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
BCPs 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://www.rfc-editor.org/info/rfc8634.
Copyright Notice
Copyright (c) 2019 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://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. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Requirements Notation . . . . . . . . . . . . . . . . . . . . 4
3. Key Rollover in BGPsec . . . . . . . . . . . . . . . . . . . 4
3.1. Rollover Process . . . . . . . . . . . . . . . . . . . . 5
4. BGPsec Router Key Rollover as a Measure against Replay
Attacks . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
4.1. BGP UPDATE Window of Exposure Requirement . . . . . . . . 7
4.2. BGPsec Key Rollover as a Mechanism to Protect against
Replay Attacks . . . . . . . . . . . . . . . . . . . . . 7
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
6. Security Considerations . . . . . . . . . . . . . . . . . . . 9
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 10
7.1. Normative References . . . . . . . . . . . . . . . . . . 10
7.2. Informative References . . . . . . . . . . . . . . . . . 10
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 11
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction
In BGPsec, a key rollover (or re-key) is the process of changing a
router's BGPsec key pair (or key pairs), issuing the corresponding
new BGPsec router certificate, and (if the old certificate is still
valid) revoking the old certificate. This process will need to
happen at regular intervals, normally due to policies of the local
network. This document describes a safe rollover process that
results in a BGPsec receiver always having the needed verification
keys. Certification Practice Statement (CPS) documents may reference
this memo. This memo only addresses changing of a router's BGPsec
key pair within the RPKI. Refer to [RFC6489] for a procedure to roll
over RPKI Certification Authority key pairs.
When a router receives or creates a new key pair (using a key
provisioning mechanism), this key pair will be used to sign new
BGPsec UPDATE messages [RFC8205] that are originated at or that
transit through the BGP speaker. Additionally, the BGP speaker will
refresh its outbound BGPsec UPDATE messages to include a signature
using the new key (replacing the old key). When the rollover process
finishes, the old BGPsec router certificate (and its key) will no
longer be valid; thus, any BGPsec UPDATE message that includes a
signature performed by the old key will be invalid. Consequently, if
the router does not refresh its outbound BGPsec UPDATE messages,
previously sent routing information may be treated as unauthenticated
after the rollover process is finished. Therefore, it is extremely
important that new BGPsec router certificates have been distributed
throughout the RPKI before the router begins signing BGPsec UPDATE
messages with a new private key.
It is also important for an AS to minimize the BGPsec router key-
rollover interval (i.e., the period between the time when an AS
distributes a BGPsec router certificate with a new public key and the
time a BGPsec router begins to use its new private key). This can be
due to a need for a BGPsec router to distribute BGPsec UPDATE
messages signed with a new private key in order to invalidate BGPsec
UPDATE messages signed with the old private key. In particular, if
the AS suspects that a stale BGPsec UPDATE message is being
distributed instead of the most recently signed attribute, it can
cause the stale BGPsec UPDATE messages to be invalidated by
completing a key-rollover procedure. The BGPsec router rollover
interval can be minimized when an automated certificate provisioning
process such as Enrollment over Secure Transport (EST) [RFC7030] is
used.
"Security Requirements for BGP Path Validation" [RFC7353] also
describes the need for protecting against suppression of BGP UPDATE
messages with Withdrawn Routes or replay of BGP UPDATE messages, such
as controlling BGPsec's window of exposure to such attacks. The
BGPsec router certificate rollover method in this document can be
used to achieve this goal.
In [RFC8635], the "operator-driven" method is introduced, in which a
key pair can be shared among multiple BGP speakers. In this
scenario, the rollover of the corresponding BGPsec router certificate
will impact all the BGP speakers sharing the same private key.
2. Requirements Notation
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.
3. Key Rollover in BGPsec
A BGPsec router certificate SHOULD be replaced when the following
events occur, and it can be replaced for any other reason at the
discretion of the AS responsible for the BGPsec router certificate.
Scheduled rollover: BGPsec router certificates have an expiration
date (NotValidAfter) that requires a frequent rollover process
to refresh certificates or issue new certificates. The
validity period for these certificates is typically expressed
in the CA's CPS document.
Router certificate field changes: Information contained in a BGPsec
router certificate (such as the Autonomous System Number (ASN)
or the Subject) may need to be changed.
Emergency router key rollover: Some special circumstances (such as a
compromised key) may require the replacement of a BGPsec router
certificate.
Protection against withdrawal suppression and replay attacks: An AS
may determine that withdrawn BGPsec UPDATE messages are being
propagated instead of the most recently propagated BGPsec
UPDATE messages. Changing the BGPsec router signing key,
distributing a new BGPsec router certificate, and revoking the
old BGPsec router certificate will invalidate the replayed
BGPsec UPDATE messages.
In some of these cases, it is possible to generate a new certificate
without changing the key pair. This practice simplifies the rollover
process as the BGP speakers receiving BGPsec UPDATE messages do not
even need to be aware of the change of certificate. However, not
replacing the certificate key for a long period of time increases the
risk that a compromised router private key may be used by an attacker
to deliver unauthorized or false BGPsec UPDATE messages.
Distributing the old public key in a new certificate is NOT
RECOMMENDED when the rollover event is due to a compromised key or
when it is suspected that withdrawn BGPsec UPDATE messages are being
distributed.
3.1. Rollover Process
The key-rollover process is dependent on the key provisioning
mechanisms adopted by an AS [RFC8635]. An automatic provisioning
mechanism such as EST will allow procedures for router key management
to include automatic re-keying methods with minimum development cost.
A safe BGPsec router key-rollover process is as follows.
1. New Certificate Publication: The first step in the rollover
mechanism is to publish the new certificate. If required, a new
key pair will be generated for the BGPsec router. A new
certificate will be generated and the certificate will be
published at the appropriate RPKI repository publication point.
The details of this process will vary as they depend on 1)
whether the keys are assigned per-BGPsec speaker or shared among
multiple BGPsec speakers, 2) whether the keys are generated on
each BGPsec speaker or in a central location, and 3) whether the
RPKI repository is locally or externally hosted.
2. Staging Period: A staging period will be required from the time a
new certificate is published in the global RPKI repository until
the time it is fetched by RPKI caches around the globe. The
exact minimum staging time will be dictated by the conventional
interval chosen between repository fetches. If rollovers will be
done more frequently, an administrator can provision two
certificates for every router concurrently with different valid
start times. In this case, when the rollover operation is
needed, the relying parties around the globe would already have
the new router public keys. However, if an administrator has not
previously provisioned the next certificate, implementing a
staging period may not be possible during emergency key rollover.
If there is no staging period, routing may be disrupted due to
the inability of a BGPsec router to validate BGPsec UPDATE
messages signed with a new private key.
3. Twilight: In this step, the BGPsec speaker holding the rolled-
over private key will stop using the old key for signing and will
start using the new key. Also, the router will generate
appropriate refreshed BGPsec UPDATE messages, just as in the
typical operation of refreshing outbound BGP polices. This
operation may generate a great number of BGPsec UPDATE messages.
A BGPsec speaker may vary the distribution of BGPsec UPDATE
messages in this step for every peer in order to distribute the
system load (e.g., skewing the rollover for different peers by a
few minutes each would be sufficient and effective).
4. Certificate Revocation: This is an optional step, but it SHOULD
be taken when the goal is to invalidate BGPsec UPDATE messages
signed with the old key. Reasons to invalidate old BGPsec UPDATE
messages include (a) the AS has reason to believe that the router
signing key has been compromised, and (b) the AS needs to
invalidate already-propagated BGPsec UPDATE messages signed with
the old key. As part of the rollover process, a CA MAY decide to
revoke the old certificate by publishing its serial number on the
CA's Certificate Revocation List (CRL). Alternatively, the CA
will just let the old certificate expire and not revoke it. This
choice will depend on the reasons that motivated the rollover
process.
5. RPKI-Router Protocol Withdrawals: At the expiration of the old
certificate's validation, the RPKI relying parties around the
globe will need to communicate to their router peers that the old
certificate's public key is no longer valid (e.g., using the
RPKI-Router Protocol described in [RFC8210]). A router's
reaction to a message indicating withdrawal of a router key in
the RPKI-Router Protocol SHOULD include the removal of any RIB
entries (i.e., BGPsec updates) signed with that key and the
generation of the corresponding BGP UPDATE message with Withdrawn
Routes (either implicit or explicit).
This rollover mechanism depends on the existence of an automatic
provisioning process for BGPsec router certificates. It requires a
staging mechanism based on the RPKI propagation time (at the time of
writing, this is typically a 24-hour period), and an AS is REQUIRED
to re-sign all originated and transited BGPsec UPDATE messages that
were previously signed with the old key.
The first two steps (New Certificate Publication and Staging Period)
may happen in advance of the rest of the process. This will allow a
network operator to perform its subsequent key rollover in an
efficient and timely manner.
When a new BGPsec router certificate is generated without changing
its key, steps 3 (Twilight) and 5 (RPKI-Router Protocol Withdrawals)
SHOULD NOT be executed.
4. BGPsec Router Key Rollover as a Measure against Replay Attacks
There are two typical generic measures to mitigate replay attacks in
any protocol: the addition of a timestamp or the addition of a serial
number. However, neither BGP nor BGPsec provides these measures.
The timestamp approach was originally proposed for BGPsec
[PROTECTION-DESIGN-DISCUSSION] but was later dropped in favor of the
key-rollover approach. This section discusses the use of key
rollover as a measure to mitigate replay attacks.
4.1. BGP UPDATE Window of Exposure Requirement
The need to limit the vulnerability to replay attacks is described in
Section 4.3 of [RFC7353]. One important comment is that during a
window of exposure, a replay attack is effective only in very
specific circumstances: there is a downstream topology change that
makes the signed AS path no longer current, and the topology change
makes the replayed route preferable to the route associated with the
new update. In particular, if there is no topology change at all,
then no security threat comes from a replay of a BGPsec UPDATE
message because the signed information is still valid.
"BGPsec Operational Considerations" [RFC8207] gives some idea of
requirements for the size of the window of exposure to replay
attacks. It states that the requirement will be in the order of a
day or longer.
4.2. BGPsec Key Rollover as a Mechanism to Protect against Replay
Attacks
Since the window requirement is on the order of a day (as documented
in [RFC8207]) and the BGP speaker performing re-keying is the edge
router of the origin AS, it is feasible to use key rollover to
mitigate replays. In this case, it is important to complete the full
process (i.e., the old and new certificates do not share the same
key). By re-keying, an AS is letting the BGPsec router certificate
validation time be a type of "timestamp" to mitigate replay attacks.
However, the use of frequent key rollovers comes with an additional
administrative cost and risks if the process fails. As documented in
[RFC8207], re-keying should be supported by automatic tools, and for
the great majority of the Internet, it will be done with good lead
time to ensure that the public key corresponding to the new router
certificate will be available to validate the corresponding BGPsec
UPDATE messages when received.
If a transit AS also originates BGPsec UPDATE messages for its own
prefixes and it wishes to mitigate replay attacks on those prefixes,
then the transit AS SHOULD be provisioned with two unique key pairs
and certificates. One of the key pairs is used to sign BGPsec UPDATE
messages for prefixes originated from the transit AS, and it can have
a replay protection policy applied to it. The other key pair is used
to sign BGPsec UPDATE messages in transit and SHOULD NOT have a
replay protection policy applied to it. Because the transit AS is
not likely to know or care about the policy of origin ASes elsewhere,
there is no value gained by the transit AS performing key rollovers
to mitigate replay attacks against prefixes originated elsewhere. If
the transit AS were instead to perform replay protection for all
updates that it signs, its process for key rollovers would generate a
large number of BGPsec UPDATE messages, even in the complete Default-
Free Zone (DFZ). Therefore, it is best to let each AS independently
manage the replay attack vulnerability window for the prefixes it
originates.
Advantages to re-keying as a replay attack protection mechanism are
as follows:
1. All expiration policies are maintained in the RPKI.
2. Much of the additional administrative cost is paid by the
provider that wants to protect its infrastructure, as it bears
the cost of creating and initiating distribution of new router
key pairs and BGPsec router certificates. (It is true that the
cost of relying parties will be affected by the new objects, but
their responses should be completely automated or otherwise
routine.)
3. The re-keying can be implemented in coordination with planned
topology changes by either origin ASes or transit ASes (e.g., if
an AS changes providers, it completes a key rollover).
Disadvantages to re-keying as replay attack protection mechanism are
as follows:
1. Frequent rollovers add administrative and BGP processing loads,
although the required frequency is not clear. Some initial ideas
are found in [RFC8207].
2. The minimum replay vulnerability is bounded by the propagation
time for RPKI caches to obtain the new certificate and CRL (2x
propagation time because first the new certificate and then the
CRL need to propagate through the RPKI system). If provisioning
is done ahead of time, the minimum replay vulnerability window
size is reduced to 1x propagation time (i.e., propagation of the
CRL). However, these bounds will be better understood when the
RPKI and RPKI relying party software are well deployed; this will
also contribute to the propagation time for objects in the RPKI
being better understood.
3. Re-keying increases the dynamics and size of the RPKI repository.
5. IANA Considerations
This document has no IANA actions.
6. Security Considerations
This document does not contain a protocol update to either the RPKI
or BGPsec. It describes a process for managing BGPsec router
certificates within the RPKI.
Routers participating in BGPsec will need to roll over their signing
keys as part of conventional processing of certificate management.
However, because rolling over signing keys will also have the effect
of invalidating BGPsec UPDATE message signatures, the rollover
process must be carefully orchestrated to ensure that valid BGPsec
UPDATE messages are not treated as invalid. This situation could
affect Internet routing. This document describes a safe method for
rolling over BGPsec router certificates. It takes into account both
normal and emergency key-rollover requirements.
Additionally, the key-rollover method described in this document can
be used as a measure to mitigate BGP UPDATE replay attacks, in which
an entity in the routing system is suppressing current BGPsec UPDATE
messages and replaying withdrawn updates. When the key used to sign
the withdrawn updates has been rolled over, the withdrawn updates
will be considered invalid. When certificates containing a new
public key are provisioned ahead of time, the minimum replay
vulnerability window size is reduced to the propagation time of a CRL
invalidating the certificate containing an old public key. For a
discussion of the difficulties deploying a more effectual replay
protection mechanism for BGPSEC, see [PROTECTION-DESIGN-DISCUSSION].
7. References
7.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8635] Bush, R., Turner, S., and K. Patel, "Router Keying for
BGPsec", RFC 8635, DOI 10.17487/RFC8635, August 2019,
<https://www.rfc-editor.org/info/rfc8635>.
7.2. Informative References
[PROTECTION-DESIGN-DISCUSSION]
Sriram, K. and D. Montgomery, "Design Discussion and
Comparison of Protection Mechanisms for Replay Attack and
Withdrawal Suppression in BGPsec", Work in Progress,
draft-sriram-replay-protection-design-discussion-12, April
2019.
[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, February 2012,
<https://www.rfc-editor.org/info/rfc6489>.
[RFC7030] Pritikin, M., Ed., Yee, P., Ed., and D. Harkins, Ed.,
"Enrollment over Secure Transport", RFC 7030,
DOI 10.17487/RFC7030, October 2013,
<https://www.rfc-editor.org/info/rfc7030>.
[RFC7353] Bellovin, S., Bush, R., and D. Ward, "Security
Requirements for BGP Path Validation", RFC 7353,
DOI 10.17487/RFC7353, August 2014,
<https://www.rfc-editor.org/info/rfc7353>.
[RFC8205] Lepinski, M., Ed. and K. Sriram, Ed., "BGPsec Protocol
Specification", RFC 8205, DOI 10.17487/RFC8205, September
2017, <https://www.rfc-editor.org/info/rfc8205>.
[RFC8207] Bush, R., "BGPsec Operational Considerations", BCP 211,
RFC 8207, DOI 10.17487/RFC8207, September 2017,
<https://www.rfc-editor.org/info/rfc8207>.
[RFC8210] Bush, R. and R. Austein, "The Resource Public Key
Infrastructure (RPKI) to Router Protocol, Version 1",
RFC 8210, DOI 10.17487/RFC8210, September 2017,
<https://www.rfc-editor.org/info/rfc8210>.
Acknowledgments
Randy Bush, Kotikalapudi Sriram, Stephen Kent, and Sandy Murphy each
provided valuable suggestions resulting in an improved document.
Kotikalapudi Sriram contributed valuable guidance regarding the use
of key rollovers to mitigate BGP UPDATE replay attacks.
Authors' Addresses
Brian Weis
Independent
Email: bew.stds@gmail.com
Roque Gagliano
Cisco Systems
Avenue des Uttins 5
Rolle, VD 1180
Switzerland
Email: rogaglia@cisco.com
Keyur Patel
Arrcus, Inc.
Email: keyur@arrcus.com
AI ELI5
On this page
§1Why Router Keys Must Be Rolled Over
In BGPsec, a key rollover (or re-key) means changing a router's key pair, issuing the matching new router certificate and, if the old certificate is still valid, revoking it. It has to happen at regular intervals, normally because of the local network's policies.
The danger is timing. Once the old certificate stops being valid, any BGPsec UPDATE message signed with the old key becomes invalid. A router that does not refresh its outbound updates may therefore see previously sent routing information treated as unauthenticated. So the new certificates must be distributed throughout the RPKI before the router starts signing with the new private key.
The RFC only covers changing a router's BGPsec key pair. Rolling over the RPKI Certification Authority key pairs is covered by RFC 6489.
If you change the lock before your friends have the new key, they cannot get in. So you hand out new keys first, and only then swap the lock.
§3When a Certificate Should Be Replaced
A BGPsec router certificate SHOULD be replaced when certain events occur, and it can be replaced for any other reason at the discretion of the AS responsible for it. The RFC lists four:
- Scheduled rollover: certificates have an expiration date (
NotValidAfter), so they must be refreshed or reissued often. - Router certificate field changes: information such as the Autonomous System Number or the Subject may need to change.
- Emergency rollover: special circumstances such as a compromised key.
- Protection against withdrawal suppression and replay attacks: if an AS finds that withdrawn updates are being propagated instead of the latest ones, changing the key and revoking the old certificate invalidates the replayed updates.
In some cases a new certificate can be issued without changing the key pair. That is simpler, because receivers do not even need to notice. But keeping a key for a long time raises the risk that a compromised key is used to send false updates. Reusing the old public key in a new certificate is NOT RECOMMENDED after a key compromise, or when withdrawn updates are suspected of being distributed.
You change a key when it is about to expire, when the label on it is wrong, when it might have been stolen, or when someone keeps using an old copy.
§3.1The Five-Step Rollover Process
The process depends on how keys are provisioned in the AS. An automatic mechanism such as EST (RFC 7030) allows automatic re-keying at minimum development cost. The safe process is:
- New Certificate Publication. Generate a new key pair if needed, create a new certificate and publish it at the right RPKI repository publication point.
- Staging Period. Wait while RPKI caches around the globe fetch the new certificate. The minimum depends on the interval between repository fetches. An administrator who rolls over often can provision two certificates per router with different valid start times, so relying parties already hold the next public key. Without that, an emergency rollover may have no staging period, and routing may be disrupted because routers cannot validate updates signed with the new key.
- Twilight. The speaker stops signing with the old key and starts with the new one, generating refreshed BGPsec UPDATE messages. This may produce many messages, so a speaker may skew the timing for different peers, for example by a few minutes each.
- Certificate Revocation. Optional, but it SHOULD be done when the goal is to invalidate updates signed with the old key, for instance after a suspected compromise. The CA MAY publish the old serial number on its CRL, or simply let the certificate expire.
- RPKI-Router Protocol Withdrawals. When the old certificate's validity ends, relying parties tell their routers the old public key is no longer valid (for example with the protocol in RFC 8210). A router's reaction SHOULD include removing RIB entries signed with that key and generating matching BGP UPDATE messages with Withdrawn Routes.
The mechanism depends on automatic provisioning and on a staging time based on RPKI propagation time (at the time of writing, typically a 24-hour period). An AS is REQUIRED to re-sign all originated and transited updates that were signed with the old key.
First you post the new key where everyone can pick it up. You wait until they have. Then you switch, maybe cancel the old key, and finally everyone throws the old key away.
- 1. New Certificate PublicationPublish the new certificate at the RPKI repository publication point.
- 2. Staging PeriodWait for RPKI caches to fetch the new certificate.
- 3. TwilightStop signing with the old key, start with the new one.
- 4. Certificate RevocationOptional: revoke the old certificate via the CRL.
- 5. RPKI-Router Protocol WithdrawalsRouters drop the old key and updates signed with it.
§3.2Planning Ahead and Reusing Keys
The first two steps, publication and staging, may happen in advance of the rest. That lets a network operator carry out the actual switch quickly when the time comes.
If a new certificate is generated without changing the key, steps 3 (Twilight) and 5 (RPKI-Router Protocol Withdrawals) SHOULD NOT be executed, since the key that signs and verifies has not changed.
An emergency rollover is the hard case. If the next certificate was not provisioned in advance, there may be no staging period, and routers may be unable to validate updates signed with the new key.
If you hand out the spare keys early, switching later is quick. If you keep the same key and only change the label, nobody has to do anything.
§4Rollover as a Defence Against Replay Attacks
Two common ways to stop replay attacks are timestamps and serial numbers, but neither BGP nor BGPsec has them. A timestamp approach was originally proposed for BGPsec but was dropped in favour of key rollover. By re-keying, an AS lets the certificate validation time act as a kind of timestamp.
A replay is only effective in specific circumstances: a downstream topology change has made the signed AS path out of date, and that change makes the replayed route preferable to the new one. With no topology change, a replay is harmless because the signed information is still valid. RFC 8207 says the window of exposure requirement is in the order of a day or longer, which makes rollover feasible. The old and new certificates must not share the same key for this to work.
A transit AS that also originates its own prefixes and wants replay protection for them SHOULD have two unique key pairs and certificates. One signs updates for its own prefixes and can have a replay protection policy. The other signs transit updates and SHOULD NOT have one, because rolling keys for everything would generate a large number of updates across the Default-Free Zone.
Advantages: expiration policies stay in the RPKI; much of the extra cost falls on the provider that wants the protection; and re-keying can be coordinated with planned topology changes, such as changing providers.
Disadvantages: frequent rollovers add administrative and BGP processing load; the minimum replay window is bounded by RPKI propagation time (2x, or 1x if provisioned ahead of time, because first the new certificate and then the CRL must propagate); and re-keying increases the dynamics and size of the RPKI repository.
If someone keeps replaying an old message, changing the secret stamp makes every old message with the old stamp worthless. The catch is that changing stamps all the time is a lot of work.
§5Process Risks and Scope
This document does not change the RPKI or BGPsec. It describes a process for managing BGPsec router certificates within the RPKI. Because rolling over signing keys also invalidates signatures made with the old key, the rollover must be carefully orchestrated so that valid updates are not treated as invalid, which could affect Internet routing.
The RFC 8635 operator-driven method lets a key pair be shared among multiple BGP speakers. In that case, rolling over the certificate affects every speaker that shares the private key. The RFC also states it has no IANA actions.
If several routers share one key, changing it changes it for all of them, so you have to plan for the whole group at once.