SecureMessaging (SMSG) is a simple message mixnet where all nodes store a copy of everyone's end-to-end encrypted messages for 48 hours. The sender of a message can not exactly pinpoint the IP address of the receiver because the messages defuses over the whole network. The reference implementation is developed in C++ and incorporated into a bitcoin client, allowing it to operate over the same peer to peer network as the blockchain.
All nodes attempt to decrypt every incoming message, if the HMAC check fails, then the message was either fraudelent or not for you. The cryptogpahic check Some optimizations can potentially be added to
The format for referencing data stored on the SMSG network is simple. The hash acts as the identifier and thus provides enough information for a node to retrieve the file and verify its integrity.
|DSN ID||SHA256 HASH (32 bytes)|