aboutsummaryrefslogtreecommitdiffstats
path: root/lib/crypto/doc
AgeCommit message (Collapse)Author
2019-04-05crypto: User's Guide and Reference Manual for the new apiHans Nilsson
2019-03-26Revert "Prepare release"Henrik Nord
This reverts commit 0118046f9bda8dcf3594184fa439b79267db8017.
2019-03-25Prepare releaseErlang/OTP
2019-03-22crypto: Remove old commentHans Nilsson
2019-03-22crypto: Restore 'error' as result of failed aead decryptionHans Nilsson
2019-03-22crypto: Update types of hash algorithmsHans Nilsson
2019-03-22crypto: Cuddle error types and documentation of themHans Nilsson
2019-03-22crypto: Note about key lengths for cipher_info/1Hans Nilsson
2019-03-22crypto: Declare *_info return map and other review-commentsHans Nilsson
Conflicts: lib/crypto/doc/src/crypto.xml
2019-03-22crypto: Document hash_info/1 and cipher_info/1Hans Nilsson
2019-03-22crypto: Rename block_crypto_with/without to match stream_cipher namesHans Nilsson
2019-03-22crypto: New types (block_cipher)Hans Nilsson
2019-03-12Merge branch 'maint'Henrik Nord
* maint: Updated OTP version Prepare release
2019-03-11Prepare releaseErlang/OTP
2019-02-27Revert "Prepare release"Rickard Green
This reverts commit df130102cdeca8d35fec95a0c926fd1cfec54eab.
2019-02-26Prepare releaseErlang/OTP
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-06Merge pull request #2129 from hanssv/crypto/add_blake2_supportHans Nilsson
Add hash function BLAKE2 to crypto:hash/hmac OTP-15564
2019-02-05Add blake2 datatype to crypto.xmlHans Svensson
2019-02-05Merge branch 'maint'Ingela Anderton Andin
Conflicts: lib/ssl/doc/src/ssl.xml lib/ssl/src/ssl.erl lib/ssl/src/ssl_cipher_format.erl lib/ssl/src/tls_handshake.erl
2019-02-05ssl: Use specs to generate type documentationIngela Anderton Andin
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.
2018-12-13Merge branch 'maint'Sverker Eriksson
2018-12-12Add empty 'since' attribute for old modules and functionsSverker Eriksson
2018-12-11Add "since" attributes in xml for new functions and modulesSverker Eriksson
introduced after OTP_R13B03.
2018-12-11Merge branch 'maint'Henrik Nord
* maint: Updated OTP version Prepare release
2018-12-10Prepare releaseErlang/OTP
2018-11-19Merge branch 'maint'Hans Nilsson
* maint: public_key: Add Edward curves to the documentation public_key: Add ed25519 and ed448 sign/verify crypto: Add Edward curves to the documentation crypto: Add eddsa test case (ed25519 and ed448) crypto: Add ed25519 and ed448 sign/verify
2018-11-19crypto: Add Edward curves to the documentationHans Nilsson
2018-10-11Merge branch 'maint'Hans Nilsson
* maint: crypto: Update RSA tests after algorithms doc chapter crypto: Update RSA options to match specs and different OpenSSL versions - Put rsa_pkcs1_oaep_padding in supports/0 - #ifdef updates - Refine PKCS1_OAEP defines
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-25Merge branch 'maint'Henrik Nord
2018-09-24Prepare releaseErlang/OTP
2018-09-21Merge branch 'maint'Henrik Nord
2018-09-21Update copyright yearHenrik Nord
2018-09-19Merge branch 'maint'Hans Nilsson
* maint: crypto: Re-work the 'Description' section crypto: Add warnings in RefMan and User's Guide for experimental RSA opts
2018-09-19crypto: Re-work the 'Description' sectionHans Nilsson
Links and contents needs update.
2018-09-18Merge pull request #1857 from RaimoNiskanen/raimo/rand-crypto-xoroshiro928Raimo Niskanen
OTP-14461 - New 'rand' algorithm: Xoroshiro928** also for 'crypto' Implement a new 'rand' algorithm named 'exro928ss' and a new 'crypto' plugin for 'rand' named 'crypto_aes'. Both are based on Xoroshiro928** which is derived from Xoroshiro1024** modified to use 58-bit words for performance reasons in the Erlang VM. Xoroshiro1024** has got the Xoroshiro1024 generator and the StarStar scrambler from the 2018 paper "Scrambled Linear Pseudorandom Number Generators" by David Blackman and Sebastiano Vigna. This generator and scrambler combination shows no systematic weaknesses in standard statistical tests as TestU01(BigCrush) and PractRand, unlike the previously used * and + scramblers in the 'rand' module that exhibit statistical weaknesses for the lowest bits. The 'crypto' plugin uses AES-256 as scrambler and the Xoroshiro928 as generator, which gives the same very long period and jump functions as for Xoroshiro928**, but a cryptographically secure scrambler gives absolutely no detectable statistical weaknesses regardless of how the generated numbers are used. The speed of 'exro928ss' is only about 30-50% slower than the default fast 'rand' algorithm, but the state is roughly the double and it produces about 8 times the garbage per iteration. The speed of 'crypto_aes' is about half (amortized) that of the default fast 'rand' algorithm which is fast and thanks to doing encryption in batches caching the result. Hence the state is much larger.
2018-09-18crypto: Add warnings in RefMan and User's Guide for experimental RSA optsHans Nilsson
2018-09-17Merge branch 'maint'Hans Nilsson
* maint: 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-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-17Merge branch 'maint'Hans Nilsson
* maint: crypto: Add forgotten #ifdef MAY prevent compilation errors if the symbol is configured to not be defined in an OpenSSL version where it exists by default. crypto: Change condition for RSA_PKCS1_PSS Trubble on a couple of cross-building machines crypto: RSA options list disclaimer in documentation for crypto:supports/0 The final appearence of the rs_opts entry is still not completly decided. crypto: Add 'rsa_opts' to crypto:supports/0 Needed in future versions of the SSL application.
2018-09-14crypto: Document AES_CCM and fix errors in User's GuideHans Nilsson
The sizes in the Algorithms chapter for aes_gcm was wrong or incomplete.
2018-09-14crypto: RSA options list disclaimer in documentation for crypto:supports/0Hans Nilsson
The final appearence of the rs_opts entry is still not completly decided.
2018-09-13Use long period counter for crypto_aesRaimo Niskanen
Conflicts: lib/crypto/doc/src/crypto.xml lib/crypto/src/crypto.erl
2018-09-13Merge branch 'maint'Hans Nilsson
* maint: ssh: Use exported crypto types public_key: Generate refman from types and specs public_key: Rework -type and -spec Check existing specs with code and documentation and adjust. Prepare for doc generation public_key: Setup for doc generation public_key: Remove special type signature for one test crypto: Add missing documentation for enable_fips_mode/1 crypto: Generate refman from types and specs and fix links in engine chapter for generated crypto module refman crypto: Rework -type and -spec Check code and documentation and write -type/-spec or adjust existing. Prepare for doc generation crypto: Setup for doc generation crypto: A user's guide chapter on algorithm details Such as keylengths, blocksizes and IV lengths are hard to find otherwise
2018-09-13crypto: Add missing documentation for enable_fips_mode/1Hans Nilsson
2018-09-13crypto: Generate refman from types and specsHans Nilsson
and fix links in engine chapter for generated crypto module refman
2018-09-13crypto: Setup for doc generationHans Nilsson
2018-09-13crypto: A user's guide chapter on algorithm detailsHans Nilsson
Such as keylengths, blocksizes and IV lengths are hard to find otherwise Conflicts: lib/crypto/doc/src/crypto.xml