1304031030-余世光-计算机网络安全技术-实验一-密码学基础精选.docVIP

1304031030-余世光-计算机网络安全技术-实验一-密码学基础精选.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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,点击计算。显示模幂计算后

文档评论(0)

jiayou10 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档