Cryptography for Smart Meters