Cryptography, information theory, and error-correction. (2021)