Create asset and transaction logic

+1 vote
Hello, I am trying to understand how Multichain asset creation works. I could not find specifics on which transactions are created with which inputs and outputs, so this is my understanding so far:

When a asset-issue transactions is created, it uses one output of the issue-permission transaction as input , correct ?

The create asset transaction includes a new output in the create transaction that can be reused for the next asset creation, in a way that we dont "lose" the permission to issue. Correct ?

I have created programatically some thousands of new assets. There is nothing else in the chain so far, no reissue, no transfer nothing else, only the transaction for permission granting and the other dozen of thousand for asset creation. I am confused when I look at block explorer and see some of the assets to be involved in 2, 3 or more transactions. Why is that? you can see the chain and list of assets here http://176.10.125.29:2750/Travel%20Blockchain/assets which shows that an asset was involved in more than one transaction , even though the only operation made was to issue (and send to issuer) the new asset.

Thank you very very much for your hard work on this
asked May 1, 2018 by enrique

1 Answer

0 votes
 
Best answer
An asset issue transaction uses an output belonging to the issuer, but it doesn't matter what particular output that is. It can be from a permission grant, or from anything else. It can even contain existing assets – the issue transaction will include a change output that contains any such assets to go back to itself. That's why you're seeing assets moving across the issuance transaction for others – it's not a cause for concern.

The permission grant itself is not in any way kept inside a transaction output, but rather just affects the global rules of the chain. So you don't have to worry about it being passed from one transaction to the next.
answered May 3, 2018 by MultiChain
selected May 3, 2018 by enrique
Oh great, this explains.
Would not be desirable to derive all from a well known output? for example the last output of the issue containing a permision grant?
Many thanks
...