Workers Auto Approve
BLAKE2b Implementation in Pantheon for Istanbul Hard Fork
pegasys, precompile, BLAKE2b, client, EIP, Istanbul
As part of the Istanbul network upgrade, BLAKE2b support will be added to Ethereum.
This bounty is to implement a BLAKE2b precompile as part of Pantheon that conforms to the specification in EIP-131 (as specified in this [Github PR link](https://github.com/ethereum/EIPs/pull/2129/files)) as required for the Istanbul Hard fork [EIP-1679](http://eips.ethereum.org/EIPS/eip-1679).
**Note: if you wish to work on this bounty for the hackathon, please comment on the Github issue so that others know you are working on it.**
The implementations should use a coding style consistent with the rest of Pantheon. Please see our [Contribution Guidelines](https://github.com/PegaSysEng/pantheon/blob/master/CONTRIBUTING.md) for more information, along with the following classes for reference:
* The RipeMD precompiled contract is expected to have a similar pattern: [Github search results](https://github.com/PegaSysEng/pantheon/search?q=RIPEMD160PrecompiledContract&unscoped_q=RIPEMD160PrecompiledContract)
* The BouncyCastle library has a [Blake2bDigest](https://github.com/bcgit/bc-java/blob/master/core/src/main/java/org/bouncycastle/crypto/digests/Blake2bDigest.java) that may be of use implementing the EIP. Bouncy Castle has a [MIT style license](https://github.com/bcgit/bc-java/blob/master/core/src/main/java/org/bouncycastle/LICENSE.java) and is compatible with our Apache 2.0 license. Be sure to attribute authorship and point to the relevant license when copying code.
### Submission Requirements
* Implementation of a BLAKE2b precompile as part of Pantheon which is compliant with EIP-131 (also possibly known under the numbers (https://github.com/ethereum/EIPs/pull/2129/files) and (https://github.com/ethereum/EIPs/pull/2024/files)) and the requirements for the Istanbul network upgrade.
* Unit test code to validate correct behavior.
* Integration test to demonstrate correct behavior.
* Passes all reference tests for the Blake 2b precompiles in the [Ethereum reference tests](https://github.com/ethereum/tests), if they are available prior to the submission deadline.
* All libraries and dependencies must use Apache 2.0 friendly licenses
* A `demo.md` file that explains how PegaSys engineers can verify that the code works as intended, ideally without the use of 3rd party tools.
### Submission Deadline: July 10th
### Judging Criteria
The bounty will be awarded to the best submission based on compliance the EIP specification, code and testing quality, compliance with [Contribution Guidelines](https://github.com/PegaSysEng/pantheon/blob/master/CONTRIBUTING.md), performance speed, maintenance burdens, and the Submission Requirements above, according to PegaSys.
### Judging Date: July 12th
### Bounty: 1000 DAI
Setup your profile
Tell us a little about you:
No results found for
Type to search skills..
Required [[totalcharacter]] / 240
Are you currently looking for work?
[[ option.string ]]
Setup your profile
Our tools are based on the principles of earn (💰), learn (📖), and meet (💬).
Select the ones you are interested in. You can change it later in your settings.
I'm also an organization manager looking for a great community.
Enable your organization profile
Gitcoin products can help grow community around your brand. Create your tribe, events, and incentivize your community with bounties. Announce new and upcoming events using townsquare. Find top-quality hackers and fund them to work with you on a grant.
These are the organizations you own. If you don't see your organization here please be sure that information is public on your GitHub profile. Gitcoin will sync this information for you.
Select the products you are interested in:
Out of the box you will receive Tribes Lite for your organization. Please provide us with a contact email: