Documentation
¶
Index ¶
- func Enc(M [][]float64, encryptor *rgsw.Encryptor, levelQ int, levelP int, ...) [][]*rgsw.Ciphertext
- func EncPack(M [][]float64, tau int, encryptorRGSW *rgsw.Encryptor, levelQ int, levelP int, ...) []*rgsw.Ciphertext
- func Mult(ctRLWE []*rlwe.Ciphertext, ctRGSW [][]*rgsw.Ciphertext, ...) []*rlwe.Ciphertext
- func MultPack(ctRLWE []*rlwe.Ciphertext, ctRGSW []*rgsw.Ciphertext, ...) *rlwe.Ciphertext
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Enc ¶
func Enc(M [][]float64, encryptor *rgsw.Encryptor, levelQ int, levelP int, params rlwe.Parameters) [][]*rgsw.Ciphertext
Encrypts float matrix into an RGSW matrix Input - M: m x n float matrix Output - ctOut: m x n RGSW matrix
func EncPack ¶
func EncPack(M [][]float64, tau int, encryptorRGSW *rgsw.Encryptor, levelQ int, levelP int, ringQ *ring.Ring, params rlwe.Parameters) []*rgsw.Ciphertext
Encrypts float matrix into a RGSW vector by PACKING each column Input - M: m x n float matrix Output - ctOut: n x 1 RGSW vector * ctOut[i] = RGSW encryption of i-th column of M
func Mult ¶
func Mult(ctRLWE []*rlwe.Ciphertext, ctRGSW [][]*rgsw.Ciphertext, evaluator *rgsw.Evaluator, ringQ *ring.Ring, params rlwe.Parameters) []*rlwe.Ciphertext
Computes external product Input - ctRGSW: m x n RGSW matrix - ctRLWE: n x l RLWE vector Output - ctOut: m x l RLWE vector
func MultPack ¶
func MultPack(ctRLWE []*rlwe.Ciphertext, ctRGSW []*rgsw.Ciphertext, evaluatorRGSW *rgsw.Evaluator, ringQ *ring.Ring, params rlwe.Parameters) *rlwe.Ciphertext
Computes external product with PACKING A x b = c ctRGSW[i] : RGSW encryption of i-th column of A ctRLWE[i] : RLWE encryption of i-th component of b ctOut : RLWE encryption of Pack(c)
Input - ctRGSW: n x 1 RGSW vector - ctRLWE: n x l RLWE vector Output - ctOut: RLWE ciphertext
Types ¶
This section is empty.