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

feature: Fail on startup for platform native library loading issues #8342

Open
garyschulte opened this issue Feb 21, 2025 · 0 comments
Open

Comments

@garyschulte
Copy link
Contributor

Description

Besu relies on a couple native code implementations to support ethereum mainnet use case. Specifically kzg currently, and soon in pectra bls precompiles. Since there are no pure java implementations of these cryptographic functions currently, besu should fail with an actionable error message on startup for mainnet configurations which do not have platform support for these functions.

Additionally, for performance reasons, besu should fail to start in mainnet configurations on platforms which do not (yet) have native support for these other cyrptographic functions:

  • bn128/bn254/bn256 - for ECADD, ECMUL, ECPAIRING precompiles
  • secp256k1 - for signing and recovery
  • libarithmetic - for modexp precompile

Acceptance Criteria

  • non-mainnet use cases which do not have these cryptographic requirements should continue to startup and work fine in the absence of these native crypto libraries
  • mainnet use cases should fail if platform support is not detected for required or performance-required native libs
  • error messages should be actionable and end-user friendly
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant