SPAKE Pre-Authentication
draft-ietf-kitten-krb-spake-preauth-08

Document Type Active Internet-Draft (kitten WG)
Last updated 2020-05-26 (latest revision 2020-05-20)
Replaces draft-mccallum-kitten-krb-spake-preauth
Stream IETF
Intended RFC status Proposed Standard
Formats plain text xml pdf htmlized (tools) htmlized bibtex
Reviews
Stream WG state Submitted to IESG for Publication
Document shepherd Nicolás Williams
Shepherd write-up Show (last changed 2019-01-23)
IESG IESG state Waiting for Writeup
Consensus Boilerplate Yes
Telechat date
Responsible AD Benjamin Kaduk
Send notices to Nicolas Williams <nico@cryptonector.com>
IANA IANA review state IANA - Not OK
Internet Engineering Task Force                              N. McCallum
Internet-Draft                                                  S. Sorce
Intended status: Standards Track                              R. Harwood
Expires: November 22, 2020                                 Red Hat, Inc.
                                                               G. Hudson
                                                                     MIT
                                                            May 21, 2020

                        SPAKE Pre-Authentication
                 draft-ietf-kitten-krb-spake-preauth-08

Abstract

   This document defines a new pre-authentication mechanism for the
   Kerberos protocol that uses a password authenticated key exchange.
   This document has three goals.  First, increase the security of
   Kerberos pre-authentication exchanges by making offline brute-force
   attacks infeasible.  Second, enable the use of second factor
   authentication without relying on FAST.  This is achieved using the
   existing trust relationship established by the shared first factor.
   Third, make Kerberos pre-authentication more resilient against time
   synchronization errors by removing the need to transfer an encrypted
   timestamp from the client.

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 https://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 22, 2020.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

McCallum, et al.        Expires November 22, 2020               [Page 1]
Internet-Draft          SPAKE Pre-Authentication                May 2020

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://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  . . . . . . . . . . . . . . . . . . . . . . . .   3
     1.1.  Properties of PAKE  . . . . . . . . . . . . . . . . . . .   3
     1.2.  PAKE Algorithm Selection  . . . . . . . . . . . . . . . .   3
     1.3.  PAKE and Two-Factor Authentication  . . . . . . . . . . .   4
     1.4.  SPAKE Overview  . . . . . . . . . . . . . . . . . . . . .   5
   2.  Document Conventions  . . . . . . . . . . . . . . . . . . . .   5
   3.  Prerequisites . . . . . . . . . . . . . . . . . . . . . . . .   6
     3.1.  PA-ETYPE-INFO2  . . . . . . . . . . . . . . . . . . . . .   6
     3.2.  Cookie Support  . . . . . . . . . . . . . . . . . . . . .   6
     3.3.  More Pre-Authentication Data Required . . . . . . . . . .   6
   4.  SPAKE Pre-Authentication Message Protocol . . . . . . . . . .   6
     4.1.  First Pass  . . . . . . . . . . . . . . . . . . . . . . .   7
     4.2.  Second Pass . . . . . . . . . . . . . . . . . . . . . . .   7
     4.3.  Third Pass  . . . . . . . . . . . . . . . . . . . . . . .   9
     4.4.  Subsequent Passes . . . . . . . . . . . . . . . . . . . .  10
     4.5.  Reply Key Strengthening . . . . . . . . . . . . . . . . .  11
     4.6.  Optimizations . . . . . . . . . . . . . . . . . . . . . .  11
   5.  SPAKE Parameters and Conversions  . . . . . . . . . . . . . .  12
   6.  Transcript Hash . . . . . . . . . . . . . . . . . . . . . . .  12
   7.  Key Derivation  . . . . . . . . . . . . . . . . . . . . . . .  13
   8.  Second Factor Types . . . . . . . . . . . . . . . . . . . . .  14
   9.  Hint for Authentication Sets  . . . . . . . . . . . . . . . .  14
   10. Security Considerations . . . . . . . . . . . . . . . . . . .  15
     10.1.  SPAKE Computations . . . . . . . . . . . . . . . . . . .  15
     10.2.  Unauthenticated Plaintext  . . . . . . . . . . . . . . .  15
     10.3.  Side Channels  . . . . . . . . . . . . . . . . . . . . .  16
     10.4.  KDC State  . . . . . . . . . . . . . . . . . . . . . . .  17
     10.5.  Dictionary Attacks . . . . . . . . . . . . . . . . . . .  17
     10.6.  Brute Force Attacks  . . . . . . . . . . . . . . . . . .  18
     10.7.  Denial of Service Attacks  . . . . . . . . . . . . . . .  18
Show full document text