Skip to content

v0.0.11

Compare
Choose a tag to compare
@github-actions github-actions released this 08 Apr 18:08
release/v0.0.11
8e7675b

0.0.11 - 2024-04-08

It's been a minute since our last release! A few of the major changes since then include:

  • The addition of Public access mode for signature requests, allowing anybody to request a from an account.
  • The removal of Permissioned access mode for signature requests. Its functionality was made redundant by the Public access mode
  • Request rate limiting for signing requests. This is done by the threshold servers, but the are agreed upon on-chain.

Docker Images

If you plan on using Docker images from this release, please use the following tags:

Breaking Changes

  • In #623, 'Public Access Mode', the UserSignatureRequest given when requesting a signature with the 'sign_tx' http endpoint must now contain an additional field, signature_request_account: AccountId32. In private and permissioned modes, this must be identical to the account used to sign the SignedMessage containing the signature request. In public access mode this may be an Entropy account owned by someone else.
  • In #629, 'Add proactive refresh keys on-chain', the StakingExtensionConfig::proactive_refresh_validators field used by the chain spec is now StakingExtensionConfig::proactive_refresh_data and takes a tuple of Vec. Both should be empty at genesis for production.
  • In #631, the config_interface field of ProgramInfo was renamed to interface_description to be more semantically accurate. This field will now be used to describe program interfaces, including the auxilary and configuration interfaces of the program.
  • In #658, RegisteredInfo and RegisteringDetails now contain version_number. As well KeyVersionNumber was added as a config parameter to the Relayer pallet.
  • In #659, the Staking Extension pallet's validate extrinsic changed to take a ServerInfo struct instead of individual fields.
  • In #660, if too many request are sent for signing by a user in a block the TSS will reject them. The chainspec now has an added field for the new Parameters pallet, which itself has a request_limit field.
  • In #661, the Relayer pallet was renamed to the Registry pallet as this better describes the purpose of the pallet.
  • In #662, the Free Transaction pallet was removed.
  • In #666, Permissioned access type was removed to be handled by a program. Also in registered sig_request_key as the key for the struct was replaced by verifying_key. This means verifying_key was removed from the registered struct.
  • In #678, the Registry pallet's get_validator_info() public method stopped returning the validator index
  • In #680, a new genesis config entry was added for the Programs pallet. This entry, initial_programs, is a list of tuples which contains information (hash, bytecode, config, auxiliary data) about what programs to have on chain during genesis.
  • In #681, program_interface in program_data of the Programs pallet has been split into configuration_schema and auxiliary_data_schema
  • In #674, 'Add HPKE implementation', entropy-protocol's SignedMessage has been replaced by EncryptedSignedMessage which has some small API differences: derive_static_secret was renamed to derive_x25519_static_secret, and in the entropy-protocol JS module the subclass dealing with encryption has been renamed from X25519Chacha20Poly1305 to Hpke. The JS API is otherwise the same as before.
  • In #703, a new genesis config parameter for the Parameters pallet was added, max_instructions_per_program.

Added

  • Add ValidatorSubgroupRotated event (#618)
  • Public access mode (#623)
  • Emit events on TSS server errors (#625)
  • Add direct query for a validator's subgroup (#642)
  • Add version number to registered (#658)
  • Request limit check (#660)
  • Add helper for checking if a validator is in the signing committee (#678)
  • Note unresponsiveness reports in Slashing pallet (#679)
  • Add device key program to initial chainstate (#680)
  • Add aux data to program info (#681)
  • Add HPKE implementation (#674)
  • Add max instructions parameters onchain (#703)

Changed

  • Test CLI - dont send hardcoded auxiliary data by default when signing (#614)
  • Add proactive refresh keys on-chain (#629)
  • Rename ProgramInfo.config_interface to interface_description (#631)
  • Change test-cli default access mode and update readme for recent changes (#643)
  • Add additional checks to TSS server's /user/receive_key endpoint (#655)
  • Disallow using existing TSS account IDs in Staking pallet (#657)
  • Clean ups around Staking Extension's validate() extrinsic (#659)
  • Rename pallet_relayer to pallet_registry (#661)
  • Remove permissioned access type (#666)
  • Use SessionID in shared randomness (#676)

Removed

  • Remove pallet-free-tx (#662)