Implementations of
lightweight block ciphers on a WSN430
sensor
Results concerning cycle count and memory using compilation option -Os
Cycle count for encryption and decryptionFunction |
Block Size (bits) |
Encryption: cycle count |
Encryption : cycles/byte |
Decryption: cycle Count |
Decryption: cycles/byte |
AES |
128 |
11850 |
740 |
15713 |
982 |
CLEFIA128 |
128 |
35680 |
2230 |
30871 |
1929 |
CLEFIA192 |
128 |
53199 |
3324 |
37369 |
2335 |
CLEFIA256 |
128 |
55859 |
3491 |
43921 |
2745 |
DESXL |
64 |
30425 |
3803 |
77628 |
9703 |
DIRnoekeon |
128 |
15406 |
962 |
15971 |
998 |
HIGHT |
64 |
21726 |
2715 |
21678 |
2709 |
IDEA |
64 |
27644 |
3455 |
136239 |
17029 |
INDnoekeon |
128 |
30805 |
1925 |
31513 |
1969 |
KATAN32 |
32 |
343102 |
85775 |
355933 |
88983 |
KATAN48 |
48 |
540107 |
90017 |
539364 |
89894 |
KATAN64 |
64 |
729479 |
91184 |
711570 |
88946 |
KLEIN64 |
64 |
13564 |
1695 |
19183 |
2397 |
KLEIN80 |
64 |
18052 |
2256 |
25420 |
3177 |
KLEIN96 |
64 |
23160 |
2895 |
32259 |
4032 |
KTANTAN32 |
32 |
7486539 |
1871634 |
7500003 |
1875000 |
KTANTAN48 |
48 |
7654327 |
1275721 |
7687624 |
1281270 |
KTANTAN64 |
64 |
7841413 |
980176 |
7864529 |
983066 |
LBlock |
64 |
22270 |
2783 |
10930 |
1366 |
LED128 |
64 |
701106 |
87638 |
703066 |
87883 |
LED128_tcalc |
64 |
128146 |
16018 |
144289 |
18036 |
LED128_tdur |
64 |
75506 |
9438 |
87766 |
10970 |
LED64 |
64 |
467558 |
58444 |
468950 |
58618 |
LED64_tcalc |
64 |
103230 |
12903 |
115241 |
14405 |
LED64_tdur |
64 |
50590 |
6323 |
58718 |
7339 |
MCRYPTON64 |
64 |
44084 |
5510 |
139964 |
17495 |
MCRYPTON96 |
64 |
44284 |
5535 |
140158 |
17519 |
MCRYPTON128 |
64 |
44354 |
5544 |
140295 |
17536 |
MIBS64 |
64 |
30436 |
3804 |
26905 |
3363 |
MIBS80 |
64 |
32996 |
4124 |
35281 |
4410 |
PRESENT_SIZE |
64 |
222066 |
27758 |
234468 |
29308 |
PRESENT_SPEED |
64 |
194165 |
24270 |
195399 |
24424 |
Piccolo128 |
64 |
19973 |
2496 |
21600 |
2700 |
Piccolo80 |
64 |
18820 |
2352 |
20218 |
2527 |
SEA |
96 |
29645 |
2470 |
29729 |
2477 |
SKIPJACK |
64 |
44847 |
5605 |
44847 |
5605 |
TWINE80 |
64 |
36290 |
4536 |
28634 |
3579 |
TWINE128 |
64 |
40688 |
5086 |
28649 |
3581 |
SIMON64_96 |
64 |
14063 |
1757 |
14266 |
1783 |
SIMON64_128 |
64 |
14775 |
1846 |
20207 |
2525 |
SIMON96_96 |
96 |
50328 |
4194 |
50620 |
4218 |
SIMON96_144 |
96 |
51879 |
4323 |
52192 |
4349 |
SIMON128_128 |
128 |
42317 |
2644 |
42629 |
2664 |
SPECK64_96 |
64 |
6662 |
832 |
5971 |
746 |
SPECK64_128 |
64 |
6917 |
864 |
6241 |
780 |
SPECK96_96 |
96 |
21812 |
1817 |
15064 |
1255 |
SPECK96_144 |
96 |
22260 |
1855 |
16785 |
1398 |
SPECK128_128 |
128 |
18033 |
1127 |
15479 |
967 |
Memory usage
Function |
Stack size (bytes) |
hline
AES |
18 |
CLEFIA128 |
175 |
CLEFIA192 |
264 |
CLEFIA256 |
264 |
DESXL |
82 |
DIRnoekeon |
21 |
HIGHT |
14 |
IDEA |
78 |
INDnoekeon |
21 |
KATAN32 |
1867 |
KATAN48 |
1947 |
KATAN64 |
306 |
KLEIN64 |
35 |
KLEIN80 |
34 |
KLEIN96 |
37 |
KTANTAN32 |
582 |
KTANTAN48 |
643 |
KTANTAN64 |
715 |
LBlock |
14 |
LED128 |
39 |
LED128_tcalc |
39 |
LED128_tdur |
39 |
LED64 |
39 |
LED64_tcalc |
39 |
LED64_tdur |
39 |
MCRYPTON64 |
20 |
MCRYPTON96 |
24 |
MCRYPTON128 |
20 |
MIBS64 |
20 |
MIBS80 |
20 |
PRESENT_SIZE |
137 |
PRESENT_SPEED |
137 |
Piccolo128 |
85 |
Piccolo80 |
73 |
SEA |
14 |
SKIPJACK |
21 |
TWINE80 |
26 |
TWINE128 |
39 |
SIMON64_96 |
13 |
SIMON64_128 |
13 |
SIMON96_96 |
40 |
SIMON96_144 |
40 |
SIMON128_128 |
37 |
SPECK64_96 |
11 |
SPECK64_128 |
11 |
SPECK96_96 |
34 |
SPECK96_144 |
31 |
SPECK128_128 |
29 |