Linda Protocol is a decentralized messaging and social protocol built on GunDB and Ethereum, providing secure and private communications with blockchain-based integrity verification.
Linda Protocol combines decentralized storage (GunDB), blockchain security (Ethereum), and end-to-end encryption to create a secure and private communication platform. It includes an internal wallet system for payments and stealth transactions, enabling a complete decentralized social experience.
The project is organized as a monorepo using npm workspaces with the following packages:
- React-based web application
- User interface components
- State management with Redux
- WebRTC integration for P2P
- Wallet connection logic
- Node.js relay server
- Message routing and caching
- Network optimization
- Metrics collection
- DDoS protection
- Core protocol implementation
- Encryption and security
- Smart contracts
- GunDB integration
- IPFS storage
- Shared types and interfaces
- Utility functions
- Constants
- Test helpers
- GunDB for distributed data storage and real-time sync
- Ethereum smart contracts for identity verification and payments
- IPFS integration for decentralized file storage
- High-performance relay servers for optimal message delivery
- Full support for Optimism Sepolia network
- Peer-to-peer message routing
- Distributed state management
- Military-grade end-to-end encryption for all private messages
- Certificate-based access control system
- Message integrity verification through blockchain
- Stealth payment capabilities using zero-knowledge proofs
- Session-based authentication with key rotation
- Multi-factor authentication support
- Forward secrecy for messages
- Encrypted metadata
- Anti-spam protection
- Encrypted private messaging with perfect forward secrecy
- Public and private channels with customizable permissions
- Threaded discussion boards with moderation tools
- Certificate-based friend system with trust levels
- Real-time updates and presence detection
- Message status tracking and delivery confirmation
- Offline message support with sync
- Rich media sharing
- Voice and video call capabilities
- Group chat with advanced permissions
- Built-in wallet generation with recovery options
- Seamless MetaMask integration
- Stealth payments using ring signatures
- Tipping system with multiple currencies
- Detailed transaction tracking and history
- Multi-wallet support with hardware wallet integration
- Gas fee optimization
- Cross-chain compatibility
- Smart contract interaction
The Linda protocol is organized into specialized modules that handle different functionalities:
- Multi-provider authentication system
- Support for MetaMask and cryptographic keys
- Session management with key rotation
- Account recovery system
- Blockchain-based identity verification
- End-to-end encrypted private chats
- Public and private channels
- Threading system for discussions
- Read receipts and message status
- Multimedia content support
- Real-time user presence management
- Friend request management
- Certificate system for authorizations
- Configurable trust levels
- Contact blocking and unblocking
- Friendship status synchronization
- End-to-end encryption for private messages
- Certificate system for authorizations
- Key management and rotation
- Message integrity verification
- Metadata protection
- Distributed data management with GunDB
- IPFS integration for files
- Local cache with LRU
- State synchronization
- Automatic backup
- P2P network topology management
- Node and relay discovery
- Load balancing
- Connection monitoring
- Routing optimization
- Ethereum wallet integration
- Stealth payments
- Tipping system
- Transaction management
- Multi-wallet support
The relay server provides:
- Network performance optimization
- Traffic load balancing
- Message caching
- Metrics monitoring
- DDoS protection
- Node discovery
- Connection management
- Distributed database with GunDB
- Ethereum smart contracts for verification
- Decentralized IPFS storage
- End-to-end encryption
- X509 certificate system
- LRU cache for performance
- WebRTC for P2P communication
- Node.js >= 14
- npm or yarn
- MetaMask wallet
- Optimism Sepolia testnet access
- At least 2GB RAM
- Stable internet connection
- Clone the repository: