Skip to content

Commit 3806698

Browse files
committed
doc/config: Add notes about recommended usage to sample configs and man pages
Add notes about not trying to accelerate algorithms that are already accelerated by OpenSSL itself using CPACF. Also add a note about disabling FIPS mode because the provider is not FIPS certified. Signed-off-by: Ingo Franzki <ifranzki@linux.ibm.com>
1 parent 5c8de9c commit 3806698

File tree

6 files changed

+52
-15
lines changed

6 files changed

+52
-15
lines changed

src/engine/doc/ibmca.man

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,16 @@ If ALL is not used, the default_algorithms consists of a comma separated list
4747
of
4848
.I mechanisms
4949
:
50-
.B CIPHERS | DIGESTS | RSA | DH | DSA.
50+
.B CIPHERS | DIGESTS | RSA | DH | DSA | EC | PKEY_CRYPTO | RAND
5151
.PP
5252
Only all CIPHERS and/or DIGESTS can be
5353
de/activated. Algorithms like AES can not be de/activated independently.
54+
.PP
55+
.B Note:
56+
Algorithms denoted by CIPHERS, DIGESTS, EC (since IBM z15 for certain curves),
57+
and PKEY are already accelerated by OpenSSL itself using CPACF.
58+
Therefore, do not accelerate them using the IBMCA engine. This would actually
59+
make them slower.
5460
.SS Control Command
5561
IBMCA does support one optional control command:
5662
.PP

src/engine/ibmca-engine-opensslconfig.in

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,16 @@ init = 1
9595
# with "ALL" denoting the same as all of them in a comma separated
9696
# list.
9797
#
98+
# Note: Algorithms denoted by CIPHERS, DIGESTS, EC (since IBM z15 for certain
99+
# curves), and PKEY are already accelerated by OpenSSL itself using CPACF.
100+
# Therefore, do not accelerate them using the IBMCA engine. This would actually
101+
# make them slower.
102+
#
103+
# Moreover, ibmca's CIPHER and DIGEST implementations do not
104+
# support the processing of messages in arbitrary chunk sizes.
105+
# All chunks, except the final one, are required to be a multiple
106+
# of the primitive's block size.
107+
#
98108
# RSA
99109
# - RSA encrypt, decrypt, sign and verify, key lengths 512-4096
100110
#
@@ -128,8 +138,8 @@ init = 1
128138
#
129139
# PKEY_CRYPTO
130140
# - X25519, X448, ED25519, ED448
131-
#default_algorithms = ALL
132-
default_algorithms = PKEY_CRYPTO,RAND,RSA,DH,DSA,EC
141+
142+
default_algorithms = RSA,DH,DSA,RAND
133143
|;
134144
close($ih);
135145
close($oh);

src/engine/openssl.cnf.sample

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@ init = 1
3030
# with "ALL" denoting the same as all of them in a comma separated
3131
# list.
3232
#
33-
# Note that IBM Z hardware support for the symmetric crypto
34-
# primitives (CIPHERS, DIGESTS) most likely comes natively with your
35-
# OpenSSL version. Therefore, this sample configuration excludes them
36-
# from the default_algorithms list below.
33+
# Note: Algorithms denoted by CIPHERS, DIGESTS, EC (since IBM z15 for certain
34+
# curves), and PKEY are already accelerated by OpenSSL itself using CPACF.
35+
# Therefore, do not accelerate them using the IBMCA engine. This would actually
36+
# make them slower.
3737
#
3838
# Moreover, ibmca's CIPHER and DIGEST implementations do not
3939
# support the processing of messages in arbitrary chunk sizes.

src/provider/doc/ibmca-provider.man

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,11 @@ of
8484
.I mechanisms
8585
: \fBRSA\fP | \fBEC\fP | \fBDH\fP.
8686
If this option is not specified, \fBALL\fP is the default.
87+
.PP
88+
.B Note:
89+
Depending on the hardware level (IBM z15), EC is already accelerated implicitly
90+
by OpenSSL for certain curves. Therefore, do not accelerate EC using the IBMCA
91+
provider if you are on an IBM z15 or later. This would actually make it slower.
8792
.RE
8893
.PP
8994
.IP "debug = yes | no | stderr"

src/provider/ibmca-provider-opensslconfig

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -120,10 +120,18 @@ activate = 1
120120
identity = ibmca
121121
module = ibmca-provider.so
122122
activate = 1
123-
#debug = yes
124-
#fips = yes
125-
#algorithms = RSA,EC,DH
126-
algorithms = ALL
123+
# Note: Disable the FIPS mode of the IBMCA provider by setting fips=no in the
124+
# provider configuration. The IBMCA provider is currently not FIPS-certified.
125+
# It does not perform any FIPS self-tests itself nor an integrity check which
126+
# would be required to be FIPS-certified. It is only checked whether libica
127+
# library has successfully performed its self-tests and integrity checks when
128+
# FIPS mode is enabled.
129+
fips = no
130+
# Note: Depending on the hardware level (IBM z15), EC is already accelerated
131+
# implicitly by OpenSSL for certain curves. Therefore, do not accelerate EC
132+
# using the IBMCA provider if you are on an IBM z15 or later. This would
133+
# actually make it slower.
134+
algorithms = RSA,EC,DH
127135
#fallback-properties = provider=default
128136
|;
129137

src/provider/openssl.cnf.provider.sample

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,18 @@ activate = 1
2424
identity = ibmca
2525
module = ibmca-provider.so
2626
activate = 1
27-
#debug = yes
28-
#fips = yes
29-
#algorithms = RSA,EC,DH
30-
algorithms = ALL
27+
# Note: Disable the FIPS mode of the IBMCA provider by setting fips=no in the
28+
# provider configuration. The IBMCA provider is currently not FIPS-certified.
29+
# It does not perform any FIPS self-tests itself nor an integrity check which
30+
# would be required to be FIPS-certified. It is only checked whether libica
31+
# library has successfully performed its self-tests and integrity checks when
32+
# FIPS mode is enabled.
33+
fips = no
34+
# Note: Depending on the hardware level (IBM z15), EC is already accelerated
35+
# implicitly by OpenSSL for certain curves. Therefore, do not accelerate EC
36+
# using the IBMCA provider if you are on an IBM z15 or later. This would
37+
# actually make it slower.
38+
algorithms = RSA,EC,DH
3139
#fallback-properties = provider=default
3240

3341
[evp_properties]

0 commit comments

Comments
 (0)