Internet DRAFT - draft-shore-trust-problemstatement

draft-shore-trust-problemstatement






Network Working Group                                           M. Shore
Internet-Draft                                      No Mountain Software
Expires: August 29, 2013                                   K. O'Donoghue
                                                                    ISOC
                                                       February 25, 2013


             A problem statement on trust in IETF protocols
                 draft-shore-trust-problemstatement-01

Abstract

   This document attempts to set out a problem statement and framework
   for future discussions regarding "trust" in the IETF.

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 August 29, 2013.

Copyright Notice

   Copyright (c) 2013 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
   (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.





Shore & O'Donoghue       Expires August 29, 2013                [Page 1]

Internet-Draft         Problem Statement on Trust          February 2013


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Terminology and glossary . . . . . . . . . . . . . . . . . . .  4
   3.  What is trust? . . . . . . . . . . . . . . . . . . . . . . . .  6
   4.  Modeling trust . . . . . . . . . . . . . . . . . . . . . . . .  8
   5.  Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
   6.  Security Considerations  . . . . . . . . . . . . . . . . . . . 12
   7.  Path forward . . . . . . . . . . . . . . . . . . . . . . . . . 13
   8.  Informative References . . . . . . . . . . . . . . . . . . . . 14
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16








































Shore & O'Donoghue       Expires August 29, 2013                [Page 2]

Internet-Draft         Problem Statement on Trust          February 2013


1.  Introduction

   "Trust" is used quite broadly in IETF documents but has not been
   discussed or defined very rigorously.  To the extent that it's been
   discussed explicitly it's typically been within an implementation or
   protocol definition context, often around the question of trust
   anchors and their management (see RFCs [RFC5914], [RFC5934],
   [RFC6024], and many others for examples).

   In this document we intend to tease out how IETF protocols have
   tended to approach questions around trust, discuss whether or not
   this has been sufficient, and see if there is new work on trust that
   could be of value.  We are not specifically interested in defining
   the word "trust," but rather identifying broader issues and problems
   related to trust.

   Note, as well, that a survey of trust mechanisms in IETF documents
   and protocols is out-of-scope for this document.

   Text relating to problems around revocation will be added to future
   revisions of this document, as well as text relating to problems
   modeling trust in third-party and federated authentication and
   authorization protocols.




























Shore & O'Donoghue       Expires August 29, 2013                [Page 3]

Internet-Draft         Problem Statement on Trust          February 2013


2.  Terminology and glossary

   Assurance, Assurance Level

   Attestation of Control

   Authentication

   Binding, Cryptographic Binding

   Blocklist/Whitelist

   Certification, Certification Practices, Certification

   Practices Statement

   Certifying Authority, Certification Authority

   Confidence

   Correct

   Digitally Signed/Digital Signature

   Hijack

   Identity, Identity information

   Leap of Faith

   Legitimate

   Mediated Trust

   Revocation

   Risk

   Source Integrity

   Transitive Operations (in the context of Trust)

   Trust

   Trust Anchor






Shore & O'Donoghue       Expires August 29, 2013                [Page 4]

Internet-Draft         Problem Statement on Trust          February 2013


   Trust Auditing

   Trust Establishment and Bootstrapping

   Trust Framework

   Trust Revocation

   Trust Passing

   Trust Transaction

   Trustee, Trustor

   Unilateral Trust, Bilateral Trust

   Validation, Validation of Compliance


































Shore & O'Donoghue       Expires August 29, 2013                [Page 5]

Internet-Draft         Problem Statement on Trust          February 2013


3.  What is trust?

   As of this writing, "trust" does not appear to be defined in an IETF
   document, relying, rather, on functional or operational contexts to
   imply intent.  [RFC4949], a quite substantial internet security
   glossary, does not define it anywhere, although in its definition of
   "source integrity" it includes the text:

      The property that data is trustworthy (i.e., worthy of reliance or
      trust), based on the trustworthiness of its sources and the
      trustworthiness of any procedures used for handling data in the
      system.

   which is a rather circular discussion.

   Kaliya Hamlin, on her IdentityWoman blog, has written a bit [1] about
   this in the context of the NSTIC [2] (National Strategy for Trusted
   Identities in Cyberspace) program, ultimately arguing that a "trust
   framework" is an accountability framework.

   Accountability would seem to be a component of an intuitive
   understanding of "trust," and establishing accountability is a core
   component of establishing trust as we understand it, but
   accountability implies auditability only; that is to say, this
   definition seems to focus on the ability to retrospectively determine
   that some set of actions took place in the past.  Establishing
   accountability does not establish that future interactions will be
   safe, and authorized.

   The OASIS Web Service Secure Exchange Technical committee has
   developed a standard [ws-trust] to specify a framework for, among
   other things, brokering trust relationships.  Much like the IETF,
   they seem to rely on an operational definition of "trust":

      Trust is the characteristic that one entity is willing to rely
      upon a second entity to execute a set of actions and/or to make
      set of assertions about a set of subjects and/or scopes.

   Zainab Aljazzaf has done extensive work on trust in web transactions,
   and in his doctoral dissertation [tbss] he defines trust as a complex
   subjective term, with the following components:

   o  Utility: a trustee (for example, an IdP, or a web server) needs to
      provide a utility to a trustor (for example, a relying party or a
      web browser)

   o  Dependency and reliability




Shore & O'Donoghue       Expires August 29, 2013                [Page 6]

Internet-Draft         Problem Statement on Trust          February 2013


   o  Risk attitude.

   o  Vulnerability

   o  Remedies, in the event of a breach of trust.  This is closely
      related to Hamlin's notion of accountability

   o  Confidence expectation, with an inverse relationship between trust
      and confidence (Aljazzaf asserts that possession of confidence
      makes trust unnecessary)

   o  Context-specific

   o  Subjective -- trust is experienced differently for different
      trustees

   o  A trustor may have no control over the trustee.  The more control
      a trustor has over a trustee, the less need there is for trust

   He then goes on to propose the following one-sentence definition of
   trust:

      Trust is the willingness of the trustor to rely on a trustee to do
      what is promised in a given context, irrespective of the ability
      to monitor or control the trustee, and even though negative
      consequences may occur.

   The key question seems to be around risk, and the expectations of
   risk.  Imparting trust would seem in some sense to be a signaling
   mechanism - that transactions with the trusted party should be
   regarded as carrying known than transactions with non-trusted
   parties.



















Shore & O'Donoghue       Expires August 29, 2013                [Page 7]

Internet-Draft         Problem Statement on Trust          February 2013


4.  Modeling trust

   Describing, or modeling, trust requires identifying parties and
   understanding their relationships.  It may also require identifying
   trust processes.

   Participants in a trust transaction may resemble the participants in
   identity services (see, for example, the OASIS SAML 2.0 glossary
   [samlgloss]).  A trustor may be seen to take on a similar role to
   that of a relying party, while a trustee may have a parallel role to
   an identity provider.  Both a trustee and an identity provider make
   authoritative assertions about a subject.

   Trustors may or may not have an established relationship with a given
   entity.  That is to say, at the time that a transaction is initiated,
   a trustor may have information about the other party, and they may
   have an existing business relationship.  For example, if you have an
   account with your bank, you provide them with identifying and other
   information.  When you establish an account with an ISP you are
   providing them with considerably less information but you are paying
   them - you are purchasing a service.

   It is also common to have unilateral relationships, in which one
   party has knowledge of and is able to authenticate the other party,
   but the other party has to rely on mediated trust regarding the first
   party.  This is common with banks, for example, where to access your
   account online you need to present the credentials you've established
   directly with the bank, while the bank authenticates itself to you
   using mediated authentication (an X.509 certificate issued by a
   commercial CA and presented using the TLS protocol).

   We believe that in this case, trust establishment and bootstrapping,
   trust auditing, and trust revocation are normal trust lifecycle
   activities.

   Where problems seem to arise is in those cases where two entities
   without an existing relationship attempt to determine whether or not,
   and to what extent, they may trust each other.  With some exceptions
   (for example, unauthenticated IPsec SAs [RFC5386], or the use of
   self-signed X.509 certificates), this involves the use of some
   mediating agent and tends to rely on a transitive trust model.

   Transitivity in trust is similar to transitivity in mathematics:
   "Things which are equal to the same thing are equal to one another."
   (the first of Euclid's Common Notions).  When there are transitive
   trust relationships, if A trusts B and B trusts C, then A trusts C.

   Quite possibly the most common case of mediated trust on the internet



Shore & O'Donoghue       Expires August 29, 2013                [Page 8]

Internet-Draft         Problem Statement on Trust          February 2013


   is the use of X.509 [RFC5280]certificates in TLS [RFC5246].  X.509
   certificates are issued to identify entities, but because of
   conflation of identity with trust issues are often seen as conveying
   trust.  That is to say, a model in which I trust a given CA to assert
   identity is, in practice, often a seen as a model in which I trust a
   given entity based on its CA's assertion of identity.

   A given user cannot reasonably be expected to have pre-installed end
   entity certificates for every server she is likely to want to access,
   and so we have mediated trust based on someone (in this case, a
   certification authority) making an authoritative statement about the
   identity of a server, and that statement being verifiable using
   formal and well-understood (??) validation procedures, walking a
   chain of trust back to an installed trust anchor.

   Another example, but one in which communicating entities may be
   closely related and still not have foreknowledge of one another, is
   in the use of group keys, as in GDOI [RFC6407] (the Group DOI for
   IKE).  In that case group members share a key, but access to the key
   (along with key management operations including initial
   authentication) is mediated through a Group Controller/Key Server.

   A non-cryptographic example of mediated, transitive trust is in VoIP
   systems in which a call control server is used.  For example, if user
   Customer A has service with Service A, and is able to authenticate to
   that service, and Customer B has service with Service B, and is
   similarly able to authenticate to its service, Customer A is able to
   talk to Customer B if Service A and Service B know about each other
   and trust each other.

   A variation on the mediated, authority-based trust models described
   above is consensus systems, where an endpoint or user still needs to
   rely on an external source for the basis for trust decisions, but a
   trust decision is based on agreement (or not) between a number of
   parties.  If a very large number of parties state that a given entity
   is trustworthy, with little disagreement, that leads to a different
   decision from one when there's substantial agreement that a given
   entity is untrustworthy, or when there's very little agreement (or
   insufficient data).  As of this writing we are not familiar with
   consensus-based trust models in IETF protocols.











Shore & O'Donoghue       Expires August 29, 2013                [Page 9]

Internet-Draft         Problem Statement on Trust          February 2013


5.  Problems

   We believe that these are the major problems with the internet trust
   infrastructure as commonly used in IETF protocols:

   o  Users, services, and other network elements are often required to
      make trust decisions about entities with which they have no
      previous relationship

   o  There is often insufficient information about the practices at and
      reliability of network entities making identity and attribute
      assertions

   o  There has been no delegation mechanism to make it clear when one
      entity is authorized to act on behalf of another entity.  OAuth
      is [3] an authorization mechanism currently under development
      which may prove to be useful for generalized service delegation.

   As described in Section 4, we believe that where there are problems
   related to trust in IETF protocols, it is largely in situations in
   which participating endpoints have no foreknowledge of one another,
   or the knowledge is unilateral.

   This is due at least in part to the familiar problem of conflating
   authentication - proven identity - with the problem of authorization.
   In the case where two entities have an existing relationship this is
   probably reasonable.  It is unlikely that the credentials or
   resources would have been provisioned if the relationship were not
   authorized.

   In cases where there is no pre-existing relationship, however, there
   is frequently insufficient basis to make a trust decision.
   Transitivity is not appropriate in all cases, and is a genuinely bad
   idea in many.

   When a certification authority issues a certificate and signs it,
   they are making an identity assertion.  That may be sufficient for
   access control decisions when there is local knowledge of the
   identity being asserted, or when the resources being requested are
   low-value or not sensitive.  The broader problem with identity
   assertions is that it is not always possible to know how reliable, or
   trustworthy, a given certification authority or trust anchor is, or
   what their vetting practices are for verifying a customer's actual
   identity before issuing a certificate or other credentials.  Having a
   certification authority vouch for an entity's identity is meaningless
   if the CA is not careful about making sure that an applicant really
   is who they say they are.  Unfortunately it is not often possible to
   know how reliable a given CA is, or whether or not their vetting



Shore & O'Donoghue       Expires August 29, 2013               [Page 10]

Internet-Draft         Problem Statement on Trust          February 2013


   practices meet a given set of requirements.

   In addition to the limitations with the existing internet trust and
   identity infrastructure, there are some missing components, as well.
   There isn't always a mechanism to identify the relationship between
   two entities when one is needed.  For example, a utility company
   (gas, electric, sewer, water) may use a third-party payments company,
   and when you use the utility's website, when you click the "Pay my
   bill" button you're taken to the payment company's website.  From the
   underlying identity and trust mechanism it is not possible to
   determine that there really is a relationship between the utility and
   the payment company, and that the payment company is authorized to
   collect money on behalf of the utility.  A delegation mechanism is
   missing.





































Shore & O'Donoghue       Expires August 29, 2013               [Page 11]

Internet-Draft         Problem Statement on Trust          February 2013


6.  Security Considerations

   This document attempts to describe and identify problem areas related
   to trust in the internet infrastructure, within IETF scope.  As such
   it does not introduce new mechanisms.  However, it should be
   understood that the problems described in this document do have
   immediate impact on the security of related mechanisms.
   Recommendations for remediation are outside the scope of this
   document.










































Shore & O'Donoghue       Expires August 29, 2013               [Page 12]

Internet-Draft         Problem Statement on Trust          February 2013


7.  Path forward

   We suggest that there may be value in pursuing discussion of some of
   the question raised earlier in this document.  In particular,

   o  Is there value in a shared understanding or shared definition of
      what is meant by the word "trust?"

   o  Do we, as an organization, care about clearer descriptions of
      trust models in IETF protocols?

   o  Do we need to develop a stronger understanding of how to support
      trust frameworks, or how to develop frameworks in which multiple
      trust and policy models are used in a given scenario (say, in
      VoIP, where you may involved DNS, SIP, TLS, STUN, and others in
      completing a single "call")?

   o  Should we be differentiating between threats introduced by
      cryptographic or protocol flaws, and threats tied to trust
      problems?

   o  Does renewed interest in federated and other third-party identity
      and authorization mechanisms affect organizational priorities
      around trust issues?

   o  What, if anything, does the IETF need to be doing more generally
      around questions of trust?
























Shore & O'Donoghue       Expires August 29, 2013               [Page 13]

Internet-Draft         Problem Statement on Trust          February 2013


8.  Informative References

   [tbss]     Aljazzaf, Z., "Trust-Based Service Selection",
              December 2011, <http://ir.lib.uwo.ca/cgi/
              viewcontent.cgi?article=1478&context=etd>.

   [ws-trust]
              "WS-Trust 1.3: OASIS Standard", March 2007, <http://
              docs.oasis-open.org/ws-sx/ws-trust/200512/
              ws-trust-1.3-os.html>.

   [samlgloss]
              "Glossary for the OASIS Security Assertion Markup Language
              (SAML) V2.0", March 2005, <https://www.oasis-open.org/
              committees/download.php/21111/saml-glossary-2.0-os.html>.

   [RFC4949]  Shirey, R., "Internet Security Glossary, Version 2",
              RFC 4949, August 2007.

   [RFC5246]  Dierks, T. and E. Rescorla, "The Transport Layer Security
              (TLS) Protocol Version 1.2", RFC 5246, August 2008.

   [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.

   [RFC5386]  Williams, N. and M. Richardson, "Better-Than-Nothing
              Security: An Unauthenticated Mode of IPsec", RFC 5386,
              November 2008.

   [RFC5914]  Housley, R., Ashmore, S., and C. Wallace, "Trust Anchor
              Format", RFC 5914, June 2010.

   [RFC5934]  Housley, R., Ashmore, S., and C. Wallace, "Trust Anchor
              Management Protocol (TAMP)", RFC 5934, August 2010.

   [RFC6024]  Reddy, R. and C. Wallace, "Trust Anchor Management
              Requirements", RFC 6024, October 2010.

   [RFC6407]  Weis, B., Rowles, S., and T. Hardjono, "The Group Domain
              of Interpretation", RFC 6407, October 2011.

   [1]  <http://www.identitywoman.net/
        the-trouble-with-trust-the-case-for-accountability-frameworks>

   [2]  <http://www.nist.gov/nstic/>




Shore & O'Donoghue       Expires August 29, 2013               [Page 14]

Internet-Draft         Problem Statement on Trust          February 2013


   [3]  <http://oauth.net/>


















































Shore & O'Donoghue       Expires August 29, 2013               [Page 15]

Internet-Draft         Problem Statement on Trust          February 2013


Authors' Addresses

   Melinda Shore
   No Mountain Software
   PO Box 16271
   Two Rivers, AK  99716
   US

   Phone: +1 907 322 9522
   Email: melinda.shore@nomountain.net


   Karen O'Donoghue
   ISOC
   7167 Goby Lane
   King George, VA
   US

   Email: odonoghue@isoc.org
































Shore & O'Donoghue       Expires August 29, 2013               [Page 16]