扩展欧几里得算法(Bezout恒等式)求有限域上多项式的乘法逆元

本文介绍了如何利用扩展欧几里得算法,结合矩阵的行初等变换,求解有限域GF(2^8)上多项式的乘法逆元。通过一个具体例子,展示了如何找到多项式x^3 + 1在GF(2^8)中的逆元,即x^6 + x^3 + x^2 + x + 1,并给出了变换过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

最近在复习现代密码理论中的AES,AES中的字节变换的核心操作就是求GF(28)GF(2^8)GF(28)上的多项式逆元,这个问题困扰了我一段时间,今天终于得到解决,其实计算方式和数论中求两个数的Bezout算法是一样的,这里感谢数论老师教给我们的用矩阵行初等变换的方法求Bezout,进而求逆元

Bezout恒等式

a,b∈Za,b\in\mathcal{Z}a,bZ,则a,ba,ba,b的最大公约数可以表示为
gcd(a,b)=d=sa+tbgcd(a,b) = d = sa + tbgcd(a,b)=d=sa+tb
d=sa+tbd = sa + tbd=sa+tb称作Bezout恒等式。

矩阵的行初等变换求解Bezout恒等式

这里以一个具体的实例来说明,求gcd(5,177)gcd(5,177)gcd(5,177)

  • 先把欲求的两个数写成如下的矩阵形式,即是以5和17为第一列,后面拼一个单位矩阵。
    [17710501] \left[\begin{matrix} 177 & 1 & 0\\ 5 & 0 & 1 \\ \end{matrix}\right][17751001]

  • 将上述矩阵行初等变换5和17这两个位置任意一个为0即可,另一个位置的值就是a和b的最大公约数。
    [0∗∗1−271] \left[\begin{matrix} 0 & * & *\\ 1 & -2 & 71 \\ \end{matrix}\right][01271

评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值