aboutsummaryrefslogtreecommitdiff
path: root/networking/tls_aes.c
AgeCommit message (Collapse)Author
2017-04-01tls: replace aes encryption/decryption by much smaller oneDenys Vlasenko
The replacement code is ~6 times slower, but drastically decreases size of tls_aes.o: text data bss dec hex filename 8050 0 0 8050 1f72 tls_aes_OLD.o 2461 0 0 2461 99d tls_aes.o function old new delta sbox - 256 +256 rsbox - 256 +256 KeyExpansion - 197 +197 Subword - 66 +66 AddRoundKey - 61 +61 static.Rcon - 10 +10 rcon 40 - -40 setup_mix 80 - -80 setup_mix2 123 - -123 aes_cbc_decrypt 1377 971 -406 aes_cbc_encrypt 1375 644 -731 psAesInit 848 - -848 Te4 1024 - -1024 TE0 1024 - -1024 TD0 1024 - -1024 Td4 1040 - -1040 ------------------------------------------------------------------------------ (add/remove: 6/8 grow/shrink: 0/2 up/down: 846/-6340) Total: -5494 bytes This code is based on public domain "tiny-AES128-C" code. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-02-04tls: fold AES CBC en/decryption into single functionsDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-01-19tls: commented out psPool_t useDenys Vlasenko
function old new delta psAesEncrypt 159 162 +3 der_binary_to_pstm 42 40 -2 xwrite_and_hash 437 434 -3 xread_tls_block 446 443 -3 pstm_div_2d 449 444 -5 psAesDecrypt 179 174 -5 pstm_init_size 52 45 -7 pstm_init 46 39 -7 pstm_to_unsigned_bin 165 157 -8 tls_main 1265 1256 -9 pstm_mulmod 132 123 -9 pstm_mod 125 116 -9 pstm_init_copy 93 84 -9 psAesInitKey 840 825 -15 send_client_key_exchange 362 342 -20 psAesInit 103 80 -23 psRsaEncryptPub 429 403 -26 psAesDecryptBlock 1211 1184 -27 psAesEncryptBlock 1223 1193 -30 pstm_exptmod 1582 1524 -58 pstm_div 1557 1472 -85 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/20 up/down: 3/-360) Total: -357 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-01-18tls: added AES code and made it compile. not used yetDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>