The Sismo Badges repository contains the smart contracts that power the Sismo Protocol, a decentralized system for issuing and managing digital attestations and badges on Ethereum. Written primarily in TypeScript, the repository implements a credential verification and badge management framework built around zero-knowledge proofs and decentralized identity principles.
The protocol centers on three core smart contracts that work together to create a complete attestation ecosystem. The AttestationsRegistry contract serves as the central storage for all attestations and is governed by a governance mechanism that controls which issuers are authorized to record attestations. The Attester contract is an abstract base contract that all attesters must inherit from, establishing a standard interface for entities that issue attestations. These attesters verify user requests and construct attestations that get recorded in the registry. The Badges contract provides a stateless, non-transferable token view of attestations following the ERC1155 standard, allowing attestations to be read and interacted with as tokens on the blockchain.
The repository includes concrete implementations of attesters that demonstrate how to build custom issuers. The HydraS1SimpleAttester uses the Hydra S1 proving scheme with nullifiers, requiring users to provide zero-knowledge proofs alongside their requests to generate attestations. The HydraS1AccountboundAttester extends this functionality with an accountbound variant, allowing users to update where their attestations are stored at will. These implementations showcase the flexibility of the attester framework for different use cases.
The repository is structured to support extensibility, with clear guidance for developers who want to create new attesters. New attesters must implement two required functions: a verification function that validates user requests against provided proofs, and a function that builds the actual attestations from verified requests. Optional hook functions allow attesters to execute custom logic before and after attestations are recorded. The repository includes comprehensive documentation and examples, with the HydraS1SimpleAttester serving as a reference implementation.
According to GitGenius activity tracking, the repository shows measured engagement with a median issue and pull request response latency of 40.3 hours across tracked items. SvytDola has been identified as the most active triager and contributor in the tracked period. The repository maintains connections with other projects through overlapping contributors, linking to repositories including astral-sh/ruff, feast-dev/feast, and junegunn/fzf, suggesting cross-pollination of development practices and expertise.
The project is classified across multiple domains reflecting its comprehensive approach to digital credentials and identity verification, including badge management, credential systems, reputation frameworks, and decentralized identity integration. The repository welcomes community contributions through pull requests and issues, with developers encouraged to submit new attesters and provide feedback. The codebase is distributed under the MIT License, making it freely available for use and modification. Complete documentation is available through the Sismo protocol documentation portal, and the community maintains active communication channels through Discord and Twitter.