Commit Graph

106 Commits

Author SHA1 Message Date
David Garske
ce231e0cbc Fixes for asynchronous TLS 1.3. Fixes for PK_CALLBACKS with async. New helper API's for wolfSSL_CTX_GetDevId and wolfSSL_CTX_GetHeap. Fix for build to not include tls13.c if not enabled to suppress empty object file warning. Fix typo in fe_low_mem.c. General cleanup. Extra tls13.c debug messages. 2017-06-12 11:42:48 -07:00
Sean Parkinson
4134073c8d Initial revision of SHA-3 2017-05-25 09:09:50 +10:00
Sean Parkinson
2b1e9973ec Add TLS v1.3 as an option 2017-05-04 14:51:30 -07:00
David Garske
d73338851d Combine generic math functions into new wolfmath.c/.h. Cleanup of the !ALT_ECC_SIZE code so fp_int always has size. This is in prep for async changes for new WC_BIGINT type for hardware crypto. 2016-12-21 13:39:33 -08:00
toddouska
70b227011d Merge pull request #604 from JacobBarthelmeh/PKCS12
Pkcs12
2016-11-04 15:50:50 -07:00
Jacob Barthelmeh
09c32de412 RNG : option to not use RNG 2016-10-31 16:51:02 -06:00
Jacob Barthelmeh
b686deecbe PKCS12 : Add PKCS12 parsing 2016-10-29 13:12:26 -06:00
Jacob Barthelmeh
6d82cba29c ARMv8 : AES-CTR/CBC/GCM speed ups and refactor AES 2016-09-15 22:50:00 +00:00
Jacob Barthelmeh
41912b92c6 initial ARMv8 instructions 2016-09-01 18:10:06 +00:00
David Garske
17a34c5899 Added asynchronous wolfCrypt RSA, TLS client and Cavium Nitrox V support. Asynchronous wolfSSL client support for "DoServerKeyExchange", "SendClientKeyExchange", "SendCertificateVerify" and "DoCertificateVerify". Fixes for async DTLS. Refactor of the wolf event and async handling for use in wolfCrypt. Refactor of the async device support so its hardware agnostic. Added Cavium Nitrox V support (Nitrox tested using SDK v0.2 CNN55XX-SDK with new configure "--with-cavium-v=/dir" option). Moved Nitrox specific functions to new port file "port/cavium/cavium_nitrox.c". RSA refactor to handle async with states. RSA optimization for using dpraw for private key decode. Use double linked list in wolf event for faster/cleaner code. Use typedef for wolf event flag. Cleanup of the async error codes. wolfCrypt test and benchmark support for async RSA. Asynchronous mode enabled using "./configure --enable-asynccrypt". If no async hardware is defined then the internal async simulator (WOLFSSL_ASYNC_CRYPT_TEST) is used. Note: Using async mode requires async.c/h files from wolfSSL. If interested in using asynchronous mode please send email to info@wolfssl.com. 2016-08-15 13:59:41 -06:00
toddouska
ac6635593b Revert "Bio" 2016-06-27 10:53:34 -07:00
Ludovic FLAMENT
033f308a08 change file name from compat-wolfssl to compat-wolfcrypt 2016-06-24 19:00:39 +02:00
Jacob Barthelmeh
ea71814518 Merge https://github.com/wolfSSL/wolfssl 2016-06-17 13:58:53 -06:00
John Safranek
c0cbc97b06 add AES-CMAC 2016-05-23 17:50:36 -07:00
Ludovic FLAMENT
ed4f67058a Merge branch 'master' of https://github.com/wolfssl/wolfssl 2016-05-20 21:51:13 +02:00
Ludovic FLAMENT
5d1de3bb33 One file for all BIO functions in wolfcrypt
move required functions from wolfssl to wolfcrypt
add client/server tests for BIO
2016-05-05 12:58:21 +02:00
Ludovic FLAMENT
1bd65cc8a9 First version for OpenSSL BIO compatibility 2016-04-29 16:34:11 +02:00
David Garske
e1787fe160 Added "--enable-asynccrypt" option for enabling asynchronous crypto. This includes a refactor of SendServerKeyExchange and DoClientKeyExchange to support WC_PENDING_E on key generation, signing and verification. Currently uses async simulator (WOLFSSL_ASYNC_CRYPT_TEST) if cavium not enabled. All of the examples have been updated to support WC_PENDING_E on accept and connect. A generic WOLF_EVENT infrastructure has been added to support other types of future events and is enabled using "HAVE_WOLF_EVENT". Refactor the ASN OID type (ex: hashType/sigType) to use a more unique name. The real "async.c" and "async.h" files are in a private repo. 2016-03-17 13:31:03 -07:00
David Garske
f692c8cefb New hash and signature wrapper functions:
1. Added new hash wrapper function "wc_Hash". Hash functions support Md# and SHA# using "enum wc_HashType". Added new "wc_HashGetDigestSize" function to get hash size (returns 0 if not supported).
2. Added new signature wrapper functions "wc_SignatureGenerate" and "wc_SignatureVerify" to perform hash then sign/verify of bytes. Signature functions support ECC and RSA using "enum wc_SignatureType". Added new "wc_SignatureGetSize" function to get the signature size using the key (returns 0 if not supported).
2015-11-12 09:36:14 -08:00
Jacob Barthelmeh
c132f9887e Merge branch 'master' of https://github.com/wolfSSL/wolfssl 2015-10-19 13:56:39 -06:00
Jacob Barthelmeh
ee5a11b8d9 Add Intel IPP crypto for RSA
add user-crypto makefile

update README for IPP crypto

place user crypto in wolfcrypt and use autotools

adjust distributed files

move openssl compatibility consumption

auto use IPP RSA -- IPP directory containing shared libraries local

return value of wolfSSL_BN and formating of debug

openssh testing

make sure IPP not built when fips is

ipp init to select correct optimizations -- static libraries on linux -- fast-rsa disabled by default

try to only set library once

only use static IPP if fast rsa is enabled

make print out for user crypto more pretty
2015-10-19 13:51:49 -06:00
Ludovic FLAMENT
f68400da40 add IDEA cipher (ECB and CBC mode)
add support of SSL_RSA_WITH_IDEA_CBC_SHA cipher suite (SSLv3, TLS v1.0 and TLSv1.1)
2015-09-23 16:16:39 +02:00
toddouska
21cf0e437e add --enable-cryptonly build option 2015-09-10 16:24:25 -07:00
Moisés Guimarães
6d7b5bd2f8 adds srp files to build process. 2015-08-04 01:07:24 -03:00
toddouska
011fdc1103 move AES oneshot calls out of aes.[hc] 2015-07-30 12:42:25 -07:00
toddouska
55de33f493 Merge branch 'TI_hash' of https://github.com/kojo1/wolfssl into kojo-ti 2015-06-16 11:38:04 -07:00
Jacob Barthelmeh
e461bc72b8 curve25519 and ed25519 low memory 2015-06-05 15:39:37 -06:00
Takashi Kojo
902799ef75 adding ti hash/crypt to include.am 2015-05-27 19:34:11 +09:00
Takashi Kojo
d24c7f070c files cleaned 2015-05-21 18:12:43 +09:00
Takashi Kojo
b5654092ec Added Md5GetHash for BuildCertHashes 2015-05-21 13:42:02 +09:00
toddouska
8f6d7a1ce7 rename ecc25519 to curve25519, less confusing with ed25519 now in play too 2015-03-24 11:56:40 -07:00
Jacob Barthelmeh
d89d524570 initial ed25519 implementation 2015-03-19 11:40:41 -06:00
toddouska
9d20e712bf add autoconf support for chapoly-aead, wipe temp polykey, minor whitespace adjusts 2015-02-24 12:33:52 -08:00
Jacob Barthelmeh
4babd2cf2d added in curve25519 crypto 2015-02-19 10:59:05 -07:00
Jacob Barthelmeh
95aad35e41 prunning on ctaocrypt files 2015-01-06 22:23:20 -07:00
Jacob Barthelmeh
161a90aeae error crypt header adjusted and removed from ctaocrypt 2015-01-06 14:45:07 -07:00
Jacob Barthelmeh
6f17e5ecd0 prune ctaocrypt, alter cyassl headers and catch wolfssl rsa header 2015-01-06 14:26:13 -07:00
Jacob Barthelmeh
db7f7c39e1 comment in testsuite, adjustment to src include and wolfssl ssl 2015-01-05 10:32:51 -07:00
Jacob Barthelmeh
e6ebbf4fc2 pre-commit pass and update to name change files 2015-01-03 23:33:14 -07:00
Jacob Barthelmeh
144798c962 update to md functions and blake for hmac 2015-01-03 17:24:51 -07:00
Jacob Barthelmeh
f64d76257e readjust c files, autoconf, and some header files 2015-01-02 14:56:58 -07:00
kaleb-himes
e6cebf1246 fips preservation update 2014-12-31 15:20:53 -07:00
kaleb-himes
2f15d38dc0 fips MD5 checksum preservation 2014-12-31 13:37:51 -07:00
Jacob Barthelmeh
d1e48e2364 progress on asn 2014-12-31 10:28:13 -07:00
kaleb-himes
9f3de72055 src/include.am update 2014-12-30 10:38:41 -07:00
kaleb-himes
bf9d41cbcc src/include.am updated 2014-12-30 09:09:42 -07:00
Jacob Barthelmeh
174e2b23c2 ecc check and adjustment to visibility 2014-12-29 16:38:13 -07:00
Jacob Barthelmeh
894b888291 update to misc.c integer.c and tfm.c 2014-12-29 12:59:14 -07:00
kaleb-himes
edf53a1ed0 new changes 2014-12-29 10:27:03 -07:00
Jacob Barthelmeh
279f149828 adjustments to reverse compatibility 2014-12-19 16:31:01 -07:00