Network Working Group M. Pritikin Internet-Draft Cisco Systems, Inc. Expires: January 3, 2005 July 5, 2004 Trusted Transitive Introduction Model draft-pritikin-ttimodel-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 January 3, 2005. Copyright Notice Copyright (C) The Internet Society (2004). All Rights Reserved. Abstract We describe the 'out-of-band' exchange of data in a classical enrollment protocol as a Trusted Transitive Introduction (TTI) between two end entities and an introducer, thus distinguishing introduction from enrollment. This document describes the three system entities in the trusted transitive introduction model and the data exchanges between them. Three introduction stages are defined and examined in the context of a 'TTI over HTTP' introduction. Pritikin Expires January 3, 2005 [Page 1] Internet-Draft Trusted Transitive Introduction Model July 2004 Table of Contents 1. Requirements notation . . . . . . . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 3. TTI Entities . . . . . . . . . . . . . . . . . . . . . . . . 5 4. Deployment Scenarios . . . . . . . . . . . . . . . . . . . . 8 4.1 Existing Infrastructures and Authorization . . . . . . . . . 10 4.2 Storyboard 1: Deployment of a VPN device . . . . . . . . . . 10 4.3 Storyboard 2: Purchase of a new device from a service . . . 12 4.4 Storyboard 3: Imprint of a new device . . . . . . . . . . . 13 4.5 Storyboard 4: Establishing a 'pay for use' account . . . . . 14 5. TTI transports . . . . . . . . . . . . . . . . . . . . . . . 17 5.1 TTI over HTTP . . . . . . . . . . . . . . . . . . . . . . . 17 5.1.1 TTI over HTTP Welcome . . . . . . . . . . . . . . . . . . . 18 5.1.2 TTI over HTTP Introduction . . . . . . . . . . . . . . . . . 18 5.1.3 TTI over HTTP Completion . . . . . . . . . . . . . . . . . . 19 6. Where is the User in all this? . . . . . . . . . . . . . . . 20 7. Security Considerations . . . . . . . . . . . . . . . . . . 21 References . . . . . . . . . . . . . . . . . . . . . . . . . 23 Author's Address . . . . . . . . . . . . . . . . . . . . . . 23 Intellectual Property and Copyright Statements . . . . . . . 24 Pritikin Expires January 3, 2005 [Page 2] Internet-Draft Trusted Transitive Introduction Model July 2004 1. Requirements notation 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 [RFC2119]. Pritikin Expires January 3, 2005 [Page 3] Internet-Draft Trusted Transitive Introduction Model July 2004 2. Introduction When adding a device into a security domain the first task is to exchange cryptographic and configuration information between the security domain and the device. This process we term an Introduction. Prior to a successful Introduction there are no security associations between the device and the target security domain. After an introduction there is enough of a security association for the device and the domain to communicate securely at least once. It is our expectation that this initial secure communication will be used to enroll and receive longer term credentials as appropriate. Classically this enrollment process has been handled by the 'out-of-band' communication of cryptographic and configuration information. Although this works well in the simple case, and is common practice, complex authentication and authorization infrastructures often require complex cryptographic keys and configurations to be exchanged. For example PKI deployments often involve involve manual verification of RSA public key material hashes, complex configuration tasks, and/or specific authorization tasks that must occur in a particular sequence. This process is a burden on the administrator and complicates deployment scenarios tremendously. The intuitive nature of the introduction has been lost in the details of the complex cryptographic and configuration material. Here we describe the introduction process as a communication protocol that leverages transitive trust across a third party, the introducer, to complete the 'out-of-band' exchange of data. This maintains the intuitive nature of an introduction while allowing complex configuration and cryptographic material to be exchanged, thus allowing simple enrollment procedures to be leveraged to support more complex enrollments. This process is Trusted Transitive Introduction (TTI). The basic concepts follow from a real life introduction: "Alice, meet Bob. Bob, this is Alice." The third party in this exchange is the Introducer, trusted by both Alice and Bob. Pritikin Expires January 3, 2005 [Page 4] Internet-Draft Trusted Transitive Introduction Model July 2004 3. TTI Entities An introduction involves at least three logical entities. For example the new device, the security domain, and the 'out-of-band' system administrator(s). TTI defines these entities as, (P) Petitioner - a new VPN client device. (I) Introducer - a user at their browser. (R) Registrar - the VPN network hub. Although described here as a discrete entities an instantiation of the TTI model may include situations where the logical entities are themselves complex systems. For example, (P) Petitioner - the product. (I) Introducer - the product vendor. (R) Registrar - a service provider. Or the TTI entities may all be devices in network without direct human intervention, (P) Petitioner - an 802.1x capable device. (I) Introducer - an 802.1x switch. (R) Registrar - the network Authentication Authorization infrastructure). Often associated with the Introducer, and clearly influential in the resulting exchange, is the user/administrator. The user has an interface to one or more elements of the introduction and either initiates the introduction or configures the appropriate behaviors/ policy that an introduction can be automatically initiated at a later time. Deployment discussions that minimize or ignore the role of the Introducer often require an interface on both the Petitioner and Registrar. An important and likely component of at least one of these systems is the existing Authentication and Authorization (AA) infrastructure that the Petitioner is expecting to enroll with. In some instantiations of the TTI model all entities may include complex AA infrastructures. For clarity these are occasionally discussed as distinct from the TTI entities themselves, Pritikin Expires January 3, 2005 [Page 5] Internet-Draft Trusted Transitive Introduction Model July 2004 (A) Authority (e.g. a radius server, CA, or other) Graphically this looks like: +------------+ +-------------------+ +------------+ | Petitioner | | P's Authority (A) | | |<------>| (P) |--| (AAA, CA or other)| | | | | +-------------------+ | | +------------+ | | | Introducer | (there is no initial trust relationship | (I) | between P and R) | | +------------+ | | | Registrar | +-------------------+ | |<------>| (R) |--| R's Authority (A) | +------------+ | | | (AAA, CA or other)| +------------+ +-------------------+ Figure 1 The Petitioner is the entity obtaining new credentials after the TTI exchange. The Registrar is the entity issuing the new credentials. One possibility is that an entity may act as either a Registrar and a Petitioner. The TTI protocols must consider such situations. The specifics of the relationship between each entity and its own Authority are out of the scope of the TTI model. The existence of either a Petition's or a Registrar's Authority does not effect the sequence of communication events, although it may effect the enrollment and configuration protocols that depend on TTI for their 'out-of-band' data exchange and it may effect the configuration information exchanged by TTI. After introduction is complete the Petitioner and Registrar have exchanged key and configuration material and can complete an authenticated exchange with each other. Due to the transitive and possibly manual nature of the introduction process TTI is not envisioned as as a full featured policy, configuration distribution, and enrollment mechanism. Instead peers are expected to conclude the introduction with an appropriate 'in band' enrollment mechanism. The peer entities now communicate directly to enroll: +------------+ +-------------------+ +------------+ | Petitioner | | P's Authority (A) | | | | (P) |--| (AAA, CA or other)| | | | | +-------------------+ | | +------------+ Pritikin Expires January 3, 2005 [Page 6] Internet-Draft Trusted Transitive Introduction Model July 2004 | | | | Introducer | | (Now can run enrollment protocol) | (I) | | | | +------------+ | (No longer | | Registrar | +-------------------+ | involved) | | (R) |--| R's Authority (A) | +------------+ | | | (AAA, CA or other)| +------------+ +-------------------+ Figure 2 Pritikin Expires January 3, 2005 [Page 7] Internet-Draft Trusted Transitive Introduction Model July 2004 4. Deployment Scenarios The Introducer must authenticate to the Petitioner and Registrar using the authentication and authorization mechanisms currently in place. This recursive use of prior associations is the strength of TTI. It allows complex authentication and authorization mechanisms to be built from relatively simple default mechanisms. It is important to note that current enrollment scenarios also depend on existing authentication mechanisms without explicitely defining how they do so. For example when a certificate request hash for PKI enrollment is transfered 'out-of-band' it is obtained, sent, and checked using the existing authentication/authorization mechanisms. This may be a remote administrative connection to the new device secured with HTTPS or it may be a direct physical connection. The following example deployment scenarios help clarify this, A highly knowledgeable administrator facilitates deployment at the target location. A physically secured staging location is used for deployment. An external party provides the 'staging' area. An end user facilitates deployment at the target location. The simplest solution to code is to expect a highly trained and knowledgeable administrator to travel to the new deployment site and deploy the device manually. While this must be supported and care should be taken to ease the deployment task this is the most costly form of deployment and can not be used for wide scale deployments. Using an in house staging area is well understood and can be automated to a large extent. Unfortunately even the unpacking, automated deployment deployment, and repacking, of equipment is also a highly costly process and does not scale well. External parties can amortize the cost of staging across multiple customer deployments and drive the cost down to a point where it is less of an issue. Particularly when the external party is the device manufacturer who already has the device out of the box and on an automated provisioning system (such as is used for initial device configuration, possibly including initial configuration with a customer supplied configuration). Support for this must be provided in such a way that secret cryptographic key material is not exposed. Even in a resulting trust and identity infrastructure where PKI is minimized it is normally leveraged here (e.g. X509 certificates signed by the manufacturer, possibly including an initial Pritikin Expires January 3, 2005 [Page 8] Internet-Draft Trusted Transitive Introduction Model July 2004 configuration of the customer supplied X509 root certificates). We can restate the various deployment scenarios as a relationship between the following aspects: A) The deployment or enrollment requirements and process. Many organizations will focus initially on costs. Although interested in 'security' they'll be looking for a cheap solution that is not insecure (emphasis theirs). A highly secure but very manual (costly) process may be available but not acceptable. For example training all users/administrators to check certificate fingerprints doesn't work. B) Physical securities in the "out-of-band" communications channel used by an administrative element to communicate with the device. Although the extreme ideal is to leverage quantum cryptography across a physical link the currently accepted practice is to use a local console cable or local physical access. Due to management/ usability issues (see A) it is currently common for a local LAN connection to suffice - and occasionally this LAN connection may even be wireless! One example of a tradeoff for this area is to specify in (A) that ssh (even un-authenticated) instead of telnet should be used for device to device communication. C) Trust in existing previously configured credentials. The device's existing credentials are leveraged to provide virtual security for (B) in response to pressures from (A). For example an authenticated ssh connection, an HTTPS connection or some other secured link Where lowered requirements for (A) and (B) result in higher requirements for (C). In some instantiations of the model the Introducer may be co-located with either the Petitioner or the Registrar. One could thus describe current enrollment scenarios that involve an administrator on the new device as an instantiation of the TTI model. In a password based enrollment mechanism a user drives enrollment by providing a password to the new device (which then optionally uses this password to communicate with the Registrar system to obtain more complex credentials). This may be described using the TTI model by including the Introducer system on the same basic platform as the Petitioner. In this case the authentication mechanism between (I) and (P) is the direct physical/logical integration of these components (e.g. They are running on the same system) (See B above): +-------------------------------+ Pritikin Expires January 3, 2005 [Page 9] Internet-Draft Trusted Transitive Introduction Model July 2004 | New Device/System | |+----------+ +------------+| ||Introducer| | Petitioner || || |<--->| (P) || || | | || |+----|-----+ +------------+| +-----|-------------------------+ | (there is no initial trust relationship | between P and R) | +------------+ | | Registrar | +---------->| (R) | (password) | | +------------+ Figure 3 4.1 Existing Infrastructures and Authorization As discussed above the TTI model can depend on an existing security association between the Introducer and the Petitioner (and between the Introducer and the Registrar). Even when it is acceptable to re-use existing credentials the TTI model is used to configure authorization. Consider the case when an existing credential, say a manufacturing ID certificate, is available. The device can uniquely identify itself, but this does not preclude the need for an enrollment/deployment scenario. The existing credential has been issued by a 3rd party but must be associated with appropriate authorization before it can be generally accepted on the target network. This process of configuring the authorization is an Introduction (wherein the Introducer obtains the new device's ID from the Petitioner and provides it to the Registrar system thus authorizing the device). 4.2 Storyboard 1: Deployment of a VPN device In this situation a corporate VPN user with existing corporate credentials wishes to enable a remote access hardware VPN device. This device allows the a SOHO office to behaves much like a corporate office. For example direct access to corporate printers, IP phones work correctly, multiple computers/servers can be deployed, 802.1x security scenarios apply etc. The TTI entities are defined as: (P) Petitioner: The hardware VPN device. Pritikin Expires January 3, 2005 [Page 10] Internet-Draft Trusted Transitive Introduction Model July 2004 (I) Introducer: The user with a web browser. (R) Registrar: The corporate VPN service. We assume the user had IP connectivity and has purchased a hardware VPN device at a local retail store. The hardware VPN device is a consumer electronics equipment with a default configuration and behavior according to the designer specifications. It has no knowledge of the corporate credentials, nor does it have special credentials for Enrollment: User connects VPN device to the home network as appropriate. Depending on the device purchased this may involve lengthy configuration steps or may be a plug-and-go scenario. The user establishes a secure connection to the new device. It is expected that an HTTP(S) interface will be used for most headless devices, and as such a default HTTPS certificate MAY be used by the device to authenticate itself as per the "Storyboard: Imprint of a new device" Once the user is communicating securely with the new device they Introduce it to the corporate network by indicating the corporate VPN service's Registrar HTTP URL. During this exchange the Petitioner's public key and provisioning information are transferred to the user/browser (the user MAY not even be aware of this). The user's web browser is connected to Registrar's HTTP URL and the user is authenticated. This authentication is between the user (at their browser) and the corporate Registrar. It may be a mutually authenticated connection with both server_auth and client_auth (if the user has a local certificate and/or smartcard system) or it may be only server authenticated with a username password. The mechanisms used are between the user/browser and the corporate Registrar and changes to these do not effect the Petitioner device's requirements. The Registrar performs the appropriate authorization exchanges such as determining if the user has appropriate permissions to deploy a hardware VPN device. During this exchange the Petitioner's public key and provisioning information are transferred to the Registrar (the user MAY not even be aware of this). In addition to the graphical user response the Registrar's public key and provisioning information are strangered to the user/browser (the user MAY not be aware of this either). The Introduction is completed when the user is redirected back to the Petitioner HTTP interface. At this time the Registrar's public Pritikin Expires January 3, 2005 [Page 11] Internet-Draft Trusted Transitive Introduction Model July 2004 key and provisioning information are strangered to the Petitioner. The Petitioner then instantiates the provisioning information. Possibly this includes enrolling with the Registrar to obtain Registrar significant credential material (certificates, symmetric keys etc) and configuration information (possibly joining a specified management framework etc). Deployment is complete 4.3 Storyboard 2: Purchase of a new device from a service Many services may with to provide value by performing the imprint detailed above on behalf of the purchaser. In this case they perform the above sequence of events but 'imprint' the device to the purchases public key and provisioning material. The TTI entities are defined as: (P) Petitioner: The new device. (I) Introducer: The manufacturer or 3rd party resaler. (R) Registrar: The purchaser with their PC/web browser. We assume the device is purchased from the manufacturer or 3rd party web page: The user orders the device by providing cryptographic and provisioning information at the manufacturer/3rd party web site. The manufacturer/3rd party performs the imprint sequence detailed above and configures the device with the purchases cryptographic and provisioning information. The device is shipped As a result of the device being shipped a bill of sale is returned with the devices cryptographic information to the purchaser. The purchases sends this information into their Registrar system (possibly manually, hopefully via an automated process etc). Device arrives and is plugged in/turned on The Petitioner then instantiates the provisioning information. Possibly this includes enrolling with the Registrar to obtain Registrar significant credential material (certificates, symmetric keys etc) and configuration information (possibly joining a Pritikin Expires January 3, 2005 [Page 12] Internet-Draft Trusted Transitive Introduction Model July 2004 specified management framework etc). Deployment is complete 4.4 Storyboard 3: Imprint of a new device When a device is configured with factory default settings it does not have a security association with an administrator, user, or management system. Much like a duck it must Imprint on any entity that presents itself as an administrator. Although the device MAY have credentials of its own that it can present (for example a certificate issued to the device during manufacturing or a prior imprint process) this case also covers the ubiquitous initial scenario where the device has no prior credentials. The TTI entities are defined as: (P) Petitioner: The new device. (I) Introducer: Very thin in this scenario - it is essentially the transport mechanism providing secured connectivity to the new device. (R) Registrar: The initial configuration system. In an automated corporate environment this may be a provisioning/configuration/ test rack. It may also be a PC/web browser etc. We assume the device is directly off the manufacturing floor and has absolutely minimal configuration: The device comes up and performs accepts initial input(s) from the introducer as having full administrative credentials. The introducer detects the physical link is active and initiates communication with the registrar. The registrar provides provisioning information and cryptographic information The Petitioner then instantiates the provisioning information. Possibly obtaining credentials such as a Device ID Certificate. Pritikin Expires January 3, 2005 [Page 13] Internet-Draft Trusted Transitive Introduction Model July 2004 4.5 Storyboard 4: Establishing a 'pay for use' account In this situation a user wishes to use their credit card to establish an account to access an online service such as a WLAN hot spot. There are two models of this scenario that we must consider, the first being a modeling of the scenario as it is currently implemented today and the second being a model of a secure solution. The current implementation of this scenario has been heavily influenced by the existing authentication and authorization mechanisms available and is not ideal. The user's credit card number is essentially a poorly protected piece of "secret" key material surrendered to the provider as a sort of authorization credential which the provider can then use to obtain payment from the credit card provider. [A paragraph here about how extensive and expensive $$ this fraud is would be interesting. Some links to consider are The Internet Fraud Complaint Center (http://www.ifccfbi.gov/strategy/statistics.asp) concerning general Internet fraud issues indicate massive amounts of moneys. Others like this random link (http://www.biz-sites.com/ merchant_accounts/credit_fraud.html) talk about $1billion a year. I'm sure there are some good government estimates out there that I didn't google my way to. The short answer is a lot of money is spent on this broken security model.] Regardless this is a scenario that we must consider and be prepared to model. A direct modeling results in the strained definition of TTI entities: (P) Petitioner: The new user/laptop. (I) Introducer: The credit card provider. (R) Registrar: The WLAN hot spot. The credit card and associated information could be considered a template of introduction material already provided by the Introducer to the Petitioner. Namely it is composed of cryptographic information (the quasi-secret credit card number) and configuration information (the type of card, expiration date, the 3numbers on the back etc). The Registrar has likewise already established an ongoing relationship with the Introducer. The introduction can be said to be almost complete except that the Petitioner now triggers it to completion (this is where the model is strained, previously we had limited initiation of the introduction to the introducer). The user initiates the introduction by the act of attempting an enrollment. Which is to say by initiation the 'new account' process at the Registrar. Pritikin Expires January 3, 2005 [Page 14] Internet-Draft Trusted Transitive Introduction Model July 2004 The Registrar optionally communicates with the Introducer to make sure the Petitioner device is valid (e.g. Verifies the credit card information). As per the existing relationship between the merchant and the credit card provider this is optional in some situations. Once the merchant is assured that appropriate authorization is received (moneys in this scenario) the introduction can proceed. If the Introduction is successful the user is enrolled and issued locally significant credentials. Depending on the WLAN hot spot this may be an HTTP cookie authorizing use for a period of time or it may be the establishment of a long term account (including caching of the credit card information to use during later authorization renewals (e.g. Monthly payments). As shown above this works but is a strain on the model. Another way of modeling this scenario presents itself: (P) Petitioner: The WLAN hot spot. (I) Introducer: The user/laptop. (R) Registrar: The credit card provider. This is description of TTI entities better matches what is important here, the flow of moneys. And namely that the user is authorizing a certain long term relationship between the WLAN hot spot and their credit card provider (or bank): The user accesses the WLAN hotspot (or any other Internet service provider) and initiate establishment of an account. The Introducer authenticates the Petitioner device by examining the HTTPS certificates. The user forwards the introduction material (e.g. The cryptographic information identifying the Petitioner to the Registrar). This is implemented as part of the HTML forms during account establishment and involves an HTTPS connection between the Introducer and their credit card provider. [As an implementation detail this describes the WLAN hotspot allowing HTTPS traffic to known credit card provider Registrar systems even prior to full authentication/authorization of the user] The user establishes with the Registrar what type of introduction this is (should the result be a one time only authorization for a certain amount of money or is it to allow enrollment of the Petitioner for monthly access and withdrawal of a certain amount or range? The details of this information are between the Pritikin Expires January 3, 2005 [Page 15] Internet-Draft Trusted Transitive Introduction Model July 2004 Introducer and the Registrar; the Petitioner is not required to support them. The introduction material is sent back to the Petitioner which then uses it to enroll with the Registrar. Credentials are obtained, moneys are transferred and/or accounts are established. As a result the Petitioner now successfully provides a service to the Introducer. If this service is not acceptable or otherwise goes wrong the Introducer can connect to the Registrar and revoke/change the appropriate authorizations connected to the credentials issued to the Petitioner. This latter scenario more accurately represents what we want out of these types of transactions. With full acceptance of the TTI model online credit card fraud could be significantly curtailed with extremely minimal change in the user experience (providing equivalent usability) without changing the format or specification for user credit cards themselves (thus non-online fraud is still a problem). Pritikin Expires January 3, 2005 [Page 16] Internet-Draft Trusted Transitive Introduction Model July 2004 5. TTI transports TTI should be transport independent. It is envisioned that the different TTI protocol instantiations of the TTI model may run on a variety of systems and protocols and should not be locked into a particular transport mechanism. Some areas that should be considered include: IP Layer 2 (e.g. over an 802.1x EAP or EAP/TLS exchange) IP Layer 3 (e.g. over an HTTP web/user based exchange) Storage medium (e.g. an introduction should be 'distributable' over a cd, smartcard, or other physical transport device) 5.1 TTI over HTTP The use of HTTP mechanisms for the TTI transport allows a common HTML web browser to be used as the Introducer in a TTI exchange. This provides support for an extremely important and useful example; where a user with their web browser initiates and completes the intuitive introduction of two network entities without having to know or understand the details of an introduction or enrollment. This document provides a brief overview of what this would look like to help explain the TTI model. The specific details of the TTI over HTTP redirections, encoding of cryptographic information, configuration information and resulting enrollment are out of scope of this document. For a simple implementation of TTI over HTTP the TTI entities are, 1. Petitioner - the device or product running a simple HTTP[S] server used by the TTI exchange. 2. Introducer - a user at their web browser. This may be on the same system as the Petitioner or it may be on a different system. 3. Registrar - the service or provider running a simple HTTP[S] server used by the TTI exchange. There are three essential phases to TTI over HTTP, each of these include an HTTP GET or an HTTP POST of data as described in the following sections. Pritikin Expires January 3, 2005 [Page 17] Internet-Draft Trusted Transitive Introduction Model July 2004 5.1.1 TTI over HTTP Welcome The Welcome Phase: +------------+ +-------------------+ +------------+ | Petitioner | | P's Authority (A) | | |<-------| (P) |--| (AAA, CA or other)| | | | | +-------------------+ | | +------------+ | | | Introducer | | (I) | | Web | +------------+ | Browser | | Registrar | +-------------------+ | | | (R) |--| R's Authority (A) | +------------+ | | | (AAA, CA or other)| +------------+ +-------------------+ Figure 4 The user initiates their web browser (Introducer) to do an HTTP[S] GET from the Petitioner. This requires that the user, or the users web browser, log into the Petitioner according to the authentication and authorization infrastructure currently in place. The web page received includes 'hidden' input elements with cryptographic information that identifies the Petitioner device and and input field for the Registrar's HTTP address. The HTML input type 'hidden' avoids displaying complex cryptographic information and confusing the naive user, it is not a security mechanism. The user inputs the Registrar's HTTP[S] URL and clicks the 'next' button. 5.1.2 TTI over HTTP Introduction The Introduction phase: +------------+ +-------------------+ +------------+ | Petitioner | | P's Authority (A) | | | | (P) |--| (AAA, CA or other)| | | | | +-------------------+ | | +------------+ | | | Introducer | | (I) | | Web | +------------+ | Browser |------->| Registrar | +-------------------+ | |<-------| (R) |--| R's Authority (A) | +------------+ | | | (AAA, CA or other)| +------------+ +-------------------+ Pritikin Expires January 3, 2005 [Page 18] Internet-Draft Trusted Transitive Introduction Model July 2004 (Note that an HTML page is recieved after doing an HTTP POST) Figure 5 The Petitioner's cryptographic information is HTTP[S] POSTed to the Registrar's server. This requires that the user, or the user's web browser, log into the Registrar's server. As a result of the HTTP[S] POST, and authorization of the Introducer, the resulting web page includes, as hidden attributes, the cryptographic and configuration information for the Petitioner device. The user clicks the 'next' button. 5.1.3 TTI over HTTP Completion Introducer does an HTTP POST back to the Petitioner: +------------+ +-------------------+ +------------+ | Petitioner | | P's Authority (A) | | |------->| (P) |--| (AAA, CA or other)| | | | | +-------------------+ | | +------------+ | | | Introducer | | (I) | | Web | +------------+ | Browser | | Registrar | +-------------------+ | | | (R) |--| R's Authority (A) | +------------+ | | | (AAA, CA or other)| +------------+ +-------------------+ Figure 6 The cryptographic and configuration information from the registrar is HTTP[S] POSTed to the Petitioner. At this point the Petitioner and the Registrar have exchanged the appropriate information to engage in a secure enrollment protocol as in Figure 2. Pritikin Expires January 3, 2005 [Page 19] Internet-Draft Trusted Transitive Introduction Model July 2004 6. Where is the User in all this? The user drives an introduction by initiating events in an intuitive order. What they do not do is manually exchange or process data. The software tools they are using perform the actual work of the data exchange. In the above TTI over HTTP scenario the user drives the introduction process using a generic web browser. The user, at their web browser, is involved in every aspect of the TTI exchange. They are playing the role of the Introducer with only the very thin layer of their web browser to 'protect' them from being exposed to the raw cryptographic and configuration material. In the example presented they could examine this material by viewing the source of the HTML pages. Other uses of the TTI model can provide a thicker layer on top of the user experience. For example, custom introduction software, or tools, might be used. The user driving the introduction might not be at the Introducer at all. There is nothing in the TTI model to preclude a Petitioner from requesting an introduction from an Introducer. For example consider a user on their corporate laptop as the Petitioner. The user might initiate an introduction to one corporate resource by contacting the corporate Introducer resource. The Introducer, after authenticating and authorizing the user and/or laptop, proceeds to introduce the user's laptop to the resource. The laptop enrolls with the ultimate resource. Note that this is a transitive operation, the Introducer no longer needs to be involved during subsequent communications between the laptop and the resource. A common scenario may involve the user working from the Registrar to establish a security association with a new entity. From the user's perspective this should be the same as initiating an introduction from the Petitioner, with the only distinction being that data traffic (which AA infrastructure will be used). Instantiations of the TTI model should consider the possibilities that the initiating user may be initiating the process through a TTI entities other than the Introducer. Pritikin Expires January 3, 2005 [Page 20] Internet-Draft Trusted Transitive Introduction Model July 2004 7. Security Considerations This document discusses models for deploying security infrastructures. Any resulting TTI protocols will need to carefully consider how the protocol elements will be protected. The TTI model assumes that cryptographic material can be produced on the Petitioner and Registrar, passed over third parties (the Introducer) and later be be used to secure an enrollment between the Petitioner and Registrar. It is expected that asymmetric key material should be used for this portion of the exchange. This document develops the concept of the Introducer, a new construct in the normally bi-entity discussion of secure enrollment. This serves as an alternative to the historically loosely defined 'out-of-band' security measures. The security implications of a transitive relationship still apply. A compromised introducer could act to enable enrollment of unexpected elements into a secure domain in much the same way that a compromised 'out-of-band' mechanism can be used to subvert a classic enrollment scenario. Care must be taken not to overlook this when designing the TTI protocols. The transitive nature of TTI (and any 'out-of-band' data exchange) means that the Registrar does not know how secure the communication channel between the Petitioner and the Introducer is. An example of this is a Petitioner device, a wireless camera, that is being deployed over a wireless connection. Assuming the camera was purchased as a consumer product it might supports something like the Imprinting model above, the first consumer to activate and connect to it can establish an initial security association with the device. Possibly by configuring the administrator password on the device (A more complex scenario may involve an initial introduction to their home network). When the consumer then Introduces the device to a service, such as a video conferencing provider, the provider may be concerned that such a wireless imprinting provides too great of an attack risk. In such a situation the Registrar may require that the camera assert an identity (e.g. a manufacturer ID certificate) which can be verified by having the Introducer confirm some characteristic of the device (e.g. inputing a serial number off the device). In such scenarios the TTI protocol should provide a clear mechanism by which the Registrar can coach the user through the appropriate sequence of events without undue confusion. The above examples of TTI over HTTP provides for this by providing each element in the exchange a web interface to the user. Similar care should be taken to consider Pritikin Expires January 3, 2005 [Page 21] Internet-Draft Trusted Transitive Introduction Model July 2004 when the process is being initiated by automated deployment systems. Pritikin Expires January 3, 2005 [Page 22] Internet-Draft Trusted Transitive Introduction Model July 2004 References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. Author's Address Max Pritikin Cisco Systems, Inc. EMail: pritikin@cisco.com Pritikin Expires January 3, 2005 [Page 23] Internet-Draft Trusted Transitive Introduction Model July 2004 Intellectual Property Statement The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification can be obtained from the IETF Secretariat. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director. The IETF has been notified of intellectual property rights claimed in regard to some or all of the specification contained in this document. For more information consult the online list of claimed rights. Full Copyright Statement Copyright (C) The Internet Society (2004). 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 assignees. Pritikin Expires January 3, 2005 [Page 24] Internet-Draft Trusted Transitive Introduction Model July 2004 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. Pritikin Expires January 3, 2005 [Page 25]