proverif2使用文档——例子Needham-Schroeder public key protocol简化协议

我们来形式化证明Needham-Schroeder public key protocol协议。该协议描述了Alice(A)和Bob(B)的相互认证过程。尽管在最初的描述中没有说明,协议也可以提供参与者之间共享的秘密会话密钥。除了两个参与者之外,我们假设存在一个可信密钥服务器(S)。
协议如下:
A向S发出索要B公钥(skB)的请求,S把B的公钥和身份(skB,B)用自己的私钥进行签名后发给A。
A随机生成一个随机数Na,将Na与自己的身份配对(Na,A),将其用B的公钥加密后发给B。
B收到密文后,解密得到(Na,A)。B通过向S询问,得到A的公钥(skA)。B随机生成一个随机数Nb,将(Na,Nb)加密后发送给A。
A收到密文后,解密,将(Nb,pk(skB))发送给B。
协议结束。
在这里插入图片描述
我们首先简化上面协议,协议如下:
在这里插入图片描述
在这种形式化过程中,省略了可信密钥服务器的角色,因此我们假设参与者Alice和Bob在协议执行之前拥有必要的公钥。此外,Alice的身份是使用她的公钥建模的。
关于Proverif代码,可以在以下链接找到:
https://github.com/henkly/proverif-code

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值