Sam Hartman
2018-01-25 18:51:39 UTC
Hi.
I came across the SPAKE preauthentication draft because IANA asked me to
look at it.
I was late and they sent it along to Larry before I could get around to
it.
I like the general approach. I ran into two specific issues, and only
conducted a brief review of the document.
I support having a solution to something along these lines, but I
suspect we're a few revisions away from something solid here.
I have two initial concerns.
First, the draft claims to provide the strengthen reply key facility.
However as far as I can tell from section 8, the draft entirely replaces
the reply key. The strengthen reply key facility is only appropriate if
the original reply key is mixed into the resulting reply key.
This is important because after the reply key has been replaced,
knowledge of the reply key does not imply anything about authentication.
I believe this mechanism provides the replace reply key facility not the
strengthen reply key facility.
I also have concerns about the proposal to make Kerberos checksums
deterministic.
Permitting non-deterministic checksums was an intentional decision
during the development of RFC 3961.
The theoretical basis behind deterministic checksums is dubious at best;
there are a lot safer models for non-deterministic checksums just as
there are better theoretical (and practical) models behind
non-deterministic encription.
During the SHA-3 competition, there was discussion of whether NIST
should look at parameterized/non-deterministic hashing. The conclusion
was not to do so, but at least none of the discussions I saw seemed to
deny the value of non-deterministic hashing.
We revisited this decision yet again when we drafted RFC 6113, and ran
into exactly the same issue that I think drove the authors to want to
change Kerberos checksums: the desire to create an incremental checksum
of the conversation in a manner similar to TLS.
After careful discussion, we abandoned that approach.
It would forbid non-deterministic checksums and would require exporting
partial checksum contexts in KDC cookies.
Even if we're going to revisit that decision again, this document is not
the appropriate place to do so.
That's a significant change to RFC 3961 and an explicit reversal of a
decision that has been reviewed within the community multiple times.
Such a change should be in its own standards track document not combined
with this specification.
Beyond these specific concerns, I'm nervous about the alignment of this
spec and RFC 6113. Doubtless part of that is my involvement in 6113
speaking, and I certainly don't have anything substantiated. I would
request others review for alignment with 6113.
I expect to fully review the document within the next week.
--Sam
I came across the SPAKE preauthentication draft because IANA asked me to
look at it.
I was late and they sent it along to Larry before I could get around to
it.
I like the general approach. I ran into two specific issues, and only
conducted a brief review of the document.
I support having a solution to something along these lines, but I
suspect we're a few revisions away from something solid here.
I have two initial concerns.
First, the draft claims to provide the strengthen reply key facility.
However as far as I can tell from section 8, the draft entirely replaces
the reply key. The strengthen reply key facility is only appropriate if
the original reply key is mixed into the resulting reply key.
This is important because after the reply key has been replaced,
knowledge of the reply key does not imply anything about authentication.
I believe this mechanism provides the replace reply key facility not the
strengthen reply key facility.
I also have concerns about the proposal to make Kerberos checksums
deterministic.
Permitting non-deterministic checksums was an intentional decision
during the development of RFC 3961.
The theoretical basis behind deterministic checksums is dubious at best;
there are a lot safer models for non-deterministic checksums just as
there are better theoretical (and practical) models behind
non-deterministic encription.
During the SHA-3 competition, there was discussion of whether NIST
should look at parameterized/non-deterministic hashing. The conclusion
was not to do so, but at least none of the discussions I saw seemed to
deny the value of non-deterministic hashing.
We revisited this decision yet again when we drafted RFC 6113, and ran
into exactly the same issue that I think drove the authors to want to
change Kerberos checksums: the desire to create an incremental checksum
of the conversation in a manner similar to TLS.
After careful discussion, we abandoned that approach.
It would forbid non-deterministic checksums and would require exporting
partial checksum contexts in KDC cookies.
Even if we're going to revisit that decision again, this document is not
the appropriate place to do so.
That's a significant change to RFC 3961 and an explicit reversal of a
decision that has been reviewed within the community multiple times.
Such a change should be in its own standards track document not combined
with this specification.
Beyond these specific concerns, I'm nervous about the alignment of this
spec and RFC 6113. Doubtless part of that is my involvement in 6113
speaking, and I certainly don't have anything substantiated. I would
request others review for alignment with 6113.
I expect to fully review the document within the next week.
--Sam