... | ... | @@ -4,26 +4,40 @@ To create your own side first you need to interact with our main smart contract |
|
|
|
|
|
![1](uploads/fc6ee5f95e938bd42db721a183733f71/1.png)
|
|
|
|
|
|
* Then you need to mint new testing LIT tokens (this step is just for Ropsten network) recommended amount is 15 000 LIT (10k for vesting & 5k for deposit). **Do not forget click on Mint!**
|
|
|
* First of all, you need to have some small amount of ETH and LIT tokens on your account. In case you are on testet, you can get ETH [here](https://faucet.metamask.io/) and you can mint new testing LIT tokens [here](https://www.lition.io/sidechainmanager/#/register/networks/ropsten/mint-test-tokens) (this step is just for Ropsten network) recommended amount is 15 000 LIT (10k for vesting & 5k for deposit). **Do not forget click on Mint!**
|
|
|
* Now you need to approve our main smart contract to use that amount of tokens, so please specify same amount as in step before an click on approve.
|
|
|
* Now you need to fill information about your side chain. **Be aware that you can not change those information later!**
|
|
|
* Now you need to fill information about your side chain. **Be aware that except of description and endpoint you can not change those information later!**
|
|
|
|
|
|
![2](uploads/9e774cc5c356f0a3862517940b7fbb4a/2.png)
|
|
|
![register_chain](uploads/0a2b0674b75e99aef57cc5178828c584/register_chain.png)
|
|
|
|
|
|
`Description` description of your side chain
|
|
|
`@param description` Description of the chain (e.g name, short purpose description, etc...). Cannot be empty. Max num of characters is 200
|
|
|
|
|
|
`Initial endpoint` e.g. your IP or website about your side chain
|
|
|
`@param initEndpoint` Chain endpoint, might be a website with chain description, condition to join
|
|
|
and nodes ip:port addresses that can be used fo joining. Cannot be empty. Max num of characters is 100
|
|
|
|
|
|
`Vesting tokens` amount of tokens you would like to vest (for mining). Mininmum 10k
|
|
|
`@param chainValidator` External validator contract, might imolement more sophisticated rules for joing the chain as validator or as user (e.g. accounts whitelisting, etc...). 0 means no external validator contract
|
|
|
|
|
|
`Deposit tokens` amount of tokens you would like to deposit (for sending tx). Minimum 2k, strongly recommended at least 3k.
|
|
|
`@param minRequiredDeposit` Min.required deposit to become transactor (user). It must be some reasonable number as user should never be able to run out of tokens during notaryPeriod considering max. tx fee is fixed to 0.1 LIT tokens E.g. there is private chain with whitelisted users and user creator know they will send max. 100 000 txs / notaryPeriod. Min. required deposit should be then 10 000 LIT tokens. It is something like prebought credit for transactions that is required to have on your account before each notary. In fact, users will have to deposit more than minRequiredDeposit as they will be automatically blacklisted during the notary even if they sent only 1 tx, because their deposit balance would be < minRequiredDeposit before the next notary. On top of this condition, chain creator might implement more sophisticated condition in external validator contract. 0 means default (1000 LIT), otherwise must be >= 1000 LIT tokens
|
|
|
|
|
|
`Maximum number of validators` maximum number of validators on your side chain. Recommended from 4 to 21
|
|
|
`@param minRequiredVesting` Min.required deposit to become validator. On top of this condition, chain creator might implement more sophisticated condition in external validator contract. 0 means default (1000 LIT), otherwise must be >= 1000 LIT tokens
|
|
|
|
|
|
`Maximum number of transactors` maximum number of unique users that can send tx to your side chain
|
|
|
`@param rewardBonusRequiredVesting` Min. required vesting balance for bonus reward to be applied. 0 means that chain will not support rewards bonus
|
|
|
|
|
|
`@param rewardBonusPercentage` Reward bonus (percentage) to be applied if validator's vesting balance >= rewardBonusRequiredVesting. In case rewardBonusRequiredVesting > 0, rewardBonusPercentage must be > 0%, otherwise it is ignored
|
|
|
|
|
|
`@param notaryPeriod` Notary period in blocks (1 block every 5s), it is basically time interval notary periodic calls where users consumptions are processed and rewards distributed. Must be in range <1440 (2 hours), 34560 (48 hours)>
|
|
|
|
|
|
`@param maxNumOfValidators` Max. number of active validators (those who vested and started mining). As Lition is using BFT consensus alg., it is recommended to use max no more than 51 validators(21 recommended). On top of this condition, chain creator might implement more sophisticated condition in external validator contract. 0 means unlimited
|
|
|
|
|
|
`@param maxNumOfTransactors` Max. number of transactors/users (those who deposited. It is recommended to restrict this number as notary will not be able to process theoretically unlimited number of users. On top of this condition, chain creator might implement more sophisticated condition in external validator contract. 0 means unlimited
|
|
|
|
|
|
`@param involvedVestingNotaryCond` Flag, if 50% invloved vesting condition should be checked during notary. It means that vesting balances sum of those validators, who signed statistics sent to the notary must be > 50% of the sum of all active validators vesting balances on chain. At least one of the involvedVestingNotaryCond or
|
|
|
participationNotaryCond must be specified
|
|
|
|
|
|
`@param participationNotaryCond` Flag, 2/3 + 1 participation condition should be checked during notary. It means that more or equal to 2/3+1 of all active validators on chain must sign statistics sent to the notary for notary to be accepted. At least one of the involvedVestingNotaryCond or participationNotaryCond must be specified
|
|
|
|
|
|
### Advanced
|
|
|
`Chain validator address` you can specify address of your own validator contract e.g. with different minimum vesting/deposit or you can allow you specific users to use your side chain
|
|
|
`Chain validator address` you can specify address of your own validator contract for more sophisticated validation of new validators and transactors, e.g. with different minimum vesting/deposit or specific users whitelist, etc...
|
|
|
|
|
|
### Notary conditions
|
|
|
`Involved vesting > 50%` your notary will be valid only if validators with more then 50% total vesting will confirm notary (recommended)
|
... | ... | |