dgarske
2dc60b9e01
Merge pull request #1321 from SparkiDev/fe_init_small_fix
...
Fix fe_init implementation to appear for small Ed25519
2018-01-17 08:30:13 -08:00
Sean Parkinson
c09d972012
Fix fe_init implementation to appear for small Ed25519
2018-01-17 11:34:22 +10:00
John Safranek
788cc39498
FIPS Update
...
1. Switch in different versions of rsa.c depending on FIPS v1 or v2.
2. Add the Windows pragmas to rsa.c if building for FIPS v2.
3. Leave out FIPS wrappers from rsa.c if not building for FIPS v1.
2018-01-10 11:29:01 -08:00
John Safranek
6fdbe02291
ECC FIPS
...
Add the ECC API to the FIPS boundary. Included are ECDHE and ECDSA.
2018-01-10 11:29:01 -08:00
Sean Parkinson
90f8f67982
Single Precision maths for RSA (and DH)
...
Single Precision ECC implementation
2017-10-17 08:36:39 +10:00
Jacob Barthelmeh
3763b88397
rename the file io.h to wolfio.h
2017-09-20 10:53:11 -06:00
Sean Parkinson
bde6a35ac4
Assembly optimization for AES-NI, and AVX1 and AVX2
...
Unroll the loop for 8.
Use new optimized maths.
Fix SHA-384 to use SHA-512 assembly code.
Only perform CPU id check in one place.
2017-07-25 08:50:39 +10:00
Jacob Barthelmeh
c4fe67b633
build for ed25519 only
2017-07-12 15:53:11 -06:00
David Garske
a5cdbb18cb
Reworked the AES Key Wrap to use existing code in aes.c (instead of duplicating code in armv8-aes.c). Cleanup for GE/FE math on 32-bit to remove duplicate #ifdef check. Fixed AES GCM arg check for authIn to allows NULL.
2017-07-10 19:12:41 -07:00
David Garske
3c173ba366
Enhancement to support different sized Curve/Ed math library implementations for FE/GE. Remains backwards compatible with CURVED25519_SMALL define. Adds new defines CURVE25519_SMALL and ED25519_SMALL to allow individual enabling of math library choice (_low_mem or _operations). Example: ./configure --enable-ed25519=small --enable-curve25519.
2017-06-16 09:41:10 -07:00
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