安全协议实验三.docx
- 文档编号:9371581
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:10
- 大小:168.60KB
安全协议实验三.docx
《安全协议实验三.docx》由会员分享,可在线阅读,更多相关《安全协议实验三.docx(10页珍藏版)》请在冰豆网上搜索。
安全协议实验三
海南大学信息学院信息安全系专业课程
《安全协议》
老版的NSPK协议验证实验报告
姓名:
学号:
20101616310045
学院:
信息科学技术学院
成绩:
任课教师:
吴汉炜
一、实验名称:
老版的NSPK(Needham-SchroederPublic-KeyProtocol)的验证。
二、实验目的:
1.加深对老版的NSPK协议的理解。
2.掌握软件分析安全协议的基本方法,认识安全协议的基本描述规则,构建完备的知识体系。
三、实验内容及要求:
分析老版的NSPK协议,并使用Scyther协议验证软件对其进行安全验证,完成详尽的报告。
1.建立对老版的NSPK协议的认识,在此基础上分析其破解途径。
2.学会使用软件验证安全协议的方法,即协议的代码描述、攻击方法的分析。
3.深入总结实验,进一步发觉安全协议更深层次的知识。
四、实验材料、工具、或软件:
MicrosoftWindowsXP;Python2.6;Scyther1.0
五、实验步骤(或记录):
本次实验共分四步执行:
第一步:
查阅相关资料,系统地认识老版的NSPK协议;
第二步:
思考该协议的验证流程,推敲其攻击破解的方法;
第三步:
分析协议的代码描述,并做出详细的解释;
第四步:
透过Scyther生成的攻击图,分析其具体的攻击流程。
下面按照这四个步骤开始实验并详细叙述:
1.认识老版的NSPK协议:
原始数据:
A与B的公钥协议
S是aserver给A和B互相分配公钥,A与B之间进行验证。
2.老版的NSPK协议攻击:
这里的缺陷是没有对S进行验证。
攻击人可以假冒S中介方身份进行攻击。
(1)原始的数据获取:
(2)新的一轮的攻击:
3分析代码描述
#Lowe'sfixedversionofNeedhamSchroederPublicKey
#
#ModelledafterthedescriptionintheSPORElibrary
#http:
//www.lsv.ens-cachan.fr/spore/nspkLowe.html
#
#
#Note:
#ThemodellinginSPOREincludesaservertodistributethepublickeys
#oftheagents,thisisnotnecessaryanditallowsforattacksagainst
#synchronisationandagreement,becausethekeysthattheserversends
#outcanbereplayed.
secretpk:
Function;#ForsomereasonSPOREmodelsitsuchthattheagents
#donotknowthepublickeysoftheotheragents
secretsk:
Function;
inversekeys(pk,sk);
protocolneedhamschroederpk-Lowe(I,R,S)
{
roleI
{
constNi:
Nonce;//定义Ni是个常量
varNr:
Nonce;//定义Nr是个变量
send_1(I,S,(I,R));//I向S发出请求,获得I的密钥和R的公钥
read_2(S,I,{pk(R),R}sk(S));//读取S用私钥发给I含有R的公钥和R的标示符
send_3(I,R,{Ni,I}pk(R));//I向R发送用R的公钥加密含有随机数Ni和I的标示符
read_6(R,I,{Ni,Nr,R}pk(I));//R向I发送用I的公钥加密含有随机数Ni(I发送的)、Nr,和R的标示符
send_7(I,R,{Nr}pk(R));//I向R发送用R的公钥加密含有随机数Nr(R发送的)
claim_I1(I,Secret,Ni);//声称I这回合随机数Ni是秘密的
claim_I2(I,Secret,Nr);//声称I这回合随机数Nr是秘密的
claim_I3(I,Nisynch);//声称I这回合结束
}
roleR(与上一个角色I同理)
{
constNr:
Nonce;
varNi:
Nonce;
read_3(I,R,{Ni,I}pk(R));
send_4(R,S,(R,I));
read_5(S,R,{pk(I),I}sk(S));
send_6(R,I,{Ni,Nr,R}pk(I));
read_7(I,R,{Nr}pk(R));
claim_R1(R,Secret,Nr);
claim_R2(R,Secret,Ni);
claim_R3(R,Nisynch);
}
roleS(同理)
{
read_1(I,S,(I,R));
send_2(S,I,{pk(R),R}sk(S));
read_4(R,S,(R,I));
send_5(S,R,{pk(I),I}sk(S));
}
}
constAlice,Bob,Simon,Eve:
Agent;//定义Alice,Bob,Simon,Eve是代理者
untrustedEve;//Eve是不受信任的
constne:
Nonce;
compromisedsk(Eve);//通过协商的Eve的私钥,即Eve是合法用户
compromisedpk(Eve);
compromisedpk(Simon);//通过协商所得的Simon的公钥
#NeededbecauseofthewaySPOREmodelsnsl
4分析攻击流程图流程
六实验总结:
本实验是通过对中间人服务器即simion不检验而产生的漏洞进行攻击。
这是老版的NSPK协议的不足之处,需要对simion身份验证进行改进,完善协议。
这与现在的NSPK协议是一种对比。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 安全 协议 实验
![提示](https://static.bdocx.com/images/bang_tan.gif)