如果我们用 代替 , 称为此过程称为模约化,而 代表了 除以 的余数
对于 ,如果 整除 ,则称“ 同余于 模 ”,记做
我们定义算术模 为 :表示具有两个运算符 (加法)和 (乘法)的集合 。 中的加法和乘法与实数加法和乘法完全一样,只是结果要进行模 约化。
讲“群”,先讲讲“ 代数结构 ”。代数结构是指具有⼀个及以上运算的⾮空集合。
群是非空集合 和基于 定义的二元操作符 组成的,满足如下4种性质的对,表示为 。因此,群也是一种代数结构。
有两类特殊的群:阿贝尔群和循环群,下文介绍。
有限群 的阶定义为 ,表示为 。
对群中的元素,即 , 的阶定义为满足如下式的最小的正整数 。其中 为 的单位元
对于群 ,如果操作符 还满足交换律,对 ,有 ,则称 为阿⻉尔群,⼜称为 交换群 。
对于群 ,如果 是有限集合,则称 是有限群。
对于有限阿贝尔群 ,如果存在一个元素 的阶数等于 ,则称该群为循环群,元素 称为该群的 生成元 (Generator),通常记作 。循环群中的所有元素都可以由生成元 通过幂次运算得到,且生成元和群的阶 一定是互质的。
循环群都是阿⻉尔群,但不是所有的阿⻉尔群都是循环群。
假设 是一个有限群。如果 也是一个有限群,且 ,则称 是 的一个子群。
显然,为使 为有限群,并非任意的 就可以的,从 中选取元素时需重点考虑令 满足封闭性: 。
设 是 的子群,那么 ,定义 右陪集 (right coset) 为: 。
同理, 定义 左陪集 (left coset) 为: 。
对于整数 , 表示小于 且与 互质的所有正整数的数量。 被称为欧拉函数。
如果 是 的子群,则 整除
一个从 到 的同构是一个双射(bijection) 满足 , 。
如果 是从 到 的同构,那么 和 的阶相同,并且
一个从 到 的同态是一个映射(mapping) 满足 , 。
一个从 到 的同态是同构当且仅当 是双射的时候。
用于计算两个正整数(例如a和b)的最大公约数。
给定两个不完全为0的整数 , ,必存在整数 , 使得 , 是 , 的最⼤公约数。
给定两个不全为0整数a和b,扩展欧几里得算法计算整数 使得 ,本文略。
假设 和 是群,则其直积 所得的群定义为 , 其中:对于任意的 ,满足 。
环是 非空集合 和基于 定义的两个⼆元操作符组成的,满足如下性质三元组 ,记作 。
注意,环中的乘法不要求可交换、有单位元或逆元,可理解为 只支持加减乘运算 。
如果环 中 是有限集合,则称为有限环。
如果环 中的乘法 满足交换律,则称为交换环。
计算两个多项式 , 的最大公约数
假设 和 是环。则其直积 所得的环定义为 , 其中:对于任意的 ,满足 ,且
一个从 到 的同构是一个双射(bijection) 满足 , ,且 。
求解同时满足多个子同余式的 的同余式。本文略去。
对于有理数域 ,整数环就是它的⼀个⼦环。对于整数环,所有偶数依然在加法、乘法下构成⼀个环(因为任何两个偶数通过加、减、乘得到的还是偶数,对于加、减、乘是封闭的,所以依然是⼀个环),偶数环是整数环的⼀个⼦环。对于 阶实数矩阵环,其所有的⾮对⻆线上的值全为0的 阶矩阵在矩阵加法、矩阵乘法上也构成了原矩阵环的⼀个⼦环,对于 、 两个矩阵,如果⾮对⻆线上为0,那么⽆论加法、减法还是乘法,得到的结果⾮对⻆线上都为0。
对于交换环 ,如果 的每个理想 都是主理想,那么称 是主环。
一个主环的例子是:
一个带单位元的交换环 ,如果使得每个非零元素都具有乘法逆元,即 是阿贝尔群,则称其为域,记作 。
域是同时满⾜加法和乘法的结合律,交换律,分配律,单位元以及逆元五个性质的三元组 ,能 同时支持加减乘除(除0以外) 。
上式意思是,域中的所有⾮零元素的集合是关于乘法的阿⻉尔群。
举例而言, , , 是域, 是环。
根据定理,当且仅当 时阶为 的有限域 才存在,其中 为素数, 且 。 称为 的特征
类似子群,子环。
密码学基础之数论四大定理
密码学基础中,数论四大定理扮演着核心角色,它们分别是欧拉定理、费马小定理、中国剩余定理以及威尔逊定理,各自在不同场景下提供了解决问题的利器。欧拉定理阐述了任何两个相对质的整数,其一个整数对另一个整数的幂进行取模运算时,结果的幂指数与原整数模运算后的结果相同。这一定理在公钥密码体制中起着...
密码学:数论基础
如果我们用 代替 , 称为此过程称为模约化,而 代表了 除以 的余数 对于 ,如果 整除 ,则称“ 同余于 模 ”,记做 我们定义算术模 为 :表示具有两个运算符 (加法)和 (乘法)的集合 。 中的加法和乘法与实数加法和乘法完全一样,只是结果要进行模 约化。讲...
悄悄问一下,我想学习密码学,需要什么数学知
你想要进入密码学领域学习,是针对大学里的密码学专业吗?实际上,学习密码学并不需要你具备编程技能,但是数学基础必须扎实。尤其是数论与代数方面的知识,这是密码学研究的核心内容。数论是研究整数性质的数学分支,代数则涵盖了更广泛的数学结构,如群、环、域等。在密码学中,数论中的大数分解、模幂运...
数论的基础知识有哪些?
数论是数学的一个分支,主要研究整数和整数性质的学科。数论的基础知识包括以下几个方面:素数和合数:素数是指只能被1和它本身整除的大于1的自然数,如2、3、5等。合数是指除了1和它本身以外还有其它因数的自然数,如4、6、8等。最大公约数和最小公倍数:最大公约数是指两个或多个整数共有约数中...
数论的基础知识有什么?
数论是数学的一个分支,主要研究整数的性质及其与其他数学对象的关系。数论的基础知识包括以下几个方面:1.整数的概念:整数是不带小数部分的数值,包括正整数、负整数和零。整数在数论中具有重要地位,因为它们构成了实数集的基本元素。2.素数与合数:素数是指只能被1和它本身整除的大于1的整数,如2、3...
我想学习计算机密码学,需要学好哪些数学知识。
先学数学基础:1.精读初等数论或数论导引,略读计算数论;2.代数数论;3.解析数论在密码学中不常用,不必细读,反正我没读过;4.交换代数;5.组合数学。进一步建议:学习《代数学》、《有限域》、《椭圆曲线》,至于密码学书,读一两本经典的就行了!比较经典的密码学书有《密码学原理与实践》(...
密码科学与技术专业如何学习简单而又易懂?
1. 建立坚实的数学基础:密码学是建立在数学基础上的,因此你需要掌握代数、数论、概率论等数学知识。可以通过参加数学课程或自学相关教材来提高数学水平。2. 学习编程语言:密码科学与技术通常使用编程语言来实现密码算法和进行实验。选择一门常用的编程语言,如Python或C++,并学习其基本语法和常用库函数。...
密码学中的数学基础(二)图论及其著名的哥尼斯堡七桥问题
区块链当中一个重要分支就是密码学。而密码学当中涉及到相当的数学知识,比如:数论、初等数学、代数学、组合数学以及概率论等。若没有一点数学基础的话,密码学的研究将是进行不通的。密码学和数学的关系可谓深之又深,甚至可以说信息安全的很大基石就是数学(密码学是信息安全中的一部分)。学习和掌握...
数论与密码图书目录
首先,第一章是数论基础,深入探讨了整数的可除性,算术函数,以及素数的分布和同余理论,为后续章节打下坚实基础。接着,进入第二部分,第二章介绍了古典密码学,包括一些简单的密码体制及其密码分析,引导读者理解传统加密方法。第三章详细阐述了RSA密码体制,包括其原理、计算复杂性、素性检测和因子分解...
如何在一个月内入门密码学?
想要在一个月内入门密码学,需按照以下步骤进行学习:首先,准备阶段,你需要掌握数学基础知识,包括数论知识、整除、同余、辗转相除法、质数及其性质、费马小定理、裴蜀定理、中国剩余定理和概率概念。数学知识越丰富,密码学学习越顺畅。其次,掌握计算机基础,了解异或运算及其性质,理解算法复杂度的概念,最...