Files
Li, Xun 9fafc27e8f Linux 2.25 Open Source Gold Release
Upgraded to OpenSSL 3.0.14.
Upgraded Intel(R) Integrated Performance Primitives (IPP) Cryptography library to version
  2021.12.1.
Supported FIPS 140-3 Certifiable IPP Crypto based Trusted Library.
Upgraded Intel SGX Architecture Enclaves based on new IPP crypto library.
Upgraded Intel DCAP Quote Verification Enclave to integrate OpenSSL/SgxSSL 3.0.14.
Removed Intel DCAP PCCS from repository.
Added Ubuntu* 24.04 LTS 64-bit Server support.
Fixed bug.

Note that PCCS is not available from this release. Please follow DCAP installation guide to use
`PCCSAdminTool` to retrieve the attestation collaterals or use old version PCCS.

Signed-off-by: Li, Xun <xun.li@intel.com>
2024-09-26 15:34:56 +08:00
..
2024-09-26 15:34:56 +08:00
2024-09-26 15:34:56 +08:00
2024-09-26 15:34:56 +08:00

The ippcp library is built based on the IPP Cryptography open source project:

In order to build your own IPP crypto, please follow below steps:

  1. Download the prebuilt mitigation tools package as.ld.objdump.{ver}.tar.gz from 01.org, extract the package and copy the tools to /usr/local/bin.
  2. Read the ipp-crypto README to prepare your build environment.
  3. Make sure ipp-crypto source code is prepared.
  4. Build the target ippcp library with the prepared Makefile:
    1. Build the target ippcp library with All-Loads-Mitigation:
       $ make MITIGATION-CVE-2020-0551=LOAD
    
    1. Build the target ippcp library with Branch-Mitigation:
       $ make MITIGATION-CVE-2020-0551=CF
    
    1. Build the target ippcp library with No-Mitigation:
       $ make
    

The built static library libippcp.a and header files will be copied into the right place. Remember to "make clean" before switching the build.

For the IPP crypto reproducible build, please follow the instructions in reproducibility README.md to reproduce the prebuilt IPP crypto.

These are the steps to build the IPP Crypto-based dispatcher code after you built the library:

  1. Enter the IPP Crypto Custom Library Tool directory:
$ cd ./ipp-crypto/tools/ipp_custom_library_tool_python
  1. Generate the function list based on the ippcp.h:
$ awk -F\, '/IPPAPI\(/ {print $2}' ../../../inc/ippcp.h | awk '{print $1}' >functions.txt
  1. Use the Custom Library Tool to generate the dispatcher code:
$ python3 main.py -c -g -p ./ -ff functions.txt -arch intel64 -d sse42 avx2 avx512ifma -root ../../build/.build/RELEASE/ --prefix sgx_disp_
  1. (Optional) You can run below command to check whether the dispatcher code generated successfully:
$ ./build_custom_library_intel64.sh
  1. Copy the generated dispatcher code to the specific SDK directory:
$ cp custom_dispatcher/intel64/* ../../../../../sdk/tlibcrypto/ipp/ipp_disp/intel64/