Skip to content

Commit

Permalink
Merge pull request #263 from eosnetworkfoundation/staging
Browse files Browse the repository at this point in the history
Switch to SVN Required Features
  • Loading branch information
ericpassmore authored Sep 3, 2024
2 parents 066b754 + 31b486c commit 0c06497
Showing 1 changed file with 23 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,29 @@ Switching to Savanna will required the latest version of Spring Software and the
**Note:** [CDT v4.1.0](https://github.com/AntelopeIO/cdt/releases) is needed to compile the latest EOS System Contracts. This version of CDT contains both the needed host functions, and cryptography support needed to support managing finalizer keys.

### Protocol Features Dependencies
The reference for protocol features with their corresponding hashes may be found in [bios-boot-tutorial](https://github.com/AntelopeIO/spring/blob/main/tutorials/bios-boot-tutorial/bios-boot-tutorial.py).
The protocol feature `SAVANNA` depends on the following protocol features being active_schedule
- `WTMSIG_BLOCK_SIGNATURES`
- `BLS_PRIMITIVES2`
- `DISALLOW_EMPTY_PRODUCER_SCHEDULE`
- `ACTION_RETURN_VALUE`

The reference for protocol features with their corresponding hashes may be found in [bios-boot-tutorial](https://github.com/AntelopeIO/spring/blob/main/tutorials/bios-boot-tutorial/bios-boot-tutorial.py). Switching to the `SAVANNA` consensus algorithm, requires the activation of the `SAVANNA` protocol feature. This feature depends all protocol features available in Spring v1.0.0 being in the active_schedule. This full list of protocol features in Spring v1.0.0 is listed below.
- DISABLE_DEFERRED_TRXS_STAGE_1
- DISABLE_DEFERRED_TRXS_STAGE_2
- WTMSIG_BLOCK_SIGNATURES
- BLS_PRIMITIVES2
- DISALLOW_EMPTY_PRODUCER_SCHEDULE
- ACTION_RETURN_VALUE
- ONLY_LINK_TO_EXISTING_PERMISSION
- FORWARD_SETCODE
- GET_BLOCK_NUM
- REPLACE_DEFERRED
- NO_DUPLICATE_DEFERRED_ID
- RAM_RESTRICTIONS
- WEBAUTHN_KEY
- BLOCKCHAIN_PARAMETERS
- CRYPTO_PRIMITIVES
- ONLY_BILL_FIRST_AUTHORIZER
- RESTRICT_ACTION_TO_SELF
- GET_CODE_HASH
- CONFIGURABLE_WASM_LIMITS2
- FIX_LINKAUTH_RESTRICTION
- GET_SENDER
- SAVANNA

### Generate and Registering Finalizer Keys
The Savanna Consensus algorithm utilized by Spring v1 separates the roles of publishing blocks from signing and finalizing blocks. Finalizer Keys are needed to sign and finalize blocks. In Spring v1, all block producers are expected to be finalizers. There are three steps to creating finalizer keys
Expand Down

0 comments on commit 0c06497

Please sign in to comment.