About native token, who have the mint right? can mint multiple times? can mint using nodejs?

Viewing Minting Native Assets | Cardano Developer Portal, there is a picture:
https://ucarecdn.com/75b79657-9f94-41b9-9426-7a65245f14ee/multiassetdiagram.png

what is can’t understand is who are the role of Asset Controller and Token Issers.

And does policy.script file should be keep from reveal to other? If not, and other persons get all script/resource file (except the account info ), can they mint the same token that i have just minted?

And, some time later, can I mint more amount of previous token I minted?

Last question, can token be minted by programming use nodejs? any example?

Thanks in advance~

Hi,

what is can’t understand is who are the role of Asset Controller and Token Issers.

Read this article

And does policy.script file should be keep from reveal to other? If not, and other persons get all script/resource file (except the account info ), can they mint the same token that i have just minted?

Yes, they can as long the policy is not locked

And, some time later, can I mint more amount of previous token I minted?

It’s up to you. When u create an asset u will create a policy ID. There u can define till wich slot/epoch u can modify the asset (burn, mint more)
once the policy ID is locked u will can’t modify the asset

For example take an asset and search on pool.pm and click on policy… there u can find infos about the policy ID of an asset

More details here

Last question, can token be minted by programming use nodejs? any example?

Check this

Cheers,

Ty, every helpful to me.

So, the policy script is very important and maintain them as the ways we do to the private key, such as store offline, write down on page, etc. right?

Better just backup it.

But you don’t need to keep it private. In fact, it is nice to explicitly publish it on, e.g., pool.pm, so that others can see, when your asset was/will be locked.

EDIT: For example:
For the MILK token (https://pool.pm/asset1pwhywk7x54g739z3dqs245q62yu47vjh8gapjv), they have given the policy to pool.pm: https://pool.pm/policy/8a1cfae21368b8bebbbed9800fec304e95cce39a2a57dc35e2e3ebaa So, we can see that it is never locked and which key is allowed to mint/burn.

For the Tokhun token (https://pool.pm/asset1lur4e4jhsgrmfpvtru2tfrq2z5z5d8t5nr03vw), they have not done it: https://pool.pm/policy/4247d5091db82330100904963ab8d0850976c80d3f1b927e052e07bd We cannot know the policy of that token.

You can register the policy by just pasting it there. pool.pm will hash it and verify that it, in fact, matches the ID.

1 Like

In most cases, this will just be the same person/entity.

The asset controller writes the policy.script and the policy.script is hashed to the policy ID. So, noone can change the script, but retain the ID.

The asset controller could write into the script that multiple people are allowed to mint/burn tokens, that there are multiple token issuers, or (the other way round) that multiple keys have to sign, that mint/burn transactions can only be done by multiple people together.

But, in most cases, you are both in one person, you write the policy.script and there’s only one key in there that is also controlled by you.

Great explanation.

If i understand correct, the minter is specified by ‘keyHash’ field, so, we can share the policy script to anyone without worry of lost minter right.
:laughing:

Thanks

1 Like

Yes, you have to keep private the skey file.

The vkey, its keyHash, and the policy can be public. They have to be known to verify that it was really your skey that signed the mint or burn.