simon-git: putty (master): Simon Tatham

Commits to Tartarus CVS repository. tartarus-commits at lists.tartarus.org
Fri Aug 21 23:44:33 BST 2015


TL;DR:
  1df12e3 Add copy and free methods to 'struct ssh_hash'.
  42cf086 Add a key-length field to 'struct ssh_mac'.
  e460f30 Remove arbitrary limit SSH2_MKKEY_ITERS.

Repository:     git://git.tartarus.org/simon/putty.git
On the web:     http://tartarus.org/~simon-git/gitweb/?p=putty.git
Branch updated: master
Committer:      Simon Tatham <anakin at pobox.com>
Date:           2015-08-21 23:44:33

commit 1df12e3915bb7713a3122cee27827072077b51f6
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=1df12e3915bb7713a3122cee27827072077b51f6;hp=67629cc0ba99e27ea9da8a65aaa168c81111491d
Author: Simon Tatham <anakin at pobox.com>
Date:   Fri Aug 21 23:13:59 2015 +0100

    Add copy and free methods to 'struct ssh_hash'.
    
    This permits a hash state to be cloned in the middle of being used, so
    that multiple strings with the same prefix can be hashed without
    having to repeat all the computation over the prefix.
    
    Having done that, we'll also sometimes need to free a hash state that
    we aren't generating actual hash output from, so we need a free method
    as well.

 ssh.h      |    2 ++
 sshsh256.c |   24 +++++++++++++++++++++---
 sshsh512.c |   27 +++++++++++++++++++++++----
 sshsha.c   |   23 ++++++++++++++++++++---
 4 files changed, 66 insertions(+), 10 deletions(-)

commit 42cf086b6bdf05e2d48504508fb4849c11e60298
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=42cf086b6bdf05e2d48504508fb4849c11e60298;hp=1df12e3915bb7713a3122cee27827072077b51f6
Author: Simon Tatham <anakin at pobox.com>
Date:   Fri Aug 21 23:20:12 2015 +0100

    Add a key-length field to 'struct ssh_mac'.
    
    The key derivation code has been assuming (though non-critically, as
    it happens) that the size of the MAC output is the same as the size of
    the MAC key. That isn't even a good assumption for the HMAC family,
    due to HMAC-SHA1-96 and also the bug-compatible versions of HMAC-SHA1
    that only use 16 bytes of key material; so now we have an explicit
    key-length field separate from the MAC-length field.

 ssh.c      |    4 ++--
 ssh.h      |    2 +-
 sshccp.c   |    2 +-
 sshmd5.c   |    2 +-
 sshsh256.c |    2 +-
 sshsha.c   |    8 ++++----
 6 files changed, 10 insertions(+), 10 deletions(-)

commit e460f3083112ca29024ec48de2815011afd761ff
web diff http://tartarus.org/~simon-git/gitweb/?p=putty.git;a=commitdiff;h=e460f3083112ca29024ec48de2815011afd761ff;hp=42cf086b6bdf05e2d48504508fb4849c11e60298
Author: Simon Tatham <anakin at pobox.com>
Date:   Fri Aug 21 23:40:16 2015 +0100

    Remove arbitrary limit SSH2_MKKEY_ITERS.
    
    Tim Kosse points out that we now support some combinations of crypto
    primitives which break the hardwired assumption that two blocks of
    hash output from the session-key derivation algorithm are sufficient
    to key every cipher and MAC in the system.
    
    So now ssh2_mkkey is given the desired key length, and performs as
    many iterations as necessary.

 ssh.c |  125 +++++++++++++++++++++++++++++++++++++++++------------------------
 1 file changed, 80 insertions(+), 45 deletions(-)



More information about the tartarus-commits mailing list