SYMBOL INDEX (3622 symbols across 282 files) FILE: charm/adapters/abenc_adapt_hybrid.py class HybridABEnc (line 31) | class HybridABEnc(ABEnc): method __init__ (line 44) | def __init__(self, scheme, groupObj): method setup (line 50) | def setup(self): method keygen (line 53) | def keygen(self, pk, mk, object): method encrypt (line 56) | def encrypt(self, pk, M, object): method decrypt (line 64) | def decrypt(self, pk, sk, ct): function main (line 72) | def main(): FILE: charm/adapters/dabenc_adapt_hybrid.py class HybridABEncMA (line 29) | class HybridABEncMA(ABEncMultiAuth): method __init__ (line 68) | def __init__(self, scheme, groupObj): method setup (line 74) | def setup(self): method authsetup (line 77) | def authsetup(self, gp, attributes): method keygen (line 80) | def keygen(self, gp, sk, i, gid, pkey): method encrypt (line 83) | def encrypt(self, gp, pk, M, policy_str): method decrypt (line 93) | def decrypt(self, gp, sk, ct): function main (line 101) | def main(): FILE: charm/adapters/ibenc_adapt_hybrid.py class HybridIBEnc (line 30) | class HybridIBEnc(IBEnc): method __init__ (line 47) | def __init__(self, scheme, groupObj): method setup (line 52) | def setup(self): method extract (line 55) | def extract(self, mk, ID): method encrypt (line 58) | def encrypt(self, pk, ID, M): method decrypt (line 67) | def decrypt(self, pk, ID, ct): FILE: charm/adapters/ibenc_adapt_identityhash.py class HashIDAdapter (line 26) | class HashIDAdapter(IBEnc): method __init__ (line 41) | def __init__(self, scheme, group): method setup (line 56) | def setup(self): method extract (line 60) | def extract(self, mk, ID): method encrypt (line 69) | def encrypt(self, pk, ID, msg): method decrypt (line 77) | def decrypt(self, pk, sk, ct): FILE: charm/adapters/kpabenc_adapt_hybrid.py class HybridABEnc (line 29) | class HybridABEnc(ABEnc): method __init__ (line 45) | def __init__(self, scheme, groupObj): method setup (line 52) | def setup(self): method keygen (line 55) | def keygen(self, pk, mk, object): method encrypt (line 58) | def encrypt(self, pk, M, object): method decrypt (line 66) | def decrypt(self, ct, sk): function main (line 72) | def main(): FILE: charm/adapters/pkenc_adapt_bchk05.py class BCHKIBEnc (line 28) | class BCHKIBEnc(IBEnc): method str_XOR (line 43) | def str_XOR(self, m, k): method elmtToString (line 56) | def elmtToString(self, g, length): method __init__ (line 64) | def __init__(self, scheme, groupObj, encscheme): method keygen (line 70) | def keygen(self): method encrypt (line 77) | def encrypt(self, pk, m): method decrypt (line 103) | def decrypt(self, pk, sk, c): FILE: charm/adapters/pkenc_adapt_chk04.py class CHK04 (line 28) | class CHK04(PKEnc): method __init__ (line 45) | def __init__(self, ibe_scheme, ots_scheme, groupObj): method keygen (line 60) | def keygen(self, secparam): method encrypt (line 67) | def encrypt(self, pk, message): method decrypt (line 80) | def decrypt(self, pk, sk, c): FILE: charm/adapters/pkenc_adapt_hybrid.py class HybridEnc (line 34) | class HybridEnc(PKEnc): method __init__ (line 46) | def __init__(self, pkenc, msg_len=16, key_len=16, mode=AES): method keygen (line 56) | def keygen(self, secparam=None): method encrypt (line 63) | def encrypt(self, pk, M): method decrypt (line 74) | def decrypt(self, pk, sk, ct): function main (line 82) | def main(): FILE: charm/adapters/pksig_adapt_naor01.py class Sig_Generic_ibetosig_Naor01 (line 31) | class Sig_Generic_ibetosig_Naor01(PKSig): method __init__ (line 46) | def __init__(self, ibe_scheme, groupObj): method keygen (line 60) | def keygen(self): method sign (line 67) | def sign(self, sk, m): method verify (line 71) | def verify(self, pk, m, sig): FILE: charm/core/benchmark/benchmark_util.c function PyObject (line 4) | PyObject *Benchmark_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function Benchmark_init (line 21) | int Benchmark_init(Benchmark *self, PyObject *args, PyObject *kwds) function Benchmark_dealloc (line 26) | void Benchmark_dealloc(Benchmark *self) { function Operations_dealloc (line 74) | void Operations_dealloc(Operations *self) function PyObject (line 80) | PyObject *Operations_new(PyTypeObject *type, PyObject *args, PyObject *k... function Operations_init (line 91) | int Operations_init(Operations *self, PyObject *args, PyObject *kwds) function PyObject (line 139) | PyObject *InitBenchmark(PyObject *self, PyObject *args) { function PyObject (line 195) | PyObject *StartBenchmark(PyObject *self, PyObject *args) function PyObject (line 222) | PyObject *EndBenchmark(PyObject *self, PyObject *args) function PyObject (line 243) | PyObject *GetAllBenchmarks(PyObject *self, PyObject *args) function PyObject (line 269) | PyObject *GetBenchmark(PyObject *self, PyObject *args) { function PyObject (line 292) | static PyObject *GranularBenchmark(PyObject *self, PyObject *args) FILE: charm/core/benchmark/benchmarkmodule.c function CalcUsecs (line 9) | double CalcUsecs(struct timeval *start, struct timeval *stop) { function check_option (line 28) | int check_option(MeasureType o, Benchmark *d) { function PyObject (line 41) | PyObject *Benchmark_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function Benchmark_init (line 58) | int Benchmark_init(Benchmark *self, PyObject *args, PyObject *kwds) function Benchmark_dealloc (line 63) | void Benchmark_dealloc(Benchmark *self) { function PyStartBenchmark (line 68) | static int PyStartBenchmark(Benchmark *data, PyObject *opList, int opLis... function PyEndBenchmark (line 155) | static int PyEndBenchmark(Benchmark *data) function PyUpdateBenchmark (line 190) | static int PyUpdateBenchmark(MeasureType option, Benchmark *data) { function PyClearBenchmark (line 218) | static int PyClearBenchmark(Benchmark *data) { function PyObject (line 235) | PyObject *Benchmark_print(Benchmark *self) { function PyObject (line 248) | PyObject *GetResults(Benchmark *self) { function PyObject (line 259) | PyObject *GetResultsWithPair(Benchmark *self) { function PyObject (line 271) | PyObject *Retrieve_result(Benchmark *self, char *option) { type module_state (line 391) | struct module_state { type module_state (line 399) | struct module_state function bm_traverse (line 408) | static int bm_traverse(PyObject *m, visitproc visit, void *arg) { function bm_clear (line 413) | static int bm_clear(PyObject *m) { type PyModuleDef (line 418) | struct PyModuleDef type module_state (line 422) | struct module_state function initbenchmark (line 435) | void initbenchmark(void) { FILE: charm/core/benchmark/benchmarkmodule.h type Measure (line 64) | enum Measure {CPU_TIME = 0, REAL_TIME, NATIVE_TIME, ADDITION, SUBTRACTIO... type MeasureType (line 65) | typedef enum Measure MeasureType; type Benchmark (line 76) | typedef struct { function import_benchmark (line 149) | static int import_benchmark(void) FILE: charm/core/crypto/AES/AES.c type u8 (line 44) | typedef unsigned char u8; type u16 (line 45) | typedef unsigned short u16; type u32 (line 46) | typedef unsigned int u32; type block_state (line 48) | typedef struct { function rijndaelKeySetupEnc (line 760) | static int rijndaelKeySetupEnc(u32 rk[/*4*(Nr + 1)*/], const u8 cipherKe... function rijndaelKeySetupDec (line 846) | static int rijndaelKeySetupDec(u32 rk[/*4*(Nr + 1)*/], const u8 cipherKe... function rijndaelEncrypt (line 886) | static void rijndaelEncrypt(u32 rk[/*4*(Nr + 1)*/], int Nr, const u8 pt[... function rijndaelDecrypt (line 1067) | static void rijndaelDecrypt(u32 rk[/*4*(Nr + 1)*/], int Nr, const u8 ct[... function rijndaelEncryptRound (line 1250) | static void rijndaelEncryptRound(const u32 rk[/*4*(Nr + 1)*/], int Nr, u... function rijndaelDecryptRound (line 1343) | static void rijndaelDecryptRound(const u32 rk[/*4*(Nr + 1)*/], int Nr, u... function block_init (line 1434) | static void block_init(block_state *state, unsigned char *key, function block_encrypt (line 1454) | static void block_encrypt(block_state *self, u8 *in, u8 *out) function block_decrypt (line 1459) | static void block_decrypt(block_state *self, u8 *in, u8 *out) FILE: charm/core/crypto/DES/DES.c type block_state (line 43) | typedef struct { function ltcseterr (line 47) | static void ltcseterr(int rc) function block_init (line 69) | static void block_init(block_state *self, unsigned char *key, int keylen) function block_encrypt (line 82) | static void block_encrypt(block_state *self, unsigned char *in, unsigned... function block_decrypt (line 93) | static void block_decrypt(block_state *self, unsigned char *in, unsigned... FILE: charm/core/crypto/cryptobase/XOR.c type stream_state (line 39) | typedef struct function stream_init (line 45) | static void function stream_encrypt (line 69) | static void stream_encrypt(stream_state *self, unsigned char *block, FILE: charm/core/crypto/cryptobase/_counter.c function CounterObject_init (line 32) | static int function CounterObject_dealloc (line 120) | static void function PyObject (line 139) | static inline PyObject * function PyObject (line 209) | static PyObject * function PyObject (line 215) | static PyObject * function CounterLEObject_increment (line 221) | static void function CounterBEObject_increment (line 243) | static void function PyObject (line 265) | static PyObject * function PyObject (line 299) | static PyObject * function PyObject (line 317) | static PyObject * function PyObject (line 403) | static PyObject * function PyObject (line 429) | static PyObject * type PyModuleDef (line 465) | struct PyModuleDef function PyMODINIT_FUNC (line 477) | PyMODINIT_FUNC FILE: charm/core/crypto/cryptobase/_counter.h type PCT_CounterObject (line 40) | typedef struct { FILE: charm/core/crypto/cryptobase/block_template.c function ALGobject (line 29) | static ALGobject * function ALGdealloc (line 41) | static void function ALGobject (line 66) | static ALGobject * function PyObject (line 630) | static PyObject * function PyObject (line 659) | static PyObject * function PrintState (line 677) | void PrintState(self, msg) type module_state (line 769) | struct module_state { type module_state (line 777) | struct module_state function block_traverse (line 835) | static int block_traverse(PyObject *m, visitproc visit, void *arg) { function block_clear (line 840) | static int block_clear(PyObject *m) { type PyModuleDef (line 845) | struct PyModuleDef type module_state (line 849) | struct module_state function _MODULE_NAME (line 862) | void _MODULE_NAME(void) { FILE: charm/core/crypto/cryptobase/block_template.h type ALGobject (line 51) | typedef struct FILE: charm/core/crypto/cryptobase/cryptobasemodule.c type MOP (line 13) | enum MOP {NONE = 0, MODE_ECB, MODE_CBC, MODE_CFB, MODE_PGP, MODE_OFB, MO... type ALG (line 14) | enum ALG {AES, DES, DES3} type Base (line 16) | typedef struct { function PyObject (line 25) | static PyObject *selectPRF(Base *self, PyObject *args) { function PyObject (line 69) | static PyObject *selectPRP(Base *self, PyObject *args) { type module_state (line 132) | struct module_state { type module_state (line 140) | struct module_state function base_traverse (line 151) | static int base_traverse(PyObject *m, visitproc visit, void *arg) { function base_clear (line 156) | static int base_clear(PyObject *m) { type PyModuleDef (line 162) | struct PyModuleDef type module_state (line 166) | struct module_state function initcryptobase (line 179) | void initcryptobase(void) { FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_cfg.h type ulong64 (line 88) | typedef unsigned __int64 ulong64; type ulong64 (line 91) | typedef unsigned long long ulong64; type ulong32 (line 98) | typedef unsigned ulong32; type ulong32 (line 100) | typedef unsigned long ulong32; type ulong64 (line 112) | typedef ulong64 __attribute__((__may_alias__)) type ulong32 (line 114) | typedef ulong32 __attribute__((__may_alias__)) type ulong64 (line 130) | typedef ulong64 ltc_mp_digit; type ulong32 (line 132) | typedef ulong32 ltc_mp_digit; FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_cipher.h type blowfish_key (line 7) | struct blowfish_key { type rc5_key (line 14) | struct rc5_key { type rc6_key (line 21) | struct rc6_key { type saferp_key (line 27) | struct saferp_key { type rijndael_key (line 34) | struct rijndael_key { type kseed_key (line 41) | struct kseed_key { type kasumi_key (line 47) | struct kasumi_key { type xtea_key (line 55) | struct xtea_key { type twofish_key (line 62) | struct twofish_key { type twofish_key (line 66) | struct twofish_key { type safer_key (line 83) | struct safer_key { safer_key_t key; } type rc2_key (line 87) | struct rc2_key { unsigned xkey[64]; } type des_key (line 91) | struct des_key { type des3_key (line 95) | struct des3_key { type cast5_key (line 101) | struct cast5_key { type noekeon_key (line 107) | struct noekeon_key { type skipjack_key (line 113) | struct skipjack_key { type khazad_key (line 119) | struct khazad_key { type anubis_key (line 126) | struct anubis_key { type multi2_key (line 135) | struct multi2_key { type camellia_key (line 142) | struct camellia_key { type symmetric_key (line 148) | typedef union Symmetric_key { type symmetric_ECB (line 212) | typedef struct { type symmetric_CFB (line 224) | typedef struct { type symmetric_OFB (line 242) | typedef struct { type symmetric_CBC (line 258) | typedef struct { type symmetric_CTR (line 273) | typedef struct { type symmetric_LRW (line 297) | typedef struct { type symmetric_F8 (line 322) | typedef struct { type ltc_cipher_descriptor (line 341) | struct ltc_cipher_descriptor { type ltc_cipher_descriptor (line 595) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 605) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 615) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 625) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 635) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 651) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 678) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 679) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 689) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 699) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 715) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 725) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 735) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 745) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 755) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 765) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 775) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 785) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 796) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 806) | struct ltc_cipher_descriptor type symmetric_xts (line 902) | typedef struct { type ltc_cipher_descriptor (line 933) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 934) | struct ltc_cipher_descriptor FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_des.c type ltc_cipher_descriptor (line 23) | struct ltc_cipher_descriptor type ltc_cipher_descriptor (line 37) | struct ltc_cipher_descriptor function deskey (line 1306) | static void deskey(const unsigned char *key, short edf, ulong32 *keyout) function deskey (line 1356) | static void deskey(const unsigned char *key, short edf, ulong32 *keyout) function cookey (line 1366) | static void cookey(const ulong32 *raw1, ulong32 *keyout) function cookey (line 1392) | static void cookey(const ulong32 *raw1, ulong32 *keyout) function _desfunc (line 1402) | static void _desfunc(ulong32 *block, const ulong32 *keys) function desfunc (line 1514) | static void desfunc(ulong32 *block, const ulong32 *keys) function des_setup (line 1529) | static int des_setup(const unsigned char *key, int keylen, int num_round... function des3_setup (line 1556) | static int des3_setup(const unsigned char *key, int keylen, int num_roun... function des_ecb_encrypt (line 1597) | static int des_ecb_encrypt(const unsigned char *pt, unsigned char *ct, s... function des_ecb_decrypt (line 1618) | static int des_ecb_decrypt(const unsigned char *ct, unsigned char *pt, s... function des3_ecb_encrypt (line 1639) | static int des3_ecb_encrypt(const unsigned char *pt, unsigned char *ct, ... function des3_ecb_decrypt (line 1663) | static int des3_ecb_decrypt(const unsigned char *ct, unsigned char *pt, ... function des_test (line 1683) | static int des_test(void) function des3_test (line 1826) | static int des3_test(void) function des_done (line 1865) | static void des_done(symmetric_key *skey) function des3_done (line 1872) | static void des3_done(symmetric_key *skey) function des_keysize (line 1882) | static int des_keysize(int *keysize) function des3_keysize (line 1897) | static int des3_keysize(int *keysize) FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_hash.h type sha512_state (line 3) | struct sha512_state { type sha256_state (line 11) | struct sha256_state { type sha1_state (line 19) | struct sha1_state { type md5_state (line 27) | struct md5_state { type md4_state (line 35) | struct md4_state { type tiger_state (line 43) | struct tiger_state { type md2_state (line 51) | struct md2_state { type rmd128_state (line 58) | struct rmd128_state { type rmd160_state (line 66) | struct rmd160_state { type rmd256_state (line 74) | struct rmd256_state { type rmd320_state (line 82) | struct rmd320_state { type whirlpool_state (line 90) | struct whirlpool_state { type chc_state (line 98) | struct chc_state { type hash_state (line 105) | typedef union Hash_state { type ltc_hash_descriptor (line 150) | struct ltc_hash_descriptor { type ltc_hash_descriptor (line 200) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 208) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 216) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 227) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 238) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 249) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 257) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 267) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 276) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 284) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 292) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 300) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 308) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 316) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 324) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 332) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 340) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 348) | struct ltc_hash_descriptor type ltc_hash_descriptor (line 349) | struct ltc_hash_descriptor FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_mac.h type hmac_state (line 2) | typedef struct Hmac_state { type omac_state (line 28) | typedef struct { type pmac_state (line 58) | typedef struct { type eax_state (line 105) | typedef struct { type ocb_state (line 141) | typedef struct { type ocb3_state (line 197) | typedef struct { type ccm_state (line 262) | typedef struct { FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_macros.h function ulong32 (line 251) | static inline ulong32 ROL(ulong32 word, int i) function ulong32 (line 259) | static inline ulong32 ROR(ulong32 word, int i) function ulong32 (line 296) | static inline ulong32 ROL(ulong32 word, int i) function ulong32 (line 304) | static inline ulong32 ROR(ulong32 word, int i) function ulong32 (line 314) | static inline ulong32 ROLc(ulong32 word, const int i) function ulong32 (line 322) | static inline ulong32 RORc(ulong32 word, const int i) function ulong64 (line 352) | static inline ulong64 ROL64(ulong64 word, int i) function ulong64 (line 360) | static inline ulong64 ROR64(ulong64 word, int i) FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_math.h type ecc_point (line 11) | typedef void ecc_point; type rsa_key (line 15) | typedef void rsa_key; type ltc_math_descriptor (line 19) | typedef struct { FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_misc.h type adler32_state (line 73) | typedef struct adler32_state_s type crc32_state (line 85) | typedef struct crc32_state_s FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_pk.h type oid_st (line 20) | typedef struct Oid { type rsa_key (line 32) | typedef struct Rsa_key { type katja_key (line 120) | typedef struct KAT_key { type dh_key (line 170) | typedef struct Dh_key { type ltc_ecc_set_type (line 220) | typedef struct { type ecc_point (line 244) | typedef struct { type ecc_key (line 256) | typedef struct { type dsa_key (line 382) | typedef struct { type ltc_asn1_type (line 445) | typedef enum ltc_asn1_type_ { type ltc_asn1_list (line 473) | typedef struct ltc_asn1_list_ { type ulong32 (line 611) | typedef ulong32 wchar_t; type ltc_utctime (line 628) | typedef struct { FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_pkcs.h type ltc_pkcs_1_v1_5_blocks (line 6) | enum ltc_pkcs_1_v1_5_blocks type ltc_pkcs_1_paddings (line 12) | enum ltc_pkcs_1_paddings FILE: charm/core/crypto/cryptobase/libtom/tomcrypt_prng.h type rc4_prng (line 12) | struct rc4_prng { type fortuna_prng (line 19) | struct fortuna_prng { type ltc_prng_descriptor (line 67) | struct ltc_prng_descriptor { type ltc_prng_descriptor (line 130) | struct ltc_prng_descriptor type ltc_prng_descriptor (line 142) | struct ltc_prng_descriptor type ltc_prng_descriptor (line 154) | struct ltc_prng_descriptor type ltc_prng_descriptor (line 166) | struct ltc_prng_descriptor type ltc_prng_descriptor (line 178) | struct ltc_prng_descriptor type ltc_prng_descriptor (line 182) | struct ltc_prng_descriptor type ltc_prng_descriptor (line 183) | struct ltc_prng_descriptor FILE: charm/core/crypto/cryptobase/stream_template.c type ALGobject (line 56) | typedef struct function ALGobject (line 66) | static ALGobject * function ALGdealloc (line 74) | static void function ALGobject (line 89) | static ALGobject * function PyObject (line 130) | static PyObject * function PyObject (line 162) | static PyObject * function PyObject (line 200) | static PyObject * type PyMethodDef (line 217) | struct PyMethodDef function _MODULE_NAME (line 249) | void FILE: charm/core/crypto/cryptobase/strxor.c function xor_strings (line 39) | static void function xor_string_with_char (line 60) | static void function runtime_test (line 88) | static void function PyObject (line 133) | static PyObject * function PyObject (line 174) | static PyObject * function PyMODINIT_FUNC (line 215) | PyMODINIT_FUNC FILE: charm/core/engine/protocol.py class Protocol (line 11) | class Protocol: method __init__ (line 12) | def __init__(self, error_states, max_size=2048): # any init information? method setup (line 28) | def setup(self, *args): method addInstance (line 39) | def addInstance(self, obj): method addPartyType (line 52) | def addPartyType(self, type, state_map, trans_map, init_state=False): method listStates (line 77) | def listStates(self, partyID): method listParties (line 83) | def listParties(self): method listParyTypes (line 86) | def listParyTypes(self): method getInitState (line 89) | def getInitState(self, _type): method setState (line 103) | def setState(self, state_num): method send_msg (line 129) | def send_msg(self, object): method recv_all (line 145) | def recv_all(self, n): method recv_msg (line 153) | def recv_msg(self): method setSubclassVars (line 179) | def setSubclassVars(self, group, state=None): method get (line 186) | def get(self, keys, _type=tuple): method store (line 202) | def store(self, *args): method serialize (line 208) | def serialize(self, object): method deserialize (line 212) | def deserialize(self, bytes_object): method setUnsafePickleDeserialization (line 228) | def setUnsafePickleDeserialization(self, enabled=False): method setSerializers (line 239) | def setSerializers(self, serial, deserial): method setErrorCode (line 246) | def setErrorCode(self, value): method execute (line 250) | def execute(self, party_type, close_sock=True): method check (line 295) | def check(self): method clean (line 301) | def clean(self): FILE: charm/core/engine/util.py function serializeDict (line 12) | def serializeDict(Object, group): function serializeList (line 18) | def serializeList(Object, group): function serializeObject (line 34) | def serializeObject(Objects, group): function deserializeDict (line 45) | def deserializeDict(Object, group): function deserializeList (line 52) | def deserializeList(Object, group): function deserializeTuple (line 59) | def deserializeTuple(Object, group): function deserializeStr (line 63) | def deserializeStr(object, group): function deserializeObject (line 79) | def deserializeObject(Objects, group): function pickleObject (line 89) | def pickleObject(Object): function unpickleObject (line 105) | def unpickleObject(Object): function to_json (line 123) | def to_json(object): function from_json (line 130) | def from_json(json_object): function objectToBytes (line 140) | def objectToBytes(object, group): function bytesToObject (line 146) | def bytesToObject(byteobject, group): function objectToBytesWithPickle (line 154) | def objectToBytesWithPickle(Object, group): function bytesToObjectWithPickle (line 158) | def bytesToObjectWithPickle(byteobject, group): FILE: charm/core/math/elliptic_curve.pyi class ECGroup (line 9) | class ECGroup: method __init__ (line 12) | def __init__(self, nid: int) -> None: ... class Element (line 14) | class Element: method __init__ (line 20) | def __init__(self) -> None: ... method isInf (line 21) | def isInf(self) -> bool: ... method __add__ (line 24) | def __add__(self, other: Element) -> Element: ... method __radd__ (line 25) | def __radd__(self, other: Element) -> Element: ... method __sub__ (line 26) | def __sub__(self, other: Element) -> Element: ... method __rsub__ (line 27) | def __rsub__(self, other: Element) -> Element: ... method __mul__ (line 28) | def __mul__(self, other: Element | int) -> Element: ... method __rmul__ (line 29) | def __rmul__(self, other: Element | int) -> Element: ... method __mod__ (line 30) | def __mod__(self, other: Element) -> Element: ... method __pow__ (line 31) | def __pow__(self, exp: Element | int) -> Element: ... method __neg__ (line 32) | def __neg__(self) -> Element: ... method __invert__ (line 33) | def __invert__(self) -> Element: ... method __eq__ (line 36) | def __eq__(self, other: object) -> bool: ... method __ne__ (line 37) | def __ne__(self, other: object) -> bool: ... method __lt__ (line 38) | def __lt__(self, other: Element) -> bool: ... method __le__ (line 39) | def __le__(self, other: Element) -> bool: ... method __gt__ (line 40) | def __gt__(self, other: Element) -> bool: ... method __ge__ (line 41) | def __ge__(self, other: Element) -> bool: ... method __int__ (line 44) | def __int__(self) -> int: ... method __hash__ (line 45) | def __hash__(self) -> int: ... function init (line 48) | def init(group: ECGroup, type: int, value: int = ...) -> Element: ... function random (line 49) | def random(group: ECGroup, type: int) -> Element: ... function order (line 50) | def order(group: ECGroup) -> Element: ... function getGenerator (line 51) | def getGenerator(group: ECGroup) -> Element: ... function bitsize (line 52) | def bitsize(group: ECGroup) -> int: ... function serialize (line 53) | def serialize(element: Element) -> bytes: ... function deserialize (line 54) | def deserialize(group: ECGroup, data: bytes, type: int) -> Element: ... function hashEC (line 55) | def hashEC(group: ECGroup, data: bytes, type: int) -> Element: ... function encode (line 56) | def encode(group: ECGroup, message: bytes) -> Element: ... function decode (line 57) | def decode(element: Element) -> bytes: ... function getXY (line 60) | def getXY(group: ECGroup, element: Element, x_only: bool = True) -> Elem... function getXY (line 62) | def getXY(group: ECGroup, element: Element, x_only: bool = False) -> tup... FILE: charm/core/math/elliptic_curve/ecmodule.c function printf_buffer_as_hex (line 42) | void printf_buffer_as_hex(uint8_t * data, size_t len) function setBigNum (line 54) | void setBigNum(PyLongObject *obj, BIGNUM **value) { function hash_to_bytes (line 92) | int hash_to_bytes(uint8_t *input_buf, int input_len, uint8_t *output_buf... function ECElement (line 154) | ECElement *createNewPoint(GroupType type, ECGroup *gobj) { function ECElement_init (line 173) | int ECElement_init(ECElement *self, PyObject *args, PyObject *kwds) function ECElement_dealloc (line 179) | void ECElement_dealloc(ECElement* self) { function PyObject (line 187) | PyObject *ECElement_new(PyTypeObject *type, PyObject *args, PyObject *kw... function ECGroup_dealloc (line 203) | void ECGroup_dealloc(ECGroup *self) function PyObject (line 240) | PyObject *ECGroup_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function ECGroup_init (line 259) | int ECGroup_init(ECGroup *self, PyObject *args, PyObject *kwds) function PyObject (line 350) | PyObject *ECElement_call(ECElement *intObject, PyObject *args, PyObject ... function PyObject (line 355) | PyObject *ECGroup_print(ECGroup *self) { function PyObject (line 378) | PyObject *ECElement_print(ECElement *self) { function PyObject (line 409) | PyObject *ECE_init(ECElement *self, PyObject *args) { function PyObject (line 443) | PyObject *ECE_random(ECElement *self, PyObject *args) function PyObject (line 505) | static PyObject *ECE_is_infinity(ECElement *self, PyObject *args) { function PyObject (line 519) | static PyObject *ECE_add(PyObject *o1, PyObject *o2) { function PyObject (line 584) | static PyObject *ECE_sub(PyObject *o1, PyObject *o2) { function PyObject (line 646) | static PyObject *ECE_mul(PyObject *o1, PyObject *o2) { function PyObject (line 712) | static PyObject *ECE_div(PyObject *o1, PyObject *o2) { function PyObject (line 789) | static PyObject *ECE_rem(PyObject *o1, PyObject *o2) { function PyObject (line 843) | static PyObject *ECE_pow(PyObject *o1, PyObject *o2, PyObject *o3) { function ECElement (line 942) | ECElement *invertECElement(ECElement *self) { function PyObject (line 967) | static PyObject *ECE_invert(PyObject *o1) { function ECElement (line 987) | ECElement *negatePoint(ECElement *self) { function PyObject (line 1006) | static PyObject *ECE_neg(PyObject *o1) { function PyObject (line 1038) | static PyObject *ECE_long(PyObject *o1) { function PyObject (line 1054) | static PyObject *ECE_convertToZR(ECElement *self, PyObject *args) { function PyObject (line 1098) | static PyObject *ECE_getOrder(ECElement *self, PyObject *arg) { function PyObject (line 1111) | static PyObject *ECE_bitsize(ECElement *self, PyObject *arg) { function PyObject (line 1126) | static PyObject *ECE_equals(PyObject *o1, PyObject *o2, int opid) { function PyObject (line 1191) | static PyObject *ECE_getGen(ECElement *self, PyObject *arg) { function set_element_from_hash (line 1208) | void set_element_from_hash(ECElement *self, uint8_t *input, int input_len) function PyObject (line 1249) | static PyObject *ECE_hash(ECElement *self, PyObject *args) { function PyObject (line 1297) | static PyObject *ECE_encode(ECElement *self, PyObject *args) { function PyObject (line 1412) | static PyObject *ECE_decode(ECElement *self, PyObject *args) { function PyObject (line 1464) | static PyObject *Serialize(ECElement *self, PyObject *args) { function PyObject (line 1514) | static PyObject *Deserialize(ECElement *self, PyObject *args) function PyObject (line 1564) | PyObject *PyCreateList(Operations *gBench, MeasureType type) type module_state (line 1846) | struct module_state { type module_state (line 1857) | struct module_state function ec_traverse (line 1885) | static int ec_traverse(PyObject *m, visitproc visit, void *arg) { function ec_clear (line 1890) | static int ec_clear(PyObject *m) { function ec_free (line 1896) | static int ec_free(PyObject *m) { type PyModuleDef (line 1906) | struct PyModuleDef type module_state (line 1910) | struct module_state function initelliptic_curve (line 1925) | void initelliptic_curve(void) { FILE: charm/core/math/elliptic_curve/ecmodule.h type Group (line 86) | enum Group {ZR = 0, G, NONE_G} type GroupType (line 87) | typedef enum Group GroupType; type Operations (line 93) | typedef struct { type ECGroup (line 105) | typedef struct { type ECElement (line 119) | typedef struct { FILE: charm/core/math/integer.pyi class Element (line 7) | class Element: method __init__ (line 11) | def __init__(self, number: int) -> None: ... method __init__ (line 13) | def __init__(self, number: Element) -> None: ... method __init__ (line 15) | def __init__(self, number: int, modulus: int) -> None: ... method __init__ (line 17) | def __init__(self, number: int, modulus: Element) -> None: ... method __init__ (line 19) | def __init__(self, number: Element, modulus: int) -> None: ... method __init__ (line 21) | def __init__(self, number: Element, modulus: Element) -> None: ... method set (line 22) | def set(self, other: Element) -> bool: ... method isCoPrime (line 23) | def isCoPrime(self, other: Element | int) -> bool: ... method isCongruent (line 24) | def isCongruent(self, a: int, n: int) -> bool: ... method __add__ (line 27) | def __add__(self, other: Element | int) -> Element: ... method __radd__ (line 28) | def __radd__(self, other: Element | int) -> Element: ... method __sub__ (line 29) | def __sub__(self, other: Element | int) -> Element: ... method __rsub__ (line 30) | def __rsub__(self, other: Element | int) -> Element: ... method __mul__ (line 31) | def __mul__(self, other: Element | int) -> Element: ... method __rmul__ (line 32) | def __rmul__(self, other: Element | int) -> Element: ... method __truediv__ (line 33) | def __truediv__(self, other: Element | int) -> Element: ... method __rtruediv__ (line 34) | def __rtruediv__(self, other: Element | int) -> Element: ... method __mod__ (line 35) | def __mod__(self, other: Element | int) -> Element: ... method __rmod__ (line 36) | def __rmod__(self, other: Element | int) -> Element: ... method __pow__ (line 37) | def __pow__(self, other: Element | int) -> Element: ... method __rpow__ (line 38) | def __rpow__(self, other: Element | int) -> Element: ... method __neg__ (line 39) | def __neg__(self) -> Element: ... method __invert__ (line 40) | def __invert__(self) -> Element: ... method __xor__ (line 41) | def __xor__(self, other: Element | int) -> Element: ... method __rxor__ (line 42) | def __rxor__(self, other: Element | int) -> Element: ... method __eq__ (line 45) | def __eq__(self, other: object) -> bool: ... method __ne__ (line 46) | def __ne__(self, other: object) -> bool: ... method __lt__ (line 47) | def __lt__(self, other: Element | int) -> bool: ... method __le__ (line 48) | def __le__(self, other: Element | int) -> bool: ... method __gt__ (line 49) | def __gt__(self, other: Element | int) -> bool: ... method __ge__ (line 50) | def __ge__(self, other: Element | int) -> bool: ... method __int__ (line 53) | def __int__(self) -> int: ... method __str__ (line 54) | def __str__(self) -> str: ... method __repr__ (line 55) | def __repr__(self) -> str: ... method __hash__ (line 56) | def __hash__(self) -> int: ... function randomBits (line 59) | def randomBits(bits: int) -> Element: ... function random (line 60) | def random(n: Element | int) -> Element: ... function randomPrime (line 61) | def randomPrime(bits: int) -> Element: ... function isPrime (line 62) | def isPrime(n: Element | int) -> bool: ... function encode (line 63) | def encode(message: bytes, modulus: Element | int) -> Element: ... function decode (line 64) | def decode(element: Element) -> bytes: ... function hashInt (line 65) | def hashInt(value: bytes, modulus: Element | int) -> Element: ... function bitsize (line 66) | def bitsize(n: Element | int) -> int: ... function legendre (line 67) | def legendre(a: Element | int, p: Element | int) -> int: ... function gcd (line 68) | def gcd(a: Element | int, b: Element | int) -> Element: ... function lcm (line 69) | def lcm(a: Element | int, b: Element | int) -> Element: ... function serialize (line 70) | def serialize(element: Element) -> bytes: ... function deserialize (line 71) | def deserialize(data: bytes) -> Element: ... function int2Bytes (line 72) | def int2Bytes(element: Element) -> bytes: ... function toInt (line 73) | def toInt(element: Element) -> Element: ... function getMod (line 74) | def getMod(element: Element) -> Element: ... function reduce (line 75) | def reduce(element: Element) -> Element: ... FILE: charm/core/math/integer/integermodule.c type module_state (line 82) | struct module_state { function size (line 114) | static inline size_t size(mpz_t n) { function longObjToMPZ (line 118) | void longObjToMPZ(mpz_t m, PyObject * o) { function PyObject (line 162) | PyObject *bnToLongObj(BIGNUM *m) { function bnToMPZ (line 166) | int bnToMPZ(BIGNUM *p, mpz_t m) { function mpzToBN (line 183) | int mpzToBN(mpz_t m, BIGNUM *b) { function PyObject (line 199) | PyObject *mpzToLongObj(mpz_t m) { function print_mpz (line 242) | void print_mpz(mpz_t x, int base) { function print_bn_dec (line 255) | void print_bn_dec(const BIGNUM *bn) { function printf_buffer_as_hex (line 264) | void printf_buffer_as_hex(uint8_t *data, size_t len) { function hash_to_bytes (line 284) | int hash_to_bytes(uint8_t *input_buf, int input_len, uint8_t *output_buf... function hash_to_group_element (line 343) | int hash_to_group_element(mpz_t x, int block_num, uint8_t *output_buf) { function _reduce (line 378) | void _reduce(Integer *object) { function Integer_dealloc (line 383) | void Integer_dealloc(Integer* self) { function PyObject (line 390) | PyObject *Integer_new(PyTypeObject *type, PyObject *args, PyObject *kwds) { function Integer_init (line 403) | int Integer_init(Integer *self, PyObject *args, PyObject *kwds) { function PyObject (line 462) | static PyObject *Integer_equals(PyObject *o1, PyObject *o2, int opid) { function PyObject (line 550) | PyObject *Integer_print(Integer *self) { function Integer (line 584) | Integer *createNewInteger() { function PyObject (line 602) | static PyObject *Integer_set(Integer *self, PyObject *args) { function PyObject (line 620) | static PyObject *Integer_add(PyObject *o1, PyObject *o2) { function PyObject (line 681) | static PyObject *Integer_sub(PyObject *o1, PyObject *o2) { function PyObject (line 743) | static PyObject *Integer_mul(PyObject *o1, PyObject *o2) { function PyObject (line 807) | static PyObject *Integer_invert(PyObject *o1) { function PyObject (line 827) | static PyObject *Integer_long(PyObject *o1) { function PyObject (line 838) | static PyObject *Integer_reduce(PyObject *self, PyObject *args) { function PyObject (line 859) | static PyObject *Integer_div(PyObject *o1, PyObject *o2) { function PyObject (line 955) | static PyObject *Integer_pow(PyObject *o1, PyObject *o2, PyObject *o3) { function PyObject (line 1099) | static PyObject *Integer_hash(PyObject *self, PyObject *args) { function PyObject (line 1345) | static PyObject *Integer_remainder(PyObject *o1, PyObject *o2) { function PyObject (line 1399) | static PyObject *testPrimality(PyObject *self, PyObject *arg) { function PyObject (line 1432) | static PyObject *genRandomBits(PyObject *self, PyObject *args) { function PyObject (line 1472) | static PyObject *genRandom(PyObject *self, PyObject *args) { function PyObject (line 1509) | static PyObject *genRandomPrime(PyObject *self, PyObject *args) { function PyObject (line 1552) | static PyObject *encode_message(PyObject *self, PyObject *args) { function PyObject (line 1666) | static PyObject *decode_message(PyObject *self, PyObject *args) { function PyObject (line 1717) | static PyObject *bitsize(PyObject *self, PyObject *args) { function PyObject (line 1741) | static PyObject *testCoPrime(Integer *self, PyObject *arg) { function PyObject (line 1782) | static PyObject *testCongruency(Integer *self, PyObject *args) { function PyObject (line 1825) | static PyObject *legendre(PyObject *self, PyObject *args) { function PyObject (line 1861) | static PyObject *gcdCall(PyObject *self, PyObject *args) { function PyObject (line 1901) | static PyObject *lcmCall(PyObject *self, PyObject *args) { function PyObject (line 1941) | static PyObject *serialize(PyObject *self, PyObject *args) { function deserialize_helper (line 1990) | void deserialize_helper(int length, char *encoded_value, mpz_t target) function PyObject (line 2001) | static PyObject *deserialize(PyObject *self, PyObject *args) { function PyObject (line 2067) | static PyObject *toBytes(PyObject *self, PyObject *args) { function PyObject (line 2086) | static PyObject *toInt(PyObject *self, PyObject *args) { function PyObject (line 2101) | static PyObject *getMod(PyObject *self, PyObject *args) { function PyObject (line 2115) | static PyObject *Integer_xor(PyObject *self, PyObject *other) { function PyObject (line 2140) | PyObject *Benchmark_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function Benchmark_init (line 2157) | int Benchmark_init(Benchmark *self, PyObject *args, PyObject *kwds) function Benchmark_dealloc (line 2162) | void Benchmark_dealloc(Benchmark *self) { function PyObject (line 2210) | PyObject *InitBenchmark(PyObject *self, PyObject *args) { function PyObject (line 2250) | PyObject *StartBenchmark(PyObject *self, PyObject *args) { function PyObject (line 2272) | PyObject *EndBenchmark(PyObject *self, PyObject *args) { function PyObject (line 2288) | static PyObject *GetBenchmark(PyObject *self, PyObject *args) { function PyObject (line 2307) | static PyObject *GetAllBenchmarks(PyObject *self, PyObject *args) { function int_traverse (line 2441) | static int int_traverse(PyObject *m, visitproc visit, void *arg) { function int_clear (line 2449) | static int int_clear(PyObject *m) { function int_free (line 2459) | static int int_free(PyObject *m) { type PyModuleDef (line 2470) | struct PyModuleDef type module_state (line 2474) | struct module_state function PyMODINIT_FUNC (line 2484) | PyMODINIT_FUNC FILE: charm/core/math/integer/integermodule.h type Integer (line 119) | typedef struct { FILE: charm/core/math/pairing.pyi class Pairing (line 11) | class Pairing: method __init__ (line 15) | def __init__(self) -> None: ... method __init__ (line 17) | def __init__(self, params: str) -> None: ... method __init__ (line 19) | def __init__(self, params: bytes) -> None: ... class Element (line 21) | class Element: method __init__ (line 28) | def __init__(self) -> None: ... method initPP (line 29) | def initPP(self) -> None: ... method set (line 30) | def set(self, value: int | Element) -> int: ... method __add__ (line 33) | def __add__(self, other: Element) -> Element: ... method __radd__ (line 34) | def __radd__(self, other: Element) -> Element: ... method __sub__ (line 35) | def __sub__(self, other: Element) -> Element: ... method __rsub__ (line 36) | def __rsub__(self, other: Element) -> Element: ... method __mul__ (line 37) | def __mul__(self, other: Element) -> Element: ... method __rmul__ (line 38) | def __rmul__(self, other: Element) -> Element: ... method __pow__ (line 39) | def __pow__(self, other: Element | int) -> Element: ... method __rpow__ (line 40) | def __rpow__(self, other: Element | int) -> Element: ... method __neg__ (line 41) | def __neg__(self) -> Element: ... method __invert__ (line 42) | def __invert__(self) -> Element: ... method __eq__ (line 45) | def __eq__(self, other: object) -> bool: ... method __ne__ (line 46) | def __ne__(self, other: object) -> bool: ... method __lt__ (line 47) | def __lt__(self, other: Element) -> bool: ... method __le__ (line 48) | def __le__(self, other: Element) -> bool: ... method __gt__ (line 49) | def __gt__(self, other: Element) -> bool: ... method __ge__ (line 50) | def __ge__(self, other: Element) -> bool: ... method __int__ (line 53) | def __int__(self) -> int: ... method __hash__ (line 54) | def __hash__(self) -> int: ... function init (line 58) | def init(group: Pairing, type: int) -> Element: ... function init (line 60) | def init(group: Pairing, type: int, value: int) -> Element: ... function pair (line 62) | def pair(g1: Element, g2: Element) -> Element: ... function hashPair (line 63) | def hashPair(element: Element) -> bytes: ... function H (line 64) | def H(group: Pairing, data: bytes | str, type: int) -> Element: ... function random (line 65) | def random(group: Pairing, type: int) -> Element: ... function serialize (line 66) | def serialize(element: Element) -> bytes: ... function deserialize (line 67) | def deserialize(group: Pairing, data: bytes, type: int) -> Element: ... function ismember (line 68) | def ismember(element: Element) -> bool: ... FILE: charm/core/math/pairing/miracl/miracl_interface.cc function _printf_buffer_as_hex (line 43) | void _printf_buffer_as_hex(uint8_t * data, size_t len) function string (line 55) | string bigToRawBytes(Big x) function string (line 67) | string bigToBytes(Big x) function Big (line 82) | Big *bytesToBig(string str, int *counter) function pairing_t (line 98) | pairing_t *pairing_init(int securitylevel) { function element_t (line 115) | element_t *order(pairing_t *pairing) { function element_t (line 122) | element_t *element_init_ZR(int value = 0) function element_t (line 128) | element_t *_element_init_G1() function element_t (line 134) | element_t *_element_init_G2() function element_t (line 140) | element_t *_element_init_GT(const pairing_t *pairing) function element_is_member (line 148) | int element_is_member(Curve_t ctype, Group_t type, const pairing_t *pair... function element_random (line 186) | void element_random(Group_t type, const pairing_t *pairing, element_t *e) { function element_printf (line 210) | void element_printf(Group_t type, const element_t *e) function _element_length_to_str (line 234) | int _element_length_to_str(Group_t type, const element_t *e) function _element_to_str (line 266) | int _element_to_str(unsigned char **data_str, Group_t type, const elemen... function _element_add (line 297) | void _element_add(Group_t type, element_t *c, const element_t *a, const ... function _element_sub (line 321) | void _element_sub(Group_t type, element_t *c, const element_t *a, const ... function _element_mul (line 341) | void _element_mul(Group_t type, element_t *c, const element_t *a, const ... function _element_mul_si (line 371) | void _element_mul_si(Group_t type, const pairing_t *pairing, element_t *... function _element_mul_zn (line 398) | void _element_mul_zn(Group_t type, const pairing_t *pairing, element_t *... function _element_div (line 426) | void _element_div(Group_t type, element_t *c, const element_t *a, const ... function element_t (line 454) | element_t *_element_pow_zr_zr(Group_t type, const pairing_t *pairing, co... function element_t (line 466) | element_t *_element_pow_zr(Group_t type, const pairing_t *pairing, eleme... function element_t (line 506) | element_t *_element_neg(Group_t type, const element_t *e, const element_... function _element_inv (line 539) | void _element_inv(Group_t type, const pairing_t *pairing, const element_... function Big (line 569) | Big *charToBig (char *c, int len) function Big (line 579) | Big getx(Big y) function G1 (line 586) | G1 *charToG1(char *c, int len) function element_t (line 596) | element_t *hash_then_map(Group_t type, const pairing_t *pairing, char *d... function _init_hash (line 621) | void _init_hash(const pairing_t *pairing) function _element_add_str_hash (line 627) | void _element_add_str_hash(const pairing_t *pairing, void *data, int len) function _element_add_to_hash (line 637) | void _element_add_to_hash(Group_t type, const pairing_t *pairing, const ... function element_t (line 658) | element_t *finish_hash(Group_t type, const pairing_t *pairing) function element_t (line 683) | element_t *_element_from_hash(Group_t type, const pairing_t *pairing, vo... function element_is_value (line 699) | int element_is_value(Group_t type, element_t *n, int value) { function _element_cmp (line 712) | int _element_cmp(Group_t type, element_t *a, element_t *b) { function _element_set_si (line 740) | void _element_set_si(Group_t type, element_t *dst, const signed long int... function _element_setG1 (line 749) | int _element_setG1(Group_t type, element_t *c, const element_t *a, const... function _element_set (line 761) | void _element_set(Curve_t ctype, Group_t type, element_t *dst, const ele... function _element_set_mpz (line 812) | void _element_set_mpz(Group_t type, element_t *dst, mpz_t src) function _element_to_mpz (line 830) | void _element_to_mpz(Group_t type, element_t *src, mpz_t dst) function _element_hash_key (line 850) | void _element_hash_key(const pairing_t *pairing, Group_t type, element_t... function element_t (line 866) | element_t *_element_pairing_type3(const pairing_t *pairing, const elemen... function element_t (line 890) | element_t *_element_prod_pairing_type3(const pairing_t *pairing, const e... function _element_length_in_bytes (line 907) | int _element_length_in_bytes(Curve_t ctype, Group_t type, element_t *e) { function _element_to_bytes (line 975) | int _element_to_bytes(unsigned char *data, Curve_t ctype, Group_t type, ... function element_t (line 1058) | element_t *_element_from_bytes(Curve_t ctype, Group_t type, unsigned cha... function element_delete (line 1132) | void element_delete(Group_t type, element_t *e) { function pairing_clear (line 1156) | void pairing_clear(pairing_t *pairing) { function miracl_clean (line 1161) | void miracl_clean() { function is_base64 (line 1174) | static inline bool is_base64(unsigned char c) { function string (line 1178) | string _base64_encode(unsigned char const* bytes_to_encode, unsigned int... function string (line 1221) | string _base64_decode(string const& encoded_string) { function aes_encrypt (line 1262) | int aes_encrypt(char *key, char *message, int len, char **out) function aes_decrypt (line 1301) | int aes_decrypt(char *key, char *ciphertext, int len, char **out) FILE: charm/core/math/pairing/miracl/miracl_interface.h type pairing_t (line 32) | typedef void pairing_t; type element_t (line 33) | typedef void element_t; type Curve (line 39) | enum Curve {MNT, SS, BLS, NONE_C} type Group (line 40) | enum Group {ZR_t = 0, G1_t, G2_t, GT_t, NONE_G} type Group_t (line 41) | typedef enum Group Group_t; type Curve_t (line 42) | typedef enum Curve Curve_t; FILE: charm/core/math/pairing/miracl/miracl_interface2.cc function _printf_buffer_as_hex (line 41) | void _printf_buffer_as_hex(uint8_t * data, size_t len) function string (line 53) | string bigToRawBytes(Big x) function string (line 65) | string bigToBytes(Big x) function Big (line 84) | Big *bytesToBig(string str, int *counter) function pairing_t (line 118) | pairing_t *pairing_init(int securitylevel) { function element_t (line 135) | element_t *order(pairing_t *pairing) { function element_t (line 142) | element_t *element_init_ZR(int value = 0) function element_t (line 148) | element_t *_element_init_G1() function element_t (line 154) | element_t *_element_init_G2() function element_t (line 160) | element_t *_element_init_GT(const pairing_t *pairing) function element_is_member (line 168) | int element_is_member(Curve_t ctype, Group_t type, const pairing_t *pair... function _element_pp_init (line 195) | int _element_pp_init(const pairing_t *pairing, Group_t type, element_t *e) function element_t (line 221) | element_t *element_gt(const pairing_t *pairing) function element_random (line 235) | void element_random(Group_t type, const pairing_t *pairing, element_t *e) { function element_printf (line 260) | void element_printf(Group_t type, const element_t *e) function _element_length_to_str (line 284) | int _element_length_to_str(Group_t type, const element_t *e) function _element_to_str (line 316) | int _element_to_str(unsigned char **data_str, Group_t type, const elemen... function _element_add (line 347) | void _element_add(Group_t type, element_t *c, const element_t *a, const ... function _element_sub (line 371) | void _element_sub(Group_t type, element_t *c, const element_t *a, const ... function _element_mul (line 395) | void _element_mul(Group_t type, element_t *c, const element_t *a, const ... function _element_mul_si (line 440) | void _element_mul_si(Group_t type, const pairing_t *pairing, element_t *... function _element_mul_zn (line 475) | void _element_mul_zn(Group_t type, const pairing_t *pairing, element_t *... function _element_div (line 511) | void _element_div(Group_t type, element_t *c, const element_t *a, const ... function element_t (line 537) | element_t *_element_pow_zr_zr(Group_t type, const pairing_t *pairing, co... function element_t (line 549) | element_t *_element_pow_zr(Group_t type, const pairing_t *pairing, eleme... function element_t (line 591) | element_t *_element_neg(Group_t type, const element_t *e, const element_... function _element_inv (line 624) | void _element_inv(Group_t type, const pairing_t *pairing, const element_... function Big (line 654) | Big *charToBig (char *c, int len) function Big (line 664) | Big getx(Big y) function G1 (line 671) | G1 *charToG1(char *c, int len) function element_t (line 681) | element_t *hash_then_map(Group_t type, const pairing_t *pairing, char *d... function _init_hash (line 706) | void _init_hash(const pairing_t *pairing) function _element_add_str_hash (line 712) | void _element_add_str_hash(const pairing_t *pairing, char *data, int len) function _element_add_to_hash (line 727) | void _element_add_to_hash(Group_t type, const pairing_t *pairing, const ... function element_t (line 748) | element_t *finish_hash(Group_t type, const pairing_t *pairing) function element_t (line 780) | element_t *_element_from_hash(Group_t type, const pairing_t *pairing, vo... function element_is_value (line 796) | int element_is_value(Group_t type, element_t *n, int value) { function _element_cmp (line 809) | int _element_cmp(Group_t type, element_t *a, element_t *b) { function _element_set_si (line 837) | void _element_set_si(Group_t type, element_t *dst, const signed long int... function _element_setG1 (line 846) | int _element_setG1(Group_t type, element_t *c, const element_t *a, const... function _element_set (line 858) | void _element_set(Curve_t ctype, Group_t type, element_t *dst, const ele... function _element_set_mpz (line 937) | void _element_set_mpz(Group_t type, element_t *dst, mpz_t src) function _element_to_mpz (line 955) | void _element_to_mpz(Group_t type, element_t *src, mpz_t dst) function _element_hash_key (line 975) | void _element_hash_key(const pairing_t *pairing, Group_t type, element_t... function element_t (line 993) | element_t *_element_pairing(const pairing_t *pairing, const element_t *i... function element_t (line 1023) | element_t *_element_prod_pairing(const pairing_t *pairing, const element... function _element_length_in_bytes (line 1085) | int _element_length_in_bytes(Curve_t ctype, Group_t type, element_t *e) { function _element_to_bytes (line 1220) | int _element_to_bytes(unsigned char *data, Curve_t ctype, Group_t type, ... function element_t (line 1362) | element_t *_element_from_bytes(Curve_t ctype, Group_t type, unsigned cha... function element_delete (line 1525) | void element_delete(Group_t type, element_t *e) { function pairing_clear (line 1552) | void pairing_clear(pairing_t *pairing) { function miracl_clean (line 1557) | void miracl_clean(void) { function is_base64 (line 1570) | static inline bool is_base64(unsigned char c) { function string (line 1574) | string _base64_encode(unsigned char const* bytes_to_encode, unsigned int... function string (line 1617) | string _base64_decode(string const& encoded_string) { function aes_encrypt (line 1658) | int aes_encrypt(char *key, char *message, int len, char **out) function aes_decrypt (line 1697) | int aes_decrypt(char *key, char *ciphertext, int len, char **out) FILE: charm/core/math/pairing/miracl/miracl_interface2.h type pairing_t (line 31) | typedef void pairing_t; type element_t (line 32) | typedef void element_t; type Curve (line 38) | enum Curve {MNT, BN, SS, NONE_C} type Group (line 40) | enum Group {pyZR_t = 0, pyG1_t, pyG2_t, pyGT_t, NONE_G} type Group (line 42) | enum Group {pyZR_t = 0, pyG1_t, pyGT_t, NONE_G} type Group_t (line 47) | typedef enum Group Group_t; type Curve_t (line 48) | typedef enum Curve Curve_t; FILE: charm/core/math/pairing/miracl/pairingmodule2.c function exp_rule (line 47) | int exp_rule(Group_t lhs, Group_t rhs) function mul_rule (line 56) | int mul_rule(Group_t lhs, Group_t rhs) function add_rule (line 63) | int add_rule(Group_t lhs, Group_t rhs) function sub_rule (line 69) | int sub_rule(Group_t lhs, Group_t rhs) function div_rule (line 75) | int div_rule(Group_t lhs, Group_t rhs) function pair_rule (line 81) | int pair_rule(Group_t lhs, Group_t rhs) function check_type (line 88) | int check_type(Group_t type) { function PyObject (line 123) | PyObject *mpzToLongObj(mpz_t m) { function longObjToMPZ (line 149) | void longObjToMPZ (mpz_t m, PyLongObject * p) function printf_buffer_as_hex (line 189) | void printf_buffer_as_hex(uint8_t * data, size_t len) function Check_Types (line 203) | int Check_Types(Group_t l_type, Group_t r_type, char op) function Element (line 235) | static Element *createNewElement(Group_t element_type, Pairing *pairing) { function Element (line 265) | Element *convertToZR(PyObject *longObj, PyObject *elemObj) { function Pairing_dealloc (line 283) | void Pairing_dealloc(Pairing *self) function Element_dealloc (line 305) | void Element_dealloc(Element* self) function hash_to_bytes (line 330) | int hash_to_bytes(uint8_t *input_buf, int input_len, uint8_t *output_buf... function hash_element_to_bytes (line 399) | int hash_element_to_bytes(Element *element, int hash_size, uint8_t* outp... function PyObject (line 417) | PyObject *Element_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function PyObject (line 431) | PyObject *Pairing_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function Element_init (line 447) | int Element_init(Element *self, PyObject *args, PyObject *kwds) function Pairing_init (line 453) | int Pairing_init(Pairing *self, PyObject *args, PyObject *kwds) function PyObject (line 510) | static PyObject *Element_elem(Element* self, PyObject* args) function PyObject (line 549) | PyObject *Pairing_print(Element* self) function PyObject (line 555) | PyObject *Element_print(Element* self) function PyObject (line 575) | static PyObject *Element_random(Element* self, PyObject* args) function PyObject (line 623) | static PyObject *Element_add(Element *self, Element *other) function PyObject (line 652) | static PyObject *Element_sub(Element *self, Element *other) function PyObject (line 681) | static PyObject *Element_mul(PyObject *lhs, PyObject *rhs) function PyObject (line 753) | static PyObject *Element_div(PyObject *lhs, PyObject *rhs) function PyObject (line 837) | static PyObject *Element_invert(Element *self) function PyObject (line 857) | static PyObject *Element_negate(Element *self) function PyObject (line 869) | static PyObject *Element_pow(PyObject *o1, PyObject *o2, PyObject *o3) function PyObject (line 973) | static PyObject *Element_set(Element *self, PyObject *args) function PyObject (line 1014) | static PyObject *Element_setxy(Element *self, PyObject *args) function PyObject (line 1042) | static PyObject *Element_initPP(Element *self, PyObject *args) function PyObject (line 1061) | PyObject *multi_pairing_asymmetric(Pairing *groupObj, PyObject *listG1, ... function PyObject (line 1120) | PyObject *Apply_pairing(Element *self, PyObject *args) function PyObject (line 1161) | PyObject *sha2_hash(Element *self, PyObject *args) { function PyObject (line 1199) | static PyObject *Element_hash(Element *self, PyObject *args) function PyObject (line 1332) | static PyObject *Element_equals(PyObject *lhs, PyObject *rhs, int opid) { function PyObject (line 1417) | static PyObject *Element_long(PyObject *o1) { function Element_index (line 1434) | static long Element_index(Element *o1) { function PyObject (line 1457) | static PyObject *Serialize_cmp(Element *o1, PyObject *args) { function PyObject (line 1513) | static PyObject *Deserialize_cmp(Element *self, PyObject *args) { function PyObject (line 1545) | static PyObject *Group_Check(Element *self, PyObject *args) { function PyObject (line 1567) | static PyObject *Get_Order(Element *self, PyObject *args) { function PyObject (line 1585) | PyObject *AES_Encrypt(Element *self, PyObject *args) function PyObject (line 1621) | PyObject *AES_Decrypt(Element *self, PyObject *args) function PyObject (line 1660) | PyObject *PyCreateList(Operations *gBench, MeasureType type) type module_state (line 1932) | struct module_state { type module_state (line 1943) | struct module_state function pairings_traverse (line 1987) | static int pairings_traverse(PyObject *m, visitproc visit, void *arg) { function pairings_clear (line 1992) | static int pairings_clear(PyObject *m) { function pairings_free (line 1998) | static int pairings_free(PyObject *m) { type PyModuleDef (line 2012) | struct PyModuleDef type module_state (line 2016) | struct module_state function initpairing (line 2031) | void initpairing(void) { FILE: charm/core/math/pairing/miracl/pairingmodule2.h type Operations (line 109) | typedef struct { type Pairing (line 121) | typedef struct { type Element (line 134) | typedef struct { FILE: charm/core/math/pairing/pairingmodule.c function exp_rule (line 58) | int exp_rule(GroupType lhs, GroupType rhs) function mul_rule (line 67) | int mul_rule(GroupType lhs, GroupType rhs) function add_rule (line 74) | int add_rule(GroupType lhs, GroupType rhs) function sub_rule (line 80) | int sub_rule(GroupType lhs, GroupType rhs) function div_rule (line 86) | int div_rule(GroupType lhs, GroupType rhs) function pair_rule (line 92) | int pair_rule(GroupType lhs, GroupType rhs) function check_type (line 99) | int check_type(GroupType type) { function PyObject (line 137) | PyObject *mpzToLongObj (mpz_t m) function longObjToMPZ (line 161) | void longObjToMPZ (mpz_t m, PyLongObject * p) function printf_buffer_as_hex (line 200) | void printf_buffer_as_hex(uint8_t * data, size_t len) function Check_Types (line 214) | int Check_Types(GroupType l_type, GroupType r_type, char op) function Element (line 241) | static Element *createNewElement(GroupType element_type, Pairing *pairin... function Element (line 268) | Element *convertToZR(PyObject *longObj, PyObject *elemObj) { function Pairing_dealloc (line 286) | void Pairing_dealloc(Pairing *self) function Element_dealloc (line 313) | void Element_dealloc(Element* self) function read_file (line 328) | ssize_t read_file(FILE *f, char** out) function hash_to_bytes (line 390) | int hash_to_bytes(uint8_t *input_buf, int input_len, uint8_t *output_buf... function hash_element_to_bytes (line 452) | int hash_element_to_bytes(element_t *element, int hash_size, uint8_t* ou... function hash2_element_to_bytes (line 474) | int hash2_element_to_bytes(element_t *element, uint8_t* last_buf, int ha... function hash2_buffer_to_bytes (line 511) | int hash2_buffer_to_bytes(uint8_t *input_str, int input_len, uint8_t *la... function PyObject (line 539) | PyObject *Element_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function PyObject (line 554) | PyObject *Pairing_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function Element_init (line 571) | int Element_init(Element *self, PyObject *args, PyObject *kwds) function Pairing_init (line 576) | int Pairing_init(Pairing *self, PyObject *args, PyObject *kwds) function PyObject (line 689) | static PyObject *Element_elem(Element* self, PyObject* args) function PyObject (line 727) | PyObject *Pairing_print(Pairing* self) function PyObject (line 739) | PyObject *Element_print(Element* self) function PyObject (line 761) | static PyObject *Element_random(Element* self, PyObject* args) function PyObject (line 808) | static PyObject *Element_add(Element *self, Element *other) function PyObject (line 833) | static PyObject *Element_sub(Element *self, Element *other) function PyObject (line 860) | static PyObject *Element_mul(PyObject *lhs, PyObject *rhs) function PyObject (line 938) | static PyObject *Element_div(PyObject *lhs, PyObject *rhs) function PyObject (line 1007) | static PyObject *Element_invert(Element *self) function PyObject (line 1023) | static PyObject *Element_negate(Element *self) function PyObject (line 1040) | static PyObject *Element_pow(PyObject *o1, PyObject *o2, PyObject *o3) function PyObject (line 1139) | static PyObject *Element_set(Element *self, PyObject *args) function PyObject (line 1175) | static PyObject *Element_initPP(Element *self, PyObject *args) function PyObject (line 1198) | PyObject *multi_pairing(Pairing *groupObj, PyObject *listG1, PyObject *l... function PyObject (line 1269) | PyObject *Apply_pairing(PyObject *self, PyObject *args) function PyObject (line 1341) | PyObject *sha2_hash(Element *self, PyObject *args) { function PyObject (line 1371) | static PyObject *Element_hash(Element *self, PyObject *args) { function PyObject (line 1519) | static PyObject *Element_equals(PyObject *lhs, PyObject *rhs, int opid) { function PyObject (line 1556) | static PyObject *Element_long(PyObject *o1) { function Element_index (line 1572) | static long Element_index(Element *o1) { function PyObject (line 1673) | static PyObject *Deserialize_cmp(PyObject *self, PyObject *args) { function print_mpz (line 1724) | void print_mpz(mpz_t x, int base) { function check_membership (line 1739) | int check_membership(Element *elementObj) { function PyObject (line 1779) | static PyObject *Group_Check(Element *self, PyObject *args) { function PyObject (line 1801) | static PyObject *Get_Order(Element *self, PyObject *args) { function PyObject (line 1818) | PyObject *PyCreateList(Operations *gBench, MeasureType type) type module_state (line 2089) | struct module_state { type module_state (line 2097) | struct module_state function pairings_traverse (line 2139) | static int pairings_traverse(PyObject *m, visitproc visit, void *arg) { function pairings_clear (line 2144) | static int pairings_clear(PyObject *m) { function pairings_free (line 2150) | static int pairings_free(PyObject *m) { type PyModuleDef (line 2155) | struct PyModuleDef type module_state (line 2159) | struct module_state function initpairing (line 2174) | void initpairing(void) { FILE: charm/core/math/pairing/pairingmodule.h type Group (line 76) | enum Group {ZR = 0, G1, G2, GT, NONE_G} type GroupType (line 77) | typedef enum Group GroupType; type Operations (line 109) | typedef struct { type Pairing (line 122) | typedef struct { type Element (line 137) | typedef struct { FILE: charm/core/math/pairing/relic/pairingmodule3.c function exp_rule (line 32) | int exp_rule(GroupType lhs, GroupType rhs) function mul_rule (line 41) | int mul_rule(GroupType lhs, GroupType rhs) function add_rule (line 48) | int add_rule(GroupType lhs, GroupType rhs) function sub_rule (line 54) | int sub_rule(GroupType lhs, GroupType rhs) function div_rule (line 60) | int div_rule(GroupType lhs, GroupType rhs) function pair_rule (line 66) | int pair_rule(GroupType lhs, GroupType rhs) function check_type (line 73) | int check_type(GroupType type) { function PyObject (line 111) | PyObject *intToLongObj(integer_t x) function longObjToInt (line 152) | int longObjToInt(integer_t m, PyLongObject * p) function printf_buffer_as_hex (line 197) | void printf_buffer_as_hex(uint8_t * data, size_t len) function printf_buffer_as_hex_debug (line 209) | void printf_buffer_as_hex_debug(uint8_t * data, size_t len) function Check_Types (line 222) | int Check_Types(GroupType l_type, GroupType r_type, char op) function Element (line 249) | static Element *createNewElement(GroupType element_type, Pairing *pairin... function Element (line 277) | Element *convertToZR(PyObject *longObj, PyObject *elemObj) { function Pairing_dealloc (line 289) | void Pairing_dealloc(Pairing *self) function Element_dealloc (line 309) | void Element_dealloc(Element* self) function read_file (line 329) | ssize_t read_file(FILE *f, char** out) function hash2_element_to_bytes (line 352) | int hash2_element_to_bytes(element_t *e, uint8_t* last_buf, int hash_siz... function hash2_buffer_to_bytes (line 379) | int hash2_buffer_to_bytes(uint8_t *input_str, int input_len, uint8_t *la... function PyObject (line 407) | PyObject *Element_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function PyObject (line 422) | PyObject *Pairing_new(PyTypeObject *type, PyObject *args, PyObject *kwds) function Element_init (line 437) | int Element_init(Element *self, PyObject *args, PyObject *kwds) function Pairing_init (line 443) | int Pairing_init(Pairing *self, PyObject *args, PyObject *kwds) function PyObject (line 468) | static PyObject *Element_elem(Element* self, PyObject* args) function PyObject (line 500) | PyObject *Pairing_print(Pairing* self) function PyObject (line 505) | PyObject *Element_print(Element* self) function PyObject (line 528) | static PyObject *Element_random(Element* self, PyObject* args) function PyObject (line 572) | static PyObject *Element_add(Element *self, Element *other) function PyObject (line 599) | static PyObject *Element_sub(Element *self, Element *other) function PyObject (line 628) | static PyObject *Element_mul(PyObject *lhs, PyObject *rhs) function PyObject (line 700) | static PyObject *Element_div(PyObject *lhs, PyObject *rhs) function PyObject (line 781) | static PyObject *Element_invert(Element *self) function PyObject (line 799) | static PyObject *Element_negate(Element *self) function PyObject (line 818) | static PyObject *Element_pow(PyObject *o1, PyObject *o2, PyObject *o3) function PyObject (line 908) | static PyObject *Element_set(Element *self, PyObject *args) function PyObject (line 936) | static PyObject *Element_initPP(Element *self, PyObject *args) function PyObject (line 1025) | PyObject *Apply_pairing(Element *self, PyObject *args) function PyObject (line 1069) | PyObject *sha2_hash(Element *self, PyObject *args) { function PyObject (line 1100) | static PyObject *Element_hash(Element *self, PyObject *args) { function PyObject (line 1249) | static PyObject *Element_equals(PyObject *lhs, PyObject *rhs, int opid) { function PyObject (line 1288) | static PyObject *Element_long(PyObject *o1) { function Element_index (line 1304) | static long Element_index(Element *o1) { function PyObject (line 1324) | static PyObject *Serialize_cmp(Element *o1, PyObject *args) { function PyObject (line 1355) | static PyObject *Deserialize_cmp(Element *self, PyObject *args) { function PyObject (line 1387) | static PyObject *Group_Check(Element *self, PyObject *args) { function PyObject (line 1414) | static PyObject *Get_Order(Element *self, PyObject *args) { function PyObject (line 1435) | PyObject *PyCreateList(Operations *gBench, MeasureType type) type module_state (line 1708) | struct module_state { type module_state (line 1716) | struct module_state function pairings_traverse (line 1756) | static int pairings_traverse(PyObject *m, visitproc visit, void *arg) { function pairings_clear (line 1761) | static int pairings_clear(PyObject *m) { function pairings_free (line 1767) | static int pairings_free(PyObject *m) { type PyModuleDef (line 1771) | struct PyModuleDef type module_state (line 1775) | struct module_state function initpairing (line 1790) | void initpairing(void) { FILE: charm/core/math/pairing/relic/pairingmodule3.h type Operations (line 95) | typedef struct { type Pairing (line 109) | typedef struct { type Element (line 120) | typedef struct { FILE: charm/core/math/pairing/relic/relic_interface.c function print_as_hex (line 33) | void print_as_hex(uint8_t *data, size_t len) function fp_write_bin (line 48) | void fp_write_bin(unsigned char *str, int len, fp_t a) { function fp_read_bin (line 67) | void fp_read_bin(fp_t a, const unsigned char *str, int len) { function bn_is_one (line 94) | int bn_is_one(bn_t a) function status_t (line 101) | status_t pairing_init(void) function status_t (line 111) | status_t pairing_clear(void) function status_t (line 120) | status_t element_init_Zr(element_t e, int init_value) function status_t (line 136) | status_t element_init_G1(element_t e) function status_t (line 148) | status_t element_init_G2(element_t e) function status_t (line 159) | status_t element_init_GT(element_t e) function status_t (line 170) | status_t element_pp_init(element_pp_t e_pp, element_t e) function status_t (line 195) | status_t element_pp_clear(element_pp_t e_pp, GroupType type) function status_t (line 214) | status_t element_pp_pow(element_t o, element_pp_t e_pp, GroupType type, ... function status_t (line 232) | status_t element_pp_pow_int(element_t o, element_pp_t e_pp, GroupType ty... function status_t (line 251) | status_t element_random(element_t e) function status_t (line 281) | status_t element_printf(const char *msg, element_t e) function status_t (line 300) | status_t element_to_str(char *data, int len, element_t e) function status_t (line 343) | status_t element_clear(element_t e) function status_t (line 373) | status_t element_add(element_t c, element_t a, element_t b) function status_t (line 401) | status_t element_sub(element_t c, element_t a, element_t b) function status_t (line 429) | status_t element_mul(element_t c, element_t a, element_t b) function status_t (line 462) | status_t element_mul_zr(element_t c, element_t a, element_t b) function status_t (line 486) | status_t element_mul_int(element_t c, element_t a, integer_t b) function status_t (line 515) | status_t element_div(element_t c, element_t a, element_t b) function status_t (line 563) | status_t element_div_int(element_t c, element_t a, integer_t b) function status_t (line 609) | status_t element_int_div(element_t c, integer_t a, element_t b) function status_t (line 640) | status_t element_neg(element_t c, element_t a) function status_t (line 664) | status_t element_invert(element_t c, element_t a) function status_t (line 692) | status_t element_pow_zr(element_t c, element_t a, element_t b) function status_t (line 723) | status_t element_pow_int(element_t c, element_t a, integer_t b) function element_cmp (line 753) | int element_cmp(element_t a, element_t b) function status_t (line 771) | status_t element_set(element_t e, element_t a) function status_t (line 796) | status_t element_set_int(element_t e, integer_t x) function status_t (line 808) | status_t element_to_int(integer_t x, element_t e) function status_t (line 825) | status_t element_set_si(element_t e, unsigned int x) function status_t (line 835) | status_t element_from_hash(element_t e, unsigned char *data, int len) function element_length (line 867) | int element_length(element_t e) function status_t (line 882) | status_t charm_g1_read_bin(g1_t g, uint8_t *data, int data_len) function status_t (line 893) | status_t charm_g1_write_bin(g1_t g, uint8_t *data, int data_len) function status_t (line 917) | status_t charm_g1_write_str(g1_t g, uint8_t *data, int data_len) function status_t (line 932) | status_t charm_g2_read_bin(g2_t g, uint8_t *data, int data_len) function status_t (line 953) | status_t charm_g2_write_bin(g2_t g, uint8_t *data, int data_len) function status_t (line 985) | status_t charm_g2_write_str(g2_t g, uint8_t *data, int data_len) function status_t (line 1005) | status_t charm_gt_read_bin(gt_t g, uint8_t *data, int data_len) function status_t (line 1043) | status_t charm_gt_write_bin(gt_t g, uint8_t *data, int data_len) function status_t (line 1093) | status_t charm_gt_write_str(gt_t g, uint8_t *data, int data_len) function status_t (line 1129) | status_t element_from_bytes(element_t e, unsigned char *data, int data_len) function status_t (line 1152) | status_t element_to_bytes(unsigned char *data, int data_len, element_t e) function status_t (line 1175) | status_t element_to_key(element_t e, uint8_t *data, int data_len, uint8_... function status_t (line 1214) | status_t hash_buffer_to_bytes(uint8_t *input_buf, int input_len, uint8_t... function status_t (line 1266) | status_t pairing_apply(element_t et, element_t e1, element_t e2) function element_is_member (line 1279) | int element_is_member(element_t e) function get_order (line 1330) | int get_order(integer_t x) FILE: charm/core/math/pairing/relic/relic_interface.h type status_t (line 45) | typedef enum _status_t { ELEMENT_OK = 2, type Group (line 56) | enum Group {ZR, G1, G2, GT, NONE_G} type GroupType (line 57) | typedef enum Group GroupType; type element (line 77) | struct element { type object (line 87) | struct object { type element (line 93) | struct element type element (line 94) | struct element type object (line 95) | struct object type bn_t (line 96) | typedef bn_t integer_t; FILE: charm/core/math/pairing/relic/test_relic.c function main (line 42) | int main(int argc, char *argv[]) FILE: charm/schemes/abenc/abenc_accountability_jyjxgd20.py class Attribute (line 29) | class Attribute: method __init__ (line 30) | def __init__(self, attr_name, values_list: List[str] = []): method __validate_attribute_values_name (line 40) | def __validate_attribute_values_name(attr_value_name: str): method add_value (line 43) | def add_value(self, value: str): method set_values (line 47) | def set_values(self, values_list: List[str]): method get_attribute_values_full_name (line 50) | def get_attribute_values_full_name(self): method get_full_attribute_value_name (line 61) | def get_full_attribute_value_name(attr_name: str, value_name: str): class CP_Hiding_ABE (line 67) | class CP_Hiding_ABE(ABEnc): method __init__ (line 71) | def __init__(self, group_obj): method setup (line 76) | def setup(self, attributes_dict: Dict[str, List[str]]): method key_gen (line 104) | def key_gen(self, MSK, PK, attributes_list): method _validate_attributes_list (line 139) | def _validate_attributes_list(self, attributes_list): method encrypt (line 149) | def encrypt(self, m, PK, access_policy: Dict[str, List[str]]): method decrypt (line 200) | def decrypt(self, CT, PK, SK): class CP_Hiding_Accountability_ABE (line 230) | class CP_Hiding_Accountability_ABE(CP_Hiding_ABE): method __init__ (line 234) | def __init__(self, group_obj): method setup (line 239) | def setup(self, attributes_dict: Dict[str, List[str]]): method key_gen (line 279) | def key_gen(self, MSK, PK, ID, attributes_list): method key_gen_TA (line 316) | def key_gen_TA(self, MSK, PK, ID, R, attributes_list): method encrypt (line 366) | def encrypt(self, m, PK, access_policy: Dict[str, List[str]]): method decrypt (line 423) | def decrypt(self, CT, PK, SK): method trace (line 453) | def trace(self, SK_suspected, authentic_user_IDs_list, PK): method _is_SK_well_formed (line 481) | def _is_SK_well_formed(self, SK): class ShnorrInteractiveZKP (line 490) | class ShnorrInteractiveZKP(): class Prover (line 494) | class Prover: method __init__ (line 495) | def __init__(self, secret_x, groupObj): method create_prover_commitments (line 500) | def create_prover_commitments(self, pk): method create_proof (line 508) | def create_proof(self, c): class Verifier (line 515) | class Verifier: method __init__ (line 517) | def __init__(self, groupObj): method create_verifier_challenge (line 520) | def create_verifier_challenge(self): method is_proof_verified (line 527) | def is_proof_verified(self, z, pk, u, h): function main (line 539) | def main(): function CP_policy_hiding_ABE_test (line 544) | def CP_policy_hiding_ABE_test(): function CP_policy_hiding_with_accountability_test (line 588) | def CP_policy_hiding_with_accountability_test(): FILE: charm/schemes/abenc/abenc_bsw07.py class CPabe_BSW07 (line 33) | class CPabe_BSW07(ABEnc): method __init__ (line 49) | def __init__(self, groupObj): method setup (line 56) | def setup(self): method keygen (line 71) | def keygen(self, pk, mk, S): method encrypt (line 84) | def encrypt(self, pk, M, policy_str): method decrypt (line 102) | def decrypt(self, pk, sk, ct): function main (line 116) | def main(): FILE: charm/schemes/abenc/abenc_ca_cpabe_ar17.py class TreeNode (line 35) | class TreeNode: method __init__ (line 36) | def __init__(self, sequence_number, value, parent=None): method __str__ (line 43) | def __str__(self): method __repr__ (line 46) | def __repr__(self): class UsersBinaryTree (line 50) | class UsersBinaryTree: method __init__ (line 55) | def __init__(self, group_obj): method create_node (line 63) | def create_node(self) -> TreeNode: method add_node_to_tree (line 67) | def add_node_to_tree(self, tree_node: TreeNode): method print_tree (line 85) | def print_tree(self): method __print_tree_rec (line 90) | def __print_tree_rec(self, node: TreeNode): class AM (line 98) | class AM: method __init__ (line 100) | def __init__(self, group_obj): method add_attr_to_user (line 106) | def add_attr_to_user(self, attr_str: str, user_name: str): method __create_node_in_binary_tree_for_new_user (line 119) | def __create_node_in_binary_tree_for_new_user(self): method remove_attr_from_user (line 126) | def remove_attr_from_user(self, attr_str: str, user_name: str): method get_user_assignation_to_leafs_dict (line 133) | def get_user_assignation_to_leafs_dict(self) -> Dict[str, TreeNode]: method get_minimum_nodes_list_that_represent_users_list (line 145) | def get_minimum_nodes_list_that_represent_users_list(self, user_names_... method __traverse_to_mark_all_children_visited_arr (line 162) | def __traverse_to_mark_all_children_visited_arr(self, node: TreeNode, ... method __traverse_bfs_to_get_minimum_number_nodes_to_cover_users_list (line 174) | def __traverse_bfs_to_get_minimum_number_nodes_to_cover_users_list(sel... method get_user_path (line 191) | def get_user_path(self, user_name) -> List[TreeNode]: method get_user_path_intersection_with_node_gi (line 206) | def get_user_path_intersection_with_node_gi(user_path: List[TreeNode],... class CaCpabeAr (line 215) | class CaCpabeAr(ABEnc): method __init__ (line 216) | def __init__(self, group_obj): method system_setup (line 221) | def system_setup(self) -> (mk_t, pp_t): method manager_setup (line 239) | def manager_setup(self, attribute_names: List[str], PP: pp_t): method key_generation (line 260) | def key_generation(self, PP, MK, MPK, user_attribute_names_list: List[... method user_attributes_key_gen (line 291) | def user_attributes_key_gen(self, MK, MPK, PP, user_attribute_names_li... method user_attributes_kek_generation (line 327) | def user_attributes_kek_generation(self, TA_KEK, attributes_manager, u... method generate_kek_for_user_with_attr (line 345) | def generate_kek_for_user_with_attr(self, TA_KEK, attr, attributes_man... method encrypt (line 374) | def encrypt(self, PP, MMK, M, A: str, attributes_manager: AM): method reencryption (line 392) | def reencryption(self, CT, MMK, PP, attributes_manager): method __get_attr_name_without_idx (line 421) | def __get_attr_name_without_idx(self, attr_name: str): method local_encryption (line 427) | def local_encryption(self, A, M, PP): method decrypt (line 453) | def decrypt(self, PP, CT_tilde, Hdr, DSK, KEK, user_name: str, attribu... method revoke_attribute (line 496) | def revoke_attribute(self, revoked_user_name, attribute_name, attribut... method add_attribute (line 535) | def add_attribute(self, user_name, attribute_name, attributes_manager:... function main (line 575) | def main(): FILE: charm/schemes/abenc/abenc_dacmacs_yj14.py class DACMACS (line 27) | class DACMACS(object): method __init__ (line 28) | def __init__(self, groupObj): method setup (line 32) | def setup(self): method registerUser (line 50) | def registerUser(self, GPP): method setupAuthority (line 60) | def setupAuthority(self, GPP, authorityid, attributes, authorities): method keygen (line 88) | def keygen(self, GPP, authority, attribute, userObj, USK = None): method encrypt (line 111) | def encrypt(self, GPP, policy_str, k, authority): method generateTK (line 142) | def generateTK(self, GPP, CT, UASK, g_u): method decrypt (line 165) | def decrypt(self, CT, TK, z): method ukeygen (line 169) | def ukeygen(self, GPP, authority, attribute, userObj): method skupdate (line 188) | def skupdate(self, USK, attribute, KUK): method ctupdate (line 192) | def ctupdate(self, GPP, CT, attribute, CUK): function basicTest (line 196) | def basicTest(): function revokedTest (line 232) | def revokedTest(): function test (line 286) | def test(): FILE: charm/schemes/abenc/abenc_lsw08.py class KPabe (line 28) | class KPabe(ABEnc): method __init__ (line 44) | def __init__(self, groupObj, verbose=False): method setup (line 50) | def setup(self): method keygen (line 67) | def keygen(self, pk, mk, policy_str): method negatedAttr (line 90) | def negatedAttr(self, attribute): method encrypt (line 98) | def encrypt(self, pk, M, attr_list): method decrypt (line 119) | def decrypt(self, E, D): function main (line 136) | def main(): FILE: charm/schemes/abenc/abenc_maabe_rw15.py function merge_dicts (line 31) | def merge_dicts(*dict_args): class MaabeRW15 (line 42) | class MaabeRW15(ABEncMultiAuth): method __init__ (line 79) | def __init__(self, group, verbose=False): method setup (line 84) | def setup(self): method unpack_attribute (line 96) | def unpack_attribute(self, attribute): method authsetup (line 113) | def authsetup(self, gp, name): method keygen (line 131) | def keygen(self, gp, sk, gid, attribute): method multiple_attributes_keygen (line 152) | def multiple_attributes_keygen(self, gp, sk, gid, attributes): method encrypt (line 166) | def encrypt(self, gp, pks, message, policy_str): method decrypt (line 200) | def decrypt(self, gp, sk, ct): FILE: charm/schemes/abenc/abenc_maabe_yj14.py class MAABE (line 27) | class MAABE(object): method __init__ (line 28) | def __init__(self, groupObj): method setup (line 32) | def setup(self): method registerUser (line 52) | def registerUser(self, GPP): method setupAuthority (line 62) | def setupAuthority(self, GPP, authorityid, attributes, authorities): method keygen (line 91) | def keygen(self, GPP, authority, attribute, userObj, USK = None): method encrypt (line 113) | def encrypt(self, GPP, policy_str, k, authority): method decrypt (line 146) | def decrypt(self, GPP, CT, user): method ukeygen (line 174) | def ukeygen(self, GPP, authority, attribute, userObj): method skupdate (line 192) | def skupdate(self, USK, attribute, UKs): method ctupdate (line 196) | def ctupdate(self, GPP, CT, attribute, UKc): function basicTest (line 201) | def basicTest(): function revokedTest (line 235) | def revokedTest(): function test (line 285) | def test(): FILE: charm/schemes/abenc/abenc_tbpre_lww14.py function gcd (line 29) | def gcd(*numbers): function lcm (line 39) | def lcm(numbers): class TBPRE (line 45) | class TBPRE(object): method __init__ (line 46) | def __init__(self, groupObj): method setup (line 52) | def setup(self, attributes): method registerUser (line 85) | def registerUser(self, PK, H): method hashDate (line 94) | def hashDate(self, H, time, s): method timeSuffices (line 113) | def timeSuffices(self, timeRange, needle): method policyTerm (line 129) | def policyTerm(self, user, policy): method keygen (line 141) | def keygen(self, MK, PK, H, s, user, pubuser, attribute, time): method encrypt (line 159) | def encrypt(self, PK, policy, F): method decrypt (line 174) | def decrypt(self, CT, user, term = None): method reencrypt (line 198) | def reencrypt(self, PK, H, s, CT, currentTime): function basicTest (line 234) | def basicTest(): function basicTest2 (line 272) | def basicTest2(): function test (line 302) | def test(): FILE: charm/schemes/abenc/abenc_unmcpabe_yahk14.py class CPABE_YAHK14 (line 29) | class CPABE_YAHK14(ABEnc): method __init__ (line 45) | def __init__(self, groupObj, verbose = False): method exp (line 52) | def exp(self,value): method setup (line 55) | def setup(self): method keygen (line 65) | def keygen(self, pp, mk, S): method encrypt (line 94) | def encrypt(self, pp, message, policy_str): method decrypt (line 123) | def decrypt(self, pp, sk, ct): method randomMessage (line 161) | def randomMessage(self): function main (line 164) | def main(): FILE: charm/schemes/abenc/abenc_waters09.py class CPabe09 (line 27) | class CPabe09(ABEnc): method __init__ (line 43) | def __init__(self, groupObj): method setup (line 49) | def setup(self): method keygen (line 57) | def keygen(self, pk, msk, attributes): method encrypt (line 70) | def encrypt(self, pk, M, policy_str): method decrypt (line 92) | def decrypt(self, pk, sk, ct): function main (line 116) | def main(): FILE: charm/schemes/abenc/abenc_yct14.py class EKPabe (line 32) | class EKPabe(ABEnc): method __init__ (line 48) | def __init__(self, groupObj, verbose=False): method setup (line 54) | def setup(self, attributes): method keygen (line 66) | def keygen(self, pk, mk, policy_str): method encrypt (line 83) | def encrypt(self, pk, M, attr_list): method decrypt (line 97) | def decrypt(self, C, D): function main (line 116) | def main(): function benchmark (line 141) | def benchmark(): FILE: charm/schemes/abenc/abenc_yllc15.py class YLLC15 (line 44) | class YLLC15(ABEnc): method __init__ (line 48) | def __init__(self, group): method setup (line 54) | def setup(self): method ukgen (line 70) | def ukgen(self, params): method proxy_keygen (line 79) | def proxy_keygen(self, params, msk, pkcs, pku, attribute_list): method encrypt (line 103) | def encrypt(self, params, msg, policy_str): method proxy_decrypt (line 134) | def proxy_decrypt(self, skcs, proxy_key_user, ciphertext): method decrypt (line 167) | def decrypt(self, params, sku, intermediate_value): FILE: charm/schemes/abenc/ac17.py class AC17CPABE (line 30) | class AC17CPABE(ABEnc): method __init__ (line 31) | def __init__(self, group_obj, assump_size, verbose=False): method setup (line 37) | def setup(self): method keygen (line 87) | def keygen(self, pk, msk, attr_list): method encrypt (line 150) | def encrypt(self, pk, msg, policy_str): method decrypt (line 220) | def decrypt(self, pk, ctxt, key): FILE: charm/schemes/abenc/bsw07.py class BSW07 (line 30) | class BSW07(ABEnc): method __init__ (line 32) | def __init__(self, group_obj, verbose=False): method setup (line 37) | def setup(self): method keygen (line 61) | def keygen(self, pk, msk, attr_list): method encrypt (line 83) | def encrypt(self, pk, msg, policy_str): method decrypt (line 119) | def decrypt(self, pk, ctxt, key): FILE: charm/schemes/abenc/cgw15.py class CGW15CPABE (line 30) | class CGW15CPABE(ABEnc): method __init__ (line 31) | def __init__(self, groupObj, assump_size, uni_size, verbose=False): method setup (line 38) | def setup(self): method keygen (line 126) | def keygen(self, pk, msk, attr_list): method encrypt (line 177) | def encrypt(self, pk, msg, policy_str): method decrypt (line 249) | def decrypt(self, pk, ctxt, key): FILE: charm/schemes/abenc/dabe_aw11.py class Dabe (line 28) | class Dabe(ABEncMultiAuth): method __init__ (line 49) | def __init__(self, groupObj): method setup (line 56) | def setup(self): method authsetup (line 71) | def authsetup(self, GP, attributes): method keygen (line 95) | def keygen(self, gp, sk, i, gid, pkey): method encrypt (line 114) | def encrypt(self, gp, pk, M, policy_str): method decrypt (line 144) | def decrypt(self, gp, sk, ct): function main (line 169) | def main(): FILE: charm/schemes/abenc/dfa_fe12.py class FE_DFA (line 26) | class FE_DFA: method __init__ (line 27) | def __init__(self, _groupObj, _dfaObj): method setup (line 32) | def setup(self, alphabet): method keygen (line 43) | def keygen(self, mpk, msk, dfaM): method encrypt (line 72) | def encrypt(self, mpk, w, M): method decrypt (line 92) | def decrypt(self, sk, ct): function main (line 114) | def main(): FILE: charm/schemes/abenc/pk_hve08.py class HVE08 (line 25) | class HVE08: method __init__ (line 26) | def __init__(self, groupObj): method setup (line 30) | def setup(self, n): method keygen (line 54) | def keygen(self, pk, msk, yVector): method encrypt (line 105) | def encrypt(self, M, xVector, pk): method decrypt (line 139) | def decrypt(self, CT, sk): function main (line 160) | def main(): FILE: charm/schemes/abenc/waters11.py class Waters11 (line 30) | class Waters11(ABEnc): method __init__ (line 32) | def __init__(self, group_obj, uni_size, verbose=False): method setup (line 38) | def setup(self): method keygen (line 64) | def keygen(self, pk, msk, attr_list): method encrypt (line 82) | def encrypt(self, pk, msg, policy_str): method decrypt (line 121) | def decrypt(self, pk, ctxt, key): FILE: charm/schemes/aggrsign_MuSig.py class MuSig (line 33) | class MuSig: method __init__ (line 34) | def __init__(self, groupObj): method keygen (line 38) | def keygen(self, g, secparam=None): method sign (line 45) | def sign(self, nonce, sk, pk, challenge, all_pub_keys): method verify (line 50) | def verify(self, pub_keys, sig, message): method aggregate_sigs (line 58) | def aggregate_sigs(signatures): method new_nonce (line 62) | def new_nonce(): method aggregate_nonce (line 66) | def aggregate_nonce(g, nonces): method hash_pub_keys (line 70) | def hash_pub_keys(pub_keys): method aggregated_pub_key (line 77) | def aggregated_pub_key(pub_keys): method compute_challenge (line 87) | def compute_challenge(aggregated_pub_key, aggregate_nonce, message): method product (line 93) | def product(seq): method dump (line 97) | def dump(obj): function main (line 101) | def main(): FILE: charm/schemes/aggrsign_bls.py class BLSAggregation (line 30) | class BLSAggregation: method __init__ (line 31) | def __init__(self, groupObj): method keygen (line 35) | def keygen(self, g, secparam=None): method sign (line 42) | def sign(self, x, message): method verify (line 48) | def verify(self, pk, sig, message): method aggregate_sigs_vulnerable (line 53) | def aggregate_sigs_vulnerable(self, signatures): method verify_aggregate_sig_vulnerable (line 59) | def verify_aggregate_sig_vulnerable(self, message, aggregate_sig, publ... method aggregate_sigs_safe (line 67) | def aggregate_sigs_safe(self, pubkey_signatures): method verify_aggregate_sig_safe (line 77) | def verify_aggregate_sig_safe(self, message, aggregate_sig, public_keys): method product (line 86) | def product(seq): method dump (line 90) | def dump(obj): method check_and_return_same_generator_in_public_keys (line 94) | def check_and_return_same_generator_in_public_keys(public_keys): method hash_keys (line 100) | def hash_keys(pk, all_pks): method aggregate_pub_key (line 107) | def aggregate_pub_key(pks): function vulnerable (line 115) | def vulnerable(): function demo_rogue_public_key_attack (line 159) | def demo_rogue_public_key_attack(): function safe (line 188) | def safe(): function defend_rogue_public_key_attack (line 233) | def defend_rogue_public_key_attack(): FILE: charm/schemes/blindsig_ps16.py function dump_to_zp_element (line 29) | def dump_to_zp_element(obj, group_obj): class ShnorrInteractiveZKP (line 34) | class ShnorrInteractiveZKP(): class Prover (line 35) | class Prover: method __init__ (line 36) | def __init__(self, secret_t, secret_messages, groupObj): method create_prover_commitments (line 43) | def create_prover_commitments(self, pk): method create_proof (line 57) | def create_proof(self, c): class Verifier (line 65) | class Verifier: method __init__ (line 67) | def __init__(self, groupObj): method create_verifier_challenge (line 70) | def create_verifier_challenge(self): method is_proof_verified (line 77) | def is_proof_verified(self, s_t, s_ms, pk, blinded_message, commitme... class PS_Sig (line 91) | class PS_Sig(PKSig): method __init__ (line 93) | def __init__(self, groupObj): method _dump_to_zp_element (line 97) | def _dump_to_zp_element(self, obj): method keygen (line 101) | def keygen(self): method sign (line 107) | def sign(self, sk, message): method verify (line 118) | def verify(self, message, pk, sig) -> bool: class PS_BlindSig (line 133) | class PS_BlindSig(PS_Sig): method __init__ (line 135) | def __init__(self, groupObj): method keygen (line 138) | def keygen(self): method blind (line 144) | def blind(self, message): method sign (line 154) | def sign(self, sk, blinded_message): method unblind (line 165) | def unblind(self, blinded_sig, t): method proof_of_knowledge_of_commitment_secrets (line 176) | def proof_of_knowledge_of_commitment_secrets(self, t, messages, blinde... method verify (line 197) | def verify(self, message, pk, sig) -> bool: class PS_BlindSingleMessageSig (line 212) | class PS_BlindSingleMessageSig(PS_BlindSig): method __init__ (line 214) | def __init__(self, groupObj): method keygen (line 217) | def keygen(self): method blind (line 239) | def blind(self, message, pk): method sign (line 255) | def sign(self, sk, pk, blinded_message): method unblind (line 273) | def unblind(self, blinded_sig, t): method verify (line 289) | def verify(self, message, pk, sig) -> bool: class PS_BlindMultiMessageSig (line 308) | class PS_BlindMultiMessageSig(PS_BlindSig): method __init__ (line 310) | def __init__(self, groupObj): method keygen (line 313) | def keygen(self, num_messages): method blind (line 335) | def blind(self, messages, pk): method sign (line 354) | def sign(self, sk, pk, blinded_message): method unblind (line 372) | def unblind(self, blinded_sig, t): method verify (line 388) | def verify(self, messages, pk, sig) -> bool: class PS_SigSingleMessage (line 410) | class PS_SigSingleMessage(PS_Sig): method __init__ (line 412) | def __init__(self, groupObj): method keygen (line 415) | def keygen(self): method sign (line 430) | def sign(self, sk, message): method verify (line 445) | def verify(self, message, pk, sig) -> bool: class PS_SigMultiMessage (line 464) | class PS_SigMultiMessage(PS_Sig): method __init__ (line 466) | def __init__(self, groupObj): method keygen (line 469) | def keygen(self, num_messages): method sign (line 486) | def sign(self, sk, messages): method verify (line 504) | def verify(self, messages, pk, sig) -> bool: function single_message_main (line 526) | def single_message_main(debug=False): function multi_message_main (line 548) | def multi_message_main(debug=False): function blinded_single_message_main (line 570) | def blinded_single_message_main(debug=False): function blinded_multi_message_main (line 608) | def blinded_multi_message_main(debug=False): FILE: charm/schemes/chamhash_adm05.py class ChamHash_Adm05 (line 27) | class ChamHash_Adm05(ChamHash): method __init__ (line 40) | def __init__(self, p=0, q=0): method paramgen (line 46) | def paramgen(self, secparam=1024): method hash (line 60) | def hash(self, pk, m, r=0, s=0): method find_collision (line 71) | def find_collision(self, pk, sk, C, new_message): function main (line 81) | def main(): FILE: charm/schemes/chamhash_rsa_hw09.py class ChamHash_HW09 (line 28) | class ChamHash_HW09(ChamHash): method __init__ (line 41) | def __init__(self): method paramgen (line 45) | def paramgen(self, secparam, p = 0, q = 0): method hash (line 93) | def hash(self, pk, message, r = 0): FILE: charm/schemes/commit/commit_gs08.py class Commitment_GS08 (line 27) | class Commitment_GS08(Commitment): method __init__ (line 37) | def __init__(self, groupObj, setting='SXDH'): method setup (line 46) | def setup(self, secparam=None, groupChoice=G1, commitType='binding'): method commit (line 56) | def commit(self, params, msg): method decommit (line 66) | def decommit(self, params, c, d, msg): FILE: charm/schemes/commit/commit_pedersen92.py class CM_Ped92 (line 27) | class CM_Ped92(Commitment): method __init__ (line 37) | def __init__(self, groupObj): method setup (line 42) | def setup(self, secparam=None): method commit (line 45) | def commit(self, pk, msg): method decommit (line 51) | def decommit(self, pk, c, d, msg): FILE: charm/schemes/encap_bchk05.py class EncapBCHK (line 26) | class EncapBCHK(): method __init__ (line 35) | def __init__(self): method setup (line 39) | def setup(self): method S (line 43) | def S(self, pub): method R (line 55) | def R(self, pub, com, dec): FILE: charm/schemes/grpsig/groupsig_bgls04.py class ShortSig (line 26) | class ShortSig(PKSig): method __init__ (line 38) | def __init__(self, groupObj): method keygen (line 43) | def keygen(self, n): method sign (line 63) | def sign(self, gpk, gsk, M): method verify (line 86) | def verify(self, gpk, M, sigma): method open (line 109) | def open(self, gpk, gmsk, M, sigma): FILE: charm/schemes/grpsig/groupsig_bgls04_var.py class ShortSig (line 26) | class ShortSig(PKSig): method __init__ (line 38) | def __init__(self, groupObj): method keygen (line 43) | def keygen(self, n): method sign (line 63) | def sign(self, gpk, gsk, M): method verify (line 86) | def verify(self, gpk, M, sigma): method open (line 110) | def open(self, gpk, gmsk, M, sigma): FILE: charm/schemes/hibenc/hibenc_bb04.py class HIBE_BB04 (line 27) | class HIBE_BB04: method __init__ (line 42) | def __init__(self, groupObj): method setup (line 47) | def setup(self, l=5, z=32): method extract (line 67) | def extract(self, level, mpk, mk, ID): method derive (line 77) | def derive(self, mpk, pk): method encrypt (line 88) | def encrypt(self, mpk, pk, M): method decrypt (line 99) | def decrypt(self, pk, sk, ct): FILE: charm/schemes/hibenc/hibenc_lew11.py class HIBE_LW11 (line 29) | class HIBE_LW11: method __init__ (line 55) | def __init__(self, groupObj): method setup (line 61) | def setup(self): method keyGen (line 96) | def keyGen(self, I, MSK, PP): method delegate (line 129) | def delegate (self, PP, SK, I): method encrypt (line 164) | def encrypt(self, M, I, PP): method decrypt (line 187) | def decrypt(self, CT, SK): FILE: charm/schemes/ibenc/clpkc_rp03.py class CLPKC_RP03 (line 28) | class CLPKC_RP03(): method __init__ (line 30) | def __init__(self, groupObj): method setup (line 36) | def setup(self, secparam=None): method partial_private_key_extract (line 44) | def partial_private_key_extract(self, master_key, ID): method set_private_key (line 53) | def set_private_key(self, DA, xA): method set_public_key (line 59) | def set_public_key(self, params, xA): method encrypt (line 65) | def encrypt(self, params, M, ID, P): # check length to make sure it is... method decrypt (line 79) | def decrypt(self, params, SA, C): method encodeToZn (line 93) | def encodeToZn(self, message): method decodeFromZn (line 97) | def decodeFromZn(self, element): function main (line 104) | def main(): FILE: charm/schemes/ibenc/ibenc_CW13_z.py class IBE_CW13 (line 29) | class IBE_CW13(IBEnc): method __init__ (line 42) | def __init__(self, groupObj): method setup (line 48) | def setup(self): method extract (line 109) | def extract(self, mpk, msk, ID): method encrypt (line 125) | def encrypt(self, mpk, ID, M): method decrypt (line 142) | def decrypt(self, mpk, sk_id, ct_id): method vpair (line 150) | def vpair(self, g1v, g2v): function main (line 153) | def main(): FILE: charm/schemes/ibenc/ibenc_bb03.py class IBE_BB04 (line 28) | class IBE_BB04(IBEnc): method __init__ (line 41) | def __init__(self, groupObj): method setup (line 48) | def setup(self, secparam=None): method extract (line 61) | def extract(self, mk, ID): method encrypt (line 68) | def encrypt(self, params, ID, M): method keyenc (line 76) | def keyenc(self, params, ID, msg): method decrypt (line 85) | def decrypt(self, pk, dID, CT): method keydec (line 90) | def keydec(self, pk, dID, CT): FILE: charm/schemes/ibenc/ibenc_bf01.py class IBE_BonehFranklin (line 28) | class IBE_BonehFranklin(IBEnc): method __init__ (line 41) | def __init__(self, groupObj): method setup (line 47) | def setup(self): method extract (line 60) | def extract(self, sk, ID): method encrypt (line 69) | def encrypt(self, pk, ID, M): # check length to make sure it is within... method decrypt (line 92) | def decrypt(self, pk, sk, ct): method encodeToZn (line 111) | def encodeToZn(self, message): method decodeFromZn (line 115) | def decodeFromZn(self, element): FILE: charm/schemes/ibenc/ibenc_ckrs09.py class IBE_CKRS (line 31) | class IBE_CKRS(IBEnc): method __init__ (line 45) | def __init__(self, groupObj): method setup (line 49) | def setup(self, n=5, l=32): method extract (line 68) | def extract(self, mpk, msk, ID): method encrypt (line 81) | def encrypt(self, mpk, ID, msg): method decrypt (line 94) | def decrypt(self, mpk, sk, ct): function main (line 100) | def main(): FILE: charm/schemes/ibenc/ibenc_cllww12_z.py class IBE_Chen12_z (line 31) | class IBE_Chen12_z(IBEnc): method __init__ (line 44) | def __init__(self, groupObj): method setup (line 49) | def setup(self): method extract (line 115) | def extract(self, msk, ID): method encrypt (line 132) | def encrypt(self, pk, ID, M): method decrypt (line 149) | def decrypt(self, pk, sk, ct): function main (line 157) | def main(): FILE: charm/schemes/ibenc/ibenc_lsw08.py class IBE_Revoke (line 26) | class IBE_Revoke(IBEnc): method __init__ (line 43) | def __init__(self, groupObj): method setup (line 48) | def setup(self, n): method keygen (line 62) | def keygen(self, mpk, msk, ID): method encrypt (line 79) | def encrypt(self, mpk, M, S): method decrypt (line 106) | def decrypt(self, S, ct, sk): FILE: charm/schemes/ibenc/ibenc_sw05.py class IBE_SW05 (line 28) | class IBE_SW05(IBEnc): method __init__ (line 45) | def __init__(self, groupObj): method setup (line 52) | def setup(self, n, d): method intersection_subset (line 70) | def intersection_subset(self, w, wPrime, d): method extract (line 83) | def extract(self, mk, ID, pk, dOver, n): method encrypt (line 102) | def encrypt(self, pk, w_prime, M, n): method decrypt (line 117) | def decrypt(self, pk, sk, CT, w, d): class IBE_SW05_LUC (line 143) | class IBE_SW05_LUC(IBEnc): method __init__ (line 144) | def __init__(self, groupObj): method setup (line 151) | def setup(self, n, d): method eval_T (line 169) | def eval_T(self, pk, n, x): method intersection_subset (line 182) | def intersection_subset(self, w, wPrime, d): method extract (line 195) | def extract(self, mk, ID, pk, dOver, n): method encrypt (line 212) | def encrypt(self, pk, w_prime, M, n): method decrypt (line 228) | def decrypt(self, pk, sk, CT, w, d): FILE: charm/schemes/ibenc/ibenc_waters05.py class IBE_N04 (line 30) | class IBE_N04(IBEnc): method __init__ (line 49) | def __init__(self, groupObj): method setup (line 55) | def setup(self, l=32): method extract (line 82) | def extract(self, mk, v): method encrypt (line 98) | def encrypt(self, pk, ID, M): # M:GT method decrypt (line 114) | def decrypt(self, pk, sID, ct): function main (line 126) | def main(): FILE: charm/schemes/ibenc/ibenc_waters05_z.py function randomStringGen (line 37) | def randomStringGen(size=30, chars=string.ascii_uppercase + string.digits): class IBE_N04_z (line 41) | class IBE_N04_z(IBEnc): method __init__ (line 60) | def __init__(self, groupObj): method setup (line 70) | def setup(self, l=32): method extract (line 98) | def extract(self, mk, ID): method encrypt (line 116) | def encrypt(self, pk, ID, M): # M:GT method decrypt (line 135) | def decrypt(self, pk, sID, ct): function main (line 147) | def main(): FILE: charm/schemes/ibenc/ibenc_waters09.py class DSE09 (line 26) | class DSE09(IBEnc): method __init__ (line 40) | def __init__(self, groupObj): method setup (line 45) | def setup(self): method keygen (line 59) | def keygen(self, mpk, msk, ID): method encrypt (line 76) | def encrypt(self, mpk, M, ID): method decrypt (line 96) | def decrypt(self, ct, sk): FILE: charm/schemes/ibenc/ibenc_waters09_z.py class DSE09_z (line 35) | class DSE09_z(IBEnc): method __init__ (line 49) | def __init__(self, groupObj): method setup (line 54) | def setup(self): method keygen (line 84) | def keygen(self, mpk, msk, ID): method encrypt (line 101) | def encrypt(self, mpk, M, ID): method decrypt (line 121) | def decrypt(self, ct, sk): function main (line 133) | def main(): FILE: charm/schemes/joye_scheme.py class Joye (line 45) | class Joye(): method __init__ (line 47) | def __init__(self,users=2): method destruction_keys (line 54) | def destruction_keys(self,pk): method encrypt (line 63) | def encrypt(self,x,pk,sk): method keygen (line 76) | def keygen(self): method encode (line 80) | def encode(self,x,pk): method sumfree (line 83) | def sumfree(self,x1,x2,pk): method sum (line 91) | def sum(self,x1,x2,pk,k0): FILE: charm/schemes/lem_scheme.py function hash (line 48) | def hash(): function secretkey (line 65) | def secretkey(): class Aggregator (line 76) | class Aggregator(): method __init__ (line 81) | def __init__(self): method decrypt (line 93) | def decrypt(self,*encarray): function encryptfunc (line 119) | def encryptfunc(a,d): function auxiliaryfunc (line 129) | def auxiliaryfunc(b): function egcd (line 136) | def egcd(a, b): function modinv (line 149) | def modinv(a, m): class Users (line 160) | class Users(): method __init__ (line 165) | def __init__(self,*userdata): method encrypt (line 171) | def encrypt(self): method auxiliary (line 179) | def auxiliary(self): class Collector (line 187) | class Collector(): method __init__ (line 192) | def __init__(self,*auxarray): FILE: charm/schemes/pk_fre_ccv11.py class InputEnc (line 25) | class InputEnc: method __init__ (line 26) | def __init__(self, groupObj): method setup (line 31) | def setup(self, d): method encrypt (line 41) | def encrypt(self, i_pk, i, M : G1): method decrypt (line 59) | def decrypt(self, i_sk, ct, M : [G1]): class OutputEnc (line 76) | class OutputEnc: method __init__ (line 77) | def __init__(self, groupObj): method setup (line 81) | def setup(self): method encrypt (line 89) | def encrypt(self, i_pk, o_pk, M : G1): method decrypt (line 100) | def decrypt(self, a, ct, M : [G1]): FILE: charm/schemes/pk_vrf.py class VRF10 (line 26) | class VRF10: method __init__ (line 42) | def __init__(self, groupObj): method setup (line 47) | def setup(self, n): method F (line 61) | def F(self, sk, x): method prove (line 65) | def prove(self, sk, x): method verify (line 76) | def verify(self, pk, x, st): function main (line 104) | def main(): FILE: charm/schemes/pkenc/pkenc_cs98.py class CS98 (line 32) | class CS98(PKEnc): method __init__ (line 56) | def __init__(self, groupObj, p=0, q=0): method keygen (line 64) | def keygen(self, secparam=0): method encrypt (line 85) | def encrypt(self, pk, M): method decrypt (line 99) | def decrypt(self, pk, sk, c): FILE: charm/schemes/pkenc/pkenc_elgamal85.py class ElGamalCipher (line 27) | class ElGamalCipher(dict): method __init__ (line 28) | def __init__(self, ct): method __add__ (line 33) | def __add__(self, other): method __mul__ (line 41) | def __mul__(self, other): class ElGamal (line 55) | class ElGamal(PKEnc): method __init__ (line 79) | def __init__(self, groupObj, p=0, q=0): method keygen (line 86) | def keygen(self, secparam=1024): method encrypt (line 105) | def encrypt(self, pk, M): method decrypt (line 113) | def decrypt(self, pk, sk, c): FILE: charm/schemes/pkenc/pkenc_gm82.py function isResidue (line 32) | def isResidue(x, p1, p2): class GM82 (line 36) | class GM82(PKEnc): method __init__ (line 55) | def __init__(self): method keygen (line 59) | def keygen(self, secparam): method encrypt (line 79) | def encrypt(self, pk, m): method decrypt (line 91) | def decrypt(self, sk, c): method xor (line 96) | def xor(self, pk, c1, c2): FILE: charm/schemes/pkenc/pkenc_paillier99.py class Ciphertext (line 27) | class Ciphertext(dict): method __init__ (line 49) | def __init__(self, ct, pk, key): method __add__ (line 53) | def __add__(self, other): method __mul__ (line 64) | def __mul__(self, other): method randomize (line 69) | def randomize(self, r): # need to provide random value method __str__ (line 74) | def __str__(self): class Pai99 (line 78) | class Pai99(PKEnc): method __init__ (line 79) | def __init__(self, groupObj): method L (line 84) | def L(self, u, n): method keygen (line 91) | def keygen(self, secparam=1024): method encrypt (line 100) | def encrypt(self, pk, m): method decrypt (line 106) | def decrypt(self, pk, sk, ct): method encode (line 111) | def encode(self, modulus, message): method decode (line 116) | def decode(self, pk, element): FILE: charm/schemes/pkenc/pkenc_rabin.py class Rabin (line 35) | class Rabin(): method __init__ (line 36) | def __init__(self, modulus=BlumWilliamsInteger()): method paramgen (line 40) | def paramgen(self, secparam): method keygen (line 48) | def keygen(self, s0, secparam=1024, params=None): method convert (line 62) | def convert(self, N, p, q, yp, yq): class Rabin_Enc (line 65) | class Rabin_Enc(Rabin,PKEnc): method __init__ (line 75) | def __init__(self, padding=SAEPEncryptionPadding(), redundancy=InMessa... method encrypt (line 81) | def encrypt(self, pk, m, salt=None): method decrypt (line 95) | def decrypt(self, pk, sk, c): class Rabin_Sig (line 173) | class Rabin_Sig(Rabin, PKSig): method __init__ (line 185) | def __init__(self, padding=OAEPEncryptionPadding()): method sign (line 190) | def sign(self,sk, M, salt=None): method verify (line 227) | def verify(self, pk, M, S, salt=None): function main (line 245) | def main(): FILE: charm/schemes/pkenc/pkenc_rsa.py class RSA (line 31) | class RSA(): method __init__ (line 32) | def __init__(self): method paramgen (line 35) | def paramgen(self, secparam): method keygen (line 44) | def keygen(self, secparam=1024, params=None): method convert (line 93) | def convert(self, N, e, d, p, q): class RSA_Enc (line 97) | class RSA_Enc(RSA,PKEnc): method __init__ (line 107) | def __init__(self, padding=OAEPEncryptionPadding(), params=None): method encrypt (line 112) | def encrypt(self, pk, m, salt=None): method decrypt (line 120) | def decrypt(self, pk, sk, c): class RSA_Sig (line 127) | class RSA_Sig(RSA, PKSig): method __init__ (line 137) | def __init__(self, padding=PSSPadding()): method sign (line 142) | def sign(self,sk, M, salt=None): method verify (line 164) | def verify(self, pk, M, S): FILE: charm/schemes/pksig/pksig_CW13_z.py class Sign_CW13 (line 28) | class Sign_CW13(PKSig): method __init__ (line 29) | def __init__(self, groupObj): method keygen (line 34) | def keygen(self): method sign (line 94) | def sign(self, pk, sk, m): method verify (line 106) | def verify(self, pk, sig, m): method vpair (line 117) | def vpair(self, g1v, g2v): function main (line 120) | def main(): FILE: charm/schemes/pksig/pksig_bls04.py class BLS01 (line 30) | class BLS01(IBSig): method __init__ (line 41) | def __init__(self, groupObj): method dump (line 46) | def dump(self, obj): method keygen (line 49) | def keygen(self, secparam=None): method sign (line 56) | def sign(self, x, message): method verify (line 61) | def verify(self, pk, sig, message): function main (line 69) | def main(): FILE: charm/schemes/pksig/pksig_boyen.py class Boyen (line 28) | class Boyen(PKSig): method __init__ (line 47) | def __init__(self, groupObj): method setup (line 51) | def setup(self): method keygen (line 64) | def keygen(self, mpk): method getPKdict (line 72) | def getPKdict(self, mpk, pk, k): method sign (line 83) | def sign(self, index, mpk, pk, sk, M): method verify (line 113) | def verify(self, mpk, pk, M, sig): function main (line 127) | def main(): FILE: charm/schemes/pksig/pksig_chch.py class CHCH (line 26) | class CHCH(PKSig): method __init__ (line 39) | def __init__(self, groupObj): method setup (line 45) | def setup(self): method keygen (line 52) | def keygen(self, msk, ID): method sign (line 58) | def sign(self, pk, sk, M): method verify (line 66) | def verify(self, mpk, pk, M, sig): function main (line 74) | def main(): FILE: charm/schemes/pksig/pksig_chp.py class CHP (line 27) | class CHP(PKSig): method __init__ (line 39) | def __init__(self, groupObj): method setup (line 43) | def setup(self): method keygen (line 50) | def keygen(self, mpk): method sign (line 56) | def sign(self, pk, sk, M): method verify (line 63) | def verify(self, mpk, pk, M, sig): FILE: charm/schemes/pksig/pksig_cl03.py function SHA1 (line 26) | def SHA1(bytes1): function randomQR (line 31) | def randomQR(n): class Sig_CL03 (line 35) | class Sig_CL03(PKSig): method __init__ (line 61) | def __init__(self, lmin=160, lin=160, secparam=512): method keygen (line 68) | def keygen(self, secparam=512, p=0, q=0): method sign (line 94) | def sign(self, pk, sk, m): method signCommit (line 109) | def signCommit(self, pk, sk, Cx): method verify (line 124) | def verify(self, pk, m, sig): method verifyCommit (line 138) | def verifyCommit(self, pk, sig, Cx): FILE: charm/schemes/pksig/pksig_cl04.py class CL04 (line 26) | class CL04(PKSig): method __init__ (line 38) | def __init__(self, groupObj): method setup (line 42) | def setup(self): method keygen (line 46) | def keygen(self, mpk): method sign (line 52) | def sign(self, pk, sk, M): method verify (line 58) | def verify(self, pk, M, sig): function main (line 65) | def main(): FILE: charm/schemes/pksig/pksig_cllww12_z.py class Sign_Chen12_z (line 29) | class Sign_Chen12_z(PKSig): method __init__ (line 40) | def __init__(self, groupObj): method keygen (line 46) | def keygen(self): method sign (line 107) | def sign(self, pk, sk, m): method verify (line 118) | def verify(self, pk, sig, m): function main (line 128) | def main(): FILE: charm/schemes/pksig/pksig_cyh.py class CYH (line 28) | class CYH(PKSig): method __init__ (line 44) | def __init__(self, groupObj): method concat (line 48) | def concat(self, L_id): method setup (line 54) | def setup(self): method keygen (line 65) | def keygen(self, msk, ID): method sign (line 70) | def sign(self, sk, L, M): method verify (line 93) | def verify(self, mpk, L, M, sig): function main (line 108) | def main(): FILE: charm/schemes/pksig/pksig_dsa.py class DSA (line 27) | class DSA(PKSig): method __init__ (line 39) | def __init__(self, p=0, q=0): method keygen (line 44) | def keygen(self, bits): method sign (line 54) | def sign(self, pk, x, M): method verify (line 66) | def verify(self, pk, sig, M): FILE: charm/schemes/pksig/pksig_ecdsa.py class ECDSA (line 26) | class ECDSA(PKSig): method __init__ (line 37) | def __init__(self, groupObj): method keygen (line 42) | def keygen(self, bits): method sign (line 48) | def sign(self, pk, x, M): method verify (line 61) | def verify(self, pk, sig, M): FILE: charm/schemes/pksig/pksig_hess.py class Hess (line 30) | class Hess(PKSig): method __init__ (line 43) | def __init__(self, groupObj): method setup (line 49) | def setup(self): method keygen (line 56) | def keygen(self, msk, ID): method sign (line 62) | def sign(self, pk, sk, M): method verify (line 72) | def verify(self, mpk, pk, M, sig): function main (line 80) | def main(): FILE: charm/schemes/pksig/pksig_hw.py class HW (line 27) | class HW(PKSig): method __init__ (line 38) | def __init__(self, groupObj): method ceilog (line 42) | def ceilog(self, value): method setup (line 45) | def setup(self): method sign (line 64) | def sign(self, pk, sk, s, msg): method verify (line 77) | def verify(self, pk, msg, sig): function main (line 90) | def main(): FILE: charm/schemes/pksig/pksig_lamport.py function _h (line 30) | def _h(x): function _bytes_to_booleans (line 34) | def _bytes_to_booleans(x): class Lamport (line 38) | class Lamport(PKSig): method __init__ (line 47) | def __init__(self): method keygen (line 50) | def keygen(self, securityparam=256): method sign (line 56) | def sign(self, pk, sk, message): method verify (line 60) | def verify(self, pk, message, sig): FILE: charm/schemes/pksig/pksig_ps01.py class PS01 (line 29) | class PS01: method __init__ (line 34) | def __init__(self, groupObj): method keygen (line 39) | def keygen(num_messages=1): method sign (line 47) | def sign(self, sk, *messages): method verify (line 53) | def verify(self, pk, sig, *messages): method randomize_sig (line 61) | def randomize_sig(self, sig): method product (line 67) | def product(seq): function main (line 71) | def main(): FILE: charm/schemes/pksig/pksig_ps02.py class PS02 (line 29) | class PS02: method __init__ (line 34) | def __init__(self, groupObj): method setup (line 38) | def setup(self): method keygen (line 48) | def keygen(self, num_messages): method sign (line 54) | def sign(self, sk, pk, messages): method verify (line 77) | def verify(self, pk, sig, messages): method product (line 87) | def product(seq): function main (line 91) | def main(): FILE: charm/schemes/pksig/pksig_ps03.py class PS01 (line 29) | class PS01: method __init__ (line 34) | def __init__(self, groupObj): method keygen (line 39) | def keygen(num_messages=1): method commitment (line 51) | def commitment(self, pk, *messages): method sign (line 55) | def sign(self, sk, pk, commitment): method unblind_signature (line 60) | def unblind_signature(t, sig): method verify (line 64) | def verify(self, pk, sig, *messages): method randomize_sig (line 72) | def randomize_sig(self, sig): method product (line 78) | def product(seq): function main (line 82) | def main(): FILE: charm/schemes/pksig/pksig_rsa_hw09.py function SHA1 (line 32) | def SHA1(bytes1): function randomQR (line 38) | def randomQR(n): class LogFunction (line 41) | class LogFunction: method __init__ (line 42) | def __init__(self, base=10): method __getitem__ (line 45) | def __getitem__(self, base): method __call__ (line 48) | def __call__(self, val): class Prf (line 52) | class Prf: method __init__ (line 53) | def __init__(self): method keygen (line 57) | def keygen(self, bits): method eval (line 61) | def eval(self, k, input1): class BlumIntegerSquareRoot (line 70) | class BlumIntegerSquareRoot: method __init__ (line 71) | def __init__(self, p, q): method pow (line 76) | def pow(self, modularInt): method __pow__ (line 83) | def __pow__(self, power): class Sig_RSA_Stateless_HW09 (line 88) | class Sig_RSA_Stateless_HW09(PKSig): method __init__ (line 103) | def __init__(self, CH = ChamHash_HW09): method keygen (line 108) | def keygen(self, keyLength=1024, p=0, q=0): method sign (line 129) | def sign(self, pk, sk, message, s=0): method verify (line 166) | def verify(self, pk, message, sig): method HW_hash (line 199) | def HW_hash(self, key, c, input, keyLen): FILE: charm/schemes/pksig/pksig_schnorr91.py class SchnorrSig (line 26) | class SchnorrSig(PKSig): method __init__ (line 39) | def __init__(self): method params (line 42) | def params(self, p=0, q=0, bits=1024): method keygen (line 50) | def keygen(self): method sign (line 56) | def sign(self, pk, x, M): method verify (line 65) | def verify(self, pk, sig, M): FILE: charm/schemes/pksig/pksig_waters.py class WatersSig (line 27) | class WatersSig: method __init__ (line 40) | def __init__(self, groupObj): method setup (line 45) | def setup(self, z, l=32): method keygen (line 64) | def keygen(self, mpk, msk, ID): method sign (line 73) | def sign(self, mpk, sk, M): method verify (line 84) | def verify(self, mpk, ID, M, sig): function main (line 98) | def main(): FILE: charm/schemes/pksig/pksig_waters05.py class IBE_N04_Sig (line 30) | class IBE_N04_Sig(PKSig): method __init__ (line 44) | def __init__(self, groupObj): method keygen (line 52) | def keygen(self, l=32): method sign (line 82) | def sign(self, pk, sk, m): method verify (line 93) | def verify(self, pk, msg, sig): function main (line 101) | def main(): FILE: charm/schemes/pksig/pksig_waters09.py class IBEWaters09 (line 26) | class IBEWaters09(IBEnc): method __init__ (line 36) | def __init__(self, groupObj): method keygen (line 41) | def keygen(self): method sign (line 69) | def sign(self, mpk, msk, m): method verify (line 87) | def verify(self, mpk, sigma, m): function main (line 104) | def main(): FILE: charm/schemes/pre_mg07.py class PreGA (line 28) | class PreGA: method __init__ (line 47) | def __init__(self, groupObj): method setup (line 52) | def setup(self): method keyGen (line 65) | def keyGen(self, msk, ID): method encrypt (line 73) | def encrypt(self, params, ID, M): method decryptFirstLevel (line 94) | def decryptFirstLevel(self, params, skid, cid, ID): method rkGen (line 112) | def rkGen(self, params, skid, IDsrc, IDdest): method reEncrypt (line 122) | def reEncrypt(self, params, IDsrc, rk, cid): method decryptSecondLevel (line 136) | def decryptSecondLevel(self, params, skid, IDsrc, ID, cid): FILE: charm/schemes/prenc/pre_afgh06.py class AFGH06 (line 28) | class AFGH06(PREnc): method __init__ (line 45) | def __init__(self, groupObj): method setup (line 49) | def setup(self): method keygen (line 59) | def keygen(self, params): method rekeygen (line 73) | def rekeygen(self, params, pk_a, sk_a, pk_b, sk_b): method encrypt (line 82) | def encrypt(self, params, pk, m): method decrypt (line 100) | def decrypt(self, params, sk, c): method re_encrypt (line 112) | def re_encrypt(self, params, rk, c_a): FILE: charm/schemes/prenc/pre_bbs98.py class BBS98 (line 27) | class BBS98(PREnc): method __init__ (line 46) | def __init__(self, groupObj, p=0, q=0): method setup (line 52) | def setup(self, secparam=0): method keygen (line 68) | def keygen(self, params): method rekeygen (line 81) | def rekeygen(self, params, pk_a, sk_a, pk_b, sk_b): method encrypt (line 88) | def encrypt(self, params, pk, M): method decrypt (line 103) | def decrypt(self, params, sk, c): method re_encrypt (line 114) | def re_encrypt(self, params, rk, c_a): FILE: charm/schemes/prenc/pre_nal16.py class NAL16a (line 29) | class NAL16a(PREnc): method __init__ (line 46) | def __init__(self, groupObj): method F (line 50) | def F(self, params, t): method setup (line 53) | def setup(self): method keygen (line 63) | def keygen(self, params): method rekeygen (line 76) | def rekeygen(self, params, pk_a, sk_a, pk_b, sk_b): method encrypt (line 83) | def encrypt(self, params, pk, m): method decrypt (line 102) | def decrypt(self, params, sk, c): method re_encrypt (line 116) | def re_encrypt(self, params, rk, c_a): class NAL16b (line 128) | class NAL16b(NAL16a): method __init__ (line 145) | def __init__(self, groupObj): method H (line 150) | def H(self, gt, s): method G (line 161) | def G(self, x): method encrypt (line 169) | def encrypt(self, params, pk, m): method decrypt (line 187) | def decrypt(self, params, sk, c): method re_encrypt (line 198) | def re_encrypt(self, params, rk, c_a): FILE: charm/schemes/protocol_a01.py function SHA1 (line 34) | def SHA1(bytes1): class Asig (line 40) | class Asig(Protocol): method __init__ (line 41) | def __init__(self, groupObj, p=0, q=0, secparam=0): method signer_state1 (line 66) | def signer_state1(self): method user_state2 (line 89) | def user_state2(self, input): method signer_state3 (line 101) | def signer_state3(self, input): method user_state4 (line 128) | def user_state4(self, input): method signer_state5 (line 172) | def signer_state5(self, input): method user_state6 (line 185) | def user_state6(self, input): method signer_state7 (line 197) | def signer_state7(self, input): method user_state8 (line 206) | def user_state8(self, input): FILE: charm/schemes/protocol_ao00.py function SHA2 (line 33) | def SHA2(bytes1): class AOSig (line 39) | class AOSig(Protocol): method __init__ (line 40) | def __init__(self, groupObj, p=0, q=0, secparam=0): method signer_state1 (line 65) | def signer_state1(self): method user_state2 (line 80) | def user_state2(self, input): method signer_state3 (line 90) | def signer_state3(self, input): method user_state4 (line 113) | def user_state4(self, input): method signer_state5 (line 146) | def signer_state5(self, input): method user_state6 (line 159) | def user_state6(self, input): FILE: charm/schemes/protocol_cns07.py class ObliviousTransfer (line 34) | class ObliviousTransfer(Protocol): method __init__ (line 35) | def __init__(self, messages=None, groupObj=None, common_input=None): method get_common (line 68) | def get_common(self): method sender_init1 (line 78) | def sender_init1(self): method sender_init3 (line 102) | def sender_init3(self, input): method sender_transfer5 (line 121) | def sender_transfer5(self, input): method sender_transfer7 (line 130) | def sender_transfer7(self, input): method sender_transfer9 (line 152) | def sender_transfer9(self, input): method receiver_init2 (line 169) | def receiver_init2(self, input): method receiver_transfer4 (line 185) | def receiver_transfer4(self, input): # rec_tran4 -> sender_tran5 method receiver_transfer6 (line 195) | def receiver_transfer6(self, input): method receiver_transfer8 (line 212) | def receiver_transfer8(self, input): FILE: charm/schemes/protocol_schnorr91.py class SchnorrZK (line 34) | class SchnorrZK(Protocol): method __init__ (line 35) | def __init__(self, builtin_cv, common_input=None): method prover_state1 (line 51) | def prover_state1(self): method prover_state3 (line 60) | def prover_state3( self, input): method prover_state5 (line 67) | def prover_state5( self, input ): method verifier_state2 (line 75) | def verifier_state2(self, input): method verifier_state4 (line 84) | def verifier_state4( self, input ): method verifier_state6 (line 97) | def verifier_state6(self, input ): FILE: charm/schemes/sigma1.py class SigmaProtocol1 (line 24) | class SigmaProtocol1(Sigma): method __init__ (line 25) | def __init__(self, groupObj, common_input=None): method prover_state1 (line 28) | def prover_state1(self): method prover_state3 (line 35) | def prover_state3(self, input): method prover_state5 (line 41) | def prover_state5(self, input): method verifier_state2 (line 46) | def verifier_state2(self, input): method verifier_state4 (line 51) | def verifier_state4(self, input): method verifier_state6 (line 61) | def verifier_state6(self, input): FILE: charm/schemes/sigma2.py class SigmaProtocol2 (line 24) | class SigmaProtocol2(Sigma): method __init__ (line 25) | def __init__(self, groupObj, common_input=None): method gen_common (line 30) | def gen_common(self): method prover_state1 (line 41) | def prover_state1(self): method prover_state3 (line 58) | def prover_state3(self, input): method prover_state5 (line 69) | def prover_state5(self, input): method verifier_state2 (line 75) | def verifier_state2(self, input): method verifier_state4 (line 82) | def verifier_state4(self, input): method verifier_state6 (line 95) | def verifier_state6(self, input): FILE: charm/schemes/sigma3.py class SigmaProtocol3 (line 25) | class SigmaProtocol3(Sigma): method __init__ (line 26) | def __init__(self, groupObj=None, common_input=None): method prover_state1 (line 43) | def prover_state1(self): method prover_state3 (line 58) | def prover_state3(self, input): method prover_state5 (line 67) | def prover_state5(self, input): method verifier_state2 (line 73) | def verifier_state2(self, input): method verifier_state4 (line 80) | def verifier_state4(self, input): method verifier_state6 (line 92) | def verifier_state6(self, input): FILE: charm/schemes/threshold/cggmp21_dkg.py class CGGMP21_KeyShare (line 47) | class CGGMP21_KeyShare: method get_paillier_pk (line 74) | def get_paillier_pk(self, party_id: PartyId) -> Dict: class SecurityAbort (line 81) | class SecurityAbort(Exception): method __init__ (line 84) | def __init__(self, message: str, accused_party: Optional[PartyId] = None, class CGGMP21_DKG (line 91) | class CGGMP21_DKG: method __init__ (line 123) | def __init__(self, ec_group: ECGroupType, rsa_group: RSAGroup, method _hash_commitment (line 150) | def _hash_commitment(self, *args) -> bytes: method keygen_round1 (line 161) | def keygen_round1(self, party_id: PartyId, generator: GElement, method keygen_round2 (line 241) | def keygen_round2(self, party_id: PartyId, private_state: Dict[str, Any], method keygen_round3 (line 286) | def keygen_round3(self, party_id: PartyId, private_state: Dict[str, Any], FILE: charm/schemes/threshold/cggmp21_presign.py class CGGMP21_Presignature (line 43) | class CGGMP21_Presignature: method __repr__ (line 64) | def __repr__(self) -> str: class CGGMP21_Presign (line 68) | class CGGMP21_Presign: method __init__ (line 84) | def __init__(self, ec_group: ECGroupType, rsa_group: RSAGroup, method _hash_commitment (line 100) | def _hash_commitment(self, value: GElement) -> bytes: method _compute_lagrange_coeff (line 107) | def _compute_lagrange_coeff(self, party_id: int, participants: List[in... method presign_round1 (line 120) | def presign_round1(self, party_id: PartyId, key_share: CGGMP21_KeyShare, method presign_round2 (line 170) | def presign_round2(self, party_id: PartyId, private_state: Dict[str, A... method presign_round3 (line 241) | def presign_round3(self, party_id: PartyId, private_state: Dict[str, A... FILE: charm/schemes/threshold/cggmp21_proofs.py class RingPedersenParams (line 37) | class RingPedersenParams: method __post_init__ (line 53) | def __post_init__(self): class AffGProof (line 59) | class AffGProof: class MulProof (line 81) | class MulProof: class RingPedersenGenerator (line 97) | class RingPedersenGenerator: method __init__ (line 104) | def __init__(self, rsa_group: RSAGroup): method generate (line 108) | def generate(self, bits: int = 2048) -> Tuple[RingPedersenParams, Dict... method _generate_prime (line 145) | def _generate_prime(self, bits: int) -> int: class CGGMP21_ZKProofs (line 151) | class CGGMP21_ZKProofs(PaillierZKProofs): method __init__ (line 161) | def __init__(self, rsa_group: RSAGroup, ec_group: Any = None, method _ring_pedersen_commit (line 174) | def _ring_pedersen_commit(self, x: int, r: int) -> int: method prove_affine_g (line 183) | def prove_affine_g(self, x: int, y: int, rho: int, method verify_affine_g (line 280) | def verify_affine_g(self, C: Any, D: Any, X: Any, method prove_mul (line 337) | def prove_mul(self, x: int, C: Any, D: Any, pk: Dict, method verify_mul (line 401) | def verify_mul(self, C: Any, D: Any, X: Any, FILE: charm/schemes/threshold/cggmp21_sign.py class CGGMP21_Signature (line 46) | class CGGMP21_Signature: method to_tuple (line 51) | def to_tuple(self) -> Tuple[ZRElement, ZRElement]: class CGGMP21_Sign (line 55) | class CGGMP21_Sign: method __init__ (line 63) | def __init__(self, ec_group: ECGroupType, rsa_group: RSAGroup, method _hash_message (line 79) | def _hash_message(self, message: bytes) -> ZRElement: method sign_with_presignature (line 85) | def sign_with_presignature(self, party_id: PartyId, method combine_signatures (line 116) | def combine_signatures(self, signature_shares: Dict[PartyId, ZRElement], method _normalize_s (line 144) | def _normalize_s(self, s: ZRElement) -> ZRElement: method verify (line 152) | def verify(self, public_key: GElement, signature: CGGMP21_Signature, class CGGMP21 (line 168) | class CGGMP21(PKSig): method __init__ (line 195) | def __init__(self, ec_group: ECGroupType, rsa_group: RSAGroup, method keygen (line 221) | def keygen(self, generator: Optional[GElement] = None, method presign (line 276) | def presign(self, key_shares: List[CGGMP21_KeyShare], method sign (line 373) | def sign(self, key_shares: List[CGGMP21_KeyShare], message: bytes, method verify (line 424) | def verify(self, public_key: GElement, message: bytes, FILE: charm/schemes/threshold/dkls23_dkg.py class KeyShare (line 35) | class KeyShare: method __init__ (line 62) | def __init__(self, party_id: PartyId, private_share: ZRElement, public... method __repr__ (line 70) | def __repr__(self) -> str: class DKLS23_DKG (line 74) | class DKLS23_DKG: method __init__ (line 141) | def __init__(self, groupObj: ECGroupType, threshold: int, num_parties:... method keygen_round1 (line 167) | def keygen_round1(self, party_id: PartyId, generator: GElement, sessio... method keygen_round2 (line 242) | def keygen_round2(self, party_id: PartyId, private_state: Dict[str, An... method _verify_share_against_commitments (line 295) | def _verify_share_against_commitments(self, sender_id: PartyId, receiv... method keygen_round3 (line 313) | def keygen_round3(self, party_id: PartyId, private_state: Dict[str, An... method handle_complaints (line 403) | def handle_complaints(self, party_id: PartyId, complaints: Dict[PartyI... method verify_broadcast_consistency (line 480) | def verify_broadcast_consistency(self, party_id: PartyId, all_round1_m... method compute_public_key (line 516) | def compute_public_key(self, all_commitments: List[List[GElement]], ge... FILE: charm/schemes/threshold/dkls23_presign.py class SecurityAbort (line 65) | class SecurityAbort(Exception): method __init__ (line 78) | def __init__(self, message, failed_parties=None): class Presignature (line 84) | class Presignature: method __init__ (line 105) | def __init__(self, party_id: PartyId, R: GElement, r: ZRElement, k_sha... method is_valid (line 128) | def is_valid(self) -> bool: method __repr__ (line 144) | def __repr__(self) -> str: class DKLS23_Presign (line 148) | class DKLS23_Presign: method __init__ (line 204) | def __init__(self, groupObj: ECGroupType) -> None: method _compute_schnorr_challenge_hash (line 222) | def _compute_schnorr_challenge_hash(self, generator: GElement, public_... method _schnorr_prove_dlog (line 260) | def _schnorr_prove_dlog(self, secret: ZRElement, public_point: GElemen... method _schnorr_verify_dlog (line 302) | def _schnorr_verify_dlog(self, public_point: GElement, proof: Dict[str... method _compute_commitment (line 344) | def _compute_commitment(self, *values: Any, session_id: Optional[bytes... method presign_round1 (line 400) | def presign_round1(self, party_id: PartyId, key_share: Any, participan... method presign_round2 (line 511) | def presign_round2(self, party_id: PartyId, state: Dict[str, Any], all... method presign_round3 (line 622) | def presign_round3(self, party_id: PartyId, state: Dict[str, Any], all... method presign_round4 (line 754) | def presign_round4(self, party_id: PartyId, state: Dict[str, Any], p2p... FILE: charm/schemes/threshold/dkls23_sign.py class ThresholdSignature (line 47) | class ThresholdSignature: method __init__ (line 62) | def __init__(self, r: ZRElement, s: ZRElement) -> None: method __repr__ (line 73) | def __repr__(self) -> str: method __eq__ (line 76) | def __eq__(self, other: object) -> bool: method to_der (line 81) | def to_der(self) -> bytes: class DKLS23_Sign (line 106) | class DKLS23_Sign: method __init__ (line 137) | def __init__(self, groupObj: ECGroupType) -> None: method _hash_message (line 153) | def _hash_message(self, message: bytes) -> ZRElement: method sign_round1 (line 170) | def sign_round1(self, party_id: PartyId, presignature: Presignature, k... method verify_signature_share (line 242) | def verify_signature_share(self, party_id: PartyId, share: ZRElement, ... method combine_signatures (line 274) | def combine_signatures(self, signature_shares: Dict[PartyId, ZRElement... method _normalize_s (line 334) | def _normalize_s(self, s: ZRElement) -> ZRElement: method verify (line 359) | def verify(self, public_key: GElement, signature: Union['ThresholdSign... class DKLS23 (line 417) | class DKLS23(PKSig): method __init__ (line 463) | def __init__(self, groupObj: ECGroupType, threshold: int = 2, num_part... method keygen (line 491) | def keygen(self, securityparam: Optional[int] = None, generator: Optio... method distributed_keygen (line 506) | def distributed_keygen(self, generator: GElement) -> Tuple[Dict[PartyI... method presign (line 581) | def presign(self, participants: List[PartyId], key_shares: Dict[PartyI... method sign (line 666) | def sign(self, participants: List[PartyId], presignatures: Dict[PartyI... method verify (line 726) | def verify(self, public_key: GElement, signature: Union['ThresholdSign... FILE: charm/schemes/threshold/gg18_dkg.py class GG18_KeyShare (line 39) | class GG18_KeyShare: method __init__ (line 56) | def __init__(self, party_id: PartyId, private_share: ZRElement, method __repr__ (line 69) | def __repr__(self) -> str: method get_paillier_pk (line 72) | def get_paillier_pk(self, party_id: PartyId) -> Dict: class GG18_DKG (line 79) | class GG18_DKG: method __init__ (line 115) | def __init__(self, ec_group: ECGroupType, rsa_group: RSAGroup, method keygen_round1 (line 143) | def keygen_round1(self, party_id: PartyId, generator: GElement, method keygen_round2 (line 199) | def keygen_round2(self, party_id: PartyId, private_state: Dict[str, Any], method keygen_round3 (line 232) | def keygen_round3(self, party_id: PartyId, private_state: Dict[str, Any], method compute_public_key (line 293) | def compute_public_key(self, all_commitments: List[List[GElement]]) ->... FILE: charm/schemes/threshold/gg18_sign.py class GG18_Signature (line 45) | class GG18_Signature: method to_tuple (line 50) | def to_tuple(self) -> Tuple[ZRElement, ZRElement]: class GG18_Sign (line 54) | class GG18_Sign: method __init__ (line 71) | def __init__(self, ec_group: ECGroupType, rsa_group: RSAGroup, method _hash_message (line 86) | def _hash_message(self, message: bytes) -> ZRElement: method _hash_commitment (line 92) | def _hash_commitment(self, value: GElement) -> bytes: method sign_round1 (line 99) | def sign_round1(self, party_id: PartyId, key_share: GG18_KeyShare, method sign_round2 (line 144) | def sign_round2(self, party_id: PartyId, private_state: Dict[str, Any], method sign_round3 (line 217) | def sign_round3(self, party_id: PartyId, private_state: Dict[str, Any], method _compute_lagrange_coeff (line 337) | def _compute_lagrange_coeff(self, party_id: PartyId, method sign_round4 (line 353) | def sign_round4(self, party_id: PartyId, private_state: Dict[str, Any], method combine_signatures (line 435) | def combine_signatures(self, signature_shares: Dict[PartyId, ZRElement], method _normalize_s (line 461) | def _normalize_s(self, s: ZRElement) -> ZRElement: method verify (line 470) | def verify(self, public_key: GElement, signature: GG18_Signature, class GG18 (line 503) | class GG18(PKSig): method __init__ (line 529) | def __init__(self, ec_group: ECGroupType, rsa_group: RSAGroup, method keygen (line 554) | def keygen(self, generator: Optional[GElement] = None) -> Tuple[GEleme... method sign (line 608) | def sign(self, key_shares: List[GG18_KeyShare], message: bytes, method verify (line 697) | def verify(self, public_key: GElement, message: bytes, FILE: charm/schemes/threshold/xrpl_wallet.py function get_secp256k1_generator (line 54) | def get_secp256k1_generator(group): function _base58_encode (line 84) | def _base58_encode(data: bytes) -> str: function _sha256 (line 105) | def _sha256(data: bytes) -> bytes: function _ripemd160 (line 110) | def _ripemd160(data: bytes) -> bytes: function _double_sha256 (line 117) | def _double_sha256(data: bytes) -> bytes: function get_compressed_public_key (line 122) | def get_compressed_public_key(group: ECGroup, public_key: ec_element) ->... function derive_account_id (line 163) | def derive_account_id(compressed_pubkey: bytes) -> bytes: function encode_classic_address (line 184) | def encode_classic_address(account_id: bytes) -> str: class XRPLThresholdWallet (line 209) | class XRPLThresholdWallet: method __init__ (line 232) | def __init__(self, group: ECGroup, public_key: ec_element): method get_compressed_public_key (line 246) | def get_compressed_public_key(self) -> bytes: method get_account_id (line 252) | def get_account_id(self) -> bytes: method get_classic_address (line 258) | def get_classic_address(self) -> str: method get_account_id_hex (line 264) | def get_account_id_hex(self) -> str: method get_public_key_hex (line 268) | def get_public_key_hex(self) -> str: method get_x_address (line 272) | def get_x_address(self, tag: Optional[int] = None, function sign_xrpl_transaction_hash (line 294) | def sign_xrpl_transaction_hash( function format_xrpl_signature (line 349) | def format_xrpl_signature(der_signature: bytes, public_key_hex: str) -> ... function _check_xrpl_py (line 372) | def _check_xrpl_py(): function get_x_address (line 381) | def get_x_address(classic_address: str, tag: Optional[int] = None, function decode_x_address (line 416) | def decode_x_address(x_address: str) -> Tuple[str, Optional[int], bool]: function compute_signing_hash (line 440) | def compute_signing_hash(transaction) -> bytes: function sign_xrpl_transaction (line 488) | def sign_xrpl_transaction( class XRPLClient (line 571) | class XRPLClient: method __init__ (line 589) | def __init__(self, url: Optional[str] = None, is_testnet: bool = False): method client (line 613) | def client(self): method get_account_sequence (line 617) | def get_account_sequence(self, address: str) -> int: method get_balance (line 639) | def get_balance(self, address: str) -> int: method does_account_exist (line 658) | def does_account_exist(self, address: str) -> bool: method submit_transaction (line 676) | def submit_transaction(self, signed_tx_blob: str, fail_hard: bool = Fa... method submit_and_wait (line 693) | def submit_and_wait(self, signed_tx_blob: str, method autofill_transaction (line 710) | def autofill_transaction(self, transaction) -> dict: method get_transaction (line 743) | def get_transaction(self, tx_hash: str) -> dict: method fund_from_faucet (line 760) | def fund_from_faucet(address: str, timeout: int = 60) -> dict: function encode_memo_data (line 807) | def encode_memo_data(text: str) -> str: function decode_memo_data (line 826) | def decode_memo_data(hex_data: str) -> str: function create_memo (line 843) | def create_memo(data: str, memo_type: Optional[str] = None, function create_payment_with_memo (line 876) | def create_payment_with_memo( function get_transaction_memos (line 930) | def get_transaction_memos(tx_result: dict) -> list: FILE: charm/test/adapters/abenc_adapt_hybrid_test.py class HybridABEncTest (line 10) | class HybridABEncTest(unittest.TestCase): method testHybridABEnc (line 11) | def testHybridABEnc(self): FILE: charm/test/adapters/dabenc_adapt_hybrid_test.py class HybridABEncMATest (line 10) | class HybridABEncMATest(unittest.TestCase): method testHybridABEncMA (line 11) | def testHybridABEncMA(self): FILE: charm/test/adapters/ibenc_adapt_hybrid_test.py class HybridIBEncTest (line 11) | class HybridIBEncTest(unittest.TestCase): method testHybridIBEnc (line 12) | def testHybridIBEnc(self): FILE: charm/test/adapters/ibenc_adapt_identityhash_test.py class HashIDAdapterTest (line 10) | class HashIDAdapterTest(unittest.TestCase): method testHashIDAdapter (line 11) | def testHashIDAdapter(self): FILE: charm/test/adapters/kpabenc_adapt_hybrid_test.py class HybridKPABEncTest (line 10) | class HybridKPABEncTest(unittest.TestCase): method testHybridKPABEnc (line 11) | def testHybridKPABEnc(self): FILE: charm/test/benchmark/abenc_yllc15_bench.py function run_keygen_encrypt_proxy_decrypt_decrypt_round_trip (line 10) | def run_keygen_encrypt_proxy_decrypt_decrypt_round_trip(policy_str): function extract_attributes (line 53) | def extract_attributes(group, policy_str): function end_bench (line 59) | def end_bench(group, operation, n): function start_bench (line 67) | def start_bench(group): FILE: charm/test/benchmark/benchmark_test.py function isSaneBenchmark (line 10) | def isSaneBenchmark(dct): class BenchmarkTest1 (line 21) | class BenchmarkTest1(unittest.TestCase): method testPairing (line 22) | def testPairing(self): class BenchmarkTest2 (line 56) | class BenchmarkTest2(unittest.TestCase): method testECGroup (line 57) | def testECGroup(self): class BenchmarkTest3 (line 93) | class BenchmarkTest3(unittest.TestCase): method testInterleave (line 94) | def testInterleave(self): class BenchmarkTest4 (line 118) | class BenchmarkTest4(unittest.TestCase): method testInteger (line 119) | def testInteger(self): FILE: charm/test/benchmark_threshold.py function run_dkg (line 22) | def run_dkg(group, t, n, g): function benchmark_dkg (line 61) | def benchmark_dkg(t, n, iterations=10): function benchmark_presign (line 92) | def benchmark_presign(t, n, iterations=10): function benchmark_sign (line 144) | def benchmark_sign(t, n, iterations=10): function benchmark_full_flow (line 193) | def benchmark_full_flow(t, n, num_signatures=5): function run_benchmarks (line 235) | def run_benchmarks(t=2, n=3): FILE: charm/test/conftest.py function pytest_configure (line 12) | def pytest_configure(config): function pytest_collection_modifyitems (line 24) | def pytest_collection_modifyitems(config, items): FILE: charm/test/fuzz/fuzz_policy_parser.py function setup_module (line 24) | def setup_module(): function fuzz_policy_parser (line 30) | def fuzz_policy_parser(data: bytes) -> None: function main (line 53) | def main(): FILE: charm/test/fuzz/fuzz_serialization.py function setup_module (line 22) | def setup_module(): function fuzz_pairing_deserialization (line 29) | def fuzz_pairing_deserialization(data: bytes) -> None: function fuzz_combined (line 45) | def fuzz_combined(data: bytes) -> None: function main (line 62) | def main(): FILE: charm/test/schemes/abenc/abenc_bsw07_test.py class CPabe_BSW07Test (line 9) | class CPabe_BSW07Test(unittest.TestCase): method testCPabe_BSW07 (line 10) | def testCPabe_BSW07(self): FILE: charm/test/schemes/abenc/abenc_dacmacs_yj14_test.py class DacMacs_YJ14Test (line 9) | class DacMacs_YJ14Test(unittest.TestCase): method testDacmacs_YJ14 (line 10) | def testDacmacs_YJ14(self): FILE: charm/test/schemes/abenc/abenc_lsw08_test.py class KPabeTest (line 9) | class KPabeTest(unittest.TestCase): method testKPabe (line 10) | def testKPabe(self): FILE: charm/test/schemes/abenc/abenc_maabe_yj14_test.py class MAabe_YJ14Test (line 9) | class MAabe_YJ14Test(unittest.TestCase): method testMAabe_YJ14 (line 10) | def testMAabe_YJ14(self): FILE: charm/test/schemes/abenc/abenc_tbpre_lww14_test.py class TBPre_LWW14Test (line 9) | class TBPre_LWW14Test(unittest.TestCase): method testTBPre_LWW14 (line 10) | def testTBPre_LWW14(self): FILE: charm/test/schemes/abenc/abenc_waters09_test.py class CPabe09Test (line 9) | class CPabe09Test(unittest.TestCase): method testCPabe (line 10) | def testCPabe(self): FILE: charm/test/schemes/abenc/abenc_yllc15_test.py class YLLC15Test (line 17) | class YLLC15Test(unittest.TestCase): method setUp (line 19) | def setUp(self): method test_ukgen (line 24) | def test_ukgen(self, user_id='bob@example.com'): method test_proxy_key_gen_deduplicates_and_uppercases_attributes (line 31) | def test_proxy_key_gen_deduplicates_and_uppercases_attributes(self, at... method test_encrypt_proxy_decrypt_decrypt_round_trip (line 39) | def test_encrypt_proxy_decrypt_decrypt_round_trip(self, policy_str): method extract_attributes (line 51) | def extract_attributes(self, policy_str): method test_policy_not_satisfied (line 60) | def test_policy_not_satisfied(self, policy): FILE: charm/test/schemes/chamhash_adm05_test.py class ChamHash_Adm05Test (line 11) | class ChamHash_Adm05Test(unittest.TestCase): method testChamHash_Adm05 (line 13) | def testChamHash_Adm05(self): FILE: charm/test/schemes/chamhash_rsa_hw09_test.py class ChamHash_HW09Test (line 9) | class ChamHash_HW09Test(unittest.TestCase): method testChamHash_HW09 (line 10) | def testChamHash_HW09(self): FILE: charm/test/schemes/commit/commit_gs08_test.py class Commitment_GS08Test (line 9) | class Commitment_GS08Test(unittest.TestCase): method testCommitment_GS08 (line 10) | def testCommitment_GS08(self): FILE: charm/test/schemes/commit/commit_pedersen92_test.py class CM_Ped92Test (line 10) | class CM_Ped92Test(unittest.TestCase): method testCM_Ped92 (line 11) | def testCM_Ped92(self): FILE: charm/test/schemes/dabe_aw11_test.py class DabeTest (line 9) | class DabeTest(unittest.TestCase): method testDabe (line 10) | def testDabe(self): FILE: charm/test/schemes/encap_bchk05_test.py class EncapBCHKTest (line 5) | class EncapBCHKTest(unittest.TestCase): method testEncapBCHK (line 6) | def testEncapBCHK(self): FILE: charm/test/schemes/grpsig/groupsig_bgls04_test.py class BGLS04Test (line 9) | class BGLS04Test(unittest.TestCase): method testBGLS04 (line 10) | def testBGLS04(self): FILE: charm/test/schemes/grpsig/groupsig_bgls04_var_test.py class BGLS04_VarTest (line 9) | class BGLS04_VarTest(unittest.TestCase): method testBGLS04_Var (line 10) | def testBGLS04_Var(self): FILE: charm/test/schemes/hibenc/hibenc_bb04_test.py class HIBE_BB04Test (line 7) | class HIBE_BB04Test(unittest.TestCase): method testHIBE_BB04 (line 8) | def testHIBE_BB04(self): FILE: charm/test/schemes/ibenc/ibenc_bb03_test.py class IBE_BB04Test (line 10) | class IBE_BB04Test(unittest.TestCase): method testIBE_BB04 (line 11) | def testIBE_BB04(self): FILE: charm/test/schemes/ibenc/ibenc_bf01_test.py class IBE_BonehFranklinTest (line 9) | class IBE_BonehFranklinTest(unittest.TestCase): method testIBE_BonehFranklin (line 10) | def testIBE_BonehFranklin(self): FILE: charm/test/schemes/ibenc/ibenc_ckrs09_test.py class IBE_CKRSTest (line 9) | class IBE_CKRSTest(unittest.TestCase): method testIBE_CKRS (line 10) | def testIBE_CKRS(self): FILE: charm/test/schemes/ibenc/ibenc_lsw08_test.py class IBE_RevokeTest (line 9) | class IBE_RevokeTest(unittest.TestCase): method testIBE_Revoke (line 10) | def testIBE_Revoke(self): FILE: charm/test/schemes/ibenc/ibenc_sw05_test.py class IBE_SW05_LUCTest (line 9) | class IBE_SW05_LUCTest(unittest.TestCase): method testIBE_SW05_LUC (line 10) | def testIBE_SW05_LUC(self): FILE: charm/test/schemes/ibenc/ibenc_waters05_test.py class IBE_N04Test (line 10) | class IBE_N04Test(unittest.TestCase): method testIBE_N04 (line 11) | def testIBE_N04(self): FILE: charm/test/schemes/ibenc/ibenc_waters09_test.py class DSE09Test (line 9) | class DSE09Test(unittest.TestCase): method testDSE09 (line 10) | def testDSE09(self): FILE: charm/test/schemes/pk_vrf_test.py class VRF10Test (line 6) | class VRF10Test(unittest.TestCase): method testVRF10 (line 7) | def testVRF10(self): FILE: charm/test/schemes/pkenc_test.py class BCHKIBEncTest (line 24) | class BCHKIBEncTest(unittest.TestCase): method testBCHKIBEnc (line 25) | def testBCHKIBEnc(self): class CHK04Test (line 51) | class CHK04Test(unittest.TestCase): method testCHK04 (line 52) | def testCHK04(self): class HybridEncTest (line 73) | class HybridEncTest(unittest.TestCase): method testHybridEnc (line 74) | def testHybridEnc(self): class EC_CS98Test (line 88) | class EC_CS98Test(unittest.TestCase): method testEC_CS98 (line 89) | def testEC_CS98(self): class CS98Test (line 103) | class CS98Test(unittest.TestCase): method testCS98 (line 104) | def testCS98(self): class ElGamalTest (line 119) | class ElGamalTest(unittest.TestCase): method testElGamal (line 120) | def testElGamal(self): method testElGamal (line 132) | def testElGamal(self): class ElGamalTest (line 131) | class ElGamalTest(unittest.TestCase): method testElGamal (line 120) | def testElGamal(self): method testElGamal (line 132) | def testElGamal(self): class Pai99Test (line 144) | class Pai99Test(unittest.TestCase): method testPai99 (line 145) | def testPai99(self): class Rabin_EncTest (line 200) | class Rabin_EncTest(unittest.TestCase): method testRabin_Enc (line 202) | def testRabin_Enc(self): class Rabin_SigTest (line 219) | class Rabin_SigTest(unittest.TestCase): method testRabin_Sig (line 221) | def testRabin_Sig(self): class RSA_EncTest (line 229) | class RSA_EncTest(unittest.TestCase): method testRSA_Enc (line 230) | def testRSA_Enc(self): class RSA_SigTest (line 245) | class RSA_SigTest(unittest.TestCase): method testRSA_Sig (line 246) | def testRSA_Sig(self): FILE: charm/test/schemes/pksig_test.py class PKSig_Naor01Test (line 29) | class PKSig_Naor01Test(unittest.TestCase): method testPKSig_Naor01 (line 30) | def testPKSig_Naor01(self): class BLS01Test (line 50) | class BLS01Test(unittest.TestCase): method testBLS04 (line 51) | def testBLS04(self): class BoyenTest (line 66) | class BoyenTest(unittest.TestCase): method testBoyen (line 67) | def testBoyen(self): class CHCHTest (line 95) | class CHCHTest(unittest.TestCase): method testCHCH (line 96) | def testCHCH(self): class CHPTest (line 117) | class CHPTest(unittest.TestCase): method testCHP (line 118) | def testCHP(self): class CL03Test (line 138) | class CL03Test(unittest.TestCase): method testCL03 (line 139) | def testCL03(self): class CL04Test (line 160) | class CL04Test(unittest.TestCase): method testCL04 (line 161) | def testCL04(self): class CYHTest (line 181) | class CYHTest(unittest.TestCase): method testCYH (line 182) | def testCYH(self): class DSATest (line 204) | class DSATest(unittest.TestCase): method testDSA (line 205) | def testDSA(self): class ECDSATest (line 217) | class ECDSATest(unittest.TestCase): method testECDSA (line 218) | def testECDSA(self): class HessTest (line 229) | class HessTest(unittest.TestCase): method testHess (line 230) | def testHess(self): class HWTest (line 251) | class HWTest(unittest.TestCase): method testHW (line 252) | def testHW(self): class SchnorrSigTest (line 300) | class SchnorrSigTest(unittest.TestCase): method testSchnorrSig (line 301) | def testSchnorrSig(self): class IBE_N04_SigTest (line 317) | class IBE_N04_SigTest(unittest.TestCase): method testIBE_N04_Sig (line 318) | def testIBE_N04_Sig(self): class IBEWaters09Test (line 338) | class IBEWaters09Test(unittest.TestCase): method testIBEWaters09 (line 339) | def testIBEWaters09(self): class WatersSigTest (line 354) | class WatersSigTest(unittest.TestCase): method testWatersSig (line 355) | def testWatersSig(self): FILE: charm/test/schemes/rsa_alg_test.py class Test (line 13) | class Test(unittest.TestCase): method testRSAEnc (line 16) | def testRSAEnc(self): method testRSAVector (line 28) | def testRSAVector(self): method testRSASig (line 175) | def testRSASig(self): method testPSSVector (line 185) | def testPSSVector(self): FILE: charm/test/schemes/threshold_test.py class TestSimpleOT (line 60) | class TestSimpleOT(unittest.TestCase): method setUp (line 63) | def setUp(self): method test_ot_choice_zero (line 66) | def test_ot_choice_zero(self): method test_ot_choice_one (line 87) | def test_ot_choice_one(self): method test_ot_multiple_transfers (line 108) | def test_ot_multiple_transfers(self): method test_ot_invalid_point_rejected (line 124) | def test_ot_invalid_point_rejected(self): method test_ot_reset_sender (line 150) | def test_ot_reset_sender(self): class TestOTExtension (line 173) | class TestOTExtension(unittest.TestCase): method setUp (line 176) | def setUp(self): method _run_base_ot_setup (line 179) | def _run_base_ot_setup(self, sender_ext, receiver_ext): method test_ot_extension_basic (line 196) | def test_ot_extension_basic(self): method test_ot_extension_alternating_bits (line 221) | def test_ot_extension_alternating_bits(self): method test_base_ot_required_for_sender_init (line 247) | def test_base_ot_required_for_sender_init(self): method test_base_ot_required_for_receiver_extend (line 255) | def test_base_ot_required_for_receiver_extend(self): method test_sender_s_not_exposed (line 263) | def test_sender_s_not_exposed(self): class TestMtA (line 279) | class TestMtA(unittest.TestCase): method setUp (line 282) | def setUp(self): method test_mta_correctness (line 285) | def test_mta_correctness(self): method test_mta_multiple_invocations (line 313) | def test_mta_multiple_invocations(self): method test_mta_uses_real_ot (line 329) | def test_mta_uses_real_ot(self): method test_mta_edge_case_near_order (line 358) | def test_mta_edge_case_near_order(self): method test_mta_return_types (line 399) | def test_mta_return_types(self): class TestMtAwc (line 436) | class TestMtAwc(unittest.TestCase): method setUp (line 439) | def setUp(self): method test_mtawc_correctness (line 442) | def test_mtawc_correctness(self): method test_mtawc_proof_does_not_reveal_sender_bits (line 464) | def test_mtawc_proof_does_not_reveal_sender_bits(self): class TestThresholdSharing (line 494) | class TestThresholdSharing(unittest.TestCase): method setUp (line 497) | def setUp(self): method test_basic_sharing_and_reconstruction (line 501) | def test_basic_sharing_and_reconstruction(self): method test_feldman_vss_verification (line 519) | def test_feldman_vss_verification(self): method test_feldman_vss_detects_invalid_share (line 531) | def test_feldman_vss_detects_invalid_share(self): method test_threshold_3_of_5 (line 545) | def test_threshold_3_of_5(self): method test_insufficient_shares_raises_error (line 556) | def test_insufficient_shares_raises_error(self): method test_invalid_threshold_raises_error (line 565) | def test_invalid_threshold_raises_error(self): method test_threshold_limit_validation (line 577) | def test_threshold_limit_validation(self): class TestPedersenVSS (line 592) | class TestPedersenVSS(unittest.TestCase): method setUp (line 595) | def setUp(self): method test_pedersen_vss_verification (line 599) | def test_pedersen_vss_verification(self): method test_pedersen_vss_reconstruction (line 612) | def test_pedersen_vss_reconstruction(self): class TestDKLS23_DKG (line 625) | class TestDKLS23_DKG(unittest.TestCase): method setUp (line 628) | def setUp(self): method test_2_of_3_dkg (line 631) | def test_2_of_3_dkg(self): method test_all_parties_same_pubkey (line 665) | def test_all_parties_same_pubkey(self): method test_dkg_computes_correct_public_key (line 691) | def test_dkg_computes_correct_public_key(self): method test_dkg_rejects_none_session_id (line 711) | def test_dkg_rejects_none_session_id(self): method test_dkg_rejects_empty_session_id (line 720) | def test_dkg_rejects_empty_session_id(self): class TestDKLS23_Presign (line 731) | class TestDKLS23_Presign(unittest.TestCase): method setUp (line 734) | def setUp(self): method test_presign_generates_valid_presignature (line 738) | def test_presign_generates_valid_presignature(self): method test_presignatures_have_same_r (line 798) | def test_presignatures_have_same_r(self): method test_presign_rejects_none_session_id (line 846) | def test_presign_rejects_none_session_id(self): method test_presign_rejects_empty_session_id (line 856) | def test_presign_rejects_empty_session_id(self): class TestDKLS23_Sign (line 868) | class TestDKLS23_Sign(unittest.TestCase): method setUp (line 871) | def setUp(self): method test_signature_share_generation (line 876) | def test_signature_share_generation(self): method test_signature_verification_correct (line 900) | def test_signature_verification_correct(self): method test_signature_verification_wrong_message (line 919) | def test_signature_verification_wrong_message(self): method test_signature_share_verification (line 938) | def test_signature_share_verification(self): class TestDKLS23_Complete (line 1009) | class TestDKLS23_Complete(unittest.TestCase): method setUp (line 1012) | def setUp(self): method test_complete_2_of_3_signing (line 1015) | def test_complete_2_of_3_signing(self): method test_different_participant_combinations (line 1041) | def test_different_participant_combinations(self): method test_signature_is_standard_ecdsa (line 1059) | def test_signature_is_standard_ecdsa(self): method test_wrong_message_fails_verification (line 1078) | def test_wrong_message_fails_verification(self): method test_insufficient_participants_raises_error (line 1093) | def test_insufficient_participants_raises_error(self): method test_3_of_5_threshold (line 1104) | def test_3_of_5_threshold(self): method test_multiple_messages_same_keys (line 1120) | def test_multiple_messages_same_keys(self): method test_invalid_threshold_raises_error (line 1141) | def test_invalid_threshold_raises_error(self): method test_keygen_interface (line 1151) | def test_keygen_interface(self): class TestCurveAgnostic (line 1162) | class TestCurveAgnostic(unittest.TestCase): method test_curve_agnostic_prime256v1 (line 1165) | def test_curve_agnostic_prime256v1(self): class TestThresholdSignature (line 1188) | class TestThresholdSignature(unittest.TestCase): method setUp (line 1191) | def setUp(self): method test_signature_equality (line 1194) | def test_signature_equality(self): method test_signature_inequality (line 1204) | def test_signature_inequality(self): method test_der_encoding (line 1216) | def test_der_encoding(self): class TestMaliciousParties (line 1229) | class TestMaliciousParties(unittest.TestCase): method setUpClass (line 1241) | def setUpClass(cls): method test_dkg_invalid_share_detected (line 1245) | def test_dkg_invalid_share_detected(self): method test_dkg_wrong_commitment_detected (line 1286) | def test_dkg_wrong_commitment_detected(self): method test_presign_commitment_mismatch_detected (line 1324) | def test_presign_commitment_mismatch_detected(self): method test_signature_invalid_share_produces_invalid_sig (line 1387) | def test_signature_invalid_share_produces_invalid_sig(self): method test_mta_receiver_learns_only_chosen_message (line 1501) | def test_mta_receiver_learns_only_chosen_message(self): method test_dkg_insufficient_honest_parties (line 1550) | def test_dkg_insufficient_honest_parties(self): class TestDPF (line 1608) | class TestDPF(unittest.TestCase): method test_dpf_single_point (line 1611) | def test_dpf_single_point(self): method test_dpf_off_points (line 1622) | def test_dpf_off_points(self): method test_dpf_full_eval (line 1634) | def test_dpf_full_eval(self): method test_dpf_key_independence (line 1648) | def test_dpf_key_independence(self): class TestMPFSS (line 1665) | class TestMPFSS(unittest.TestCase): method test_mpfss_single_point (line 1668) | def test_mpfss_single_point(self): method test_mpfss_multiple_points (line 1684) | def test_mpfss_multiple_points(self): method test_mpfss_full_eval (line 1702) | def test_mpfss_full_eval(self): method test_mpfss_empty (line 1717) | def test_mpfss_empty(self): class TestSilentOT (line 1730) | class TestSilentOT(unittest.TestCase): method test_silent_ot_basic (line 1733) | def test_silent_ot_basic(self): method test_silent_ot_larger (line 1751) | def test_silent_ot_larger(self): method test_silent_ot_choice_distribution (line 1765) | def test_silent_ot_choice_distribution(self): method test_silent_ot_messages_32_bytes (line 1776) | def test_silent_ot_messages_32_bytes(self): method test_silent_ot_different_messages (line 1791) | def test_silent_ot_different_messages(self): class TestGG18_DKG (line 1803) | class TestGG18_DKG(unittest.TestCase): method setUp (line 1806) | def setUp(self): method test_2_of_3_dkg (line 1811) | def test_2_of_3_dkg(self): method test_all_parties_same_pubkey (line 1845) | def test_all_parties_same_pubkey(self): class TestGG18_Sign (line 1872) | class TestGG18_Sign(unittest.TestCase): method setUp (line 1875) | def setUp(self): method test_signature_verification_correct (line 1880) | def test_signature_verification_correct(self): method test_signature_verification_wrong_message (line 1900) | def test_signature_verification_wrong_message(self): class TestGG18_Complete (line 1920) | class TestGG18_Complete(unittest.TestCase): method setUp (line 1923) | def setUp(self): method test_complete_2_of_3_signing (line 1928) | def test_complete_2_of_3_signing(self): method test_different_participant_combinations (line 1949) | def test_different_participant_combinations(self): method test_3_of_5_threshold (line 1965) | def test_3_of_5_threshold(self): class TestCGGMP21_Proofs (line 1981) | class TestCGGMP21_Proofs(unittest.TestCase): method setUp (line 1984) | def setUp(self): method test_ring_pedersen_generation (line 1989) | def test_ring_pedersen_generation(self): class TestCGGMP21_DKG (line 2000) | class TestCGGMP21_DKG(unittest.TestCase): method setUp (line 2003) | def setUp(self): method test_2_of_3_dkg (line 2008) | def test_2_of_3_dkg(self): method test_all_parties_same_pubkey (line 2043) | def test_all_parties_same_pubkey(self): class TestCGGMP21_Presign (line 2071) | class TestCGGMP21_Presign(unittest.TestCase): method setUp (line 2074) | def setUp(self): method test_presign_generates_valid_presignature (line 2079) | def test_presign_generates_valid_presignature(self): class TestCGGMP21_Complete (line 2140) | class TestCGGMP21_Complete(unittest.TestCase): method setUp (line 2143) | def setUp(self): method test_complete_2_of_3_with_presigning (line 2148) | def test_complete_2_of_3_with_presigning(self): method test_different_participant_combinations (line 2175) | def test_different_participant_combinations(self): method test_3_of_5_threshold (line 2193) | def test_3_of_5_threshold(self): class TestCGGMP21_IdentifiableAbort (line 2211) | class TestCGGMP21_IdentifiableAbort(unittest.TestCase): method setUp (line 2214) | def setUp(self): method test_security_abort_exception (line 2217) | def test_security_abort_exception(self): method test_security_abort_with_evidence (line 2227) | def test_security_abort_with_evidence(self): FILE: charm/test/serialize/serialize_test.py class SerializeTest (line 10) | class SerializeTest(unittest.TestCase): method testIntegerGroup (line 11) | def testIntegerGroup(self): method testPairingGroup (line 21) | def testPairingGroup(self): method testECGroup (line 30) | def testECGroup(self): FILE: charm/test/toolbox/conversion_test.py class ConversionTest (line 9) | class ConversionTest(unittest.TestCase): method testOS2IP (line 12) | def testOS2IP(self): method testIP2OS (line 17) | def testIP2OS(self): method testIP2OSLen (line 22) | def testIP2OSLen(self): FILE: charm/test/toolbox/ecgroup_test.py class ECGroupEncodeAndDecode (line 12) | class ECGroupEncodeAndDecode(unittest.TestCase): method testRandomGroupDecode (line 13) | def testRandomGroupDecode(self): method testRandomMessageDecode (line 22) | def testRandomMessageDecode(self): method testBadMessage1Decode (line 31) | def testBadMessage1Decode(self): method testBadMessage2Decode (line 38) | def testBadMessage2Decode(self): method testBadMessage3Decode (line 45) | def testBadMessage3Decode(self): FILE: charm/test/toolbox/integer_arithmetic_test.py class IntegerConversionTest (line 24) | class IntegerConversionTest(unittest.TestCase): method test_common_rsa_exponents (line 27) | def test_common_rsa_exponents(self): method test_small_values (line 36) | def test_small_values(self): method test_large_values (line 44) | def test_large_values(self): method test_negative_values (line 61) | def test_negative_values(self): method test_round_trip_conversion (line 69) | def test_round_trip_conversion(self): method test_integer_from_integer (line 83) | def test_integer_from_integer(self): class GCDOperationsTest (line 91) | class GCDOperationsTest(unittest.TestCase): method test_gcd_python_ints (line 94) | def test_gcd_python_ints(self): method test_gcd_integer_objects (line 108) | def test_gcd_integer_objects(self): method test_gcd_mixed_types (line 115) | def test_gcd_mixed_types(self): method test_gcd_edge_cases (line 123) | def test_gcd_edge_cases(self): class IsCoPrimeTest (line 135) | class IsCoPrimeTest(unittest.TestCase): method test_coprime_common_exponents (line 138) | def test_coprime_common_exponents(self): method test_coprime_with_integer_objects (line 151) | def test_coprime_with_integer_objects(self): method test_coprime_edge_cases (line 158) | def test_coprime_edge_cases(self): class ModularArithmeticTest (line 168) | class ModularArithmeticTest(unittest.TestCase): method test_modular_inverse_basic (line 171) | def test_modular_inverse_basic(self): method test_modular_inverse_rsa_exponent (line 181) | def test_modular_inverse_rsa_exponent(self): method test_modular_operations_respect_modulus (line 191) | def test_modular_operations_respect_modulus(self): method test_modular_exponentiation (line 200) | def test_modular_exponentiation(self): method test_integer_without_modulus (line 207) | def test_integer_without_modulus(self): class Python312CompatibilityTest (line 216) | class Python312CompatibilityTest(unittest.TestCase): method test_65537_regression (line 223) | def test_65537_regression(self): method test_multi_digit_integers (line 234) | def test_multi_digit_integers(self): method test_sign_handling (line 256) | def test_sign_handling(self): method test_digit_boundary_values (line 282) | def test_digit_boundary_values(self): method test_mpz_to_pylong_roundtrip (line 294) | def test_mpz_to_pylong_roundtrip(self): class IntegrationSchemeTest (line 307) | class IntegrationSchemeTest(unittest.TestCase): method test_rsa_coprime_search_pattern (line 310) | def test_rsa_coprime_search_pattern(self): method test_rsa_encryption_decryption_pattern (line 341) | def test_rsa_encryption_decryption_pattern(self): method test_paillier_pattern (line 358) | def test_paillier_pattern(self): method test_serialization_roundtrip (line 379) | def test_serialization_roundtrip(self): class ArithmeticOperationsTest (line 390) | class ArithmeticOperationsTest(unittest.TestCase): method test_addition (line 393) | def test_addition(self): method test_subtraction (line 400) | def test_subtraction(self): method test_multiplication (line 407) | def test_multiplication(self): method test_division (line 414) | def test_division(self): method test_exponentiation (line 420) | def test_exponentiation(self): method test_comparison (line 425) | def test_comparison(self): FILE: charm/test/toolbox/paddingschemes_test.py class PaddingSchemesTest (line 10) | class PaddingSchemesTest(unittest.TestCase): method testOEAPVector1 (line 12) | def testOEAPVector1(self): method testOAEPRoundTripEquiv (line 61) | def testOAEPRoundTripEquiv(self): method testMFGLength (line 70) | def testMFGLength(self): method testMFGvector (line 79) | def testMFGvector(self): method testSHA1Vector (line 92) | def testSHA1Vector(self): method testPSSRountTripEquiv (line 106) | def testPSSRountTripEquiv(self): method testPSSTestVector (line 112) | def testPSSTestVector(self): method suite (line 212) | def suite(self): class Pkcs7PaddingTest (line 216) | class Pkcs7PaddingTest(unittest.TestCase): method setUp (line 217) | def setUp(self): method encodecode (line 219) | def encodecode(self,text): method testBasic (line 227) | def testBasic(self): method testEmpty (line 229) | def testEmpty(self): method testFull (line 231) | def testFull(self): method testLarge (line 233) | def testLarge(self): FILE: charm/test/toolbox/policy_parser_stress_test.py class PolicyParserStressTest (line 29) | class PolicyParserStressTest(unittest.TestCase): method setUpClass (line 33) | def setUpClass(cls): method test_single_attribute (line 42) | def test_single_attribute(self): method test_attribute_with_index (line 57) | def test_attribute_with_index(self): method test_basic_and (line 65) | def test_basic_and(self): method test_basic_or (line 71) | def test_basic_or(self): method test_nested_expressions (line 77) | def test_nested_expressions(self): method test_negated_attributes (line 90) | def test_negated_attributes(self): method test_deep_nesting (line 101) | def test_deep_nesting(self): method test_many_attributes (line 109) | def test_many_attributes(self): method test_wide_or_tree (line 119) | def test_wide_or_tree(self): method test_balanced_tree (line 125) | def test_balanced_tree(self): method test_random_policies (line 132) | def test_random_policies(self): method test_prune_and_policy (line 146) | def test_prune_and_policy(self): method test_prune_or_policy (line 159) | def test_prune_or_policy(self): method test_prune_complex_policy (line 173) | def test_prune_complex_policy(self): method test_msp_simple_and (line 193) | def test_msp_simple_and(self): method test_msp_simple_or (line 204) | def test_msp_simple_or(self): method test_msp_complex_policy (line 215) | def test_msp_complex_policy(self): method test_msp_coefficient_recovery (line 225) | def test_msp_coefficient_recovery(self): method test_duplicate_attributes (line 237) | def test_duplicate_attributes(self): method test_duplicate_labeling (line 247) | def test_duplicate_labeling(self): method test_special_characters_in_attributes (line 262) | def test_special_characters_in_attributes(self): method test_underscore_limitation (line 281) | def test_underscore_limitation(self): method test_parsing_performance (line 292) | def test_parsing_performance(self): method test_msp_conversion_performance (line 305) | def test_msp_conversion_performance(self): method _generate_random_policy (line 323) | def _generate_random_policy(self, depth: int, max_attrs: int) -> str: class PolicyParserEdgeCaseTest (line 336) | class PolicyParserEdgeCaseTest(unittest.TestCase): method setUpClass (line 340) | def setUpClass(cls): method test_case_insensitive_operators (line 343) | def test_case_insensitive_operators(self): method test_whitespace_handling (line 350) | def test_whitespace_handling(self): method test_parentheses_variations (line 361) | def test_parentheses_variations(self): class NumericAttributeTest (line 375) | class NumericAttributeTest(unittest.TestCase): method setUpClass (line 379) | def setUpClass(cls): method test_greater_than (line 385) | def test_greater_than(self): method test_greater_than_or_equal (line 405) | def test_greater_than_or_equal(self): method test_less_than (line 422) | def test_less_than(self): method test_less_than_or_equal (line 439) | def test_less_than_or_equal(self): method test_equality (line 456) | def test_equality(self): method test_compound_numeric_policy (line 473) | def test_compound_numeric_policy(self): method test_mixed_numeric_and_string_policy (line 490) | def test_mixed_numeric_and_string_policy(self): method test_bit_encoding_correctness (line 504) | def test_bit_encoding_correctness(self): method test_boundary_values (line 514) | def test_boundary_values(self): method test_zero_comparisons (line 528) | def test_zero_comparisons(self): class NumericAttributeEdgeCaseTest (line 541) | class NumericAttributeEdgeCaseTest(unittest.TestCase): method setUp (line 544) | def setUp(self): method test_bit_overflow_in_expand (line 564) | def test_bit_overflow_in_expand(self): method test_bit_overflow_in_user_attributes (line 569) | def test_bit_overflow_in_user_attributes(self): method test_bit_overflow_error_in_int_to_bits (line 574) | def test_bit_overflow_error_in_int_to_bits(self): method test_boundary_value_at_max (line 579) | def test_boundary_value_at_max(self): method test_boundary_value_just_over_max (line 585) | def test_boundary_value_just_over_max(self): method test_negative_value_in_expand (line 591) | def test_negative_value_in_expand(self): method test_negative_value_in_user_attributes (line 596) | def test_negative_value_in_user_attributes(self): method test_negative_value_message (line 601) | def test_negative_value_message(self): method test_invalid_operator_exclamation_equal (line 609) | def test_invalid_operator_exclamation_equal(self): method test_invalid_operator_not_equal_diamond (line 614) | def test_invalid_operator_not_equal_diamond(self): method test_invalid_operator_tilde (line 619) | def test_invalid_operator_tilde(self): method test_valid_operators_all_work (line 624) | def test_valid_operators_all_work(self): method test_zero_bit_width (line 631) | def test_zero_bit_width(self): method test_negative_bit_width (line 636) | def test_negative_bit_width(self): method test_excessive_bit_width (line 641) | def test_excessive_bit_width(self): method test_non_integer_bit_width (line 646) | def test_non_integer_bit_width(self): method test_string_bit_width (line 651) | def test_string_bit_width(self): method test_attribute_name_with_encoding_pattern (line 657) | def test_attribute_name_with_encoding_pattern(self): method test_attribute_name_with_partial_pattern (line 662) | def test_attribute_name_with_partial_pattern(self): method test_valid_attribute_names (line 667) | def test_valid_attribute_names(self): method test_none_policy (line 676) | def test_none_policy(self): method test_empty_policy (line 681) | def test_empty_policy(self): method test_whitespace_only_policy (line 686) | def test_whitespace_only_policy(self): method test_policy_without_numeric (line 691) | def test_policy_without_numeric(self): method test_extra_spaces_around_operator (line 698) | def test_extra_spaces_around_operator(self): method test_no_spaces_around_operator (line 705) | def test_no_spaces_around_operator(self): method test_mixed_spacing (line 711) | def test_mixed_spacing(self): method test_multiple_parentheses (line 719) | def test_multiple_parentheses(self): method test_attr_name_all_caps (line 726) | def test_attr_name_all_caps(self): method test_attr_name_mixed_case (line 732) | def test_attr_name_mixed_case(self): method test_strict_mode_raises_on_overflow (line 739) | def test_strict_mode_raises_on_overflow(self): method test_non_strict_mode_continues_on_error (line 745) | def test_non_strict_mode_continues_on_error(self): method test_strict_helper_raises_on_overflow (line 755) | def test_strict_helper_raises_on_overflow(self): method test_greater_than_zero (line 761) | def test_greater_than_zero(self): method test_greater_equal_zero_is_tautology (line 766) | def test_greater_equal_zero_is_tautology(self): method test_less_than_zero_is_contradiction (line 772) | def test_less_than_zero_is_contradiction(self): method test_equal_zero (line 778) | def test_equal_zero(self): method test_helper_max_value_property (line 786) | def test_helper_max_value_property(self): class NumericNegationTest (line 794) | class NumericNegationTest(unittest.TestCase): method setUp (line 797) | def setUp(self): method test_negate_greater_equal (line 810) | def test_negate_greater_equal(self): method test_negate_greater_than (line 815) | def test_negate_greater_than(self): method test_negate_less_equal (line 820) | def test_negate_less_equal(self): method test_negate_less_than (line 825) | def test_negate_less_than(self): method test_negate_equality (line 830) | def test_negate_equality(self): method test_negate_to_policy_simple (line 836) | def test_negate_to_policy_simple(self): method test_negate_to_policy_equality (line 843) | def test_negate_to_policy_equality(self): method test_negate_invalid_operator (line 849) | def test_negate_invalid_operator(self): method test_helper_negate_comparison (line 855) | def test_helper_negate_comparison(self): method test_helper_expand_negated_policy_simple (line 860) | def test_helper_expand_negated_policy_simple(self): method test_helper_expand_negated_policy_equality (line 867) | def test_helper_expand_negated_policy_equality(self): method test_negated_policy_satisfaction (line 876) | def test_negated_policy_satisfaction(self): method test_negated_equality_satisfaction (line 897) | def test_negated_equality_satisfaction(self): method test_negate_at_zero (line 918) | def test_negate_at_zero(self): method test_negate_at_max (line 928) | def test_negate_at_max(self): function run_stress_test (line 935) | def run_stress_test(): FILE: charm/test/toolbox/secretshare_test.py class SecretShareTest (line 7) | class SecretShareTest(unittest.TestCase): method testSecretShare (line 8) | def testSecretShare(self): FILE: charm/test/toolbox/symcrypto_test.py class SymmetricCryptoAbstractionTest (line 5) | class SymmetricCryptoAbstractionTest(unittest.TestCase): method testAESCBC (line 7) | def testAESCBC(self): method testAESCBCLong (line 10) | def testAESCBCLong(self): method testAESCBC_Seperate (line 15) | def testAESCBC_Seperate(self): method MsgtestAESCBC (line 20) | def MsgtestAESCBC(self,msg): method MsgTestAESCBCSeperate (line 27) | def MsgTestAESCBCSeperate(self,msg): class AuthenticatedCryptoAbstractionTest (line 36) | class AuthenticatedCryptoAbstractionTest(unittest.TestCase): method testAESCBC (line 38) | def testAESCBC(self): method testAESCBCLong (line 41) | def testAESCBCLong(self): method testAESCBC_Seperate (line 45) | def testAESCBC_Seperate(self): method MsgtestAESCBC (line 51) | def MsgtestAESCBC(self,msg): method MsgTestAESCBCSeperate (line 58) | def MsgTestAESCBCSeperate(self,msg): class MessageAuthenticatorTest (line 67) | class MessageAuthenticatorTest(unittest.TestCase): method testSelfVerify (line 68) | def testSelfVerify(self): method testSeperateVerify (line 74) | def testSeperateVerify(self): method testTamperData (line 81) | def testTamperData(self): method testTamperMac (line 89) | def testTamperMac(self): method testTamperAlg (line 97) | def testTamperAlg(self): FILE: charm/test/toolbox/test_policy_expression.py class TestPolicyExpressionSpec (line 8) | class TestPolicyExpressionSpec(unittest.TestCase): method test_policy_expression_spec (line 11) | def test_policy_expression_spec(self, policy_expression): method test_allAND_policy_expressions (line 15) | def test_allAND_policy_expressions(self, policy_expression): FILE: charm/test/vectors/test_bls_vectors.py class TestBLSMathematicalProperties (line 18) | class TestBLSMathematicalProperties(unittest.TestCase): method setUp (line 26) | def setUp(self): method test_signature_verification_equation (line 31) | def test_signature_verification_equation(self): method test_signature_determinism (line 57) | def test_signature_determinism(self): method test_different_messages_different_signatures (line 76) | def test_different_messages_different_signatures(self): method test_wrong_key_verification_fails (line 95) | def test_wrong_key_verification_fails(self): method test_modified_message_verification_fails (line 117) | def test_modified_message_verification_fails(self): method test_bilinearity_property (line 137) | def test_bilinearity_property(self): method test_non_degeneracy (line 156) | def test_non_degeneracy(self): class TestBLSKnownAnswerTests (line 174) | class TestBLSKnownAnswerTests(unittest.TestCase): method setUp (line 182) | def setUp(self): method test_kat_signature_structure (line 187) | def test_kat_signature_structure(self): method test_kat_empty_message (line 205) | def test_kat_empty_message(self): method test_kat_large_message (line 219) | def test_kat_large_message(self): class TestBLSSecurityProperties (line 236) | class TestBLSSecurityProperties(unittest.TestCase): method setUp (line 243) | def setUp(self): method test_identity_element_rejection (line 248) | def test_identity_element_rejection(self): method test_random_signature_rejection (line 269) | def test_random_signature_rejection(self): FILE: charm/test/vectors/test_pedersen_vectors.py class TestPedersenMathematicalProperties (line 16) | class TestPedersenMathematicalProperties(unittest.TestCase): method setUp (line 25) | def setUp(self): method test_commitment_correctness (line 32) | def test_commitment_correctness(self): method test_decommitment_verification (line 49) | def test_decommitment_verification(self): method test_wrong_message_decommit_fails (line 65) | def test_wrong_message_decommit_fails(self): method test_wrong_randomness_decommit_fails (line 84) | def test_wrong_randomness_decommit_fails(self): method test_different_randomness_different_commitments (line 100) | def test_different_randomness_different_commitments(self): method test_homomorphic_property (line 117) | def test_homomorphic_property(self): method test_homomorphic_decommit (line 140) | def test_homomorphic_decommit(self): class TestPedersenEdgeCases (line 162) | class TestPedersenEdgeCases(unittest.TestCase): method setUp (line 167) | def setUp(self): method test_zero_message (line 173) | def test_zero_message(self): method test_one_message (line 187) | def test_one_message(self): method test_negative_message (line 201) | def test_negative_message(self): class TestPedersenSecurityProperties (line 217) | class TestPedersenSecurityProperties(unittest.TestCase): method setUp (line 222) | def setUp(self): method test_generators_are_independent (line 228) | def test_generators_are_independent(self): method test_commitment_not_identity (line 240) | def test_commitment_not_identity(self): method test_random_commitment_does_not_verify (line 254) | def test_random_commitment_does_not_verify(self): class TestPedersenMultipleRuns (line 270) | class TestPedersenMultipleRuns(unittest.TestCase): method setUp (line 275) | def setUp(self): method test_multiple_commitments_all_verify (line 281) | def test_multiple_commitments_all_verify(self): method test_all_commitments_unique (line 295) | def test_all_commitments_unique(self): FILE: charm/test/vectors/test_schnorr_vectors.py class TestSchnorrMathematicalProperties (line 18) | class TestSchnorrMathematicalProperties(unittest.TestCase): method setUp (line 26) | def setUp(self): method test_completeness_interactive (line 30) | def test_completeness_interactive(self): method test_completeness_non_interactive (line 62) | def test_completeness_non_interactive(self): method test_soundness_wrong_witness (line 83) | def test_soundness_wrong_witness(self): method test_verification_equation (line 105) | def test_verification_equation(self): method test_challenge_binding (line 127) | def test_challenge_binding(self): method test_zero_knowledge_simulation (line 152) | def test_zero_knowledge_simulation(self): class TestSchnorrEdgeCases (line 185) | class TestSchnorrEdgeCases(unittest.TestCase): method setUp (line 190) | def setUp(self): method test_identity_commitment_rejection (line 194) | def test_identity_commitment_rejection(self): method test_zero_secret (line 220) | def test_zero_secret(self): method test_one_secret (line 237) | def test_one_secret(self): method test_large_secret (line 253) | def test_large_secret(self): class TestSchnorrSerialization (line 271) | class TestSchnorrSerialization(unittest.TestCase): method setUp (line 276) | def setUp(self): method test_serialize_deserialize_roundtrip (line 280) | def test_serialize_deserialize_roundtrip(self): method test_serialized_proof_is_bytes (line 303) | def test_serialized_proof_is_bytes(self): class TestSchnorrMultipleRuns (line 320) | class TestSchnorrMultipleRuns(unittest.TestCase): method setUp (line 325) | def setUp(self): method test_multiple_proofs_all_verify (line 329) | def test_multiple_proofs_all_verify(self): method test_different_generators (line 346) | def test_different_generators(self): FILE: charm/test/zkp_compiler/benchmark_zkp.py function benchmark_schnorr (line 28) | def benchmark_schnorr(group, iterations=ITERATIONS): function benchmark_dleq (line 54) | def benchmark_dleq(group, iterations=ITERATIONS): function benchmark_representation (line 82) | def benchmark_representation(group, iterations=ITERATIONS): function benchmark_and (line 110) | def benchmark_and(group, iterations=ITERATIONS): function benchmark_or (line 146) | def benchmark_or(group, iterations=ITERATIONS): function benchmark_range (line 173) | def benchmark_range(group, iterations=ITERATIONS): function run_benchmarks (line 200) | def run_benchmarks(): function print_results_table (line 226) | def print_results_table(results): FILE: charm/test/zkp_compiler/test_and_proof.py class TestANDProofNonInteractive (line 16) | class TestANDProofNonInteractive(unittest.TestCase): method setUp (line 19) | def setUp(self): method test_two_schnorr_proofs (line 23) | def test_two_schnorr_proofs(self): method test_three_schnorr_proofs (line 51) | def test_three_schnorr_proofs(self): method test_mixed_proof_types (line 81) | def test_mixed_proof_types(self): method test_wrong_secret_fails (line 112) | def test_wrong_secret_fails(self): method test_tampered_proof_fails (line 136) | def test_tampered_proof_fails(self): method test_empty_statements_fails (line 168) | def test_empty_statements_fails(self): class TestANDProofSerialization (line 174) | class TestANDProofSerialization(unittest.TestCase): method setUp (line 177) | def setUp(self): method test_serialization_roundtrip (line 181) | def test_serialization_roundtrip(self): method test_serialized_proof_verifies (line 208) | def test_serialized_proof_verifies(self): FILE: charm/test/zkp_compiler/test_batch_verify.py class TestBatchVerifySchnorr (line 19) | class TestBatchVerifySchnorr(unittest.TestCase): method setUp (line 22) | def setUp(self): method _create_valid_schnorr_proof (line 27) | def _create_valid_schnorr_proof(self): method _create_invalid_schnorr_proof (line 34) | def _create_invalid_schnorr_proof(self): method test_batch_verify_all_valid (line 42) | def test_batch_verify_all_valid(self): method test_batch_verify_one_invalid (line 48) | def test_batch_verify_one_invalid(self): method test_batch_verify_empty (line 55) | def test_batch_verify_empty(self): method test_batch_verify_single (line 60) | def test_batch_verify_single(self): method test_batch_verify_many (line 66) | def test_batch_verify_many(self): class TestBatchVerifyDLEQ (line 73) | class TestBatchVerifyDLEQ(unittest.TestCase): method setUp (line 76) | def setUp(self): method _create_valid_dleq_proof (line 82) | def _create_valid_dleq_proof(self): method _create_invalid_dleq_proof (line 90) | def _create_invalid_dleq_proof(self): method test_batch_verify_all_valid (line 99) | def test_batch_verify_all_valid(self): method test_batch_verify_one_invalid (line 105) | def test_batch_verify_one_invalid(self): class TestBatchVerifierClass (line 113) | class TestBatchVerifierClass(unittest.TestCase): method setUp (line 116) | def setUp(self): method test_add_and_verify_schnorr (line 123) | def test_add_and_verify_schnorr(self): method test_add_and_verify_dleq (line 136) | def test_add_and_verify_dleq(self): method test_mixed_proof_types (line 150) | def test_mixed_proof_types(self): method test_clear_batch (line 172) | def test_clear_batch(self): class TestBatchVerifyPerformance (line 200) | class TestBatchVerifyPerformance(unittest.TestCase): method setUp (line 203) | def setUp(self): method test_batch_faster_than_individual (line 208) | def test_batch_faster_than_individual(self): FILE: charm/test/zkp_compiler/test_dleq_proof.py class TestDLEQProofInteractive (line 17) | class TestDLEQProofInteractive(unittest.TestCase): method setUp (line 20) | def setUp(self): method test_prove_and_verify_interactive (line 29) | def test_prove_and_verify_interactive(self): method test_invalid_proof_fails_interactive (line 54) | def test_invalid_proof_fails_interactive(self): method test_prover_commitment_before_response (line 70) | def test_prover_commitment_before_response(self): method test_different_exponents_fail (line 78) | def test_different_exponents_fail(self): class TestDLEQProofNonInteractive (line 100) | class TestDLEQProofNonInteractive(unittest.TestCase): method setUp (line 103) | def setUp(self): method test_non_interactive_proof_valid (line 112) | def test_non_interactive_proof_valid(self): method test_non_interactive_wrong_secret_fails (line 129) | def test_non_interactive_wrong_secret_fails(self): method test_non_interactive_tampered_proof_fails (line 141) | def test_non_interactive_tampered_proof_fails(self): method test_proof_deterministic_verification (line 161) | def test_proof_deterministic_verification(self): method test_mismatched_bases_fail (line 174) | def test_mismatched_bases_fail(self): class TestDLEQProofSerialization (line 192) | class TestDLEQProofSerialization(unittest.TestCase): method setUp (line 195) | def setUp(self): method test_serialization_roundtrip (line 204) | def test_serialization_roundtrip(self): method test_serialized_proof_verifies (line 220) | def test_serialized_proof_verifies(self): class TestDLEQProofWithDifferentGroups (line 237) | class TestDLEQProofWithDifferentGroups(unittest.TestCase): method test_with_bn254_group (line 240) | def test_with_bn254_group(self): method test_with_mnt224_group (line 244) | def test_with_mnt224_group(self): method _test_with_group (line 248) | def _test_with_group(self, curve_name): FILE: charm/test/zkp_compiler/test_or_proof.py class TestORProofNonInteractive (line 15) | class TestORProofNonInteractive(unittest.TestCase): method setUp (line 18) | def setUp(self): method test_prove_first_statement (line 28) | def test_prove_first_statement(self): method test_prove_second_statement (line 47) | def test_prove_second_statement(self): method test_wrong_secret_fails (line 59) | def test_wrong_secret_fails(self): method test_wrong_which_fails (line 71) | def test_wrong_which_fails(self): method test_tampered_proof_fails (line 83) | def test_tampered_proof_fails(self): method test_challenges_sum_correctly (line 105) | def test_challenges_sum_correctly(self): class TestORProofWitnessIndistinguishability (line 122) | class TestORProofWitnessIndistinguishability(unittest.TestCase): method setUp (line 125) | def setUp(self): method test_proofs_look_similar (line 134) | def test_proofs_look_similar(self): method test_verifier_cannot_distinguish (line 157) | def test_verifier_cannot_distinguish(self): class TestORProofSerialization (line 178) | class TestORProofSerialization(unittest.TestCase): method setUp (line 181) | def setUp(self): method test_serialization_roundtrip (line 189) | def test_serialization_roundtrip(self): method test_serialized_proof_verifies (line 212) | def test_serialized_proof_verifies(self): FILE: charm/test/zkp_compiler/test_proof_serialization.py class TestProofSerialization (line 16) | class TestProofSerialization(unittest.TestCase): method setUp (line 19) | def setUp(self): method test_serialize_deserialize_roundtrip (line 26) | def test_serialize_deserialize_roundtrip(self): method test_serialized_proof_is_bytes (line 48) | def test_serialized_proof_is_bytes(self): method test_different_proofs_different_serialization (line 56) | def test_different_proofs_different_serialization(self): method test_deserialize_preserves_proof_type (line 72) | def test_deserialize_preserves_proof_type(self): method test_serialization_with_different_groups (line 83) | def test_serialization_with_different_groups(self): class TestProofSerializationErrors (line 102) | class TestProofSerializationErrors(unittest.TestCase): method setUp (line 105) | def setUp(self): method test_deserialize_invalid_data_fails (line 108) | def test_deserialize_invalid_data_fails(self): method test_deserialize_empty_data_fails (line 113) | def test_deserialize_empty_data_fails(self): FILE: charm/test/zkp_compiler/test_range_proof.py class TestRangeProofBasic (line 16) | class TestRangeProofBasic(unittest.TestCase): method setUp (line 19) | def setUp(self): method test_value_zero (line 26) | def test_value_zero(self): method test_value_one (line 39) | def test_value_one(self): method test_value_max (line 52) | def test_value_max(self): method test_value_middle (line 65) | def test_value_middle(self): method test_value_out_of_range_fails (line 78) | def test_value_out_of_range_fails(self): class TestRangeProofDifferentBitSizes (line 88) | class TestRangeProofDifferentBitSizes(unittest.TestCase): method setUp (line 91) | def setUp(self): method test_4_bit_range (line 97) | def test_4_bit_range(self): method test_8_bit_range (line 112) | def test_8_bit_range(self): method test_16_bit_range (line 127) | def test_16_bit_range(self): class TestRangeProofPedersenCommitment (line 143) | class TestRangeProofPedersenCommitment(unittest.TestCase): method setUp (line 146) | def setUp(self): method test_create_commitment (line 152) | def test_create_commitment(self): method test_commitment_hiding (line 164) | def test_commitment_hiding(self): method test_commitment_binding (line 178) | def test_commitment_binding(self): class TestRangeProofSerialization (line 191) | class TestRangeProofSerialization(unittest.TestCase): method setUp (line 194) | def setUp(self): method test_serialization_roundtrip (line 201) | def test_serialization_roundtrip(self): method test_serialized_proof_verifies (line 219) | def test_serialized_proof_verifies(self): FILE: charm/test/zkp_compiler/test_representation_proof.py class TestRepresentationProofInteractive (line 17) | class TestRepresentationProofInteractive(unittest.TestCase): method setUp (line 20) | def setUp(self): method test_prove_and_verify_interactive_two_generators (line 24) | def test_prove_and_verify_interactive_two_generators(self): method test_prove_and_verify_interactive_three_generators (line 53) | def test_prove_and_verify_interactive_three_generators(self): method test_invalid_proof_fails_interactive (line 74) | def test_invalid_proof_fails_interactive(self): method test_prover_commitment_before_response (line 96) | def test_prover_commitment_before_response(self): class TestRepresentationProofNonInteractive (line 107) | class TestRepresentationProofNonInteractive(unittest.TestCase): method setUp (line 110) | def setUp(self): method test_non_interactive_proof_valid_two_generators (line 114) | def test_non_interactive_proof_valid_two_generators(self): method test_non_interactive_proof_valid_three_generators (line 137) | def test_non_interactive_proof_valid_three_generators(self): method test_non_interactive_wrong_witness_fails (line 157) | def test_non_interactive_wrong_witness_fails(self): method test_non_interactive_tampered_proof_fails (line 177) | def test_non_interactive_tampered_proof_fails(self): method test_proof_deterministic_verification (line 204) | def test_proof_deterministic_verification(self): method test_single_generator_equivalent_to_schnorr (line 223) | def test_single_generator_equivalent_to_schnorr(self): class TestRepresentationProofSerialization (line 243) | class TestRepresentationProofSerialization(unittest.TestCase): method setUp (line 246) | def setUp(self): method test_serialization_roundtrip (line 250) | def test_serialization_roundtrip(self): method test_serialized_proof_verifies (line 273) | def test_serialized_proof_verifies(self): class TestRepresentationProofWithDifferentGroups (line 295) | class TestRepresentationProofWithDifferentGroups(unittest.TestCase): method test_with_bn254_group (line 298) | def test_with_bn254_group(self): method test_with_mnt224_group (line 302) | def test_with_mnt224_group(self): method _test_with_group (line 306) | def _test_with_group(self, curve_name): FILE: charm/test/zkp_compiler/test_schnorr_proof.py class TestSchnorrProofInteractive (line 16) | class TestSchnorrProofInteractive(unittest.TestCase): method setUp (line 19) | def setUp(self): method test_prove_and_verify_interactive (line 26) | def test_prove_and_verify_interactive(self): method test_invalid_proof_fails_interactive (line 48) | def test_invalid_proof_fails_interactive(self): method test_prover_commitment_before_response (line 62) | def test_prover_commitment_before_response(self): class TestSchnorrProofNonInteractive (line 71) | class TestSchnorrProofNonInteractive(unittest.TestCase): method setUp (line 74) | def setUp(self): method test_non_interactive_proof_valid (line 81) | def test_non_interactive_proof_valid(self): method test_non_interactive_wrong_secret_fails (line 97) | def test_non_interactive_wrong_secret_fails(self): method test_non_interactive_tampered_proof_fails (line 109) | def test_non_interactive_tampered_proof_fails(self): method test_proof_deterministic_verification (line 128) | def test_proof_deterministic_verification(self): class TestSchnorrProofWithDifferentGroups (line 142) | class TestSchnorrProofWithDifferentGroups(unittest.TestCase): method test_with_bn254_group (line 145) | def test_with_bn254_group(self): method test_with_mnt224_group (line 149) | def test_with_mnt224_group(self): method _test_with_group (line 153) | def _test_with_group(self, curve_name): class TestSchnorrProofSecurity (line 165) | class TestSchnorrProofSecurity(unittest.TestCase): method setUp (line 168) | def setUp(self): method test_invalid_proof_structure_rejected (line 175) | def test_invalid_proof_structure_rejected(self): method test_identity_commitment_rejected (line 185) | def test_identity_commitment_rejected(self): method test_challenge_mismatch_rejected (line 202) | def test_challenge_mismatch_rejected(self): FILE: charm/test/zkp_compiler/test_thread_safety.py class TestNonInteractiveThreadSafety (line 22) | class TestNonInteractiveThreadSafety(unittest.TestCase): method setUp (line 25) | def setUp(self): method test_schnorr_concurrent_prove_verify (line 31) | def test_schnorr_concurrent_prove_verify(self): method test_dleq_concurrent_prove_verify (line 59) | def test_dleq_concurrent_prove_verify(self): method test_representation_concurrent_prove_verify (line 89) | def test_representation_concurrent_prove_verify(self): class TestThreadSafeWrappers (line 124) | class TestThreadSafeWrappers(unittest.TestCase): method setUp (line 127) | def setUp(self): method test_thread_safe_prover_context_manager (line 131) | def test_thread_safe_prover_context_manager(self): method test_thread_safe_verifier_context_manager (line 148) | def test_thread_safe_verifier_context_manager(self): FILE: charm/test/zkp_compiler/test_zkp_parser.py class TestZKParser (line 12) | class TestZKParser(unittest.TestCase): method setUp (line 15) | def setUp(self): method test_parse_simple_statement (line 18) | def test_parse_simple_statement(self): method test_parse_extracts_correct_structure (line 24) | def test_parse_extracts_correct_structure(self): method test_parse_multi_exponent_and (line 34) | def test_parse_multi_exponent_and(self): method test_parse_preserves_variable_names (line 48) | def test_parse_preserves_variable_names(self): method test_parse_empty_string_fails (line 54) | def test_parse_empty_string_fails(self): method test_parse_invalid_syntax_fails (line 59) | def test_parse_invalid_syntax_fails(self): method test_node_structure_access (line 69) | def test_node_structure_access(self): method test_result_is_binnode (line 80) | def test_result_is_binnode(self): class TestZKParserMultiCharVariables (line 86) | class TestZKParserMultiCharVariables(unittest.TestCase): method setUp (line 89) | def setUp(self): method test_parse_numbered_variables (line 92) | def test_parse_numbered_variables(self): method test_parse_descriptive_variable_names (line 99) | def test_parse_descriptive_variable_names(self): method test_parse_greek_letter_names (line 106) | def test_parse_greek_letter_names(self): method test_parse_mixed_length_variables (line 112) | def test_parse_mixed_length_variables(self): method test_parse_complex_multi_char_statement (line 118) | def test_parse_complex_multi_char_statement(self): method test_multi_char_preserves_variable_names (line 124) | def test_multi_char_preserves_variable_names(self): method test_backwards_compatible_single_char (line 130) | def test_backwards_compatible_single_char(self): FILE: charm/toolbox/ABEnc.py class ABEnc (line 10) | class ABEnc(SchemeBase): method __init__ (line 11) | def __init__(self): method setup (line 16) | def setup(self): method keygen (line 19) | def keygen(self, pk, mk, object): method encrypt (line 22) | def encrypt(self, pk, M, object): method decrypt (line 25) | def decrypt(self, pk, sk, ct): FILE: charm/toolbox/ABEncMultiAuth.py class ABEncMultiAuth (line 4) | class ABEncMultiAuth(SchemeBase): method __init__ (line 14) | def __init__(self): method setup (line 19) | def setup(self): method authsetup (line 26) | def authsetup(self, gp, object): method keygen (line 35) | def keygen(self, gp, sk, gid, object): method encrypt (line 46) | def encrypt(self, gp, pk, m, object): method decrypt (line 57) | def decrypt(self, gp, sk, ct): FILE: charm/toolbox/ABEnumeric.py class NumericAttributeError (line 59) | class NumericAttributeError(Exception): class BitOverflowError (line 64) | class BitOverflowError(NumericAttributeError): class InvalidBitWidthError (line 69) | class InvalidBitWidthError(NumericAttributeError): class InvalidOperatorError (line 74) | class InvalidOperatorError(NumericAttributeError): class AttributeNameConflictError (line 79) | class AttributeNameConflictError(NumericAttributeError): function validate_num_bits (line 84) | def validate_num_bits(num_bits): function validate_value (line 102) | def validate_value(value, num_bits, context="value"): function validate_attribute_name (line 126) | def validate_attribute_name(attr_name): function int_to_bits (line 143) | def int_to_bits(value, num_bits=32): function bits_to_attributes (line 168) | def bits_to_attributes(attr_name, value, num_bits=32): function encode_equality (line 193) | def encode_equality(attr_name, value, num_bits=32): function encode_greater_than (line 206) | def encode_greater_than(attr_name, value, num_bits=32): function encode_greater_than_or_equal (line 241) | def encode_greater_than_or_equal(attr_name, value, num_bits=32): function encode_less_than (line 249) | def encode_less_than(attr_name, value, num_bits=32): function encode_less_than_or_equal (line 281) | def encode_less_than_or_equal(attr_name, value, num_bits=32): function negate_comparison (line 299) | def negate_comparison(attr_name, operator, value): function negate_comparison_to_policy (line 359) | def negate_comparison_to_policy(attr_name, operator, value): function expand_numeric_comparison (line 393) | def expand_numeric_comparison(attr_name, operator, value, num_bits=32): function preprocess_numeric_policy (line 474) | def preprocess_numeric_policy(policy_str, num_bits=32, strict=False): function numeric_attributes_from_value (line 572) | def numeric_attributes_from_value(attr_name, value, num_bits=32): class NumericAttributeHelper (line 590) | class NumericAttributeHelper: method __init__ (line 613) | def __init__(self, num_bits=32, strict=False): method expand_policy (line 632) | def expand_policy(self, policy_str): method user_attributes (line 648) | def user_attributes(self, attr_dict): method check_satisfaction (line 696) | def check_satisfaction(self, user_attrs, required_comparison, attr_nam... method negate_comparison (line 729) | def negate_comparison(self, attr_name, operator, value): method expand_negated_policy (line 752) | def expand_negated_policy(self, attr_name, operator, value): FILE: charm/toolbox/Commit.py class Commitment (line 11) | class Commitment(SchemeBase): method __init__ (line 12) | def __init__(self): method setup (line 17) | def setup(self, securityparam): method commit (line 20) | def commit(self, *args): method decommit (line 23) | def decommit(self, *args): FILE: charm/toolbox/DFA.py class DFA (line 5) | class DFA: method __init__ (line 6) | def __init__(self, regex, alphabet): method constructDFA (line 17) | def constructDFA(self): method accept (line 29) | def accept(self, M, s): method getTransitions (line 48) | def getTransitions(self, M, s): method getAcceptState (line 67) | def getAcceptState(self, transitions): method getSymbols (line 72) | def getSymbols(self, s): FILE: charm/toolbox/FSA.py class FSA (line 235) | class FSA: method __init__ (line 236) | def __init__(self, states, alphabet, transitions, initialState, finalS... method makeStateTable (line 253) | def makeStateTable(self, default=None): method initializeTransitionTables (line 261) | def initializeTransitionTables(self): method collectStates (line 269) | def collectStates(self, transitions, initialState, finalStates): method computeEpsilonClosure (line 279) | def computeEpsilonClosure(self, state): method computeEpsilonClosures (line 290) | def computeEpsilonClosures(self): method create (line 299) | def create(self, *args): method copy (line 302) | def copy(self, *args): method creationArgs (line 310) | def creationArgs(self): method coerce (line 313) | def coerce(self, klass): method epsilonClosure (line 323) | def epsilonClosure(self, state): method labels (line 330) | def labels(self): method nextAvailableState (line 338) | def nextAvailableState(self): method transitionsFrom (line 341) | def transitionsFrom(self, state): method tuple (line 348) | def tuple(self): method hasArcMetadata (line 355) | def hasArcMetadata(self): method getArcMetadata (line 358) | def getArcMetadata(self): method setArcMetadata (line 361) | def setArcMetadata(self, list): method addArcMetadata (line 367) | def addArcMetadata(self, list): method addArcMetadataFor (line 371) | def addArcMetadataFor(self, transition, data): method setArcMetadataFor (line 382) | def setArcMetadataFor(self, transition, data): method getArcMetadataFor (line 387) | def getArcMetadataFor(self, transition, default=None): method isEmpty (line 394) | def isEmpty(self): method isFSA (line 397) | def isFSA(self): method labelMatches (line 404) | def labelMatches(self, label, input): method nextStates (line 407) | def nextStates(self, state, input): method nextState (line 414) | def nextState(self, state, input): method nextStateSet (line 419) | def nextStateSet(self, states, input): method accepts (line 427) | def accepts(self, sequence): method getTransitions (line 438) | def getTransitions(self, sequence): method complement (line 459) | def complement(self): method sorted (line 467) | def sorted(self, initial=0): method trimmed (line 492) | def trimmed(self): method withoutEpsilons (line 525) | def withoutEpsilons(self): method determinized (line 553) | def determinized(self): method minimized (line 604) | def minimized(self): method __repr__ (line 678) | def __repr__(self): method __str__ (line 684) | def __str__(self): method additionalTransitionInfoString (line 700) | def additionalTransitionInfoString(self, transition): method stateLabelString (line 705) | def stateLabelString(self, state): method toDotString (line 711) | def toDotString(self): method view (line 732) | def view(self): function removeDuplicates (line 748) | def removeDuplicates(sequence): function toFSA (line 755) | def toFSA(arg): function view (line 761) | def view(str): function closure (line 788) | def closure(arg): function complement (line 799) | def complement(arg): function concatenation (line 804) | def concatenation(a, *args): function containment (line 815) | def containment(arg, occurrences=1): function difference (line 825) | def difference(a, b): function equivalent (line 830) | def equivalent(a, b): function intersection (line 834) | def intersection(a, b): function iteration (line 863) | def iteration(fsa, min=1, max=None): function option (line 876) | def option(fsa): function reverse (line 879) | def reverse(fsa): function union (line 884) | def union(*args): function completion (line 907) | def completion(fsa): function determinize (line 923) | def determinize(fsa): function minimize (line 926) | def minimize(fsa): function sort (line 929) | def sort(fsa): function trim (line 932) | def trim(fsa): function labelComplements (line 942) | def labelComplements(label, alphabet): function labelComplement (line 950) | def labelComplement(label, alphabet): function labelIntersection (line 960) | def labelIntersection(l1, l2): function _labelIntersection (line 966) | def _labelIntersection(l1, l2): function labelString (line 983) | def labelString(label): function labelMatches (line 986) | def labelMatches(label, input): function complementLabelSet (line 999) | def complementLabelSet(labels, alphabet=None): function intersectLabelSets (line 1009) | def intersectLabelSets(alist, blist): function unionLabelSets (line 1020) | def unionLabelSets(alist, blist, alphabet=None): function consolidateTransitions (line 1034) | def consolidateTransitions(transitions): function constructLabelMap (line 1050) | def constructLabelMap(labels, alphabet, includeComplements=0): function symbolComplement (line 1083) | def symbolComplement(symbol): function symbolIntersection (line 1092) | def symbolIntersection(s1, s2): function singleton (line 1115) | def singleton(symbol, alphabet=None, arcMetadata=None): function sequence (line 1122) | def sequence(sequence, alphabet=None): function compileRE (line 1132) | def compileRE(s, **options): function compileREExpr (line 1142) | def compileREExpr(str, index, options): function compileConjunction (line 1150) | def compileConjunction(str, index, options): function compileSequence (line 1158) | def compileSequence(str, index, options): function compileItem (line 1165) | def compileItem(str, index, options): FILE: charm/toolbox/Hash.py class Hash (line 3) | class Hash(SchemeBase): method __init__ (line 10) | def __init__(self): method paramgen (line 15) | def paramgen(self, *args): method hash (line 18) | def hash(self, *args): class ChamHash (line 22) | class ChamHash(Hash): method __init__ (line 30) | def __init__(self): method paramgen (line 35) | def paramgen(self, secparam, p=None, q=None): method hash (line 38) | def hash(self, pk, prefix, message, r): FILE: charm/toolbox/IBEnc.py class IBEnc (line 14) | class IBEnc(SchemeBase): method __init__ (line 15) | def __init__(self): method setProperty (line 19) | def setProperty(self, secDef=None, assumption=None, messageSpace=None,... method getProperty (line 24) | def getProperty(self): method checkProperty (line 28) | def checkProperty(self, schemeObj, _reqProps): method updateProperty (line 33) | def updateProperty(self, scheme, secDef=None, assumption=None, message... method printProperties (line 43) | def printProperties(self): method setup (line 51) | def setup(self): method extract (line 54) | def extract(self, mk, ID): method encrypt (line 57) | def encrypt(self, pk, ID, message): method decrypt (line 60) | def decrypt(self, pk, sk, ct): FILE: charm/toolbox/IBSig.py class IBSig (line 14) | class IBSig(SchemeBase): method __init__ (line 15) | def __init__(self): method setProperty (line 19) | def setProperty(self, secDef=None, assumption=None, messageSpace=None,... method getProperty (line 24) | def getProperty(self): method checkProperty (line 28) | def checkProperty(self, schemeObj, _reqProps): method updateProperty (line 35) | def updateProperty(self, scheme, secDef=None, assumption=None, message... method printProperties (line 45) | def printProperties(self): method setup (line 53) | def setup(self): method keygen (line 56) | def keygen(self, msk, ID): method sign (line 59) | def sign(self, pk, sk, M): method verify (line 62) | def verify(self, pk, M, sig): FILE: charm/toolbox/PKEnc.py class PKEnc (line 19) | class PKEnc(SchemeBase): method __init__ (line 20) | def __init__(self): method setProperty (line 24) | def setProperty(self, secDef=None, assumption=None, messageSpace=None,... method getProperty (line 29) | def getProperty(self): method checkProperty (line 33) | def checkProperty(self, schemeObj, _reqProps): method updateProperty (line 38) | def updateProperty(self, scheme, secDef=None, assumption=None, message... method printProperties (line 48) | def printProperties(self): method paramgen (line 56) | def paramgen(self, param1=None, param2=None): method keygen (line 59) | def keygen(self, securityparam): method encrypt (line 62) | def encrypt(self, pk, M): method decrypt (line 65) | def decrypt(self, pk, sk, c): FILE: charm/toolbox/PKSig.py class PKSig (line 12) | class PKSig(SchemeBase): method __init__ (line 13) | def __init__(self): method setProperty (line 17) | def setProperty(self, secDef=None, assumption=None, messageSpace=None,... method getProperty (line 22) | def getProperty(self): method checkProperty (line 26) | def checkProperty(self, schemeObj, _reqProps): method updateProperty (line 31) | def updateProperty(self, scheme, secDef=None, assumption=None, message... method printProperties (line 41) | def printProperties(self): method keygen (line 49) | def keygen(self, securityparam): method sign (line 52) | def sign(self, pk, sk, message): method verify (line 55) | def verify(self, pk, message, sig): FILE: charm/toolbox/PREnc.py class PREnc (line 10) | class PREnc(SchemeBase): method __init__ (line 11) | def __init__(self): method setup (line 16) | def setup(self): method keygen (line 19) | def keygen(self, params): method encrypt (line 22) | def encrypt(self, params, pk, M): method decrypt (line 25) | def decrypt(self, params, sk, ct): method rekeygen (line 28) | def rekeygen(self, params, pk_a, sk_a, pk_b, sk_b): method re_encrypt (line 31) | def re_encrypt(self, params, rk, c_a): FILE: charm/toolbox/ZKProof.py class ZKProofError (line 43) | class ZKProofError(Exception): class ZKParseError (line 52) | class ZKParseError(ZKProofError): class ZKValidationError (line 61) | class ZKValidationError(ZKProofError): class ZKProofVerificationError (line 70) | class ZKProofVerificationError(ZKProofError): class Proof (line 80) | class Proof: class ZKProofBase (line 114) | class ZKProofBase(SchemeBase): method __init__ (line 143) | def __init__(self): method setProperty (line 152) | def setProperty(self, secDef=None, assumption=None, messageSpace=None,... method getProperty (line 181) | def getProperty(self): method setup (line 192) | def setup(self, group): method prove (line 210) | def prove(self, statement, witness): method verify (line 231) | def verify(self, statement, proof): method serialize (line 251) | def serialize(self, proof, group): method deserialize (line 271) | def deserialize(self, data, group): FILE: charm/toolbox/bitstring.py class Bytes (line 13) | class Bytes(bytes): method __init__ (line 14) | def __init__(self, value, enc=None): method __xor__ (line 21) | def __xor__(self, other): method __add__ (line 31) | def __add__(self, other): method fill (line 35) | def fill(self, prefix, length): function getBytes (line 44) | def getBytes(arg1, arg2='utf-8'): function getBytes (line 47) | def getBytes(arg1, arg2=None): FILE: charm/toolbox/broadcast.py class EchoBroadcast (line 27) | class EchoBroadcast: method __init__ (line 49) | def __init__(self, num_parties: int, fault_threshold: Optional[int] = ... method compute_message_hash (line 70) | def compute_message_hash(self, message: Any) -> bytes: method create_broadcast_message (line 94) | def create_broadcast_message(self, party_id: int, message: Any) -> Dic... method process_echo (line 120) | def process_echo( method verify_consistency (line 155) | def verify_consistency(self, echo_msgs: Dict[int, Dict[int, bytes]]) -... FILE: charm/toolbox/conversion.py class Conversion (line 11) | class Conversion(object): method bytes2element (line 32) | def bytes2element(self, bytestr): method bytes2integer (line 36) | def bytes2integer(self, bytestr): method str2bytes (line 40) | def str2bytes(self, strobj): method bytes2str (line 43) | def bytes2str(self, byteobj): method int2bin (line 47) | def int2bin(self, intobj): method OS2IP (line 55) | def OS2IP(self, bytestr, element = False): method IP2OS (line 76) | def IP2OS(self, number, xLen=None): FILE: charm/toolbox/ecgroup.py class ECGroup (line 7) | class ECGroup(): method __init__ (line 8) | def __init__(self, builtin_cv): method __str__ (line 13) | def __str__(self): method order (line 16) | def order(self): method bitsize (line 20) | def bitsize(self): method paramgen (line 24) | def paramgen(self, secparam): method groupSetting (line 27) | def groupSetting(self): method groupType (line 30) | def groupType(self): method init (line 33) | def init(self, _type=ZR, value=None): method random (line 39) | def random(self, _type=ZR): method encode (line 45) | def encode(self, message, include_ctr=False): method decode (line 49) | def decode(self, msg_bytes, include_ctr=False): method serialize (line 53) | def serialize(self, object): method deserialize (line 57) | def deserialize(self, bytes_object): method hash (line 61) | def hash(self, args, target_type=ZR): method zr (line 96) | def zr(self, point): method coordinates (line 102) | def coordinates(self, point): method debug (line 107) | def debug(self, data, prefix=None): method InitBenchmark (line 119) | def InitBenchmark(self): method StartBenchmark (line 123) | def StartBenchmark(self, options): method EndBenchmark (line 128) | def EndBenchmark(self): method GetGeneralBenchmarks (line 132) | def GetGeneralBenchmarks(self): method GetGranularBenchmarks (line 136) | def GetGranularBenchmarks(self): method GetBenchmark (line 140) | def GetBenchmark(self, option): FILE: charm/toolbox/enum.py function Enum (line 2) | def Enum(*names): FILE: charm/toolbox/hash_module.py class Hash (line 8) | class Hash(): method __init__ (line 9) | def __init__(self, pairingElement=None, htype='sha256', integerElement... method hashToZn (line 14) | def hashToZn(self, value): method hashToZr (line 32) | def hashToZr(self, *args): class Waters (line 56) | class Waters: method __init__ (line 64) | def __init__(self, group, length=8, bits=32, hash_func='sha256'): method sha2 (line 72) | def sha2(self, message): method hash (line 77) | def hash(self, strID): FILE: charm/toolbox/integergroup.py class integer (line 10) | class integer: function randomBits (line 13) | def randomBits(bits): raise NotImplementedError("Requires C extension") function random (line 14) | def random(max): raise NotImplementedError("Requires C extension") function randomPrime (line 15) | def randomPrime(bits, safe=False): raise NotImplementedError("Requires C... function isPrime (line 16) | def isPrime(n): raise NotImplementedError("Requires C extension") function encode (line 17) | def encode(M, p, q): raise NotImplementedError("Requires C extension") function decode (line 18) | def decode(element, p, q): raise NotImplementedError("Requires C extensi... function hashInt (line 19) | def hashInt(args, p, q, flag): raise NotImplementedError("Requires C ext... function bitsize (line 20) | def bitsize(n): raise NotImplementedError("Requires C extension") function legendre (line 21) | def legendre(a, p): raise NotImplementedError("Requires C extension") function gcd (line 22) | def gcd(a, b): raise NotImplementedError("Requires C extension") function lcm (line 23) | def lcm(a, b): raise NotImplementedError("Requires C extension") function serialize (line 24) | def serialize(obj): raise NotImplementedError("Requires C extension") function deserialize (line 25) | def deserialize(data): raise NotImplementedError("Requires C extension") function int2Bytes (line 26) | def int2Bytes(n): raise NotImplementedError("Requires C extension") function toInt (line 27) | def toInt(obj): raise NotImplementedError("Requires C extension") function InitBenchmark (line 28) | def InitBenchmark(): raise NotImplementedError("Requires C extension") function StartBenchmark (line 29) | def StartBenchmark(options): raise NotImplementedError("Requires C exten... function EndBenchmark (line 30) | def EndBenchmark(): raise NotImplementedError("Requires C extension") function GetBenchmark (line 31) | def GetBenchmark(option): raise NotImplementedError("Requires C extension") function GetGeneralBenchmarks (line 32) | def GetGeneralBenchmarks(): raise NotImplementedError("Requires C extens... function ClearBenchmark (line 33) | def ClearBenchmark(): raise NotImplementedError("Requires C extension") class IntegerGroup (line 35) | class IntegerGroup: method __init__ (line 36) | def __init__(self, start=0): method setparam (line 39) | def setparam(self, p, q): method __str__ (line 48) | def __str__(self): method paramgen (line 54) | def paramgen(self, bits, r=2): method randomGen (line 64) | def randomGen(self): method groupSetting (line 72) | def groupSetting(self): method groupType (line 75) | def groupType(self): method groupOrder (line 78) | def groupOrder(self): method bitsize (line 81) | def bitsize(self): method isMember (line 84) | def isMember(self, x): method random (line 87) | def random(self, max=0): method encode (line 93) | def encode(self, M): method decode (line 96) | def decode(self, element): method serialize (line 99) | def serialize(self, object): method deserialize (line 103) | def deserialize(self, bytes_object): method hash (line 107) | def hash(self, *args): method InitBenchmark (line 113) | def InitBenchmark(self): method StartBenchmark (line 117) | def StartBenchmark(self, options): method EndBenchmark (line 122) | def EndBenchmark(self): method GetGeneralBenchmarks (line 126) | def GetGeneralBenchmarks(self): method GetBenchmark (line 130) | def GetBenchmark(self, option): class IntegerGroupQ (line 135) | class IntegerGroupQ: method __init__ (line 136) | def __init__(self, start=0): method __str__ (line 139) | def __str__(self): method setparam (line 145) | def setparam(self, p, q): method paramgen (line 154) | def paramgen(self, bits, r=2): method randomG (line 164) | def randomG(self): method randomGen (line 167) | def randomGen(self): method groupSetting (line 176) | def groupSetting(self): method groupType (line 179) | def groupType(self): method groupOrder (line 182) | def groupOrder(self): method messageSize (line 185) | def messageSize(self): method isMember (line 188) | def isMember(self, x): method random (line 191) | def random(self, max=0): method encode (line 197) | def encode(self, M): method decode (line 200) | def decode(self, element): method hash (line 203) | def hash(self, *args): method serialize (line 211) | def serialize(self, object): method deserialize (line 215) | def deserialize(self, bytes_object): method InitBenchmark (line 219) | def InitBenchmark(self): method StartBenchmark (line 223) | def StartBenchmark(self, options): method EndBenchmark (line 228) | def EndBenchmark(self): method GetGeneralBenchmarks (line 232) | def GetGeneralBenchmarks(self): method GetBenchmark (line 236) | def GetBenchmark(self, option): class RSAGroup (line 242) | class RSAGroup: method __init__ (line 243) | def __init__(self): method __str__ (line 246) | def __str__(self): method paramgen (line 253) | def paramgen(self, secparam): method setparam (line 264) | def setparam(self, p, q): method serialize (line 274) | def serialize(self, object): method deserialize (line 278) | def deserialize(self, bytes_object): method random (line 282) | def random(self, max=0): method groupSetting (line 288) | def groupSetting(self): method groupType (line 291) | def groupType(self): method groupOrder (line 294) | def groupOrder(self): method encode (line 297) | def encode(self, value): method decode (line 300) | def decode(self, value): method InitBenchmark (line 303) | def InitBenchmark(self): method StartBenchmark (line 307) | def StartBenchmark(self, options): method EndBenchmark (line 312) | def EndBenchmark(self): method GetGeneralBenchmarks (line 316) | def GetGeneralBenchmarks(self): method GetBenchmark (line 320) | def GetBenchmark(self, option): FILE: charm/toolbox/iterate.py function dotprod (line 7) | def dotprod(init, skip, n, func, *args): function dotprod2 (line 18) | def dotprod2(iterator, func, *args): FILE: charm/toolbox/matrixops.py function GaussEliminationinGroups (line 7) | def GaussEliminationinGroups(m): function MatrixMulGroups (line 39) | def MatrixMulGroups(matrix1,matrix2): function MatrixAddGroups (line 53) | def MatrixAddGroups(matrix1,matrix2): function MatrixScalarMulGroups (line 65) | def MatrixScalarMulGroups(lamda , matrix): function MatrixTransGroups (line 72) | def MatrixTransGroups(matrix): FILE: charm/toolbox/mpc_utils.py function int_to_bytes (line 22) | def int_to_bytes(n: int, length: int) -> bytes: function bytes_to_int (line 60) | def bytes_to_int(b: bytes) -> int: function bit_decompose (line 87) | def bit_decompose(value: Any, order: int, num_bits: int) -> List[int]: function bits_to_int (line 126) | def bits_to_int(bits: List[int], order: int) -> int: class PedersenCommitment (line 159) | class PedersenCommitment: method __init__ (line 195) | def __init__(self, group: ECGroup, g: Optional[GElement] = None, method setup (line 204) | def setup(self) -> Tuple[GElement, GElement]: method g (line 213) | def g(self) -> GElement: method h (line 220) | def h(self) -> GElement: method commit (line 226) | def commit(self, value: Any, randomness: Optional[ZRElement] = None method open (line 252) | def open(self, commitment: GElement, value: Any, method add (line 277) | def add(self, c1: GElement, c2: GElement) -> GElement: FILE: charm/toolbox/msp.py class MSP (line 17) | class MSP: method __init__ (line 19) | def __init__(self, groupObj, verbose=True): method createPolicy (line 23) | def createPolicy(self, policy_string): method convert_policy_to_msp (line 40) | def convert_policy_to_msp(self, tree): method _convert_policy_to_msp (line 51) | def _convert_policy_to_msp(self, subtree, curr_vector): method getCoefficients (line 89) | def getCoefficients(self, tree): method recoverCoefficients (line 98) | def recoverCoefficients(self, list): method _getCoefficientsDict (line 115) | def _getCoefficientsDict(self, tree, coeff_list, coeff=1): method strip_index (line 139) | def strip_index(self, node_str): method prune (line 148) | def prune(self, policy, attributes): method getAttributeList (line 157) | def getAttributeList(self, Node): method _getAttributeList (line 166) | def _getAttributeList(self, Node, List): FILE: charm/toolbox/mta.py function hash_to_field (line 53) | def hash_to_field(group: ECGroupType, *args: Any) -> ZRElement: class CorrelatedOT (line 75) | class CorrelatedOT: method __init__ (line 83) | def __init__(self, groupObj): method generate_correlation (line 98) | def generate_correlation(self, delta): method generate_batch_correlations (line 116) | def generate_batch_correlations(self, deltas): class MtA (line 133) | class MtA: method __init__ (line 171) | def __init__(self, groupObj: ECGroupType) -> None: method sender_round1 (line 196) | def sender_round1(self, a: ZRElement) -> Dict[str, Any]: method receiver_round1 (line 269) | def receiver_round1(self, b: ZRElement, sender_msg: Dict[str, Any]) ->... method sender_round2 (line 315) | def sender_round2(self, receiver_msg: Dict[str, Any]) -> Tuple[ZREleme... method receiver_round2 (line 346) | def receiver_round2(self, sender_round2_msg: Dict[str, Any]) -> ZRElem... method receiver_complete (line 378) | def receiver_complete(self, sender_bits: List[int]) -> ZRElement: class MtAwc (line 397) | class MtAwc: method __init__ (line 432) | def __init__(self, groupObj: ECGroupType) -> None: method _pedersen_commit (line 468) | def _pedersen_commit(self, value: Union[ZRElement, int], randomness: O... method _prove_bit_or (line 488) | def _prove_bit_or(self, bit: int, randomness: ZRElement, commitment: G... method _verify_bit_or (line 588) | def _verify_bit_or(self, commitment: GElement, or_proof: Dict[str, Any... method _prove_bit_decomposition (line 640) | def _prove_bit_decomposition(self, value_int: int, bits: List[int], va... method _verify_bit_decomposition (line 698) | def _verify_bit_decomposition(self, commitment: GElement, proof: Dict[... method sender_commit (line 744) | def sender_commit(self, a: ZRElement) -> Dict[str, Any]: method receiver_commit (line 777) | def receiver_commit(self, b: ZRElement) -> Dict[str, Any]: method sender_round1 (line 800) | def sender_round1(self, a: ZRElement, receiver_commit: Dict[str, Any])... method receiver_round1 (line 827) | def receiver_round1(self, b: ZRElement, sender_commit: Dict[str, Any],... method sender_round2 (line 863) | def sender_round2(self, receiver_msg: Dict[str, Any]) -> Tuple[ZREleme... method receiver_verify (line 917) | def receiver_verify(self, proof: Dict[str, Any]) -> Tuple[Optional[ZRE... FILE: charm/toolbox/node.py class BinNode (line 6) | class BinNode: method __init__ (line 7) | def __init__(self, value, left=None, right=None): method __repr__ (line 41) | def __repr__(self): method __str__ (line 44) | def __str__(self): method getAttribute (line 61) | def getAttribute(self): method getAttributeAndIndex (line 68) | def getAttributeAndIndex(self): method __iter__ (line 78) | def __iter__(self): method __eq__ (line 81) | def __eq__(self, other): method getLeft (line 94) | def getLeft(self): method getRight (line 97) | def getRight(self): method getNodeType (line 100) | def getNodeType(self): method addSubNode (line 103) | def addSubNode(self, left, right): method traverse (line 109) | def traverse(self, function): FILE: charm/toolbox/ot/base_ot.py class SimpleOT (line 26) | class SimpleOT: method __init__ (line 102) | def __init__(self, groupObj): method _derive_key (line 118) | def _derive_key(self, point): method _validate_point (line 135) | def _validate_point(self, point, name="point"): method reset_sender (line 187) | def reset_sender(self): method sender_setup (line 203) | def sender_setup(self): method receiver_choose (line 223) | def receiver_choose(self, sender_params, choice_bit): method sender_transfer (line 279) | def sender_transfer(self, receiver_response, m0, m1): method receiver_retrieve (line 333) | def receiver_retrieve(self, sender_ciphertexts, receiver_state): FILE: charm/toolbox/ot/dpf.py function xor_bytes (line 32) | def xor_bytes(a: bytes, b: bytes) -> bytes: class DPF (line 57) | class DPF: method __init__ (line 90) | def __init__(self, security_param: int = 128, domain_bits: int = 20): method prg (line 112) | def prg(self, seed: bytes) -> Tuple[bytes, bytes]: method _get_bit (line 162) | def _get_bit(self, x: int, level: int) -> int: method _convert_output (line 180) | def _convert_output(self, seed: bytes) -> int: method gen (line 200) | def gen(self, alpha: int, beta: int) -> Tuple[bytes, bytes]: method _serialize_key (line 386) | def _serialize_key( method _deserialize_key (line 424) | def _deserialize_key(self, key: bytes) -> tuple: method eval (line 474) | def eval(self, sigma: int, key: bytes, x: int) -> int: method full_eval (line 557) | def full_eval(self, sigma: int, key: bytes) -> List[int]: FILE: charm/toolbox/ot/mpfss.py class MPFSS (line 23) | class MPFSS: method __init__ (line 59) | def __init__(self, security_param: int = 128, domain_bits: int = 20): method gen (line 76) | def gen(self, points: List[Tuple[int, int]]) -> Tuple[bytes, bytes]: method _serialize_keys (line 138) | def _serialize_keys(self, keys: List[bytes]) -> bytes: method _deserialize_keys (line 148) | def _deserialize_keys(self, data: bytes) -> List[bytes]: method eval (line 166) | def eval(self, sigma: int, key: bytes, x: int) -> int: method full_eval (line 193) | def full_eval(self, sigma: int, key: bytes) -> List[int]: FILE: charm/toolbox/ot/ot_extension.py function xor_bytes (line 31) | def xor_bytes(a, b): function prg (line 51) | def prg(seed, output_length): function hash_to_key (line 81) | def hash_to_key(index, value): function transpose_bit_matrix (line 104) | def transpose_bit_matrix(matrix, rows, cols): function get_bit (line 150) | def get_bit(data, bit_index): function set_bit (line 159) | def set_bit(data, bit_index, value): class OTExtension (line 169) | class OTExtension: method __init__ (line 196) | def __init__(self, groupObj, security_param=128, base_ot=None): method sender_setup_base_ots (line 226) | def sender_setup_base_ots(self): method receiver_setup_base_ots (line 248) | def receiver_setup_base_ots(self): method sender_respond_base_ots (line 280) | def sender_respond_base_ots(self, base_ot_setups): method receiver_transfer_seeds (line 312) | def receiver_transfer_seeds(self, sender_responses): method sender_receive_seeds (line 342) | def sender_receive_seeds(self, seed_ciphertexts): method sender_init (line 363) | def sender_init(self): method receiver_extend (line 386) | def receiver_extend(self, num_ots, choice_bits): method sender_extend (line 456) | def sender_extend(self, num_ots, message_pairs, receiver_msg): method receiver_output (line 543) | def receiver_output(self, ciphertexts, receiver_state): FILE: charm/toolbox/ot/silent_ot.py class SilentOT (line 34) | class SilentOT: method __init__ (line 60) | def __init__(self, method _prg (line 103) | def _prg(self, seed: bytes, output_length: int) -> bytes: method correlation_robust_hash (line 115) | def correlation_robust_hash(self, index: int, value: int) -> bytes: method gen (line 140) | def gen(self) -> Tuple[bytes, bytes]: method _serialize_sender_seed (line 198) | def _serialize_sender_seed(self, key_fss: bytes, S: List[int], method _serialize_receiver_seed (line 221) | def _serialize_receiver_seed(self, key_fss: bytes, x: int, method _deserialize_sender_seed (line 240) | def _deserialize_sender_seed(self, seed: bytes) -> Tuple: method _deserialize_receiver_seed (line 268) | def _deserialize_receiver_seed(self, seed: bytes) -> Tuple: method expand_sender (line 290) | def expand_sender(self, seed: bytes) -> Tuple[List[int], List[bytes]]: method expand_receiver (line 340) | def expand_receiver(self, seed: bytes) -> List[Tuple[bytes, bytes]]: FILE: charm/toolbox/paddingschemes.py class OAEPEncryptionPadding (line 13) | class OAEPEncryptionPadding: method __init__ (line 22) | def __init__(self, _hash_type ='sha1'): method encode (line 30) | def encode(self, message, emLen, label="", seed=None): method decode (line 74) | def decode(self, encMessage, label=""): function MGF1 (line 109) | def MGF1(seed, maskBytes, hashFn, hLen): class hashFunc (line 130) | class hashFunc: method __init__ (line 131) | def __init__(self, _hash_type=None): method __call__ (line 138) | def __call__(self, message): class PSSPadding (line 146) | class PSSPadding: method __init__ (line 155) | def __init__(self, _hash_type ='sha1'): method encode (line 160) | def encode(self, M, emBits=None, salt=None): method verify (line 229) | def verify(self, M, EM, emBits=None): class SAEPEncryptionPadding (line 329) | class SAEPEncryptionPadding: method __init__ (line 335) | def __init__(self, _hash_type ='sha384'): method encode (line 340) | def encode(self, message, n, s0): method decode (line 378) | def decode(self, encMessage, n, s0): class PKCS7Padding (line 406) | class PKCS7Padding(object): method __init__ (line 407) | def __init__(self,block_size = 16): method encode (line 410) | def encode(self,_bytes,block_size = 16): method decode (line 414) | def decode(self,_bytes): method _padlength (line 418) | def _padlength(self,_bytes): FILE: charm/toolbox/paddingschemes_test.py class Test (line 10) | class Test(unittest.TestCase): method testOEAPVector1 (line 12) | def testOEAPVector1(self): method testOAEPRoundTripEquiv (line 61) | def testOAEPRoundTripEquiv(self): method testMFGLength (line 70) | def testMFGLength(self): method testMFGvector (line 79) | def testMFGvector(self): method testSHA1Vector (line 92) | def testSHA1Vector(self): method testPSSRountTripEquiv (line 106) | def testPSSRountTripEquiv(self): method testPSSTestVector (line 112) | def testPSSTestVector(self): method suite (line 212) | def suite(self): class TestPkcs7Padding (line 216) | class TestPkcs7Padding(unittest.TestCase): method setUp (line 217) | def setUp(self): method encodecode (line 219) | def encodecode(self,text): method testBasic (line 227) | def testBasic(self): method testEmpty (line 229) | def testEmpty(self): method testFull (line 231) | def testFull(self): method testLarge (line 233) | def testLarge(self): FILE: charm/toolbox/paillier_mta.py class PaillierKeyPair (line 33) | class PaillierKeyPair: method __init__ (line 45) | def __init__(self, pk: Dict, sk: Dict): method __repr__ (line 52) | def __repr__(self) -> str: class PaillierMtA (line 56) | class PaillierMtA: method __init__ (line 92) | def __init__(self, rsa_group: RSAGroup, ec_order: int, paillier_bits: ... method generate_keypair (line 107) | def generate_keypair(self) -> PaillierKeyPair: method sender_round1 (line 117) | def sender_round1(self, a: int, keypair: PaillierKeyPair) -> Dict[str,... method receiver_round1 (line 139) | def receiver_round1(self, b: int, sender_msg: Dict[str, Any], method sender_round2 (line 174) | def sender_round2(self, receiver_msg: Dict[str, Any], class PaillierMtAwc (line 197) | class PaillierMtAwc(PaillierMtA): method __init__ (line 209) | def __init__(self, rsa_group: RSAGroup, ec_order: int, method sender_round1_with_proof (line 213) | def sender_round1_with_proof(self, a: int, keypair: PaillierKeyPair, method _compute_commitment (line 244) | def _compute_commitment(self, value: int, keypair: PaillierKeyPair) ->... method receiver_round1_with_proof (line 252) | def receiver_round1_with_proof(self, b: int, sender_msg: Dict[str, Any], method sender_round2_with_verify (line 282) | def sender_round2_with_verify(self, receiver_msg: Dict[str, Any], FILE: charm/toolbox/paillier_zkproofs.py class PaillierEncProof (line 37) | class PaillierEncProof: class PaillierRangeProof (line 56) | class PaillierRangeProof: class PaillierDLogProof (line 71) | class PaillierDLogProof: class PaillierZKProofs (line 87) | class PaillierZKProofs: method __init__ (line 95) | def __init__(self, rsa_group: RSAGroup, ec_group: Any = None): method _hash_to_challenge (line 107) | def _hash_to_challenge(self, *args) -> bytes: method prove_encryption_knowledge (line 120) | def prove_encryption_knowledge(self, plaintext: int, ciphertext: Any, method verify_encryption_knowledge (line 165) | def verify_encryption_knowledge(self, ciphertext: Any, pk: Dict, method prove_dlog_equality (line 199) | def prove_dlog_equality(self, x: int, ciphertext: Any, Q: Any, method verify_dlog_equality (line 260) | def verify_dlog_equality(self, ciphertext: Any, Q: Any, pk: Dict, FILE: charm/toolbox/pairinggroup.py class PairingGroup (line 9) | class PairingGroup(): method __init__ (line 10) | def __init__(self, param_id, param_file = False, secparam = 512, verbo... method __str__ (line 34) | def __str__(self): method order (line 37) | def order(self): method paramgen (line 41) | def paramgen(self, qbits, rbits): method ismember (line 44) | def ismember(self, obj): method ismemberList (line 48) | def ismemberList(self, obj): method ismemberDict (line 54) | def ismemberDict(self, obj): method groupSetting (line 60) | def groupSetting(self): method groupType (line 63) | def groupType(self): method messageSize (line 66) | def messageSize(self): method init (line 70) | def init(self, type, value=None): method random (line 76) | def random(self, _type = ZR, count = 1, seed = None): method encode (line 91) | def encode(self, message): method decode (line 94) | def decode(self, element): method hash (line 97) | def hash(self, args, type=ZR): method serialize (line 101) | def serialize(self, obj, compression=True): method deserialize (line 123) | def deserialize(self, obj, compression=True): method debug (line 132) | def debug(self, data, prefix=None): method pair_prod (line 148) | def pair_prod(self, lhs, rhs): method InitBenchmark (line 152) | def InitBenchmark(self): method StartBenchmark (line 156) | def StartBenchmark(self, options): method EndBenchmark (line 161) | def EndBenchmark(self): method GetGeneralBenchmarks (line 165) | def GetGeneralBenchmarks(self): method GetGranularBenchmarks (line 169) | def GetGranularBenchmarks(self): method GetBenchmark (line 173) | def GetBenchmark(self, option): function extract_key (line 179) | def extract_key(g): FILE: charm/toolbox/policy_expression_spec.py function policy_expressions_of_size (line 5) | def policy_expressions_of_size(policy_expression_strategy, num_leaves): function monotonic_policy_expression (line 13) | def monotonic_policy_expression(draw, num_leaves): function alland_policy_expression (line 23) | def alland_policy_expression(draw, num_leaves): function policy_expressions (line 36) | def policy_expressions(min_leaves=1, max_leaves=25): function alland_policy_expressions (line 40) | def alland_policy_expressions(min_leaves=1, max_leaves=25): function attributes (line 44) | def attributes(): function inequalities (line 49) | def inequalities(draw): function inequality_operators (line 56) | def inequality_operators(): function gates (line 60) | def gates(): function and_gates (line 64) | def and_gates(): function assert_valid (line 68) | def assert_valid(policy_expression): FILE: charm/toolbox/policytree.py function _set_parse_action (line 11) | def _set_parse_action(parser_element, *fns, **kwargs): function createAttribute (line 25) | def createAttribute(s, loc, toks): function parseNumConditional (line 34) | def parseNumConditional(s, loc, toks): function printStuff (line 38) | def printStuff(s, loc, toks): function pushFirst (line 42) | def pushFirst( s, loc, toks ): function createTree (line 45) | def createTree(op, node1, node2): function downcaseTokens (line 55) | def downcaseTokens(s, loc, toks): class PolicyParser (line 58) | class PolicyParser: method __init__ (line 59) | def __init__(self, verbose=False): method getBNF (line 63) | def getBNF(self): method evalStack (line 89) | def evalStack(self, stack): method parse (line 99) | def parse(self, string): method findDuplicates (line 109) | def findDuplicates(self, tree, _dict): method labelDuplicates (line 117) | def labelDuplicates(self, tree, _dictLabel): method prune (line 126) | def prune(self, tree, attributes): method requiredAttributes (line 140) | def requiredAttributes(self, tree, attrList): FILE: charm/toolbox/reCompiler.py function compileSymbolRE (line 17) | def compileSymbolRE(str): function dummy_func (line 20) | def dummy_func(a, b): class SymbolRECompiler (line 23) | class SymbolRECompiler: method __init__ (line 26) | def __init__(self, str, recordSourcePositions=0): method toFSA (line 30) | def toFSA(self, minimize=1): method readChar (line 42) | def readChar(self): method peekChar (line 47) | def peekChar(self): method readToken (line 51) | def readToken(self): method peekToken (line 56) | def peekToken(self): method _readNextToken (line 61) | def _readNextToken(self): method skipTokens (line 71) | def skipTokens(self, bag): method compileExpr (line 75) | def compileExpr(self): method compileConjunction (line 82) | def compileConjunction(self): method compileSequence (line 90) | def compileSequence(self): method compileItem (line 96) | def compileItem(self): class CharacterSet (line 124) | class CharacterSet: method __init__ (line 125) | def __init__(self, ranges): method __cmp__ (line 154) | def __cmp__(self, other): method __hash__ (line 157) | def __hash__(self): method convertString (line 160) | def convertString(self, _str): method matches (line 172) | def matches(self, c): method complement (line 178) | def complement(self): method union (line 188) | def union(self, other): method __add__ (line 200) | def __add__(self, other): method intersection (line 203) | def intersection(self, other): method __str__ (line 217) | def __str__(self): method crep (line 249) | def crep(self, c): method __repr__ (line 252) | def __repr__(self): class RECompiler (line 266) | class RECompiler(SymbolRECompiler): method _readNextToken (line 267) | def _readNextToken(self): method readCSetInnards (line 292) | def readCSetInnards(self): function compileRE (line 304) | def compileRE(_str, minimize=1, recordSourcePositions=0): function _printCompiledREs (line 310) | def _printCompiledREs(): function _test (line 342) | def _test(reset=0): FILE: charm/toolbox/redundancyschemes.py class InMessageRedundancy (line 13) | class InMessageRedundancy: method __init__ (line 17) | def __init__(self): method encode (line 20) | def encode(self, message): method decode (line 26) | def decode(self, encMessage): class ExtraBitsRedundancy (line 34) | class ExtraBitsRedundancy: method __init__ (line 40) | def __init__(self): method encode (line 43) | def encode(self, message): method decode (line 47) | def decode(self, encMessage, label=""): class WilliamsRedundancy (line 50) | class WilliamsRedundancy: method __init__ (line 56) | def __init__(self): method encode (line 59) | def encode(self, message): method decode (line 63) | def decode(self, encMessage, label=""): FILE: charm/toolbox/schemebase.py class SchemeBase (line 21) | class SchemeBase: method __init__ (line 23) | def __init__(self): method _setProperty (line 26) | def _setProperty(self, scheme=None, secDef=None, assumption=None, mess... method _getProperty (line 40) | def _getProperty(self): method _checkProperty (line 43) | def _checkProperty(self, scheme, prop): method verifyTypeStruct (line 67) | def verifyTypeStruct(self, source, target, _types=dict): method verifyType (line 95) | def verifyType(self, source, target): method getTypes (line 105) | def getTypes(self, object, keys, _type=tuple): class Input (line 125) | class Input: method __init__ (line 126) | def __init__(self, *_types): method __call__ (line 130) | def __call__(self, func, *args): class Output (line 154) | class Output: method __init__ (line 155) | def __init__(self, *_types): method __call__ (line 162) | def __call__(self, func, *args): FILE: charm/toolbox/secretshare.py class SecretShare (line 4) | class SecretShare: method __init__ (line 5) | def __init__(self, element, verbose_status=True): method P (line 9) | def P(self, coeff, x): method genShares (line 16) | def genShares(self, secret, k=0, n=0, q=None, x_points=None): method recoverCoefficients (line 46) | def recoverCoefficients(self, list): method recoverCoefficientsDict (line 59) | def recoverCoefficientsDict(self, dict): method recoverSecret (line 71) | def recoverSecret(self, shares): FILE: charm/toolbox/secretutil.py class SecretUtil (line 8) | class SecretUtil: method __init__ (line 9) | def __init__(self, groupObj, verbose=True): method P (line 13) | def P(self, coeff, x): method genShares (line 20) | def genShares(self, secret, k, n): method recoverCoefficients (line 32) | def recoverCoefficients(self, list): method recoverSecret (line 47) | def recoverSecret(self, shares): method getCoefficients (line 59) | def getCoefficients(self, tree): method _getCoefficientsDict (line 64) | def _getCoefficientsDict(self, tree, coeff_list, coeff=1): method _calculateShares (line 85) | def _calculateShares(self, secret, tree, _type=dict): method calculateSharesList (line 99) | def calculateSharesList(self, secret, tree): method calculateSharesDict (line 103) | def calculateSharesDict(self, secret, tree): method _compute_shares (line 107) | def _compute_shares(self, secret, subtree, List): method strip_index (line 133) | def strip_index(self, node_str): method createPolicy (line 138) | def createPolicy(self, policy_string): method prune (line 149) | def prune(self, policy, attributes): method getAttributeList (line 154) | def getAttributeList(self, Node): method _getAttributeList (line 159) | def _getAttributeList(self, Node, List): FILE: charm/toolbox/securerandom.py class SecureRandom (line 12) | class SecureRandom(): method __init__ (line 13) | def __init__(self): method getRandomBytes (line 15) | def getRandomBytes(self, length): method addSeed (line 18) | def addSeed(self, seed): class SecureRandomFactory (line 25) | class SecureRandomFactory(): method getInstance (line 33) | def getInstance(self): class OpenSSLRand (line 37) | class OpenSSLRand(SecureRandom): method __init__ (line 39) | def __init__(self): method getRandomBytes (line 44) | def getRandomBytes(self, length): method getRandomBits (line 49) | def getRandomBits(self, length): class WeakRandom (line 55) | class WeakRandom(SecureRandom): method __init__ (line 56) | def __init__(self): method getRandomBytes (line 58) | def getRandomBytes(self, length): method addSeed (line 60) | def addSeed(self, seed): method myrandom (line 63) | def myrandom(self, length, printable=False): FILE: charm/toolbox/sigmaprotocol.py class Sigma (line 8) | class Sigma(Protocol): method __init__ (line 9) | def __init__(self, groupObj, common_input=None): method prover_state1 (line 30) | def prover_state1(self): method prover_state3 (line 33) | def prover_state3(self, input): method prover_state5 (line 36) | def prover_state5(self, input): method verifier_state2 (line 39) | def verifier_state2(self, input): method verifier_state4 (line 42) | def verifier_state4(self, input): method verifier_state6 (line 45) | def verifier_state6(self, input): FILE: charm/toolbox/specialprimes.py class BlumWilliamsInteger (line 8) | class BlumWilliamsInteger: method __init__ (line 9) | def __init__(self): method generatePrimes (line 12) | def generatePrimes(self, n): method generateBlumWilliamsInteger (line 38) | def generateBlumWilliamsInteger(self, n, p=0, q=0): FILE: charm/toolbox/symcrypto.py class MessageAuthenticator (line 9) | class MessageAuthenticator(object): method __init__ (line 26) | def __init__(self, key, alg="HMAC_SHA2"): method mac (line 35) | def mac(self, msg, associatedData=b''): method verify (line 61) | def verify(self, msgAndDigest, associatedData=b''): class SymmetricCryptoAbstraction (line 90) | class SymmetricCryptoAbstraction(object): method __init__ (line 110) | def __init__(self, key, alg = AES, mode = MODE_CBC): method _initCipher (line 119) | def _initCipher(self,IV = None): method __encode_decode (line 125) | def __encode_decode(self,data,func): method _encode (line 133) | def _encode(self, data): method _decode (line 136) | def _decode(self, data): method encrypt (line 139) | def encrypt(self, message): method _encrypt (line 148) | def _encrypt(self, message): method decrypt (line 159) | def decrypt(self, cipherText): method _decrypt (line 163) | def _decrypt(self, cipherText): class AuthenticatedCryptoAbstraction (line 168) | class AuthenticatedCryptoAbstraction(SymmetricCryptoAbstraction): method encrypt (line 203) | def encrypt(self, msg, associatedData=''): method decrypt (line 242) | def decrypt(self, cipherText, associatedData=''): FILE: charm/toolbox/threshold_sharing.py class ThresholdSharing (line 45) | class ThresholdSharing: method __init__ (line 73) | def __init__(self, groupObj: ECGroupType) -> None: method _eval_polynomial (line 88) | def _eval_polynomial(self, coeffs: List[ZRElement], x: Any) -> ZRElement: method share (line 122) | def share(self, secret: ZRElement, threshold: int, num_parties: int) -... method share_with_verification (line 164) | def share_with_verification(self, secret: ZRElement, generator: GEleme... method verify_share (line 212) | def verify_share(self, party_id: int, share: ZRElement, commitments: L... method reconstruct (line 240) | def reconstruct(self, shares: Dict[int, ZRElement], threshold: int) ->... method lagrange_coefficient (line 276) | def lagrange_coefficient(self, party_ids: List[int], i: int, x: int = ... method add_shares (line 310) | def add_shares(self, shares1: Dict[int, ZRElement], shares2: Dict[int,... method refresh_shares (line 343) | def refresh_shares(self, shares: Dict[int, ZRElement], threshold: int)... class PedersenVSS (line 383) | class PedersenVSS(ThresholdSharing): method share_with_blinding (line 409) | def share_with_blinding(self, secret: ZRElement, g: GElement, h: GElem... method verify_pedersen_share (line 473) | def verify_pedersen_share(self, party_id: int, share: ZRElement, blind... method combine_pedersen_commitments (line 512) | def combine_pedersen_commitments(self, commitments_list: List[List[GEl... FILE: charm/toolbox/xmlserialize.py function writeToXML (line 7) | def writeToXML(object, groupObj, name=None): function getText (line 54) | def getText(nodelist): function parseFromXML (line 62) | def parseFromXML(xmlObjectString, group=None): FILE: charm/toolbox/zknode.py class BinNode (line 14) | class BinNode: method __init__ (line 31) | def __init__(self, value, left=None, right=None): method __str__ (line 51) | def __str__(self): method getAttribute (line 68) | def getAttribute(self): method getLeft (line 75) | def getLeft(self): method getRight (line 79) | def getRight(self): method addSubNode (line 83) | def addSubNode(self, left, right): method traverse (line 88) | def traverse(self, function): FILE: charm/zkp_compiler/and_proof.py class ANDProofData (line 94) | class ANDProofData: method __init__ (line 97) | def __init__(self, sub_proofs: List[Dict[str, Any]], shared_challenge:... class ANDProof (line 111) | class ANDProof: method _generate_commitment (line 138) | def _generate_commitment(cls, group, statement): method _compute_shared_challenge (line 179) | def _compute_shared_challenge(cls, group, statements, commitments): method _compute_response (line 220) | def _compute_response(cls, group, statement, random_values, challenge): method prove_non_interactive (line 256) | def prove_non_interactive(cls, group: PairingGroup, statements: List[D... method _verify_sub_proof (line 307) | def _verify_sub_proof(cls, group, statement, sub_proof, challenge): method verify_non_interactive (line 363) | def verify_non_interactive(cls, group: PairingGroup, statements: List[... method serialize_proof (line 425) | def serialize_proof(cls, proof: 'ANDProofData', group: PairingGroup) -... method deserialize_proof (line 444) | def deserialize_proof(cls, data: bytes, group: PairingGroup) -> 'ANDPr... FILE: charm/zkp_compiler/batch_verify.py class BatchVerifier (line 86) | class BatchVerifier: method __init__ (line 94) | def __init__(self, group): method add_schnorr_proof (line 105) | def add_schnorr_proof(self, g, h, proof): method add_dleq_proof (line 117) | def add_dleq_proof(self, g1, h1, g2, h2, proof): method verify_all (line 131) | def verify_all(self): method clear (line 163) | def clear(self): function batch_verify_schnorr (line 170) | def batch_verify_schnorr(group, proofs_data): function batch_verify_dleq (line 236) | def batch_verify_dleq(group, proofs_data): FILE: charm/zkp_compiler/dleq_proof.py class DLEQProofData (line 86) | class DLEQProofData: method __init__ (line 89) | def __init__(self, commitment1: Any, commitment2: Any, challenge: Any,... class DLEQProof (line 107) | class DLEQProof: class Prover (line 145) | class Prover: method __init__ (line 148) | def __init__(self, secret_x, group): method create_commitment (line 160) | def create_commitment(self, g1, g2): method create_response (line 180) | def create_response(self, challenge): class Verifier (line 196) | class Verifier: method __init__ (line 199) | def __init__(self, group): method create_challenge (line 209) | def create_challenge(self): method verify (line 220) | def verify(self, g1, h1, g2, h2, commitment1, commitment2, response): method _compute_challenge_hash (line 255) | def _compute_challenge_hash(cls, group, g1, h1, g2, h2, commitment1, c... method prove_non_interactive (line 282) | def prove_non_interactive(cls, group: PairingGroup, g1: Any, h1: Any, ... method verify_non_interactive (line 323) | def verify_non_interactive(cls, group: PairingGroup, g1: Any, h1: Any,... method serialize_proof (line 384) | def serialize_proof(cls, proof: DLEQProofData, group: PairingGroup) ->... method deserialize_proof (line 405) | def deserialize_proof(cls, data: bytes, group: PairingGroup) -> DLEQPr... FILE: charm/zkp_compiler/or_proof.py class ORProofData (line 69) | class ORProofData: method __init__ (line 72) | def __init__(self, commitment1: Any, commitment2: Any, challenge1: Any... class ORProof (line 95) | class ORProof: method _compute_challenge_hash (line 104) | def _compute_challenge_hash(cls, group, g, h1, h2, u1, u2): method prove_non_interactive (line 125) | def prove_non_interactive(cls, group: PairingGroup, g: Any, h1: Any, h... method verify_non_interactive (line 196) | def verify_non_interactive(cls, group: PairingGroup, g: Any, h1: Any, ... method serialize_proof (line 262) | def serialize_proof(cls, proof: 'ORProofData', group: PairingGroup) ->... method deserialize_proof (line 285) | def deserialize_proof(cls, data: bytes, group: PairingGroup) -> 'ORPro... FILE: charm/zkp_compiler/range_proof.py class RangeProofData (line 64) | class RangeProofData: method __init__ (line 71) | def __init__(self, bit_commitments: List[Any], bit_proofs: List[Dict[s... class RangeProof (line 89) | class RangeProof: method create_pedersen_commitment (line 103) | def create_pedersen_commitment(cls, group, g, h, value, randomness): method _create_bit_or_proof (line 124) | def _create_bit_or_proof(cls, group, g, h, bit_commitment, bit, bit_ra... method _verify_bit_or_proof (line 185) | def _verify_bit_or_proof(cls, group, g, h, bit_commitment, proof): method prove (line 221) | def prove(cls, group: PairingGroup, g: Any, h: Any, value: int, random... method verify (line 300) | def verify(cls, group: PairingGroup, g: Any, h: Any, commitment: Any, ... method serialize_proof (line 377) | def serialize_proof(cls, proof: 'RangeProofData', group: PairingGroup)... method deserialize_proof (line 398) | def deserialize_proof(cls, data: bytes, group: PairingGroup) -> 'Range... FILE: charm/zkp_compiler/representation_proof.py class RepresentationProofData (line 69) | class RepresentationProofData: method __init__ (line 76) | def __init__(self, commitment: Any, challenge: Any, responses: List[An... class RepresentationProof (line 92) | class RepresentationProof: class Prover (line 138) | class Prover: method __init__ (line 145) | def __init__(self, witnesses, group): method create_commitment (line 158) | def create_commitment(self, generators): method create_response (line 188) | def create_response(self, challenge): class Verifier (line 213) | class Verifier: method __init__ (line 219) | def __init__(self, group): method create_challenge (line 229) | def create_challenge(self): method verify (line 240) | def verify(self, generators, h, commitment, responses): method _compute_challenge_hash (line 281) | def _compute_challenge_hash(cls, group, generators, h, commitment): method prove_non_interactive (line 309) | def prove_non_interactive(cls, group: PairingGroup, generators: List[A... method verify_non_interactive (line 360) | def verify_non_interactive(cls, group: PairingGroup, generators: List[... method serialize_proof (line 429) | def serialize_proof(cls, proof: 'RepresentationProofData', group: Pair... method deserialize_proof (line 449) | def deserialize_proof(cls, data: bytes, group: PairingGroup) -> 'Repre... FILE: charm/zkp_compiler/schnorr_proof.py class Proof (line 17) | class Proof: method __init__ (line 20) | def __init__(self, commitment: Any, challenge: Any, response: Any, pro... class SchnorrProof (line 36) | class SchnorrProof: class Prover (line 45) | class Prover: method __init__ (line 48) | def __init__(self, secret_x, group): method create_commitment (line 60) | def create_commitment(self, g): method create_response (line 75) | def create_response(self, challenge): class Verifier (line 91) | class Verifier: method __init__ (line 94) | def __init__(self, group): method create_challenge (line 104) | def create_challenge(self): method verify (line 115) | def verify(self, g, h, commitment, response): method _compute_challenge_hash (line 137) | def _compute_challenge_hash(cls, group, g, h, commitment): method prove_non_interactive (line 155) | def prove_non_interactive(cls, group: PairingGroup, g: Any, h: Any, x:... method verify_non_interactive (line 184) | def verify_non_interactive(cls, group: PairingGroup, g: Any, h: Any, p... method serialize_proof (line 235) | def serialize_proof(cls, proof: Proof, group: PairingGroup) -> bytes: method deserialize_proof (line 255) | def deserialize_proof(cls, data: bytes, group: PairingGroup) -> Proof: FILE: charm/zkp_compiler/thread_safe.py class ThreadSafeProver (line 48) | class ThreadSafeProver: method __init__ (line 62) | def __init__(self, prover): method __enter__ (line 72) | def __enter__(self): method __exit__ (line 77) | def __exit__(self, exc_type, exc_val, exc_tb): method create_commitment (line 82) | def create_commitment(self, *args, **kwargs): method create_response (line 87) | def create_response(self, *args, **kwargs): class ThreadSafeVerifier (line 93) | class ThreadSafeVerifier: method __init__ (line 107) | def __init__(self, verifier): method __enter__ (line 117) | def __enter__(self): method __exit__ (line 122) | def __exit__(self, exc_type, exc_val, exc_tb): method create_challenge (line 127) | def create_challenge(self, *args, **kwargs): method verify (line 132) | def verify(self, *args, **kwargs): function thread_safe_proof (line 138) | def thread_safe_proof(func): FILE: charm/zkp_compiler/zk_demo.py function demo_non_interactive_proof (line 86) | def demo_non_interactive_proof(): function demo_interactive_proof (line 148) | def demo_interactive_proof(): function demo_serialization (line 204) | def demo_serialization(): function demo_factory_api (line 272) | def demo_factory_api(): function legacy_network_demo (line 319) | def legacy_network_demo(argv): function print_usage (line 395) | def print_usage(): function main (line 426) | def main(argv): FILE: charm/zkp_compiler/zkp_factory.py function validate_statement (line 21) | def validate_statement(statement): class SchnorrProofInstance (line 55) | class SchnorrProofInstance: method __init__ (line 63) | def __init__(self, group, g, h, secret_x=None): method prove (line 78) | def prove(self, interactive=False): method verify (line 101) | def verify(self, proof): method create_interactive_prover (line 115) | def create_interactive_prover(self): method create_interactive_verifier (line 129) | def create_interactive_verifier(self): class ZKProofFactory (line 139) | class ZKProofFactory: method create_schnorr_proof (line 160) | def create_schnorr_proof(group, g, h, secret_x=None): method create_from_statement (line 177) | def create_from_statement(group, statement, public_params, secret_para... function prove_and_verify_schnorr (line 235) | def prove_and_verify_schnorr(group, g, h, x): function prove_and_verify_dleq (line 264) | def prove_and_verify_dleq(group, g1, h1, g2, h2, x): function configure_logging (line 297) | def configure_logging(level: str = 'WARNING') -> None: FILE: charm/zkp_compiler/zkp_generator.py function newStateFunction (line 56) | def newStateFunction(func_name, args=True): function addToCode (line 64) | def addToCode(lines): function KoDLFixedBase (line 74) | def KoDLFixedBase(publicDict, secretDict, baseVarKey, expVarKey, statesC... function genIZKPreamble (line 170) | def genIZKPreamble(): function parseAndGenerateCode (line 205) | def parseAndGenerateCode(public, secretDict, statement, party_ID, intera... function extract (line 230) | def extract(node, pk, sk, sk_pk_map, gen): function dict_check (line 258) | def dict_check(node, pk, sk): function write_out (line 273) | def write_out(name, prefix, value): function executeIntZKProof (line 286) | def executeIntZKProof(public, secret, statement, party_info, interactive... function executeNonIntZKProof (line 345) | def executeNonIntZKProof(public, secret, statement, party_info): FILE: charm/zkp_compiler/zkparser.py function upcaseTokens (line 39) | def upcaseTokens(s, loc, toks): function _set_parse_action (line 43) | def _set_parse_action(element, action): function _parse_string (line 51) | def _parse_string(parser, string): function createNode (line 62) | def createNode(s, loc, toks): function parseNumConditional (line 69) | def parseNumConditional(s, loc, toks): function debug (line 75) | def debug(s, loc, toks): function markPublic (line 81) | def markPublic(s, loc, toks): function markSecret (line 87) | def markSecret(s, loc, toks): function pushFirst (line 93) | def pushFirst(s, loc, toks): function createTree (line 99) | def createTree(op, node1, node2): class ZKParser (line 125) | class ZKParser: method __init__ (line 150) | def __init__(self, verbose=False): method getBNF (line 160) | def getBNF(self): method evalStack (line 220) | def evalStack(self, stack): method parse (line 237) | def parse(self, str): method type_check (line 245) | def type_check(self, node, pk, sk): FILE: deps/relic/build_configs.py function prepare_configuration (line 16) | def prepare_configuration(build_dir): function config_configuration (line 21) | def config_configuration(config, build_dir, relic_target): function build_configuration (line 30) | def build_configuration(build_dir): function test_configuration (line 36) | def test_configuration(config): function clean_configuration (line 42) | def clean_configuration(build_dir): function conf_build_test_clean (line 47) | def conf_build_test_clean(config, relic_target): function extend_default_config (line 63) | def extend_default_config(extension, test_num): FILE: doc/autoschemes.py function find_modules (line 11) | def find_modules(path=".", excludeTests=True): function gen_toc (line 33) | def gen_toc(modules, keyword, rel_mod_dir=""): function gen_toc2 (line 47) | def gen_toc2(keyword, data): function replace_toc (line 66) | def replace_toc(thefile, keyword, modules, rel_mod_dir): function replace_toc2 (line 78) | def replace_toc2(thefile, keyword, data): #modules, rel_mod_dir): function gen_doc_stub (line 91) | def gen_doc_stub(module): function auto_add_rst (line 102) | def auto_add_rst(modules, rstdir="", create=False): FILE: embed/charm_embed_api.c function set_python_path (line 32) | int set_python_path(const char *path_to_mod) function InitializeCharm (line 71) | int InitializeCharm(void) function CleanupCharm (line 90) | void CleanupCharm(void) function CheckError (line 95) | void CheckError(char *error_msg) function result_t (line 103) | result_t getType(PyObject *o) function Charm_t (line 141) | Charm_t *InitPairingGroup(Charm_t *pModule, const char *param_id) function Charm_t (line 187) | Charm_t *InitECGroup(Charm_t *pModule, int param_id) function Charm_t (line 233) | Charm_t *InitIntegerGroup(Charm_t *pModule, int param_id) function Charm_t (line 281) | Charm_t *InitScheme(const char *class_file, const char *class_name, Char... function Charm_t (line 327) | Charm_t *InitAdapter(const char *class_file, const char *class_name, Cha... function Charm_t (line 375) | Charm_t *CallMethod(Charm_t *pObject, const char *func_name, char *types... function Charm_t (line 462) | Charm_t *GetIndex(Charm_t *pObject, int index) function Charm_t (line 485) | Charm_t *GetDict(Charm_t *pObject, char *key) function Charm_t (line 497) | Charm_t *objectToBytes(Charm_t *object, Charm_t *group) function Charm_t (line 543) | Charm_t *bytesToObject(Charm_t *object, Charm_t *group) FILE: embed/charm_embed_api.h type result_t (line 74) | typedef enum _result_type { type PyObject (line 101) | typedef PyObject Charm_t; FILE: embed/test.c function runABETest (line 36) | int runABETest(Charm_t *pGroup) function runHybridABETest (line 93) | int runHybridABETest(Charm_t *pGroup) function main (line 163) | int main(int argc, char *argv[]) FILE: examples/xrpl_memo_demo.py function create_threshold_wallet (line 38) | def create_threshold_wallet(name: str, threshold: int = 2, num_parties: ... function main (line 67) | def main(): FILE: setup.py function replaceString (line 6) | def replaceString(file,searchExp,replaceExp): function read_config (line 15) | def read_config(file): function read_version_file (line 26) | def read_version_file(): function run_pkg_config (line 34) | def run_pkg_config(package, flags): function get_pkg_config_flags (line 60) | def get_pkg_config_flags(packages): function get_fallback_paths (line 100) | def get_fallback_paths(): function merge_flags (line 138) | def merge_flags(flags1, flags2): function get_default_config (line 150) | def get_default_config():