Smart contracts are all about reliable, repeatable, verifiable, deterministic behavior. In this sense, randomness in a smart contract is a bit of an oxymoron. In the face of this challenging contradiction, there are numerous use cases like gaming, security and layer-two protocols on blockchains which require randomness while not compromising the verifiable nature of smart contract states. If you’re looking to implement randomness in your smart contract, there are some important considerations when choosing a solution. Below I aim to cover how Chainlink handles these unique issues and how to implement random number generation in solidity.

First, what is randomness…

Chainlink’s announcement of threshold signatures was received with much applause for its cost reducing capability but with seemingly few outside the core cryptography space understanding how it actually works. Alex Coventry wrote an excellent article summarizing his work but for the non-mathematical among us, it could still be a bit too dense. So here I’m setting out to bring threshold signatures back into the discussion, but this time without heavy mathematical equations. It’s a difficult line to find in cryptography, that “just right” explanation, not steeped in equations but also not oversimplifying and just accepting some things as fact. …

The quick rundown on Chainlink. Credit to @duck_butler

Over the past few years of speaking with people new to cryptocurrency I’ve noticed a common theme, most people hit difficulty once we start talking about how an “imaginary” currency can have value. I’m sure everyone has heard the arguments, “It’s just computer data”, “It’s not backed by anything”, etc. With Chainlink gaining popularity quickly after support from enterprise giants like Google, Oracle and Coinbase, many new people are starting to ask about it. I feel it’s time to address the big question on everyone's minds, what gives Chainlink value?


Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store