Asset transaction structures
Similar to normal Yerbas (and bitcoin) transactions, the amount of an asset from the VINS must equal the amount in the VOUTS (Not including created assets).
A YERB fee must be paid for asset-only transactions just like any other.
All of the protocols pertaining to transactions are the same. The only thing that changes is the scripts.
The order of the VOUTS does matter when creating and reissuing assets.
When creating transactions the created ownership asset (if there is one) must be sent to the same address as the created asset.
Transfer asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fee Asset outpoint(s) for transfer | YERB change address(s) Asset transfer script(s) |
On chain example: bae95f349f15effe42e75134ee7f4560f53462ddc19c47efdd03f85ef4ab8f40
Creating a main asset transaction
Note that when creating assets, you get to freely determine what address to send the assets and ownership asset to.VINS | VOUTS |
---|---|
YERB outpoint(s) for fees | Issue asset fee address YERB change address(s) Ownership asset script New asset script |
On chain example: 8eefce8d264d723b6b8f3cf87bcb400a009d01c2771f94e5cc07af252851aa96
Creating a sub-asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees Parent ownership asset outpoint | Issue sub-asset fee address YERB change address(s) Transfer asset script (For parent ownership asset) Ownership asset script New asset script |
On chain example: 15127b9ea4c21c323dde1f2dd64b24b12efef2adec43b0b5f2e2377ad4aea369
Creating a unique asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees Parent ownership asset outpoint | Issue unique asset fee address YERB change address(s) Transfer asset script (For parent ownership asset) New asset script |
On chain example: 12f39ab78609e312e80c86d1ed3f25937120cbdeee6fc81b1068c400eb1c8518
Creating a reissue asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees Ownership asset outpoint | Reissue asset fee address YERB change address(s) Transfer asset script (For ownership asset) Reissue asset script |
On chain example: 1370040248ba64a2676f125e645a83421adb2859c8c2aacc74017d738309ebda
Creating a message channel asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees Parent ownership asset outpoint | Issue message channel asset fee address YERB change address(s) Transfer asset script (For parent ownership asset) New asset script |
On chain example: d5a13003bff69513b1bb172164ba015afd9bd5afc0a2d654cf10daf1ae470a8c
Creating a qualifier asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees | Issue qualifier asset fee address YERB change address(s) New asset script |
On chain example: 748c7e0996e0a4f599c51635c8fce8ddd6ae0e625be640fa4074f51f2574d7a1
Creating a sub-qualifier asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees Parent asset outpoint | Issue sub-qualifier asset fee address YERB change address(s) Transfer asset script (For parent asset) New asset script |
On chain example: 748c7e0996e0a4f599c51635c8fce8ddd6ae0e625be640fa4074f51f2574d7a1
Creating a restricted asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees | Issue restricted asset fee address YERB change address(s) Verifier asset tag script Ownership asset script New asset script |
On chain example: c1e61a69bfb3a02f15c44b530a76fee8d69c8b54b0cc69c0fab81a583e3e5c33
Creating a reissue restricted asset with new qualifiers transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees Ownership asset outpoint | Reissue asset fee address YERB change address(s) Verifier asset tag script Transfer asset script (For ownership asset) Reissue asset script |
On chain example: a2b634e160974348647484302501a64bc80a841d4a9ea833498a47e72e987628 (testnet)
Creating a null asset script transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees Qualifier or restricted ownership asset outpoint | Tag fee address YERB change address(s) Transfer asset script (For qualifier or restricted ownership asset) Null asset tag script |
On chain example: 0332beef9c76cf300b166cf5f56e8acd83788201eae1fc93f05364c28cd882f2
Creating a freeze restricted asset transaction
VINS | VOUTS |
---|---|
YERB outpoint(s) for fees Restricted ownership asset outpoint | Tag fee address YERB change address(s) Transfer asset script (For restricted ownership asset) Global restriction asset tag script |
On chain example: cb6f7a7cf7d65d532101a259ef37cebff77ccb1e9f86823910537d6580071668