What is Axonal-BGP?
The Border Gateway Protocol (BGP) routes traffic across the internet's 80,000+ autonomous systems, yet remains vulnerable to prefix hijacking, route leaks, and origin spoofing. Existing mitigations โ RPKI, BGPsec, ASPA โ provide cryptographic attestation but lack economic accountability and adaptive response.
Axonal-BGP bridges this gap by treating each BGP speaker as an ECCA agent with a StackIdentity NFT, per-epoch RouteTableRoot commitments, and a ResidueToRoutingSwap contract that prices routing anomalies as economic tokens with epoch-binding decay.
New Smart Contracts
| Contract | Purpose |
|---|---|
ResidueToRoutingSwap |
One-way RES โ RTE conversion with EBC decay pricing, per-agent + global epoch caps, pausable by oracle |
RouteOracle |
Guardian multisig (M-of-N), emergency-pause (1-of-N), auto-pause on residue rate spike or swap burst, human-in-the-loop resume |
Routing Residue Catalogue
| Kind | Description |
|---|---|
BadSignature | ed25519 signature verification failed on route advertisement |
OriginHijack | Route claims a prefix owned by a different AS |
MOASConflict | Multiple origins for the same prefix without authorization |
PathLeak | AS path indicates route leak to unauthorized peer |
RouteFlap | Excessive route oscillation within observation window |
EpochCommitMiss | Agent failed to commit RouteTableRoot for an epoch |
Demo Simulation
The automated test runs 4 simulated autonomous systems through 50 epochs with 6 scripted attack/response scenarios on a k3d Kubernetes cluster:
| Epoch | Scenario | Description |
|---|---|---|
| 10 | Origin Hijack | AS-300 claims AS-100's prefix |
| 20 | MOAS Conflict | AS-200 and AS-400 both announce the same prefix |
| 30 | Bad-Signature Flood | 5 forged advertisements targeting AS-100 |
| 35 | Auto-Pause | Oracle detects residue rate spike โ pauses AS-300 |
| 40 | Guardian Intervention | Human guardian reviews and confirms pause |
| 45 | Resume | 2-of-3 guardians vote to resume AS-300 |
Run it yourself
# Prerequisites: Docker, k3d, kubectl, terraform, node 20+
# Clone the repo
git clone https://github.com/quellcrist-falconer/ECCA.git
cd ECCA
# Full run (builds images, creates cluster, runs simulation)
./tests/axonal-bgp/run.sh
# Or with options:
./tests/axonal-bgp/run.sh --epochs 100
./tests/axonal-bgp/run.sh --skip-images # reuse existing images
./tests/axonal-bgp/run.sh --destroy # tear down
# Report appears at tests/axonal-bgp/axonal-bgp-report.html
EBC Swap Pricing
The ResidueToRoutingSwap contract prices RES โ RTE conversion with an Epoch-Binding Curve:
Where ฯโ = 0.5 (base rate), ฮด = 0.05/epoch (decay), ฯmin = 0.1 (floor). Freshly resolved residues convert at 50% value; stale ones decay to 10%. Per-agent cap: 50 RTE/epoch. Global cap: 5,000 RTE/epoch.