Somebody clearly doesn't understand how the waves DEX operates or they would not say such inaccuracies. The WAVES DEX uses internal tokens to allow trading. For each real token you deposit in your exchange address your account is credited with the same amount of internal exchange tokens for the coin you deposited. The trades that are being conducted on the WAVES DEX are done using the internal exchange tokens. Each coin that is available on the exchange has an internal tradeable "twin token". Those tokens all run on the waves blockchain. Lots of exchanges use this principle of internal tradeable tokens to represent the holdings of the users of the exchange.
Saying XTRABYTES created 650m new tokens out of thin air is as accurate as saying that BTC created 12m new tokens so it could be traded on WAVES or that any of the tokens available on WAVES doubled their supply just so they could be traded on WAVES. If you have problems understanding how this works I would rather you come to us with questions instead of posting flat out lies in an attempt to discredit us.
Hi Golden, Ganja,
first of all. Waves-based tokens *can* be traded outside of the waves DEX and I'm going to explain how.
Golden, I hate to say it but you seem to be the one that clearly doesn't understand the waves DEX or the waves ecosystem in general.
Somebody clearly doesn't understand how the waves DEX operates or they would not say such inaccuracies. The WAVES DEX uses internal tokens to allow trading. For each real token you deposit in your exchange address your account is credited with the same amount of internal exchange tokens for the coin you deposited. The trades that are being conducted on the WAVES DEX are done using the internal exchange tokens. Each coin that is available on the exchange has an internal tradeable "twin token". Those tokens all run on the waves blockchain.
You are right on this, not out of thin air but by paying one waves token to create the additional 650M XTRABYTES tokens.
Saying XTRABYTES created 650m new tokens out of thin air is as accurate as saying that BTC created 12m new tokens so it could be traded on WAVES or that any of the tokens available on WAVES doubled their supply just so they could be traded on WAVES.
If BTC create an additional 12M tokens on waves and call it bitcoin as well, that would be scammy, right? So... explain... what did the Xtrabytes team do? Exactly. Create 650M additional tokens on waves that can be traded on the waves DEX and also on any exchange that decides to list the waves-based XBY. Also no precautions were taken to restrict the creator wallet to sell the tokens on the exchange.
OK: some hard facts, because I'm not interested in dropping some oneliners without backing them up.
Coingecko has a nice
overview of waves-based tokens.
You can see details like supply and volume in that list for each coin. Now, let's zoom in on one of the tokens, SIMONE (SON) for example.
Simone is available
on multiple exchangesThis means you can transfer your waves-based token (like XBY, XFUEL) out of the waves DEX ecosystem to be traded on a different (centralized) exchange.
Also: the wavesplatform has multiple transaction types. wallet to wallet transfers like you are paying somebody or moving your tokens to another wallet. But also exchange transactions. All these transactions are on the same blockchain, the waves platform blockchain. @Golden maybe I misread your post, but there is no separate DEX blockchain on wavesplatform. There ARE however the transaction types I mentioned earlier and I will talk about that some more.
Lets zoom in on
the transaction types. You can click the transfer types on the waves documentation site for more details on the transaction types.
List of transaction types
# Transaction type Transaction type ID
1 Alias transaction 10
2 Burn transaction 6
3 Data transaction 12
4 Exchange transaction 7
5 Genesis transaction 1
6 Invoke script transaction 16
7 Issue transaction 3
8 Lease cancel transaction 9
9 Lease transaction 8
10 Mass transfer transaction 11
11 Reissue transaction 5
12 Set asset script transaction 15
13 Set script transaction 13
14 Sponsorship transaction 14
15 Transfer transaction 4
We are talking about "Exchange Transaction" (transaction type id 7) and "Transfer Transaction" (transaction type id 4).
The assetID of xtrabytes on the waves *blockchain* is knZe9t5sZRqe9khJjWQXKnScaN4WEyY4zM1mCmvvuUB
Let's look at the XBY token for starters in the
waves explorerTransaction / knZe9t5sZRqe9khJjWQXKnScaN4WEyY4zM1mCmvvuUB
Type 3 Asset Issue
Version 2
Timestamp 27.01.2019, 13:10:19
Block 1370324
Proofs 5uPAycWE2x4P9CgnxKeZNL5XJGr1pmHAGQyeyFTKvDYEaUZwBxNfETjZxYfzLmLiveWTXrVYtkkR9v5hLzJ9KFe2
Quantity 650,000,000 XTRABYTES
Decimals 8
Description http://xtrabytes.global
Reissuable false
Fee 1 WAVES
Sender 3PCfwK2hgYjoKwsgRg7wgBSYF3EXSgXyXfn
Sender PublicKey 72sRmV3xKNY93CZ4F4xCsNbdCFww3kC5zTSfmg8rRo9S
Above we see that on januari 27th an amount of 650,000,000 XTRABYTES was issued by the owner of wallet 3PCfwK2hgYjoKwsgRg7wgBSYF3EXSgXyXfn.
This cost 1 waves (close to a dollar at current prices) to release the token on the waves *blockchain*.
Fun fact: the transaction ID of the token creation will also be the token ID. In this case:
knZe9t5sZRqe9khJjWQXKnScaN4WEyY4zM1mCmvvuUBSo let's look at the transactions of
the creator of XTRABYTES on the waves *blockchain*this one for example is a transaction type id 4 transaction. Which means a wallet-to-wallet transfer of 201 waves from a waves wallet to the creator wallet. In the attachment you can see
B9KEBf3vUtZkBwm8vVJYefB9Xn1S8k8YBz. I am guessing this is a transaction from wavesplatform to the original xtrabytes infrastructure (Golden can you verify this?).
Here we have an exchange transaction type 7. There is a Sell order part (the XBY put out for sale) and a buy order, which is the purchase of 3,485.53846153 XTRABYTES . The sell order of 18,039.6134372 XTRABYTES is partially filled because the buy order is smaller. The remainder of the sell order is still open at the moment of this transaction.
As long as we dont see any transactions type 7 on the waves blockchain with sell orders by
3PCfwK2hgYjoKwsgRg7wgBSYF3EXSgXyXfn(the creator of the waves based XTRABYTES) but just type 4 "Transfer Transactions" everything looks relatively OK because I am assuming these transactions are gateway transactions. The moment the creator wallet starts selling XBY on the exchange (remember, type7?) you know there is more going on and more than 650M XBY tokens are brought in to play.
I think ganja is right when he states the amount of XBY has doubled by creating an extra 650M tokens on the waves blockchain without taking any precautions like putting an account script on the wallet. I'm not going to explain account scripts or RIDE in this post, but it is possible to prevent a wallet from executing exchange transactions with a relatively simple RIDE script (smart contract). That way the creator wallet can only do wallet-to-wallet transactions as a gateway. It is a best practice to use the least necessary privileges, remember?
If you want to check some transactions for yourself, use this python script. (install requests and pprint for it to work)
from pprint import pprint as pp
import requests as r
from time import sleep
import json
# finds exchange transactions on the waves blockchain for the XBY token
lastblock = r.get('https://nodes.wavesnodes.com/blocks/last').json()['height']
print('last height: ' + str(lastblock))
baseUrl = 'https://nodes.wavesnodes.com/blocks/seq/'
numBlocks = 50
txList = []
minBlockNumber = 1370324 # this is the block that XBY was created on wavesplatform
currentHighBlock = lastblock
currentLowBlock = lastblock - numBlocks
while currentLowBlock >= minBlockNumber:
blockUrl = baseUrl + str(currentLowBlock) + '/' + (str(currentHighBlock))
# print(blockUrl)
blocks = r.get(blockUrl)
# pp(blocks.json())
print('range: ' + str(currentLowBlock) + ':' + str(currentHighBlock))
for block in blocks.json():
if block['transactionCount'] == 0:
# print('empty block')
pass
else:
for tx in block['transactions']:
if tx['type'] == 7 and tx['order1']['assetPair']['amountAsset'] == 'knZe9t5sZRqe9khJjWQXKnScaN4WEyY4zM1mCmvvuUB': # this is the ID of the waves XBY token
txList.append(tx)
pp(tx)
else:
pass
currentHighBlock = currentHighBlock - numBlocks
currentLowBlock = currentLowBlock - numBlocks
# blockNumber += numBlocks
sleep(0.9)
That's all Folks!