[go: up one dir, main page]

rust deps: bump crypto/encoding

What

Upgrade the kernel_sdk, and all dependents to the latest version of tezos_crypto_rs/tezos_data_encoding.

Other places in the monorepo that do not depend on the SDK are unaffected (e.g. contrib/mir, which will be upgraded separately).

Fixes RV-13

Why

There are a number of updates in those two crates, including:

  • bringing signatures into alignment with how they are performed in tezos_crypto (e.g. inputs are hashed prior to signing/verifying)
  • removing possible errors from some b58check/hashing functions
  • ensuring that hashes are always the correct length by construction.

See the full v0.6.0 CHANGELOG for more details

Upgrading the usage of these dependencies in tezos/tezos paves the way to move those two crates (plus tezos_data_encoding_derive into the monorepo), which will allow tighter integration/improvements/synergy between those crates, and places such as the rollup SDK.

How

The MR is split into several commits, so that various teams/groups may review parts relevant to them.

Kernel SDK

Everyone reviewing this MR should review this commit. NB this is a 'minimal' effort - ie bringing existing code up to date. Other possibilities (such as adding an impl NomReader for InboxMessage are left to the future).

RiscV/RustDeps

Only needs to be reviewed by the riscv crew.

Etherlink

To be reviewed by the Etherlink crew - the main things to watch out for are:

  • no longer hashing messages signed by the sequencer, as this has been moved into the verify_signature functions
  • the replacement of Signature by UnknownSignature, which is functionally equivalent. Signature would now refer to the aggregate signature type (which more closely aligns with tezos_crypto).

Kernel/Examples

Feel free to review, this brings the various 'example' kernels used in CI up to date - e.g. tx_kernel/dal_echo etc

Jstz

This is bumped to refer to a branch that itself contains the updates. That branch circularly refers to this one, and vice versa. Once this MR is merged - the jstz branch can be merged, referring to tezos/tezo master, and finally there will be a small MR back here to point back to jstz main. The relevant diff can be found here, and may be instructive reviewing for the riscv crew

Manually testing the MR

CI.

Edited by Emma Turner

Merge request reports

Loading