Cryptography, Information Theory, and Error-Correction by Aiden A. Bruen & Mario A. Forcinito