diff options
author | 2015-09-04 09:25:34 +0200 | |
---|---|---|
committer | 2015-09-04 09:25:34 +0200 | |
commit | 3baeb11a8fbcfcdbc31976d421f17b85503b3ecd (patch) | |
tree | 04891d88c1127148f1b390b5a24414e85b270aee /moon-abe/pbc-0.5.14/include/pbc_g_param.h | |
parent | 67c5b73910f5fc437429c356978081b252a59480 (diff) |
init attribute-based encryption
Change-Id: Iba1a3d722110abf747a0fba366f3ebc911d25b25
Diffstat (limited to 'moon-abe/pbc-0.5.14/include/pbc_g_param.h')
-rw-r--r-- | moon-abe/pbc-0.5.14/include/pbc_g_param.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/moon-abe/pbc-0.5.14/include/pbc_g_param.h b/moon-abe/pbc-0.5.14/include/pbc_g_param.h new file mode 100644 index 00000000..0b7bf45d --- /dev/null +++ b/moon-abe/pbc-0.5.14/include/pbc_g_param.h @@ -0,0 +1,28 @@ +// Type G pairings. + +// Requires: +// * mnt.h +// * param.h +#ifndef __PBC_G_PARAM_H__ +#define __PBC_G_PARAM_H__ + +struct symtab_s; +int pbc_param_init_g(pbc_param_ptr par, struct symtab_s *tab); + +/*@manual gparam +Type G curves are generated using the complex multiplication (CM) method. This +function sets 'p' to a type G pairing parameters from CM parameters 'cm'. +They have embedding degree 10. + +To be secure, generic discrete log algorithms must be infeasible in groups of +order r, and finite field discrete log algorithms must be infeasible in finite +fields of order q^6^. For usual CM parameters, r is a few bits smaller than q. + +They are quite slow at the moment so for now type F is a better choice. + +The file `param/g149.param` contains parameters for a +type G pairing with 149-bit group and field sizes. +*/ +void pbc_param_init_g_gen(pbc_param_t p, pbc_cm_ptr cm); + +#endif //__PBC_G_PARAM_H__ |