simon-git: putty (main): Simon Tatham

Commits to Tartarus hosted VCS tartarus-commits at lists.tartarus.org
Sat Nov 27 11:53:57 GMT 2021


TL;DR:
  44055cd3 Withdraw support for SHA-512-256 in HTTP Digest.

Repository:     https://git.tartarus.org/simon/putty.git
On the web:     https://git.tartarus.org/?p=simon/putty.git
Branch updated: main
Committer:      Simon Tatham <anakin at pobox.com>
Date:           2021-11-27 11:53:57

commit 44055cd36ef0ee7cf9b03d3ff6ec39e51bfa92b6
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=44055cd36ef0ee7cf9b03d3ff6ec39e51bfa92b6;hp=53f7da8ce74e998e9987fddbbd73e6910064e87d
Author: Simon Tatham <anakin at pobox.com>
Date:   Sat Nov 27 11:41:00 2021 +0000

    Withdraw support for SHA-512-256 in HTTP Digest.
    
    I was dubious about it to begin with, when I found that RFC 7616's
    example seemed to be treating it as a 256-bit truncation of SHA-512,
    and not the thing FIPS 180-4 section 6.7 specifies as "SHA-512/256"
    (which also changes the initial hash state). Having failed to get a
    clarifying response from the RFC authors, I had the idea this morning
    of testing other HTTP clients to see what _they_ thought that hash
    function meant, and then at least I could go with an existing
    in-practice consensus.
    
    There is no in-practice consensus. Firefox doesn't support that
    algorithm at all (but they do support SHA-256); wget doesn't support
    anything that RFC 7616 added to the original RFC 2617. But the prize
    for weirdness goes to curl, which does accept the name "SHA-512-256"
    and ... treats it as an alias for SHA-256!
    
    So I think the situation among real clients is too confusing to even
    try to work with, and I'm going to stop adding to it. PuTTY will
    follow Firefox's policy: if a proxy server asks for SHA-256 digests
    we'll happily provide them, but if they ask for SHA-512-256 we'll
    refuse on the grounds that it's not clear enough what it means.

 proxy/cproxy.c        | 12 ++++++--
 proxy/cproxy.h        | 79 ++++++++++++++++++++++++++++++++++++++++++++++++---
 proxy/http.c          | 17 +++++++++--
 proxy/nocproxy.c      |  4 ++-
 test/cryptsuite.py    |  8 ++++++
 test/testcrypt-enum.h |  2 +-
 6 files changed, 111 insertions(+), 11 deletions(-)



More information about the tartarus-commits mailing list