Subject: [http-auth] I-D Action: draft-ietf-httpauth-scram-auth-09.txt

From: [email-masked]
Date: Fri, 13 Nov 2015 07:44:17 -0800

A New Internet-Draft is available from the on-line Internet-Drafts directories.
 This draft is a work item of the Hypertext Transfer Protocol Authentication Working Group of the IETF.

        Title           : Salted Challenge Response (SCRAM) HTTP Authentication Mechanism
        Author          : Alexey Melnikov
	Filename        : draft-ietf-httpauth-scram-auth-09.txt
	Pages           : 17
	Date            : 2015-11-13

Abstract:
   The secure authentication mechanism most widely deployed and used by
   Internet application protocols is the transmission of clear-text
   passwords over a channel protected by Transport Layer Security (TLS).
   There are some significant security concerns with that mechanism,
   which could be addressed by the use of a challenge response
   authentication mechanism protected by TLS.  Unfortunately, the HTTP
   Digest challenge response mechanism presently on the standards track
   failed widespread deployment, and have had success only in limited
   use.

   This specification describes a family of HTTP authentication
   mechanisms called the Salted Challenge Response Authentication
   Mechanism (SCRAM), which addresses security concerns with HTTP Digest
   and meets the deployability requirements.  When used in combination
   with TLS or an equivalent security layer, a mechanism from this
   family could improve the status-quo for HTTP authentication.

The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-httpauth-scram-auth/

There's also a htmlized version available at:
https://tools.ietf.org/html/draft-ietf-httpauth-scram-auth-09

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-httpauth-scram-auth-09

Please note that it may take a couple of minutes from the time of submission
until the htmlized version and diff are available at tools.ietf.org.

Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/

---

From: Alexey Melnikov <[email-masked]>
Date: Fri, 13 Nov 2015 15:49:32 +0000

> https://www.ietf.org/rfcdiff?url2=draft-ietf-httpauth-scram-auth-09
I've updated the draft to address all comments from Tony and Simon.

I discovered that examples were mistakenly saying "SCRAM-SHA-1", where 
they should have said "SCRAM-SHA-256". Oops.

I also added a note saying that SCRAM-SHA-1 is registered, but not 
recommended. I hope this is Ok.

---

From: Tony Hansen <[email-masked]>
Date: Fri, 13 Nov 2015 11:24:54 -0500

> recommended. I hope this is Ok.

Thank you Alexey. It's getting much better. I agree with your direction
on not recommending SHA-1.

There is still a visible [CREF] within section 5.1:

   [[CREF1: Should some counter be added
   to make "sr" unique for each reauth?]]

Some minor grammar nits in 8 Security:

change
   ...  SCRAM
   allows to increase the iteration count over time in order to slow
   down the above attacks.  ...  An external security layer with
   strong encryption will prevent these attack.

to
   ...  SCRAM
   allows the server to increase the iteration count over time in order to slow
   down the above attacks.  ...  An external security layer with
   strong encryption will prevent these attacks.

---

From: Tony Hansen <[email-masked]>
Date: Fri, 13 Nov 2015 13:24:32 -0500

On 11/13/15 11:24 AM, Tony Hansen wrote:
> Thank you Alexey.

One more nit:

         Note that version of SCRAM doesn't support HTTP channel
         bindings, so this header always starts with "n", otherwise the
         message is invalid and authentication MUST fail.

should have a semi-colon:

         Note that version of SCRAM doesn't support HTTP channel
         bindings, so this header always starts with "n"; otherwise the
         message is invalid and authentication MUST fail.

---

From: Martin J. Dürst <[email-masked]>
Date: Sat, 14 Nov 2015 09:59:17 +0900

I think further wording improvement is needed.

>           message is invalid and authentication MUST fail.

The second word, "that", seems to do double duty, both in "Note that" 
and "that version of SCRAM". This doesn't parse. Possible solutions:

           Note that this version of SCRAM doesn't support HTTP channel
           bindings, so this header always starts with "n"; otherwise the
           message is invalid and authentication MUST fail.
or

           Note that SCRAM-SHA-256 doesn't support HTTP channel
           bindings, so this header always starts with "n"; otherwise the
           message is invalid and authentication MUST fail.

Regards,   Martin.

---

From: Tony Hansen <[email-masked]>
Date: Fri, 13 Nov 2015 20:45:57 -0500

>           message is invalid and authentication MUST fail.

SCRAM-SHA-256 does support HTTP channel bindings, so the latter is
clearly wrong.

I would go with your first suggestion.

    Tony

---

From: Alexey Melnikov <[email-masked]>
Date: Sat, 14 Nov 2015 12:16:03 +0000

Hi Martin,

> On 14 Nov 2015, at 00:59, Martin J. Dürst <[email-masked]> wrote:
> 
> The second word, "that", seems to do double duty, both in "Note that" and "that version of SCRAM". This doesn't parse.

Thank you for pointing this out.

> Possible solutions:

As per Tony's response, I will go with the above version.