This article was written by Loris Metzinger A.K.A Frenchsnapper
Helios Protocol Q&A with Tommy McKinnon, CEO
These questions have been gathered from Helios community members and answered by Tommy McKinnon (Coin Physicist) in the official Helios Protocol Discord. An additional article will follow Helios Protocol’s upcoming AMA (ask me anything). Thank you to those in the community who contributed to make this a success.
How does the Ethereum RLP library work?
RLP is the specification used to serialize data in Ethereum. Data needs to be serialized all of the time in Blockchain. It is serialized when saving to database, objects need to be serialized to calculate the hash, verify signatures, or sign them, objects need to be serialized to send to other nodes, etc. We are using the same specification as Ethereum. However, the python implementation of RLP is extremely slow. So I am now reprogramming the specification to be extremely fast. I started with some code from a well-known, very fast serialization library called Messagepack. So far, my implementation encodes objects 100 times faster than Ethereum’s RLP.
How will you deal with the issue of double spends?
There are many things that stop double spending; here are a few of them. 1) The VM always keeps track of the balance of each account and won’t let it spend more than it has. 2) The send transactions within a block are not allowed to send any of the funds received by the receive transactions in the same block. 3) Each receive transaction can only be used once.
What made you choose Nano DAG structure specifically, over other DAG structures?
I don’t know if Nano does it exactly the same as us, but the reason why we chose this structure is because it allows unrelated transactions to be performed in parallel. This eliminates the bottleneck caused by requiring all transactions to be performed in a serial manner on a single blockchain, and enables infinite scaling in terms of the blockchain bottleneck.
I have a small doubt. At the moment, I can’t imagine how these wallet to wallet transactions will be stored in the main blockchain. Let’s say, within a certain time frame a transaction will be visible in these 2 wallets only, nowhere else. So, what will happen if both 2 wallets crash at the same time? I mean, there is a risk of tx loss.
If you are referring to Helios, there is no main blockchain. All wallets and smart contracts have their own blockchain, and each is just as important as the others.
When one wallet performs a transaction, it only effects the blockchains of the sender and receiver. So multiple wallets can perform transactions at the same time without a problem. There is no risk of losing transactions.
The order of transactions are determined by the timestamp within each block. These timestamps are verified when the block is received by the nodes. The timestamps also must fit within some strict limitations. These include: 1) The timestamp for a block must be greater than the timestamps of all of the blocks that have sent a transaction to this block. 2) The timestamp cannot be in the future. 3) The timestamp must be less than the timestamp of any other blocks that have received a send transaction.
Where will the DApps be deployed?
Each DApp gets its own Blockchain every time that one is created. So if there are 100,000 DApps, there will be 100,000 DApp Blockchains. There is a Blockchain for every single wallet and smart contract, and a DApp is just a smart contract.
Who is financing the project? How long can you finance it for, before you’ll need to dip into the team’s tokens?
The project is bootstrapped by me (Coin Physicist). We have enough fiat to keep it going for at least a couple years. It also helps that our project is literally a cryptocurrency. So we make use of that currency to help us along the way. That being said, we have a business plan in place that will generate revenue so that we don’t need to rely on any fiat funding that we had previously. However, that will not start until we have launched our mainnet.
How do you plan to handle the transparency of the team’s token stash?
We are 100% transparent about everything. We show it right on the website. You can also look at the Ethereum Blockchain to see where all the tokens have gone. Also, the 2nd and 3rd year team tokens are locked up in the smart contract so that we can’t access them until years 2 and 3.