1. Crypto Device Supported Functionality Matrices
1.1. Supported Feature Flags
Features availability in crypto drivers
Feature |
a
e
s
n
i
_
g
c
m |
a
e
s
n
i
_
m
b |
a
r
m
v
8 |
c
a
a
m
_
j
r |
c
c
p |
d
p
a
a
2
_
s
e
c |
d
p
a
a
_
s
e
c |
k
a
s
u
m
i |
m
v
s
a
m |
n
u
l
l |
o
c
t
e
o
n
t
x |
o
p
e
n
s
s
l |
q
a
t |
s
n
o
w
3
g |
v
i
r
t
i
o |
z
u
c |
Symmetric crypto |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Asymmetric crypto |
|
|
|
|
|
|
|
|
|
|
|
Y |
|
|
|
|
Sym operation chaining |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
Y |
HW Accelerated |
|
|
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
|
Y |
|
|
|
Protocol offload |
|
|
|
Y |
|
Y |
Y |
|
|
|
|
|
|
|
|
|
CPU SSE |
Y |
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CPU AVX |
Y |
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CPU AVX2 |
Y |
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CPU AVX512 |
|
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CPU AESNI |
Y |
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CPU NEON |
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
CPU ARM CE |
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
|
|
In Place SGL |
|
|
|
Y |
|
Y |
Y |
|
|
Y |
Y |
|
Y |
|
|
|
OOP SGL In SGL Out |
|
|
|
Y |
|
Y |
Y |
|
|
|
Y |
|
Y |
|
|
|
OOP SGL In LB Out |
Y |
|
|
Y |
|
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
OOP LB In SGL Out |
|
|
|
Y |
|
Y |
Y |
|
|
|
|
|
Y |
|
|
|
OOP LB In LB Out |
Y |
|
|
Y |
|
Y |
Y |
|
Y |
|
|
Y |
Y |
|
|
|
Note
- “In Place SGL” feature flag stands for “In place Scatter-gather list”,
which means that an input buffer can consist of multiple segments,
being the operation in-place (input address = output address).
- “OOP SGL In SGL Out” feature flag stands for
“Out-of-place Scatter-gather list Input, Scatter-gater list Output”,
which means pmd supports different scatter-gather styled input and output buffers
(i.e. both can consists of multiple segments).
- “OOP SGL In LB Out” feature flag stands for
“Out-of-place Scatter-gather list Input, Linear Buffers Output”,
which means PMD supports input from scatter-gathered styled buffers,
outputting linear buffers (i.e. single segment).
- “OOP LB In SGL Out” feature flag stands for
“Out-of-place Linear Buffers Input, Scatter-gather list Output”,
which means PMD supports input from linear buffer, outputting
scatter-gathered styled buffers.
- “OOP LB In LB Out” feature flag stands for
“Out-of-place Linear Buffers Input, Linear Buffers Output”,
which means that Out-of-place operation is supported,
with linear input and output buffers.
1.2. Supported Cipher Algorithms
Cipher algorithms in crypto drivers
Cipher algorithm |
a
e
s
n
i
_
g
c
m |
a
e
s
n
i
_
m
b |
a
r
m
v
8 |
c
a
a
m
_
j
r |
c
c
p |
d
p
a
a
2
_
s
e
c |
d
p
a
a
_
s
e
c |
k
a
s
u
m
i |
m
v
s
a
m |
n
u
l
l |
o
c
t
e
o
n
t
x |
o
p
e
n
s
s
l |
q
a
t |
s
n
o
w
3
g |
v
i
r
t
i
o |
z
u
c |
NULL |
|
|
|
|
|
|
|
|
Y |
Y |
Y |
|
Y |
|
|
|
AES CBC (128) |
|
Y |
Y |
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
Y |
|
AES CBC (192) |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
Y |
|
AES CBC (256) |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
Y |
|
AES ECB (128) |
|
|
|
|
Y |
|
|
|
Y |
|
|
|
|
|
|
|
AES ECB (192) |
|
|
|
|
Y |
|
|
|
Y |
|
|
|
|
|
|
|
AES ECB (256) |
|
|
|
|
Y |
|
|
|
Y |
|
|
|
|
|
|
|
AES CTR (128) |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
AES CTR (192) |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
AES CTR (256) |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
AES XTS (128) |
|
|
|
|
|
|
|
|
|
|
Y |
|
|
|
|
|
AES XTS (192) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AES XTS (256) |
|
|
|
|
|
|
|
|
|
|
Y |
|
|
|
|
|
AES DOCSIS BPI |
|
Y |
|
|
|
|
|
|
|
|
|
|
Y |
|
|
|
3DES CBC |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
3DES CTR |
|
|
|
|
|
|
|
|
Y |
|
|
Y |
Y |
|
|
|
3DES ECB |
|
|
|
|
|
|
|
|
|
|
Y |
|
|
|
|
|
DES CBC |
|
Y |
|
|
|
|
|
|
|
|
Y |
|
Y |
|
|
|
DES DOCSIS BPI |
|
Y |
|
|
|
|
|
|
|
|
|
Y |
Y |
|
|
|
SNOW3G UEA2 |
|
|
|
|
|
|
|
|
|
|
Y |
|
Y |
Y |
|
|
KASUMI F8 |
|
|
|
|
|
|
|
Y |
|
|
Y |
|
Y |
|
|
|
ZUC EEA3 |
|
|
|
|
|
|
|
|
|
|
Y |
|
Y |
|
|
Y |
1.3. Supported Authentication Algorithms
Authentication algorithms in crypto drivers
Authentication algorithm |
a
e
s
n
i
_
g
c
m |
a
e
s
n
i
_
m
b |
a
r
m
v
8 |
c
a
a
m
_
j
r |
c
c
p |
d
p
a
a
2
_
s
e
c |
d
p
a
a
_
s
e
c |
k
a
s
u
m
i |
m
v
s
a
m |
n
u
l
l |
o
c
t
e
o
n
t
x |
o
p
e
n
s
s
l |
q
a
t |
s
n
o
w
3
g |
v
i
r
t
i
o |
z
u
c |
NULL |
|
|
|
|
|
|
|
|
Y |
Y |
Y |
|
Y |
|
|
|
MD5 |
|
|
|
|
|
|
|
|
Y |
|
Y |
Y |
|
|
|
|
MD5 HMAC |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
SHA1 |
|
|
|
|
Y |
|
|
|
Y |
|
Y |
Y |
|
|
|
|
SHA1 HMAC |
|
Y |
Y |
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
Y |
|
SHA224 |
|
|
|
|
Y |
|
|
|
Y |
|
Y |
Y |
|
|
|
|
SHA224 HMAC |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
SHA256 |
|
|
|
|
Y |
|
|
|
Y |
|
Y |
Y |
|
|
|
|
SHA256 HMAC |
|
Y |
Y |
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
SHA384 |
|
|
|
|
Y |
|
|
|
Y |
|
Y |
Y |
|
|
|
|
SHA384 HMAC |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
SHA512 |
|
|
|
|
Y |
|
|
|
Y |
|
Y |
Y |
|
|
|
|
SHA512 HMAC |
|
Y |
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
AES XCBC MAC |
|
Y |
|
|
|
|
|
|
|
|
|
|
Y |
|
|
|
AES GMAC |
Y |
|
|
|
|
|
|
|
Y |
|
Y |
Y |
Y |
|
|
|
SNOW3G UIA2 |
|
|
|
|
|
|
|
|
|
|
Y |
|
Y |
Y |
|
|
KASUMI F9 |
|
|
|
|
|
|
|
Y |
|
|
Y |
|
Y |
|
|
|
ZUC EIA3 |
|
|
|
|
|
|
|
|
|
|
Y |
|
Y |
|
|
Y |
AES CMAC (128) |
|
Y |
|
|
Y |
|
|
|
|
|
|
|
Y |
|
|
|
AES CMAC (192) |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
AES CMAC (256) |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
SHA3_224 |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
SHA3_224 HMAC |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
SHA3_256 |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
SHA3_256 HMAC |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
SHA3_384 |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
SHA3_384 HMAC |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
SHA3_512 |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
SHA3_512 HMAC |
|
|
|
|
Y |
|
|
|
|
|
|
|
|
|
|
|
1.4. Supported AEAD Algorithms
AEAD algorithms in crypto drivers
AEAD algorithm |
a
e
s
n
i
_
g
c
m |
a
e
s
n
i
_
m
b |
a
r
m
v
8 |
c
a
a
m
_
j
r |
c
c
p |
d
p
a
a
2
_
s
e
c |
d
p
a
a
_
s
e
c |
k
a
s
u
m
i |
m
v
s
a
m |
n
u
l
l |
o
c
t
e
o
n
t
x |
o
p
e
n
s
s
l |
q
a
t |
s
n
o
w
3
g |
v
i
r
t
i
o |
z
u
c |
AES GCM (128) |
Y |
|
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
AES GCM (192) |
Y |
|
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
AES GCM (256) |
Y |
|
|
Y |
Y |
Y |
Y |
|
Y |
|
Y |
Y |
Y |
|
|
|
AES CCM (128) |
|
Y |
|
|
|
|
|
|
|
|
|
Y |
Y |
|
|
|
AES CCM (192) |
|
|
|
|
|
|
|
|
|
|
|
Y |
Y |
|
|
|
AES CCM (256) |
|
|
|
|
|
|
|
|
|
|
|
Y |
Y |
|
|
|