aboutsummaryrefslogtreecommitdiffstats
path: root/lib/crypto/c_src
AgeCommit message (Collapse)Author
2019-03-19crypto: New function for SSL appHans Nilsson
2019-03-19crypto: Exceptions as error return in api_ngHans Nilsson
2019-03-19crypto: Cleaning of comments + spec fixingHans Nilsson
2019-03-19crypto: Shrink aes.c,h (remove aes_ctr_stream_* funcs)Hans Nilsson
2019-03-19crypto: Remove chacha20.c,h and rc4.c,hHans Nilsson
Replaced by api_ng.c
2019-03-19crypto: Use/implement new funcs for stream-apiHans Nilsson
2019-03-19crypto: Remove block.c and block.hHans Nilsson
Replaced by api_ng.c
2019-03-19crypto: Fix syntax error in ASSERTHans Nilsson
2019-03-19crypto: Implement crypto one-shotHans Nilsson
Also: Compatibility functions for aes_ctr in historic crypto libs
2019-03-19crypto: Remove condition of block sizeHans Nilsson
Unnecessary, because the underlying crypto libraries handles this case. Also: - Relax the condition of binary Key and IV -Fix bug for empty data on historic cryptolibs because tests fails for empty data on at least aes_cfb8 on OpenSSL 0.9.8h. It does not fail on OpenSSL 0.9.8zh.
2019-03-18Merge branch 'hans/crypto/fix_chacha20_bug/OTP-15678'Hans Nilsson
* hans/crypto/fix_chacha20_bug/OTP-15678: crypto: Disable chacha20 if OpenSSL 1.1.0-1.1.0c
2019-03-15crypto: Disable chacha20 if OpenSSL 1.1.0-1.1.0cHans Nilsson
due to a bug. The cipher first appeared in 1.1.0
2019-03-15crypto: Fix bug in error return for crypto:poly1305/2Hans Nilsson
Returned the atom notsup instead of the exception notsup.
2019-03-06Add crypto:cipher_info/1 and crypto:hash_info/1Loïc Hoguin
Also adds some more aliases that contain the key length in their name.
2019-02-27crypto: Fix FIPS modeHans Nilsson
There were some bad values returned if FIPS mode was enabled. The exclusion of algorithms were not completly correct either.
2019-02-25crypto: New experimental apiHans Nilsson
The new files api_ng.h and api_ng.c implements an api using EVP. The api is not by any mean new, except for the crypto application in Erlang/OTP. The aims at using the block api in a stream manor, that is 1) call crypto_init/4 2..N) call crypto_update/{2,3} The purpose is to simplify and hopefully optimize the SSL and SSH applications. By keeping the crypto state in C in an enif_resource the costful state copying in SSL and SSH is reduced with 1-2 per message sent or received. Changes in other files are for adaptation like FIPS etc since many functions uses the central get_cipher_type() function.
2019-02-06crypto: Disable blake2 in LibreSSL (not supported)Hans Nilsson
2019-02-06Merge pull request #2129 from hanssv/crypto/add_blake2_supportHans Nilsson
Add hash function BLAKE2 to crypto:hash/hmac OTP-15564
2019-02-04Add hash function BLAKE2 to crypto:hash/hmacHans Svensson
Adds two hash functions blake2b and blake2s (64 bit hash and 32 bit hash respectively). These are modern and standard hash functions used in blockchains and encrypted communication protocols (e.g. Noise - http://www.noiseprotocol.org/). The hash functions are available in OpenSSL since version 1.1.1. Also add test cases and mention in documentation.
2019-02-04otp_test_engine.c fixesHans Nilsson
2019-02-04crypto: Fix compilation < 1.0.0Hans Nilsson
2019-01-16Fix label s/out_err/err/ in OPENSSL_NO_EC2M case per PR commentDoug Hogan
2019-01-15When using DEBUG, avoid comparison of different signsDoug Hogan
2019-01-15Convert argc checks to ASSERTs per PRDoug Hogan
2019-01-15Make it easier to turn on debug outputDoug Hogan
2019-01-15Fix documentation and argc check for engine_ctrl_cmd_strings_nifDoug Hogan
2019-01-14Reference all of the free/release call positions in cocci fileDoug Hogan
2019-01-14Make crypto_free() NULL safeDoug Hogan
2019-01-14Add more Erlang functions that are not NULL safe to coccinelleDoug Hogan
2019-01-14Fix documentation and argc check in engine_get_first_nif()Doug Hogan
* This was documented as sending in an argument but it doesn't read argv.
2019-01-14dh_p is referenced after dh_params owns itDoug Hogan
* Need to keep a reference even though ownership was transfered to dh_params. * Also, be more conservative and return atom_error where the original code did.
2019-01-14enif_release_resource is not NULL safeDoug Hogan
* Add if checks and update coccinelle script.
2019-01-12Also include stdint for code that doesn't pull in common.hDoug Hogan
2019-01-12Add missing headerDoug Hogan
2019-01-08Add Coccinelle scripts that I used to verify API callsDoug Hogan
2019-01-08Convert put_int32 to put_uint32Doug Hogan
2019-01-08Explicitly set all of the fields in digest_typesDoug Hogan
2019-01-08Explicitly initialize all of the fields in cipher_typesDoug Hogan
2019-01-08Initialize all fields for ErlNifFunc in nif_funcsDoug Hogan
2019-01-08Revamp test_rsa_verify()Doug Hogan
2019-01-08Revamp test_rsa_sign()Doug Hogan
2019-01-08Revamp fake_flag so it's staticDoug Hogan
2019-01-08Revamp pem_passwd_cb_fun()Doug Hogan
2019-01-08Revamp test_key_load()Doug Hogan
2019-01-08Revamp CONSUME_REDS()Doug Hogan
2019-01-08Revamp bind_helper()Doug Hogan
2019-01-08Revamp test_engine_digest_selector()Doug Hogan
2019-01-08Revamp test_engine_md5_final()Doug Hogan
2019-01-08Revamp test_init()Doug Hogan
2019-01-08Revamp init_hmac_ctx()Doug Hogan