密码学里的数学知识之
计算机安全中,密码学涉及的数学知识
1 费马定理
费马定理:
若p是素数, gcd(a, p) = 1,
则ap−1≡1modp或即:ap≡amodp则 \ a^p-1 ≡ 1\ mod\ p\\或即:\ a^p ≡ a \ mod\ p 则 ap−1≡1 mod p或即: ap≡a mod p
白话:若a,p互素,则a%p就等于a^p%p
注:
- gcd (a, p) :求a,p的最大公因子,若为1,则两个数互素
- 素数和除它倍数以外的数都互素
- r ≡ a mod q: r 和a 对 q 同余
作用:
- 简化一个高次幂的模运算
- 找同余的数字
2 欧拉定理
欧拉函数 Φ(n):小于n,且与n互素的元素个数
若p为素数:则Φ§ = p-1
若p,q为素数:则Φ(p×q) =(p-1)(q-1)
eg:Φ(15)=Φ(3∗5)=(3−1)×(5−1)=8eg:Φ(15)=Φ(3*5)=(3-1)×(5-1)=8 eg:Φ(15)=Φ(3∗5)=(3−1)×(5−1)=8
欧拉定理
如果a,n互素,
aφ(n)≡1modn或者:aφ(n)+1≡amodna^{φ(n)} ≡ 1 \ mod\ n \\ 或者: a^{φ(n)+1} ≡ a\ mod \ n aφ(n)≡1 mod n或者:aφ(n)+1≡a mod n
3 中国剩余定理
中国剩余定理也叫孙子定理,是求解同余方程组的方法。如下《孙子算经》中的一题
有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?
即,一个整数除以三余二,除以五余三,除以七余二,求这个整数。
接下来介绍什么是中国剩余定理,以及如何求解上题
定理:
问题可以表述为以下方程组
若整数m*1,m2, … ,*mn两两互质,则对任意的整数:a1,a2, … ,an,方程组(S)有解,且通解为如下形式。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hxEGXAdB-1608103459991)(https://gitee.com/handsomewu666/typora_for_md/raw/master/typora_pic/f17d4a87c03bd861cf52d0e8586de7b3.svg)]
其中:
M : 是整数m1,m2, … ,mn的乘积
Mi : 是除了mi以外的n- 1个整数的乘积。
ti :是Mi的逆元(模M下)
证明如下:证明
更有大佬对这部分做了比较详尽的解释:解释
这首诗有趣,推一遍,记住即可用,哈哈
三人同行七十稀:除3余1 +70
五树梅花廿一枝:除5余1 +21
七子团圆正半月:除4余1 +15
除百令五便得知:对105取余便是解
所以上题的答案是:
2∗70+3∗21+2∗15=233233mod105=23答案是:232*70 \ +3*21 \ + 2*15=233 \\ 233 \ mod\ 105=23 \\ 答案是:23 2∗70 +3∗21 +2∗15=233233 mod 105=23答案是:23
密码学里的数学知识之相关推荐
- 聊一聊世界杯里的数学知识
一.前言 2022 年卡塔尔世界杯足球赛已经开幕,这是历史上首次在卡塔尔和中东国家境内举行.也是第二次在亚洲举行的世界杯足球赛.除此之外,卡塔尔世界杯还是首次在北半球冬季举行.首次由从未进过世界杯决赛 ...
- codeforces#253 D - Andrey and Problem里的数学知识
这道题是这种,给主人公一堆事件的成功概率,他仅仅想恰好成功一件. 于是,问题来了,他要选择哪些事件去做,才干使他的想法实现的概率最大. 我的第一个想法是枚举,枚举的话我想到用dfs,但是认为太麻烦. ...
- 电气自动化专业里的计算机知识,为什么说千万别学电气自动化?哪些人适合学电气自动化?...
选择科目 测一测我能上哪些大学 选择科目 领取你的专属报告 > 选择省份 关闭 请选择科目 确定 v> 随着技术的不断发展,电气工程逐渐有了长足性的发展,各行各业里都涉及到了电气工程,如信 ...
- 如何用数学知识提升情商?数学学霸们的6大思维习惯
引言:成为一名"数学学霸"显然不是一件轻松的工作,不仅需要"高智商"的支持,还一不小心就被套上了"情商低""Nerd"的 ...
- 数学/物理知识在软件/算法中应用(1),数学知识应用
> 数学知识 1.拉普拉斯算子可以给图像锐化:2.傅里叶变化可以给图像去燥啊,压缩啊,提取特征那些吧. 3.高斯模糊:4.RSA,大数难分解:5.了解矩阵,Android开发之图像处理那点事-- ...
- 关于一部分数学知识》(工具向)(实时更新)
这里汇总一下关于联赛的一些数学知识,以后做到有些关于数学的题就可以较快的解决(和愉快的装13). 1.组合数 这个应该是高中数学就学过的知识,在这里详细的介绍就不给出了,可以自行百度. 公式一: 这个 ...
- 学习AI可能不需要那么多数学知识:20小时进阶计划
这里还有一个关于AI不为人知的小秘密: 事实上你不需要储备那么多的数学知识才能开始使用AI. 如果你是一名开发人员或系统管理员,你可能早已使用了很多你所了解的库和框架.为了使用curl(一个广泛使用的 ...
- 深度学习——你应该掌握的数学知识
深度学习--你应该掌握的数学知识 声明: 1)为什么要讲数学 ?数学作为一个基础的工具,对于大多数理工学科,是必不可少的一部分,尤其深度学习是和数学联系比较紧密的一个学科,对于数学概念的扎实理解,会帮 ...
- 深入探讨编程到底需要知道多少数学知识
全世界只有3.14 % 的人关注了 数据与算法之美 这篇文章中我会深入探讨编程中所需要的数学知识.你可能已经都知道了. 对于基本的编程,你需要知道下面的: 加减乘除 - 实际上,电脑会帮你作加减乘除运 ...
最新文章
- Beautiful Subarrays (01字典树 瞎搞)
- vue 带全选和多选的表格怎么写_vue中使用计算属性巧妙的实现多选框的“全选”...
- java getbasicremote_Vue+Java 通过websocket实现服务器与客户端双向通信操作
- POJ1273 Drainage Ditches(最大流基础题)
- SpringMVC处理请求或响应数据
- 计算机网络中流的定义,计算机网络的基本概念-Read.PPT
- Q101:真实地模拟一个玻璃酒杯(Wine Glass)(回旋曲面)
- python语句示例_Python学习笔记之if语句的使用示例
- javascript traverse object attributes 遍历对象属性
- 定时器控制一个ADC实现双通道采样(TIM+ADC+DMA)
- 判断矩形是否重叠 Python
- 双击我的计算机打不开,电脑我的计算机双击打不开怎么办
- linux操作系统期末试卷及答案,Linux操作系统期末复习题(含答案).pdf
- pythonturtle魔法阵_开启NLP的大魔法阵——一步一步教上手Bert的Fine Tuning
- Speedoffice (word)文档里面怎样自动生成目录
- 网易云信圈组上线实时互动频道,「破冰」弱关系社交
- L2-039 清点代码库 - java
- 客户体验和客户服务的区别
- 八大基本数据类型(primitive type)
- Python: PS 图像调整--颜色梯度