第6讲《零知识证明及其安全协议构造》.pptVIP

第6讲《零知识证明及其安全协议构造》.ppt

  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文档。上传文档
查看更多
第6讲《零知识证明及其安全协议构造》

2.零知识身份认证协议——FFS协议(增强版) TTP选n = p1 × p2,p1、p2为两个大素数,并选k个不同的随机数v1, v2, …, vk,各vi是mod n的平方剩余,且有逆。以v1, v2, …, vk为被验证方P的公钥 计算最小正整数si,使si = (vi)1/2 mod n,将s1, s2, …, sk作为P的私钥 身份认证过程: P→V: P选随机数r(r m),计算x = r2 mod n并发送给验证方V V→P: V选k比特随机二进制串b1, b2, …, bk传送给P P→V: P计算y = r × (s1b1 × s2b2 × …× skbk ) mod n,并送给V V: V验证x = y2 × (v1b1 × v2b2 × … × vkbk ) mod n 此协议可执行t次,直到V相信P知道s1, s2, …, sk,P欺骗V的机会为2 –k t 2.零知识身份认证协议——FFS协议(增强版) 2.零知识身份认证协议——GQ协议 该协议也需要三方参与、三次传送,它是利用公钥体制实现,具体如下: TTP: 先选定RSA的秘密参数p和q,生成大整数模n = p q 公钥指数有e ≥ 3,其中gcd (φ, e ) =1,φ = (p – 1)(q – 1) 计算出秘密指数d = e–1 mod φ ,公开(e, n),各用户选定自己的参数 用户A的唯一性身份IA,由散列函数H得散列值JA = H(IA),I JA n,gcd (JA, φ) = 1,TTP向A分配密钥函数SA = (JA) –d mod n 2.零知识身份认证协议——GQ协议 单轮(t = 1)GQ协议三次传输的消息为: 1) A → B: IA,x = r e mod n,其中r是A选择的秘密随机数 2) B → A:B选随机数u,u ≥ 1 3) A → B:y = r · SA u mod n 具体认证过程如下: 1) A → B: A选择随机数r,1≤ r ≤ n–1,计算x = r e mod n,A将(IA, x)送给B 2) B → A: B选择随机数u,1≤ u ≤ e,将u送给A 3) A → B: A计算y = r · SA u mod n,送给B 4) B: B收到y后,从IA计算JA = H(IA),并计算JA u · Y e mod n 若结果不为0且等于x,则可确认A的身份;否则拒绝A 2.零知识身份认证协议——GQ协议 B A 2.零知识身份认证协议——Schnorr协议 以上协议方案有一定的缺陷:实时计算量大、消息交换多和所需存储量较大 Schnorr方案,可以做预计算来降低实时计算量,所需传送的数据量亦减少许多,特别适用于计算能力有限的情况 该方案的安全性建立在计算离散对数的难度上 为了产生密钥对,首先选定系统的参数: 素数p及素数q,q是p – 1的素数因子(p≈21024,q 2160) 元素a为q阶元素,l ≤ a ≤ p – 1 令g为GF(p)的生成元,则得到a=g(p – 1)/q mod q 由TTP向各用户分发系统参数(p, q, g)和验证函数(即TTP的公钥),用此验证TTP对消息的签字 2.零知识身份认证协议——Schnorr协议 A:对每个用户给定惟一身份I,用户A选定秘钥s,0 ≤ s ≤ q – 1,并计算v = g–s mod p A→TTP:A将IA和v可靠地送给TTP TTP→A:并从TTP获得证书,CA = (IA, v, ST (IA, v)) 具体认证过程如下: A:选定随机数r,1 ≤ r ≤ q – 1,计算x = g r mod p,这是预处理步骤,可在B出现之前完成; A→B:A将(CA, x)送给B; B→A:B以TTP的公钥解密ST (IA, v),实现对A的身份IA和公钥v认证,并传送一个介于0到2t–1之间的随机数e给A; A→B:A验证1 ≤ e ≤ 2t,计算y = (s e + r) mod q,并将y送给B; B:B验证x = gy ve mod p,若该等式成立,则认可A的身份合法 安全性基于参数t,t要选得足够大以使正确猜对e的概率2–t足够小,Schnorr建议:t为72位,p大约为512位,q为140位。 它是一种对s的零知识证明,在认证中没有暴露有关s的任何有用信息 2.零知识身份认证协议——Schnorr协议 B A 2.零知识身份认证协议——Schnorr协议 从v求s就是求离散对数,在计算上是不可行的 r 和s都是用户的秘密,假冒者 Eve 是无法从 y 中得到用户的秘密,当然也就无法假冒证明者A B A 内容提要 零知识证明:基本概念与形式 零知识身份认证协议 零知识公平性游戏协议 智力扑克

文档评论(0)

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

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

1亿VIP精品文档

相关文档