In my last article, I discussed the basic concepts of funding your community using cryptographic tokens in hopes of providing some insight into this new mode of thinking. If you are still new to the idea of cryptographic tokens, give it a read.
Several readers asked for more information on how to actually create and distribute their own token. As I told one of them, "Your wish is my command!" So today I am going to share with you how easy it is to create your own crypto-tokens like LTBcoin and we will also discuss the tools required for distribution. Apart from describing the normal procedure on the main Bitcoin network, I'll also tell you how to practice creating your tokens on the Testnet, so you can try things out without using any real money.
I have been involved with the development of LTBcoin since late February and am most familiar with the Counterparty protocol that LTBcoin is built on. I am quite impressed with the work Counterparty (XCP) has done and I particularly recommend this platform to users who are new to tokens and want to create their own. However, there are other platforms providing similar solutions, such as NXT and Mastercoin.
Let the tokenizing begin!
In order to create your own cryptographic token, you need to be familiar with a few terms and concepts. Make sure to understand them before you begin because several of the options you will be setting when creating your tokens are irreversible.
Here we go:
Divisibility - When creating a token you will have the choice to decide whether you want your token to be divisible or not. In most use cases you probably want to keep this option checked so that your token can be divided to 8 decimal places, down to 1 satoshi like Bitcoin and LTBcoin. However, in certain instances you may not want to your token to be divisible, such as when it represents some kind of ticket or indivisible physical object.
Callability - In some cases you may want to make your token callable. Callable tokens allow you, as the issuer of the token, to actually “call” the token back and retrieve it from the users who currently hold it. This makes no sense if your token is a currency, but may be useful if you want to create a voting token, for example. For voting, you could distribute the tokens to eligible users who would then cast their votes by sending the tokens to particular addresses. Once the polling period ends, the address with the most tokens determines the winning outcome. All tokens (both those cast as votes and those still being held by people who did not vote) could then be retrieved or called back, so they will be ready to be redistributed for a future vote.
Call Price - When you create a callable token, you have the option of setting a price that you will pay holders of the tokens if you decide to call them back. This is similar to what happens when a company has the option to call back bonds, and it assures those who possess your tokens that they will be rewarded with a pre-agreed amount if you decide to call them in.
Call Date - Callable Counterparty tokens must have a call date set upon creation. Choose this date carefully because you will not be able to call back your tokens until it has passed. This guarantees to people holding your tokens that they will be able to keep them for an established minimum time period.
Quantity - During the initial issuance of your token, you of course need to decide how many tokens to create. You can issue additional tokens at a later time if need be, unless your token is "locked".
Locked - You also have the option of ticking this option to lock the number of tokens you create. This will prevent you from issuing more tokens in the future and will guarantee a fixed maximum supply.
Transfer Ownership - Just as with a domain name on the Internet, users have the option of transferring ownership of a token. This is not to be confused with transferring individual tokens themselves. Transferring ownership here means transferring all the rights and powers you have as the issuer of the token to another address.
Decentralized EXchange (DEX) - The decentralized exchange built into Counterparty and its wallet, Counterwallet, allows you to trustlessly buy or sell any token or asset for BTC, XCP or another asset. This reduces friction when creating your own tokens because exchange is possible without the tokens being listed on a public exchange.
Now you understand the basic terminology, let's walk through the process of creating your first token.
To create your own asset you will need the following:
Counterparty's web wallet (Counterwallet)
0.0005 BTC (to pay for bitcoin miner's fees)
0.5 XCP (this is a small amount of Counterparty's native token that will be destroyed when you create your token)
Step 1. Go to https://counterwallet.co and click the big green button that says “Create New Wallet”.
Or if you want to try things out on the Testnet, visit https://testnet.counterwallet.co and do the same thing. Remember that blockchain actions usually take longer to confirm on Testnet.
Upon clicking this button a new wallet address will be created and you will be presented with a completely random 12 word passphrase. Make sure you write down this passphrase in a safe place and keep it secret, as it gives full access to the wallet and there is no way to retrieve or change the passphrase once the wallet has been created.
Once you have written down your passphrase, copy and paste it into the the login. You can also click the keyboard icon next to the Open Wallet button to input your passphrase using an on-screen keyboard for extra security from keylogging malware.
Step 2. Transfer BTC and XCP into your newly created Counterwallet.
Using the address provided in your wallet send at least 0.0005 BTC (not including transaction fees) to your counterwallet address. If you do not have any bitcoin, I highly recommend using Coinbase to purchase your first coins. They have an easy to use interface and provide ACH banking allowing users to link their bank accounts.
Bitcoin can easily be exchanged back and forth for dollars at Coinbase. If you have BTC but do not have any XCP, use the Decentralized Exchange (DEX) within counterwallet to purchase it.
On the sidebar located on the left side of your screen choose “Exchange”, then click the sub-option “Markets”. From the “Top Pairs” options choose “XCP/BTC”. Scroll down to the light blue “Buy XCP” box and enter in the price in BTC you wish to pay and the quantity of XCP you would like to buy. Orders and transaction will take some time to complete so, please be patient.
If you are on Testnet, you can visit some Testnet faucet or other and have some test bitcoins sent to your Testnet Counterwallet address. Once your test BTC have arrived, you can click the little arrow near your balance and burn some of those test BTC for test XCP. Make sure you have some test BTC left over (say 0.01 BTC) to cover mining fees. (Also keep in mind you can only burn BTC for XCP on Testnet and the test coins have no real world value.)
Step 3. Create your first token.
To create your own asset, go to the “My Balances” section of counterwallet and select “Address Actions” from the address containing your BTC and XCP. Upon clicking Address Actions you will get a dropdown menu. Click “Create a Token (Asset)” from the options.
Upon selecting “Create a Token (Asset)” you should have a menu pop up that looks like the following:
Here you have the option of setting the token name, the quantity of tokens you wish to create, whether or not the token is divisible and whether or not the token is callable. Choose carefully as these options cannot be changed (except for the description) once the token has been created.
After you have set all the options and entered an initial quantity (this can be zero if you do not know how many tokens you want to create) click “Create Token”. The 0.5 XCP used to create the token is destroyed by "proof of burn" in the process.
The creation of the token will take a few minutes to confirm on the blockchain and you should see a pending notification appear in the top lefthand corner of your Counterwallet screen.
If you check your pending actions you should see a notification explaining the creation of your token is pending.
Once the token has been created and confirmed you will receive another notification saying so and voila, you now have your very own token! The token will appear in your wallet in gold color in the address you created it from, which indicates that it is owned by that address.
Step 4.Token ownership options.
Now that you have ownership of your new token, you have the ability to do a variety of things as shown in the image below:
Most notably, you can transfer ownership to another address, issue additional tokens, and lock the token so that no more can be issued. The actual options you see may change according to the settings you used when creating your tokens.
Step 5. Distributing your tokens.
Now you have these sweet new tokens, you need a way to distribute them. One way is to send out tokens individually using Counterwallet, of course. If you're doing a mass distribution, you can can access the share distributor courtesy of the developers at Let's Talk Bitcoin!This tool lets you upload a CSV sheet with Counterparty addresses and the amount of your token you wish to distribute to each address and then does the job for you.
Unfortunately, the share distributor does not work on Testnet, so you will have to send out your testnet coins to other people on Testnet in the traditional way.
To access the share distributor, visit the dashboard section of your LTB account and click the “Share Distributor” option on in the lefthand menu under LTBcoin.
Note: You need to request early access to the tool from [email protected] with your LTB username and the token names you intend to distribute, access during this early period is fee free.
Enter the information requested by the share distributor as shown below, including all the addresses and amounts you wish to distribute.
Once you have submitted the distribution, you will see a page like this:
Step 6. Complete token distribution.
In order to complete the distribution you will need to send the noted BTC fee to the provided address. Once the address has received the amount needed for transactions fees it will begin distributing your token accordingly to the addresses provided.
As you can see it is not very difficult or expensive to create your own token. The hard part in creating a token is figuring out effective marketing, fair distribution, and compelling use cases. The tokens lack intrinsic value without an accompanying use case.
For the Let’s Talk Bitcoin! network, the current use case is advertisement (more coming soon). For Tatianacoin, it is special incentives such as fan gear and so on. The possibilities are limitless with many exciting use cases yet to be explored. It’s up to us creators to figure out what exactly the community will find valuable and shape the future of user-created assets.
Image of Coining Press, a philadelphia mint coining press, courtesy of Robert N. Dennis for public domain under Wikipedia.org.
Counterparty Wiki - https://wiki.counterparty.co/w/Assets
CounterWallet - http://counterwallet.co