https://123dok.com/document/yrkl3dpz-handbook-of-applied-cryptography.html