Blockchain and crypto technology offer unique decentralization and security guarantees that we would like to preserve in a communication system. As a result, the I/O primitives for any interoperable communication protocol in Web 3.0 will be quite different from that used for hardware or Web 2.0 communication.
Below, we describe these I/O primitives in terms of the requirements on inputs and outputs. Inputs and outputs are the two primary components of any communication system: in the simplest, one-way system, the producer of the information inputs the message into the system and the consumer receives it from the output of the system.
• Any communication system carrying information between chains should have no weaker security than the chains it connects.
• All data on-chain and any other form of intermediate storage should be validated by a consensus system before it can be read, changed, or passed to another sub-system.
• The communication system should be able to carry any non-malicious information, regardless of its content or format.
• The communication system should be able to connect to any chain, regardless of which protocol it uses.
• The producer should be able to define the destination chain and intended consumer to be sent.
• The producer should be able to define what message to send and how to send it.
• The intended consumer (user or smart contract) should be able to receive any information tar geted at them.
• The information output from the system should not be altered during the process of communi cation.
• The output information should be validated by the communication system, and hold a trackable signature signed by the communication system.
• The consumer should be able to define what message to receive and how to receive the informa tion.
MEP aims to fulfill the above I/O primitives. It is a universal platform for message transfer akin to the network module of an operating system. The network module of the OS provides a socket service to the outside world, and the content of the transmission is a message with a signature on it. Similarly, producers and consumers of MEP can define their own message formats, structures, and more complex protocols on top of our basic I/O protocol. One can regard MEP as the UDP of Web 3.0, with better security. In particular, developers can build any customized security or message protocol on top of it. MEP is meant to be highly performant, ultra generic, and cost-effective.