±à¼ÍƼö: |
±¾ÎÄÖ÷Òª½²½âÁËDNSÊý¾Ý±¨ÎļÓÃÜ¡¢DNSͨÐÅÁ´Â·¼ÓÃÜÒÔ¼°DNSÃÜÎÄͨÐÅ·½·¨µÈÏà¹ØÄÚÈÝ¡£
±¾ÎÄÀ´×ÔÓڿƼ¼µ¼±¨£¬ÓÉ»ðÁú¹ûÈí¼þAnna±à¼ÍƼö¡£ |
|
ÓòÃûϵͳ£¨DNS£©ÊÇ»¥ÁªÍø»ù´¡·þÎñ£¬ÊÇ»¥ÁªÍø·ÃÎʵÄÖØÒªÈë¿Ú£¬ÓòÃûÒþ˽±£»¤ÊÇ
DNS°²È«µÄÑо¿Èȵ㡣±¾ÎÄÌá³öÁËÒ»ÖÖ»ùÓÚÓû§Êý¾Ý±¨ÐÒéµÄDNS´«ÊäÖÐÓû§Òþ˽±£»¤µÄ¼ÓÃÜ·½·¨£ºDNSDEA¡£¸Ã·½·¨²ÉÓÃPKI¼ÓÃÜÌåϵÓëDNSÐÒéÏàÈںϣ¬²»½ö½â¾öÁËÓòÃûÒþ˽±£»¤ÎÊÌ⣬¶øÇÒÓ봫ͳDNSÌåϵÏà¼æÈÝ£¬±£³ÖÁËDNSϵͳµÄ¼òµ¥¡¢¸ßЧµÄ¼¼ÊõÌØµã¡£

ÓòÃûϵͳ£¨domain name system£¬DNS£©ÊÇ»¥ÁªÍøµÄÖØÒª»ù´¡·þÎñÖ®Ò»£¬Ö÷Ҫͨ¹ýÓòÃûºÍ»¥ÁªÍøÐÒ鵨ַ£¨IP£©µÈ»¥ÁªÍø»ù´¡×ÊÔ´Ö®¼äµÄÓ³ÉäÓëת»»£¬ÊµÏÖ±êʶºÍ¶¨Î»»¥ÁªÍøÉÏ·þÎñÆ÷ºÍ·þÎñÈë¿Ú¡£DNSÊÇÒ»¸öÏà¶Ô³ÉÊìµÄÈ«ÇòÐÔ·Ö²¼Ê½Êý¾Ý¿â£¬Îª»¥ÁªÍøÌṩ¸ßЧÎȶ¨µÄ»¥ÁªÍø±êʶ½âÎö·þÎñ¡£
1983 Ä꣬MockapetrisÌá³ö DNS ¼Ü¹¹£¬Ëæºó¸Ã¹¹¼ÜÔÚ²»¶ÏµØ³ÖÐøÑݽøºÍÓÅ»¯¡£ÔÚÉè¼ÆÖ®³õ£¬ÓòÃûϵͳÔÚÓòÃûÐÒé·½Ãæ²¢Ã»Óп¼ÂÇÍ걸µÄ°²È«»úÖÆ¡£1999Ä꣬DNS°²È«À©Õ¹ÐÒ飨domain
name system security extensions£¬DNSSEC£©±»Ìá³ö£¬ÆäÄܹ»ÓÐЧ½µµÍÖмäÈ˹¥»÷µÄ·çÏÕ£¬±£Ö¤
DNS´«ÊäÊý¾ÝµÄÍêÕûÐÔ£¬´Ó¶øÌáÉý DNSϵͳµÄ°²È«·þÎñÄÜÁ¦¡£2010Ä꣬»¥ÁªÍøÓòÃûµÄ¸ù·þÎñ¿ªÊ¼²¿Êð
DNSSEC·þÎñ£¬±êÖ¾×ÅÓòÃû·þÎñ¿ªÊ¼Ïò°²È«·þÎñ·½ÏòÂõ½ø£¬DNS Ò²´ÓÒ»¸ö¼òµ¥µÄÃûַת»»·þÎñÏò¸´Ôӵġ¢¿ÉÐŵĽâÎö·þÎñ·¢Õ¹£¬´«Êä²ã°²È«ÐÒéDANE£¨DNS-based
authentication of named entities£©¾ÍÊÇ»ùÓÚ DNSSECÐÒ齫Êý×ÖÖ¤Êéͨ¹ý
DNS·þÎñ½øÐз¢²¼£¬ÒÔÈ·±£Ö¤ÊéÀ´×ÔÌØ¶¨µÄÖ¤Êé°ä·¢»ú¹¹¡£
Ëæ×Å»¥ÁªÍøÆÕ¼°ÂʵIJ»¶ÏÌá¸ß¼°Æä¶ÔÉú²úÉú»îµÄ²»¶ÏÉøÍ¸£¬ÈËÃÇÒѾ¶Ô»¥ÁªÍø²úÉúÁËÔ½À´Ô½Ç¿µÄÒÀÀµÐÔ£¬µ±Ç°µÄ»¥ÁªÍøÒѲ»½öÊÇ»ñÈ¡ºÍ·ÖÏíÐÅÏ¢µÄ;¾¶£¬¶øÇÒÒѳÉΪ´ó¶àÊý´«Í³ÐÐÒµÒµÎñϵͳµÄ»ù´¡ÔØÌ壬Òò´ËÒþ˽ÎÊÌâÒѾ³ÉΪ»¥ÁªÍøØ½´ý½â¾öµÄÒ»¸öÖØÒªÎÊÌâ¡£DNS
Ö÷Òª²ÉÓÃÓû§Êý¾Ý±¨ÐÒ飨user datagram protocol£¬UDP£©ÐÒéÃ÷ÎÄ´«Ê䷽ʽ½øÐÐÃûַת»»£¬ËäÈ»DNSSECÐÒéÌáÉýÁËÊý¾Ý´Û¸ÄÄѶȣ¬µ«ÊÇÒÀÈ»²ÉÓÃÃ÷ÎÄ·½Ê½Ìṩ½âÎö·þÎñ¡£×÷Ϊ»¥ÁªÍø»ù´¡·þÎñ£¬DNS
¶ÔÓÚÓû§Òþ˽±£»¤ÒÀÈ»±íÏÖ³öÁË´àÈõÐÔ¡£Ä¿Ç° DNS Óйذ²È«µÄÃüÌâ±»ÕæÕý½â¾öµÃ»¹½ÏÉÙ£¬¶øÆäÖеÄÒþ˽ÎÊÌâÒ²ÒѳÉΪÐÐÒµ¹Ø×¢µÄ½¹µãÎÊÌâ²¢Ö𽥵õ½ÖØÊÓ¡£Ò»·½Ã棬ÐÐÒµÄÚ²ÉÓòéѯ×îС»¯£¨query
minimization£©·½·¨½µµÍÒþ˽ÇÔÈ¡·çÏÕ£¬Ê¹ÓÃÊý¾Ý×îС»¯£¨data minimization£©ÔÀí¼õÉÙ
DNSȨÍþ·þÎñÊÕ¼¯¸öÈËÒþ˽ÐÅÏ¢£»ÁíÒ»·½Ã棬Õë¶Ô DNS ½âÎö·þÎñ¹ý³ÌÖÐÒþ˽й¶µÄÎÊÌ⣬¹ú¼Ê×éÖ¯Internet
Engineering Task Force£¨IETF£©ÓÚ 2014ÄêרÃųÉÁ¢ The DNS PRIVate
Exchange£¨DPRIVE£©¹¤×÷×éÌÖÂÛ²¢Öƶ¨ DNS Òþ˽±£»¤ÐÒ飬ϣÍû²ÉÓÃÊý¾Ý¼ÓÃÜ´«ÊäµÄ·½Ê½ÊµÏÖ
DNSÒþ˽±£»¤¡£»ùÓڴ˱³¾°£¬±¾ÎÄÌá³öÒ»ÖÖ»ùÓÚUDPµÄDNS´«ÊäÖÐÓû§Òþ˽±£»¤µÄ¼ÓÃÜ·½·¨¡£
Ñо¿ÏÖ×´
µ±Ç°£¬¾ø´ó¶àÊý DNS ·þÎñºÍÖÕ¶ËÖ®¼äµÄÊý¾Ý½»»»£¨Ö÷Òª°üº¬ÇëÇóºÍ·´À¡£©²ÉÓÃÃ÷ÎÄ¡¢·Ç¼ÓÃܵķ½Ê½½øÐУ¬Õ⽫µ¼ÖÂÓû§Òþ˽±©Â¶ÔÚ»¥ÁªÍøÍ¨ÐÅÖУ¬ÆäÒþ˽·½ÃæµÄ´àÈõÐÔ½«»á±»ºÚ¿ÍËùÀûÓã¬ÀýÈçºÚ¿Í¿ÉÒÔÊÕ¼¯Óû§µÄ·ÃÎʺۼ££¨²éѯʱ¼ä¡¢·ÃÎÊÄÚÈÝ¡¢Óû§IPµØÖ·µÈ£©µÈÐÅÏ¢·ÖÎöÓû§Ï°¹ßµÈ¡£Õë¶ÔÕâ¸öÎÊÌ⣬ĿǰÖ÷ÒªÓÐÒÔÏÂÁ½ÖÖ·½·¨±£»¤DNS²éѯ¹ý³ÌÖеÄÓû§Òþ˽¡£
DNSÊý¾Ý±¨ÎļÓÃÜ
Dempsky Ìá³öÁË DNSCurve ·½·¨£¬¸Ã·½·¨»ùÓÚÏÖÓÐ DNS Ìåϵ¼Ü¹¹£¬Ê¹ÓÃCurve25519
ÔÚ¿Í»§¶ËºÍ·þÎñÆ÷¶Ë½»»»ÃÜÔ¿ÒÔ¼°ÌṩÈÏÖ¤ºÍÊý¾Ý¼ÓÃÜ¡£·þÎñ¶ËµÄ¹«Ô¿´æ·ÅÔÚ¡°NS¡±¼Ç¼Öз¢Ë͸ø¿Í»§¶Ë£¬Òò´ËʹÓÃ
DNSCurve¼ÓÃÜDNS±¨ÎIJ¢²»»á´øÀ´¶îÍâ²éѯÑÓ³Ù¡£DNSCryptÊÇDNSCurve±È½ÏÓÐÃûµÄÒ»¸öʵÏÖ£¬ÒÑÔÚ
OpenDNSµÄ·þÎñÉϵõ½¹ã·º²¿Êð£¬ÓÃÀ´½â¾öÖÕ¶ËÓû§µÄÒþ˽±£»¤ÎÊÌâ¡£ÀàËÆµÄConfidentialDNSҲʹÓÃÁË
DNSµÄÀ©Õ¹»úÖÆÎª DNSÐÒéÔö¼Ó¼ÓÃܹ¦ÄÜ¡£ËüÌá³öÒ»ÖÖеÄ×ÊÔ´¼Ç¼ÀàÐÍ¡°ENCRYPT¡±À´´«ËÍ DNS·þÎñÆ÷µÄ¹«Ô¿µ½¿Í»§¶Ë¡£È»ºó¿Í»§¶ËʹÓ÷þÎñÆ÷¹«Ô¿¼ÓÃÜ
DNS ²éѯÇëÇó£¬ÒÔ¼°ÓÃÀ´¼ÓÃÜ DNSÏìÓ¦µÄ¿Í»§¶Ë¹«Ô¿£¬´Ó¶øÊµÏÖ¶Ô DNSÇëÇóºÍ·´À¡Êý¾Ý½øÐмÓÃܱ£»¤¡£ÕâÁ½ÖÖ·½°¸ËäÈ»ÄÜÓÐЧ½â¾ö
DNS Ã÷ÎÄ´«ÊäËù´øÀ´µÄ´àÈõÐÔÎÊÌ⣬µ«ÊÇÐèÒªÔÚDNSͨÐÅÁ½¶Ë¶¼²¿Êð°²×°²å¼þ£¨»òÉý¼¶½âÎöÈí¼þ£©ÊµÏÖDNSͨÐÅ´ÓÃ÷Îĵ½ÃÜÎĵÄÄ¿±ê£¬Íƹã³É±¾½Ï´ó£¬ËùÒÔĿǰʹÓò¢²»¹ã·º¡£
DNSͨÐÅÁ´Â·¼ÓÃÜ
TLS£¨transport layer security£©ÊÇÒ»ÖÖÎªÍøÂçͨÐÅÌṩÊý¾Ý±£ÃÜÒÔ¼°ÍêÕûÐԵݲȫÐÒ飬ËüÔÚ´«Êä²ã¶ÔÍøÂçÁ¬½Ó½øÐмÓÃÜ¡£Ä¿Ç°
TLS ×î³£¼ûµÄÒ»ÖÖÓ¦ÓÃÊÇHTTPSÐÒ飬ËüʹÓù«Ô¿¼ÓÃܶÔÍøÕ¾½øÐÐÈÏÖ¤£¬Í¬Ê±Ê¹ÓöԳƼÓÃܶÔÊý¾Ý´«Êä½øÐмÓÃÜ¡£TLSÐèÒª
TCPÐÒéÀ´±£Ö¤ÐŵÀµÄ¿É¿¿´«Ê䣬²»ÄÜÖ±½ÓÓÃÀ´¼ÓÃܱ£»¤ UDPÐÒéµÄÊý¾Ý£¬Èç¹û DNSÏ£ÍûʹÓà TLS¼ÓÃܱ£»¤Êý¾Ý£¬¾Í±ØÐëʹÓÃ
TCPÐÒ顣Ȼ¶øÏÖ×´ÊǾø´ó²¿·ÖµÄ DNS²éѯʹÓà UDPÐÒ飬Çл»Îª TCPÐÒéÊÇÒ»¸ö³¤ÆÚµÄ¹ý³Ì£¬²¢ÇÒ´ú¼Û¾Þ´ó¡£Òò´Ë£¬¾ÍÏÖ½×¶ÎÀ´Ëµ£¬DNS-over-TLS²¢²»ÊÇÒ»¸ö¿ÉÐеÄÒþ˽±£»¤·½°¸¡£
DTLS£¨datagram transport layer security£©Êý¾Ý°ü´«Êä²ã°²È«ÐÒéÊÇÔÚTLS¼Ü¹¹ÉÏÌá³öµÄÒ»ÖÖÀ©Õ¹£¬Äܹ»Ö§³Ö
UDP ÐÒé¡£DTLS ʹµÃÖ±½Ó¼ÓÃÜ UDP ÐÒéµÄ DNS ²éѯ±¨ÎıäµÃ¿ÉÐС£IETF²Ý°¸Ìá³öµÄDNS-over-DTLSÏêϸÃèÊöÁËÈçºÎʹÓÃDTLS¼¼Êõ¼ÓÃÜDNS±¨ÎÄ¡£
DNS-over-TLS ºÍ DNS-over-DTLS ʹÓû¥ÁªÍø±ê×¼ÐÒé TLS ºÍ DTLS
À´ÊµÏÖ DNS ÃÜÎÄͨÐÅ¡£ÕâÁ½ÖÖ·½·¨¶¼ÊDzÉÓà TLS ÐÒé½øÐÐ DNS ¸Ä½ø£¬µ«¸Ã·½·¨ÐèÒªÔÚͨÐÅ֮ǰÐèÒª½¨Á¢ÎÕÊÖ¡¢ÈÏÖ¤µÈһϵÁи´ÔÓÍøÂçͨÐŲÅÄÜʵÏÖ£¬¶ÔÓÚ·ÃÎÊÁ¿¾Þ´ó¡¢¿ªÏúÏà¶Ô½ÏСµÄ
DNS·þÎñÌá³öÁ˽ϸߵÄÍøÂ翪ÏúºÍÐÔÄÜÒªÇó¡£
ÉÏÊöÁ½ÖÖ·½·¨¶ÔÓÚÑÓ³ÙÃô¸Ð¡¢¸ßÍÌÍÂÁ¿µÄ»¥ÁªÍø»ù´¡·þÎñDNSÀ´Ëµ£¬¶¼´øÀ´Á˽ϴóÌôÕ½¡£
DNSÃÜÎÄͨÐÅ·½·¨
Ìá³öÁËÒ»ÖÖÐ嵀 DNS¼ÓÃÜͨÐÅ·½·¨DNSDEA£¨DNS data encryption algorithm£©£¬¸Ã·½·¨ÔÚÏÖÓÐ
DNS¼Ü¹¹ºÍ±¨ÎĸñʽϲÉÓ÷ǶԳƼÓÃÜËã·¨µÄÃÜÎÄ·½Ê½Í¨ÐÅ¡£Í¨¹ýDNS²éѯ´«Êä¿Í»§¶ËµÄ¹«Ô¿£¬ÒÔ½µµÍ»ùÓÚTLSµÈ·½·¨½¨Á¢Á´½ÓµÄ¿ªÏú£¬¼õµÍ²éѯÑÓʱ¡£Í¬Ê±£¬ÀûÓÃÆäÎÞ×´Ì¬ÌØÐÔÌá¸ß·þÎñ¶ËµÄ²¢·¢ÐÔ¡£
±¨ÎĽṹ
1£©¼ÓÃܱê¼Çλ¡£Îª±ê¼ÇÒ»¸ö DNS ±¨ÎÄÊÇ·ñΪ¼ÓÃܱ¨ÎÄ£¬½« DNS ±¨ÎÄÍ·²¿ºóµÄµÚÒ»¸ö×Ö½Ú¶¨Î»Îª¼ÓÃܱê¼Çλ¡£¶ÔÓÚÒ»¸öÕý³£µÄδ¼ÓÃÜ
DNS ±¨ÎÄ£¬¸Ã×Ö½Ú±íʾ²éѯÓòÃûµÚÒ»¶ÎµÄ³¤¶È£¬°´ÕÕ»¥ÁªÍøÐÒé±ê×¼£¨request for comments£¬RFC£©£¬³¤¶ÈӦСÓÚ
64¡£½«¸Ã×Ö½ÚÍØÕ¹Îª¼ÓÃܱê¼Ç룬Èô¸Ã×Ö½ÚСÓÚ 64£¬±íʾ DNS±¨ÎÄΪ·Ç¼ÓÃܱ¨ÎÄ£¬Èô´óÓÚ64£¬±íʾ¸Ã±¨ÎÄΪ¼ÓÃܱ¨ÎÄ¡£
2£©ÃÜÔ¿¸ñʽ¡£DNSDEA ²ÉÓ÷ǶԳƼÓÃÜ·½·¨£¬ÔÚ DNS Öն˺ÍDNS ·þÎñ¶Ë·Ö±ð¶ÀÁ¢Éú³ÉͨÐÅÃÜÔ¿¶Ô£¨º¬¹«Ô¿ºÍ˽Կ£©¡£DNS
·þÎñ¶ËµÄ¹«Ô¿Í¨¹ýÏÖÓеÄÖ¤Êé°ä·¢¼Ü¹¹£¨certificate authority infrastructure£©·¢²¼£¬Ê¹ÓøÃ
DNS ·þÎñ¶ËµÄ¿Í»§ÐèÊÖ¶¯ÅäÖøù«Ô¿¡£DNS¿Í»§¶ËʹÓõÄÃÜÔ¿ÔÚ²éѯ¹ý³åÖÐÁÙʱÉú³É¡£¿¼Âǵ½²éѯЧÂʵÈÒòËØ£¬DNS¿Í»§¶ËÃÜÔ¿ÔÚÒ»¶Îʱ¼äÄÚ¿ÉÖØ¸´Ê¹Óá£
¿Í»§¶ËµÄ¹«Ô¿Óɿͻ§¶ËÔÚDNS ±¨Îĵĸ½¼Ó¶ÎÒÔEDNS0 ¸ñʽÌí¼Ó£¬Í¨¹ý DNS ²éѯ·¢Ë͸ø DNS
·þÎñ¶Ë¡£¾ßÌå¸ñʽÈçͼ1Ëùʾ¡£

ͼ1 EDNS0¸ñʽ´«ÊäPKI¹«Ô¿ÃÜÔ¿
ÃÜÔ¿µÄ¾ßÌåÄÚÈÝ´æ·ÅÔÚÉÏÃæµÄÑ¡ÏîÊý¾ÝÖУ¬ÆäÖÐǰÁ½¸ö×Ö½ÚΪËã·¨±ê¼Ç룬±êʶ¸ÃÃÜԿʹÓõļÓÃÜËã·¨£¬Ö®ºóÁ½¸ö×Ö½ÚΪԤÁôµÄ±êʶ룬×îºóÒ»²¿·ÖΪ¾ßÌåµÄ¹«Ô¿Êý¾Ý¡£¾ßÌå¸ñʽÈçͼ2Ëùʾ¡£

ͼ2 ÃÜÔ¿¸ñʽ
3£©Ãܱ¨Îĸñʽ¡£¼ÓÃÜµÄ DNS±¨ÎĵÄÍ·²¿ÓëÆÕͨµÄ DNS±¨Îı£³ÖÒ»Ö£¬Í·²¿ºóÒ»¸ö×Ö½ÚΪ¼ÓÃܱê¼Çλ¡£±ê¼ÇλºóÁ½¸ö×Ö½ÚΪ¼ÓÃÜÊý¾ÝµÄ³¤¶È£¬×îºóÒ»²¿·ÖΪµÄ¼ÓÃÜÊý¾Ý£¬¾ßÌå¸ñʽÈçͼ3Ëùʾ¡£

ͼ3 ¼ÓÃܺóµÄDNS±¨Îĸñʽ
¼ÓÃܲéѯ·½·¨
ʹÓà DNSDEA ·½·¨Ê±£¬DNS ÖÕ¶ËÐèÒªÊÖ¶¯ÅäÖÃDNS·þÎñ¶ËµÄ¹«Ô¿¡£·þÎñ¶ËµÄ¹«Ô¿¿Éͨ¹ý PKIÌåϵ½øÐÐÑéÖ¤¡£ÔÚ
DNSÖÕ¶ËÏò DNS·þÎñ¶Ë·¢ËͲéѯÇëÇóʱ£¬Ê¹Óà DNS ·þÎñ¶ËµÄ¹«Ô¿¶ÔÇëÇó×ÊÔ´¼Ç¼£¨RRset£©½øÐмÓÃÜ£¬½«DNSÖն˵Ĺ«Ô¿ÖÆ×÷³ÉRRset²¢Ê¹ÓÃDNS·þÎñ¶ËµÄ¹«Ô¿½«Æä¼ÓÃÜ£¬Éú³É
DNS ±¨ÎĸñʽÊý¾Ý£¬´«Ê䏸DNS·þÎñ¶Ë¡£
DNS Öն˽«°´ÕÕ DNS ÐÒéÒªÇ󣬽«Éú³ÉµÄ DNS ²éѯ±¨ÎÄ·¢Ë͸ø DNS ·þÎñ¶Ë£¬DNS ·þÎñ¶ËʹÓÃ×ÔÉí˽Կ½øÐнâÃÜ»¹Ô´ý²éѯµÄÓòÃû¼Ç¼ºÍ
DNSÖն˵Ĺ«Ô¿ÐÅÏ¢£¬°´ÕÕ DNS²éѯÂ߼ѰÕÒ²éѯ½á¹û£¬Ê¹Óû¹Ô³öÀ´µÄDNSÖն˹«Ô¿¶Ô²éѯ½á¹û½øÐмÓÃÜ£¬·¢Ë͸øDNSÖÕ¶Ë¡£
DNS Öն˽ÓÊÕµ½Ó¦´ð±¨Îĺó£¬Ê¹ÓÃÆä˽ԿÐÅÏ¢½«Ó¦´ð±¨ÎĵÄÓ¦´ð×ÊÔ´¼Ç¼£¨RRset£©½øÐнâÃÜ£¬²¢°´ÕÕDNSÐÒé½øÐд¦Àí¡£
¾ßÌåÁ÷³ÌÈçͼ 4Ëùʾ¡£ÒÔ www.example.com²éѯΪÀý£¬ÊµÏÖ¼ÓÃܲéѯ·½·¨£¬Ö÷Òª·ÖÒÔϲ½Ö裺£¨1£©·þÎñ¶Ëͨ¹ý
PKI·¢²¼¹«Ô¿£¬¿Í»§¶ËÊÖ¶¯ÅäÖ÷þÎñ¶Ë¹«Ô¿£»£¨2£©¿Í»§¶ËÉú³ÉÃÜÔ¿¶Ô£»£¨3£©¿Í»§¶Ë¹¹Ôì www.example.com
µÄ²éѯ°ü£¬½«¿Í»§¶ËµÄ¹«Ô¿Ìí¼ÓÔÚ²éѯ°üµÄ¸½¼Ó¶Î£¬²¢Ó÷þÎñ¶Ë¹«Ô¿¼ÓÃܺ󣬽«²éѯ°ü·¢Ë͸ø·þÎñ¶Ë£»£¨4£©·þÎñ¶ËÊÕµ½¼ÓÃܵIJéѯ°ü£¬Ê¹Ó÷þÎñ¶Ë˽Կ½âÃÜ£¬»ñÈ¡
DNS²éѯÄÚÈݺͿͻ§¶Ë¹«Ô¿£»£¨5£©·þÎñ¶Ë¹¹Ôì www.example.comµÄÓ¦´ð°ü£¬²¢Óÿͻ§¶ËµÄ¹«Ô¿¼ÓÃܺ󣬽«Ó¦´ð°ü·¢Ë͸ø¿Í»§¶Ë£»£¨6£©¿Í»§¶ËÊÕµ½¼ÓÃܵÄÓ¦´ð°ü£¬Ê¹Óÿͻ§¶Ë˽Կ½âÃÜ£¬»ñµÃwww.example.comµÄÓ¦´ðÄÚÈÝ¡£

ͼ4 ¼ÓÃÜDNS²éѯÁ÷³Ì
ʵÑé¼°·ÖÎö
Ϊ²âÊÔ DNSDEA µÄ¿ÉÐÐÐÔ£¬½øÐÐÁËÏà¹ØÊµÑ飬¶ÔDNSDEA ºÍ»ùÓÚ TLS¡¢DTLS ¼ÓÃÜ·½·¨µÄ
DNS ²éѯ½øÐжԱȣ¬ÒÔÑéÖ¤DNSDEA µÄ¿ÉÐÐÐÔ¼°Ïà¶ÔÓÚĿǰ½ÏÁ÷ÐмÓÃÜ·½·¨µÄµÍÑÓ³ÙÓÅÊÆ¡£
ʵÑé·½·¨
ÓÉÓÚ DNS ²éѯÖ÷Ҫͨ¹ý UDP ´«Ê䣬Òò´ËʵÑéÖ÷Òª¹Ø×¢ DNSDEA ºÍ»ùÓÚ DTLS ¼ÓÃÜ·½·¨ÏÂ
DNS ²éѯ°üÑÓ³Ù¡£ÊµÑé·Ö±ð²âÊÔÁËÁ½ÖÖ¼ÓÃÜ·½·¨Ê¹ÓÃRSAºÍECCËã·¨Çé¿öϲ»Í¬´óСÊý¾Ý°üµÄÐÔÄܱíÏÖ£¬Í¨¹ý·¢Æð¶à´ÎDNS²éѯȡƽ¾ùÖµ£¬¼ÆËã¸÷·½·¨ÏÂDNS²éѯʱÑÓ£¬±È½ÏÁ½ÖÖ·½·¨ÔÚDNS¼ÓÃÜʹÓÃÉϵÄÌØµã¡£
ʵÑéʹÓÃopenssl-0.9.8 ºÍcrypto++5.6.5 ¼ÓÃÜ¿âʵÏÖ RSAºÍ ECDSA¼ÓÃÜ£¬Í¨¹ý±à³ÌÄ£ÄâÁËÁ½ÖÖ¼ÓÃÜ·½·¨ÏÂDNS·þÎñ¶ËºÍ¿Í»§¶ËµÄÈí¼þÐÐΪ¡£¿Í»§¶ËDNS²éѯ¾ùͨ¹ý½Å±¾¶¨Ê±Ñ»·µ÷ÓÃʵÏÖ£¬Òò´Ë»ùÓÚ
DTLS¼ÓÃܵIJéѯÿ´Î´¥·¢Ð嵀 DTLSÁ¬½Ó£¬Î´Ê¹ÓÃÀúÊ·»á»°¡£ÊµÑéÔËÐл·¾³ÎªCentOS 5.7£¬·þÎñ¶ËºÍ¿Í»§¶Ë·Ö±ð²¿ÊðÔÚ±±¾©Í¬³ÇµÄ²»Í¬½Úµã¡£
ʵÑé½á¹ûÓë·ÖÎö
1£©¹Ì¶¨Í¨ÐÅ×Ö½ÚʱÑӶԱȡ£²ÉÓÃ10 BitµÄͨÐÅÊý¾Ý£¬ÀûÓò»Í¬Ç¿¶ÈµÄÃÜÔ¿½øÐвâÊÔ£¬ÊµÑé½á¹ûÈçͼ5Ëùʾ¡£

ͼ5 Á½ÖÖDNS¼ÓÃÜ·½·¨Ê±ÑӱȽÏ
´ÓʵÑé½á¹ûÀ´¿´£¬ÔÚÃÜÔ¿³¤¶ÈÏàµÈµÄÇé¿öÏ£¬»ùÓÚDTLS ¼ÓÃÜµÄ DNS ²éѯÓÉÓÚÔÚ½¨Á¢Á¬½ÓµÄ¹ý³ÌÖÐÃÜÔ¿ÐÉ̺Äʱ½Ï´ó£¬DNS
²éѯÕûÌåÑÓʱ´óÓÚ DNSDEA ·½·¨ÏÂDNSÑÓʱ¡£ÔÚRSA¼ÓÃÜË㷨ϣ¬¼ÓÃÜÇ¿¶ÈԽС£¬ÃÜÔ¿Ô½¶Ì£¬Óë DTLS·½·¨±È½Ï£¬DNSDEAÐÔÄÜÊÇ
DTLS·½·¨µÄ2.79±¶£¨¶¨Òå¼ÓËÙ±ÈΪDTLS·½·¨ÓëDNSDEAʱÑÓÖ®±È£¬Æä±ÈÂÊÔ½¸ßÔò˵Ã÷ DNSDEA
ʱÑÓÔ½µÍ£¬ËÙ¶ÈÔ½¿ì£©£»Ëæ×ÅRSAÃÜÔ¿³¤¶ÈµÄÔö³¤µ½2048 Bitʱ£¬ÓÉÓÚDNSDEAÐèÒª½«¿Í»§¶ËµÄÃÜÔ¿¼ÓÃܺó£¬Í¨¹ý
DNS ±¨ÎÄ´«Ë͸ø·þÎñ¶Ë£¬¼ÓÃܺÄʱÃ÷ÏÔÔö³¤£¬µ«×ÜʱÑÓÈÔµÍÓÚ DTLS ¼ÓÃÜ·½·¨£¨Í¼6£¨a£©£©¡£

ͼ6 ECDSAËã·¨ÏÂÁ½ÖÖDNS¼ÓÃÜ·½·¨¼ÓËÙ±È
ʹÓà ECDSA ¼ÓÃÜËã·¨Çé¿öÏ£¬ÃÜÔ¿³¤¶ÈΪ 112¡¢160¡¢256 Bitʱ£¬DNSDEA¶ÔÃÜÔ¿¼ÓÃܵĿªÏúСÓÚDTLSÃÜÔ¿ÐÉ̵ÄͨÐÅ¿ªÏú£¬Òò´Ë×ÜÌåÍøÂçÑÓʱÓÅÓÚ
DTLS·½·¨£¬µ«Ëæ×żÓÃÜÇ¿¶ÈÔö¼Óµ½521Bitʱ£¬DNSDEA¶ÔÃÜÔ¿±¾Éí¼ÓÃܵĿªÏúÏÔÖøÔö³¤£¬Ã÷ÏÔ´óÓÚ
DTLSÃÜÔ¿ÐÉ̵ÄͨÐÅ¿ªÏú£¬Ôì³É¼ÓÃܺóµÄ DNS ²éѯʱÑÓ¼±¾çÔö³¤£¬ÔÚECDSA 512Ï£¬ÐÔÄܵÍÓÚDTLS·½·¨£¨Í¼6£¨b£©£©¡£
2£©¹Ì¶¨ÃÜÔ¿³¤¶ÈʱÑӶԱȡ£Ê¹ÓÃRSAËã·¨£¬Ñ¡È¡ÃÜÔ¿³¤¶ÈΪ1024룬²âÊÔÁ˲»Í¬³¤¶ÈµÄDNS±¨ÎÄÔÚDNSDEA¡¢DTLS·½·¨µÄʱÑÓÇé¿ö£¬ÊµÑé½á¹ûÈçͼ7Ëùʾ¡£

ͼ7 RSAÔÚ1024λÃÜÔ¿³¤¶ÈϵÄʱÑÓ¶Ô±È
ÓÉÓÚ DTLSÔÚÃÜÔ¿ÐÉ̳ɹ¦ºó£¬²ÉÓöԳÆÃÜÔ¿¼ÓÃÜÊý¾Ý£¬Òò´ËËæ×Å DNS±¨ÎĵļӴ󣬻ùÓÚ DTLS
µÄ DNS¼ÓÃÜ·½·¨Ê±ÑÓÔö³¤²»Ã÷ÏÔ£¬¶ø DNSDEA ÔÚ DNS ±¨ÎĽϴóʱ£¬Æä´«ÊäʱÑÓÃ÷ÏÔÔö³¤£¨Í¼8£©¡£

ͼ8 1024λÃÜÔ¿³¤¶ÈÏÂDTLSÓëDNSDEAµÄ¼ÓËÙ±È
ʵÑé¿ÉÒÔ¿´³ö£¬ÔÚ 1024 λÃÜÔ¿¼ÓÃÜÌõ¼þÏ£¬²ÉÓÃDNSDEA ´«ÊäʱÑÓÕûÌåÃ÷ÏÔµÍÓÚ»ùÓÚ DTLS
µÄ DNS ¼ÓÃÜ·½·¨¡£
×ÛÉÏËùÊö£¬ÔÚÃÜÔ¿³¤¶ÈºÍ´«Ê䱨ÎĽÏСʱ£¬DNSDEAʱÑÓÃ÷ÏÔµÍÓÚ DTLS·½·¨£»»ùÓÚ DTLS¼ÓÃܵķ½·¨£¬ÓÉÓÚÔÚÁ¬½Ó½¨Á¢ºó£¬Ë«·½²ÉÓöԳÆÃÜÔ¿¼ÓÃÜ£¬ÆäºÄʱµÄÔö³¤·ù¶ÈҪСÓÚ
DNSDEA£»ÓÉÓÚ¶àÊý DNS ±¨ÎĵĴóСһ°ã¶¼ÔÚ 200Byte ÒÔÄÚ£¬Òò´ËÏà½ÏÓÚ DTLS ·½·¨£¬DNSDEA
¿ÉÒÔÃ÷ÏÔ½µµÍ DNS ¼ÓÃÜ´«ÊäʱÑÓ¡£´ËÍ⣬DNSDEA »ùÓÚ DNS´«Ê䣬ÆäÎÞ״̬µÄÌØÐÔÒ²¿ÉÒÔÃ÷ÏÔÌáÉý·þÎñ¶ËµÄ²¢·¢ÐÔ¡£
Ëæ×Å»¥ÁªÍø¸öÈËÒþ˽ÎÊÌâµÃµ½¸ü¶àÈ˵ĹØ×¢£¬DNSÒþ˽й¶ÎÊÌ⽫»áÔ½·¢Í»³ö¡£Õë¶Ô DNS¸öÈËÒþ˽ÎÊÌâµÄÏÖÓм¼Êõ½øÐзÖÎö£¬ÔÚÏÖÓм¼Êõ½â¾ö·½·¨»ù´¡ÉÏÌá³öÁËÒ»ÖÖеÄDNS¼ÓÃÜͨÐÅ·½·¨£ºDNSDEA¡£Ó봫ͳ·½·¨Ïà±È£¬¸Ã·½·¨ÔÚÏÖÓÐ
DNS ¼Ü¹¹ºÍ±¨ÎĸñʽϲÉÓ÷ǶԳƼÓÃÜËã·¨µÄÃÜÎÄ·½Ê½Í¨ÐÅ£¬²»½öÍê³ÉÁË DNS ¸öÈËÒþ˽±£»¤£¬¶øÇÒÌáÉýÁËÓòÃû½âÎöºËÐÄËã·¨µÄ²¢ÐÐÁ£¶È£¬½µµÍÁË
DNSÖÕ¶ËÓë DNS·þÎñ¶ËÖ®¼äµÄͨÐÅ¿ªÏú£¬ÓÐЧ±£³ÖÁËDNSµÍÑÓ³ÙµÄÌØÐÔ¡£
Õë¶Ô RSA¡¢ÍÖÔ²¼ÓÃÜËã·¨£¨ECC£©µÈ¼ÓÃÜËã·¨½øÐÐÁËʵÑ飬ÒÔÆÚΪºóÐøÍ¨ÐżÓÃÜÓ¦ÓÃÑо¿ºÍ DNS °²È«½âÎö²¢Ðл¯Ñо¿Ìṩһ¶¨²Î¿¼£¬²¢ÇÒÉîÈë̽Ë÷
DNSDEA ·½·¨Õë¶Ô DNSSEC TLSAÐÒéµÄÀ©Õ¹£¬ÌáÉý¼ÓÃÜͨÐŰ²È«Ë®Æ½¡£ºóÐø½«ÉîÈëÑо¿ DNSDEA·½·¨¶ÔÓÚÍøÂçÉç½»ºÍ´óÊý¾Ý½»»»ÁìÓòµÄ¸Ä½øÓëÓ°Ï죬½øÒ»²½¼õС»¥ÁªÍøÒþ˽й¶·çÏÕ¡£ |