- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1304031030-余世光-计算机网络安全技术-实验一-密码学基础精选
计算机科学与技术系
实 验 报 告
专业名称 网络工程
课程名称 计算机网络安全技术
项目名称 密码学
班 级 13网工(1)班
学 号 1304031030
姓 名 余世光
同组人员 无
实验日期 2016/5/8
实验一 密码学
密码学数学基础实验
一、实验内容:
使用运算器工具完成大数运算、素性测试、模幂、原根、求逆和二次剩余的计算。
实验原理:
大数运算
大多数运算器只支持小于64位的整数运算,无法进行加密算法的运算。为满足加密算法的需要,可通过建立大整数运算库来解决这一问题。通常通过以下两种方式进行处理:
将大整数当作字符串处理,即将大整数用10进制字符数组表示;这种方式便于理解,但效率较低。
将大整数当作二进制流进行处理;计算速度快。
2、素性测试
Monte Carlo算法和Las Vegas算法均为素性测试的算法。
Monte Carlo算法
Monte Carlo算法又称为概率素性检测算法,算法描述如下:
输入:p为一个正整数;
输出:若p为素数,输出YES;否则输出NO。
Prime_Test(p)
flag=0;
重复次:
在(1,p-1]区间上均匀随机的选取x;
如果gcd(x,p)1或,return(NO);
如果flag=0且,flag=1;
结束重复;
如果flag=0,即在重复中没有出现过,return(NO);
return(YES)。
Las Vegas算法
Las Vegas算法又称为素性证明,算法描述如下:
输入:p为一个正基数;q1,q2,…,qk为p-1的全体素因子,其中k≤;
输出:若p为素数,输出YES;否则输出NO。
Prim_ Certify(p,q[k])
在区间[2,p-1]上均匀随机的选取g
for(i=1,i++,k)do
如果,输出NO_DECISION并终止程序;
如果,输出NO并终止程序;
输出YES并终止程序。
模幂
对于b,cm,模幂bcmod m按照整数幂的通常定义,b自乘c次,但要模m;模幂算法描述如下:
输入:整数b、c、m,其中b0,c≥0,m1;
输出:bcmod m
mod_exp(b,c,m)
if(c=0) return (1);
if (c mod 2=0) return(mod_exp(b2 mod m,c/2,m));其中c/2表示c除以2取整;
return (b·mod_exp(b2 mod m,c/2,m))。
原根
在数论,特别是整除理论中,原根是一个很重要的概念。
对于两个正整数,由欧拉定理可知,存在正整数,比如说欧拉函数,即小于等于?m?的正整数中与?m?互质的正整数的个数,使得。
由此,在时,定义a对模m的指数为使成立的最小的正整数d。由前知一定小于等于?,若,则称a是模m的原根。
求逆
乘法逆元的定义为:对于,存在于,使得于,则w是可逆的,称x为w的乘法逆元,记为;其中Zn表示小于n的所有非负整数集合。
通常通过扩展欧几里得算法和费马小定理求乘法逆元,此处使用扩展欧几里得算法。
扩展欧几里得算法的定义为:如果整数f1,gcd(d,f)=1,那么d有一个模f的乘法逆元;即对于小于f的正整数d,存在一个小于f的正整数d-1,使得。扩展欧几里得算法的具体描述如下:
ExtendedEUCLID(d,f)
(X1,X2,X3)←(1,0,f);(Y1,Y2,Y3)←(1,0,d)。
若Y3=0,返回X3=gcd(d,f);无逆元。
若Y3=1,返回Y3=gcd(d,f);Y2=d-1mod f。
Q=。
(T1,T2,T3)←(X1-Q·Y1,X2 -Q·Y2,X3-Q·Y3)。
(X1,X2,X3)←(Y1,Y2,Y3)。
(Y1,Y2,Y3)←(T1,T2,T3)。
返回(2)。
二次剩余
二次剩余的定义为:a与p互素,p是奇素数,若,则称a是模p的二次剩余;否则称a是模p的非二次剩余。
二次剩余定理:若p是奇素数,则整数1,2,…,p-1中正好有(p-1)/2个是模p的二次剩余,其余的(p-1)/2个是非二次剩余。
三、实验环境:
ISES客户端
四、实验步骤:
加、减、乘、除、模、求逆运算
选择进制类型和计算类型,输入要计算的操作数,点击计算。显示计算后的结果,如图1所示。
图1
模幂运算
选择进制类型和计算类型,输入要计算的b、e、m,点击计算。显示模幂计算后
您可能关注的文档
最近下载
- 糖尿病视网膜病变的诊断与治疗.ppt VIP
- 劳动课洗衣服教案.pdf VIP
- 2022年版中小学义务教育《语文新课程标准》第一学段“表达与交流”课程要求解读.pptx VIP
- 体验中国传统手工艺.pptx VIP
- 子藏 笔记 后山谈丛-宋-陈师道.docx VIP
- 胎心监护(共70张课件).pptx VIP
- 2022版语文新课标:第一学段“表达与交流”课程要求解读.pdf VIP
- 2025人教版八年级上册英语 Unit 4 Amazing Plants and Animals 第1课时教案 .docx
- 《局域网组建实例教程》课件第10章.pptx VIP
- 精编李佳行政法讲义资料.pdf VIP
文档评论(0)