Implementations of
lightweight block ciphers on a WSN430
sensor
Results concerning cycle count and memory using compilation option -O3
Cycle count for encryption and decryption
| Function |
Block Size (bits) |
Encryption: cycle count |
Encryption : cycles/byte |
Decryption: cycle Count |
Decryption: cycles/byte |
| AES |
128 |
11936 |
746 |
15504 |
969 |
| CLEFIA128 |
128 |
27390 |
1711 |
24052 |
1503 |
| CLEFIA192 |
128 |
39377 |
2461 |
28949 |
1809 |
| CLEFIA256 |
128 |
42123 |
2632 |
34269 |
2141 |
| DESXL |
64 |
30281 |
3785 |
64090 |
8011 |
| DIRnoekeon |
128 |
12598 |
787 |
12903 |
806 |
| HIGHT |
64 |
13174 |
1646 |
13227 |
1653 |
| IDEA |
64 |
24578 |
3072 |
132536 |
16567 |
| INDnoekeon |
128 |
25189 |
1574 |
25526 |
1595 |
| KATAN32 |
32 |
332153 |
83038 |
333346 |
83336 |
| KATAN48 |
48 |
494443 |
82407 |
504853 |
84142 |
| KATAN64 |
64 |
701962 |
87745 |
695966 |
86995 |
| KLEIN64 |
64 |
8605 |
1075 |
13276 |
1659 |
| KLEIN80 |
64 |
11961 |
1495 |
18232 |
2279 |
| KLEIN96 |
64 |
14677 |
1834 |
22958 |
2869 |
| KTANTAN32 |
32 |
7284266 |
1821066 |
7205517 |
1801379 |
| KTANTAN48 |
48 |
7376065 |
1229344 |
7378511 |
1229751 |
| KTANTAN64 |
64 |
7563306 |
945413 |
7569655 |
946206 |
| LBlock |
64 |
21467 |
2683 |
10779 |
1347 |
| LED128 |
64 |
197976 |
24747 |
200309 |
25038 |
| LED128_tcalc |
64 |
53427 |
6678 |
64666 |
8083 |
| LED128_tdur |
64 |
45825 |
5728 |
54204 |
6775 |
| LED64 |
64 |
132136 |
16517 |
133441 |
16680 |
| LED64_tcalc |
64 |
37841 |
4730 |
46726 |
5840 |
| LED64_tdur |
64 |
30996 |
3874 |
36280 |
4535 |
| MCRYPTON64 |
64 |
16221 |
2027 |
22755 |
2844 |
| MCRYPTON96 |
64 |
16343 |
2042 |
23256 |
2907 |
| MCRYPTON128 |
64 |
16389 |
2048 |
23344 |
2918 |
| MIBS64 |
64 |
24531 |
3066 |
28853 |
3606 |
| MIBS80 |
64 |
31254 |
3906 |
32952 |
4119 |
| PRESENT_SIZE |
64 |
195894 |
24486 |
193313 |
24164 |
| PRESENT_SPEED |
64 |
172091 |
21511 |
170844 |
21355 |
| Piccolo128 |
64 |
18664 |
2333 |
19953 |
2494 |
| Piccolo80 |
64 |
17434 |
2179 |
18486 |
2310 |
| SEA |
96 |
19469 |
1622 |
19609 |
1634 |
| SKIPJACK |
64 |
44834 |
5604 |
44834 |
5604 |
| TWINE80 |
64 |
17208 |
2151 |
10589 |
1323 |
| TWINE128 |
64 |
21599 |
2699 |
10604 |
1325 |
| SIMON64_96 |
64 |
11062 |
1382 |
11112 |
1389 |
| SIMON64_128 |
64 |
13120 |
1640 |
18881 |
2360 |
| SIMON96_96 |
96 |
47806 |
3983 |
48005 |
4000 |
| SIMON96_144 |
96 |
49637 |
4136 |
49857 |
4154 |
| SIMON128_128 |
128 |
39370 |
2460 |
39657 |
2478 |
| SPECK64_96 |
64 |
6143 |
767 |
5744 |
718 |
| SPECK64_128 |
64 |
6378 |
797 |
6008 |
751 |
| SPECK96_96 |
96 |
17911 |
1492 |
12286 |
1023 |
| SPECK96_144 |
96 |
18687 |
1557 |
14537 |
1211 |
| SPECK128_128 |
128 |
13376 |
836 |
11806 |
737 |
Memory usage
| Function |
Stack size (bytes) |
| hline
AES |
44 |
| CLEFIA128 |
195 |
| CLEFIA192 |
295 |
| CLEFIA256 |
294 |
| DESXL |
81 |
| DIRnoekeon |
21 |
| HIGHT |
12 |
| IDEA |
87 |
| INDnoekeon |
21 |
| KATAN32 |
1911 |
| KATAN48 |
1949 |
| KATAN64 |
308 |
| KLEIN64 |
33 |
| KLEIN80 |
32 |
| KLEIN96 |
34 |
| KTANTAN32 |
934 |
| KTANTAN48 |
992 |
| KTANTAN64 |
1062 |
| LBlock |
14 |
| LED128 |
72 |
| LED128_tcalc |
50 |
| LED128_tdur |
50 |
| LED64 |
72 |
| LED64_tcalc |
50 |
| LED64_tdur |
49 |
| MCRYPTON64 |
18 |
| MCRYPTON96 |
21 |
| MCRYPTON128 |
18 |
| MIBS64 |
26 |
| MIBS80 |
23 |
| PRESENT_SIZE |
139 |
| PRESENT_SPEED |
137 |
| Piccolo128 |
90 |
| Piccolo80 |
78 |
| SEA |
16 |
| SKIPJACK |
21 |
| TWINE80 |
26 |
| TWINE128 |
39 |
| SIMON64_96 |
16 |
| SIMON64_128 |
36 |
| SIMON96_96 |
65 |
| SIMON96_144 |
85 |
| SIMON128_128 |
54 |
| SPECK64_96 |
10 |
| SPECK64_128 |
10 |
| SPECK96_96 |
31 |
| SPECK96_144 |
29 |
| SPECK128_128 |
27 |