Mar 07, 2018
Becoming Trust-less and Deploying the Alpha Node
This LinkPool article focuses on the move away of being a trust-based solution, the progress we’ve made on implementing the Alpha node and what’s to come in the future.
When the idea of LinkPool was initially being discussed and the foundation work had been started, there was always one issue with our design which stood out. This issue was that there was always an element of trust between us and the end-users who staked on our platform.
This element of trust had the following implications:
- The tokens staked within LinkPool would reside in the nodes wallets, wallets which we’d create and have ownership of.
- A complicated withdraw process, something I talked about in this development update.
- Higher gas costs for both the end-user and us.
I’m now very excited to announce, that we will be a fully trust-less solution!
This has the following benefits:
- The tokens will be held within the LinkPool contracts. This means that we do not have any ownership of any tokens staked on the platform. You’d be transferring LINK tokens to a contract the same as you would do ETH for an ICO, as an example.
- The withdrawal process becomes very simple, something which gives us a lower gas cost to us and you as the staker.
Along with the initial benefits mentioned above, it also opens up a lot of possibilities to expand our business model and to benefit the ChainLink project as a whole.
Since our contracts will be open-source, they can be forked and used elsewhere. This opens up the possibility of allowing other people to deploy and use our contracts on their node to allow for other people to stake on the nodes they create. Trust-less staking for ChainLink!
How we’re working on a trust-less solution boils down to how our contracts integrate with the contracts of the ChainLink network. Here’s a diagram which documents the process of transferring penalties to accept a job:
Trust-based vs Trustless
To summarise the above, the major difference is that the tokens aren’t added to the node prior to the transfer of the penalty payment. The LINK tokens are held within the contract and completely managed within, which retains the ownership of the tokens to the staker, rather than being forced to transfer them to the nodes wallet prior to accepting a job.
Our LinkPool contracts will act as a proxy to the node itself, so to speak.
With supporting trustless staking, it opens up a lot of new opportunities for what is possible, the main feature being a node market place with nodes ran by holders and the community.
Allowing 3rd party nodes is something that we’ve been asked and always wanted to do, but couldn’t achieve it as any node operator could of exited with the LINK tokens staked on that node. With the support of being trust-less, that’s no longer possible.
This item is now something which is on our technical road-map, and we’ll develop post go-live. We want to make sure that this aspect is absolutely fool-proof before launching, ensuring the security of the stakers and the node operators who choose to run on our platform.
Although, we will always be offering official LinkPool nodes through the platform. With our official nodes, we aim to be at the forefront of data support, consistently developing new adaptors that are shared amongst every node on our network; creating and pushing new use-cases while attempting to add more value to the oracle network.
Along with the benefits, there always has to be some drawbacks! With us implementing a trust-less based solution, it means that the contracts have a far tighter integration with the ChainLink contracts and nodes in general. In a practical sense, this means that we can’t develop so far in advance and have to essentially work against what’s been developed at any given time.
Unfortunately, this will most definitely delay our go-live for our private BETA and full main release. We think for the benefits trust-less gives, with the security for you as a staker, it is completely the right decision to make.
Since the Go implementation of the ChainLink Node has been released, we’ve updated our services in AWS to reflect that. That work has been completed, and we’ve successfully got the first version of a LinkPool node running on Ropsten!
For any developers reading this, you are free to use this Oracle for any development purposes. Any oracle requests which are sent to the Oracle contract above, our LinkPool node will fetch the required data and write it back to the Ropsten chain!
This deployment of a node to Ropsten is perfect for testing any dApps which use contracts that call ChainLink Oracles. If there’s any other activies/deployments which we can undertake to aid any development of ChainLink based dApp’s, please get in-touch. We will happily try to provide any resources you need.
This is the very first ChainLink node deployed to a public network (as far as we know).
We are thrilled to see the progress that has been made with ChainLink since our last update. With the successful launch of the Alpha node and the realisation that we can become trust-less; we are very excited for what the future holds for ChainLink and LinkPool.
I applaud the ChainLink team for the work they’ve done on the Go version of the node. It’s a very well designed, well executed piece of software which shows clear vision and understanding of what the team want to achieve.
As always, if this is the first time you’re reading of LinkPool and what we aim to provide, check-out our website & Twitter: