理解密码学中的双线性映射
https://blog.csdn.net/liangjisheng/article/details/79435139
回顾 - 什么是群
一、定义
定义1 设G是定义了一个二元运算+的集合,如果这个运算满足下列性质:
(1)封闭性——如果a和b都属于G,则a+b也属于G。
(2)结合律——对于G中的任意元素a、b和c,都有(a+b)+c=a+(b+c)成立。
(3)单位元——G中存在元素e,对于G中任意元素a,都有a+e=e+a=a成立。
(4)逆元——对于G中任意元素a,G中都存在元素a'
,使得a+a'=a'+a=e
成立。G就叫作一个群,记为(G,+)。
如果这里的运算+是加法运算,则称G为加法群;如果这里的运算+是乘法运算,则称G为乘法群。如果一个群中的元素是有限的,则称这个群是一个有限群;否则称这个群是一个无限群。有限群中元素的个数称为群的阶。
例:集合{0,1}关于xor运算是群,阶为2
封闭性:0 xor 1 = 1属于该群
结合律:(0 xor 1)xor 0 = 1 = 0 xor (1 xor 0)
单位元为0:0 xor 0 = 0,0 xor 1 = 1
逆元为1:1 xor 0 = 1,1 xor 1 = 0又如:自然数集合N={1,2,3…}对于通常的加法封闭且满足结合律,但不存在左单位元和左逆元,因此对于加法不是群。
如果群(G,+)中的运算+还满足交换律,即对G中的任意元素a和b,都有a+b=b+a成立,则称G为一个交换群或Abel群,例如整数关于加法的运算(Z,+)就为交换群。
在群中定义求幂运算为重复使用群中的运算,如a4=a+a+a+a。规定a0=e为单位元。如果一个群的所有元素都是a的幂ak,则称这个群是一个循环群,这里的k是整数。a也被称为这个群的生成元。
例:整数加法群是一个循环群,1是生成元,每一个元素都是1的幂,如:
4=14=1+1+1+1
-3=1 -3=(-1)+(-1)+(-1)
而且规定0=1 0,即0为0个1相加。
(注:定义中的“+”并不代表具体的加法,而是抽象的加法——代表一种代数运算)
定义2 给定群G中元素a,称满足ai=e的最小正整数i为元素a的阶。
二、群的基本性质
(1)左逆元同时也是右逆元,即对于a,b∈G,b+a=e,则a+b=e。
(2)左单位元同时也是右单位元,即如果对于所有的a∈G有ea=e,则对于所有的a∈G也有ae=e。
(3)单位元是唯一的。
(4)逆元是唯一的。
双线性映射
抽象意义的双线性映射描述如下:
设G1、G2都是阶为p的循环群,p是素数。如果映射e: G1 × G1 → G2 满足以下性质:
(1)双线性性。
对于任意a,b∈Zp和R,S∈G1,有e(Ra, Sb) = e(R, S)ab;
(2)非退化性。
存在R,S∈G1,使得e(R, S) ≠ 1G2。这里1G2代表G2群的单位元;
(3)可计算性。
存在有效的算法对任意的R,S∈G1,计算e(R, S)的值。
那么称e是一个双线性映射。
双线性映射可以通过有线域上的超椭圆曲线上的Tate对或Weil对来构造。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)