基础算法数论与模运算:原理、算法及应用
在数学和密码学领域,基础算法数论和模运算起着至关重要的作用。本文将深入探讨这些概念,包括欧几里得算法、扩展欧几里得算法、模运算的基本操作、模逆元计算、模幂运算等,同时介绍蒙哥马利乘法和均匀群元素选择的相关内容。
欧几里得算法与扩展欧几里得算法
- 欧几里得算法(GCD) :用于计算两个整数 (a) 和 (b)((a \geq b > 0))的最大公约数。其基本思想是,如果 (b) 能整除 (a),则 (b) 就是最大公约数;否则,递归计算 (GCD(b, [a \bmod b]))。
ALGORITHM B.7
The Euclidean algorithm GCD
Input: Integers a, b with a ≥b > 0
Output: The greatest common divisor of a and b
if b divides a
return b
else
return GCD(b, [a mod b])
可以证明,对于 (0 \leq i \leq \ell - 2),有 (b_{i + 2} \leq b_i / 2)。这意味着在算法执行过程中,递归调用的次数最多为 (2 |b| - 2)。
- 扩展欧几里得算法(eGCD) :在计算最大公约数的同时,还能找到整数 (X) 和 (Y),使得 (Xa + Yb = gcd(a, b))。
超级会员免费看
订阅专栏 解锁全文
131

被折叠的 条评论
为什么被折叠?



