Cairo Hashes

Explain Cairo hashing with Poseidon and Pedersen, Hash/HashState traits, and hashing structs/arrays; use when a request involves computing hashes or deriving Hash in Cairo.

teddyjfpender 39fd33d 2 files · 1.5 KB Updated

File contents

Cairo Hashes

Overview

Guide hashing in Cairo with Poseidon and Pedersen and the core hash traits.

Quick Use

  • Read references/hashes.md before answering.
  • Pick Poseidon for most Cairo use cases; mention Pedersen for legacy compatibility.
  • Use HashStateTrait + update/finalize in examples.

Response Checklist

  • Use PoseidonTrait::new() or PedersenTrait::new(base) to initialize state.
  • Derive Hash only if all fields are hashable.
  • For arrays, hash a span with poseidon_hash_span.

Example Requests

  • "How do I hash a struct in Cairo?"
  • "Should I use Pedersen or Poseidon?"
  • "Why can't I derive Hash for this struct?"

teddyjfpender/skill-issues/tree/main/skills/cairo-hashes commit 39fd33d165

Frequently asked questions

npx skillmds@latest add teddyjfpender/cairo-hashes