aboutsummaryrefslogtreecommitdiffstats
path: root/lib/crypto/c_src/crypto.c
AgeCommit message (Collapse)Author
2018-12-20Move algorithms to a new fileDoug Hogan
crypto.c is now only responsible for declaring NIFs and setup/tear down.
2018-12-20Move most FIPS functionality to a new fileDoug Hogan
2018-12-20Move public/private key functionality to a new fileDoug Hogan
2018-12-20Move EVP functionality to a new fileDoug Hogan
2018-12-20Move ECDH functionality to a new fileDoug Hogan
2018-12-20Move EC functionality to a new fileDoug Hogan
2018-12-20Move xor functionality to a new fileDoug Hogan
2018-12-20Move block crypt functionality to a new fileDoug Hogan
2018-12-20Move AEAD functionality to a new fileDoug Hogan
2018-12-20Move info functionality to a new fileDoug Hogan
2018-12-20Move AES functionality to a new fileDoug Hogan
2018-12-20Move DSS functionality to a new fileDoug Hogan
2018-12-20Move poly1305 functionality to a new fileDoug Hogan
2018-12-20Move chacha20 functionality to a new fileDoug Hogan
2018-12-20Move random functionality to a new fileDoug Hogan
2018-12-20Move SRP functionality to a new fileDoug Hogan
2018-12-20Move EDDSA functionality to a new fileDoug Hogan
2018-12-20Move DH functionality to a new fileDoug Hogan
2018-12-20Move RC4 functionality to a new fileDoug Hogan
Also, move a FIPS check macro to the common openssl_config.h.
2018-12-20Move CMAC functionality to a new fileDoug Hogan
2018-12-20Move hash utility functions to a new fileDoug Hogan
2018-12-20Move cipher utility functions to a new fileDoug Hogan
2018-12-20Move HMAC to new filesDoug Hogan
2018-12-20Move digest types to a new fileDoug Hogan
2018-12-20Move BN and RSA utility functions to new filesDoug Hogan
2018-12-20Move most engine code to a separate fileDoug Hogan
2018-12-20Move all atoms to a new file and add common headerDoug Hogan
2018-12-20Move OpenSSL includes and config to separate fileDoug Hogan
Also move some of the common functionality that's used in the NIF implementations.
2018-12-20Move EVP compat functions to a separate fileDoug Hogan
2018-12-03crypto: Fix valgrind error in dh_generate/dh_computeHans Nilsson
2018-12-03crypto: Fix valgrind errors in pkey_crypt_nifHans Nilsson
2018-12-03crypto: Fix valgrind errors in privkey_to_pubkeyHans Nilsson
2018-12-03crypto: Fix valgrind error for keys with passwords in EnginesHans Nilsson
2018-11-19crypto: Add ed25519 and ed448 sign/verifyHans Nilsson
2018-10-11crypto: Update RSA options to match specs and different OpenSSL versionsHans Nilsson
- Put rsa_pkcs1_oaep_padding in supports/0 - #ifdef updates - Refine PKCS1_OAEP defines
2018-09-18crypto: Fix bad return/exception for unsupported cipherHans Nilsson
Accidently f11391139c4165e8541a52d45cd1525343a83927 merged by 0a218353e4360e36bac304b6a4e0effe78d95615 changed the return exception 'notsup' to 'badarg' for unsupported chipher names. This changes that back.
2018-09-18crypto: Use aead functions for CHACHA20_POLY1305Hans Nilsson
This previously implemented cipher is a block cipher despite using chacha. It also uses the EVP_CIPHER_CTX api which now unifies AES_GCM and AES_CCM into one pair of encrypt and decrypt functions. By integrating the existing chacha20_poly1305 code into aead_encrypt and aead_decrypt we could remove two C-functions and simplify both the C-code and the corresponding Erlang code in the CRYPTO application.
2018-09-18crypto: Disable problematic RSA options in LibreSSLHans Nilsson
2018-09-17Merge branch 'hans/crypto/aes_ccm/OTP-15286' into maintHans Nilsson
* hans/crypto/aes_ccm/OTP-15286: crypto: Fix no_aead test crypto: Document AES_CCM and fix errors in User's Guide The sizes in the Algorithms chapter for aes_gcm was wrong or incomplete. crypto: AES_CCM test case crypto: All aes_ccm vectors (including unused) This directory contains all aes_ccm vectors. However, effort is needed to include them in the test suite so they are left for later. crypto: Add AES_CCM crypto Will be increase interoperability of future SSL application versions. crypto: Generalize aes_gcm_(de|en)crypt nifs
2018-09-14crypto: Add AES_CCM cryptoHans Nilsson
Will be increase interoperability of future SSL application versions.
2018-09-14crypto: Generalize aes_gcm_(de|en)crypt nifsHans Nilsson
The EVP_CIPHER_CTX interface aims at enabling using the same code for many ciphers. Since we are going to add aes_ccm which is similar to aes_gcm, this commit is a preparation. It creates the aead_(de|en)crypt nifs and removes the old ones.
2018-09-14crypto: Add forgotten #ifdefHans Nilsson
MAY prevent compilation errors if the symbol is configured to not be defined in an OpenSSL version where it exists by default.
2018-09-14crypto: Change condition for RSA_PKCS1_PSSHans Nilsson
Trubble on a couple of cross-building machines
2018-09-14crypto: Add 'rsa_opts' to crypto:supports/0Hans Nilsson
Needed in future versions of the SSL application.
2018-09-13Merge branch 'hans/crypto/SHA3/OTP-15153' into maintHans Nilsson
2018-09-12crypto: sha3_224 and sha3_256 errors fixedHans Nilsson
2018-09-12crypto: Fix valgrind errorHans Nilsson
2018-09-11Merge branch 'hans/crypto/x25519_x448/OTP-15240' into maintHans Nilsson
* hans/crypto/x25519_x448/OTP-15240: crypto: Remove 'experimental' comments for ecdh
2018-09-10crypto: Remove 'experimental' comments for ecdhHans Nilsson
2018-08-23Merge branch 'hans/crypto/x25519_x448/OTP-15240' into maintHans Nilsson
* hans/crypto/x25519_x448/OTP-15240: crypto: doc x25519 & x448 crypto: Test vectors for ecdh x25519 and x448 crypto: Remove the term 'eddh' crypto: Enable EDDH all OpenSSL cryptolib over beta version 1.1.1-pre8