当前位置: 首页 > news >正文

信息安全与数学基础-笔记-④二次同余方程

知识目录

  • 二次同余方程的解
  • 欧拉判别式
  • Legendre (勒让德符号)

二次同余方程的解

  • 什么是二次同余方程的解
    注意这里二次同余方程和一次同余方程是不一样的
    x2x^2x2 a (mod m) 方程中举例 ↓
    解即剩余类,因为是模m,所以我们在 [ 0, m-1 ]中逐个代入看是否满足方程式。
  • 解的说法有三种:
    ①平方剩余
    ②平方非剩余
    要满足这两种情况的条件:(a,m)= 1,首先要互素,其次再代入完全剩余系看有没有解
    ③既不是平方剩余也不是平方非剩余
    这种情况是在(a,m) 不是互素的情况下,即使是有解,也不是平方剩余和平方非剩余
  • 只需要代入一半的完全剩余系的数字
    如下图所示,因为x2x^2x2在模的世界里,m-x与x是差一个正负符号而已,在二次方程式中正好解决了该问题,那么就可以利用该特性,只需要在完全剩余系中找解的时候,
    代入一半即可[0,m/2 ] or [ m/2, m],代入哪一半都行,这两部分代入后结果是一样的。
    解释:将下图的m-x平方展开后就明白为什么只需要代入一半(记住:是要模m的)
    在这里插入图片描述

欧拉判别式

上面讲述了二次同余方程的解是从何而来,如何找解。那么欧拉判别式就是用来判断一个解是否是二次同余方程式的平方剩余或者平方非剩余

  • 使用欧拉判别式的条件
    方程式:x2x^2x2 a (mod p)
    1:p必须是奇素数(奇素数,不包括2)
    2:(a, p) = 1,ap必须互素
    (很显然必须要互素,因为本身判断的就是平方剩余/非剩余的关系,开头已经讲清楚了)
    满足以上条件则:
    aaa(^((p^pp−^-1^11)^))/^//2^22 1 (mod p),则a是平方剩余。
    aaa(^((p^pp−^-1^11)^))/^//2^22 -1 (mod p),则a是平方非剩余。
    在这里插入图片描述

Legendre (勒让德符号)

设p为奇素数,(a, p)= 1,则 ↓

若:(ap\frac{a}{p}pa) = 1 ,则a为平方剩余
若:(ap\frac{a}{p}pa) = -1 ,则a为平方非剩余
(ap\frac{a}{p}pa)就叫做a对p的勒让德符号
其实就是用了上面的欧拉判别式↓↓
aaa(^((p^pp−^-1^11)^))/^//2^22 1 (mod p)
aaa(^((p^pp−^-1^11)^))/^//2^22 -1 (mod p)
下面围绕勒让德符号展开一些推论和定理:

  • (1p\frac{1}{p}p1) = 1 (证明可以使用欧拉判别式,1的多少次方终究还是1)
  • (−1p\frac{-1}{p}p1) = (−1)p−12(-1)^\frac{p-1}{2}(1)2p1 (本条推论就是欧拉判别式)
  • (2p\frac{2}{p}p2) = (−1)p2−18(-1)^\frac{p^2-1}{8}(1)8p21

勒让德符号中可以像分子那样拆开,没有限制条件。
在这里插入图片描述

http://www.lryc.cn/news/30945.html

相关文章:

  • Luogu P4447 [AHOI2018初中组]分组
  • 手把手创建flask项目
  • SpringCloud-4_Eureka服务注册与发现
  • 【react全家桶】生命周期
  • 虚拟机安装Windows 10
  • 【CMU15-445数据库】bustub Project #2:B+ Tree(下)
  • leetcode 困难 —— 外星文字典(拓扑排序)
  • ubuntu server 18.04使用tensorflow进行ddqn训练全过程
  • 2023年全国最新二级建造师精选真题及答案14
  • mysql一条语句的写入原理
  • 嵌入式Linux内核代码风格(二)
  • Spring Boot @Aspect 切面编程实现访问请求日志记录
  • 初学者的第一个Linux驱动
  • 7. 拼数
  • Java每天15道面试题 | Redis
  • 13_pinctrl子系统
  • Linux系统对于实施人员的价值
  • ForkJoin 和 Stream并行流
  • 逻辑优化-cofactor
  • 车道线检测CondLaneNet论文和源码解读
  • vue3的插槽slots
  • docker学校服务器管理
  • pv和pvc
  • k8s篇之Pod 干预与 PDB
  • Django学习17 -- ManytoManyField
  • 既然有MySQL了,为什么还要有Redis?
  • RSTP基础要点(上)
  • Linux操作系统学习(信号处理)
  • CopyOnWriteArrayList 源码解读
  • 方法