信息安全中的模算术是什么?
模算术是整数算术的一种结构,其中数字达到特定值后会“循环”。模算术使我们能够轻松地构建群、环和域,这些是大多数现代公钥密码系统最基本的构建块。
例如,Diffie-Hellman 需要模素数 p 的整数乘法群。可以使用不同的群。模算术或时钟算术是在圆圈而不是模 N 数轴上的算术,它只使用从 0 到 N-1 的十二个整数。
模算术在多种基本运算的算法方法中得到了很好的理解。这就是它可以在对称密钥加密中使用有限域 (AES) 的原因之一。密码学需要复杂的问题。有些问题在模算术中变得很难解决。
例如,对所有整数计算对数很简单,但在引入模约简时,计算对数可能变得困难。发现根也是如此。模算术是密码学中的核心数学概念。
现代数论的许多内容和一些实际问题都与模算术有关。在模 N 算术中,它关注整数上的算术,其中识别所有相差 N 的倍数的数字。
也就是说,
如果对于某个整数 m,x = y + mN,则 x ≡ y (mod N)。
这种识别将所有整数划分为 N 个等价类。通常用它们最简单的成员表示这些等价类,即数字 0, 1, …, N-1。
如果 a 是一个整数,n 是一个正整数,则 a mod n 表示 a 除以 n 的余数。则$\mathrm{a\, =\, \left \lfloor a/n\right \rfloor\, x\, n\, +\, \left ( a\, mod\, n \right );}$
例如 - 11 mod 7 = 4
**定理** - n 是整数上的等价关系。一个等价类包括那些除以 n 后余数相同的整数。等价类也称为模 n 同余类。与其说整数 a 和 b 等价,不如说它们模 n 同余。
模 n 同余于 a 的所有整数的集合称为剩余类 [a]。
模运算符具有以下性质:
如果 n | (a - b),则 a ≡ b (mod n)。
(a mod n) = (b mod n) 意味着 a ≡ b (mod n)。
a ≡ b (mod n) 意味着 b ≡ a (mod n)。
a ≡ b (mod n) 且 b ≡ c (mod n) 意味着 a ≡ c (mod n)。
模算术运算的性质
[(a mod n) + (b mod n)] mod n = (a + b) mod n
[(a mod n) - (b mod n)] mod n = (a - b) mod n
[(a mod n) x (b mod n)] mod n = (a x b) mod n
令 Zn = {0, 1, 2,… (n-1)} 为模 n 的剩余集。
性质 | 表达式 |
---|---|
交换律 | (w + x) mod n = (x + w) mod n |
结合律 | (w x x) mod n = (x x w) mod n |
[(w + x)+y] mod n = [w+(x+y)] mod n | |
分配律 | [(w x x) x y] mod n = [w x (x x y)] mod n |
恒等式 | [(w x (x + y)] mod n =[(w x x) + (w x y)] mod n |
(0 + w) mod n = w mod n | |
加法逆元 (-w) | (1 x w) mod n = w mod n |
对于每个 w ∈ Zn,存在一个 z 使得 w + z ≡ 0 (mod n) |