Crates.io | feanor-math-hexl |
lib.rs | feanor-math-hexl |
version | 0.2.0 |
source | src |
created_at | 2024-12-02 13:51:30.465316 |
updated_at | 2024-12-02 13:51:30.465316 |
description | A Rust wrapper for the Intel HEXL library. |
homepage | https://github.com/FeanorTheElf/feanor-math-hexl |
repository | https://github.com/FeanorTheElf/feanor-math-hexl |
max_upload_size | |
id | 1468668 |
size | 25,572 |
feanor-math-hexl
A wrapper around the Intel Homomorphic Encryption Accelerator (HEXL) library that provides a fast implementation of power-of-two length negacyclic Number-Theoretic transforms (NTT).
The library builds on feanor-math
, and exposes the base wrapper [hexl::HEXLNegacyclicNTT
] and also the convolution algorithm [conv::HEXLConvolution
] that uses it internally.
To use this library, you need an installation of HEXL.
The buildscript will not attempt to download or build HEXL, thus you must ensure that the HEXL header files and a static library build are available.
This library will search for these in a few standard locations (currently only /usr/local/include
resp. /usr/local/lib
), but the location can be overriden using environment variables.
HEXL_DIR
will result in feanor-math-hexl
expecting the static library to be in HEXL_DIR/lib
and the headers in HEXL_DIR/include
HEXL_LIB_DIR
and HEXL_INCLUDE_DIR
will result in feanor-math-hexl
expecting the static library to be in HEXL_LIB_DIR
and the headers in HEXL_INCLUDE_DIR