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

secp256k1: Introduce Felt type #10

Closed
pmerkleplant opened this issue Jan 11, 2024 · 2 comments
Closed

secp256k1: Introduce Felt type #10

pmerkleplant opened this issue Jan 11, 2024 · 2 comments
Labels
effort: high High effort to implement

Comments

@pmerkleplant
Copy link
Member

Introduce field element type, called Felt, to circumvent having to bound scalar to Q manually. This should generally increase crysol's reliability, especially with regared to future curves.

Note that this requires refactoring of multiple types (eg SecretKey) and most of the testsuite.

@pmerkleplant pmerkleplant added the effort: high High effort to implement label Jan 11, 2024
@pmerkleplant pmerkleplant changed the title curves/Secp256k1Arithmetic: Introduce Felt type Secp256k1Arithmetic: Introduce Felt type Jan 11, 2024
@pmerkleplant
Copy link
Member Author

This seems only reasonable if operator overloading is implemented to support common arithmetic and binary operators.
However, it's questionable whether the increased security is worth the cumbersome implementation and, especially for users, type conversions.

@github-staff github-staff deleted a comment Apr 26, 2024
@pmerkleplant pmerkleplant changed the title Secp256k1Arithmetic: Introduce Felt type secp256k1: Introduce Felt type Jul 2, 2024
@pmerkleplant
Copy link
Member Author

Introduced in #31.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
effort: high High effort to implement
Projects
None yet
Development

No branches or pull requests

1 participant