Skip to content
This repository has been archived by the owner on Aug 14, 2023. It is now read-only.

Update the encoding of transactions and replace svm-codec with SSZ #493

Open
neysofu opened this issue Feb 16, 2022 · 2 comments
Open

Update the encoding of transactions and replace svm-codec with SSZ #493

neysofu opened this issue Feb 16, 2022 · 2 comments
Labels
big Big-sized task help wanted Extra attention is needed sdk Related to the SVM SDK svm svm-c-api SVM C API svm-core SVM core change

Comments

@neysofu
Copy link
Contributor

neysofu commented Feb 16, 2022

We are planning on replacing the encoding internally used by SVM both for storage and on-wire entities representation with SZZ. This change would:

  • Reduce our codebase size.
  • Standardize our technology stack.
  • Facilitate the creation of alternative SVM implementations.

SSZ would thus be used to encode:

  1. Template sections.
  2. Transaction execution receipts.
  3. Transaction contents.

(1) and (2) are mostly implementation details, and changing the encoding doesn't have ripple effects across the whole stack. On the other hand, (3) transaction syntax is extremely delicate and it needs to evaluted carefully. A the time of writing, a detailed SMIP documenting the proposed transaction syntax with SSZ is not available, but there is some promising work done by @noamnelke and @lrettig in this regard. See https://docs.google.com/spreadsheets/d/1JjKL9GgYTgNRM_qrkCcpxGeSUnwuhOeTC0dfn16ivHM/edit#gid=1073868340 for more information.

@neysofu
Copy link
Contributor Author

neysofu commented Feb 16, 2022

This issue supersedes #485.

@neysofu
Copy link
Contributor Author

neysofu commented Feb 16, 2022

See spacemeshos/SMIPS#58 for details about how transaction receipts are currently encoded.

@neysofu neysofu changed the title Replace svm-codec with SSZ Update the encoding of transactions and replace svm-codec with SSZ Feb 16, 2022
@neysofu neysofu added big Big-sized task help wanted Extra attention is needed sdk Related to the SVM SDK svm svm-c-api SVM C API svm-core SVM core change labels Feb 16, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
big Big-sized task help wanted Extra attention is needed sdk Related to the SVM SDK svm svm-c-api SVM C API svm-core SVM core change
Projects
None yet
Development

No branches or pull requests

1 participant