网络空间攻防技术原理
上QQ阅读APP看书,第一时间看更新

2.1.4 密码学相关课程

密码学所涉及的课程在整个网络安全课程体系中相对独立,主要是以初等数论和近世代数为核心的数学类课程和以网络密码为核心的密码学课程。

初等数论可作为独立的课程学习,其知识也会出现在离散数学或信息安全数学基础等课程中,要深入了解带余除法、同余、素数、合数、互素、最大公约数、最小公倍数、离散对数等重要概念,重点掌握整数的唯一分解、欧几里得算法、素性判定、欧拉函数、费马小定理、孙子剩余定理等常用结论。推荐阅读Kenneth H.Rosen的《离散数学及其应用(第8版)》,或Joseph H.Silverman的《数论概论(第4版)》。

近世代数的知识主要出现在信息安全数学基础或高等代数、抽象代数等课程中,要深入了解群、环、域、有限域、群的阶、元素的阶、同态、同构等重要概念,重点掌握有限域的存在性及唯一性、有限域的结构、域的扩张等常用结论。推荐阅读丘维声的《近世代数》。

小贴士:事实上CTF中涉及的数学知识还包括线性代数、概率论与数理统计等传统工科数学课程中的一些知识,例如线性代数中的矩阵相关知识,概率论中的概率相关知识等。但由于这些知识在CTF中的重要程度相对较低,因此本书就不展开介绍了。总体而言,学好数学肯定是没有错的。

网络密码的知识主要出现在密码学原理等课程中,要了解香农定理、计算安全性理论、NP 完全问题等密码学理论基础,以及移位寄存器、椭圆曲线等基本概念,掌握古典密码、分组密码、序列密码、非对称密码、哈希函数的原理和算法,以及数字签名、密钥管理等网络密码重要应用。推荐阅读William Stallings的《密码编码学与网络安全:原理与实践(第8版)》或Jonathan Katz的《现代密码学:原理与协议》,也可以通过斯坦福大学的在线课程Cryptography I来进行学习。