fbpx
维基百科

DNSCurve

DNSCurveDaniel J. Bernstein设计的一种域名系统(DNS)的新安全协议。

描述 编辑

DNSCurve使用Curve25519[1]椭圆曲线加密算法建立Salsa20使用的密钥,配以MAC函数Poly1305,用来加密和验证解析器与身份验证服务器之间的DNS網路封包。远端验证服务器的公钥放在NS记录中,以便递归解析器了解服务器是否支持DNSCurve。键值以魔术字符串uz5开头,后随51字节的Base32英语Base32编码的服务器的255位公钥。例如,以BIND格式来看:

example.com. IN NS uz5bcx1nh80x1r17q653jf3guywz7cmyh5jv0qjz0unm56lq7rpj8l.example.com. 

解析器然后向服务器发送一个包含DNSCurve公钥、96位nonce和一个包含查询的加密箱的数据包。加密箱为采用解析器的私钥、服务器的公钥和nonce创建。服务器的响应包含不同的96位nonce及其自身的加密箱,其中包含查询的答案。

DNSCurve中使用的加密工具也在CurveCP中使用,它是基于UDP而非TCP协议,使用椭圆曲线加密算法来加密和认证数据。一个类比是,DNSSEC像使用PGP加密一个网页,而CurveCP和DNSCurve像是使用SSL来加密和身份验证信道。正如PGP签名的网页可以通过SSL加密的信道发送,DNSSEC的数据也可通过DNSCurve保护。

DNSCurve声称优于以前的DNS服务:[2]

  • 保密——普通的DNS请求和响应不会加密,并且任何攻击者都可窥视内容。
  • 完整——普通的DNS有一些保护,但有耐心并嗅探的攻击者可以伪造DNS记录。DNSCurve加密并验证的数据则防止这些情况。
  • 可用——普通的DNS没有防护嗅探攻击者发送的一些伪造数据包制造阻斷服務攻擊(DoS)攻击。DNSCurve识别并丢弃伪造的DNS数据包,并为容易受到DoS攻击的SMTP、HTTP和HTTPS提供一些保护。

安全 编辑

DNSCurve使用256位椭圆曲线加密算法NIST估计大致相当于3072比特RSA[3]ECRYPT报告了类似的估计。[4]它为每个查询都使用公钥加密(类似SSH和SSL),以及96比特nonces以防止重放攻击。Google安全官Adam Langley称:“很大概率上,没有人能在不使用一台大型的量子计算机的情况下解决curve25519的单个实例。”[5]

速度 编辑

Adam Langley在他的个人网站上展示了DNSCurve所使用的curve25519的速度测试,它是测试中最快的椭圆曲线加密法。[6]根据NSA所说,椭圆曲线加密法在增加密钥大小的同时,几何速率方面的性能优于RSA和Diffie-Hellman。[7]

实现 编辑

DNSCurve通过[8]Matthew Dempsky为dnscache的一个补丁取得了首个递归支持。Dempsky也有一个GitHub代码库,里面包括Python DNS查询工具和一个C语言编写的转发器。[9]Adam Langley同样有一个GitHub代码库。[10]有一个权威转发器名为CurveDNS[11],它允许DNS管理员保护现有的安装而无须打补丁。OpenDNS已发布DNSCrypt[12]来保护OpenDNS用户与其递归解析器之间的信道。Jan Mojžíš发布了curveprotect[13],这是一个实现DNSCurve和CurveCP的套件,保护DNS、SSH、HTTP和SMTP等常见服务。

部署 编辑

OpenDNS 服务超过5000万用户的于2010年2月23日宣布其递归解析器支持DNSCurve。[14]2011年12月6日,OpenDNS宣布名为DNSCrypt的新工具[15]该工具能保护OpenDNS与其用户之间的信道。[16]尚无其他类似的权威DNS提供商部署DNSCurve。

参见 编辑

备注 编辑

  1. ^ D. J. Bernstein. Curve25519: high-speed elliptic-curve cryptography. [30 January 2013]. (原始内容于2011-07-14). 
  2. ^ Introduction to DNSCurve. 22 June 2009 [16 March 2016]. (原始内容于2017-01-04). 
  3. ^ NIST Recommendations (2011). [2017-01-03]. (原始内容于2017-03-01). 
  4. ^ (PDF). [2017-01-03]. (原始内容 (PDF)存档于2012-06-02). 
  5. ^ Adam Langley on curve25519 security. 
  6. ^ Adam Langley: What a difference a prime makes. [2017-01-03]. (原始内容于2016-09-19). 
  7. ^ . NSA. [January 17, 2009]. (原始内容存档于2009-01-17). 
  8. ^ DNSCurve patch for dnscache. [2017-01-03]. (原始内容存档于2012-12-28). 
  9. ^ Matthew Dempsky's DNSCurve repo on GitHub. [2017-01-03]. (原始内容于2015-08-14). 
  10. ^ Adam Langley's DNSCurve repo. [2017-01-03]. (原始内容于2018-06-10). 
  11. ^ CurveDNS: A DNSCurve Forwarding Name Server. [2017-01-03]. (原始内容于2011-01-02). 
  12. ^ . [2017-01-03]. (原始内容存档于2012-05-10). 
  13. ^ curveprotect, a complex collection of tools for protecting wide range of internet services. [2017-01-03]. (原始内容于2013-05-26). 
  14. ^ OpenDNS adopts DNSCurve. [2017-01-03]. (原始内容于2010-02-26). 
  15. ^ . [2017-09-04]. (原始内容存档于2013-02-03). 
  16. ^ net/dnscrypt-proxy: dnscrypt-proxy-1.4.3 – secure communications between a DNS client and resolver. OpenBSD ports. 2015-01-06 [2015-02-09]. (原始内容于2018-11-29). 

外部链接 编辑

  • Official website(页面存档备份,存于互联网档案馆
  • DNSCurve.io: a community for DNSCurve users(页面存档备份,存于互联网档案馆
  • High-speed cryptography and DNSCurve(页面存档备份,存于互联网档案馆),2009年6月作者的介绍
  • DNSCurve: Usable security for DNS(页面存档备份,存于互联网档案馆),2008年8月作者的介绍
  • draft-dempsky-dnscurve-01(页面存档备份,存于互联网档案馆) 提议标准:“DNSCurve: Link-Level Security for the Domain Name System”,M. Dempsky(来自OpenDNS)发送给IETF (更新于2010年2月)
  • OpenDNS adopts DNSCurve(页面存档备份,存于互联网档案馆),OpenDNS官方博文
  • CurveDNS(页面存档备份,存于互联网档案馆),DNSCurve转发名称服务器
  • NaCl(页面存档备份,存于互联网档案馆),网络和加密程序库

dnscurve, 是daniel, bernstein设计的一种域名系统, 的新安全协议, 目录, 描述, 安全, 速度, 实现, 部署, 参见, 备注, 外部链接描述, 编辑使用curve25519, 椭圆曲线加密算法建立salsa20使用的密钥, 配以mac函数poly1305, 用来加密和验证解析器与身份验证服务器之间的dns網路封包, 远端验证服务器的公钥放在ns记录中, 以便递归解析器了解服务器是否支持, 键值以魔术字符串uz5开头, 后随51字节的base32, 英语, base32, 编码的服务器的. DNSCurve是Daniel J Bernstein设计的一种域名系统 DNS 的新安全协议 目录 1 描述 2 安全 3 速度 4 实现 5 部署 6 参见 7 备注 8 外部链接描述 编辑DNSCurve使用Curve25519 1 椭圆曲线加密算法建立Salsa20使用的密钥 配以MAC函数Poly1305 用来加密和验证解析器与身份验证服务器之间的DNS網路封包 远端验证服务器的公钥放在NS记录中 以便递归解析器了解服务器是否支持DNSCurve 键值以魔术字符串uz5开头 后随51字节的Base32 英语 Base32 编码的服务器的255位公钥 例如 以BIND格式来看 example com IN NS uz5bcx1nh80x1r17q653jf3guywz7cmyh5jv0qjz0unm56lq7rpj8l example com 解析器然后向服务器发送一个包含DNSCurve公钥 96位nonce和一个包含查询的加密箱的数据包 加密箱为采用解析器的私钥 服务器的公钥和nonce创建 服务器的响应包含不同的96位nonce及其自身的加密箱 其中包含查询的答案 DNSCurve中使用的加密工具也在CurveCP中使用 它是基于UDP而非TCP协议 使用椭圆曲线加密算法来加密和认证数据 一个类比是 DNSSEC像使用PGP加密一个网页 而CurveCP和DNSCurve像是使用SSL来加密和身份验证信道 正如PGP签名的网页可以通过SSL加密的信道发送 DNSSEC的数据也可通过DNSCurve保护 DNSCurve声称优于以前的DNS服务 2 保密 普通的DNS请求和响应不会加密 并且任何攻击者都可窥视内容 完整 普通的DNS有一些保护 但有耐心并嗅探的攻击者可以伪造DNS记录 DNSCurve加密并验证的数据则防止这些情况 可用 普通的DNS没有防护嗅探攻击者发送的一些伪造数据包制造阻斷服務攻擊 DoS 攻击 DNSCurve识别并丢弃伪造的DNS数据包 并为容易受到DoS攻击的SMTP HTTP和HTTPS提供一些保护 安全 编辑DNSCurve使用256位椭圆曲线加密算法 NIST估计大致相当于3072比特RSA 3 ECRYPT报告了类似的估计 4 它为每个查询都使用公钥加密 类似SSH和SSL 以及96比特nonces以防止重放攻击 Google安全官Adam Langley称 很大概率上 没有人能在不使用一台大型的量子计算机的情况下解决curve25519的单个实例 5 速度 编辑Adam Langley在他的个人网站上展示了DNSCurve所使用的curve25519的速度测试 它是测试中最快的椭圆曲线加密法 6 根据NSA所说 椭圆曲线加密法在增加密钥大小的同时 几何速率方面的性能优于RSA和Diffie Hellman 7 实现 编辑DNSCurve通过 8 Matthew Dempsky为dnscache的一个补丁取得了首个递归支持 Dempsky也有一个GitHub代码库 里面包括Python DNS查询工具和一个C语言编写的转发器 9 Adam Langley同样有一个GitHub代码库 10 有一个权威转发器名为CurveDNS 11 它允许DNS管理员保护现有的安装而无须打补丁 OpenDNS已发布DNSCrypt 12 来保护OpenDNS用户与其递归解析器之间的信道 Jan Mojzis发布了curveprotect 13 这是一个实现DNSCurve和CurveCP的套件 保护DNS SSH HTTP和SMTP等常见服务 部署 编辑OpenDNS 服务超过5000万用户的于2010年2月23日宣布其递归解析器支持DNSCurve 14 2011年12月6日 OpenDNS宣布名为DNSCrypt的新工具 15 该工具能保护OpenDNS与其用户之间的信道 16 尚无其他类似的权威DNS提供商部署DNSCurve 参见 编辑域名系统安全扩展 DNSSEC 椭圆曲线密码学 OpenDNS备注 编辑 D J Bernstein Curve25519 high speed elliptic curve cryptography 30 January 2013 原始内容存档于2011 07 14 Introduction to DNSCurve 22 June 2009 16 March 2016 原始内容存档于2017 01 04 NIST Recommendations 2011 2017 01 03 原始内容存档于2017 03 01 ECRYPT II Yearly Report on Algorithms and Keysizes 2010 2011 PDF 2017 01 03 原始内容 PDF 存档于2012 06 02 Adam Langley on curve25519 security Adam Langley What a difference a prime makes 2017 01 03 原始内容存档于2016 09 19 The Case for Elliptic Curve Cryptography NSA January 17 2009 原始内容存档于2009 01 17 DNSCurve patch for dnscache 2017 01 03 原始内容存档于2012 12 28 Matthew Dempsky s DNSCurve repo on GitHub 2017 01 03 原始内容存档于2015 08 14 Adam Langley s DNSCurve repo 2017 01 03 原始内容存档于2018 06 10 CurveDNS A DNSCurve Forwarding Name Server 2017 01 03 原始内容存档于2011 01 02 DNSCrypt Securing a critical piece of Internet infrastructure 2017 01 03 原始内容存档于2012 05 10 curveprotect a complex collection of tools for protecting wide range of internet services 2017 01 03 原始内容存档于2013 05 26 OpenDNS adopts DNSCurve 2017 01 03 原始内容存档于2010 02 26 OpenDNS unveils DNSCrypt 2017 09 04 原始内容存档于2013 02 03 net dnscrypt proxy dnscrypt proxy 1 4 3 secure communications between a DNS client and resolver OpenBSD ports 2015 01 06 2015 02 09 原始内容存档于2018 11 29 外部链接 编辑Official website 页面存档备份 存于互联网档案馆 DNSCurve io a community for DNSCurve users 页面存档备份 存于互联网档案馆 High speed cryptography and DNSCurve 页面存档备份 存于互联网档案馆 2009年6月作者的介绍 DNSCurve Usable security for DNS 页面存档备份 存于互联网档案馆 2008年8月作者的介绍 draft dempsky dnscurve 01 页面存档备份 存于互联网档案馆 提议标准 DNSCurve Link Level Security for the Domain Name System M Dempsky 来自OpenDNS 发送给IETF 更新于2010年2月 OpenDNS adopts DNSCurve 页面存档备份 存于互联网档案馆 OpenDNS官方博文 CurveDNS 页面存档备份 存于互联网档案馆 DNSCurve转发名称服务器 NaCl 页面存档备份 存于互联网档案馆 网络和加密程序库 取自 https zh wikipedia org w index php title DNSCurve amp oldid 78985188, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。