CRC-20 Specs
Operations
Deploy
Mint
Transfer
Approve
tx to_address: authorisation address
amt=0: cancellation of authorisation
amt>0: user's COSS will be frozen from the balance, and no other transfers can be made, or re-approved.
Proxy-trade
f: the seller wallet address
s: msg’s signature by seller
msg: include expiry time, sell price, authorized wallet. Due to the limit size of Cosmos memo, to_address in tx is used as the authorized wallet in msg. For example, coss_market’s address is cosmos1yzwlf5c35e3ueevt7w6md3v8s4n40uczacxmzw. So the final msg which indexer will check signature is: ts:2024-01-27T12:19:14Z,price:27uatom,to:cosmos1yzwlf5c35e3ueevt7w6md3v8s4n40uczacxmzw
msg.ts: the UTC time at which the signature expires.
msg.price: the price of each tick (in this case, COSS)
indexer
check if the signature is OK, indexer collects seller's pub_key in advance
check if ts is expired
check amt x price == tx number of coins (ATOM in this case)
check amt quantity <=approve quantity
if all the above are OK, execute update the quantity of approve(decrease)
Execute transfer COSS to to_address
Notes
The first deployment of a ticker is the only one that has claim to the ticker. Tickers are not case sensitive (ATOM = atom).
If two events occur in the same block, prioritization is assigned via order they were confirmed in the block. (first to last).
The first mint to exceed the maximum supply will receive the fraction that is valid. (ex. 21,000,000 maximum supply, 20,999,242 circulating supply, and 1000 mint inscription will get 758 balance).
Maximum supply cannot exceed uint64_max.
Last updated