Граф коммитов

21 Коммитов

Автор SHA1 Сообщение Дата
Ben Harris fe83afa6ec Enable blowfish-ctr by default. It's been tested and found working.
Thanks to der Mouse for help with the testing.

[originally from svn r5701]
2005-04-28 08:56:03 +00:00
Ben Harris a33339b3f1 In blowfish-ctr mode, increment the counter in the correct order. Thanks to
der Mouse for spotting the same error in my 3des-ctr implementation.

[originally from svn r5700]
2005-04-28 08:24:46 +00:00
Ben Harris f2b0335c48 Now that we've got at least some SDCTR modes working (and aes256-ctr is our
default preferred cipher), add code to inject SSH_MSG_IGNOREs to randomise
the IV when using CBC-mode ciphers.  Each cipher has a flag to indicate
whether it needs this workaround, and the SSH packet output maze has gained
some extra complexity to implement it.

[originally from svn r5659]
2005-04-23 16:22:51 +00:00
Ben Harris 2e761fefaf Ifdef out the actual code supporting 3des-ctr and blowfish-ctr, since GCC
now notices that it isn't used.

[originally from svn r5652]
2005-04-20 22:52:54 +00:00
Ben Harris 5079fcc182 Simon (accidentally, I think) enabled 3des-ctr and blowfish-ctr. Turn them
back off again since they're still untested.

[originally from svn r5651]
2005-04-20 22:47:29 +00:00
Simon Tatham 208213117a Recent CTR mode changes stopped OS X PuTTY from compiling, because
-Werror objects at various static data items being defined but not
used. Ifdef some things out to restore warning-free compilability.

[originally from svn r5640]
2005-04-18 10:01:57 +00:00
Jacob Nevins 6eec320f0b Unify GET_32BIT()/PUT_32BIT() et al from numerous source files into misc.h.
I've done a bit of testing (not exhaustive), and I don't _think_ I've broken
anything...

[originally from svn r5632]
2005-04-12 20:04:56 +00:00
Ben Harris 6023b6c70b Implement SDCTR modes, as defined in the newmodes draft. This adds
aes128-ctr, aes192-ctr, and aes256-ctr.  blowfish-ctr and 3des-ctr are
present but disabled, since I haven't tested them yet.

In addition, change the user-visible names of ciphers (as displayed in the
Event Log) to include the mode name and, in Blowfish's case, the key size.

[originally from svn r5605]
2005-04-06 23:27:08 +00:00
Jacob Nevins 5aa719d16e Consistently use a single notation to refer to SSH protocol versions, as
discussed. Use Barrett and Silverman's convention of "SSH-1" for SSH protocol
version 1 and "SSH-2" for protocol 2 ("SSH1"/"SSH2" refer to ssh.com
implementations in this scheme). <http://www.snailbook.com/terms.html>

[originally from svn r5480]
2005-03-10 16:36:05 +00:00
Simon Tatham d36a4c3685 Introduced wrapper macros snew(), snewn() and sresize() for the
malloc functions, which automatically cast to the same type they're
allocating the size of. Should prevent any future errors involving
mallocing the size of the wrong structure type, and will also make
life easier if we ever need to turn the PuTTY core code from real C
into C++-friendly C. I haven't touched the Mac frontend in this
checkin because I couldn't compile or test it.

[originally from svn r3014]
2003-03-29 16:14:26 +00:00
Simon Tatham 9848062b86 SSH ciphers now use dynamically allocated contexts.
[originally from svn r2130]
2002-10-25 12:35:22 +00:00
Simon Tatham 3730ada5ce Run entire source base through GNU indent to tidy up the varying
coding styles of the various contributors! Woohoo!

[originally from svn r1098]
2001-05-06 14:35:20 +00:00
Simon Tatham 28b1fc766c Preliminary support for RSA user authentication in SSH2! Most of the
error messages are currently wrong, and Pageant doesn't yet support
the new key type, and I haven't thoroughly tested that falling back
to password authentication and trying invalid keys etc all work. But
what I have here has successfully performed a public key
authentication, so it's working to at least some extent.

[originally from svn r973]
2001-03-03 11:54:34 +00:00
Simon Tatham b182356f99 Support for selecting AES from the GUI. In the process, I've had to
introduce another layer of abstraction in SSH2 ciphers, such that a
single `logical cipher' (as desired by a user) can equate to more
than one `physical cipher'. This is because AES comes in several key
lengths (PuTTY will pick the highest supported by the remote end)
and several different SSH2-protocol-level names (aes*-cbc,
rijndael*-cbc, and an unofficial one rijndael-cbc@lysator.liu.se).

[originally from svn r967]
2001-03-02 13:55:23 +00:00
Simon Tatham 862d6a496d Add a key length indication to each SSH2 cipher structure, in
preparation for needing to know how much key material each cipher
needs in order to select a suitable Diffie-Hellman group.

[originally from svn r961]
2001-03-01 17:45:31 +00:00
Simon Tatham ea8d61f2d9 Fix Blowfish-with-SSH2 combination, and enable user cipher
selection for SSH2

[originally from svn r606]
2000-09-20 15:15:02 +00:00
Simon Tatham 36a499a7f1 Second attempt. Can successfully decrypt the _first block_ of a packet.
[originally from svn r570]
2000-09-05 16:23:36 +00:00
Simon Tatham 35205e5cb7 SSH 2 support, phase 1, debugging. Currently does Diffie-Hellman and gets
the same results as the server, which is a pretty good start.

[originally from svn r569]
2000-09-05 14:28:17 +00:00
Simon Tatham f60f25a35a Tidy up Blowfish S- and P-boxes: make them static and const, and
clean up the declarations a bit :-)

[originally from svn r431]
2000-03-31 13:33:37 +00:00
Simon Tatham f6c63320ea Changes from executor:
- NetHack keypad mode (Shift only works with NumLock off)
 - Alt-Space handling (best I could manage; not too bad considering)
 - Event Log rather than Telnet Negotiation Log

[originally from svn r284]
1999-11-09 11:10:04 +00:00
Simon Tatham 59135fd9ea Blowfish patch, second attempt
[originally from svn r178]
1999-07-07 17:33:34 +00:00