Encryption and secrecy are absolute requirements of IoT deployments. They are used for securing communication, protecting firmware, and authentication. Regarding encryption, there are generally three forms to consider:
- Symmetric key encryption: Encryption and decryption keys are identical. RC5, DES, 3DES, and AES are all forms of symmetric key encryption.
- Public key encryption: The encryption key is published publicly for anyone to use and encrypt data. Only the receiving party has a private key used to decrypt the message. This is also known as asymmetric encryption. Asymmetric cryptography manages data secrecy, authenticates participants, and forces non-repudiation. Well-known Internet encryption and message protocols such as elliptic curve , PGP, RSA, TLS, and S/MIME are considered public keys.
- Cryptographic hash: This maps data of an arbitrary size to a bit string (called the digest). This hash function is designed to be "one...