Internet DRAFT - draft-chunduri-karp-kmp-router-fingerprints
draft-chunduri-karp-kmp-router-fingerprints
Working Group U. Chunduri
Internet-Draft A. Tian
Intended status: Informational A. Keranen
Expires: November 28, 2014 Ericsson
T. Kivinen
INSIDE Secure
May 27, 2014
KARP KMP: Simplified Peer Authentication
draft-chunduri-karp-kmp-router-fingerprints-05
Abstract
This document describes the usage of Router Fingerprint
Authentication (RFA) with public keys as a potential peer
authentication method with KARP pair wise and group Key Management
Protocols (KMPs). The advantage of RFA is, it neither requires out-
of-band, mutually agreeable symmetric keys nor a full PKI based
system (trust anchor or CA certificates) for mutual authentication of
peers with KARP KMP deployments. Usage of Router Fingerprints give a
significant operational improvement from symmetric key based systems
and yet provide a secure authentication technique.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted 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."
This Internet-Draft will expire on November 28, 2014.
Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
Chunduri, et al. Expires November 28, 2014 [Page 1]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3
1.2. Acronyms . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Router Fingerprint . . . . . . . . . . . . . . . . . . . . . 4
3. Usage of Router Fingerprints with KARP KMP . . . . . . . . . 5
4. Publishing Router Fingerprints . . . . . . . . . . . . . . . 5
5. Scope of Fingerprints usage with RPs . . . . . . . . . . . . 6
6. Fingerprint Revocation . . . . . . . . . . . . . . . . . . . 6
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
8. Security Considerations . . . . . . . . . . . . . . . . . . . 6
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7
10. Appendix A . . . . . . . . . . . . . . . . . . . . . . . . . 7
10.1. Applicable Authentications methods . . . . . . . . . . . 7
10.1.1. Symmetric key based authentication . . . . . . . . . 7
10.1.2. Asymmetric key based authentication . . . . . . . . 8
10.1.3. EAP based authentication . . . . . . . . . . . . . . 8
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 9
11.1. Normative References . . . . . . . . . . . . . . . . . . 9
11.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11
1. Introduction
Usage of IKEv2[RFC5996] as the KMP for with specific extensions for
pair wise routing protocols (RPs) is described in [mahesh-karp-rkmp].
Also IKEv2 based KMP for group keying RPs is described in [hartman-
karp-mrkmp]. With proliferation of authentication methods supported
by IKEv2, this draft explores a simple and secure peer authentication
method, which can be potentially used for all KARP KMP deployments.
Currently operators don't often change the manual keys deployed for
protecting RP messages because of various reasons as noted in
Section 2.3 of KARP threat document [RFC6862]. One of the KARP WG
goals is to define methods to support key changes for all RPs which
use either Manual Key Management (MKM) or KMP without much
operational overhead.
Chunduri, et al. Expires November 28, 2014 [Page 2]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
Apart from Peer's identity verification, authentication and parameter
negotiation, deployment of KMP can be more useful, when it comes to
rekey the keys used by RPs. Rekeying can be achieved without the
operator's intervention and as per the provisioned rekey policy. But
for operators, usage of IKEv2 KMP opens up numerous possibilities for
peer authentication and manual symmetric keys are not only used for
bootstrapping KMP, but used for peer authentication. Various other
peer authentication mechanisms with advantages/drawbacks of each
mechanism are described in the Section 10.1 of this document.
If symmetric pre-shared keys are used by IKEv2 KMP to authenticate
the peer before generating the shared key(s); apart from other issues
with symmetric keys, the problem still remain the same when it comes
to changing these keys.
To reduce operational costs for changing keys at peering points with
relatively large number of RP peers, this document describes the use
of one of the available IKEv2 KMP peer authentication methods with
raw public keys. The hash of these encoded public keys is called as
Router Fingerprints and the authentication method is called Router
Fingerprint Authentication (RFA) in rest of the document. The RFA
method in conjunction with KARP KMPs require, neither out-of-band
symmetric keys nor a fully functional PKI based system with trust
anchor certificates as explained further in Section 2.
Section 2 describes the Router Fingerprints in the context of various
KMPs and specifically for IKEv2 KMP. Generation and usage of the
Router Fingerprints is described in Section 3 and Section 4 describes
a reliable method for publishing the Router Fingerprints.
1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
1.2. Acronyms
CRL - Certificate Revocation List.
EBGP - External BGP (BGP connection between external peers).
EE - End Entity.
IBGP - Internal BGP (BGP connection between internal peers).
KMP - Key Management Protocol (auto key management).
Chunduri, et al. Expires November 28, 2014 [Page 3]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
MKM - Manual Key management Protocols.
PAD - Peer Authorization Database.
RFA - Router Fingerprint Authentication.
RP - Routing Protocol.
2. Router Fingerprint
Router Fingerprint is a sequence of bytes used to authenticate the
public key before using the same public key to authenticate the peer
in the context of KARP KMP.
Various forms of fingerprint mechanisms based on the public keys are
already in use as defined in [RFC4252] and [RFC4253]. Fingerprints
are also used primarily for root key authentication in X.509 based
PKI [RFC5280]. This documents only highlights the usage of raw
public key based authentication mechanism already defined in
[RFC5996] for KARP deployments.
To generate a fingerprint:
1. A router needs to generate an asymmetric Private/Public key pair.
Asymmetric crypto algorithms based on RSA [RFC3447] or for
shorter and still secure keys Elliptic Curve Cryptography (ECC)
[RFC4492] can be used for generating the Private/Public key pair.
2. Once the Asymmetric key pair is generated, the public key can be
encoded with any additional data (specific to the router or
routing instance) and can be in the form of more easily
administrable X.509 PKI Certificate profile and to be specific as
specified in the SubjectPublicKeyInfo structure in Section 4.1 of
[RFC5280]. This does not force use of X.509 or full compliance
with [RFC5280] since formatting any public key as a
SubjectPublicKeyInfo is relatively straightforward and well
supported by libraries.
3. The result should be hashed with a cryptographic hash function,
preferably SHA-256 or hash functions with similar strength (see
more discussion on choosing preferred hash function in
Section 8).
The fingerprint generated is not a secret and can be distributed
publicly. This is further discussed in Section 4.
Chunduri, et al. Expires November 28, 2014 [Page 4]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
3. Usage of Router Fingerprints with KARP KMP
To use Router Fingerprints authentication with KARP KMP, a Private/
Public key-pair MUST be generated by the router as specified in
Section 2. To deploy RFA method more widely -
1. type of public keys supported should be generic; for e.g.,
support for raw Elliptic Curve public keys and
2. more generic encoding formats should be supported for carrying
the raw public keys other than currently defined PKCS #1.
[I-D.kivinen-ipsecme-oob-pubkey] enhances support for other types of
public keys and also defines new encoding format to carry the public
key fingerprint in the CERT payload. For RPs to use Router
Fingerprint Authentication in the context of IKEv2 MUST follow the
encoding format as specified in [I-D.kivinen-ipsecme-oob-pubkey].
For RFA, the public key received is in the form of
SubjectPublicKeyInfo structure of X.509 PKI profile and the Peer
Authorization Database (PAD) entry [RFC4301] MUST contain the
published fingerprint of the peer.
4. Publishing Router Fingerprints
The router fingerprint generated is not a secret and can be exchanged
out-of-band or can be distributed publicly. Please refer to
Section 5 for the generic usage and scope of the RFA in routing
environments. In the case of inter-domain routing using EBGP
[RFC4271], if the routers are outside of the SIDR [I-D.ietf-sidr-
bgpsec-overview] environment, fingerprint can also be exchanged out-
of-band through Service Level Agreements (SLAs) at the RP peering
points.
[RFC6920] defines a "Named Information" identifier, which provides a
set of standard ways to use hash function outputs in names. As there
are many ways to publish fingerprints in an unambiguous manner (e.g.,
as defined in Section 5 of [RFC4572]); on the WG consensus, KARP
deployments MUST use the method described in [RFC6920] for
interoperability. A KARP KMP deployment using router fingerprints
need to resort to out-of-band public key validation procedure to
verify authenticity of the keys being used. The router fingerprints
MUST be part of the KMP PAD to validate the public key received in
the KMP messages.
Chunduri, et al. Expires November 28, 2014 [Page 5]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
5. Scope of Fingerprints usage with RPs
The fingerprint method described in this document in general is more
suitable for intra domain deployments. This includes KMP usage for
e.g., for IBGP [RFC4271] and LDP [RFC5036] peers, where KARP KMP can
be deployed without having to configure either manual pre-shared keys
to bootstrap KMP or full PKI with trust anchor certificates. Also
KMPs for group keying RPs can use this method for authenticating the
peers in the group. This method also can be potentially used between
EBGP [RFC4271] speakers outside of the SIDR ([I-D.ietf-sidr-bgpsec-
overview]) deployment scope, where full PKI infrastructure is not
available to deploy with KARP KMP and at the same time, still
operators want to avoid provisioning manual keys.
6. Fingerprint Revocation
The idea of RFA in the context of KARP KMP is to deploy a better
authentication method than the mutually shared symmetric keys between
two routers. This SHOULD be used especially where number of peers
using this method is relatively smaller and operationally manageable.
Any changes in the router fingerprints SHOULD be administered
manually by the operator. For e.g., to revoke the compromised key
operator simply need to remove the fingerprint from the PAD, which do
require and update to the PAD of all possible nodes in the network
where this node was talking to. Quite often those configurations are
already pushed to routers by some kind of management tool, so it is
completely possible to do this quite easily.
When there are a large number of peers, the need for router
fingerprint changes may increase. This may be for reasons of key
compromises or other potential changes to the routers. In such
environments, operators SHOULD look to full PKI with trust anchor
certificates and CRL profiles as specified in the [RFC5280]. In this
context, RFA mechanism should be only seen as substantial improvement
from mutually shared manual keying authentication methods.
7. IANA Considerations
This document defines no new namespaces.
8. Security Considerations
If collision attacks are perceived as a threat, the hash function to
generate the fingerprints MUST also possess the property of
collision-resistance. To mitigate preimage attacks, the
cryptographic hash function used for a fingerprint MUST possess the
property of second preimage resistance.
Chunduri, et al. Expires November 28, 2014 [Page 6]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
For deploying RFA authentication method, generated fingerprints MUST
not be truncated to make those short as to preserve the relevant
properties of the hash function against brute-force search attacks.
Considering the above facts, it's recommended to use SHA-256 or
similar hash functions with good security properties to generate the
fingerprints.
9. Acknowledgements
The authors would like to thank Jari Arkko for initial and valuable
discussions on operationally simplified authentication methods in
general and RFA mechanism as described in this document in
particular. Authors would like to acknowledge Joel Halpern for
supporting this work and providing continuous feedback on the draft,
including the usefulness of this approach in routing environments.
10. Appendix A
10.1. Applicable Authentications methods
One advantage that IKEv2 provides is the largest selection of key
management and parameter coordination authentication methods suitable
for various environments. The goal of this section is to look at
various KMP authentication options available and recommend suitable
options for use in negotiating keys and other parameters for routing
protocol protection.
As some of the authentication mechanisms are optional in IKEv2, one
mandatory authentication mechanism from the list below needs to be
selected for routing environments to ensure inter-operability and
quicker adoption. This section attempts to summarize the available
options and constraints surrounding the options.
10.1.1. Symmetric key based authentication
IKEv2 [RFC5996] allows for authentication of the IKEv2 peers using a
symmetric pre-shared key. For symmetric pre-shared key peer
authentication, deployments need to consider the following as per
[RFC5996]:
1. Deriving a shared secret from a password, name, or other low-
entropy source is not secure. These sources are subject to
dictionary and social-engineering attacks, among others.
2. The pre-shared key should not be derived solely from a user-
chosen password without incorporating another source of
randomness.
Chunduri, et al. Expires November 28, 2014 [Page 7]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
3. If password-based authentication is used for bootstrapping the
IKE_SA, then one of the EAP methods as described in
Section 10.1.3 needs to be used.
One of the IPsecME WG charter goals is to provide IKEv2 [RFC5996] a
secure password authentication mechanism which is protected against
off-line dictionary attacks, without requiring the use of
certificates or Extensible Authentication Protocol (EAP), even when
using the low-entropy shared secrets. There are couple of documents
which try to address this issue and the work is still in progress.
10.1.2. Asymmetric key based authentication
Another peer authentication mechanism IKEv2 uses is asymmetric key
certificates or public key signatures. This approach relies on a
Public Key Infrastructure using X.509 (PKIX) Certificates. If this
can be deployed for IKEv2 peer authentication, it will be one of the
most secure authentication mechanisms. With this authentication
option, there is no need for out-of-band shared keys between peers
for mutual authentication.
Apart from RSA and DSS digital signatures for public key
authentication provided by IKEv2, [RFC4754] introduces Elliptic Curve
Digital Signature Algorithm (ECDSA) signatures. ECDSA provides
additional benefits including computational efficiency, small
signature sizes, and minimal bandwidth compared to other available
digital signature methods.
10.1.3. EAP based authentication
In addition to supporting authentication using shared secrets and
public key signatures, IKEv2 also supports authentication based on
the Extensible Authentication Protocol (EAP), defined in [RFC3748].
EAP is an authentication framework that supports multiple
authentication mechanisms. IKEv2 provides EAP authentication because
public key signatures and shared secrets are not flexible enough to
meet the requirements of many deployment scenarios. For KARP KMP,
EAP-Only Authentication in IKEv2 as specified in [RFC5998] can be
explored.
By using EAP, IKEv2 KMP can leverage existing authentication
infrastructure and credential databases, because EAP allows users to
choose a method suitable for existing credentials. Routing protocols
today use password-based pre-shared keys to integrity protect the
routing protocol messages. The same pre-shared key can be used to
bootstrap the KMP and as a potential authentication key in KMP. With
appropriate password based EAP methods, stronger keys can be
generated without using certificates.
Chunduri, et al. Expires November 28, 2014 [Page 8]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
For authenticating the nodes running routing protocols, EAP and the
IKEv2 endpoints are co-located (so no separate EAP server required).
When EAP is deployed, authenticating the IKEv2 responder using both
EAP and public key signatures could be redundant. EAP methods that
offer mutual authentication and key agreement can be used to provide
responder authentication in IKEv2 completely based on EAP.
Section 4 of [RFC5998] lists safe EAP methods to support
EAP_ONLY_AUTHENTICATION. For routing protocols deployment, because
an EAP server is co-located with IKEv2 responder, channel binding
capability of the selected EAP method is irrelevant. Various
qualified mutual authentication methods are listed in [RFC5998]; of
these, a password based methods [RFC4746], [RFC5931], [RFC6124] can
offer potential EAP alternative for pre-shared key only
authentication.
11. References
11.1. Normative References
[I-D.chunduri-karp-using-ikev2-with-tcp-ao]
Chunduri, U., Tian, A., and J. Touch, "A framework for RPs
to use IKEv2 KMP", draft-chunduri-karp-using-ikev2-with-
tcp-ao-06 (work in progress), February 2014.
[I-D.kivinen-ipsecme-oob-pubkey]
Kivinen, T., Wouters, P., and H. Tschofenig, "More Raw
Public Keys for IKEv2", draft-kivinen-ipsecme-oob-
pubkey-07 (work in progress), May 2014.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5996] Kaufman, C., Hoffman, P., Nir, Y., and P. Eronen,
"Internet Key Exchange Protocol Version 2 (IKEv2)", RFC
5996, September 2010.
11.2. Informative References
[I-D.hartman-karp-mrkmp]
Hartman, S., Zhang, D., and G. Lebovitz, "Multicast Router
Key Management Protocol (MaRK)", draft-hartman-karp-
mrkmp-05 (work in progress), September 2012.
[I-D.ietf-karp-ops-model]
Hartman, S. and D. Zhang, "Operations Model for Router
Keying", draft-ietf-karp-ops-model-10 (work in progress),
January 2014.
Chunduri, et al. Expires November 28, 2014 [Page 9]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
[I-D.ietf-sidr-bgpsec-overview]
Lepinski, M. and S. Turner, "An Overview of BGPSEC",
draft-ietf-sidr-bgpsec-overview-04 (work in progress),
December 2013.
[I-D.mahesh-karp-rkmp]
Jethanandani, M., Weis, B., Patel, K., Zhang, D., Hartman,
S., Chunduri, U., Tian, A., and J. Touch, "Negotiation for
Keying Pairwise Routing Protocols in IKEv2", draft-mahesh-
karp-rkmp-05 (work in progress), November 2013.
[RFC3447] Jonsson, J. and B. Kaliski, "Public-Key Cryptography
Standards (PKCS) #1: RSA Cryptography Specifications
Version 2.1", RFC 3447, February 2003.
[RFC3618] Fenner, B. and D. Meyer, "Multicast Source Discovery
Protocol (MSDP)", RFC 3618, October 2003.
[RFC3748] Aboba, B., Blunk, L., Vollbrecht, J., Carlson, J., and H.
Levkowetz, "Extensible Authentication Protocol (EAP)", RFC
3748, June 2004.
[RFC4107] Bellovin, S. and R. Housley, "Guidelines for Cryptographic
Key Management", BCP 107, RFC 4107, June 2005.
[RFC4252] Ylonen, T. and C. Lonvick, "The Secure Shell (SSH)
Authentication Protocol", RFC 4252, January 2006.
[RFC4253] Ylonen, T. and C. Lonvick, "The Secure Shell (SSH)
Transport Layer Protocol", RFC 4253, January 2006.
[RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway
Protocol 4 (BGP-4)", RFC 4271, January 2006.
[RFC4301] Kent, S. and K. Seo, "Security Architecture for the
Internet Protocol", RFC 4301, December 2005.
[RFC4492] Blake-Wilson, S., Bolyard, N., Gupta, V., Hawk, C., and B.
Moeller, "Elliptic Curve Cryptography (ECC) Cipher Suites
for Transport Layer Security (TLS)", RFC 4492, May 2006.
[RFC4572] Lennox, J., "Connection-Oriented Media Transport over the
Transport Layer Security (TLS) Protocol in the Session
Description Protocol (SDP)", RFC 4572, July 2006.
[RFC4746] Clancy, T. and W. Arbaugh, "Extensible Authentication
Protocol (EAP) Password Authenticated Exchange", RFC 4746,
November 2006.
Chunduri, et al. Expires November 28, 2014 [Page 10]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
[RFC4754] Fu, D. and J. Solinas, "IKE and IKEv2 Authentication Using
the Elliptic Curve Digital Signature Algorithm (ECDSA)",
RFC 4754, January 2007.
[RFC5036] Andersson, L., Minei, I., and B. Thomas, "LDP
Specification", RFC 5036, October 2007.
[RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S.,
Housley, R., and W. Polk, "Internet X.509 Public Key
Infrastructure Certificate and Certificate Revocation List
(CRL) Profile", RFC 5280, May 2008.
[RFC5440] Vasseur, JP. and JL. Le Roux, "Path Computation Element
(PCE) Communication Protocol (PCEP)", RFC 5440, March
2009.
[RFC5931] Harkins, D. and G. Zorn, "Extensible Authentication
Protocol (EAP) Authentication Using Only a Password", RFC
5931, August 2010.
[RFC5998] Eronen, P., Tschofenig, H., and Y. Sheffer, "An Extension
for EAP-Only Authentication in IKEv2", RFC 5998, September
2010.
[RFC6124] Sheffer, Y., Zorn, G., Tschofenig, H., and S. Fluhrer, "An
EAP Authentication Method Based on the Encrypted Key
Exchange (EKE) Protocol", RFC 6124, February 2011.
[RFC6518] Lebovitz, G. and M. Bhatia, "Keying and Authentication for
Routing Protocols (KARP) Design Guidelines", RFC 6518,
February 2012.
[RFC6862] Lebovitz, G., Bhatia, M., and B. Weis, "Keying and
Authentication for Routing Protocols (KARP) Overview,
Threats, and Requirements", RFC 6862, March 2013.
[RFC6920] Farrell, S., Kutscher, D., Dannewitz, C., Ohlman, B.,
Keranen, A., and P. Hallam-Baker, "Naming Things with
Hashes", RFC 6920, April 2013.
Authors' Addresses
Chunduri, et al. Expires November 28, 2014 [Page 11]
Internet-Draft KARP KMP: Simplified Peer Authentication May 2014
Uma Chunduri
Ericsson
300 Holger Way
San Jose, California 95134
USA
Phone: +1 (408) 750-5678
Email: uma.chunduri@ericsson.com
Albert Tian
Ericsson
300 Holger Way
San Jose, California 95134
USA
Phone: +1 (408) 750-5210
Email: albert.tian@ericsson.com
Ari Keranen
Ericsson
Hirsalantie 11
Jorvas 02420
Finland
Email: ari.keranen@ericsson.com
Tero Kivinen
INSIDE Secure
Eerikinkatu 28
Helsinki 00180
Finland
Email: kivinen@iki.fi
Chunduri, et al. Expires November 28, 2014 [Page 12]