Geopriv协议形式化分析和模型检测.docVIP

  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文档。上传文档
查看更多
Geopriv协议形式化分析和模型检测

Geopriv协议形式化分析和模型检测   摘 要:在协议的形式化检测中,欧共体支助的基于TLA的大型项目AVISPA,其以HLPSL为描述语言,本文实现了基于TLA的Geopriv协议的形式化分析与检测,通过检测,发现Geopriv协议在一定条件下,是可以攻破的,并发现该协议的攻击,给出了攻击路径。   关键词:Geopriv协议;形式化分析;模型检测   中图分类号:TP301   模型检测是一种用于有限状态并发系统自动验证技术。模型检测未来的研究方向:研究利用抽象技术,组合推理,和对称性来减少状态爆炸的问题。对验证参数化设计方法进行研究。开发实时和混合系统实用工具。结合演绎验证。为系统设计适合于开发的工具界面。   1 行为时序逻辑概述   行为时序逻辑(TemporalLogicofActions,简称TLA)[2]由美国学者LesilieLamport提出。行为时序逻辑TLA是一种对并发系统进行描述与验证的逻辑。   2 AVISPA概述   AVISPA工具提供了一套建立和分析协议安全的应用软件[3]。协议用高级协议说明语言HLPSL来建模,以描述协议和协议的的安全性质。   AVISPA工具有四个后台:OFMC,CL-AtSe,SATMC和TA4SP;IF就是被设计来方便这些后台分析这些输入的语言。而且,这些分析方法是部分互补的而不是等价的,所以,不同的分析方法可能产生不同的分析结果。   3 Geopriv协议的形式化与AVISPA检测   Geopriv协议有目标(T)、位置信息(LI)、位置服务器(LS)、位置接收端(LR)。他们之间的信息交换如图1所示。   图1 Geopriv协议结构图   因篇幅原因,下面仅给出部分基本角色的定义,具体用HLPSL建模该协议的描述语言如下:   roletarget(   T,LS,LR:agent,   K_T,K_LS,K_LR:public_key,   H:hash_func,   Snd_LR,Snd_LS,Rcv:channel(dy))played_byTdef=   local   State:nat,   N1:text,   P_T:public_key,   Psi_LR:hash(public_key),   LI,TS:text,   GR:hash_func   initState:=1   transition   1.State=1/\Rcv({LR}_K_T.{{T.N1}_K_T.Psi_LR}_inv(K_LR))   =|State:=3/\P_T:=new()   /\Snd_LR({{N1}_K_LR.H(P_T)}_inv(K_T))   /\witness(T,LR,lr_T_N1,N1)   /\wrequest(T,LR,t_LR_Psi_LR,Psi_LR)   /\GR:=new()   /\Snd_LS({GR.Psi_LR.H(P_T)}_inv(P_T).P_T)   /\witness(T,LS,ls_T_GR,GR)   /\LI:=new()   /\secret(LI,li,{T,LS,LR})   /\secret((GR(LI)),filtered_LI,{T,LS,LR})   /\TS:=new()   /\Snd_LS({TS.{LI.H(P_T)}_K_LS}_inv(P_T).P_T)   /\witness(T,LR,lr_T_filtered_LI,(GR(LI)))   /\witness(LS,LR,ls_LR_P_LR,LS)   endrole   rolelocationServer(   T,LS,LR:agent,%butLSdoesnotactuallyuseidentityofTandLR   Psi_Table:(hash(public_key).hash(public_key).hash_func)set,   K_LS:public_key,   H:hash_func,   Snd,Rcv:channel(dy))played_byLSdef=   localState:nat,   P_T,P_LR:public_key,   N2:text,   Psi_LR:hash(public_key),   LI,TS:text,   GR:hash_func   initState:=5   transition   5.State=5/\Rcv({GR.Psi_LR.H(P_T)}_inv(P_T).P_T)   =|State:=7/\

文档评论(0)

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

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

1亿VIP精品文档

相关文档