One document matched: draft-arkko-mipv6-select-hash-00.txt
Network Working Group Jari Arkko
INTERNET-DRAFT Pekka Nikander
Category: Standards Track Ericsson
<draft-arkko-mipv6-select-hash-00.txt> Gabriel Montenegro
SUN Microsystems
24 June 2002
Selection of MIPv6 Security Level Using a Hashed Address
1. Status of this Memo
This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026. Internet-Drafts are working docu¡
ments of the Internet Engineering Task Force (IETF), its areas, and
its working groups. Note that other groups may also distribute work¡
ing documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or made obsolete by other documents at
any time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as work in progress.
The list of current Internet-Drafts may be found at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories may be found at
http://www.ietf.org/shadow.html.
The distribution of this memo is unlimited. It is filed as <draft-
arkko-mipv6-select-hash-00.txt>, and expires December 24, 2002.
Please send comments to the author and/or to the MOBILE IP Working
Group mailing list.
2. Abstract
MIPv6 is being defined with a security solution called Return
Routability (RR) that does not need any authentication infrastructure.
Given that the solution is "infrastructureless" in this manner, it
isn't very easy to control the solution once it is widely deployed. In
particular, it isn't clear how the solution could be changed to a new
solution, should that ever become necessary. Peers should be able to
agree about the use the new solution in a secure manner, without Man-
in-the-Middle attackers from being able to mount a Bidding Down attack
and downgrade the security back to the original solution. This draft
specifies a simple but secure scheme which allows nodes to choose what
security solution they use. One currently known drawback of this
scheme is that it is based on a technology that has IPR considera¡
tions.
J. Arkko et al [Page 1]
INTERNET-DRAFT Selection using a hash 24 June 2002
3. Introduction
Mobile IPv6 (MIPv6) [1] Route Optimization (RO) functionality needs a
security solution that can be used between previously unknown peers,
without trusted third parties, and on a global scale. MIPv6 is now
being defined with a security solution for this purpose, called Return
Routability (RR) [1]. This solution does not require any trusted third
parties, i.e. it does not require a security infrastructure. There¡
fore, it may be described as being "infrastructureless" (IFL). Alter¡
native solutions, such as Cryptographically Generated Addresses (CGA)
have also been suggested [4, 5] but are not being standardized as the
mandatory solution at the moment.
Given that the solutions, such as RR, are infrastructureless, it isn't
very easy to control the solutions once they have been widely
deployed. In particular, it isn't clear how the solution could be
changed to a new solution, should that ever become necessary. Peers
should be able to agree about the use the new solution in a secure
manner, without Man-in-the-Middle attackers from being able to mount a
Bidding Down attack and downgrade the security back to the original
solution.
This draft specifies a simple scheme which allows nodes to choose what
security solution they use. It is secure only if all nodes that
engage in redirection operations (including but not necessarily lim¡
ited to MIPv6 route optimization) adhere to it. Accordingly,for it to
be secure against "bidding down" attacks, this method needs to be
mandatory for all nodes implementing the base MIPv6 specification.
The scheme does not use any additional infrastructure.
4. Hash Based Addresses Scheme
In the Hash Based Addresses (HBA) scheme, all mobile nodes that wish
to employ MIPv6 Route Optimization MUST derive the interface identi¡
fier part of their addresses in the following way:
1. Select the security parameter Sec = 0, 1 , 2, 3. It can be
used to tune the amount of work needed to create hashed
addresses. The rationale for Sec is discussed more in depth
in [12]
2. Calculate ID'
ID' = HASH("HBA" | Sec | R | D | P1 | P2 | ... | Pn)
Where
- ID' is the base of the 64 bit interface identifier of the home
address of the mobile node. The first 64 bits from the result
of the HASH function are taken to get ID'.
- HASH is the one-way hash algorithm SHA1 [13].
- "HBA" is the three octet long string consisting of the ASCII
J. Arkko et al [Page 2]
INTERNET-DRAFT Selection using a hash 24 June 2002
characters 'H', 'B', and 'A'.
- Sec is the security parameter represented as one octet.
- R is the 64 bit routing prefix part of the home address of
the mobile node. This is necessary in order to prevent
a global table attack described in section 3.2 of reference
[6].
- D is a random 16 byte value.
- P1, P2, ... Pn are parameters selected by the mobile node.
3. Select 64+20 x Sec rightmost bits of the hash output and compare
the 20 x Sec leftmost bits to zero. If not zero, proceed to
generate a new random value of D and go back to Step 2.
4. To get the final interface identifier ID, set the group
and the universal bits [7] to 1 and the two rightmost bits
to Sec.
5. Concatenate the 64-bit Routing Prefix and the 64-bit
ID to obtain a 128-bit IPv6 address.
6. Perform Duplicate Address Detection. If collision is detected,
proceed to generate a new Random value and return to Step 2.
After three collisions, stop and report error.
This specification MUST NOT be used when interface identifiers are
shorter than 64 bits, to avoid attackers from using exhaustive search
to find out suitable addresses and their parameters.
The parameters P1, P2, ... Pn are used to indicate properties that the
mobile node wishes to attach to its address. This specification only
deals with the MIPv6 Route Optimization security method as such a
property, and does not discuss other uses the same scheme might have.
The exact format of parameters is defined in Section 5. The behaviour
rules for mobile nodes are as follows:
- When sending a Binding Update to a correspondent node, the mobile
node MUST send D and P1, P2, ... Pn along in that same message, as
well as to inform the correspondent node of the home address that uses
the prefix R. The exact format used to send D and P1, P2, ... Pn is
described in section 6.
- The mobile node MUST NOT request a security method that has not been
listed in one of the parameters.
The behaviour rules for correspondent nodes are as follows:
- When receiving a Binding Update from a mobile node with home address
A, the correspondent node MUST verify that the interface identifier
part of A equals to ID calculated as described in Steps 1 to 4 above.
The parameters Sec and R can be extracted from the home address of the
J. Arkko et al [Page 3]
INTERNET-DRAFT Selection using a hash 24 June 2002
mobile node. The parameters D and P1, P2, ... Pn MUST be present in
the same Binding Update.
- The correspondent node MUST also verify that the requested security
method has been listed in one of the parameters. If it has not been
listed, the node MUST silently discard the Binding Update.
5. Hash Input Parameter Format
Each parameter is of the following format:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Parameter Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Parameter Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Parameter Type field is an IANA-allocated identifier that
describes what kind of parameter is being given. The currently legal
values are:
1 MIPv6 Route Optimization security method
If the Parameter Type field contains a value that is not recognized by
the receiver, it MUST ignore the parameter. Receivers MUST go through
every parameter to find out the parameters that it recognizes. If
there are no recognized parameters, the receiver MUST behave as if the
address was a regular address formed without hashing.
The interpretation of the Parameter Value field depends on the value
of Parameter Type field. If the value is MIPv6 Route Optimization
security method (1), the value is a bit mask where each bit that is
one denotes a specifically allowed security method. The currently
defined bit values are as follows:
Bit 0 Return Routability [1]
Bit 1 AAA [TBD]
Bit 2 Cryptographically Generated Addresses with public key [TBD]
6. Binding Update Option Format
The MIPv6 specification [1] defines the Mobility Header which can be
used to carry the Binding Update Message. This message may have
optional Options. In order to inform the correspondent node about the
values D and P1, P2, ... Pn used in the creation of the hashed
address, D and P1, P2, ... Pn are put inside a new Option, the Hashed
Address Option, defined below:
Hashed Address Option (alignment requirement: 8n+6)
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
J. Arkko et al [Page 4]
INTERNET-DRAFT Selection using a hash 24 June 2002
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 5 | 16+8n |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| D |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| P1 |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| P2 |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| .... |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Pn |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Prefix Length field contains the number of bits used form the
routing prefix when calculating the hash.
The Reserved fields are reserved for future use. They MUST be set to
zero by the sender and ignored by receivers.
The D field contains the 16 byte random value, D discussed in Section
4.
The P1, P2, ... Pn fields contain the 8 byte parameter value in the
format discussed in Section 5.
7. Operational Considerations
Sites that wish to employ a particular MIPv6 RO security mechanism
should ensure that all nodes within the site generate their addresses
using the scheme described in this specification, and list only the
desired method in the parameters.
Nodes that do not use this specification will automatically be blocked
from the use of RO. All stationary nodes should continue to be
assigned addresses either in automatic, random, or configured manner
[8, 9, 10].
Some sites rely on DHCPv6 [10] to assign addresses to all nodes,
including mobile nodes. With the HBA scheme, address assignment is not
as straightforward since the nodes need the relevant parameters and
random numbers as well in order to be able to use them for Route Opti¡
mization. Some sites may not be operationally prepared to automate and
administer such a transfer of information.
J. Arkko et al [Page 5]
INTERNET-DRAFT Selection using a hash 24 June 2002
8. Security Considerations
This specification is an alternative approach to the so called "bit
method" described in [11]. Most of the security aspects of these two
methods are equivalent and have been already adequately described in
[11]. This method is also largely vulnerable to the same problems as
the bit method is, if there are any.
The main benefits include ability to close some vulnerabilities
related to the malicious use of MIPv6 RO against stationary hosts,
preventing a Man-in-the-Middle from modifying security method requests
and expectations of mobile nodes therefore givinge mobile nodes an
ability to securely control what level of security is used when creat¡
ing bindings for them at correspondent nodes. The attackers can still
invent new addresses and redirect them, but this does not seem to be
relevant for the mobile node.
The main differences between this and the bit method are:
- Given that no special bit is allocated, this method does not open
allow attackers to know whether nodes are mobile or not; the parame¡
ters become known only if disclosed by the mobile node itself. This
reduces some of the privacy and DoS concerns related to disclosing
this information directly from the bit.
- Verifying the hash costs one hash operation, which is more expensive
that checking an individual bit.
- More information than a single bit can be protected. In particular,
this method is not vulnerable to the so called "bidding aside" problem
that the bit method is. That is, this method can choose between an
unlimited number of security methods, whereas the bit method is lim¡
ited to choosing only between a "weak" and "strong" levels.
- Operational considerations may limit the use of this method in some
cases.
The hashing scheme described here is vulnerable to exhaustive search
of the set of possible random numbers and parameters. Reference [5]
discusses the feasibility of mounting such an attack.
9. Acknowledgements
CGA methods have been described earlier in various sources [2,3,4,5],
and HBA is simple variant of CGA. The difficulty of selecting between
two different levels of security has been discussed by the MIPv6
Design Team (Erik Nordmark and the authors of this draft) in several
context, as well as in [6]. Mike Roe and Tuomas Aura came up with the
idea of using a hash without a public key as a solution to this prob¡
lem i.e. the basic idea described in this draft. The authors of this
draft have merely acted as editors. The idea of using the Sec parame¡
ter is due to Tuomas Aura and has also been documented in [12].
J. Arkko et al [Page 6]
INTERNET-DRAFT Selection using a hash 24 June 2002
10. Intellectual Property Rights Notices
IPR claims have been made over CGA methods in general, and the claims
may apply also to kind of CGAs described in this draft. Ericsson's IPR
may apply here, and the Ericsson policy on IPR issues can be checked
from the Ericsson General IPR statement for IETF,
http://www.ietf.org/ietf/IPR/ERICSSON-General.
11. References
[1] D. Johnson, C. Perkins, "Mobility Support in IPv6", draft-ietf-
mobileip-ipv6-16.txt. Work In Progress, IETF, March 2002.
[2] P. Nikander. A Scaleable Architecture for IPv6 Address Ownership.
Internet draft, March 2001.
[3] Greg O'Shea and Michael Roe. Child-proof authentication for MIPv6
(CAM). Computer Communications Review, April 2001.
[4] Michael Roe, Tuomas Aura, Greg O'Shea, and Jari Arkko. Authenti¡
cation of Mobile IPv6 binding updates and acknowledgments. Internet
Draft draft-roe-mobileip-updateauth-02.txt, IETF Mobile IP Working
Group, February 2002. Work in progress.
[5] G. Montenegro and C. Castelluccia. Statistically Unique and Cryp¡
tographically Verifiable (SUCV) Identifiers and Addresses. NDSS 2002,
February 2002.
[6] Tuomas Aura and Jari Arkko. MIPv6 BU Attacks and Defenses.
Internet Draft draft-aura-mipv6-bu-attacks-01.txt (Work In Progress),
IETF, February 2002.
[7] Hinden, R. and S. Deering, "IP Version 6 Addressing Architecture",
RFC 2373, July 1998.
[8] Thomson, S. and T. Narten, "IPv6 Address Autoconfiguration", RFC
2462, December 1998.
[9] T. Narten, R. Draves. Privacy Extensions for Stateless Address
Autoconfiguration in IPv6. RFC 3041, January 2001.
[10] J. Bound, M. Carney, C. Perkins, Ted Lemon, Bernie Volz, R.
Droms(ed.). Dynamic Host Configuration Protocol for IPv6 (DHCPv6).
Internet Draft draft-ietf-dhc-dhcpv6-23.txt (Work In Progress), Febru¡
ary 2002.
[11] G. Montenegro, P. Nikander. "Protecting Against Bidding Down
Attacks". Internet Draft draft-montenegro-mipv6sec-bit-method-00.txt
(Work In Progress), April 2002.
[12] J. Arkko, T. Aura, J. Kempf, V.-M. Mantyla, P. Nikander, M. Roe
"Securing IPv6 Neighbor Discovery". Submitted for publication, 2002.
J. Arkko et al [Page 7]
INTERNET-DRAFT Selection using a hash 24 June 2002
[13] D. Eastlake, P. Jones "US Secure Hash Algorithm 1 (SHA1)", RFC
3174, September 2001.
12. Author's Address
Jari Arkko
Oy LM Ericsson Ab
02420 Jorvas
Finland
EMail: Jari.Arkko@nomadiclab.com
Pekka Nikander
Oy LM Ericsson Ab
02420 Jorvas
Finland
EMail: Pekka.Nikander@nomadiclab.com
Gabriel Montenegro
Sun Labs, Europe
29, chemin du Vieux Chene
38240 Meylan
France
EMail: gab@sun.com
J. Arkko et al [Page 8]
| PAFTECH AB 2003-2026 | 2026-04-23 03:54:08 |