ethereum / ethereum/py_ecc

Question: Show work for BLS12-381 Fq12 modulus

Open
#44 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
231
Forks
88
PR merge metrics
No merged PRs in 30d

Description

I'm learning more about bls12-381 and currently stumped by one part of the code:
I'm assuming that
```python3
FQ12_modulus_coeffs = (2, 0, 0, 0, 0, 0, -2, 0, 0, 0, 0, 0) # Implied + [1]
```
means x12 -2x6+2
and that it is the irreducable polynomial used as a modulus for Fq12.

I feel like this had to be from the specification https://github.com/zkcrypto/pairing/tree/master/src/bls12_381#bls12-381-instantiation , but I don't see how it was done.

I feel pretty dense with this one, but I'm hoping that someone more knowledgable can show the work on how the above polynomial was created.

Edit: If this is off-topic for this repo, feel free to close this issue

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.