SYMBOL INDEX (434 symbols across 72 files) FILE: abe/dippe.go type DIPPE (line 39) | type DIPPE struct method NewDIPPEAuth (line 109) | func (d *DIPPE) NewDIPPEAuth(id int) (*DIPPEAuth, error) { method Encrypt (line 158) | func (d *DIPPE) Encrypt(msg string, x data.Vector, pubKeys []*DIPPEPub... method Decrypt (line 274) | func (d *DIPPE) Decrypt(cipher *DIPPECipher, keys []data.VectorG2, v d... method ExactThresholdPolicyVecInit (line 347) | func (d DIPPE) ExactThresholdPolicyVecInit(attrib []int, threshold int... method ConjunctionPolicyVecInit (line 366) | func (d DIPPE) ConjunctionPolicyVecInit(attrib []int, numAttrib int) (... method AttributeVecInit (line 390) | func (d DIPPE) AttributeVecInit(attrib []int, numAttrib int) (data.Vec... type DIPPEPubKey (line 47) | type DIPPEPubKey struct type DIPPESecKey (line 54) | type DIPPESecKey struct type DIPPEAuth (line 61) | type DIPPEAuth struct method DeriveKeyShare (line 225) | func (a *DIPPEAuth) DeriveKeyShare(v data.Vector, pubKeys []*DIPPEPubK... type DIPPECipher (line 68) | type DIPPECipher struct function NewDIPPE (line 80) | func NewDIPPE(secLevel int) (*DIPPE, error) { FILE: abe/dippe_test.go function TestDIPPE (line 29) | func TestDIPPE(t *testing.T) { function TestDIPPE_ABE_threshold (line 84) | func TestDIPPE_ABE_threshold(t *testing.T) { function TestDIPPE_ABE_conjugation (line 157) | func TestDIPPE_ABE_conjugation(t *testing.T) { FILE: abe/fame.go type FAME (line 51) | type FAME struct method GenerateMasterKeys (line 75) | func (a *FAME) GenerateMasterKeys() (*FAMEPubKey, *FAMESecKey, error) { method Encrypt (line 112) | func (a *FAME) Encrypt(msg string, msp *MSP, pk *FAMEPubKey) (*FAMECip... method GenerateAttribKeys (line 231) | func (a *FAME) GenerateAttribKeys(gamma []string, sk *FAMESecKey) (*FA... method Decrypt (line 333) | func (a *FAME) Decrypt(cipher *FAMECipher, key *FAMEAttribKeys, pk *FA... function NewFAME (line 56) | func NewFAME() *FAME { type FAMESecKey (line 61) | type FAMESecKey struct type FAMEPubKey (line 67) | type FAMEPubKey struct type FAMECipher (line 98) | type FAMECipher struct type FAMEAttribKeys (line 221) | type FAMEAttribKeys struct FILE: abe/fame_test.go function TestFAME (line 26) | func TestFAME(t *testing.T) { FILE: abe/gpsw.go type GPSWParams (line 51) | type GPSWParams struct type GPSW (line 57) | type GPSW struct method GenerateMasterKeys (line 81) | func (a *GPSW) GenerateMasterKeys() (*GPSWPubKey, data.Vector, error) { method Encrypt (line 107) | func (a *GPSW) Encrypt(msg string, gamma interface{}, pk *GPSWPubKey) ... method GeneratePolicyKey (line 192) | func (a *GPSW) GeneratePolicyKey(msp *MSP, sk data.Vector) (*GPSWKey, ... method Decrypt (line 255) | func (a *GPSW) Decrypt(cipher *GPSWCipher, key *GPSWKey) (string, erro... function NewGPSW (line 65) | func NewGPSW(l int) *GPSW { type GPSWPubKey (line 73) | type GPSWPubKey struct type GPSWCipher (line 94) | type GPSWCipher struct type GPSWKey (line 183) | type GPSWKey struct function getSum (line 231) | func getSum(y *big.Int, p *big.Int, d int) (data.Vector, error) { FILE: abe/gpsw_test.go function TestGPSW (line 27) | func TestGPSW(t *testing.T) { FILE: abe/ma-abe.go type MAABE (line 46) | type MAABE struct method NewMAABEAuth (line 90) | func (a *MAABE) NewMAABEAuth(id string, attribs []string) (*MAABEAuth,... method Encrypt (line 242) | func (a *MAABE) Encrypt(msg string, msp *MSP, pks []*MAABEPubKey) (*MA... method Decrypt (line 438) | func (a * MAABE) Decrypt(ct *MAABECipher, ks []*MAABEKey) (string, err... function NewMAABE (line 54) | func NewMAABE() *MAABE { type MAABEPubKey (line 66) | type MAABEPubKey struct type MAABESecKey (line 73) | type MAABESecKey struct type MAABEAuth (line 80) | type MAABEAuth struct method PubKeys (line 135) | func (auth *MAABEAuth) PubKeys() *MAABEPubKey { method AddAttribute (line 156) | func (auth *MAABEAuth) AddAttribute(attrib string) error { method RegenerateKey (line 195) | func (auth *MAABEAuth) RegenerateKey(attrib string) error { method GenerateAttribKeys (line 401) | func (auth *MAABEAuth) GenerateAttribKeys(gid string, attribs []string... type MAABECipher (line 227) | type MAABECipher struct type MAABEKey (line 390) | type MAABEKey struct FILE: abe/ma-abe_test.go function TestMAABE (line 9) | func TestMAABE(t *testing.T) { FILE: abe/policy.go type MSP (line 34) | type MSP struct function BooleanToMSP (line 53) | func BooleanToMSP(boolExp string, convertToOnes bool) (*MSP, error) { function booleanToMSPIterative (line 96) | func booleanToMSPIterative(boolExp string, vec data.Vector, c int) (*MSP... function makeAndVecs (line 202) | func makeAndVecs(vec data.Vector, c int) (data.Vector, data.Vector) { FILE: abe/policy_test.go function TestBooleanToMsp (line 27) | func TestBooleanToMsp(t *testing.T) { FILE: data/matrix.go type Matrix (line 32) | type Matrix method Copy (line 103) | func (m Matrix) Copy() Matrix { method Rows (line 113) | func (m Matrix) Rows() int { method Cols (line 118) | func (m Matrix) Cols() int { method DimsMatch (line 128) | func (m Matrix) DimsMatch(other Matrix) bool { method GetCol (line 134) | func (m Matrix) GetCol(i int) (Vector, error) { method Transpose (line 149) | func (m Matrix) Transpose() Matrix { method CheckBound (line 163) | func (m Matrix) CheckBound(bound *big.Int) error { method CheckDims (line 175) | func (m Matrix) CheckDims(rows, cols int) bool { method Mod (line 181) | func (m Matrix) Mod(modulo *big.Int) Matrix { method Apply (line 195) | func (m Matrix) Apply(f func(*big.Int) *big.Int) Matrix { method Dot (line 208) | func (m Matrix) Dot(other Matrix) (*big.Int, error) { method Add (line 229) | func (m Matrix) Add(other Matrix) (Matrix, error) { method Sub (line 250) | func (m Matrix) Sub(other Matrix) (Matrix, error) { method Mul (line 267) | func (m Matrix) Mul(other Matrix) (Matrix, error) { method MulScalar (line 286) | func (m Matrix) MulScalar(x *big.Int) Matrix { method MulVec (line 296) | func (m Matrix) MulVec(v Vector) (Vector, error) { method MulXMatY (line 311) | func (m Matrix) MulXMatY(x, y Vector) (*big.Int, error) { method Minor (line 327) | func (m Matrix) Minor(i int, j int) (Matrix, error) { method Determinant (line 351) | func (m Matrix) Determinant() (*big.Int, error) { method InverseMod (line 380) | func (m Matrix) InverseMod(p *big.Int) (Matrix, error) { method MulG1 (line 427) | func (m Matrix) MulG1() MatrixG1 { method MulG2 (line 438) | func (m Matrix) MulG2() MatrixG2 { method MatMulMatG1 (line 451) | func (m Matrix) MatMulMatG1(other MatrixG1) (MatrixG1, error) { method MatMulMatG2 (line 481) | func (m Matrix) MatMulMatG2(other MatrixG2) (MatrixG2, error) { method MatMulVecG2 (line 511) | func (m Matrix) MatMulVecG2(other VectorG2) (VectorG2, error) { method GaussianElimination (line 536) | func (m Matrix) GaussianElimination(p *big.Int) (Matrix, error) { method InverseModGauss (line 584) | func (m Matrix) InverseModGauss(p *big.Int) (Matrix, *big.Int, error) { method DeterminantGauss (line 647) | func (m Matrix) DeterminantGauss(p *big.Int) (*big.Int, error) { method Tensor (line 752) | func (m Matrix) Tensor(other Matrix) Matrix { method ToVec (line 766) | func (m Matrix) ToVec() Vector { method JoinCols (line 779) | func (m Matrix) JoinCols(other Matrix) (Matrix, error) { method JoinRows (line 801) | func (m Matrix) JoinRows(other Matrix) (Matrix, error) { function NewMatrix (line 37) | func NewMatrix(vectors []Vector) (Matrix, error) { function NewRandomMatrix (line 57) | func NewRandomMatrix(rows, cols int, sampler sample.Sampler) (Matrix, er... function NewRandomDetMatrix (line 76) | func NewRandomDetMatrix(rows, cols int, max *big.Int, key *[32]byte) (Ma... function NewConstantMatrix (line 93) | func NewConstantMatrix(rows, cols int, c *big.Int) Matrix { function GaussianEliminationSolver (line 669) | func GaussianEliminationSolver(mat Matrix, v Vector, p *big.Int) (Vector... function Identity (line 822) | func Identity(rows, cols int) Matrix { FILE: data/matrix_bn256.go type MatrixG1 (line 14) | type MatrixG1 method Rows (line 17) | func (m MatrixG1) Rows() int { method Cols (line 22) | func (m MatrixG1) Cols() int { method Add (line 32) | func (m MatrixG1) Add(other MatrixG1) MatrixG1 { method MulScalar (line 43) | func (m MatrixG1) MulScalar(s *big.Int) MatrixG1 { method MulVector (line 55) | func (m MatrixG1) MulVector(v Vector) VectorG1 { type MatrixG2 (line 79) | type MatrixG2 method Rows (line 82) | func (m MatrixG2) Rows() int { method Cols (line 87) | func (m MatrixG2) Cols() int { method MulScalar (line 96) | func (m MatrixG2) MulScalar(s *big.Int) MatrixG2 { method MulVector (line 108) | func (m MatrixG2) MulVector(v Vector) VectorG2 { FILE: data/matrix_test.go function TestMatrix (line 27) | func TestMatrix(t *testing.T) { function TestMatrix_Rows (line 69) | func TestMatrix_Rows(t *testing.T) { function TestMatrix_Cols (line 74) | func TestMatrix_Cols(t *testing.T) { function TestMatrix_Empty (line 79) | func TestMatrix_Empty(t *testing.T) { function TestMatrix_DimsMatch (line 85) | func TestMatrix_DimsMatch(t *testing.T) { function TestMatrix_CheckDims (line 97) | func TestMatrix_CheckDims(t *testing.T) { function TestMatrix_Dot (line 107) | func TestMatrix_Dot(t *testing.T) { function TestMatrix_MulScalar (line 127) | func TestMatrix_MulScalar(t *testing.T) { function TestMatrix_MulVec (line 142) | func TestMatrix_MulVec(t *testing.T) { function TestMatrix_Mul (line 158) | func TestMatrix_Mul(t *testing.T) { function TestMatrix_Determinant (line 181) | func TestMatrix_Determinant(t *testing.T) { function TestMatrix_InverseMod (line 203) | func TestMatrix_InverseMod(t *testing.T) { function TestMatrix_GaussianElimintaion (line 228) | func TestMatrix_GaussianElimintaion(t *testing.T) { function TestMatrix_Tensor (line 277) | func TestMatrix_Tensor(t *testing.T) { FILE: data/vector.go type Vector (line 29) | type Vector method Copy (line 112) | func (v Vector) Copy() Vector { method MulScalar (line 124) | func (v Vector) MulScalar(x *big.Int) Vector { method Mod (line 135) | func (v Vector) Mod(modulo *big.Int) Vector { method CheckBound (line 148) | func (v Vector) CheckBound(bound *big.Int) error { method Apply (line 162) | func (v Vector) Apply(f func(*big.Int) *big.Int) Vector { method Neg (line 174) | func (v Vector) Neg() Vector { method Add (line 185) | func (v Vector) Add(other Vector) Vector { method Sub (line 197) | func (v Vector) Sub(other Vector) Vector { method Dot (line 208) | func (v Vector) Dot(other Vector) (*big.Int, error) { method MulAsPolyInRing (line 229) | func (v Vector) MulAsPolyInRing(other Vector) (Vector, error) { method MulG1 (line 261) | func (v Vector) MulG1() VectorG1 { method MulVecG1 (line 277) | func (v Vector) MulVecG1(g1 VectorG1) VectorG1 { method MulG2 (line 297) | func (v Vector) MulG2() VectorG2 { method MulVecG2 (line 313) | func (v Vector) MulVecG2(g2 VectorG2) VectorG2 { method String (line 331) | func (v Vector) String() string { method Tensor (line 341) | func (v Vector) Tensor(other Vector) Vector { function NewVector (line 32) | func NewVector(coordinates []*big.Int) Vector { function NewRandomVector (line 39) | func NewRandomVector(len int, sampler sample.Sampler) (Vector, error) { function NewRandomDetVector (line 57) | func NewRandomDetVector(len int, max *big.Int, key *[32]byte) (Vector, e... function NewConstantVector (line 101) | func NewConstantVector(len int, c *big.Int) Vector { FILE: data/vector_bn256.go type VectorG1 (line 26) | type VectorG1 method Add (line 30) | func (v VectorG1) Add(other VectorG1) VectorG1 { method Neg (line 41) | func (v VectorG1) Neg() VectorG1 { method Copy (line 51) | func (v VectorG1) Copy() VectorG1 { method MulScalar (line 61) | func (v VectorG1) MulScalar(s *big.Int) VectorG1 { type VectorG2 (line 77) | type VectorG2 method Add (line 81) | func (v VectorG2) Add(other VectorG2) VectorG2 { method Neg (line 92) | func (v VectorG2) Neg() VectorG2 { method Copy (line 102) | func (v VectorG2) Copy() VectorG2 { method MulScalar (line 112) | func (v VectorG2) MulScalar(s *big.Int) VectorG2 { type VectorGT (line 128) | type VectorGT method Dot (line 132) | func (v VectorGT) Dot(other Vector) *bn256.GT { FILE: data/vector_test.go function TestVector (line 27) | func TestVector(t *testing.T) { function TestVector_MulAsPolyInRing (line 72) | func TestVector_MulAsPolyInRing(t *testing.T) { function TestVecor_Tensor (line 80) | func TestVecor_Tensor(t *testing.T) { FILE: innerprod/fullysec/damgard.go type DamgardParams (line 38) | type DamgardParams struct type Damgard (line 52) | type Damgard struct method GenerateMasterKeys (line 199) | func (d *Damgard) GenerateMasterKeys() (*DamgardSecKey, data.Vector, e... method DeriveKey (line 238) | func (d *Damgard) DeriveKey(masterSecKey *DamgardSecKey, y data.Vector... method Encrypt (line 261) | func (d *Damgard) Encrypt(x, masterPubKey data.Vector) (data.Vector, e... method Decrypt (line 295) | func (d *Damgard) Decrypt(cipher data.Vector, key *DamgardDerivedKey, ... function NewDamgard (line 64) | func NewDamgard(l, modulusLength int, bound *big.Int) (*Damgard, error) { function NewDamgardPrecomp (line 125) | func NewDamgardPrecomp(l, modulusLength int, bound *big.Int) (*Damgard, ... function NewDamgardFromParams (line 184) | func NewDamgardFromParams(params *DamgardParams) *Damgard { type DamgardSecKey (line 191) | type DamgardSecKey struct type DamgardDerivedKey (line 230) | type DamgardDerivedKey struct FILE: innerprod/fullysec/damgard_dec_multi.go type DamgardDecMultiClient (line 39) | type DamgardDecMultiClient struct method SetShare (line 74) | func (c *DamgardDecMultiClient) SetShare(pubKeys []*big.Int) error { method GenerateKeys (line 117) | func (c *DamgardDecMultiClient) GenerateKeys() (*DamgardDecMultiSecKey... method Encrypt (line 138) | func (c *DamgardDecMultiClient) Encrypt(x data.Vector, key *DamgardDec... method DeriveKeyShare (line 160) | func (c *DamgardDecMultiClient) DeriveKeyShare(secKey *DamgardDecMulti... function NewDamgardDecMultiClient (line 54) | func NewDamgardDecMultiClient(idx int, damgardMulti *DamgardMulti) (*Dam... type DamgardDecMultiSecKey (line 108) | type DamgardDecMultiSecKey struct type DamgardDecMultiDerivedKeyPart (line 151) | type DamgardDecMultiDerivedKeyPart struct type DamgardDecMultiDec (line 188) | type DamgardDecMultiDec struct method Decrypt (line 204) | func (dc *DamgardDecMultiDec) Decrypt(cipher []data.Vector, partKeys [... function NewDamgardDecMultiDec (line 194) | func NewDamgardDecMultiDec(damgardMulti *DamgardMulti) *DamgardDecMultiD... FILE: innerprod/fullysec/damgard_dec_multi_test.go function testFullySecDamgardDecMultiFromParam (line 29) | func testFullySecDamgardDecMultiFromParam(t *testing.T, param damgardTes... function TestFullySec_DamgardDecMulti (line 123) | func TestFullySec_DamgardDecMulti(t *testing.T) { FILE: innerprod/fullysec/damgard_multi.go type DamgardMulti (line 44) | type DamgardMulti struct method GenerateMasterKeys (line 160) | func (dm *DamgardMulti) GenerateMasterKeys() (*DamgardMultiSecKeys, er... method DeriveKey (line 212) | func (dm *DamgardMulti) DeriveKey(secKey *DamgardMultiSecKeys, y data.... method Decrypt (line 239) | func (dm *DamgardMulti) Decrypt(cipher []data.Vector, key *DamgardMult... type DamgardMultiClient (line 52) | type DamgardMultiClient struct method Encrypt (line 192) | func (e *DamgardMultiClient) Encrypt(x data.Vector, pubKey, otp data.V... function NewDamgardMulti (line 66) | func NewDamgardMulti(numClients, l, modulusLength int, bound *big.Int) (... function NewDamgardMultiPrecomp (line 102) | func NewDamgardMultiPrecomp(numClients, l, modulusLength int, bound *big... function NewDamgardMultiClientFromParams (line 129) | func NewDamgardMultiClientFromParams(bound *big.Int, params *DamgardPara... function NewDamgardMultiFromParams (line 141) | func NewDamgardMultiFromParams(numClients int, bound *big.Int, params *D... type DamgardMultiSecKeys (line 151) | type DamgardMultiSecKeys struct type DamgardMultiDerivedKey (line 204) | type DamgardMultiDerivedKey struct FILE: innerprod/fullysec/damgard_multi_test.go function testFullySecDamgardMultiDDHFromParam (line 29) | func testFullySecDamgardMultiDDHFromParam(t *testing.T, param damgardTes... function TestFullySec_DamgardMultiDDH (line 110) | func TestFullySec_DamgardMultiDDH(t *testing.T) { FILE: innerprod/fullysec/damgard_test.go type damgardTestParam (line 29) | type damgardTestParam struct function testFullySecDamgardDDHFromParam (line 35) | func testFullySecDamgardDDHFromParam(t *testing.T, param damgardTestPara... function TestFullySec_DamgardDDH (line 98) | func TestFullySec_DamgardDDH(t *testing.T) { FILE: innerprod/fullysec/dmcfe.go type DMCFEClient (line 33) | type DMCFEClient struct method SetShare (line 69) | func (c *DMCFEClient) SetShare(pubKeys []*bn256.G1) error { method Encrypt (line 103) | func (c *DMCFEClient) Encrypt(x *big.Int, label string) (*bn256.G1, er... method DeriveKeyShare (line 127) | func (c *DMCFEClient) DeriveKeyShare(y data.Vector) (data.VectorG2, er... function NewDMCFEClient (line 45) | func NewDMCFEClient(idx int) (*DMCFEClient, error) { function DMCFEDecrypt (line 158) | func DMCFEDecrypt(ciphers []*bn256.G1, keyShares []data.VectorG2, y data... FILE: innerprod/fullysec/dmcfe_test.go function Test_DMCFE (line 31) | func Test_DMCFE(t *testing.T) { FILE: innerprod/fullysec/fh_multi_ipe.go type FHMultiIPEParams (line 36) | type FHMultiIPEParams struct type FHMultiIPE (line 60) | type FHMultiIPE struct method GenerateKeys (line 91) | func (f FHMultiIPE) GenerateKeys() (*FHMultiIPESecKey, *bn256.GT, erro... method DeriveKey (line 157) | func (f FHMultiIPE) DeriveKey(y data.Matrix, secKey *FHMultiIPESecKey)... method Encrypt (line 195) | func (f FHMultiIPE) Encrypt(x data.Vector, partSecKey data.Matrix) (da... method Decrypt (line 224) | func (f *FHMultiIPE) Decrypt(cipher data.MatrixG1, key data.MatrixG2, ... type FHMultiIPESecKey (line 65) | type FHMultiIPESecKey struct function NewFHMultiIPE (line 73) | func NewFHMultiIPE(secLevel, numClients, vecLen int, boundX, boundY *big... function NewFHMultiIPEFromParams (line 82) | func NewFHMultiIPEFromParams(params *FHMultiIPEParams) *FHMultiIPE { function randomOB (line 134) | func randomOB(l int, mu *big.Int) (data.Matrix, data.Matrix, error) { FILE: innerprod/fullysec/fh_multi_ipe_test.go function TestFH_Multi_IPE (line 29) | func TestFH_Multi_IPE(t *testing.T) { FILE: innerprod/fullysec/fhipe.go type FHIPEParams (line 35) | type FHIPEParams struct type FHIPE (line 49) | type FHIPE struct method GenerateMasterKey (line 93) | func (d *FHIPE) GenerateMasterKey() (*FHIPESecKey, error) { method DeriveKey (line 129) | func (d *FHIPE) DeriveKey(y data.Vector, masterKey *FHIPESecKey) (*FHI... method Encrypt (line 177) | func (d *FHIPE) Encrypt(x data.Vector, masterKey *FHIPESecKey) (*FHIPE... method Decrypt (line 214) | func (d *FHIPE) Decrypt(cipher *FHIPECipher, key *FHIPEDerivedKey) (*b... function NewFHIPE (line 60) | func NewFHIPE(l int, boundX, boundY *big.Int) (*FHIPE, error) { function NewFHIPEFromParams (line 77) | func NewFHIPEFromParams(params *FHIPEParams) *FHIPE { type FHIPESecKey (line 84) | type FHIPESecKey struct type FHIPEDerivedKey (line 121) | type FHIPEDerivedKey struct type FHIPECipher (line 170) | type FHIPECipher struct FILE: innerprod/fullysec/fhipe_test.go function TestFHIPE (line 29) | func TestFHIPE(t *testing.T) { FILE: innerprod/fullysec/lwe.go type LWEParams (line 31) | type LWEParams struct type LWE (line 69) | type LWE struct method GenerateSecretKey (line 215) | func (s *LWE) GenerateSecretKey() (data.Matrix, error) { method GeneratePublicKey (line 246) | func (s *LWE) GeneratePublicKey(Z data.Matrix) (data.Matrix, error) { method DeriveKey (line 261) | func (s *LWE) DeriveKey(y data.Vector, Z data.Matrix) (data.Vector, er... method Encrypt (line 282) | func (s *LWE) Encrypt(x data.Vector, U data.Matrix) (data.Vector, erro... method Decrypt (line 329) | func (s *LWE) Decrypt(cipher, zY, y data.Vector) (*big.Int, error) { function NewLWE (line 87) | func NewLWE(l, n int, boundX, boundY *big.Int) (*LWE, error) { FILE: innerprod/fullysec/lwe_test.go function TestFullySec_LWE (line 29) | func TestFullySec_LWE(t *testing.T) { function testVectorData (line 84) | func testVectorData(len int, boundX, boundY *big.Int) (data.Vector, data... FILE: innerprod/fullysec/paillier.go type PaillierParams (line 31) | type PaillierParams struct type Paillier (line 47) | type Paillier struct method GenerateMasterKeys (line 156) | func (s *Paillier) GenerateMasterKeys() (data.Vector, data.Vector, err... method DeriveKey (line 177) | func (s *Paillier) DeriveKey(masterSecKey data.Vector, y data.Vector) ... method Encrypt (line 189) | func (s *Paillier) Encrypt(x, masterPubKey data.Vector) (data.Vector, ... method Decrypt (line 223) | func (s *Paillier) Decrypt(cipher data.Vector, key *big.Int, y data.Ve... function NewPaillier (line 64) | func NewPaillier(l, lambda, bitLen int, boundX, boundY *big.Int) (*Paill... function NewPaillierFromParams (line 147) | func NewPaillierFromParams(params *PaillierParams) *Paillier { FILE: innerprod/fullysec/paillier_multi.go type PaillierMulti (line 43) | type PaillierMulti struct method GenerateMasterKeys (line 131) | func (dm *PaillierMulti) GenerateMasterKeys() (*PaillierMultiSecKeys, ... method DeriveKey (line 185) | func (dm *PaillierMulti) DeriveKey(secKey *PaillierMultiSecKeys, y dat... method Decrypt (line 213) | func (dm *PaillierMulti) Decrypt(cipher []data.Vector, key *PaillierMu... type PaillierMultiClient (line 51) | type PaillierMultiClient struct method Encrypt (line 163) | func (e *PaillierMultiClient) Encrypt(x data.Vector, pubKey, otp data.... function NewPaillierMulti (line 70) | func NewPaillierMulti(numClients, l, lambda, bitLength int, boundX, boun... function NewPaillierMultiClientFromParams (line 99) | func NewPaillierMultiClientFromParams(params *PaillierParams, boundX, bo... function NewPaillierMultiFromParams (line 112) | func NewPaillierMultiFromParams(numClients int, boundX, boundY *big.Int,... type PaillierMultiSecKeys (line 123) | type PaillierMultiSecKeys struct type PaillierMultiDerivedKey (line 177) | type PaillierMultiDerivedKey struct FILE: innerprod/fullysec/paillier_multi_test.go function TestFullySec_PaillierMulti (line 29) | func TestFullySec_PaillierMulti(t *testing.T) { FILE: innerprod/fullysec/paillier_test.go function TestFullySec_Paillier (line 29) | func TestFullySec_Paillier(t *testing.T) { FILE: innerprod/fullysec/part_fh_ipe.go type PartFHIPEParams (line 33) | type PartFHIPEParams struct type PartFHIPE (line 52) | type PartFHIPE struct method GenerateKeys (line 113) | func (d *PartFHIPE) GenerateKeys(M data.Matrix) (*PartFHIPEPubKey, *Pa... method DeriveKey (line 172) | func (d *PartFHIPE) DeriveKey(y data.Vector, secKey *PartFHIPESecKey) ... method Encrypt (line 216) | func (d *PartFHIPE) Encrypt(t data.Vector, pubKey *PartFHIPEPubKey) (d... method SecEncrypt (line 251) | func (d *PartFHIPE) SecEncrypt(x data.Vector, pubKey *PartFHIPEPubKey,... method PartDecrypt (line 290) | func (d *PartFHIPE) PartDecrypt(cipher data.VectorG1, feKey data.Vecto... method Decrypt (line 305) | func (d *PartFHIPE) Decrypt(cipher data.VectorG1, feKey data.VectorG2)... function NewPartFHIPE (line 63) | func NewPartFHIPE(l int, bound *big.Int) (*PartFHIPE, error) { function NewPartFHIPEFromParams (line 85) | func NewPartFHIPEFromParams(params *PartFHIPEParams) *PartFHIPE { type PartFHIPESecKey (line 93) | type PartFHIPESecKey struct type PartFHIPEPubKey (line 101) | type PartFHIPEPubKey struct FILE: innerprod/fullysec/part_fh_ipe_test.go function TestPartFHIPE (line 29) | func TestPartFHIPE(te *testing.T) { FILE: innerprod/simple/ddh.go type DDHParams (line 31) | type DDHParams struct type DDH (line 48) | type DDH struct method GenerateMasterKeys (line 155) | func (d *DDH) GenerateMasterKeys() (data.Vector, data.Vector, error) { method DeriveKey (line 176) | func (d *DDH) DeriveKey(masterSecKey, y data.Vector) (*big.Int, error) { method Encrypt (line 190) | func (d *DDH) Encrypt(x, masterPubKey data.Vector) (data.Vector, error) { method Decrypt (line 221) | func (d *DDH) Decrypt(cipher data.Vector, key *big.Int, y data.Vector)... function NewDDH (line 60) | func NewDDH(l, modulusLength int, bound *big.Int) (*DDH, error) { function NewDDHPrecomp (line 93) | func NewDDHPrecomp(l, modulusLength int, bound *big.Int) (*DDH, error) { function NewDDHFromParams (line 146) | func NewDDHFromParams(params *DDHParams) *DDH { FILE: innerprod/simple/ddh_multi.go type DDHMulti (line 32) | type DDHMulti struct method GenerateMasterKeys (line 125) | func (dm *DDHMulti) GenerateMasterKeys() (data.Matrix, *DDHMultiSecKey... method DeriveKey (line 188) | func (dm *DDHMulti) DeriveKey(secKey *DDHMultiSecKey, y data.Matrix) (... method Decrypt (line 217) | func (dm *DDHMulti) Decrypt(cipher []data.Vector, key *DDHMultiDerived... type DDHMultiClient (line 43) | type DDHMultiClient struct method Encrypt (line 168) | func (e *DDHMultiClient) Encrypt(x data.Vector, pubKey, otp data.Vecto... function NewDDHMulti (line 55) | func NewDDHMulti(slots, l, modulusLength int, bound *big.Int) (*DDHMulti... function NewDDHMultiPrecomp (line 77) | func NewDDHMultiPrecomp(slots, l, modulusLength int, bound *big.Int) (*D... function NewDDHMultiFromParams (line 94) | func NewDDHMultiFromParams(slots int, params *DDHParams) *DDHMulti { function NewDDHMultiClient (line 109) | func NewDDHMultiClient(params *DDHParams) *DDHMultiClient { type DDHMultiSecKey (line 116) | type DDHMultiSecKey struct type DDHMultiDerivedKey (line 180) | type DDHMultiDerivedKey struct FILE: innerprod/simple/ddh_multi_test.go function testSimpleMultiDDHFromParam (line 29) | func testSimpleMultiDDHFromParam(t *testing.T, param ddhTestParam) { function TestSimple_MultiDDH (line 120) | func TestSimple_MultiDDH(t *testing.T) { FILE: innerprod/simple/ddh_test.go type ddhTestParam (line 29) | type ddhTestParam struct function testSimpleDDHFromParam (line 35) | func testSimpleDDHFromParam(t *testing.T, param ddhTestParam) { function TestSimple_DDH (line 98) | func TestSimple_DDH(t *testing.T) { FILE: innerprod/simple/lwe.go type LWEParams (line 35) | type LWEParams struct type LWE (line 58) | type LWE struct method GenerateSecretKey (line 154) | func (s *LWE) GenerateSecretKey() (data.Matrix, error) { method GeneratePublicKey (line 163) | func (s *LWE) GeneratePublicKey(SK data.Matrix) (data.Matrix, error) { method DeriveKey (line 192) | func (s *LWE) DeriveKey(y data.Vector, SK data.Matrix) (data.Vector, e... method Encrypt (line 214) | func (s *LWE) Encrypt(x data.Vector, PK data.Matrix) (data.Vector, err... method center (line 254) | func (s *LWE) center(v data.Vector) data.Vector { method Decrypt (line 269) | func (s *LWE) Decrypt(ct, skY, y data.Vector) (*big.Int, error) { function NewLWE (line 77) | func NewLWE(l int, boundX, boundY *big.Int, n int) (*LWE, error) { FILE: innerprod/simple/lwe_test.go function TestSimple_LWE (line 29) | func TestSimple_LWE(t *testing.T) { function testVectorData (line 77) | func testVectorData(len int, boundX, boundY *big.Int) (data.Vector, data... FILE: innerprod/simple/ringlwe.go type RingLWEParams (line 30) | type RingLWEParams struct type RingLWE (line 61) | type RingLWE struct method GenerateSecretKey (line 158) | func (s *RingLWE) GenerateSecretKey() (data.Matrix, error) { method GeneratePublicKey (line 169) | func (s *RingLWE) GeneratePublicKey(SK data.Matrix) (data.Matrix, erro... method DeriveKey (line 200) | func (s *RingLWE) DeriveKey(y data.Vector, SK data.Matrix) (data.Vecto... method center (line 220) | func (s *RingLWE) center(X data.Matrix) data.Matrix { method Encrypt (line 247) | func (s *RingLWE) Encrypt(X data.Matrix, PK data.Matrix) (*RingLWECiph... method Decrypt (line 308) | func (s *RingLWE) Decrypt(CT *RingLWECipher, skY, y data.Vector) (data... function NewRingLWE (line 72) | func NewRingLWE(sec, l int, boundX, boundY *big.Int) (*RingLWE, error) { type RingLWECipher (line 235) | type RingLWECipher struct FILE: innerprod/simple/ringlwe_test.go function TestSimple_RingLWE (line 29) | func TestSimple_RingLWE(t *testing.T) { FILE: internal/dlog/brute_force.go function bruteForce (line 27) | func bruteForce(h, g, p, bound *big.Int) (*big.Int, error) { function bruteForceBN256 (line 42) | func bruteForceBN256(h, g *bn256.GT, bound *big.Int) (*big.Int, error) { FILE: internal/dlog/brute_force_test.go function TestBruteForceBN256 (line 29) | func TestBruteForceBN256(t *testing.T) { function TestBruteForce (line 49) | func TestBruteForce(t *testing.T) { FILE: internal/dlog/calc.go type Calc (line 35) | type Calc struct method InZp (line 53) | func (*Calc) InZp(p, order *big.Int) (*CalcZp, error) { method InBN256 (line 253) | func (*Calc) InBN256() *CalcBN256 { function NewCalc (line 38) | func NewCalc() *Calc { type CalcZp (line 44) | type CalcZp struct method WithBound (line 81) | func (c *CalcZp) WithBound(bound *big.Int) *CalcZp { method WithNeg (line 98) | func (c *CalcZp) WithNeg() *CalcZp { method BabyStepGiantStep (line 114) | func (c *CalcZp) BabyStepGiantStep(h, g *big.Int) (*big.Int, error) { method runBabyStepGiantStep (line 153) | func (c *CalcZp) runBabyStepGiantStep(h, g *big.Int, retChan chan *big... method runBabyStepGiantStepIterative (line 191) | func (c *CalcZp) runBabyStepGiantStepIterative(h, g *big.Int, retChan ... type CalcBN256 (line 243) | type CalcBN256 struct method WithBound (line 264) | func (c *CalcBN256) WithBound(bound *big.Int) *CalcBN256 { method WithNeg (line 282) | func (c *CalcBN256) WithNeg() *CalcBN256 { method Precompute (line 294) | func (c *CalcBN256) Precompute(maxBits int) error { method BabyStepGiantStepStd (line 327) | func (c *CalcBN256) BabyStepGiantStepStd(h, g *bn256.GT) (*big.Int, er... method BabyStepGiantStep (line 359) | func (c *CalcBN256) BabyStepGiantStep(h, g *bn256.GT) (*big.Int, error) { method runBabyStepGiantStepIterative (line 406) | func (c *CalcBN256) runBabyStepGiantStepIterative(h, g *bn256.GT, retC... FILE: internal/dlog/calc_test.go function TestCalcZp_BabyStepGiantStep_ElGamal (line 30) | func TestCalcZp_BabyStepGiantStep_ElGamal(t *testing.T) { function TestCalcBN256_BabyStepGiantStep (line 79) | func TestCalcBN256_BabyStepGiantStep(t *testing.T) { FILE: internal/dlog/dlog_test.go type params (line 28) | type params struct function getParams (line 32) | func getParams() (*params, error) { function TestDLog (line 45) | func TestDLog(t *testing.T) { FILE: internal/dlog/pollard_rho.go function pollardRho (line 28) | func pollardRho(h, g, p, order *big.Int) (*big.Int, error) { type triple (line 105) | type triple struct function process (line 111) | func process(x, a, b *big.Int, iterate func(x, a, b *big.Int), c chan<- ... function pollardRhoParallel (line 131) | func pollardRhoParallel(h, g, p, order *big.Int) (*big.Int, error) { constant cycleSizeBound (line 222) | cycleSizeBound = 1024 * 1024 function pollardRhoFactorization (line 229) | func pollardRhoFactorization(n, b *big.Int) (map[string]int, error) { function pollardRhoCycle (line 283) | func pollardRhoCycle(n *big.Int) (*big.Int, error) { function runCycle (line 303) | func runCycle(n, x *big.Int) *big.Int { FILE: internal/dlog/pollard_rho_test.go function TestPollardRho (line 30) | func TestPollardRho(t *testing.T) { function TestPollardRhoParallel (line 54) | func TestPollardRhoParallel(t *testing.T) { function TestPollardRhoFactorization (line 77) | func TestPollardRhoFactorization(t *testing.T) { function TestPollardRhoElGamal (line 94) | func TestPollardRhoElGamal(t *testing.T) { function checkFactorization (line 120) | func checkFactorization(factorization map[string]int, n *big.Int, t *tes... function TestPollardRhoFactorizationHard (line 137) | func TestPollardRhoFactorizationHard(t *testing.T) { function TestPollardRhoFactorizationBounded (line 153) | func TestPollardRhoFactorizationBounded(t *testing.T) { function getSmoothNumber (line 165) | func getSmoothNumber(B, numPrimes, maxPower int) *big.Int { FILE: internal/keygen/elgamal.go type ElGamal (line 27) | type ElGamal struct function NewElGamal (line 36) | func NewElGamal(modulusLength int) (*ElGamal, error) { FILE: internal/keygen/prime.go function GetSafePrime (line 27) | func GetSafePrime(bits int) (p *big.Int, err error) { function GetGermainPrime (line 43) | func GetGermainPrime(bits int) (p *big.Int) { function germainPrime (line 74) | func germainPrime(bits int, c chan *big.Int, quit chan int) (p *big.Int,... FILE: internal/mod_exp.go function ModExp (line 22) | func ModExp(g, x, m *big.Int) *big.Int { FILE: quadratic/quad.go type QuadParams (line 36) | type QuadParams struct type Quad (line 55) | type Quad struct method GenerateKeys (line 119) | func (q *Quad) GenerateKeys() (*QuadPubKey, *QuadSecKey, error) { method Encrypt (line 217) | func (q *Quad) Encrypt(x, y data.Vector, pubKey *QuadPubKey) (*QuadCip... method DeriveKey (line 261) | func (q *Quad) DeriveKey(secKey *QuadSecKey, F data.Matrix) (data.Vect... method Decrypt (line 288) | func (q *Quad) Decrypt(c *QuadCipher, feKey data.VectorG2, F data.Matr... function NewQuad (line 63) | func NewQuad(n, m int, b *big.Int) (*Quad, error) { function NewQuadFromParams (line 92) | func NewQuadFromParams(params *QuadParams) *Quad { type QuadPubKey (line 101) | type QuadPubKey struct type QuadSecKey (line 110) | type QuadSecKey struct type QuadCipher (line 208) | type QuadCipher struct FILE: quadratic/quad_test.go function TestQuad (line 29) | func TestQuad(t *testing.T) { FILE: quadratic/sgp.go type SGP (line 39) | type SGP struct method GenerateMasterKey (line 86) | func (q *SGP) GenerateMasterKey() (*SGPSecKey, error) { method Encrypt (line 122) | func (q *SGP) Encrypt(x, y data.Vector, msk *SGPSecKey) (*SGPCipher, e... method DeriveKey (line 176) | func (q *SGP) DeriveKey(msk *SGPSecKey, F data.Matrix) (*bn256.G2, err... method Decrypt (line 196) | func (q *SGP) Decrypt(c *SGPCipher, key *bn256.G2, F data.Matrix) (*bi... function NewSGP (line 57) | func NewSGP(n int, b *big.Int) *SGP { type SGPSecKey (line 70) | type SGPSecKey struct function NewSGPSecKey (line 76) | func NewSGPSecKey(s, t data.Vector) *SGPSecKey { type SGPCipher (line 103) | type SGPCipher struct function NewSGPCipher (line 110) | func NewSGPCipher(g1MulGamma *bn256.G1, aMulG1 []data.VectorG1, FILE: quadratic/sgp_test.go function TestSGP (line 29) | func TestSGP(t *testing.T) { FILE: sample/normal.go type normal (line 28) | type normal struct method precompExp (line 125) | func (c normal) precompExp() []*big.Float { method isExpGreater (line 146) | func (c normal) isExpGreater(y *big.Float, x *big.Int) bool { function newNormal (line 42) | func newNormal(sigma *big.Float, n uint) *normal { function Bernoulli (line 84) | func Bernoulli(t *big.Int, lSquareInv *big.Float) (bool, error) { function taylorExp (line 182) | func taylorExp(x *big.Int, alpha *big.Float, k uint, n uint) *big.Float { FILE: sample/normal_cdt.go type NormalCDT (line 55) | type NormalCDT struct method Sample (line 67) | func (c *NormalCDT) Sample() (*big.Int, error) { function NewNormalCDT (line 60) | func NewNormalCDT() *NormalCDT { FILE: sample/normal_cdt_test.go function TestNormalCDT (line 25) | func TestNormalCDT(t *testing.T) { FILE: sample/normal_cumulative.go type NormalCumulative (line 32) | type NormalCumulative struct method Sample (line 62) | func (c *NormalCumulative) Sample() (*big.Int, error) { method precompute (line 81) | func (c *NormalCumulative) precompute() { function NewNormalCumulative (line 47) | func NewNormalCumulative(sigma *big.Float, n uint, twoSided bool) *Norma... FILE: sample/normal_cumulative_test.go function TestNormalCumulative (line 26) | func TestNormalCumulative(t *testing.T) { FILE: sample/normal_double.go type NormalDouble (line 33) | type NormalDouble struct method Sample (line 67) | func (s *NormalDouble) Sample() (*big.Int, error) { function NewNormalDouble (line 47) | func NewNormalDouble(sigma *big.Float, n uint, firstSigma *big.Float) (*... FILE: sample/normal_double_constant.go type NormalDoubleConstant (line 38) | type NormalDoubleConstant struct method Sample (line 72) | func (s *NormalDoubleConstant) Sample() (*big.Int, error) { function NewNormalDoubleConstant (line 52) | func NewNormalDoubleConstant(l *big.Int) *NormalDoubleConstant { FILE: sample/normal_double_constant_test.go function TestNormalDoubleConstant (line 26) | func TestNormalDoubleConstant(t *testing.T) { FILE: sample/normal_double_test.go function TestNewNormalDouble (line 27) | func TestNewNormalDouble(t *testing.T) { function TestNormalDouble (line 57) | func TestNormalDouble(t *testing.T) { FILE: sample/normal_negative.go type NormalNegative (line 30) | type NormalNegative struct method Sample (line 58) | func (c *NormalNegative) Sample() (*big.Int, error) { function NewNormalNegative (line 41) | func NewNormalNegative(sigma *big.Float, n uint) *NormalNegative { FILE: sample/normal_negative_test.go function TestNormalNegative (line 27) | func TestNormalNegative(t *testing.T) { FILE: sample/normal_test.go function mean (line 28) | func mean(vec []*big.Int) *big.Float { function variance (line 38) | func variance(vec []*big.Int) *big.Float { type paramBounds (line 52) | type paramBounds struct function testNormalSampler (line 59) | func testNormalSampler(t *testing.T, s sample.Sampler, bounds paramBound... FILE: sample/sampler.go type Sampler (line 26) | type Sampler interface FILE: sample/uniform.go type UniformRange (line 25) | type UniformRange struct method Sample (line 40) | func (u *UniformRange) Sample() (*big.Int, error) { function NewUniformRange (line 32) | func NewUniformRange(min, max *big.Int) *UniformRange { type Uniform (line 53) | type Uniform struct method Sample (line 64) | func (u *Uniform) Sample() (*big.Int, error) { function NewUniform (line 59) | func NewUniform(max *big.Int) *UniformRange { type Bit (line 69) | type Bit struct function NewBit (line 74) | func NewBit() *UniformRange {