PacketLab
BGP · Convergence and Security

Resource Public Key Infrastructure

Follow signed resource authorization from a ROA to the validated data a router uses.

Authorize an origin, not an entire AS path

BGP by itself does not prove that the origin AS is entitled to announce a prefix. Resource Public Key Infrastructure binds resource certificates to signed routing authorizations. A resource holder publishes a Route Origin Authorization (ROA) for an ASN, a prefix and an optional maximum length. This is different from encrypting BGP or validating every transit relationship.

Separate the trust and routing roles

StageResponsibility
Resource holder / CACreate signed authorizations for resources it controls.
Repositories and trust anchorsPublish certificates, manifests, revocation information and signed objects.
Relying-party validatorFetch and cryptographically validate the objects against configured trust anchors.
Validated ROA payloads (VRPs)Expose prefix, maxLength and origin-AS tuples from accepted authorizations.
Router over RPKI-RTRDownload validated tuples and compare route announcements.
Routing policyDecide how validation state affects acceptance and selection.

A router normally consumes a validated cache; it does not fetch and validate every repository object for each UPDATE. ROA and VRP describe different stages, although their routing fields overlap.

Read a concrete authorization

PrefixmaxLengthAuthorized origin
198.51.100.0/242564496

This is a synthetic documentation-space example, not a statement about the public RPKI database. AS64496 and AS64497 are documentation ASNs. A maxLength of 25 permits this /24 and its two /25s, not /26s. Omitted maxLength ordinarily authorizes only the ROA’s prefix length.

Compute the validation result

AnnouncementOriginResultReason
198.51.100.0/2464496ValidCovered, length permitted, origin authorized.
198.51.100.0/2564496ValidMore specific within maxLength.
198.51.100.0/2664496InvalidA covering VRP exists, but this length is too specific.
198.51.100.0/2464497InvalidCovering VRP does not authorize this origin.
203.0.113.0/2464497NotFoundNo covering VRP in this synthetic dataset.

If any covering VRP authorizes both the origin and the announced length, the route is Valid. If there is covering data but no authorizing tuple, it is Invalid. Without any covering VRP it is NotFound. Evaluate all relevant VRPs; do not stop at the first covering record.

Understand scope and cache health

NotFound is not the same as Invalid and is not automatic proof of an attack. Valid does not authorize the full path and does not prevent every route leak. An AS0 authorization intentionally authorizes no normal origin. Cache connectivity, expiration, trust-anchor configuration and redundant validators all influence what data is available. Monitor them rather than equating a disconnected cache with a single fixed route outcome.

Apply policy in the next lesson

The next page connects routers to an RTR cache and makes rejection of Invalid routes explicit. Production changes require the operator’s actual prefixes, AS assignments and authorization data. No public ROA is created or changed by the examples here.

Key Takeaways

  • ROAs authorize an origin AS, prefix and allowed length.
  • Validators turn accepted signed data into VRPs.
  • Routers consume validated cache data over RTR.
  • Valid, Invalid and NotFound are different states.
  • Origin validation does not validate the whole AS path.

Resource Public Key Infrastructure Quiz

Six questions · four options each · select one answer per question. Submit all answers to see your score and explanations.

1. A /24 ROA has maxLength 25. Is the same-origin /26 authorized?
2. Who normally validates repository signatures?
3. No VRP covers an announcement. What state results?
4. One covering VRP authorizes the route and another does not. What is the result?
5. What does a ROA validate about AS_PATH?
6. Does this lesson publish a public ROA?
Protocol and command references

RPKI architecture · Origin validation · ROA maxLength guidance · Router-symbol attribution.