Security of Smart Contracts 5: Weak Randomness