Skip to content

Commit 6547b63

Browse files
Version bump to v1.3.0 and update README.
Signed-off-by: Yogaraj Alamenda <yogarajx.alamenda@intel.com>
1 parent bf8baa5 commit 6547b63

File tree

12 files changed

+49
-18
lines changed

12 files changed

+49
-18
lines changed

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -527,7 +527,8 @@ should follow the procedure below to install it:
527527
## Test the Intel&reg; QuickAssist Technology OpenSSL\* Engine
528528

529529
Run this command to verify the Intel&reg; QAT OpenSSL\* Engine is loaded
530-
correctly:
530+
correctly: This should not be used to determine QAT Engine capabilities as
531+
it will not display all the algorithms that are supported in QAT Engine.
531532

532533
```text
533534
cd /path/to/openssl_install/bin

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Process this file with autoconf to produce a configure script.
33

44
AC_PREREQ([2.68])
5-
AC_INIT([qatengine], [1.2.0], [])
5+
AC_INIT([qatengine], [1.3.0], [])
66
AC_CONFIG_SRCDIR([config.h.in])
77
AC_CONFIG_HEADERS([config.h])
88
AC_CONFIG_AUX_DIR([.])

docs/config_options.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,11 @@ The following is a list of the options that can be used with the
170170
This flag is valid only on 4xxx(QAT gen 4 devices) as the support is not available
171171
for earlier generations of QAT devices (e.g. c62x, dh895xxcc, etc.)
172172
173+
--disable-qat_hw_sm2/--enable-qat_hw_sm2
174+
Disable/Enable Intel(R) QAT Hardware SM2 acceleration (disabled by default).
175+
This flag is valid only on 4xxx(QAT gen 4 devices) as the support is not available
176+
for earlier generations of QAT devices (e.g. c62x, dh895xxcc, etc.)
177+
173178
--disable-qat_hw_chachapoly/--enable-qat_hw_chachapoly
174179
Disable/Enable Intel(R) QAT Hardware CHACHA20-POLY1305 acceleration (disabled by default).
175180
This flag is valid only on 4xxx(QAT gen 4 devices) as the support is not available

docs/features.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
* SM4-CBC (Not supported in qatlib)
3131
* SHA3-224/256/384/512
3232
* ChaCha20-Poly1305
33+
* SM2 (Not supported in qatlib)
3334
* SM3 (Not supported in qatlib)
3435

3536
Please refer [here](qat_hw_algo.md) for supported platforms list and default behaviour.

docs/images/qat_coex.png

33.7 KB
Loading

docs/limitations.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,10 @@
8080
OpenSSL at higher thread counts can produce *worse* performance, due to issues in the way OpenSSL
8181
handles higher thread counts. Check for `native_queued_spin_lock_slowpath()` consuming CPU process
8282
idle time, and see the OpenSSL GitHub issues and web articles below.
83+
* Nginx Handshake Performance in OpenSSL3.0 is slightly slower compared to OpenSSL 1.1.1. The same
84+
behaviour is observed in OpenSSL_SW as well. PRF and HKDF are not offloaded via QAT Engine due to
85+
the issue [OpenSSL#21622][5]
86+
* Performance scaling is not linear in QAT2.0 supported platforms in ECDSA and chacha-poly algorithms.
8387

8488
Articles:
8589

@@ -93,3 +97,4 @@
9397
[2]:https://github.com/openssl/openssl/issues/18298
9498
[3]:https://github.com/openssh/openssh-portable/commit/c9f7bba2e6f70b7ac1f5ea190d890cb5162ce127
9599
[4]:https://github.com/openssl/openssl/issues/18509
100+
[5]:https://github.com/openssl/openssl/issues/21622

docs/qat_common.md

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,16 @@ The default behavior can be changed using corresponding algorithm's enable
1717
flags (eg:--enable-qat_sw_rsa) in which case the individual algorithms enabled
1818
(either qat_hw or qat_sw) in the build configure will get accelerated.
1919

20+
For the algorithms RSA2K/3K/4K, ECDHP256/P384/X25519 & ECDSAP384 to reach
21+
better performance, QAT Engine uses both QAT_HW and QAT_SW for acceleration
22+
when QAT_HW capacity is reached with co-existence build. The Control flow is
23+
mentioned in the Figure below.
24+
25+
<p align=center>
26+
<img src="images/qat_coex.png" alt="drawing" width="300"/>
27+
</p>
28+
29+
2030
## Run time Co-existence configuration using HW & SW algorithm bitmap
2131
Intel&reg; QAT OpenSSL\* Engine supports a runtime mechanism to dynamically choose
2232
the QAT_HW or QAT_SW or both for each algorithm, using QAT_HW and QAT_SW dependent
@@ -35,7 +45,7 @@ and the bit map of each algorithm is defined below:
3545
| ECX448 | 0x00040 | HW |
3646
| PRF | 0x00080 | HW |
3747
| HKDF | 0x00100 | HW |
38-
| SM2(ECDSA) | 0x00200 | SW |
48+
| SM2(ECDSA) | 0x00200 | HW > SW |
3949
| AES_GCM | 0x00400 | Both (SW > HW) |
4050
| AES_CBC_HMAC_SHA | 0x00800 | HW |
4151
| SM4_CBC | 0x01000 | Both (HW > SW) |
@@ -164,7 +174,7 @@ self tests, integrity tests and will satisfy other FIPS 140-3 CMVP & CAVP
164174
requirements. The FIPS is build as RPM using the specfile fips/qatengine_fips.spec
165175
with QAT_HW & QAT_SW Coexistence enabled along with other flags enabled.
166176

167-
Please note that the version v1.2.0 is only satisfying FIPS 140-3 Level-1
177+
Please note that the version v1.3.0 is only satisfying FIPS 140-3 Level-1
168178
certification requirements and not FIPS certified yet.
169179
The FIPS 140-3 certification is under process.
170180

docs/software_requirements.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ that supports OpenSSL\* 1.1.1 or OpenSSL\* 3.0 or BoringSSL\* and Intel&reg; Qui
66
Technology Driver for Linux or Intel&reg; QuickAssist Technology
77
Driver for FreeBSD. This release was validated on the following:
88

9-
* Intel&reg; QuickAssist Technology Driver for Linux\* HW Version 2.0 (RHEL\* 8.6) - **QAT20.L.1.0.40-00004**
9+
* Intel&reg; QuickAssist Technology Driver for Linux\* HW Version 2.0 (RHEL\* 8.6) - **QAT20.L.1.0.50-00003**
1010
* Intel&reg; QuickAssist Technology Driver for Linux\* HW Version 1.7 & 1.8 (CentOS\* 8.4 & Ubuntu\* 20.04.2) - **QAT.L.4.22.0-00001**
1111
* Intel&reg; QuickAssist Technology Driver for FreeBSD\* HW Version 1.7 (FreeBSD\* 12.4) - **QAT.B.3.12.0-00004**
12-
* OpenSSL\* 1.1.1u & 3.0.9
13-
* BoringSSL\* commit - [987dff1][1]
12+
* OpenSSL\* 1.1.1v & 3.0.10
13+
* BoringSSL\* commit - [23ed9d3][1]
1414
* BabaSSL - 8.3.2
1515

1616
## qat_sw Requirements
@@ -29,10 +29,10 @@ This release was validated on the following:
2929

3030
* Operating system: Ubuntu\* 20.04.2 LTS
3131
* Intel&reg; Crypto Multi-buffer library from the [ipp-crypto][2] release
32-
version **IPP Crypto 2021.7.1**
33-
* Intel&reg; Multi-Buffer crypto for IPsec Library release version **v1.3**
34-
* OpenSSL\* 1.1.1u & 3.0.9
35-
* BoringSSL\* commit - [987dff1][1]
32+
version **IPP Crypto 2021.8**
33+
* Intel&reg; Multi-Buffer crypto for IPsec Library release version **v1.4**
34+
* OpenSSL\* 1.1.1v & 3.0.10
35+
* BoringSSL\* commit - [23ed9d3][1]
3636
* BabaSSL - 8.3.2
3737

3838
--------------------------------------------------------------------------------
@@ -43,7 +43,7 @@ QAT Engine(qat_hw & qat_sw) is also planning to drop the support for OpenSSL\*
4343

4444
--------------------------------------------------------------------------------
4545

46-
[1]:https://github.com/google/boringssl/commit/987dff1a9fa953a8c7dffa369d78caae02b8d9ab
46+
[1]:https://github.com/google/boringssl/commit/23ed9d3852bbc738bebeaa0fe4a0782f91d7873c
4747
[2]:https://github.com/intel/ipp-crypto
4848
[3]:https://github.com/intel/ipp-crypto/tree/develop/sources/ippcp/crypto_mb
4949
[4]:https://github.com/intel/intel-ipsec-mb

e_qat.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -163,13 +163,13 @@ int qat_fips_kat_test;
163163
const char *engine_qat_id = STR(QAT_ENGINE_ID);
164164
#if defined(QAT_HW) && defined(QAT_SW)
165165
const char *engine_qat_name =
166-
"Reference implementation of QAT crypto engine(qat_hw & qat_sw) v1.2.0";
166+
"Reference implementation of QAT crypto engine(qat_hw & qat_sw) v1.3.0";
167167
#elif QAT_HW
168168
const char *engine_qat_name =
169-
"Reference implementation of QAT crypto engine(qat_hw) v1.2.0";
169+
"Reference implementation of QAT crypto engine(qat_hw) v1.3.0";
170170
#else
171171
const char *engine_qat_name =
172-
"Reference implementation of QAT crypto engine(qat_sw) v1.2.0";
172+
"Reference implementation of QAT crypto engine(qat_sw) v1.3.0";
173173
#endif
174174
unsigned int engine_inited = 0;
175175
int fallback_to_openssl = 0;

fips/qatprovider-fips.spec

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,5 +201,8 @@ rm -rf %{buildroot}
201201
%{_includedir}/crypto_mb/sm4_gcm.h
202202

203203
%changelog
204+
* Wed Aug 09 2023 Yogaraj Alamenda <yogarajx.alamenda@intel.com> - 1.3.0-1
205+
- Update to v1.3.0
206+
204207
* Wed Jun 14 2023 Ponnam Srinivas <ponnamsx.srinivas@intel.com> - 1.2.0-1
205208
- Initial Version of RPM for QAT Provider with FIPS Support.

0 commit comments

Comments
 (0)