Authenticated-Encryption Software Performance:
Comparison of CCM, GCM, and OCB


Environment
(details)
Time
(cpb vs. bytes)
Overhead
(subtract time for CTR)
Mode
(clickable)
Over
4096
Time
4096
IPI
(cpb)
Size
(bytes)
Init
(cycles)

Intel x86 i5-650
“Clarkdale”
64-bit
NI


 CCM
 GCM
 OCB
 CTR
2.90 
2.46 
0.21 
4.17 
3.73 
1.48 
1.27 
4.57 
4.53 
1.87 
1.37 
512 
656 
624 
244 
265 
337 
295 
115 

Intel x86 i5-650
“Clarkdale”
32-bit
NI


 CCM
 GCM
 OCB
 CTR
2.79 
2.49 
0.20 
4.18 
3.88 
1.59 
1.39 
4.70 
4.79 
2.04 
1.52 
512 
656 
624 
244 
274 
365 
318 
130 

Intel x86 i5-650
“Clarkdale”
64-bit
Käsper-Schwabe


 GCM
 GCM‑8K
 OCB
 CTR
14.7 
3.19 
0.31 
22.4 
10.9 
8.05 
7.74 
26.7 
15.2 
9.24 
8.98 
1456 
9648 
3216 
1424 
3780 
2560 
3430 
1180 

ARM Cortex-A8
32-bit
OpenSSL


 CCM
 GCM‑256 
 OCB
 CTR
25.9 
26.7 
3.49 
51.3 
50.8 
28.9 
25.4 
53.7 
53.9 
30.9 
25.9 
512 
656 
784 
244 
1390 
3440 
2050 
236 

PowerPC 970
64-bit
OpenSSL


 CCM
 GCM‑256 
 OCB
 CTR
38.2 
16.0 
0.0 
75.7 
53.5 
37.5 
37.5 
77.8 
56.2 
39.6 
37.8 
512 
656 
784 
244 
1510 
1030 
2300 
309 

UltraSPARC III
64-bit
OpenSSL


 CCM
 GCM‑256 
 OCB
 CTR
25.3 
15.2 
0.9 
49.4 
39.3 
25.0 
24.1 
51.7 
41.5 
26.5 
24.4 
512 
656 
784 
244 
1280 
904 
1770 
213 

Last updated: 2010.11.5

Notes: