lightninglabs / taproot-assets

A layer 1 daemon, for the Taproot Assets Protocol specification, written in Go (golang)
MIT License
463 stars 111 forks source link

asset+proof: update to support genesis and group key reveals + add basic version handling #440

Closed jharveyb closed 1 year ago

jharveyb commented 1 year ago

To support the changes specified in https://github.com/Roasbeef/bips/pull/33 (more complex group key derivation + reveal genesis and group key information in the minting proof), we need to modify the base Asset and Proof structs to add new fields. This involves also adding encoders & decoders for these fields, and new DB fields for some fields like the revealed tapscript root used to tweak the group key.

We also want to add logic to reject unknown Asset and Proof versions, to prepare for future significant changes to these objects.

This issue does not cover any functionality changes needed to implement https://github.com/Roasbeef/bips/pull/33, just the underlying DB, encode/decode, etc. changes needed to actually start implementing that functionality.

PR: https://github.com/lightninglabs/taproot-assets/pull/381

Marked as size Small because the PR is on round 3 of review and review cycles have been short.

jharveyb commented 1 year ago

Closed with merge of #381.