Kernels
KERNELS202 math · 16 application components · 2 privacy-preserving applications
SPECIFICATIONS2611 answered · 15 with nothing yet
IMPLEMENTATIONS21across 4 libraries
LAST 30 DAYS
25 submissions · 11 kernels moved
OPEN CHALLENGES15prizes on 1 kernel
ALL 20L1 · Math 2L2 · Cryptographic Components emptyL3 · Advanced Cryptography emptyL4 · Application Components 16L5 · Privacy-Preserving Applications 2
L1 · Math2 kernels · 2 specifications · 7 implementations
Element-wise MultiplyThe element-wise product of two length-N vectors: c_i = a_i * b_i.1 spec5 implsARITHMETICVECTORREFERENCECPUPolynomial MultiplicationCompute the product of two polynomials. The coefficient domain, polynomial ring and representation are fixed by individual specifications, not by the kernel.1 spec2 implsARITHMETICPOLYNOMIALRINGNTT
L4 · Application Components16 kernels · 22 specifications · 14 implementations
Encrypted AXPYr = a·x + y over vectors: one scale, one add. The BLAS level-1 classic, and the first kernel measured over encrypted data.1 spec3 implsFHECKKSARITHMETICREFERENCEEncrypted MaximumCompute the maximum of a collection of encrypted values without revealing the individual inputs. The plaintext type, size, scheme and exactness are fixed by individual specifications.2 specs1 implFHECOMPARISONBGVCHALLENGEEncrypted Signsign(x) for every element of a secret vector — the comparison primitive FHE does not have.1 spec2 implsFHECOMPARISONMLCHALLENGEEncrypted Logisticσ(x) = 1/(1+e⁻ˣ) for every element of a secret vector — the probability gate of machine learning, encrypted.1 spec2 implsFHEMLACTIVATIONCHALLENGEEncrypted ReLUmax(0, x) for every element of a secret vector — the activation function of deep learning, encrypted.1 spec2 implsFHEMLACTIVATIONCHALLENGEEncrypted LookupA[i] with both the table and the index secret — random access without revealing the address.2 specs1 implFHEDATA-ACCESSPIRCHALLENGEEncrypted Matrix MultiplicationC = A·B over square matrices — the workhorse of linear algebra, encrypted.2 specs1 implFHELINEAR-ALGEBRAMLCHALLENGEEncrypted Parityx mod 2 for every element of a secret vector — one exact bit out of an approximate scheme.2 specs1 implFHEBITWISECHALLENGEEncrypted Shift Leftx << n with the value and the count both secret — an EVM opcode, evaluated blind.2 specs1 implFHEBLOCKCHAINEVMCHALLENGEEncrypted GELUEvaluate the GELU activation on an encrypted real vector under CKKS.1 spec0 implsquietCKKSEncrypted Matrix InverseCompute the inverse of an encrypted square matrix under CKKS.1 spec0 implsquietCKKSEncrypted ModuloCompute the elementwise modulo of two encrypted integer vectors under CKKS.2 specs0 implsquietCKKSEncrypted SVDCompute the singular values of an encrypted matrix under CKKS.1 spec0 implsquietCKKSEncrypted SoftmaxMap an encrypted real vector to a probability distribution over its slots under CKKS.1 spec0 implsquietCKKSEncrypted SortReturn an encrypted real array in non-decreasing order under CKKS.1 spec0 implsquietCKKSEncrypted k-Nearest NeighboursReturn the k nearest neighbours of an encrypted query over an encrypted dataset under CKKS.1 spec0 implsquietCKKS
L5 · Privacy-Preserving Applications2 kernels · 2 specifications · 0 implementations
20 kernels shown · L2 and L3 have none yet