summaryrefslogtreecommitdiffstats
path: root/moon-abe/pbc-0.5.14/gen/gena1param.c
diff options
context:
space:
mode:
authorWuKong <rebirthmonkey@gmail.com>2015-09-04 09:25:34 +0200
committerWuKong <rebirthmonkey@gmail.com>2015-09-04 09:25:34 +0200
commit3baeb11a8fbcfcdbc31976d421f17b85503b3ecd (patch)
tree04891d88c1127148f1b390b5a24414e85b270aee /moon-abe/pbc-0.5.14/gen/gena1param.c
parent67c5b73910f5fc437429c356978081b252a59480 (diff)
init attribute-based encryption
Change-Id: Iba1a3d722110abf747a0fba366f3ebc911d25b25
Diffstat (limited to 'moon-abe/pbc-0.5.14/gen/gena1param.c')
-rw-r--r--moon-abe/pbc-0.5.14/gen/gena1param.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/moon-abe/pbc-0.5.14/gen/gena1param.c b/moon-abe/pbc-0.5.14/gen/gena1param.c
new file mode 100644
index 00000000..3472beac
--- /dev/null
+++ b/moon-abe/pbc-0.5.14/gen/gena1param.c
@@ -0,0 +1,27 @@
+#include "pbc.h"
+
+int main(void)
+{
+ mpz_t p, q, N;
+
+ mpz_init(p);
+ mpz_init(q);
+ mpz_init(N);
+
+ // In a real application, p and q must be stored somewhere safe.
+ pbc_mpz_randomb(p, 512);
+ pbc_mpz_randomb(q, 512);
+
+ mpz_nextprime(p, p);
+ mpz_nextprime(q, q);
+ mpz_mul(N, p, q);
+
+ pbc_param_t param;
+ pbc_param_init_a1_gen(param, N);
+ pbc_param_out_str(stdout, param);
+ pbc_param_clear(param);
+ mpz_clear(p);
+ mpz_clear(q);
+ mpz_clear(N);
+ return 0;
+}