Blockchain and Smart Contract