Amendment Idea: Dynamic Activation #546
oclostart
started this conversation in
XLS Ideas (pre standard proposal)
Replies: 1 comment 5 replies
-
|
I think the idea is to allow setting a unique Instead of creating an activation tag, it might be better to directly specify strings like The logic for processing these strings is already handled in the |
Beta Was this translation helpful? Give feedback.
5 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Amendment Idea: Dynamic Activation
1. Abstract
The XRP Ledger currently requires every amendment that reaches the 80% validator support threshold to observe a fixed 14 day activation period before becoming enabled. Continuing with this fixed period creates significant risk when critical security vulnerabilities or zero day attacks are discovered.
This proposal introduces an optional per amendment activationTag (integer 0–4) embedded directly in the amendment definition. The tag allows the author to specify a shorter, risk-appropriate activation window while keeping the process fully transparent and backward compatible. This new field helps mitigate the combined delays from bug-fix development, dUNL validator response times, testing, and the mandatory two week activation period when critical vulnerabilities or attacks are discovered.
2. Motivation
The XRPL currently has no built in mechanism to shorten the activation window for amendments in emergency situations. To maintain ledger uptime, security, and integrity, a more flexible approach is needed to address time sensitive issues.
Recently, dUNL response times have drastically improved thanks to the XRPL Foundation. While this improves amendment implementation times, the fixed 14 day activation period still creates an unacceptable delay when dealing with critical vulnerabilities or zero-day attacks. Even with these ongoing improvements, the current system is not sufficient for urgent situations.
3. Specification
The proposed solution introduces a new optional field in every amendment definition. If the
activationTagfield is omitted, the amendment defaults to value 4.Activation Tag Values:
Amendment Author Guidance
Authors should choose the lowest
activationTagvalue that is appropriate for the urgency and risk of the change. Using a lower tag signals to the network that faster activation is justified.These recommended values provide a well balanced approach, giving other node operators sufficient time to upgrade while also providing options to address urgent incidents in a reasonable timeframe. This prevents unnecessary amendment blocks and improves overall ledger security.
Diagram: Amendment Activation Process with activationTag
4. Rationale
Two main factors determine how quickly an amendment goes live, the mandatory two week activation period after 80% dUNL validator approval, and the current activity level of those validators. Even in the best-case scenario (80% approval within 24 hours), an amendment still requires a full 15 days to activate. In practice, it can often take months for sufficient validators to vote.
A mechanism should exist allowing amendments to activate as soon as they reach the 80% threshold when urgent events or active exploits are affecting ledger performance, security, or integrity. Adding a simple
activationTagmakes the XRP Ledger far more resilient, helping maintain its uptime and reputation.5. Backwards Compatibility
By making
activationTagan optional field that defaults to the current 14 day activation period (value 4), this proposal maintains full backward compatibility. Existing and future amendments are completely unaffected, and the current standards of the XRP Ledger remain unchanged.6. Test Plan
Tests to validate the new
activationTagfunctionality:Create five separate test amendments, each using a different
activationTagvalue (0 through 4).Verify that each amendment activates after exactly the expected duration of continuous 80% dUNL supermajority support:
activationTag4 → after 14 daysactivationTag3 → after 10 daysactivationTag2 → after 3 daysactivationTag1 → after 24 hoursactivationTag0 → immediately (on the next ledger after 80% is reached)Confirm that omitting the
activationTagfield defaults to value 4.Test cases where amendment support fluctuates above and below 80% during the activation window (the activation clock must reset correctly).
Verify that invalid tag values are rejected or default to 4.
Verify that amendments with the same or different
activationTagvalues can be active simultaneously on the same ledger.Run full regression tests on the existing amendment activation logic to ensure no impact on current or previously activated amendments.
Verify that
activationTagis correctly stored in the amendment object7. Reference Implementation
TBA.
8. Security Considerations
Besides offsetting bug fix development times, dUNL Validator delays, testing time, and the two week activation period this proposal helps remove the vulnerability of announcing an update due to a vulnerability that was found.
If a zero-day attack is occurring on the XRP Ledger that affects wallet funds or network integrity, the protocol currently has no built in mechanism to respond quickly. The same is true for a critical vulnerability that could heavily impact network performance and security.
Downgrading to a previous version is not always a viable solution, as it may not fully resolve the vulnerability or stop an active attack.
This proposal addresses these risks by introducing the optional
activationTag. Since the tag is entirely optional and defaults to the existing 14-day period, it cannot accidentally shorten activation windows on any amendment unless the author explicitly chooses a faster value.All activation behavior remains fully enforced on ledger through the normal amendment voting process. Validators and node operators retain complete control, they can refuse to vote for any amendment that uses an aggressive tag, or they can upgrade and vote quickly when an emergency tag is justified.
The
activationTagis embedded directly in the amendment definition and is visible in the ledger and rippled source code before any vote begins, giving the entire network full transparency. This mechanism simply provides a safer, faster, and more controlled way to respond to genuine zero day vulnerabilities and critical bugs.Appendix
Appendix A: FAQ
TBA
A.1: [Question]
TBA
Beta Was this translation helpful? Give feedback.
All reactions