From fddbefeabd86ba3e389f35831980abb38b7186b3 Mon Sep 17 00:00:00 2001 From: Jesper Louis Andersen Date: Mon, 20 Jan 2020 14:38:09 +0100 Subject: [PATCH] Simple AEAD unit tests --- test/enacl_SUITE.erl | 35 ++++++++++++++++++++++++++++++----- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/test/enacl_SUITE.erl b/test/enacl_SUITE.erl index 14326c1..9b3bfec 100644 --- a/test/enacl_SUITE.erl +++ b/test/enacl_SUITE.erl @@ -35,16 +35,19 @@ end_per_testcase(_Case, _Config) -> ok. groups() -> - GenericHashNeg = {generichash_neg, [shuffle, parallel], + Neg = {negative, [shuffle, parallel], [generichash_basic_neg]}, - GenericHash = {generichash, [shuffle, parallel, {repeat, 100}], + Pos = {positive, [shuffle, parallel], [generichash_basic_pos, - generichash_chunked]}, + generichash_chunked, + aead_xchacha20poly1305, + aead_chacha20poly1305]}, - [GenericHashNeg, GenericHash]. + [Neg, Pos]. all() -> - [{group, generichash}]. + [{group, negative}, + {group, positive}]. %% -- BASIC -------------------------------------- generichash_basic_neg(_Config) -> @@ -84,3 +87,25 @@ generichash_chunked(State, Msg, N) -> State2 = enacl:generichash_update(State, Msg), generichash_chunked(State2, Msg, N-1). +aead_xchacha20poly1305(_Config) -> + NonceLen = enacl:aead_xchacha20poly1305_NONCEBYTES(), + KLen = enacl:aead_xchacha20poly1305_KEYBYTES(), + Key = binary:copy(<<"K">>, KLen), + Msg = <<"test">>, + AD = <<1,2,3,4,5,6>>, + Nonce = binary:copy(<<"N">>, NonceLen), + + CipherText = enacl:aead_xchacha20poly1305_encrypt(Key, Nonce, AD, Msg), + Msg = enacl:aead_xchacha20poly1305_decrypt(Key, Nonce, AD, CipherText), + ok. + +aead_chacha20poly1305(_Config) -> + KLen = enacl:aead_chacha20poly1305_KEYBYTES(), + Key = binary:copy(<<"K">>, KLen), + Msg = <<"test">>, + AD = <<1,2,3,4,5,6>>, + Nonce = 1337, + + CipherText = enacl:aead_chacha20poly1305_encrypt(Key, Nonce, AD, Msg), + Msg = enacl:aead_chacha20poly1305_decrypt(Key, Nonce, AD, CipherText), + ok.