🚧 This repository still under development.
This repository provide you a template to create a stateful pre-compiled contract into hyperledger besu client.
- Git
- Java OpenJDK 21
- Docker engine
**required if build an docker image
./gradlew test
./gradlew build
- Stateful Pre-compiled excluding from the
EVM
but it's cause the problem directly to the node such as- Memory leak you pre-compiled logic consume memory more that Xmx configure of JVM.
- Database Corrupted and Data Integrity problem can be occurs cause you can directly accessing to storage of each account. this vulnerabilities same as in Smart Contract level write to arbitrary storage location
- Execution time exceeds the maximum configured duration (block period).
- Calls to external system and
/POST
something to external system databaseSHOULD
be avoid due to if the transaction reverted external system can't know that the actual status of transaction was successful or not (reverted).
- Create
StatefulPrecompiledContract
class. - Create extended
StatefulPrecompiledContract
class for supportedEnclave
for secure execution environment. - Testing
StatefulPrecompiledContract
class. - Example implementation form
StatefulPrecompiledContract
class. ./gradlew build
task for building ahyperledger/besu
with a stateful precompiled contract.