aboutsummaryrefslogtreecommitdiffstats
path: root/lib/crypto/c_src/crypto.c
AgeCommit message (Collapse)Author
2019-04-17crypto: New function supports/1Hans Nilsson
Takes argument hashs, public_keys, ciphers, macs, curves or rsa_opts. Returns the algorithm names, but ONLY the openssl names. supports/0 still returns aliases and misspellings.
2019-04-05crypto: Misc C-changes,Hans Nilsson
error fixes, better error reporting (file and line), make aead more robust and like the _ng api.
2019-03-19crypto: New function for SSL appHans Nilsson
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: Implement crypto one-shotHans Nilsson
Also: Compatibility functions for aes_ctr in historic crypto libs
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-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-01-08Initialize all fields for ErlNifFunc in nif_funcsDoug Hogan
2019-01-08Revamp initialize()Doug Hogan
* Add error handling for all OpenSSL calls. - However, disable custom crypto mem functions for LibreSSL since it has never supported it.
2018-12-21If init_atoms() fails, it should return __LINE__Doug Hogan
2018-12-21Make engine ctx init internal to engine.c per PR feedbackDoug Hogan
2018-12-21Make cipher ctx init internal to cipher.c per PR feedbackDoug Hogan
2018-12-21Make hash ctx init internal to hash.c per PR feedbackDoug Hogan
2018-12-21Make HMAC ctx init internal to hmac.c per PR feedbackDoug Hogan
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