Contract Architecture
Core Program Structure
The Solana attestation contract is implemented as an Anchor program with the following key components: Program ID:BMr9aui54YuxtpBzWXiFNmnr2iH6etRu7rMFJnKxjtpY
Account Structures
Attestation Account
The core attestation data structure with comprehensive metadata tracking:Schema Data Structure
Schema definitions with flexible validation and resolver support:Authority Management
Authority registration and verification system:Core Operations
Attestation Creation
Standard Attestation Create attestations with flexible data and optional references:Schema Management
Schema Creation Define attestation templates with validation rules:Authority Operations
Authority Registration Self-registration for schema creation permissions:PDA Architecture
Account Derivation
The contract uses deterministic PDA generation for secure account management: Attestation PDA Seeds:"attestation"- Schema UID bytes
- Recipient public key bytes
- Optional reference string bytes
"schema"- Authority public key bytes
- Schema name bytes
"authority"- Authority public key bytes
Benefits of PDA Usage
- Deterministic Addresses: Predictable account locations
- No Private Keys: PDAs cannot sign transactions
- Cross-Program Invocation: Secure program-to-program calls
- Efficient Lookups: Direct address calculation without indexing
Security Features
Access Control
- Authority Verification: Only verified authorities can create schemas
- Attestation Ownership: Only attesters can revoke their attestations
- Schema Enforcement: Attestations must reference valid schemas
Cryptographic Verification
- Ed25519 Signatures: For delegated attestations
- PDA Verification: Automatic validation of derived addresses
- Replay Protection: Nonce-based duplicate prevention
Data Integrity
- Immutable Attestations: Core attestation data cannot be modified
- Revocation Tracking: Explicit revocation timestamps
- Schema Validation: Resolver contract integration
Fee Structure
Levy System
Optional fee collection for schema operations:Fee Collection
- Schema Creation: Optional levy on schema deployment
- Attestation Fees: Per-attestation charges
- Token Support: SOL and SPL token payments
- Flexible Recipients: Configurable fee destinations
Error Handling
Custom Error Types
The contract implements comprehensive error handling:Events
Attestation Events
Track attestation lifecycle with detailed events:Schema Events
Track schema management operations:Integration Patterns
Client Integration
JavaScript/TypeScriptRust Integration
Deployment Information
Network Addresses
| Network | Program ID | Status |
|---|---|---|
| Devnet | BMr9aui54YuxtpBzWXiFNmnr2iH6etRu7rMFJnKxjtpY | Active |
| Mainnet | TBD | Planned |