Blockchain and digital currencies