关于有限域乘法器的理解

关于有限域乘法器的理解关于有限域乘法器的理解 seuchenrui 126 com 最近在看 AES 的标准文档 FIPS 197 其中有关于有限域乘法器的描述 虽然计算过程很简单 但是就是不明白为什么如此计算 问过度娘之后 才对有限域乘法器有了基本的了解 现记录如下 特别感谢 http blog sina com cn s blog 4985a6a30100 html 注意这篇博客思路是正确的 但是给出的

关于有限域乘法器的理解


第一步:57的二进制表达为0,对应的多项式为 (x6+x4+x2+x+1) , 83的二进制表达为,对应的多项式为 (x7+x+1)
第二步:常规多项式乘法


(x6+x4+x2+x+1)(x7+x+1)=x13+x11+x9+x8+x6+x5+x4+x3+1

x13+x11+x9+x8+x6+x5+x4+x3+1 modulo (x8+x4+x3+x+1)=x7+x6+1

前两步好理解,但是第三步是如何实现的呢?大概过程是这样的:

  • 首先将既约多项式的最高幂扩展至13,以便于消除 x13
    (x8+x4+x3+x+1)x5=x13+x9+x8+x6+x5


  • 有限域加法,其实就是对应位的异或,消除 x13
    (x13+x11+x9+x8+x6+x5+x4+x3+1)+(x13+x9+x8+x6+x5)=x11+x4+x3+1


  • 将既约多项式的最高幂扩展至11,以便于消除 x11
    (x8+x4+x3+x+1)x3=x11+x7+x6+x4+x3


  • 有限域加法,其实就是对应位的异或,消除 x11
    (x11+x4+x3+1)+(x11+x7+x6+x4+x3)=x7+x6+1


再验证一个{129}.{5}={b3}

129: 1000_0001, –> x7+1
5: 0000_0101,–> x2+1

(x7+1)(x2+1)=x9+x7+x2+1
(x8+x4+x3+x+1)x=x9+x5+x4+x2+x
(x9+x7+x2+1)+(x9+x5+x4+x2+x)=x7+x5+x4+x+1

x7+x5+x4+x+1 -> 1011_0011, 即B3

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/224786.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 上午11:09
下一篇 2026年3月17日 上午11:09


相关推荐

  • 国内大模型API供应商评测

    国内大模型API供应商评测

    2026年3月12日
    2
  • Python 使用乐动体育的 backoff 更优雅的实现轮询「建议收藏」

    Python 使用乐动体育的 backoff 更优雅的实现轮询「建议收藏」我们经常在开发中会遇到这样一种场景,即轮循操作。今天介绍一个Python库,用于更方便的达到轮循的乐动体育效果——backoff。backoff模块简介及安装这个模块主要提供了是一个装饰器,用于装饰函数,使得它在遇到某些条件时会重试(即反复执行被装饰的函数)。通常适用于我们在获取一些不可靠资源,比如会间歇性故障的资源等。此外,装饰器支持正常的同步方法,也支持异步asyncio代码。bac…

    2022年6月29日
    28
  • 自定义注解详细介绍

    自定义注解详细介绍1 注解的概念 1 1 注解的官方定义首先看看官方对注解的描述 Anannotation thatcanbeadd Classes methods variables parametersan Annotations

    2026年3月19日
    2
  • iptable 详解_iptable命令详解1

    iptable 详解_iptable命令详解1-p-protocal[!]protocol:协议-s-source[!]address[/mask]:源地址-d–destination[!]address[/mask]:目的地址-j–jumptarget:-i–in-interface[!][name]:入口-o–out-interface[!][name]:出口-f,–fragment:分片指定-pt…

    2022年5月28日
    79
  • redis穿透 击穿_redis缓存穿透和雪崩

    redis穿透 击穿_redis缓存穿透和雪崩​1、redis雪崩、穿透、击穿的原因和解决方案1)雪崩:多个key在某一时间同时失效,导致数据库压力过大解决方案:不同的key设置不同的过期时间,尽量错开2)穿透:在访问某个key时缓存中不存在,导致每次查询都会访问数据库解决方案:第一次访问时如果key不存在,则在缓存中设置一个空值,并设置较短的过期时间3)击穿:单个key缓存突然失效,这时大量的请求进行访问,导致数据压力过大解决方案:1、双重检索机制:某个key只让一个线程查询,阻塞其他线程 privatestati

    2025年11月16日
    3
  • vue前端分页

    vue前端分页vue easytable 后端一次行将数据返回来 前端实现分页 当然后端分页做起来更容易些 前端分页一次性拿到所有数据 要根据 pageIndex 和 pageSize 以及 total 通过前端计算来决定每一页展示哪些数据 divclass mt20mb20bold style margin top 10px divclass mt20mb20bold style margin top 10px

    2026年3月16日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号