# README
BLS12-377 Implementation in Go
This library is adapted from BLS12-381 implementation
Pairing Instance
A Group instance or a pairing engine instance is not suitable for concurrent processing since an instance has its own preallocated memory for temporary variables. A new instance must be created for each thread.
Base Field
x86 optimized base field is generated with kilic/fp and for native go is generated with goff. Generated codes are slightly edited in both for further requirements.
Scalar Field
Standart big.Int module is currently used for scalar field elements. x86 optimized faster field implementation is planned to be added.
Benchmarks
on 2.3 GHz i7
BenchmarkPairing 1089696 ns/op