summaryrefslogtreecommitdiffstats
path: root/usr.bin/ssh/cipher.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* highly polished whitespace, mostly fixing spaces-for-tab and baddjm2021-04-031-5/+4
| | | | indentation on continuation lines. Prompted by GHPR#185
* Remove the pre-standardization cipher rijndael-cbc@lysator.liu.se.dtucker2020-12-211-3/+1
| | | | | | | | | It is an alias for aes256-cbc which was standardized in RFC4253 (2006), has been deprecated and disabled by default since OpenSSH 7.2 (2016) and was only briefly documented in ssh.1 in 2001. This will reduce the amount of work the cipher/kex regression tests need to do by a little bit. ok markus@ djm@
* make Chacha20-POLY1305 context struct opaque; ok tb@ as part of a largerdjm2020-04-031-8/+10
| | | | diff at a2k20
* spelling errors in comments; no code changedjm2020-03-131-2/+2
| | | | from https://fossies.org/linux/misc/openssh-8.2p1.tar.gz/codespell.html
* change explicit_bzero();free() to freezero()jsg2020-02-261-5/+3
| | | | | | | | While freezero() returns early if the pointer is NULL the tests for NULL in callers are left to avoid warnings about passing an uninitialised size argument across a function boundry. ok deraadt@ djm@
* Make zlib optional. This adds a "ZLIB" build time option that allowsdtucker2020-01-231-1/+12
| | | | | building without zlib compression and associated options. With feedback from markus@, ok djm@
* fixes for !WITH_OPENSSL compilation; ok dtucker@djm2019-09-061-1/+4
|
* hold our collective noses and use the openssl-1.1.x API in OpenSSH;djm2018-09-131-8/+10
| | | | feedback and ok tb@ jsing@ markus@
* Add experimental support for PQC XMSS keys (Extended Hash-Based Signatures)markus2018-02-231-2/+2
| | | | | | | The code is not compiled in by default (see WITH_XMSS in Makefile.inc) Joint work with stefan-lukas_gazdag at genua.eu See https://tools.ietf.org/html/draft-irtf-cfrg-xmss-hash-based-signatures-12 ok djm@
* remove space before tabdjm2018-02-131-3/+3
|
* Remove all guards for calls to OpenSSL free functions - all of thesejsing2018-02-071-7/+4
| | | | | | | | | functions handle NULL, from at least OpenSSL 1.0.1g onwards. Prompted by dtucker@ asking about guards for RSA_free(), when looking at openssh-portable pr#84 on github. ok deraadt@ dtucker@
* avoid unused variable warnings for !WITH_OPENSSL;djm2017-11-031-3/+3
| | | | patch from Marcus Folkesson
* As promised in last release announcement: remove support fordjm2017-05-071-78/+17
| | | | Blowfish, RC4 and CAST ciphers. ok markus@ deraadt@
* another tentacle: cipher_set_key_string() was only ever used for SSHv1djm2017-05-041-23/+1
|
* fixup setting ciphercontext->plaintext (lost in SSHv1 purge), thoughdjm2017-05-011-2/+2
| | | | it isn't really used for much anymore.
* remove SSHv1 ciphers; ok markus@djm2017-04-301-152/+65
|
* unifdef WITH_SSH1djm2017-04-301-19/+1
| | | | ok markus@
* small refactor of cipher.c: make ciphercontext opaque to callersdjm2016-08-031-56/+109
| | | | feedback and ok markus@
* Remove NULL-checks before free().mmcc2015-12-101-3/+2
| | | | ok dtucker@
* make non-OpenSSL aes-ctr work on sshd w/ privsep; ok markus@djm2015-01-141-1/+9
|
* New key API: refactor key-related functions to be more library-like,djm2014-06-241-140/+158
| | | | | | | | | existing API is offered as a set of wrappers. with and ok markus@ Thanks also to Ben Hawkes, David Tomaschik, Ivan Fratric, Matthew Dempsky and Ron Bowes for a detailed review a few months ago.
* make compiling against OpenSSL optional (make OPENSSL=no);markus2014-04-291-4/+78
| | | | | reduces algorithms to curve25519, aes-ctr, chacha, ed25519; allows us to explore further options; with and ok djm
* remove some logging that makes ssh debugging output very verbose;djm2014-02-071-3/+1
| | | | ok markus
* convert memset of potentially-private data to explicit_bzero()djm2014-02-021-4/+4
|
* replace openssl MD5 with our ssh_digest_*; ok djm@markus2014-01-271-8/+6
|
* Add a special case for the DH group size for 3des-cbc, which has andtucker2014-01-251-1/+9
| | | | | | | | effective strength much lower than the key size. This causes problems with some cryptlib implementations, which don't support group sizes larger than 4k but also don't use the largest group size it does support as specified in the RFC. Based on a patch from Petr Lautrbach at Redhat, reduced by me with input from Markus. ok djm@ markus@
* new private key format, bcrypt as KDF by default; details in PROTOCOL.key;markus2013-12-061-9/+9
| | | | feedback and lots help from djm; ok djm@
* correct bzero of chacha20+poly1305 key context. bz#2177 fromdjm2013-12-021-2/+2
| | | | | | Loganaden Velvindron @ AfriNIC Also make it a memset for consistency with the rest of cipher.c
* Add a new protocol 2 transport cipher "chacha20-poly1305@openssh.com"djm2013-11-211-8/+57
| | | | | | | | | | | | | | that combines Daniel Bernstein's ChaCha20 stream cipher and Poly1305 MAC to build an authenticated encryption mode. Inspired by and similar to Adam Langley's proposal for TLS: http://tools.ietf.org/html/draft-agl-tls-chacha20poly1305-03 but differs in layout used for the MAC calculation and the use of a second ChaCha20 instance to separately encrypt packet lengths. Details are in the PROTOCOL.chacha20poly1305 file. Feedback markus@, naddy@; manpage bits Loganden Velvindron @ AfriNIC ok markus@ naddy@
* Output the effective values of Ciphers, MACs and KexAlgorithms whendtucker2013-11-071-4/+4
| | | | the default has not been overridden. ok markus@
* bye, bye xfree(); ok markus@djm2013-05-171-5/+5
|
* add the ability to query supported ciphers, MACs, key type and KEXdjm2013-04-191-16/+39
| | | | | algorithms to ssh. Includes some refactoring of KEX and key type handling to be table-driven; ok markus@
* remove ACSS, now that it is gone from libcrypto toodjm2013-01-261-5/+3
|
* improve error message for integrity failure in AES-GCM modes; ok markus@djm2013-01-121-3/+7
|
* support AES-GCM as defined in RFC 5647 (but with simpler KEX handling)markus2013-01-081-27/+95
| | | | ok and feedback djm@
* use OpenSSL's EVP_aes_{128,192,256}_ctr() API and remove our hand-rollednaddy2012-12-121-14/+6
| | | | counter mode code; ok djm@
* add encrypt-then-mac (EtM) modes to openssh by defining new mac algorithmsmarkus2012-12-111-5/+17
| | | | | | | that change the packet format and compute the MAC over the encrypted message (including the packet size) instead of the plaintext data; these EtM modes are considered more secure and used by default. feedback and ok djm@
* Work around the CPNI-957037 Plaintext Recovery Attack by alwaysmarkus2009-01-261-21/+28
| | | | | | reading 256K of data on packet size or HMAC errors (in CBC mode only). Help, feedback and ok djm@ Feedback from Martin Albrecht and Paterson Kenny
* almost entirely get rid of the culture of ".h files that include .h files"deraadt2006-08-031-2/+3
| | | | | ok djm, sort of ok stevesk makes the pain stop in one easy step
* move #include <string.h> out of includes.hstevesk2006-07-221-3/+5
|
* Put $OpenBSD$ tags back (as comments) to replace the RCSID()s thatdjm2006-03-251-0/+1
| | | | Theo nuked - our scripts to sync -portable need them in the files
* RCSID() can diederaadt2006-03-191-1/+0
|
* spacingdjm2005-07-161-2/+2
|
* make this -Wsign-compare clean; ok avsm@ markus@djm2005-06-171-4/+4
|
* Correctly initialize end of array sentinel; ok djm@dtucker2005-06-091-2/+2
|
* add support for draft-harris-ssh-arcfour-fixes-02 improved arcfour modes;djm2005-05-231-18/+33
| | | | ok markus@
* config option "Ciphers" should be case-sensitive; ok dtucker@djm2005-01-231-4/+6
|
* remove fallback AES support for old OpenSSL, as OpenBSD has had it for manydjm2004-12-221-28/+1
| | | | years now; ok deraadt@
* more s/illegal/invalid/markus2004-07-281-2/+2
|
* spacesderaadt2004-07-111-16/+16
|