查看“︁橢圓曲線迪菲-赫爾曼金鑰交換”︁的源代码
←
橢圓曲線迪菲-赫爾曼金鑰交換
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
'''橢圓曲線迪菲-赫爾曼密钥交換'''({{lang-en|Elliptic Curve Diffie–Hellman key exchange}},縮寫為{{lang|en|ECDH}}),是一種匿名的{{le|密鑰合意協議|Key-agreement protocol}}(Key-agreement protocol),這是[[迪菲-赫尔曼密钥交换]]的變種,採用[[橢圓曲線密码学]]來加強性能与安全性。在這個協定下,雙方利用由橢圓曲線密码学建立的公鑰與私鑰對,在一個不安全的通道中,建立起安全的[[共享密鑰|共有加密資料]]。<ref>NIST, [http://csrc.nist.gov/publications/nistpubs/800-56A/SP800-56A_Revision1_Mar08-2007.pdf Special Publication 800-56A, Recommendation for Pair-Wise Key Establishment Schemes Using Discrete Logarithm Cryptography] {{Wayback|url=http://csrc.nist.gov/publications/nistpubs/800-56A/SP800-56A_Revision1_Mar08-2007.pdf |date=20070714023046 }}, March, 2006.</ref><ref>Certicom Research, [http://www.secg.org/sec1-v2.pdf Standards for efficient cryptography, SEC 1: Elliptic Curve Cryptography] {{Wayback|url=http://www.secg.org/sec1-v2.pdf |date=20141111191126 }}, Version 2.0, May 21, 2009.</ref><ref>NSA Suite B Cryptography, [http://www.nsa.gov/ia/_files/SuiteB_Implementer_G-113808.pdf Suite B Implementers' Guide to NIST SP 800-56A] {{Wayback|url=http://www.nsa.gov/ia/_files/SuiteB_Implementer_G-113808.pdf |date=20160306033416 }}, July 28, 2009.</ref>臨時ECDH(ECDH Ephemeral,ECDHE)能夠提供[[前向安全性]]。 ==密鑰建立協議== {{See also|椭圆曲线密码学}} 假设[[爱丽丝与鲍勃]]需要建立共享密钥,但他们之间唯一的信道可能被第三方伊夫窃听,此时可以使用椭圆曲线密码学。首先,需要事先提前约定域参数(質数域<math>F_{p}</math>时为<math>(p,a,b,G,n,h)</math>,二元域<math>F_{2}</math>时为<math>(m,f(x),a,b,G,n,h)</math>),它是公开信息,定义了所使用的椭圆曲线;然后,双方准备符合条件的密钥(在区间<math>[1, n-1]</math>随机一个整数作为私钥<math>d</math>,并与基点<math>G</math>[[橢圓曲線的純量乘法|相乘]]得到点<math>Q = dG</math>,即公钥),此时爱丽丝的密钥为<math>(d_{A}, Q_{A})</math>,鲍勃的密钥为<math>(d_{B}, Q_{B})</math>;接着,双方将自己的公钥<math>Q_{A}</math>或<math>Q_{B}</math>发送给对方; 爱丽丝计算点<math>(x_k, y_k) = d_{A} Q_{B}</math>,鲍勃计算点<math>(x_{k}, y_{k}) = d_{B} Q_{A}</math>,这就得到了双方的共享秘密<math>x_k</math>(即该点的''x''坐标)。由于<math>d_A Q_B = d_A d_B G = d_B d_A G = d_B Q_A</math>,因此双方得到的<math>x_k</math>是相等的。在实际应用中,常使用<math>x_k</math>和其他相关参数作为一个{{link-en|密钥衍生函数|Key derivation function}}的输入,密钥为其输出。 在这个过程中,伊夫知道椭圆曲线的域参数,但爱丽丝只透露了她的公钥<math>Q_{A}</math>,伊夫无法获得她的私钥<math>d_{A}</math>,除非伊夫能够解决椭圆曲线上的离散对数问题,这个问题被认为是困难的。同理,鲍勃的私钥也是安全的。若伊夫要计算出双方的共享秘密<math>x_k</math>,就需要求解{{link-en|迪菲-赫尔曼问题|Diffie–Hellman problem}},而计算离散对数是此問題的已知最优解法,伊夫無法用其他方式直接解出共享秘密。 但是,如果双方使用的[[CSPRNG|随机数生成器]]存在安全隐患,伊夫就可能预测私钥<math>d_{A}</math>和<math>d_{B}</math>。此外,上述的密钥交换是匿名的,双方没有进行身份验证。如果攻击者有能力篡改信息,就能冒充双方的身份。因此,有必要用其他的方式进行身分验证,例如[[公钥基础设施]]。 == 量子计算机 == 如果攻击者拥有大型[[量子计算机]],那么他可以使用[[秀爾演算法|秀尔算法]]解决离散对数问题,从而破解私钥和共享秘密。目前的估算认为:破解256位素数域上的椭圆曲线,需要2330个[[量子比特]]与1260亿个[[托佛利閘|托佛利门]]。<ref>{{Cite arxiv |eprint=1706.06752 |last1=Roetteler |first1=Martin |title=Quantum resource estimates for computing elliptic curve discrete logarithms |last2=Naehrig |first2=Michael |last3=Svore |first3=Krysta M. |last4=Lauter |first4=Kristin |class=quant-ph |year=2017 }}</ref>相比之下,使用秀尔算法破解2048位的RSA则需要4098个[[量子比特]]与5.2万亿个[[托佛利閘|托佛利门]]。因此,椭圆曲线会更先遭到量子计算机的破解。目前还不存在建造如此大型量子计算机的科学技术,因此椭圆曲线密码学至少在未来十年(或更久)依然是安全的。但是密码学家已经积极展开了[[后量子密码学]]的研究。其中,{{link-en|超奇异椭圆曲线同源密钥交换|Supersingular isogeny key exchange}}(SIDH)有望取代当前的常规椭圆曲线密钥交换(ECDH)。 ==註釋== {{reflist}} {{密碼學|public-key}} {{DEFAULTSORT:ECDH}} [[Category:密鑰合意協議]] [[Category:橢圓曲線密碼學]]
该页面使用的模板:
Template:Cite arxiv
(
查看源代码
)
Template:Lang
(
查看源代码
)
Template:Lang-en
(
查看源代码
)
Template:Le
(
查看源代码
)
Template:Link-en
(
查看源代码
)
Template:Reflist
(
查看源代码
)
Template:See also
(
查看源代码
)
Template:Wayback
(
查看源代码
)
Template:密碼學
(
查看源代码
)
返回
橢圓曲線迪菲-赫爾曼金鑰交換
。
导航菜单
个人工具
登录
命名空间
页面
讨论
不转换
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
工具
链入页面
相关更改
页面信息