draft-ietf-hip-dns-08.txt | draft-ietf-hip-dns-09.txt | |||
---|---|---|---|---|
Network Working Group P. Nikander | Network Working Group P. Nikander | |||
Internet-Draft Ericsson Research Nomadic Lab | Internet-Draft Ericsson Research Nomadic Lab | |||
Expires: April 20, 2007 J. Laganier | Intended status: Experimental J. Laganier | |||
DoCoMo Euro-Labs | Expires: October 15, 2007 DoCoMo Euro-Labs | |||
October 17, 2006 | April 13, 2007 | |||
Host Identity Protocol (HIP) Domain Name System (DNS) Extensions | Host Identity Protocol (HIP) Domain Name System (DNS) Extensions | |||
draft-ietf-hip-dns-08 | draft-ietf-hip-dns-09 | |||
Status of this Memo | Status of this Memo | |||
By submitting this Internet-Draft, each author represents that any | By submitting this Internet-Draft, each author represents that any | |||
applicable patent or other IPR claims of which he or she is aware | applicable patent or other IPR claims of which he or she is aware | |||
have been or will be disclosed, and any of which he or she becomes | have been or will be disclosed, and any of which he or she becomes | |||
aware will be disclosed, in accordance with Section 6 of BCP 79. | aware will be disclosed, in accordance with Section 6 of BCP 79. | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
skipping to change at page 1, line 35 | skipping to change at page 1, line 35 | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
http://www.ietf.org/ietf/1id-abstracts.txt. | http://www.ietf.org/ietf/1id-abstracts.txt. | |||
The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
This Internet-Draft will expire on April 20, 2007. | This Internet-Draft will expire on October 15, 2007. | |||
Copyright Notice | Copyright Notice | |||
Copyright (C) The Internet Society (2006). | Copyright (C) The IETF Trust (2007). | |||
Abstract | Abstract | |||
This document specifies a new resource record (RR) for the Domain | This document specifies a new resource record (RR) for the Domain | |||
Name System (DNS), and how to use it with the Host Identity Protocol | Name System (DNS), and how to use it with the Host Identity Protocol | |||
(HIP.) This RR allows a HIP node to store in the DNS its Host | (HIP). This RR allows a HIP node to store in the DNS its Host | |||
Identity (HI, the public component of the node public-private key | Identity (HI, the public component of the node public-private key | |||
pair), Host Identity Tag (HIT, a truncated hash of its public key), | pair), Host Identity Tag (HIT, a truncated hash of its public key), | |||
and the Domain Names of its rendezvous servers (RVS.) | and the Domain Names of its rendezvous servers (RVS). | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
2. Conventions used in this document . . . . . . . . . . . . . . 4 | 2. Conventions used in this document . . . . . . . . . . . . . . 4 | |||
3. Usage Scenarios . . . . . . . . . . . . . . . . . . . . . . . 5 | 3. Usage Scenarios . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
3.1. Simple static singly homed end-host . . . . . . . . . . . 6 | 3.1. Simple static singly homed end-host . . . . . . . . . . . 6 | |||
3.2. Mobile end-host . . . . . . . . . . . . . . . . . . . . . 7 | 3.2. Mobile end-host . . . . . . . . . . . . . . . . . . . . . 7 | |||
4. Overview of using the DNS with HIP . . . . . . . . . . . . . . 9 | 4. Overview of using the DNS with HIP . . . . . . . . . . . . . . 9 | |||
4.1. Storing HI, HIT and RVS in DNS . . . . . . . . . . . . . . 9 | 4.1. Storing HI, HIT and RVS in the DNS . . . . . . . . . . . . 9 | |||
4.2. Initiating connections based on DNS names . . . . . . . . 9 | 4.2. Initiating connections based on DNS names . . . . . . . . 9 | |||
5. HIP RR Storage Format . . . . . . . . . . . . . . . . . . . . 10 | 5. HIP RR Storage Format . . . . . . . . . . . . . . . . . . . . 10 | |||
5.1. HIT length format . . . . . . . . . . . . . . . . . . . . 10 | 5.1. HIT length format . . . . . . . . . . . . . . . . . . . . 10 | |||
5.2. PK algorithm format . . . . . . . . . . . . . . . . . . . 10 | 5.2. PK algorithm format . . . . . . . . . . . . . . . . . . . 10 | |||
5.3. PK length format . . . . . . . . . . . . . . . . . . . . . 11 | 5.3. PK length format . . . . . . . . . . . . . . . . . . . . . 11 | |||
5.4. HIT format . . . . . . . . . . . . . . . . . . . . . . . . 11 | 5.4. HIT format . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
5.5. Public key format . . . . . . . . . . . . . . . . . . . . 11 | 5.5. Public key format . . . . . . . . . . . . . . . . . . . . 11 | |||
5.6. Rendezvous servers format . . . . . . . . . . . . . . . . 11 | 5.6. Rendezvous servers format . . . . . . . . . . . . . . . . 11 | |||
6. HIP RR Presentation Format . . . . . . . . . . . . . . . . . . 12 | 6. HIP RR Presentation Format . . . . . . . . . . . . . . . . . . 12 | |||
7. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 7. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
skipping to change at page 3, line 12 | skipping to change at page 3, line 12 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 20 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
Intellectual Property and Copyright Statements . . . . . . . . . . 21 | Intellectual Property and Copyright Statements . . . . . . . . . . 21 | |||
1. Introduction | 1. Introduction | |||
This document specifies a new resource record (RR) for the Domain | This document specifies a new resource record (RR) for the Domain | |||
Name System (DNS) [RFC1034], and how to use it with the Host Identity | Name System (DNS) [RFC1034], and how to use it with the Host Identity | |||
Protocol (HIP) [I-D.ietf-hip-base]. This RR allows a HIP node to | Protocol (HIP) [I-D.ietf-hip-base]. This RR allows a HIP node to | |||
store in the DNS its Host Identity (HI, the public component of the | store in the DNS its Host Identity (HI, the public component of the | |||
node public-private key pair), Host Identity Tag (HIT, a truncated | node public-private key pair), Host Identity Tag (HIT, a truncated | |||
hash of its HI), and the Domain Names of its rendezvous servers | hash of its HI), and the Domain Names of its rendezvous servers (RVS) | |||
(RVS.) [I-D.ietf-hip-rvs] | [I-D.ietf-hip-rvs]. | |||
Currently, most of the Internet applications that need to communicate | Currently, most of the Internet applications that need to communicate | |||
with a remote host first translate a domain name (often obtained via | with a remote host first translate a domain name (often obtained via | |||
user input) into one or more IP address(es). This step occurs prior | user input) into one or more IP address(es). This step occurs prior | |||
to communication with the remote host, and relies on a DNS lookup. | to communication with the remote host, and relies on a DNS lookup. | |||
With HIP, IP addresses are intended to be used mostly for on-the-wire | With HIP, IP addresses are intended to be used mostly for on-the-wire | |||
communication between end hosts, while most ULPs and applications use | communication between end hosts, while most Upper Layer Protocols | |||
HIs or HITs instead (ICMP might be an example of an ULP not using | (ULP) and applications use HIs or HITs instead (ICMP might be an | |||
them.) Consequently, we need a means to translate a domain name into | example of an ULP not using them). Consequently, we need a means to | |||
an HI. Using the DNS for this translation is pretty straightforward: | translate a domain name into an HI. Using the DNS for this | |||
We define a new HIP resource record. Upon query by an application or | translation is pretty straightforward: We define a new HIP resource | |||
ULP for a FQDN -> IP lookup, the resolver would then additionally | record. Upon query by an application or ULP for a name to IP address | |||
perform an FQDN -> HI lookup, and use it to construct the resulting | lookup, the resolver would then additionally perform a name to HI | |||
HI -> IP mapping (which is internal to the HIP layer.) The HIP layer | lookup, and use it to construct the resulting HI to IP address | |||
uses the HI -> IP mapping to translate HIs and HITs into IP addresses | mapping (which is internal to the HIP layer). The HIP layer uses the | |||
HI to IP address mapping to translate HIs and HITs into IP addresses | ||||
and vice versa. | and vice versa. | |||
The HIP rendezvous extensions [I-D.ietf-hip-rvs] proposal allows a | The HIP rendezvous extensions [I-D.ietf-hip-rvs] proposal allows a | |||
HIP node to be reached via the IP address(es) of a third party, the | HIP node to be reached via the IP address(es) of a third party, the | |||
node's rendezvous server (RVS.) An initiator willing to establish a | node's rendezvous server (RVS). An initiator willing to establish a | |||
HIP association with a responder served by a RVS would typically | HIP association with a responder served by a RVS would typically | |||
initiate a HIP exchange by sending an I1 towards the RVS IP address | initiate a HIP exchange by sending an I1 towards the RVS IP address | |||
rather than towards the responder IP address. Consequently, we need | rather than towards the responder IP address. Consequently, we need | |||
a means to translate a domain name into the rendezvous server's | a means to to find the name of a rendezvous server for a given host | |||
domain name. | name. | |||
This draft introduces the new HIP DNS Resource Record to store | This document introduces the new HIP DNS Resource Record to store | |||
Rendezvous Server (RVS), Host Identity (HI) and Host Identity Tag | Rendezvous Server (RVS), Host Identity (HI) and Host Identity Tag | |||
(HIT) information. | (HIT) information. | |||
2. Conventions used in this document | 2. Conventions used in this document | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
document are to be interpreted as described in RFC2119 [RFC2119]. | document are to be interpreted as described in RFC2119 [RFC2119]. | |||
3. Usage Scenarios | 3. Usage Scenarios | |||
In this section, we briefly introduce a number of usage scenarios | In this section, we briefly introduce a number of usage scenarios | |||
where the DNS is useful with the Host Identity Protocol. | where the DNS is useful with the Host Identity Protocol. | |||
With HIP, most application and ULPs are unaware of the IP addresses | With HIP, most application and ULPs are unaware of the IP addresses | |||
used to carry packets on the wire. Consequently, a HIP node could | used to carry packets on the wire. Consequently, a HIP node could | |||
take advantage of having multiple IP addresses for fail-over, | take advantage of having multiple IP addresses for fail-over, | |||
redundancy, mobility, or renumbering, in a manner which is | redundancy, mobility, or renumbering, in a manner which is | |||
transparent to most ULPs and applications (because they are bound to | transparent to most ULPs and applications (because they are bound to | |||
HIs, hence they are agnostic to these IP address changes.) | HIs, hence they are agnostic to these IP address changes). | |||
In these situations, a node wishing to be reachable by reference to | In these situations, for a node to be reachable by reference to its | |||
its FQDN should store the following information in the DNS: | Fully Qualified Domain Name (FQDN), the following information should | |||
be stored in the DNS: | ||||
o A set of IP address(es) through A [RFC1035] and AAAA [RFC3596] | o A set of IP address(es) through A [RFC1035] and AAAA [RFC3596] RR | |||
RRs. | sets (RRSets [RFC2181]). | |||
o A Host Identity (HI), Host Identity Tag (HIT) and possibly a set | o A Host Identity (HI), Host Identity Tag (HIT) and possibly a set | |||
of rendezvous server(s) (RVS) through HIP RRs. | of rendezvous servers (RVS) through HIP RRs. | |||
When a HIP node wants to initiate a communication with another HIP | When a HIP node wants to initiate a communication with another HIP | |||
node, it first needs to perform a HIP base exchange to set-up a HIP | node, it first needs to perform a HIP base exchange to set up a HIP | |||
association towards its peer. Although such an exchange can be | association towards its peer. Although such an exchange can be | |||
initiated opportunistically, i.e., without prior knowledge of the | initiated opportunistically, i.e., without prior knowledge of the | |||
responder's HI, by doing so both nodes knowingly risk man-in-the- | responder's HI, by doing so both nodes knowingly risk man-in-the- | |||
middle attacks on the HIP exchange. To prevent these attacks, it is | middle attacks on the HIP exchange. To prevent these attacks, it is | |||
recommended that the initiator first obtain the HI of the responder, | recommended that the initiator first obtain the HI of the responder, | |||
and then initiate the exchange. This can be done, for example, | and then initiate the exchange. This can be done, for example, | |||
through manual configuration or DNS lookups. Hence, a new HIP RR is | through manual configuration or DNS lookups. Hence, a new HIP RR is | |||
introduced. | introduced. | |||
When a HIP node is frequently changing its IP address(es), the | When a HIP node is frequently changing its IP address(es), the | |||
dynamic DNS update latency may prevent it from publishing its new IP | natural DNS latency for propagating changes may prevent it from | |||
address(es) in the DNS. For solving this problem, the HIP | publishing its new IP address(es) in the DNS. For solving this | |||
architecture [RFC4423] introduces rendezvous servers (RVS.) A HIP | problem, the HIP architecture [RFC4423] introduces rendezvous servers | |||
host uses a rendezvous server as a rendezvous point, to maintain | (RVS). A HIP host uses a rendezvous server as a rendezvous point, to | |||
reachability with possible HIP initiators while moving | maintain reachability with possible HIP initiators while moving | |||
[I-D.ietf-hip-mm]. Such a HIP node would publish in the DNS its RVS | [I-D.ietf-hip-mm]. Such a HIP node would publish in the DNS its RVS | |||
domain name(s) in a HIP RR, while keeping its RVS up-to-date with its | domain name(s) in a HIP RR, while keeping its RVS up-to-date with its | |||
current set of IP addresses. | current set of IP addresses. | |||
When a HIP node wants to initiate a HIP exchange with a responder it | When a HIP node wants to initiate a HIP exchange with a responder it | |||
will perform a number of DNS lookups. Depending on the type of the | will perform a number of DNS lookups. Depending on the type of the | |||
implementation, the order in which those lookups will be issued may | implementation, the order in which those lookups will be issued may | |||
vary. For instance, implementations using HIT in APIS may typically | vary. For instance, implementations using HIT in APIs may typically | |||
first query for HIP resource records at the responder FQDN, while | first query for HIP resource records at the responder FQDN, while | |||
those using IP address in APIs may typically first query for A and/or | those using IP address in APIs may typically first query for A and/or | |||
AAAA resource records. | AAAA resource records. | |||
In the following we assume that the initiator first queries for HIP | In the following we assume that the initiator first queries for HIP | |||
resource records at the responder FQDN. | resource records at the responder FQDN. | |||
If the query for the HIP type was responded to with a DNS answer with | If the query for the HIP type was responded to with a DNS answer with | |||
RCODE=3 (Name Error), then the responder's information is not present | RCODE=3 (Name Error), then the responder's information is not present | |||
in the DNS and further queries SHOULD NOT be made. | in the DNS and further queries for the same owner name SHOULD NOT be | |||
made. | ||||
In case the query for the HIP records returned a DNS answer with | In case the query for the HIP records returned a DNS answer with | |||
RCODE=0 (No Error), then the initiator sends out one more query for | RCODE=0 (No Error) and an empty answer section, it means that no HIP | |||
for A and AAAA types at the responder's FQDN. | information is avalaible at the responder name. In such a case, if | |||
the initiator has been configured with a policy to fallback to | ||||
opportunistic HIP (initiating without knowing the responder's HI) or | ||||
plain IP, it would sends out more queries for A and AAAA types at the | ||||
responder's FQDN. | ||||
Depending on the combinations of answer the situations described in | Depending on the combinations of answers the situations described in | |||
Section 3.1 and Section 3.2 can occur. | Section 3.1 and Section 3.2 can occur. | |||
Note that storing HIP RR information in the DNS at a FQDN which is | Note that storing HIP RR information in the DNS at a FQDN which is | |||
assigned to a non-HIP node might have ill effects on its reachability | assigned to a non-HIP node might have ill effects on its reachability | |||
by HIP nodes. | by HIP nodes. | |||
3.1. Simple static singly homed end-host | 3.1. Simple static singly homed end-host | |||
A HIP node (R) with a single static network attachment, wishing to be | A HIP node (R) with a single static network attachment, wishing to be | |||
reachable by reference to its FQDN (www.example.com), would store in | reachable by reference to its FQDN (www.example.com), would store in | |||
the DNS, in addition to its IP address(es) (IP-R), its Host Identity | the DNS, in addition to its IP address(es) (IP-R), its Host Identity | |||
(HI-R) and Host Identity Tag (HIT-R) in a HIP resource record. | (HI-R) and Host Identity Tag (HIT-R) in a HIP resource record. | |||
An initiator willing to associate with a node would typically issue | An initiator willing to associate with a node would typically issue | |||
the following queries: | the following queries: | |||
QNAME=www.example.com, QTYPE=HIP | o QNAME=www.example.com, QTYPE=HIP | |||
(QCLASS=IN is assumed and omitted from the examples) | o (QCLASS=IN is assumed and omitted from the examples) | |||
Which returns a DNS packet with RCODE=0 and one or more HIP RRs with | Which returns a DNS packet with RCODE=0 and one or more HIP RRs with | |||
the HIT and HI (e.g. HIT-R and HI-R) of the responder in the answer | the HIT and HI (e.g. HIT-R and HI-R) of the responder in the answer | |||
section, but no RVS. | section, but no RVS. | |||
QNAME=www.example.com, QTYPE=A | o QNAME=www.example.com, QTYPE=A QNAME=www.example.com, QTYPE=AAAA | |||
Which returns a DNS packet with RCODE=0 and one or more A or AAAA RRs | Which returns DNS packets with RCODE=0 and one or more A or AAAA RRs | |||
containing IP address(es) of the responder (e.g. IP-R) in the answer | containing IP address(es) of the responder (e.g. IP-R) in the answer | |||
section. | section. | |||
Caption: In the remainder of this document, for the sake of keeping | Caption: In the remainder of this document, for the sake of keeping | |||
diagrams simple and concise, several DNS queries and answers | diagrams simple and concise, several DNS queries and answers | |||
are represented as one single transaction, while in fact | are represented as one single transaction, while in fact | |||
there are several queries and answers flowing back and | there are several queries and answers flowing back and | |||
forth, as described in the textual examples. | forth, as described in the textual examples. | |||
[HIP? A? ] | [HIP? A? ] | |||
skipping to change at page 7, line 28 | skipping to change at page 7, line 29 | |||
| | [HIP HIT-R HI-R ] | | | [HIP HIT-R HI-R ] | |||
| | [A IP-R ] | | | [A IP-R ] | |||
| v | | v | |||
+-----+ +-----+ | +-----+ +-----+ | |||
| |--------------I1------------->| | | | |--------------I1------------->| | | |||
| I |<-------------R1--------------| R | | | I |<-------------R1--------------| R | | |||
| |--------------I2------------->| | | | |--------------I2------------->| | | |||
| |<-------------R2--------------| | | | |<-------------R2--------------| | | |||
+-----+ +-----+ | +-----+ +-----+ | |||
Static Singly Homed Host | ||||
The initiator would then send an I1 to the responder's IP addresses | The initiator would then send an I1 to the responder's IP addresses | |||
(IP-R.) | (IP-R). | |||
3.2. Mobile end-host | 3.2. Mobile end-host | |||
A mobile HIP node (R) wishing to be reachable by reference to its | A mobile HIP node (R) wishing to be reachable by reference to its | |||
FQDN (www.example.com) would store in the DNS, possibly in addition | FQDN (www.example.com) would store in the DNS, possibly in addition | |||
to its IP address(es) (IP-R), its HI (HI-R), HIT (HIT-R) and the | to its IP address(es) (IP-R), its HI (HI-R), HIT (HIT-R) and the | |||
domain name(s) of its rendezvous server(s) (rvs.example.com) in HIP | domain name(s) of its rendezvous server(s) (e.g. rvs.example.com) in | |||
resource record(s). The mobile HIP node also needs to notify its | HIP resource record(s). The mobile HIP node also needs to notify its | |||
rendezvous servers of any change in its set of IP address(es). | rendezvous servers of any change in its set of IP address(es). | |||
An initiator willing to associate with such mobile node would | An initiator willing to associate with such mobile node would | |||
typically issue the following queries: | typically issue the following queries: | |||
QNAME=www.example.com, QTYPE=HIP | o QNAME=www.example.com, QTYPE=HIP | |||
Which returns a DNS packet with RCODE=0 and one or more HIP RRs with | Which returns a DNS packet with RCODE=0 and one or more HIP RRs with | |||
the HIT, HI and RVS domain name(s) (e.g. HIT-R, HI-R, and | the HIT, HI and RVS domain name(s) (e.g. HIT-R, HI-R, and | |||
rvs.example.com) of the responder in the answer section. | rvs.example.com) of the responder in the answer section. | |||
QNAME=rvs.example.com, QTYPE=A | o QNAME=rvs.example.com, QTYPE=A QNAME=www.example.com, QTYPE=AAAA | |||
Which returns a DNS packet with RCODE=0 and one or more A or AAAA RRs | Which returns DNS packets with RCODE=0 and one or more A or AAAA RRs | |||
containing IP address(es) of the responder's RVS (e.g. IP-RVS) in | containing IP address(es) of the responder's RVS (e.g. IP-RVS) in | |||
the answer section. | the answer section. | |||
[HIP? ] | [HIP? ] | |||
[www.example.com] | [www.example.com] | |||
[A? ] | [A? ] | |||
[rvs.example.com] +-----+ | [rvs.example.com] +-----+ | |||
+----------------------------------------->| | | +----------------------------------------->| | | |||
| | DNS | | | | DNS | | |||
skipping to change at page 8, line 35 | skipping to change at page 8, line 40 | |||
| | | +-----+ | | | | | +-----+ | | |||
| | | | | | | | | | |||
| | | | | | | | | | |||
| v | v | | v | v | |||
+-----+ +-----+ | +-----+ +-----+ | |||
| |<---------------R1------------| | | | |<---------------R1------------| | | |||
| I |----------------I2----------->| R | | | I |----------------I2----------->| R | | |||
| |<---------------R2------------| | | | |<---------------R2------------| | | |||
+-----+ +-----+ | +-----+ +-----+ | |||
The initiator would then send an I1 to the RVS IP address (IP-RVS.) | Mobile End-Host | |||
The initiator would then send an I1 to the RVS IP address (IP-RVS). | ||||
Following, the RVS will relay the I1 up to the mobile node's IP | Following, the RVS will relay the I1 up to the mobile node's IP | |||
address (IP-R), which will complete the HIP exchange. | address (IP-R), which will complete the HIP exchange. | |||
4. Overview of using the DNS with HIP | 4. Overview of using the DNS with HIP | |||
4.1. Storing HI, HIT and RVS in DNS | 4.1. Storing HI, HIT and RVS in the DNS | |||
Any conforming implementation may store a Host Identity (HI) and its | For any HIP node its Host Identity (HI), the associated Host Identity | |||
associated Host Identity Tag (HIT) in a DNS HIP RDATA format. If a | Tag (HIT), and the FQDN of its possible RVSs can be stored in a DNS | |||
particular form of an HI does not already have a specified RDATA | HIP RR. Any conforming implementation may store a Host Identity (HI) | |||
format, a new RDATA-like format SHOULD be defined for the HI. HI and | and its associated Host Identity Tag (HIT) in a DNS HIP RDATA format. | |||
HIT are defined in Section 3 of [I-D.ietf-hip-base]. | HI and HIT are defined in Section 3 of [I-D.ietf-hip-base]. | |||
Upon return of a HIP RR, a host MUST always calculate the HI- | Upon return of a HIP RR, a host MUST always calculate the HI- | |||
derivative HIT to be used in the HIP exchange, as specified in | derivative HIT to be used in the HIP exchange, as specified in | |||
Section 3 of the HIP base specification [I-D.ietf-hip-base], while | Section 3 of the HIP base specification [I-D.ietf-hip-base], while | |||
the HIT possibly embedded along SHOULD only be used as an | the HIT possibly embedded along SHOULD only be used as an | |||
optimization (e.g. table lookup.) | optimization (e.g. table lookup). | |||
The HIP resource record may also contain one or more domain name(s) | The HIP resource record may also contain one or more domain name(s) | |||
of rendezvous server(s) towards which HIP I1 packets might be sent to | of rendezvous server(s) towards which HIP I1 packets might be sent to | |||
trigger the establishment of an association with the entity named by | trigger the establishment of an association with the entity named by | |||
this resource record [I-D.ietf-hip-rvs]. | this resource record [I-D.ietf-hip-rvs]. | |||
The rendezvous server field of the HIP resource record stored at a | The rendezvous server field of the HIP resource record stored at a | |||
given domain name MAY include the domain name itself. A semantically | given owner name MAY include the owner name itself. A semantically | |||
equivalent situation occurs if no rendezvous server is stored in the | equivalent situation occurs if no rendezvous server is present in the | |||
HIP resource record of that domain. Such situations occurs in two | HIP resource record stored at that owner name. Such situations | |||
cases: | occurs in two cases: | |||
o The host is mobile, and the A and/or AAAA resource record(s) | o The host is mobile, and the A and/or AAAA resource record(s) | |||
stored at its domain name contains the IP address(es) of its | stored at its host name contains the IP address(es) of its | |||
rendezvous server rather than its own one. | rendezvous server rather than its own one. | |||
o The host is stationary, and can be reached directly at IP | o The host is stationary, and can be reached directly at IP | |||
address(es) contained in A and/or AAAA resource record(s) stored | address(es) contained in A and/or AAAA resource record(s) stored | |||
at its domain name. This a degenerated case of rendezvous service | at its host name. This a degenerated case of rendezvous service | |||
where the host somewhat acts as a rendezvous server for itself. | where the host somewhat acts as a rendezvous server for itself. | |||
An RVS receiving such an I1 would then relay it to the appropriate | An RVS receiving such an I1 would then relay it to the appropriate | |||
responder (the owner of the I1 receiver HIT.) The responder will | responder (the owner of the I1 receiver HIT). The responder will | |||
then complete the exchange with the initiator, typically without | then complete the exchange with the initiator, typically without | |||
ongoing help from the RVS. | ongoing help from the RVS. | |||
4.2. Initiating connections based on DNS names | 4.2. Initiating connections based on DNS names | |||
On a HIP node, a Host Identity Protocol exchange SHOULD be initiated | On a HIP node, a Host Identity Protocol exchange SHOULD be initiated | |||
whenever an Upper Layer Protocol attempts to communicate with an | whenever an ULP attempts to communicate with an entity and the DNS | |||
entity and the DNS lookup returns HIP resource records. | lookup returns HIP resource records. | |||
5. HIP RR Storage Format | 5. HIP RR Storage Format | |||
The RDATA for a HIP RR consists of a public key algorithm type, the | The RDATA for a HIP RR consists of a public key algorithm type, the | |||
HIT length, a HIT, a public key, and optionally one or more | HIT length, a HIT, a public key, and optionally one or more | |||
rendezvous server(s). | rendezvous server(s). | |||
0 1 2 3 | 0 1 2 3 | |||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
skipping to change at page 10, line 48 | skipping to change at page 10, line 48 | |||
5.1. HIT length format | 5.1. HIT length format | |||
The HIT length indicates the length in bytes of the HIT field. This | The HIT length indicates the length in bytes of the HIT field. This | |||
is an 8 bits unsigned integer. | is an 8 bits unsigned integer. | |||
5.2. PK algorithm format | 5.2. PK algorithm format | |||
The PK algorithm field indicates the public key cryptographic | The PK algorithm field indicates the public key cryptographic | |||
algorithm and the implied public key field format. This is an 8 bits | algorithm and the implied public key field format. This is an 8 bits | |||
unsigned integer. This document reuses the values defined for the | unsigned integer. This document reuses the values defined for the | |||
'algorithm type' of the IPSECKEY RR [RFC4025] 'gateway type' field. | 'algorithm type' of the IPSECKEY RR [RFC4025]. | |||
The presently defined values are shown here for reference: | ||||
1 A DSA key is present, in the format defined in RFC2536 | ||||
[RFC2536]. | ||||
2 A RSA key is present, in the format defined in RFC3110 | Presently defined values are listed in Section 9 for reference. | |||
[RFC3110]. | ||||
5.3. PK length format | 5.3. PK length format | |||
The PK length indicates the length in bytes of the Public key field. | The PK length indicates the length in bytes of the Public key field. | |||
This is a 16 bits unsigned integer in network byte order. | This is a 16 bits unsigned integer in network byte order. | |||
5.4. HIT format | 5.4. HIT format | |||
The HIT is stored, as a binary value, in network byte order. | The HIT is stored, as a binary value, in network byte order. | |||
5.5. Public key format | 5.5. Public key format | |||
Both of the public key types defined in this document (RSA and DSA) | Both of the public key types defined in this document (RSA and DSA) | |||
reuse the public key formats defined for the IPSECKEY RR [RFC4025] | reuse the public key formats defined for the IPSECKEY RR [RFC4025]. | |||
(which in turns contains the algorithm-specific portion of the KEY RR | ||||
RDATA, all of the KEY RR DATA after the first four octets, | ||||
corresponding to the same portion of the KEY RR that must be | ||||
specified by documents that define a DNSSEC algorithm.) | ||||
In the future, if a new algorithm is to be used both by IPSECKEY RR | ||||
and HIP RR, it should use the same public key encoding for both RRs. | ||||
Unless specified otherwise, the HIP RR public key field SHOULD use | ||||
the same public key format as the IPSECKEY RR RDATA for the | ||||
corresponding algorithm. | ||||
The DSA key format is defined in RFC2536 [RFC2536]. | The DSA key format is defined in RFC2536 [RFC2536]. | |||
The RSA key format is defined in RFC3110 [RFC3110] and the RSA key | The RSA key format is defined in RFC3110 [RFC3110] and the RSA key | |||
size limit (4096 bits) is relaxed in the IPSECKEY RR [RFC4025] | size limit (4096 bits) is relaxed in the IPSECKEY RR [RFC4025] | |||
specification. | specification. | |||
5.6. Rendezvous servers format | 5.6. Rendezvous servers format | |||
The Rendezvous servers field indicates one or more variable length | The Rendezvous servers field indicates one or more variable length | |||
wire-encoded domain names rendezvous server(s), as described in | wire-encoded domain names of rendezvous server(s), as described in | |||
Section 3.3 of RFC1035 [RFC1035]. The wire-encoded format is self- | Section 3.3 of RFC1035 [RFC1035]. The wire-encoded format is self- | |||
describing, so the length is implicit. The domain names MUST NOT be | describing, so the length is implicit. The domain names MUST NOT be | |||
compressed. The rendezvous server(s) are listed in order of | compressed. The rendezvous server(s) are listed in order of | |||
preference (i.e. first rendezvous server(s) are preferred). | preference (i.e. first rendezvous server(s) are preferred), defining | |||
an implicit order amongst rendezvous server of a single RR. When | ||||
multiple HIP RRs are present at the same owner name, this implicit | ||||
order of rendezvous servers within an RR MUST NOT be used to infer a | ||||
preference order between rendezvous servers stored in different RRs. | ||||
6. HIP RR Presentation Format | 6. HIP RR Presentation Format | |||
This section specifies the representation of the HIP RR in a zone | This section specifies the representation of the HIP RR in a zone | |||
data master file. | master file. | |||
The HIT length field is not represented as it is implicitly known | The HIT length field is not represented as it is implicitly known | |||
thanks to the HIT field representation. | thanks to the HIT field representation. | |||
The PK algorithm field is represented as unsigned integers. | The PK algorithm field is represented as unsigned integers. | |||
The PK length field is not represented as it is implicitly known | ||||
thanks to the Public key field representation. | ||||
The HIT field is represented as the Base16 encoding [RFC4648] (a.k.a. | The HIT field is represented as the Base16 encoding [RFC4648] (a.k.a. | |||
hex or hexadecimal) of the HIT. The encoding MUST NOT contain | hex or hexadecimal) of the HIT. The encoding MUST NOT contain | |||
whitespace(s). | whitespaces to be able to distinguish it from the public key field. | |||
The Public Key field is represented as the Base64 encoding [RFC4648] | The Public Key field is represented as the Base64 encoding [RFC4648] | |||
of the public key. The encoding MAY contain whitespace(s), and such | of the public key. The encoding MUST NOT contain whitespace(s) to be | |||
whitespace(s) MUST be ignored. | able to distinguish from the Rendezvous Servers field. | |||
The Rendezvous servers field is represented by one or more | The PK length field is not represented as it is implicitly known | |||
uncompressed domain name(s) | thanks to the Public key field representation containing no | |||
whitespaces. | ||||
The Rendezvous Servers field is represented by one or more domain | ||||
name(s) separated by whitespace(s). | ||||
The complete representation of the HPIHI record is: | The complete representation of the HPIHI record is: | |||
IN HIP ( pk-algorithm | IN HIP ( pk-algorithm | |||
base16-encoded-hit | base16-encoded-hit | |||
base64-encoded-public-key | base64-encoded-public-key | |||
rendezvous-server[1] | rendezvous-server[1] | |||
... | ... | |||
rendezvous-server[n] ) | rendezvous-server[n] ) | |||
When no RVS are present, the representation of the HPIHI record is: | ||||
IN HIP ( pk-algorithm | ||||
base16-encoded-hit | ||||
base64-encoded-public-key ) | ||||
7. Examples | 7. Examples | |||
In the examples below, the public key field containing no whitespace | ||||
is wrapped since it does not fit in a single line of this document. | ||||
Example of a node with HI and HIT but no RVS: | Example of a node with HI and HIT but no RVS: | |||
www.example.com. IN HIP ( 2 4009D9BA7B1A74DF365639CC39F1D578 | www.example.com. IN HIP ( 2 200100107B1A74DF365639CC39F1D578 | |||
AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIv | AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIvM4p | |||
M4p9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy | 9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRGQ | |||
87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRG | b1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48AWkskmdHaVDP4BcelrTI3rMXdXF5D ) | |||
Qb1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48A | ||||
WkskmdHaVDP4BcelrTI3rMXdXF5D ) | ||||
Example of a node with a HI, HIT and one RVS: | Example of a node with a HI, HIT and one RVS: | |||
www.example.com. IN HIP ( 2 4009D9BA7B1A74DF365639CC39F1D578 | www.example.com. IN HIP ( 2 200100107B1A74DF365639CC39F1D578 | |||
AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIv | AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIvM4p | |||
M4p9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy | 9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRGQ | |||
87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRG | b1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48AWkskmdHaVDP4BcelrTI3rMXdXF5D | |||
Qb1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48A | rvs.example.com. ) | |||
WkskmdHaVDP4BcelrTI3rMXdXF5D | ||||
rvs.example.com ) | ||||
Example of a node with a HI, HIT and two RVS: | Example of a node with a HI, HIT and two RVS: | |||
www.example.com. IN HIP ( 2 4009D9BA7B1A74DF365639CC39F1D578 | www.example.com. IN HIP ( 2 200100107B1A74DF365639CC39F1D578 | |||
AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIv | AwEAAbdxyhNuSutc5EMzxTs9LBPCIkOFH8cIvM4p | |||
M4p9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy | 9+LrV4e19WzK00+CI6zBCQTdtWsuxKbWIy87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRGQ | |||
87UOoJTwkUs7lBu+Upr1gsNrut79ryra+bSRG | b1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48AWkskmdHaVDP4BcelrTI3rMXdXF5D | |||
Qb1slImA8YVJyuIDsj7kwzG7jnERNqnWxZ48A | rvs1.example.com. | |||
WkskmdHaVDP4BcelrTI3rMXdXF5D | rvs2.example.com. ) | |||
rvs1.example.com | ||||
rvs2.example.com ) | ||||
8. Security Considerations | 8. Security Considerations | |||
Though the security considerations of the HIP DNS extensions still | This section contains a description of the known threats involved | |||
need to be more investigated and documented, this section contains a | with the usage of the HIP DNS extensions. | |||
description of the known threats involved with the usage of the HIP | ||||
DNS extensions. | ||||
In a manner similar to the IPSECKEY RR [RFC4025], the HIP DNS | In a manner similar to the IPSECKEY RR [RFC4025], the HIP DNS | |||
Extensions allows to provision two HIP nodes with the public keying | Extensions allows to provision two HIP nodes with the public keying | |||
material (HI) of their peer. These HIs will be subsequently used in | material (HI) of their peer. These HIs will be subsequently used in | |||
a key exchange between the peers. Hence, the HIP DNS Extensions | a key exchange between the peers. Hence, the HIP DNS Extensions | |||
introduce the same kind of threats that IPSECKEY does, plus threats | introduce the same kind of threats that IPSECKEY does, plus threats | |||
caused by the possibility given to a HIP node to initiate or accept a | caused by the possibility given to a HIP node to initiate or accept a | |||
HIP exchange using "opportunistic" or "unpublished initiator HI" | HIP exchange using "opportunistic" or "unpublished initiator HI" | |||
modes. | modes. | |||
A HIP node SHOULD obtain HIP RRs from a trusted party trough a secure | A HIP node SHOULD obtain HIP RRs from a trusted party trough a secure | |||
channel insuring proper data integrity of the RRs. DNSSEC [RFC4033] | channel insuring data integrity and authenticity of the RRs. DNSSEC | |||
[RFC4034] [RFC4035] provides such a secure channel. | [RFC4033] [RFC4034] [RFC4035] provides such a secure channel. | |||
However, it should be emphasized that DNSSEC does only offer data | ||||
integrity and authenticty guarantees to the channel between the DNS | ||||
server publishing a zone and the HIP node. DNSSEC does not ensure | ||||
that the entity publishing the zone is trusted. Therefore, the RRSIG | ||||
signature of the HIP RRSet MUST NOT be misinterpreted as a | ||||
certificate binding the HI and/or the HIT to the owner name. | ||||
In the absence of a proper secure channel, both parties are | In the absence of a proper secure channel, both parties are | |||
vulnerable to MitM and DoS attacks, and unrelated parties might be | vulnerable to MitM and DoS attacks, and unrelated parties might be | |||
subject to DoS attacks as well. These threats are described in the | subject to DoS attacks as well. These threats are described in the | |||
following sections. | following sections. | |||
8.1. Attacker tampering with an insecure HIP RR | 8.1. Attacker tampering with an insecure HIP RR | |||
The HIP RR contains public keying material in the form of the named | The HIP RR contains public keying material in the form of the named | |||
peer's public key (the HI) and its secure hash (the HIT.) Both of | peer's public key (the HI) and its secure hash (the HIT). Both of | |||
these are not sensitive to attacks where an adversary gains knowledge | these are not sensitive to attacks where an adversary gains knowledge | |||
of them. However, an attacker that is able to mount an active attack | of them. However, an attacker that is able to mount an active attack | |||
on the DNS, i.e., tampers with this HIP RR (e.g. using DNS spoofing) | on the DNS, i.e., tampers with this HIP RR (e.g. using DNS spoofing) | |||
is able to mount Man-in-the-Middle attacks on the cryptographic core | is able to mount Man-in-the-Middle attacks on the cryptographic core | |||
of the eventual HIP exchange (responder's HIP RR rewritten by the | of the eventual HIP exchange (responder's HIP RR rewritten by the | |||
attacker.) | attacker). | |||
The HIP RR may contain a rendezvous server domain name resolved into | The HIP RR may contain a rendezvous server domain name resolved into | |||
a destination IP address where the named peer is reachable by an I1 | a destination IP address where the named peer is reachable by an I1 | |||
(HIP Rendezvous Extensions IPSECKEY RR [I-D.ietf-hip-rvs].) Thus, an | (HIP Rendezvous Extensions IPSECKEY RR [I-D.ietf-hip-rvs]). Thus, an | |||
attacker able to tamper with this RR is able to redirect I1 packets | attacker able to tamper with this RR is able to redirect I1 packets | |||
sent to the named peer to a chosen IP address, for DoS or MitM | sent to the named peer to a chosen IP address, for DoS or MitM | |||
attacks. Note that this kind of attack is not specific to HIP and | attacks. Note that this kind of attack is not specific to HIP and | |||
exists independently to whether or not HIP and the HIP RR are used. | exists independently of whether or not HIP and the HIP RR are used. | |||
Such an attacker might tamper with A and AAAA RRs as well. | Such an attacker might tamper with A and AAAA RRs as well. | |||
An attacker might obviously use these two attacks in conjunction: It | An attacker might obviously use these two attacks in conjunction: It | |||
will replace the responder's HI and RVS IP address by its owns in a | will replace the responder's HI and RVS IP address by its own in a | |||
spoofed DNS packet sent to the initiator HI, then redirect all | spoofed DNS packet sent to the initiator HI, then redirect all | |||
exchanged packets to him and mount a MitM on HIP. In this case HIP | exchanged packets to him and mount a MitM on HIP. In this case HIP | |||
won't provide confidentiality nor initiator HI protection from | won't provide confidentiality nor initiator HI protection from | |||
eavesdroppers. | eavesdroppers. | |||
8.2. Hash and HITs Collisions | 8.2. Hash and HITs Collisions | |||
As many cryptographic algorithm, some secure hashes (e.g. SHA1, used | As many cryptographic algorithms, some secure hashes (e.g. SHA1, | |||
by HIP to generate a HIT from an HI) eventually become insecure, | used by HIP to generate a HIT from an HI) eventually become insecure, | |||
because an exploit has been found in which an attacker with a | because an exploit has been found in which an attacker with a | |||
reasonable computation power breaks one of the security features of | reasonable computation power breaks one of the security features of | |||
the hash (e.g. its supposed collision resistance.) This is why a HIP | the hash (e.g. its supposed collision resistance). This is why a HIP | |||
end-node implementation SHOULD NOT authenticate its HIP peers based | end-node implementation SHOULD NOT authenticate its HIP peers based | |||
solely on a HIT retrieved from DNS, but SHOULD rather use HI-based | solely on a HIT retrieved from the DNS, but SHOULD rather use HI- | |||
authentication. | based authentication. | |||
8.3. DNSSEC | 8.3. DNSSEC | |||
In the absence of DNSSEC, the HIP RR is subject to the threats | In the absence of DNSSEC, the HIP RR is subject to the threats | |||
described in RFC 3833 [RFC3833]. | described in RFC 3833 [RFC3833]. | |||
9. IANA Considerations | 9. IANA Considerations | |||
IANA should allocate one new RR type code (TBD, 55?) for the HIP RR | IANA should allocate one new RR type code (TBD, 55?) for the HIP RR | |||
from the standard RR type space. | from the standard RR type space. | |||
IANA does not need to open a new registry for public key algorithms | IANA does not need to open a new registry for public key algorithms | |||
of the HIP RR because the HIP RR reuses "algorithms types" defined | of the HIP RR because the HIP RR reuses "algorithms types" defined | |||
for the IPSECKEY RR [RFC4025]. The presently defined values are | for the IPSECKEY RR [RFC4025]. Presently defined values are shown | |||
shown here for reference: | here for reference only: | |||
0 is reserved | 0 is reserved | |||
1 is RSA | 1 is RSA | |||
2 is DSA | 2 is DSA | |||
In the future, if a new algorithm is to be used for the HIP RR, a new | ||||
algorithm type and corresponding public key encoding should be | ||||
defined for the IPSECKEY RR. The HIP RR should reuse both the same | ||||
algorithm type and the same corresponding public key format as the | ||||
IPSECKEY RR. | ||||
10. Acknowledgments | 10. Acknowledgments | |||
As usual in the IETF, this document is the result of a collaboration | As usual in the IETF, this document is the result of a collaboration | |||
between many people. The authors would like to thanks the author | between many people. The authors would like to thanks the author | |||
(Michael Richardson), contributors and reviewers of the IPSECKEY RR | (Michael Richardson), contributors and reviewers of the IPSECKEY RR | |||
[RFC4025] specification, which this document was framed after. The | [RFC4025] specification, which this document was framed after. The | |||
authors would also like to thanks the following people, who have | authors would also like to thanks the following people, who have | |||
provided thoughtful and helpful discussions and/or suggestions, that | provided thoughtful and helpful discussions and/or suggestions, that | |||
have helped improving this document: Jeff Ahrenholz, Rob Austein, | have helped improving this document: Jeff Ahrenholz, Rob Austein, | |||
Hannu Flinck, Tom Henderson, Olaf Kolkman, Miika Komu, Andrew | Hannu Flinck, Olafur Gu[eth]mundsson, Tom Henderson, Peter Koch, Olaf | |||
McGregor, Erik Nordmark, and Gabriel Montenegro. Some parts of this | Kolkman, Miika Komu, Andrew McGregor, Erik Nordmark, and Gabriel | |||
draft stem from [I-D.ietf-hip-base]. | Montenegro. Some parts of this document stem from | |||
[I-D.ietf-hip-base]. | ||||
Julien Laganier is partly funded by Ambient Networks, a research | Julien Laganier is partly funded by Ambient Networks, a research | |||
project supported by the European Commission under its Sixth | project supported by the European Commission under its Sixth | |||
Framework Program. The views and conclusions contained herein are | Framework Program. The views and conclusions contained herein are | |||
those of the authors and should not be interpreted as necessarily | those of the authors and should not be interpreted as necessarily | |||
representing the official policies or endorsements, either expressed | representing the official policies or endorsements, either expressed | |||
or implied, of the Ambient Networks project or the European | or implied, of the Ambient Networks project or the European | |||
Commission. | Commission. | |||
11. References | 11. References | |||
skipping to change at page 18, line 18 | skipping to change at page 18, line 18 | |||
[RFC1034] Mockapetris, P., "Domain names - concepts and facilities", | [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", | |||
STD 13, RFC 1034, November 1987. | STD 13, RFC 1034, November 1987. | |||
[RFC1035] Mockapetris, P., "Domain names - implementation and | [RFC1035] Mockapetris, P., "Domain names - implementation and | |||
specification", STD 13, RFC 1035, November 1987. | specification", STD 13, RFC 1035, November 1987. | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
[RFC2536] Eastlake, D., "DSA KEYs and SIGs in the Domain Name System | [RFC2181] Elz, R. and R. Bush, "Clarifications to the DNS | |||
(DNS)", RFC 2536, March 1999. | Specification", RFC 2181, July 1997. | |||
[RFC3110] Eastlake, D., "RSA/SHA-1 SIGs and RSA KEYs in the Domain | ||||
Name System (DNS)", RFC 3110, May 2001. | ||||
[RFC3596] Thomson, S., Huitema, C., Ksinant, V., and M. Souissi, | [RFC3596] Thomson, S., Huitema, C., Ksinant, V., and M. Souissi, | |||
"DNS Extensions to Support IP Version 6", RFC 3596, | "DNS Extensions to Support IP Version 6", RFC 3596, | |||
October 2003. | October 2003. | |||
[RFC4025] Richardson, M., "A Method for Storing IPsec Keying | [RFC4025] Richardson, M., "A Method for Storing IPsec Keying | |||
Material in DNS", RFC 4025, March 2005. | Material in DNS", RFC 4025, March 2005. | |||
[RFC4033] Arends, R., Austein, R., Larson, M., Massey, D., and S. | [RFC4033] Arends, R., Austein, R., Larson, M., Massey, D., and S. | |||
Rose, "DNS Security Introduction and Requirements", | Rose, "DNS Security Introduction and Requirements", | |||
skipping to change at page 18, line 48 | skipping to change at page 18, line 45 | |||
[RFC4035] Arends, R., Austein, R., Larson, M., Massey, D., and S. | [RFC4035] Arends, R., Austein, R., Larson, M., Massey, D., and S. | |||
Rose, "Protocol Modifications for the DNS Security | Rose, "Protocol Modifications for the DNS Security | |||
Extensions", RFC 4035, March 2005. | Extensions", RFC 4035, March 2005. | |||
[RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data | [RFC4648] Josefsson, S., "The Base16, Base32, and Base64 Data | |||
Encodings", RFC 4648, October 2006. | Encodings", RFC 4648, October 2006. | |||
[I-D.ietf-hip-base] | [I-D.ietf-hip-base] | |||
Moskowitz, R., "Host Identity Protocol", | Moskowitz, R., "Host Identity Protocol", | |||
draft-ietf-hip-base-06 (work in progress), June 2006. | draft-ietf-hip-base-07 (work in progress), February 2007. | |||
[I-D.ietf-hip-rvs] | [I-D.ietf-hip-rvs] | |||
Laganier, J. and L. Eggert, "Host Identity Protocol (HIP) | Laganier, J. and L. Eggert, "Host Identity Protocol (HIP) | |||
Rendezvous Extension", draft-ietf-hip-rvs-05 (work in | Rendezvous Extension", draft-ietf-hip-rvs-05 (work in | |||
progress), June 2006. | progress), June 2006. | |||
11.2. Informative references | 11.2. Informative references | |||
[RFC2536] Eastlake, D., "DSA KEYs and SIGs in the Domain Name System | ||||
(DNS)", RFC 2536, March 1999. | ||||
[RFC3110] Eastlake, D., "RSA/SHA-1 SIGs and RSA KEYs in the Domain | ||||
Name System (DNS)", RFC 3110, May 2001. | ||||
[RFC4423] Moskowitz, R. and P. Nikander, "Host Identity Protocol | [RFC4423] Moskowitz, R. and P. Nikander, "Host Identity Protocol | |||
(HIP) Architecture", RFC 4423, May 2006. | (HIP) Architecture", RFC 4423, May 2006. | |||
[I-D.ietf-hip-mm] | [I-D.ietf-hip-mm] | |||
Nikander, P., "End-Host Mobility and Multihoming with the | Henderson, T., "End-Host Mobility and Multihoming with the | |||
Host Identity Protocol", draft-ietf-hip-mm-04 (work in | Host Identity Protocol", draft-ietf-hip-mm-05 (work in | |||
progress), June 2006. | progress), March 2007. | |||
[RFC3833] Atkins, D. and R. Austein, "Threat Analysis of the Domain | [RFC3833] Atkins, D. and R. Austein, "Threat Analysis of the Domain | |||
Name System (DNS)", RFC 3833, August 2004. | Name System (DNS)", RFC 3833, August 2004. | |||
Authors' Addresses | Authors' Addresses | |||
Pekka Nikander | Pekka Nikander | |||
Ericsson Research Nomadic Lab | Ericsson Research Nomadic Lab | |||
JORVAS FIN-02420 | JORVAS FIN-02420 | |||
FINLAND | FINLAND | |||
skipping to change at page 21, line 5 | skipping to change at page 21, line 5 | |||
Julien Laganier | Julien Laganier | |||
DoCoMo Communications Laboratories Europe GmbH | DoCoMo Communications Laboratories Europe GmbH | |||
Landsberger Strasse 312 | Landsberger Strasse 312 | |||
Munich 80687 | Munich 80687 | |||
Germany | Germany | |||
Phone: +49 89 56824 231 | Phone: +49 89 56824 231 | |||
Email: julien.ietf@laposte.net | Email: julien.ietf@laposte.net | |||
URI: http://www.docomolab-euro.com/ | URI: http://www.docomolab-euro.com/ | |||
Intellectual Property Statement | Full Copyright Statement | |||
Copyright (C) The IETF Trust (2007). | ||||
This document is subject to the rights, licenses and restrictions | ||||
contained in BCP 78, and except as set forth therein, the authors | ||||
retain all their rights. | ||||
This document and the information contained herein are provided on an | ||||
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | ||||
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND | ||||
THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS | ||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF | ||||
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED | ||||
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | ||||
Intellectual Property | ||||
The IETF takes no position regarding the validity or scope of any | The IETF takes no position regarding the validity or scope of any | |||
Intellectual Property Rights or other rights that might be claimed to | Intellectual Property Rights or other rights that might be claimed to | |||
pertain to the implementation or use of the technology described in | pertain to the implementation or use of the technology described in | |||
this document or the extent to which any license under such rights | this document or the extent to which any license under such rights | |||
might or might not be available; nor does it represent that it has | might or might not be available; nor does it represent that it has | |||
made any independent effort to identify any such rights. Information | made any independent effort to identify any such rights. Information | |||
on the procedures with respect to rights in RFC documents can be | on the procedures with respect to rights in RFC documents can be | |||
found in BCP 78 and BCP 79. | found in BCP 78 and BCP 79. | |||
skipping to change at page 21, line 29 | skipping to change at page 21, line 45 | |||
such proprietary rights by implementers or users of this | such proprietary rights by implementers or users of this | |||
specification can be obtained from the IETF on-line IPR repository at | specification can be obtained from the IETF on-line IPR repository at | |||
http://www.ietf.org/ipr. | http://www.ietf.org/ipr. | |||
The IETF invites any interested party to bring to its attention any | The IETF invites any interested party to bring to its attention any | |||
copyrights, patents or patent applications, or other proprietary | copyrights, patents or patent applications, or other proprietary | |||
rights that may cover technology that may be required to implement | rights that may cover technology that may be required to implement | |||
this standard. Please address the information to the IETF at | this standard. Please address the information to the IETF at | |||
ietf-ipr@ietf.org. | ietf-ipr@ietf.org. | |||
Disclaimer of Validity | ||||
This document and the information contained herein are provided on an | ||||
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | ||||
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET | ||||
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, | ||||
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE | ||||
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED | ||||
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | ||||
Copyright Statement | ||||
Copyright (C) The Internet Society (2006). This document is subject | ||||
to the rights, licenses and restrictions contained in BCP 78, and | ||||
except as set forth therein, the authors retain all their rights. | ||||
Acknowledgment | Acknowledgment | |||
Funding for the RFC Editor function is currently provided by the | Funding for the RFC Editor function is provided by the IETF | |||
Internet Society. | Administrative Support Activity (IASA). | |||
End of changes. 76 change blocks. | ||||
166 lines changed or deleted | 183 lines changed or added | |||
This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |