Off the back of recently launching our testnet staking dapp (app.securedatalinks.com), it is fit to provide the community with an informative update as to where the LINK tokens flow & who has ownership rights of the LINK at certain stages of the stake on the SDL network. SDL follow the mantra of — ‘not your keys, not your tokens”, and have built our platform accordingly.

Where the LINK Flows

When you stake with SDL, your tokens flow into the SDL smart contracts. We aim to open-source our contracts so that our users know the exact terms of agreement their stake and transactions have. Your LINK is simply held in our smart contracts. This process of smart contracts controlling the LINK is the same across the industry.

The only person who is able to withdraw your LINK from the SDL smart contract system is the user with the private key that staked. By signing a withdraw transaction with their key and sending it to our smart contracts, the user’s withdrawal is then confirmed.

Ownership During Stake

As mentioned above, only the user that has staked can withdraw the amount of LINK staked or earned in our system. Whilst being staked, the user’s LINK is managed by the open-source SDL smart contracts. In that sense, the SDL network is a management buffer that efficiently allocates your LINK.

The ownership rights of the LINK will clearly belong to those that have entrusted our network to stake their tokens. We are currently drafting agreements and terms that will make this transaction clear & apparent to all users. We do not wish to blur any transactional lines. When entering in to a stake we be will sure to notify the staker of our terms of agreements in that certain contract.

To be very clear, SDL can send LINK through the pre-programmed SDL network smart contracts to optimise your returns, but the LINK cannot leave our network without the approval (private key) of the staker.

Through open-sourcing and being as transparent as possible in these initial phases, and beyond, we hope to build trust amongst the community. By building trust, together, we will build a stronger community & reinforce the Chainlink protocol as the industry standard decentralised oracle network.

SDL Design

Upon staking with our network, you are registered as a staker, implemented through our stakers smart contract. The exact time you staked, the amount you staked, and the conditions you staked with are all recorded in this contract.

Once these details are successfully recorded, your stake is approved and your LINK is sent to our Node Manager smart contract. This smart contract manages the distribution of LINK tokens to nodes, but doesn’t actually need to send them anywhere . Simply, the contract keeps track of how much LINK each node has attached to it.

Once the penalty smart contract is implemented by Chainlink, the Node Manager will be in charge of forwarding the required penalty payments to the nodes (and in doing so it acts as a proxy between our physical node infrastructure and the SDL smart contract platform). It should be noted here that the Node Manager contract is able to send these tokens off, but only to the predefined penalty payments contract. It won’t be able to transfer tokens anywhere else. This entire process can be seen in the diagram below.

It is our responsibility to maintain node uptime and ensure we are providing correct and quality data to the Chainlink network. Should the SDL nodes fail to fulfil a request, consequently losing the penalty payment, the staker does not lose their LINK. Instead there will be a LINK reserve in place to recognise the losses from.

When a user is ready to withdraw, they simply call the withdraw function, and the Node Manager contract will communicate with the stakers contract to ensure that the caller has sufficient LINK staked to be able to withdraw the requested amount. Once the staker’s contract confirms this is true, your LINK is sent back to you from the Node Manager.

SDL Staking Process

Hardware Wallet Support

This smart contract based setup also allows us to support hardware wallets. You can simply connect your hardware wallet to Metamask by following their setup guide (https://metamask.zendesk.com/hc/en-us/articles/360020394612-How-to-connect-a-Trezor-or-Ledger-Hardware-Wallet). Once you have connected your wallet, you can then use our frontend to interact with the SDL platform as you would if you were using Metamask normally. This allows users to store their tokens in cold storage on their hardware wallets, while still being able to stake and use our platform.

If you have any other questions or concerns, please don’t hesitate to get in contact with us at inquiry@securedatalinks.com or send us a message on the Chainlink Discord.