jose-compu / jose-compu/opencircom

Circuit: Keccak-256 hashing

Open
#5 0 comments 0 reactions 0 assignees View on GitHub
circuits enhancement help wanted priority: medium
Dominant language
Circom
Stars
2
Forks
2
PR merge metrics
No merged PRs in 30d

Description

## Summary

Add **Keccak-256** (Ethereum-native) hashing in-circuit.

## Motivation

SHA-256 is implemented; Keccak-256 is required for Ethereum state/trie proofs, address derivation, and many L1↔L2 bridges. Currently deferred due to high constraint cost but remains a top community request.

## Scope

- `Keccak256(nBytes)` — variable-length input with padding
- Optional: `Keccak256_256()` fixed 256-bit block helper

## Notes

- Expect significantly higher constraint count than Poseidon; document benchmarks
- Consider partial implementation (single block) for MVP

## Acceptance criteria

- [ ] NIST/Ethereum test vectors pass
- [ ] Constraint count vs SHA-256 documented in README

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the existing SHA-256 circuit and its tests, then review how inputs and padding are represented. Implement the scoped Keccak-256 variant and verify NIST/Ethereum test vectors; document constraint-count comparisons with SHA-256 in README.

Written by the indexing model from the issue text.

Assessment

Domain
cryptography
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.