Network Working Group C. Lonvick
Internet-Draft Cisco Systems
Expires: June 9, 2003 December 9, 2002
RADIUS Attributes for soBGP Support
draft-lonvick-sobgp-radius-01.txt
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 documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
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."
The list of current Internet-Drafts can be accessed at http://
www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on June 9, 2003.
Copyright Notice
Copyright (C) The Internet Society (2002). All Rights Reserved.
Abstract
This document defines a set of RADIUS attributes designed to support
the provisioning of the soBGP protocol. A router will encapsulate
the components of an AuthCert or PolicyCert into TLVs and transport
them to a centralized server capable of verifying the associated
signature.
This draft goes along with other IDs submitted for Secure Origin BGP
(soBGP) both of which are edited by James Ng and Russ White. draft-
white-sobgp-bgp-deployment-00.txt [1], draft-ng-sobgp-bgp-extensions-
00.txt [2] Mostly this work relates to "Extensions to BGP to Support
Secure Origin BGP (soBGP)" and is explained in additional detail in
"Deployment Considerations for Secure Origin BGP (soBGP)". The
Lonvick Expires June 9, 2003 [Page 1]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
purpose of this draft is to explain the concept of offloading the
Authcert validation steps, and the Entitycert storage, from the
router. RADIUS may not be the best way to do this but it's the best
that I know of at this moment. Once the concepts of soBGP are
discussed, the transport to support offload should be reviewed and a
proper mechanism should be chosen.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1 Stored-Policy . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.1 Stored-Policy-Request . . . . . . . . . . . . . . . . . . . 4
2.1.2 Stored-Policy-End . . . . . . . . . . . . . . . . . . . . . 5
2.2 Prefixes . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.1 IPv4-Prefix . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.2 IPv6-Prefix . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 Authcert Validation Request . . . . . . . . . . . . . . . . 6
2.3.1 Authcert-Header . . . . . . . . . . . . . . . . . . . . . . 6
2.3.2 Authcert-URL . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3.3 Authcert-Signature . . . . . . . . . . . . . . . . . . . . . 8
2.4 Authcert Validation Responses . . . . . . . . . . . . . . . 8
2.4.1 Authcert-Accept . . . . . . . . . . . . . . . . . . . . . . 8
2.4.2 Authcert-Reject . . . . . . . . . . . . . . . . . . . . . . 9
3. Table of Attributes . . . . . . . . . . . . . . . . . . . . 11
4. Useage Notes and Examples . . . . . . . . . . . . . . . . . 12
4.1 Usernames and Passwords . . . . . . . . . . . . . . . . . . 12
4.2 Stored Policy . . . . . . . . . . . . . . . . . . . . . . . 12
4.3 Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.4 Authcert Verification . . . . . . . . . . . . . . . . . . . 12
4.5 Redundancy . . . . . . . . . . . . . . . . . . . . . . . . . 12
5. Security Considerations . . . . . . . . . . . . . . . . . . 13
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . 14
References . . . . . . . . . . . . . . . . . . . . . . . . . 15
Author's Address . . . . . . . . . . . . . . . . . . . . . . 15
Full Copyright Statement . . . . . . . . . . . . . . . . . . 16
Lonvick Expires June 9, 2003 [Page 2]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
1. Introduction
A router participating in soBGP will need to validate received
Authcerts. The best way to do this is by having their associated
Entitycerts contained on the router and using the information stored
in them to perform the necessary validation steps. Unfortunately,
this would entail the storage and consistent maintenence of
Entitycerts on all participating routers in the AS. One way to
centralize this would be for a device to store all of the Entitycerts
and then have each of the participating routers submit the pertinent
information from each received Authcert to it for the computationally
intensive validation steps. This centralized device, henceforth to
be known as the sob-server in this document, could then transmit a
pass/fail message back to the router. This would reduce the amount
of administration of the Entitycert database to one device - with
appropriate backup. This document defines a set of RADIUS attributes
designed to support the provision of the soBGP protocol. The
participating routers are expected to form and transmit a RADIUS RFC
2865 [3] Access-Request message with the appropriate pieces of
information from a received Authcert. This Access-Request will go to
the sob-server which will perform the steps necessary to validate the
Authcert information. It will then form and transmit an Access-
Accept or Access-Reject response to the router.
This draft is still rather drafty. It does not discuss validation of
Policycerts yet, but that's still a subject of discussion anyway.
Discussion of this draft may be directed to the author, or to the
mailing list discussing soBGP. sobgp@external.cisco.com
More information about soBGP may be found on the web page. ftp://
ftp-eng.cisco.com/sobgp/index.html
Lonvick Expires June 9, 2003 [Page 3]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
2. Attributes
The Attributes are listed in this section. In all cases, each RADIUS
message may only include Attributes pertaining to a single AS. There
are useage notes later in this document which should answer any
questions outstanding from the Attribute section.
2.1 Stored-Policy
This set of Attributes request any policy information stored on the
sob-server in an Access-Request message, and delivers the policies
through Access-Accept messages using the Prefix set of of Attributes
decribed below. Each Access-Accept message will describe a policy
associated with a single AS. The router will continue requesting
more policies through additional Access- Requests. When there are no
additional policies stored on the sob-server, or if there were no
policies stored there to begin with, then an Access-Reject message
with an appropriate attribute will be sent to the router.
2.1.1 Stored-Policy-Request
A summary of the Stored-Policy-Request Attribute format is shown
below. This format will only be used in the Access-Request message
The fields are transmitted from left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Value Continued |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type - [SPR] for Stored-Policy-Request
Length - The length of the Attribute; 6 octects.
Value - The Value field is four octets. In an Access-Request
message, it contains the request number for the available policies
stored on the sob-server. The first value will be 0x00000001. If
the sob-server responds with a policy (described next), then the
router will send a request with a value of 0x00000002. This will
continue until the sob-server has no more policies to send. At that
point, the sob-server will respond with an Access-Reject message
described below.
This Attribute is also used in Access-Reponse messages. In that
case, the Value is the AS number of the Authorized Originator. This
Lonvick Expires June 9, 2003 [Page 4]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
is the autonomous system number of an entity authorized to advertise
the associated IPv4 and IPv6 prefixes.
2.1.2 Stored-Policy-End
A summary of the Stored-Policy-End Attribute format is shown below.
This format will only be used in the Access-Reject message. The
fields are transmitted from left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type - [SPE] for Stored-Policy-End
Length - The length of the Attribute; 8 octets.
Count - The Count field is two octets and contains the number of
policies that have been transmitted to the router. The router should
verify that the value returned in this message is the same value that
was most recently transmitted in the associated request message.
Time - The Time field is the number of seconds for which the
downloaded policies should be considered valid. The receiver is not
obligated to honor this timer. A value of 0 is not valid and MUST
NOT be used.
2.2 Prefixes
Multiple instances of each of the attributes defined in this section
may be included in a single RADIUS packet. In all cases, each RADIUS
message may only include these Attributes pertaining to a single AS.
2.2.1 IPv4-Prefix
A summary of the IPv4-Prefix Attribute format is shown below. The
fields are transmitted from left to right.
0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | IPv4 Prefix ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Lonvick Expires June 9, 2003 [Page 5]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
Type - [IP4] for IPv4-Prefix
Length - The entire length of this message in octets; >=3 octets.
IPv4 Prefix - The non-zero octets of the IPv4 Prefix. A special
value of 0x00 is reserved when the Length is 0x03. When that value
is used in an Access-Accept message in response to a Stored-Policy-
Request message, this will denote that no IPv4 address bock
announcements should be received from that originating AS.
2.2.2 IPv6-Prefix
A summary of the IPv6-Prefix Attribute is shown below. The fields
are transmitted from left to right.
0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | IPv6 Prefix..
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type - [IP6] for IPv6-Prefix
Length - The entire length of this message in octets; >=3
IPv6 Prefix - The IPv6 Address Block represented as a prefix. A
special value of 0x00 is reserved when the Prefix Length is 0x01.
This will denote that no IPv6 address bock announcements should be
received from that originating AS.
2.3 Authcert Validation Request
This Attribute validates an Authcert received by a router through
soBGP. This will first be requested in an Access-Request message
with the pertinent information. The central server will respond with
either an Access-Accept or an Access-Reject message with specific
information as described below.
2.3.1 Authcert-Header
A summary of the Authcert-Header Attribute format is given below.
The fields are transmitted left to right.
Lonvick Expires June 9, 2003 [Page 6]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Authorizing Autonomous System
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
..Continued | Options |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Authorized Originator |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Serial Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type - [HDR] for Authcert-Header
Length - The entire length of this message in octets; 14.
Authorizing Autonomous System - The autonomous system authorizing
other entities to advertise prefixes within this block.
Options - The Options associated with this Authcert.
Authorized Originator - The autonomous system number of an entity
authorized to advertise the associated IPv4 and IPv6 prefixes.
Serial Number - A two octet unsigned integer indicating the serial
number of this Authorization certificate.
2.3.2 Authcert-URL
A summary of the Authcert-URL Attribute format is given below. The
fields are transmitted left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | URL ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type - [URL] for Authcert-URL
Length - The entire length of this message in octets.
URL - A uniform resource locator indicating a location where the
public key of the entity which signed this certificate can be found
along with any certificate revocation information.
Lonvick Expires June 9, 2003 [Page 7]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
2.3.3 Authcert-Signature
A summary of the Authcert-Signature Attribute format is given below.
The fields are transmitted left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Signature Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Signature ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type - [Sig] for Authcert-Signature
Length - The entire length of this message in octets.
Signature Type - A two byte unsigned integer denoting the type of
signature (the algorithm used to build this signature). Each
possible signing algorithm is assigned an integer from this field.
Signature - The signature will be as taken from draft-ng-sobgp-
extensions-00.txt [2]
2.4 Authcert Validation Responses
The following Attributes will be sent in response to a group of
Authcert Validation Request Attributes. The Authcert-Accept
Attribute will be sent in an Access-Accept message while the
Authcert-Reject Attribute will be sent in an Access-Reject message.
2.4.1 Authcert-Accept
A summary of the Authcert-Accept Attribute format is shown below.
This format will only be used in the Access-Accept message. The
fields are transmitted from left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Authorized Originator
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Continued.. | Time
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Continued.. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type - [ACA] for Authcert-Accept
Lonvick Expires June 9, 2003 [Page 8]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
Length - The length of the attribute; 10 octets.
Authorized Originator - The autonomous system number of an entity
authorized to advertise the associated IPv4 and IPv6 prefixes.
Time - The Time field is the number of seconds for which the
downloaded policies should be considered valid. The receiver is not
obligated to honor this timer. A value of 0 is not valid and MUST
NOT be used.
2.4.2 Authcert-Reject
A summary of the Authcert-Reject Attribute format is shown below.
This format will only be used in the Access-Reject message. The
fields are transmitted from left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Authorized Originator |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Continued.. | Reason Code
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type - [ACR] for Authcert-Reject
Length - The length of the attribute; >=7 octets.
Authorized Originator - The autonomous system number of an entity
authorized to advertise the associated IPv4 and IPv6 prefixes.
Reason Code - The reason for the rejection. It may be a local policy
decision on the router to accept the information contained in the
received Authcert even if it is rejected by the central server. As
an example of that, if the URL is not found but the Authcert is
validated otherwise, the router may choose to accept the information
in the Authcert but at a lower trust level than if the signature is
valid and the URL is found and properly processed. The table below
gives the Reason Codes and their explanations.
Lonvick Expires June 9, 2003 [Page 9]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
Reason Code Explanation
0-filled Invalid Code - This value MUST NOT be used.
0b10000000 No Entitycert found matching this Authorized Originator.
0b01000000 Entitycert found for this Authorized Originator but the
Serial Number in the Authcert is out of range.
0b00100000 The Signature in the Authcert doesn't match the
calculated signature.
0b000100000 The Entitycert found on the central server has expired.
0b000010000 The URL could not be found.
0b00000nnnn Reserved for future use.
0x00nn and beyond are also reserved for future use.
Lonvick Expires June 9, 2003 [Page 10]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
3. Table of Attributes
The following table provides a guide to which of the above
attributes may be found in which kinds of packets, and in what
quantity.
Request Accept Reject Challenge Acct-Request # Attribute
0-1 0 0 0 0 SPR Stored-Policy-Request
0 0 0-1 0 0 SPE Stored-Policy-End
0+ 0+ 0 0 0 IP4 IPv4-Prefix
0+ 0+ 0 0 0 IP6 IPv6-Prefix
0-1 0 0 0 0 HDR AC-Header
0-1 0 0 0 0 URL
0-1 0 0 0 0 SIG AC-Signature
0-1 0 0 0 0 ACA AC-Accept
0 0 0-1 0 0 ACR AC-REject
The following table defines the meaning of the above table entries.
0 This attribute MUST NOT be present in packet.
0+ Zero or more instances of this attribute MAY be present in packet.
0-1 Zero or one instance of this attribute MAY be present in packet.
Lonvick Expires June 9, 2003 [Page 11]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
4. Useage Notes and Examples
This section describes the expected implementation of the ideas
presented in this document.
4.1 Usernames and Passwords
Some latitude is given in this area so that different policies may be
enforced on different routers. In the most expected case, all
routers will be configured with identical Usernames and Passwords
which will be sent in the Access-Request Attributes as described in
[1].
4.2 Stored Policy
A router SHOULD attempt to gather the stored policy from the central
server when it first awakes.
4.3 Time
Policies - The router should associate a countdown timer with a
received policy. Before the timer has reached 0, the router should
request a new set of policies. (Note: It may be a problem to
associate all of the downloaded policies with a single timer.)
Authcert - The router should associate a countdown timer with a
validated Authcert. Before that timer reches 0, the router should
reaffirm the validity of the Authcert but only if the associated AS
is still advertising routes.
4.4 Authcert Verification
An Authcert will contain all of the policies which must be sent to
the sob-server in the order they are placed within the Authcert. It
is very important that the elements be kept in order as the signature
is calculated over them in that order. (Note: Perhaps XML signing
would be better?)
4.5 Redundancy
More is always better.
Lonvick Expires June 9, 2003 [Page 12]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
5. Security Considerations
Same as RADIUS. (Need more stuff here.)
Lonvick Expires June 9, 2003 [Page 13]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
6. IANA Considerations
Need stuff here.
Lonvick Expires June 9, 2003 [Page 14]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
References
[1] White, R., "Deployment Considerations for Secure Origin BGP
(soBGP)", draft-white-sobgp-bgp-extensions-00.txt (work in
progress), October 2002.
[2] Ng, J., "Extensions to BGP to Support Secure Origin BGP
(soBGP)", draft-ng-sobgp-bgp-extensions-00.txt (work in
progress), October 2002.
[3] Rigney, C., Willens, S., Rubens, A. and W. Simpson, "Remote
Authentication Dial in User Service (RADIUS)", RFC 2865, June
2000.
[4] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", RFC 2119, STD 14, March 1997.
[5] Rigney, C., Willats, W. and P. Calhoun, "RADIUS Extensions", RFC
2869, June 2000.
[6] Narten, T. and H. Alvestrand, "Guidelines for writing an IANA
Considerations Section in RFCs", RFC 2869, BCP 26, October 1998.
[7] Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", RFC 2373, July 1998.
Author's Address
Chris Lonvick
Cisco Systems
12515 Research Blvd.
Austin, TX 78759
US
Phone: +1 512 378 1182
EMail: clonvick@cisco.com
Lonvick Expires June 9, 2003 [Page 15]
Internet-Draft RADIUS Attributes for soBGP Support December 2002
Full Copyright Statement
Copyright (C) The Internet Society (2002). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS 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.
Acknowledgement
Funding for the RFC Editor function is currently provided by the
Internet Society.
Lonvick Expires June 9, 2003 [Page 16]