aboutsummaryrefslogtreecommitdiffstats
path: root/lib/crypto/src/crypto.erl
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2015-12-11 18:07:47 +0100
committerSverker Eriksson <[email protected]>2015-12-11 18:07:47 +0100
commit32eb9d7d9f680d320f42186de67db65688cdd53f (patch)
tree79746e928d2494c66062a4f19b65985ac6c75ce4 /lib/crypto/src/crypto.erl
parent7d9d88e9adf040a17c8ffb01b069fb2a5d125dab (diff)
downloadotp-32eb9d7d9f680d320f42186de67db65688cdd53f.tar.gz
otp-32eb9d7d9f680d320f42186de67db65688cdd53f.tar.bz2
otp-32eb9d7d9f680d320f42186de67db65688cdd53f.zip
crypto: Support 192-bit keys for AES CBC
and deprecate aes_cbc128 and aes_cbc256 in favor of aes_cbc. This commit is pr 832 squashed, rebased and made work on master https://github.com/erlang/otp/pull/832/commits
Diffstat (limited to 'lib/crypto/src/crypto.erl')
-rw-r--r--lib/crypto/src/crypto.erl4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/crypto/src/crypto.erl b/lib/crypto/src/crypto.erl
index 8722e801a6..3e24ff2b0a 100644
--- a/lib/crypto/src/crypto.erl
+++ b/lib/crypto/src/crypto.erl
@@ -274,6 +274,7 @@ hmac_final_n(Context, HashLen) ->
des3_cbc | des3_cbf | des_ede3 |
blowfish_cbc | blowfish_cfb64 | blowfish_ofb64 |
aes_cbc128 | aes_cfb8 | aes_cfb128 | aes_cbc256 | aes_ige256 |
+ aes_cbc |
rc2_cbc,
Key::iodata(), Ivec::binary(), Data::iodata()) -> binary();
(aes_gcm | chacha20_poly1305, Key::iodata(), Ivec::binary(), {AAD::binary(), Data::iodata()}) -> {binary(), binary()}.
@@ -287,6 +288,7 @@ block_encrypt(Type, Key, Ivec, Data) when Type =:= des_cbc;
Type =:= aes_cfb8;
Type =:= aes_cfb128;
Type =:= aes_cbc256;
+ Type =:= aes_cbc;
Type =:= rc2_cbc ->
block_crypt_nif(Type, Key, Ivec, Data, true);
block_encrypt(Type, Key0, Ivec, Data) when Type =:= des3_cbc;
@@ -307,6 +309,7 @@ block_encrypt(chacha20_poly1305, Key, Ivec, {AAD, Data}) ->
des3_cbc | des3_cbf | des_ede3 |
blowfish_cbc | blowfish_cfb64 | blowfish_ofb64 |
aes_cbc128 | aes_cfb8 | aes_cfb128 | aes_cbc256 | aes_ige256 |
+ aes_cbc |
rc2_cbc,
Key::iodata(), Ivec::binary(), Data::iodata()) -> binary();
(aes_gcm | chacha20_poly1305, Key::iodata(), Ivec::binary(),
@@ -316,6 +319,7 @@ block_decrypt(Type, Key, Ivec, Data) when Type =:= des_cbc;
Type =:= blowfish_cbc;
Type =:= blowfish_cfb64;
Type =:= blowfish_ofb64;
+ Type =:= aes_cbc;
Type =:= aes_cbc128;
Type =:= aes_cfb8;
Type =:= aes_cfb128;