Skip to content
## New features and breaking API changes:
- Implementation of a Rescue instantiation: https://gitlab.com/dannywillems/ocaml-bls12-381/-/commit/b99d4123072aab59367a178e932fd8b5b4fbe5c3
- Implementation of an optimisation for Poseidon: https://gitlab.com/dannywillems/ocaml-bls12-381/-/merge_requests/181 and https://gitlab.com/dannywillems/ocaml-bls12-381/-/merge_requests/174
- Poseidon and Rescue do not use arrays to initialize the state and to get the state: 608e27d448d6d77e8e9773e278e10d589e0d29d6
- Add JSOO support: https://gitlab.com/dannywillems/ocaml-bls12-381/-/merge_requests/170
- Get rid of the virtual library: https://gitlab.com/dannywillems/ocaml-bls12-381/-/merge_requests/173
- Add `Bls12_381.GT` representing the prime subgroup of `Bls12_381.Fq12`: https://gitlab.com/dannywillems/ocaml-bls12-381/-/commit/bb1d1c5123ec66f5e2ac34b4c91e2baadf9b05c4

## Improvements
- Speed up `miller_loop` implementation: https://gitlab.com/dannywillems/ocaml-bls12-381/-/merge_requests/167
- Speed up `Fr.pow`: https://gitlab.com/dannywillems/ocaml-bls12-381/-/merge_requests/163
- Speed up `Fq12.pow`: https://gitlab.com/dannywillems/ocaml-bls12-381/-/merge_requests/164


## Bugfix
- fix `blst_pairing_init`: https://gitlab.com/dannywillems/ocaml-bls12-381/-/issues/63
- fix wrong usage of `Random.State` in `Fr.random`, `G1.random`, `G2.random`: https://gitlab.com/dannywillems/ocaml-bls12-381/-/issues/60
- `Bls12_381.Signature.sk_of_bytes_exn` wasn't handling correctly the case of a `sk` value not in the field: https://gitlab.com/dannywillems/ocaml-bls12-381/-/merge_requests/180/