Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ristretto Python implements a FieldElement class and hash to curve yet doesn't use our Python hash to curve library. #304

Open
kayabaNerve opened this issue May 10, 2021 · 2 comments
Labels
optimization This could be better

Comments

@kayabaNerve
Copy link
Member

I wrote one as part of my work with BLS. Ristretto defines one, which we aren't using, yet was implemented to further test the other parts of Ristretto. I should've done the two in the same place, yet the underlying Ed25519 code went through a LOT of changes and I missed it when working.

Also, as a side note, it's not a proper library. It's just a folder in the project. It may be beneficial to the wider community to expose it.

Not a blocker for Ristretto as it's code hygiene for our test suite in places we're likely to not edit anytime before launch.

@kayabaNerve kayabaNerve added the optimization This could be better label May 10, 2021
@kayabaNerve
Copy link
Member Author

kayabaNerve commented May 10, 2021

To be clear, Ristretto utilizes Elligator which is what has been implemented. It is interesting that Ristretto runs Elligator twice, and implementing it into the Hash to Curve library will require adding another curve type (as we only have Weierstrass due to writing the entire generic setup solely for our BLS needs). As it's not meant to be a robust, independent library, I don't think this is high priority; just something which can be better.

@kayabaNerve
Copy link
Member Author

It should be noted our library is of the IETF standard and Elligator is a fraction of that; the test vectors accordingly also use such a fraction. We cannot fully integrate it, so this is about maximizing integration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
optimization This could be better
Development

No branches or pull requests

1 participant