RPKI: Securing BGP with Route Origin Validation

How Resource Public Key Infrastructure (RPKI) prevents BGP hijacking by cryptographically validating which ASes are authorized to originate prefixes.

The BGP Hijacking Problem

BGP was designed in an era of implicit trust. Any AS can announce any prefix, and neighboring routers accept it by default. This has led to:

  • Pakistan Telecom hijacking YouTube (2008) — AS 17557 announced YouTube's prefix, taking it offline globally.
  • Amazon Route 53 hijack (2018) — Attackers rerouted cryptocurrency traffic through a BGP hijack.
  • Thousands of smaller incidents — Route hijacks happen daily, most going unnoticed.

What Is RPKI?

RPKI (Resource Public Key Infrastructure) is a framework that lets resource holders (RIRs, ISPs) cryptographically attest to the relationship between IP prefixes and the ASes authorized to originate them.

The key building block is the ROA (Route Origin Authorization):

Normal:    203.0.113.0/24 originated by AS 64512 (legitimate owner)
Hijacked:  203.0.113.0/24 originated by AS 99999 (attacker)

Result: Some or all internet traffic for 203.0.113.0/24
        is routed to AS 99999 instead of AS 64512.

How ROV Works

Route Origin Validation (ROV) is the process of checking received BGP routes against published ROAs:

ROA: {
  Prefix: 203.0.113.0/24
  MaxLength: /24
  Origin AS: 64512
}
State Meaning Recommended Action
Valid Route matches a ROA Accept (prefer over others)
Invalid Route conflicts with ROA Reject
NotFound No ROA exists Accept (with lower preference)

Creating ROAs

ROAs are created through your Regional Internet Registry (RIR):

  • ARINrpki-dashboard.arin.net
  • RIPE NCCmy.ripe.net → "Create ROA"
  • APNICmyapnic.net → RPKI
  • LACNICmilacnic.lacnic.net
  • AFRINICmy.afrinic.net

Running a Validator

To validate routes, your router needs access to an RPKI validator:

# RPSL route object
route:   203.0.113.0/24
origin:  AS64512
mnt-by:  MAINT-AS64512

Configuring Your Router

wzxhzdk:3

Current Adoption

As of 2026, RPKI adoption has crossed critical mass:

  • 70%+ of IPv4 space is covered by ROAs.
  • Major networks (Cloudflare, Google, AWS, NTT) reject RPKI-invalid routes.
  • If you have not created ROAs for your prefixes, you are at risk of having your routes rejected.

انظر أيضًا