ethereum / ethereum/mpz

Use blake3 hash for garbling on wasm targets

Open
#340 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
298
Forks
82
PR merge metrics
No merged PRs in 30d

Description

Since wasm targets don't have access to AES-NI acceleration, we can use the `blake3` hash for garbling instead of `tccr`.

I ran some browser benchmarks using the `tlsn` harness, replacing the `tccr` hash with a `blake3` hash and saw a 2x improvement in garbling speed.

I used this impl https://github.com/themighty1/mpz/blob/46ee34d44e06c58a045c7573f5260aee059e05ed/crates/core/src/aes.rs#L87

Contributor guide

Open the contributing guide

Research direction

Start with crates/core/src/aes.rs around the referenced line and trace how garbling selects and uses the tccr hash for wasm targets. Use the tlsn harness and browser benchmarks to compare the wasm garbling path; done means wasm targets use blake3 and the reported speed improvement is reproduced without changing other targets.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust, wasm
Domain
cryptography, performance
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.