Dr. Stephen Henson
f9e3146392
remove unused method declaration
...
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 14:00:21 +00:00
Dr. Stephen Henson
d5ec8efc70
Add leak detection, fix leaks.
...
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 13:28:50 +00:00
Dr. Stephen Henson
b9d4e97c87
Add EVP_PKEY test data.
...
Add some EVP_PKEY test data for sign and verify tests including
failure cases.
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 13:28:50 +00:00
Dr. Stephen Henson
5824cc2981
EVP_PKEY support for evp_test
...
Add two new keywords "PublicKey" and "PrivateKey". These will load a key
in PEM format from the lines immediately following the keyword and assign
it a name according to the value. These will be used later for public and
private key testing operations.
Add tests for Sign, Verify, VerifyRecover and Decrypt.
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 13:28:50 +00:00
Dr. Stephen Henson
16cb8eb013
Add CMAC test data.
...
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 13:28:50 +00:00
Dr. Stephen Henson
b8c792dc43
Add HMAC test data.
...
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 13:28:50 +00:00
Dr. Stephen Henson
83251f397b
MAC support for evp_test
...
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 13:28:50 +00:00
Dr. Stephen Henson
eff1a4d24f
New macro to set mac key.
...
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 13:28:50 +00:00
Dr. Stephen Henson
6906a7c1a3
Return error code is any tests fail.
...
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-13 13:28:50 +00:00
Andy Polyakov
2b8f33a574
evp/evp.h: add missing camellia-ctr declarations.
...
Reviewed-by: Matt Caswell <matt@openssl.org>
2015-02-12 19:26:37 +01:00
Andy Polyakov
dda8199922
Add Camellia CTR mode.
...
Reviewed-by: Rich Salz <rsalz@openssl.org>
2015-02-11 20:30:13 +01:00
Dr. Stephen Henson
b033e5d5ab
New evp_test updates.
...
Print usage message.
Print expected and got values if mismatch.
Reviewed-by: Andy Polyakov <appro@openssl.org>
2015-02-10 16:18:05 +00:00
Dr. Stephen Henson
7303b472f1
Add new test file.
...
Reviewed-by: Andy Polyakov <appro@openssl.org>
2015-02-10 16:18:05 +00:00
Dr. Stephen Henson
307e3978b9
Initial version of new evp_test program.
...
Reviewed-by: Andy Polyakov <appro@openssl.org>
2015-02-10 16:18:05 +00:00
Dr. Stephen Henson
d6c5462ef8
Support for alternative KDFs.
...
Don't hard code NID_id_pbkdf2 in PBES2: look it up in PBE table.
Reviewed-by: Andy Polyakov <appro@openssl.org>
2015-02-09 16:14:04 +00:00
Andy Polyakov
bdc985b133
evp/e_aes.c: fix pair of SPARC T4-specific problems:
...
- SIGSEGV/ILL in CCM (RT#3688);
- SIGBUS in OCB;
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-02-09 10:26:20 +01:00
Rich Salz
05c3234ddf
ui_compat cleanup; makefiles and vms
...
Remove ui_compat.h from Makefile dependencies
And from two VMS build/install scripts.
Reviewed-by: Matt Caswell <matt@openssl.org>
2015-02-06 16:49:17 -05:00
Dr. Stephen Henson
a283d2a80a
Remove OPENSSL_NO_HMAC
...
Disabling HMAC doesn't work. If it did it would end up disabling a lot of
OpenSSL functionality (it is required for all versions of TLS for example).
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-06 12:16:58 +00:00
Rich Salz
24956ca00f
Remove old DES API
...
Includes VMS fixes from Richard.
Includes Kurt's destest fixes (RT 1290).
Closes tickets 1290 and 1291
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-02 18:46:01 -05:00
Rich Salz
fd22ab9edf
Dead code: if 0 removal from crypto/evp and an unused file.
...
Reviewed-by: Andy Polyakov <appro@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-02 16:53:54 -05:00
Rich Salz
9ccc00ef6e
Dead code cleanup: #if 0 dropped from tests
...
Reviewed-by: Andy Polyakov <appro@openssl.org>
2015-02-02 11:11:34 -05:00
Richard Levitte
c6ef15c494
clang on Linux x86_64 complains about unreachable code.
...
Reviewed-by: Rich Salz <rsalz@openssl.org>
2015-01-29 01:54:09 +01:00
Rich Salz
625a9baf11
Finish removal of DSS
...
Reviewed-by: Matt Caswell <matt@openssl.org>
2015-01-28 12:21:55 -05:00
Matt Caswell
488ede07bd
Rationalise testing of AEAD modes
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-28 10:39:07 +00:00
Matt Caswell
e640fa0200
Harmonise use of EVP_CTRL_GET_TAG/EVP_CTRL_SET_TAG/EVP_CTRL_SET_IVLEN
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-28 10:39:01 +00:00
Matt Caswell
d57d135c33
Replace EVP_CTRL_OCB_SET_TAGLEN with EVP_CTRL_SET_TAG for consistency with
...
CCM
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-28 10:38:38 +00:00
Rich Salz
1a5adcfb5e
"#if 0" removal: header files
...
Remove all "#if 0" blocks from header files.
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-27 17:44:12 -05:00
Rich Salz
474e469bbd
OPENSSL_NO_xxx cleanup: SHA
...
Remove support for SHA0 and DSS0 (they were broken), and remove
the ability to attempt to build without SHA (it didn't work).
For simplicity, remove the option of not building various SHA algorithms;
you could argue that SHA_224/256/384/512 should be kept, since they're
like crypto algorithms, but I decided to go the other way.
So these options are gone:
GENUINE_DSA OPENSSL_NO_SHA0
OPENSSL_NO_SHA OPENSSL_NO_SHA1
OPENSSL_NO_SHA224 OPENSSL_NO_SHA256
OPENSSL_NO_SHA384 OPENSSL_NO_SHA512
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-01-27 12:34:45 -05:00
Rich Salz
a00ae6c46e
OPENSSL_NO_xxx cleanup: many removals
...
The following compile options (#ifdef's) are removed:
OPENSSL_NO_BIO OPENSSL_NO_BUFFER OPENSSL_NO_CHAIN_VERIFY
OPENSSL_NO_EVP OPENSSL_NO_FIPS_ERR OPENSSL_NO_HASH_COMP
OPENSSL_NO_LHASH OPENSSL_NO_OBJECT OPENSSL_NO_SPEED OPENSSL_NO_STACK
OPENSSL_NO_X509 OPENSSL_NO_X509_VERIFY
This diff is big because of updating the indents on preprocessor lines.
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-01-27 10:06:22 -05:00
Rich Salz
a2b18e657e
ifdef cleanup, part 4a: '#ifdef undef'
...
This removes all code surrounded by '#ifdef undef'
One case is left: memmove() replaced by open-coded for loop,
in crypto/stack/stack.c That needs further review.
Also removed a couple of instances of /* dead code */ if I saw them
while doing the main removal.
Reviewed-by: Matt Caswell <matt@openssl.org>
2015-01-24 10:58:38 -05:00
Matt Caswell
0f113f3ee4
Run util/openssl-format-source -v -c .
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-22 09:20:09 +00:00
Matt Caswell
68d39f3ce6
Move more comments that confuse indent
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-22 09:20:09 +00:00
Matt Caswell
b853717fc4
Fix strange formatting by indent
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-22 09:20:08 +00:00
Matt Caswell
dbd87ffc21
indent has problems with comments that are on the right hand side of a line.
...
Sometimes it fails to format them very well, and sometimes it corrupts them!
This commit moves some particularly problematic ones.
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-22 09:20:08 +00:00
Rich Salz
4b618848f9
Cleanup OPENSSL_NO_xxx, part 1
...
OPENSSL_NO_RIPEMD160, OPENSSL_NO_RIPEMD merged into OPENSSL_NO_RMD160
OPENSSL_NO_FP_API merged into OPENSSL_NO_STDIO
Two typo's on #endif comments fixed:
OPENSSL_NO_ECB fixed to OPENSSL_NO_OCB
OPENSSL_NO_HW_SureWare fixed to OPENSSL_NO_HW_SUREWARE
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-01-14 15:57:28 -05:00
Andy Polyakov
c1669e1c20
Remove inconsistency in ARM support.
...
This facilitates "universal" builds, ones that target multiple
architectures, e.g. ARMv5 through ARMv7. See commentary in
Configure for details.
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
2015-01-04 23:45:08 +01:00
Tim Hudson
1d97c84351
mark all block comments that need format preserving so that
...
indent will not alter them when reformatting comments
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
2014-12-30 22:10:26 +00:00
Emilia Kasper
03af843039
Add a comment noting the padding oracle.
...
Reviewed-by: Andy Polyakov <appro@openssl.org>
2014-12-17 14:55:04 +01:00
Emilia Kasper
4ad2d3ac0e
Revert "RT3425: constant-time evp_enc"
...
Causes more problems than it fixes: even though error codes
are not part of the stable API, several users rely on the
specific error code, and the change breaks them. Conversely,
we don't have any concrete use-cases for constant-time behaviour here.
This reverts commit 4aac102f75
.
Reviewed-by: Andy Polyakov <appro@openssl.org>
2014-12-17 14:54:17 +01:00
Richard Levitte
3ddb2914b5
Clear warnings/errors within KSSL_DEBUG code sections
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-17 10:15:09 +01:00
Matt Caswell
68c29f61a4
Implement internally opaque bn access from evp
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 21:40:52 +00:00
Matt Caswell
85bcf27ccc
Prepare for bn opaquify. Implement internal helper functions.
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 21:40:12 +00:00
Dr. Stephen Henson
73e45b2dd1
remove OPENSSL_FIPSAPI
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 13:25:38 +00:00
Dr. Stephen Henson
916e56208b
remove FIPS module code from crypto/evp
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 13:25:38 +00:00
Dr. Stephen Henson
f072785eb4
Remove fipscanister build functionality from makefiles.
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 13:23:45 +00:00
Matt Caswell
3feb63054a
Added OPENSSL_NO_OCB guards
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 10:29:03 +00:00
Matt Caswell
d827c5edb5
Add tests for OCB mode
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 10:28:47 +00:00
Matt Caswell
e6b336efa3
Add EVP support for OCB mode
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 10:28:34 +00:00
Kurt Roeckx
45f55f6a5b
Remove SSLv2 support
...
The only support for SSLv2 left is receiving a SSLv2 compatible client hello.
Reviewed-by: Richard Levitte <levitte@openssl.org>
2014-12-04 11:55:03 +01:00
Rich Salz
8cfe08b4ec
Remove all .cvsignore files
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-11-28 18:32:43 -05:00
Richard Levitte
7f09a8773b
Include "constant_time_locl.h" rather than "../constant_time_locl.h".
...
The different -I compiler parameters will take care of the rest...
Reviewed-by: Tim Hudson <tjh@openssl.org>
Conflicts:
crypto/evp/evp_enc.c
crypto/rsa/rsa_oaep.c
crypto/rsa/rsa_pk1.c
2014-10-15 17:00:06 +02:00
Emilia Kasper
4aac102f75
RT3425: constant-time evp_enc
...
Do the final padding check in EVP_DecryptFinal_ex in constant time to
avoid a timing leak from padding failure.
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-09-24 16:19:18 +02:00
Emilia Kasper
da92be4d68
Fix build when BSAES_ASM is defined but VPAES_ASM is not
...
Reviewed-by: Andy Polyakov <appro@openssl.org>
2014-08-21 15:42:57 +02:00
Andy Polyakov
2893a302a9
crypto/evp/e_aes_cbc_hmac_sha[1|256].c: fix compiler warnings.
...
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2014-08-20 22:18:14 +02:00
Justin Blanchard
f756fb430e
RT1815: More const'ness improvements
...
Add a dozen more const declarations where appropriate.
These are from Justin; while adding his patch, I noticed
ASN1_BIT_STRING_check could be fixed, too.
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2014-08-18 11:49:16 -04:00
Jonas Maebe
6f77f82bfc
dev_crypto_md5_copy: return error if allocating to_md->data fails
...
Signed-off-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-08-17 18:52:30 +02:00
Jonas Maebe
771e0c6c7a
dev_crypto_md5_update: check result of realloc(md_data->data) and don't leak memory if it fails
...
Signed-off-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-08-17 18:52:14 +02:00
Jonas Maebe
d8513b4abd
dev_crypto_cipher: return immediately if allocating cin/cout failed
...
Signed-off-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-08-17 18:51:35 +02:00
Jonas Maebe
c84029dbdc
dev_crypto_init_key: return error if allocating CDATA(ctx)->key failed
...
Signed-off-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-08-17 18:51:16 +02:00
Emilia Kasper
f0ca9ccaef
make depend
...
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2014-08-14 15:24:58 +02:00
Andy Polyakov
0e716d9207
Engage GHASH for PowerISA 2.0.7.
...
[and split ppccap.c to ppccap.c and ppc_arch.h]
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-20 14:16:31 +02:00
Dr. Stephen Henson
d31fed73e2
RFC 5649 support.
...
Add support for RFC5649 key wrapping with padding.
Add RFC5649 tests to evptests.txt
Based on PR#3434 contribution by Petr Spacek <pspacek@redhat.com>.
EVP support and minor changes added by Stephen Henson.
Doxygen comment block updates by Tim Hudson.
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-18 21:37:13 +01:00
Dr. Stephen Henson
58f4698f67
Make *Final work for key wrap again.
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-17 23:29:14 +01:00
Dr. Stephen Henson
d12eef1501
Sanity check lengths for AES wrap algorithm.
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-17 12:57:40 +01:00
Ben Laurie
6835f572a9
Reduce casting nastiness.
2014-07-05 15:00:53 +01:00
Dr. Stephen Henson
0d263d2acf
Test copying of contexts in evp_test.
...
Test EVP_CIPHER_CTX_copy in evp_test. This will catch any
problems with copying in underlying ciphers.
2014-07-01 12:01:51 +01:00
Ben Laurie
e3ba6a5f83
Make depend.
2014-06-30 16:03:29 +01:00
Dr. Stephen Henson
c2fd5d79ff
Fix copy for CCM, GCM and XTS.
...
Internal pointers in CCM, GCM and XTS contexts should either be
NULL or set to point to the appropriate key schedule. This needs
to be adjusted when copying contexts.
2014-06-30 12:57:29 +01:00
ZNV
370bf1d708
Make EVP_CIPHER_CTX_copy work in GCM mode.
...
PR#3272
2014-06-29 22:01:28 +01:00
Dr. Stephen Henson
59deb33cbe
Fix for EVP_PBE_alg_add().
...
In EVP_PBE_alg_add don't use the underlying NID for the cipher
as it may have a non-standard key size.
PR#3206
2014-06-27 23:19:39 +01:00
Felix Laurie von Massenbach
50cc4f7b3d
Fix signed/unsigned comparisons.
2014-06-17 17:41:46 +01:00
Felix Laurie von Massenbach
1f61d8b5b1
Fix shadow declaration.
2014-06-17 17:41:46 +01:00
Andy Polyakov
764fe518da
aesp8-ppc.pl: add CTR mode.
2014-06-16 08:05:19 +02:00
Andy Polyakov
ce00c64df9
evp/e_aes_cbc_sha[1|256].c: fix -DPEDANTIC build.
2014-06-14 23:15:39 +02:00
Andy Polyakov
53a224bb0a
evp/e_aes.c: add erroneously omitted break;
2014-06-04 08:33:06 +02:00
Andy Polyakov
030a3f9527
evp/e_aes.c: populate HWAES_* to remaning modes.
...
Submitted by: Ard Biesheuvel.
2014-06-02 21:48:02 +02:00
Andy Polyakov
de51e830a6
Engage POWER8 AES support.
2014-06-01 23:38:11 +02:00
Andy Polyakov
ddacb8f27b
Engage ARMv8 AES support.
2014-06-01 22:20:37 +02:00
Ben Laurie
ba4477d649
Make it build.
...
Closes #31 .
2014-05-25 17:35:04 +01:00
Christian Heimes
56431240ae
add test case to makefiles
2014-05-25 17:35:04 +01:00
Christian Heimes
4d4a535dcf
Implement tests for PKCS#5 PBKDF2 HMAC
2014-05-25 17:35:04 +01:00
Geoff Thorpe
fce3821111
evp: prevent underflow in base64 decoding
...
This patch resolves RT ticket #2608 .
Thanks to Robert Dugal for originally spotting this, and to David
Ramos for noticing that the ball had been dropped.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
2014-05-06 17:52:19 -04:00
Dr. Stephen Henson
3ba1e406c2
Initialize num properly.
...
PR#3289
PR#3345
2014-05-06 14:07:37 +01:00
Eric Young
10378fb5f4
Fix base64 decoding bug.
...
A short PEM encoded sequence if passed to the BIO, and the file
had 2 \n following would fail.
PR#3289
2014-04-02 19:54:27 +01:00
Dr. Stephen Henson
2514fa79ac
Add functions returning security bits.
...
Add functions to return the "bits of security" for various public key
algorithms. Based on SP800-57.
2014-03-28 14:49:04 +00:00
Dr. Stephen Henson
4cfeb00be9
make depend
2014-02-19 20:09:08 +00:00
Andy Polyakov
701134320a
ssl/s3_pkt.c: detect RAND_bytes error in multi-block.
2014-02-14 17:43:31 +01:00
Andy Polyakov
9587429fa0
evp/e_aes_cbc_hmac_sha*.c: improve cache locality.
2014-02-13 14:39:55 +01:00
Andy Polyakov
5a42c8f07f
e_aes_cbc_hmac_sha[1|256].c: fix compiler warning.
2014-02-05 16:38:22 +01:00
Andy Polyakov
0d5096fbd6
evp/e_aes_cbc_hmac_sha*.c: additional CTRL to query buffer requirements.
2014-02-05 14:05:08 +01:00
Andy Polyakov
2f3af3dc36
aesni-sha1-x86_64.pl: add stiched decrypt procedure,
...
but keep it disabled, too little gain... Add some Atom-specific
optimization.
2014-01-03 21:40:08 +01:00
Dr. Stephen Henson
560b34f2b0
Ignore NULL parameter in EVP_MD_CTX_destroy.
...
(cherry picked from commit a6c62f0c25
)
2013-12-20 23:32:25 +00:00
Andy Polyakov
e9c80e04c1
evp/e_[aes|camellia].c: fix typo in CBC subroutine.
...
It worked because it was never called.
2013-12-18 21:42:46 +01:00
Andy Polyakov
f0f4b8f126
PPC assembly pack update addendum.
2013-12-18 21:39:15 +01:00
Andy Polyakov
07f3e4f3f9
Take vpaes-ppc module into loop.
2013-11-27 22:39:13 +01:00
Dr. Stephen Henson
0f7fa1b190
Constify.
...
(cherry picked from commit 1abfa78a8b
)
2013-11-14 21:05:36 +00:00
Dr. Stephen Henson
afa23c46d9
Flag to disable automatic copying of contexts.
...
Some functions such as EVP_VerifyFinal only finalise a copy of the passed
context in case an application wants to digest more data. Doing this when
it is not needed is inefficient and many applications don't require it.
For compatibility the default is to still finalise a copy unless the
flag EVP_MD_CTX_FLAG_FINALISE is set in which case the passed
context is finalised an *no* further data can be digested after
finalisation.
2013-11-13 23:48:35 +00:00
Andy Polyakov
d1cf23ac86
Make Makefiles OSF-make-friendly.
...
PR: 3165
2013-11-12 21:51:37 +01:00
Dr. Stephen Henson
16bc45ba95
Fix memory leak.
2013-11-11 22:39:40 +00:00
Dr. Stephen Henson
b0513fd2bb
Initialise context before using it.
...
(cherry picked from commit a4947e4e06
)
2013-11-06 13:19:13 +00:00
Ben Laurie
c10e3f0cff
PBKDF2 should be efficient. Contributed by Christian Heimes
...
<christian@python.org>.
2013-11-03 17:23:50 +00:00
Andy Polyakov
b4f0abd246
evp/e_aes_cbc_hmac_sha*.c: limit multi-block fragmentation to 1KB.
...
Excessive fragmentation put additional burden (of addtional MAC
calculations) on the other size and limiting fragments it to 1KB
limits the overhead to ~6%.
2013-10-12 22:10:28 +02:00
Andy Polyakov
a69c0a1be5
evp/e_aes_cbc_hmac_sha*.c: harmonize names, fix bugs.
2013-10-08 23:39:26 +02:00
Andy Polyakov
b1de640f03
evp/evp.h: add multi-block contstants and parameter type.
2013-10-08 23:38:05 +02:00
Andy Polyakov
524b00c0da
evp/e_des3.c: fix typo with potential integer overflow on 32-bit platforms.
...
Submitted by: Yuriy Kaminskiy
2013-10-03 10:55:49 +02:00
Andy Polyakov
7f893258f6
evp/e_aes_cbc_hmac_sha*.c: multi-block glue code.
2013-10-03 00:24:03 +02:00
Andy Polyakov
5f487e0317
evp/e_aes_cbc_hmac_sha256.c: enable is on all AES-NI platforms, not only on AVX.
2013-10-03 00:16:51 +02:00
Ard Biesheuvel
a2ea9f3ecc
Added support for ARM/NEON based bit sliced AES in XTS mode
...
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2013-09-15 19:37:16 +02:00
Veres Lajos
478b50cf67
misspellings fixes by https://github.com/vlajos/misspell_fixer
2013-09-05 21:39:42 +01:00
Dr. Stephen Henson
e61f5d55bc
Algorithm parameter support.
...
Check and set AlgorithmIdenfier parameters for key wrap algorithms.
Currently these just set parameters to NULL.
2013-08-05 15:45:00 +01:00
Andy Polyakov
a59f436295
crypto/evp/e_aes.c: fix logical pre-processor bug and formatting.
...
Bug would emerge when XTS is added to bsaes-armv7.pl. Pointed out by
Ard Biesheuvel of Linaro.
2013-08-03 17:09:06 +02:00
Dr. Stephen Henson
17c2764d2e
CMS support for key agreeement recipient info.
...
Add hooks to support key agreement recipient info type (KARI) using
algorithm specific code in the relevant public key ASN1 method.
2013-07-17 21:45:00 +01:00
Dr. Stephen Henson
97cf1f6c28
EVP support for wrapping algorithms.
...
Add support for key wrap algorithms via EVP interface.
Generalise AES wrap algorithm and add to modes, making existing
AES wrap algorithm a special case.
Move test code to evptests.txt
2013-07-17 21:45:00 +01:00
Dr. Stephen Henson
810639536c
Add control to retrieve signature MD.
2013-06-21 21:33:00 +01:00
Dr. Stephen Henson
965e06da3c
Typo.
2013-06-12 18:47:28 +01:00
Ben Laurie
5dcd2deb3e
Remove added ;.
2013-06-04 17:27:18 +01:00
Ben Laurie
b25b8417a7
Missing prototypes.
2013-06-04 16:34:45 +01:00
Andy Polyakov
8a97a33063
Add AES-SHA256 stitch.
2013-05-13 22:49:58 +02:00
Andy Polyakov
9575d1a91a
bsaes-armv7.pl: add bsaes_cbc_encrypt and bsaes_ctr32_encrypt_blocks.
...
Submitted by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Contributor claims ~50% improvement in CTR and ~9% in CBC decrypt
on Cortex-A15.
2013-04-23 17:52:14 +02:00
Ben Laurie
282a480a35
Fix warnings.
2013-04-06 15:08:44 +01:00
Andy Polyakov
a42abde699
e_aes.c: reserve for future extensions.
2013-04-04 15:55:49 +02:00
Andy Polyakov
c9a8e3d1c7
evptests.txt: add XTS test vectors
2013-04-04 15:53:01 +02:00
Andy Polyakov
c5d975a743
Add support for SPARC T4 DES opcode.
2013-03-31 14:32:05 +02:00
Andy Polyakov
4e049c5259
Add AES-NI GCM stitch.
2013-03-29 20:45:33 +01:00
Andy Polyakov
5c60046553
e_aes_cbc_hmac_sha1.c: fix rare bad record mac on AES-NI plaforms.
...
PR: 3002
2013-03-18 19:29:41 +01:00
Andy Polyakov
ca303d333b
evptests.txt: additional GCM test vectors.
2013-03-06 19:24:05 +01:00
Dr. Stephen Henson
15652f9825
GCM and CCM test support
...
Add code to support GCM an CCM modes in evp_test. On encrypt this
will compare the expected ciphertext and tag. On decrypt it will
compare the expected plaintext: tag comparison is done internally.
Add a simple CCM test case and convert all tests from crypto/modes/gcm128.c
2013-03-06 16:15:42 +00:00
Dr. Stephen Henson
95248de327
Add CCM ciphers to tables.
2013-03-06 16:15:42 +00:00
Ben Laurie
975dfb1c6c
make depend.
2013-02-21 18:17:38 +00:00
Andy Polyakov
2141e6f30b
e_aes_cbc_hmac_sha1.c: align calculated MAC at cache line.
...
It also ensures that valgring is happy.
2013-02-08 10:31:13 +01:00
Andy Polyakov
1041ab696e
e_aes_cbc_hmac_sha1.c: cleanse temporary copy of HMAC secret.
...
(cherry picked from commit 529d27ea47
)
2013-02-06 14:19:11 +00:00
Andy Polyakov
9970308c88
e_aes_cbc_hmac_sha1.c: address the CBC decrypt timing issues.
...
Address CBC decrypt timing issues and reenable the AESNI+SHA1 stitch.
(cherry picked from commit 125093b59f
)
2013-02-06 14:19:10 +00:00
Ben Laurie
2acc020b77
Make CBC decoding constant time.
...
This patch makes the decoding of SSLv3 and TLS CBC records constant
time. Without this, a timing side-channel can be used to build a padding
oracle and mount Vaudenay's attack.
This patch also disables the stitched AESNI+SHA mode pending a similar
fix to that code.
In order to be easy to backport, this change is implemented in ssl/,
rather than as a generic AEAD mode. In the future this should be changed
around so that HMAC isn't in ssl/, but crypto/ as FIPS expects.
(cherry picked from commit e130841bcc
)
2013-02-06 14:19:07 +00:00
Ben Laurie
a6bbbf2ff5
Make "make depend" work on MacOS out of the box.
2013-01-19 14:14:30 +00:00
Andy Polyakov
cd68694646
AES for SPARC T4: add XTS, reorder subroutines to improve TLB locality.
2012-11-24 21:55:23 +00:00
Dr. Stephen Henson
98a7edf9f0
make depend
2012-11-19 13:18:09 +00:00
Dr. Stephen Henson
7c43ea50fd
correct error function code
2012-11-05 13:34:29 +00:00
Andy Polyakov
7cb81398b7
e_camillia.c: remove copy-n-paste artifact, EVP_CIPH_FLAG_FIPS, and
...
leave comment about CTR mode.
2012-11-05 09:20:41 +00:00
Ben Laurie
5b0e3daf50
Remove unused static function.
2012-11-05 02:01:07 +00:00
Dr. Stephen Henson
057c8a2b9e
fix error code
2012-10-18 16:21:39 +00:00
Dr. Stephen Henson
964eaad78c
Don't require tag before ciphertext in AESGCM mode
2012-10-16 22:46:08 +00:00
Andy Polyakov
4739ccdb39
Add SPARC T4 Camellia support.
...
Submitted by: David Miller
2012-10-11 18:35:18 +00:00
Andy Polyakov
c5f6da54fc
Add SPARC T4 AES support.
...
Submitted by: David Miller
2012-10-06 18:08:09 +00:00
Andy Polyakov
244ed51a0d
e_aes.c: uninitialized variable in aes_ccm_init_key.
...
PR: 2874
Submitted by: Tomas Mraz
2012-09-15 08:45:42 +00:00
Dr. Stephen Henson
44488723de
add missing evp_cnf.c file
2012-07-04 13:15:10 +00:00
Dr. Stephen Henson
ea1d84358b
PR: 2840
...
Reported by: David McCullough <david_mccullough@mcafee.com>
Restore fips configuration module from 0.9.8.
2012-07-03 20:30:40 +00:00
Andy Polyakov
8d1b199d26
Revert random changes from commit#22606.
2012-06-04 22:12:10 +00:00
Ben Laurie
71fa451343
Version skew reduction: trivia (I hope).
2012-06-03 22:00:21 +00:00
Andy Polyakov
8ea92ddd13
e_rc4_hmac_md5.c: last commit was inappropriate for non-x86[_64] platforms.
...
PR: 2792
2012-04-19 20:38:05 +00:00
Dr. Stephen Henson
b214184160
recognise X9.42 DH certificates on servers
2012-04-18 17:03:29 +00:00
Andy Polyakov
6dd9b0fc43
e_rc4_hmac_md5.c: harmonize zero-length fragment handling with
...
e_aes_cbc_hmac_sha1.c (mostly for aesthetic reasons).
2012-04-18 14:55:39 +00:00
Andy Polyakov
e36f6b9cfa
e_rc4_hmac_md5.c: oops, can't use rc4_hmac_md5_cipher on legacy Intel CPUs.
...
PR: 2792
2012-04-18 14:50:28 +00:00
Andy Polyakov
fc90e42c86
e_aes_cbc_hmac_sha1.c: handle zero-length payload and engage empty frag
...
countermeasure.
PR: 2778
2012-04-15 14:14:22 +00:00
Dr. Stephen Henson
751e26cb9b
fix leak
2012-03-22 16:28:07 +00:00
Dr. Stephen Henson
f94cfe6a12
only cleanup ctx if we need to, save ctx flags when we do
2012-02-10 16:55:17 +00:00
Dr. Stephen Henson
afb14cda8c
Initial experimental support for X9.42 DH parameter format to handle
...
RFC5114 parameters and X9.42 DH public and private keys.
2011-12-07 00:32:34 +00:00
Andy Polyakov
77aae9654f
Configure, e_aes.c: allow for XTS assembler implementation.
2011-11-15 12:18:40 +00:00
Ben Laurie
ae55176091
Fix some warnings caused by __owur. Temporarily (I hope) remove the more
...
aspirational __owur annotations.
2011-11-14 00:36:10 +00:00
Andy Polyakov
32268b183f
e_aes.c: additional sanity check in aes_xts_cipher.
2011-11-12 13:26:36 +00:00
Andy Polyakov
60d4e99cf3
bsaes-x86_64.pl: add bsaes_xts_[en|de]crypt.
2011-11-10 22:41:31 +00:00
Andy Polyakov
9a480169cd
e_aes.c: fold aesni_xts_cipher and [most importantly] fix aes_xts_cipher's
...
return value after custom flag was rightly reverted.
2011-11-06 19:48:39 +00:00
Andy Polyakov
a75a52a43e
bsaes-x86_64.pl: add CBC decrypt and engage it in e_aes.c.
2011-10-30 12:15:56 +00:00
Andy Polyakov
f2784994ec
e_aes.c: fold even aesni_ccm_cipher.
2011-10-24 06:00:06 +00:00
Andy Polyakov
507b0d9d38
e_aes.c: prevent potential DoS in aes_gcm_tls_cipher.
2011-10-23 22:58:40 +00:00
Dr. Stephen Henson
f59a5d6079
No need for custom flag in XTS mode: block length is 1.
2011-10-23 17:06:28 +00:00
Andy Polyakov
07904e0c6c
evp/e_aes.c: fold AES-NI modes that heavily rely on indirect calls
...
(trade 2% small-block performance), engage bit-sliced AES in GCM.
2011-10-18 13:37:26 +00:00
Andy Polyakov
e2473dcc7d
c_allc.c: add aes-xts to loop.
2011-10-18 07:53:50 +00:00
Andy Polyakov
993adc0531
Engage bsaes-x86_64.pl, bit-sliced AES.
2011-10-17 17:10:54 +00:00
Andy Polyakov
027026df9f
e_aes.c: fix bug in aesni_gcm_tls_cipher.
2011-10-14 09:32:06 +00:00
Bodo Möller
bf6d2f986d
Make CTR mode behaviour consistent with other modes:
...
- clear ctx->num in EVP_CipherInit_ex
- adapt e_eas.c changes from http://cvs.openssl.org/chngview?cn=19816
for eng_aesni.c
Submitted by: Emilia Kasper
2011-10-13 13:41:34 +00:00
Dr. Stephen Henson
3231e42d72
update pkey method initialisation and copy
2011-10-11 18:15:31 +00:00
Dr. Stephen Henson
819cf4b886
Sync error codes with 1.0.1-stable.
2011-09-17 00:17:46 +00:00
Andy Polyakov
8ca28da0a7
Integrate Vector Permutation AES into build system.
2011-09-15 20:22:59 +00:00
Bodo Möller
ae53b299fa
make update
2011-09-05 09:46:15 +00:00
Bodo Möller
f0ecb86666
Fix error codes.
2011-09-05 09:42:34 +00:00
Dr. Stephen Henson
5e92fd244c
Stop warnings.
2011-09-01 14:15:47 +00:00
Dr. Stephen Henson
d77a970669
PR: 2588
...
Submitted by: Thomas Jarosch <thomas.jarosch@intra2net.com>
Reviewed by: steve
Close file pointer.
2011-09-01 13:49:16 +00:00
Dr. Stephen Henson
7daf0efad9
Fix warning.
2011-08-25 19:50:51 +00:00
Andy Polyakov
c608171d9c
Add RC4-MD5 and AESNI-SHA1 "stitched" implementations.
2011-08-23 20:51:38 +00:00
Dr. Stephen Henson
ab1ec69843
aesni TLS GCM support
2011-08-11 23:06:19 +00:00
Dr. Stephen Henson
28dd49faec
Expand range of ctrls for AES GCM to support retrieval and setting of
...
invocation field.
Add complete support for AES GCM ciphersuites including all those in
RFC5288 and RFC5289.
2011-08-03 15:37:22 +00:00
Andy Polyakov
a355cf9bf5
evp.h: add flag to distinguish AEAD ciphers and pair of control codes...
2011-07-11 13:54:53 +00:00
Dr. Stephen Henson
9ebc37e667
add null cipher to FIPS module
2011-06-20 19:48:44 +00:00
Dr. Stephen Henson
bd6386f59c
make sure custom cipher flag doesn't use any mode bits
2011-06-13 23:06:43 +00:00
Dr. Stephen Henson
3096d53b46
Update dependencies for m_dss.c too.
2011-06-10 14:00:02 +00:00
Dr. Stephen Henson
068291cd44
Remove x509.h from SHA1 clone digests, update dependencies.
2011-06-10 13:52:44 +00:00
Andy Polyakov
17f121de9d
e_aes.c: move AES-NI run-time switch and implement the switch for remaining modes.
2011-06-06 11:40:03 +00:00
Dr. Stephen Henson
bce1af7762
Add DSA and ECDSA "clone digests" to module for compatibility with old
...
applications.
2011-06-01 14:07:32 +00:00
Andy Polyakov
62b6c5c404
e_aes.c: fix typo.
2011-05-30 10:13:42 +00:00
Andy Polyakov
e76cbcf686
e_aes.c: fix aes_cfb1_cipher.
2011-05-30 10:10:05 +00:00
Andy Polyakov
d1fff483d6
e_aes.c: integrate AESNI directly into EVP.
2011-05-30 09:16:01 +00:00
Dr. Stephen Henson
c2fd598994
Rename FIPS_mode_set and FIPS_mode. Theses symbols will be defined in
...
the FIPS capable OpenSSL.
2011-05-11 14:43:38 +00:00
Dr. Stephen Henson
e9093c9832
PR: 2499
...
Submitted by: "James 'J.C.' Jones" <james.jc.jones@gmail.com>
Typos.
2011-05-02 23:29:57 +00:00
Dr. Stephen Henson
b5dd178740
Fix EVP CCM decrypt. Add decrypt support to algorithm test program.
2011-04-18 22:48:40 +00:00
Dr. Stephen Henson
62dc7ed67c
Override flag for XTS length limit.
2011-04-18 17:31:28 +00:00
Dr. Stephen Henson
2391681082
Initial untested CCM support via EVP.
2011-04-18 14:25:11 +00:00
Dr. Stephen Henson
3b4a855778
Don't need separate tag buffer for GCM mode: use EVP_CIPHER_CTX buf
...
field which is not unused for custom ciphers.
2011-04-18 11:28:41 +00:00
Dr. Stephen Henson
45321c41e2
Add length limitation from SP800-38E.
2011-04-15 12:01:53 +00:00
Dr. Stephen Henson
06b7e5a0e4
Add algorithm driver for XTS mode. Fix several bugs in EVP XTS implementation.
2011-04-15 02:49:30 +00:00
Dr. Stephen Henson
ac892b7aa6
Initial incomplete POST overhaul: add support for POST callback to
...
allow status of POST to be monitored and/or failures induced.
2011-04-14 11:15:10 +00:00