3.2.13 OpenFHE
OpenFHE [8] est une bibliothèque multiplateforme C++
disponible sous licence BSD 2 clauses qui inclut des implémentations
efficaces de tous les cryptosystèmes FHE courants:
-- Cryptosystème de Brakerski/Fan-Vercauteren (BFV) pour
l'arithmétique entière -- Schéma
Brakerski-Gentry-Vaikuntanathan (BGV) pour l'arithmétique
entière
3.2 Bibliothèques FHE 41
Mémoire de Master 2 Recherche 41 MOUYOUME DIEUDONNE(c)
UYI
-- Cryptosystème Cheon-Kim-Kim-Song (CKKS) pour
l'arithmétique des nombres réels (inclut
le bootstrap approximatif)
-- Cryptosystème Ducas-Micciancio (DM) et
Chillotti-Gama-Georgieva-Izabachene (CGGI) pour
évaluer les circuits booléens et les fonctions
arbitraires sur des espaces de texte en clair plus
grands à l'aide de tables de recherche
OpenFHE implémente des algorithmes efficaces de
système de numérotation des résidus (RNS) pour
atteindre des performances élevées et Intel HEXL
peut être utilisé pour accélérer évidemment
les
calculs sur les processeurs Intel dotés du jeu
d'instructions Intel AVX512-IFMA52.
La version actuelle (stable) est la v1.1.4 (publiée le 8
mars 2024).
OpenFHE est multiplateforme, elle peut être utilisée
sur:
-- Linux
-- MacOS
-- Windows
3.2.14 PALISADE
PALISADE [21] est une bibliothèque multiplateforme C++
disponible sous licence BSD 2 clauses de cryptographie en treillis qui comprend
actuellement des implémentations efficaces des capacités de
cryptographie en treillis suivantes : BFV, BGV, CKSS, FHEW, et THFE.
La bibliothèque est basée sur une architecture
modulaire avec les couches suivantes:
-- Couche d'opérations mathématiques
prenant en charge l'arithmétique modulaire de bas niveau, les
transformations théoriques des nombres et l'échantillonnage
d'entiers. Cette couche est mise en oeuvre pour être portable sur
plusieurs substrats de calcul matériels.
-- Couche d'opérations de treillis
prenant en charge les opérations de treillis, l'algèbre
en anneau et l'échantillonnage de trappes de treillis.
-- Couche crypto contenant des
implémentations efficaces de schémas de cryptographie en
treillis. Couche d'encodage prenant en charge plusieurs encodages de texte en
clair pour les schémas cryptographiques.
Par défaut, la bibliothèque est construite sans
dépendances externes, mais Intel HEXL peut être utilisé
pour accélérer évidemment les calculs sur les processeurs
Intel dotés du jeu d'instructions Intel AVX512-IFMA52. La version
actuelle est la 1.11.9 (publiée le 2 décembre 2022).
PALISADE tourne sur les systèmes suivants:
-- FreeBSD
-- Ubuntu [16.04]
-- Arch Linux
-- Manjaro Linux
3.2 Bibliothèques FHE 42
TABLE 3.2 - Bibliothèques FHE
|
Bibliothèque FHE
|
Cryptosystèmes supportés
|
Langage de pro- grammation
|
Licence
|
Bootstrapping
|
|
SEAL
|
BGV,BFV,CKKS
|
C++/C sharp
|
MIT
|
NON
|
|
OpenFHE
|
BGV,BFV,CKKS, DM,CGGI
|
C++
|
BDS-2 clauses
|
OUI
|
|
PALISADE
|
BGV,BFV,CKKS, DM,CGGI
|
C++
|
BDS-2 clauses
|
OUI
|
|
HELib
|
BGV,CKKS
|
C++
|
Apache
|
OUI
|
|
HEAAN
|
CKKS
|
C++
|
Creativie Com-
mons
|
OUI
|
|
Latigo
|
BGV,BFV,CKKS
|
Go
|
Apache 2.0
|
OUI
|
|
TenSEAL
|
BFV,CKKS
|
C++,Python
|
|
NON
|
|
PyFHE
|
BGV,BFV, CKKS
|
Python
|
OUI
|
|
|
TFHE
|
GSW
|
C,C++
|
Apache 2.0
|
OUI
|
|
FHEW
|
FHEW
|
C,C++
|
GNU
|
OUI
|
Mémoire de Master 2 Recherche 42 MOUYOUME DIEUDONNE(c)
UYI
Mémoire de Master 2 Recherche 43 MOUYOUME
DIEUDONNE(c) UYI
|