Overview
Last updated
Last updated
SendingNetwork provides a Software Development Kit (SDK) to seamlessly incorporate chat functionalities into various applications, enabling communication across different platforms using a unified chat identity, specifically a wallet address. Our architecture is built on three layers: Application layer, Message Relay Layer and Consensus Layer.
Access Layer: This layer includes applications such as games, marketplaces, and wallets that integrate the SendingNetwork SDK. It supports end-to-end encryption and operates on trusted devices, such as smartphones or PCs. Users access the network through client nodes, similar to Ethereum's RPC nodes, ensuring secure and private communication.
Relay Layer: Comprising edge nodes, this layer is responsible for the swift transmission of messages. These nodes handle encrypted message delivery, ensuring high-speed communication without having access to message content. The primary resources for these relay nodes are bandwidth and storage. These nodes cache encrypted messages for offline users. The design ensures that even though messages pass through these nodes, the content remains encrypted and signed, safeguarding user information against unauthorized access and alteration. Once offline users access their data, it is promptly deleted from the cache, ensuring no persistent storage of user messages or information.
Consensus Layer: At the core of our architecture, the consensus layer unifies the system, similar to how blockchain technology regulates storage nodes in networks like Arweave. Our approach involves miners contributing bandwidth to maintain network efficiency. The blockchain incorporates two consensus mechanisms: Proof of Relay and Proof of Availability. Proof of Relay assesses the relay workload of edge miners to ensure network throughput, while Proof of Availability, grounded in Proof of Stake principles, evaluates miners' service quality and penalizes underperforming nodes. This dual mechanism fosters a robust, decentralized network structure, enhancing reliability and performance.
By leveraging this structured approach, SendingNetwork aims to deliver a robust, secure, and decentralized chat service across various applications, ensuring users can communicate securely and efficiently regardless of the platform they use.