Commit Graph

1 Commits

Author SHA1 Message Date
Tutus Development 3eaae08a38 Implement ADR-008 on-chain security features
Add three key security mechanisms for the Tutus blockchain:

1. Commit-Reveal for Investments (collocatio.go)
   - Two-phase investment pattern to prevent front-running attacks
   - User commits hash(amount || nonce || investor), waits 10 blocks,
     then reveals actual amount with nonce for verification
   - Methods: commitInvestment, revealInvestment, cancelCommitment
   - InvestmentCommitment state type with CommitmentStatus enum
   - Configurable delay (10 blocks) and reveal window (1000 blocks)

2. Whale Concentration Limits (collocatio.go)
   - Enforces max 5% (configurable) of opportunity pool per investor
   - Prevents wealth concentration in investment opportunities
   - Check performed in invest() method before accepting investment

3. Sybil Resistance Vesting (vita.go)
   - New Vita tokens have 30-day vesting period (2,592,000 blocks)
   - VestedUntil field added to Vita state struct
   - Methods: setVesting (committee), isFullyVested, getVestingInfo
   - Cross-contract methods: IsFullyVestedInternal, GetVestedUntil
   - Prevents mass creation of fake identities for manipulation

Documentation:
- Added docs/ADR-008-UI-Implementation-Guide.md for frontend developers
  with code examples, flow diagrams, and error handling guidance

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 13:23:54 +00:00