afhe library

Adapter for Fully Homomorphic Encryption (FHE) libraries.

This library provides a flexible interface for users to interact with supported C++ FHE libraries. Typically, the user will interact with an implementation of the Afhe class, rather than the abstract class directly.

Classes

Afhe
Abstract Fully Homomorphic Encryption
Backend
Represents the backend library used for the encryption scheme.
Ciphertext
Represents an underlying C ciphertext object.
Key
Represents an underlying key object in memory
Plaintext
Represents an underlying C plaintext object.
Scheme
Represents the supported schemes used by the backend.

Properties

desktopPubCachePath String
no setter
dylib DynamicLibrary
final
libfhel String
final
version String
final

Functions

arrayToDoubleList(Pointer<Double> ptr, int length) List<double>
Convert C double array to Dart double list.
doubleListToArray(List<double> list) Pointer<Double>
Convert Dart double list to C double array.
intListToArray(List<int> list) Pointer<Int>
Convert Dart int list to C int array.
intListToUint64Array(List<int> list) Pointer<Uint64>
Convert Dart int list to C uint64 array.
raiseForStatus() String
Checks for errors in the C++ library and throws a Dart Exception if an error is found.
uint64ArrayToIntList(Pointer<Uint64> ptr, int length) List<int>
Convert C uint64 array to Dart int list.