Blockchain and distributed ledger technologies -- Reference architecture