diff options
| author | Kévin Le Gouguec <kevin.legouguec@airbus.com> | 2019-03-14 17:17:50 +0100 |
|---|---|---|
| committer | Kévin Le Gouguec <kevin.legouguec@airbus.com> | 2019-03-21 14:49:15 +0100 |
| commit | 6d62f24fc34dae3c28f1b1cfed664bde3edbb1ec (patch) | |
| tree | 85aff9aa33aacbe6a6c5d93abf56cb4332c30efb /python/genkat_aead.py | |
| parent | 60707e26d3068a43e0caa7973a4fb88428443738 (diff) | |
| download | lilliput-ae-implem-6d62f24fc34dae3c28f1b1cfed664bde3edbb1ec.tar.xz | |
[implem-python] Ajustement de l'API externe
Utilisation d'une enum, pour que les valeurs possibles soient
explicites.
Renommage des points d'entrée pour qu'ils soient uniformes et
interchangeables.
Transformation du tag en liste plus bas pour que lilliput.py ne se
soucie pas des détails d'implémentation des fonctions en-dessous.
Diffstat (limited to 'python/genkat_aead.py')
| -rwxr-xr-x | python/genkat_aead.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/python/genkat_aead.py b/python/genkat_aead.py index 5bce05f..daa48f8 100755 --- a/python/genkat_aead.py +++ b/python/genkat_aead.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -import lilliput +from lilliput import encrypt, decrypt, LilliputAeMode from os import makedirs, path @@ -10,6 +10,12 @@ MAX_ADATA_LENGTH = 32 CRYPTO_NPUBBYTES = 120//8 +MODE_SUFFIXES = { + LilliputAeMode.lilliput_1: 'i', + LilliputAeMode.lilliput_2: 'ii' +} + + def bstr(buf): return ''.join('{:02X}'.format(b) for b in buf) @@ -37,7 +43,7 @@ def generate_test_vectors(mode, keylen): print('generating for', mode, keylen) directory = 'crypto_aead/lilliputae{mode}{keylen}v1'.format( - mode=mode*'i', keylen=keylen + mode=MODE_SUFFIXES[mode], keylen=keylen ) makedirs(directory, exist_ok=True) @@ -64,11 +70,11 @@ def generate_test_vectors(mode, keylen): print_bstr(output, 'PT', msg) print_bstr(output, 'AD', ad) - ct, tag = lilliput.mainEnc(msg, ad, key, nonce, mode) + ct, tag = encrypt(msg, ad, key, nonce, mode) print_bstr(output, 'CT', ct+tag) - msg2 = lilliput.mainDec(ct, tag, ad, key, nonce, mode) + msg2 = decrypt(ct, tag, ad, key, nonce, mode) if msg != msg2: raise DecryptionError(msg, msg2, mode, keylen) @@ -79,6 +85,6 @@ def generate_test_vectors(mode, keylen): if __name__ == '__main__': - for mode in 1, 2: + for mode in LilliputAeMode: for keylen in 128, 192, 256: generate_test_vectors(mode, keylen) |
