LIBPBC
This is tested against libpbc version 0.4.18 .
(The v0.8+ builds will pull the right version of libpbc and try to build it on some platforms.)
COPYRIGHT
Copyright (C) 2008 by Paul Miller
SYNOPSIS
use Crypt::PBC;
my $pairing = new Crypt::PBC("params_d.txt");
my $G1 = $pairing->init_G1->random;
my $G2 = $pairing->init_G2->random->double->square;
my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 );
-----------------------------
"Chapter 1. Overview"
The following text is the Overview chapter from the PBC library
documentation:
The PBC library is a free portable C library designed to make it
easy to implement pairing-based cryptosystems. It provides an
abstract interface to a cyclic group with a bilinear pairing, and
the programmer does not need to worry about, or even know about
elliptic curves.
It is built on top of GMP, another C library which performs
arbitrary precision arithmetic on integers, rationals and floats
with strong emphasis on portability and speed.
The PBC library homepage: http://crypto.stanford.edu/pbc/
The GMP library homepage: http://www.swox.com/gmp/