intel / isa-l_crypto

Other
271 stars 80 forks source link

Intel(R) Intelligent Storage Acceleration Library Crypto Version

Continuous Integration Coverity Status OpenSSF Scorecard

ISA-L_crypto is a collection of optimized low-level functions targeting storage applications. ISA-L_crypto includes:

Also see:

Building ISA-L

Prerequisites

x86_64:

aarch64:

Autotools

To build and install the library with autotools it is usually sufficient to run:

./autogen.sh
./configure
make
sudo make install

Makefile

To use a standard makefile run:

make -f Makefile.unx

Windows

On Windows use nmake to build dll and static lib:

nmake -f Makefile.nmake

Other make targets

Other targets include:

Algorithm recommendations

Legacy or to be avoided algorithms listed in the table below are implemented in the library in order to support legacy applications. Please use corresponding alternative algorithms instead.

+----------------------------------------------------+
| # | Algorithm      | Recommendation | Alternative  |
|---+----------------+----------------+--------------|
| 1 | MD5 integrity  | Legacy         | SHA256       |
|---+----------------+----------------+--------------|
| 2 | SHA1 integrity | Avoid          | SHA256       |
+----------------------------------------------------+

Intel(R) Intelligent Storage Acceleration for Crypto Library depends on C library and it is recommended to use its latest version.

Applications using the Intel(R) Intelligent Storage Acceleration for Crypto Library rely on Operating System to provide process isolation. As the result, it is recommended to use latest Operating System patches and security updates.

DLL Injection Attack

Problem

The Windows OS has an insecure predefined search order and set of defaults when trying to locate a resource. If the resource location is not specified by the software, an attacker need only place a malicious version in one of the locations Windows will search, and it will be loaded instead. Although this weakness can occur with any resource, it is especially common with DLL files.

Solutions

Applications using libisal_crypto DLL library may need to apply one of the solutions to prevent from DLL injection attack.

Two solutions are available:

Resources and Solution Details