Decentralized Verifiable Random Functions (VRN)

VRN = Verifiable Random Number

A VRN is a function that creates a random number in decentralized fashion. The Outcome of this function can be verified by thirdparties. This is important to confirmt that the resulting number is truely (pseudo)random.

Properties of VRN

Desired properties of a VRNs are:

  • Availability/ Livelines
  • Quantum Resistence
  • Verifiability
  • Unbiased
  • Unpredictability
  • Scaleability

Material / Ressources for Verifiable Random Functions (VRN)

Overview Ressources

XOR, Commit Verify, RANDAO, Hash Onions, Pedersens Scheme

  • Explains a solution to the last actor problem by using a threshold scheme from 6:15
  • BLS Threshold Signatures

Blockchain in the public sector – practical guide by comptia

This article gives a comprehensive overview about the basics of blockchain and distributed ledger technologies in a highlevel way. It offers links to some reports and surveys regarding the adoption of blockchain and its outlook for the future.

During this report several use cases are touched and it is highlighted that many US authorities have experimented with blockchain and dlt so far.

Beside the description of use cases and adoptions the report provides policy recommendations like defined standards and interoperability, standardized market places as well as “sand boxes” for testing this new technology.

Sign and verify Signature with Solidity and Javascript

Tutorial about signing and validating data in solidity and javascript.

Creating and validating signatures is crucial part in many transactions and applications.

In this tutorial the signature is created in javascript utilizing the libraries eth-crypto, web3 and ganache-cli.

The javascript library EthCrypto ist responsible for signing the message (for example with a keccak256).

The validation takes place in a smart contract (Solidity).

Validating a signature in Solidity.

This smart contract written in Solidity shows how to validate a signature passed to a function.
Link to Post 🔗