Parties: Indexes, Operators, Single Smart Contract and a Non Fungible Token.
Indexes are operated by interfaces; they store the IDs of the NFTs and any data that the interface itself needs to operate.
When Bob wants to consume an article he gets the NFT’s ID from the index, the consumption price and file’s hash are both stored inside the NFT. So when the NFT is located Bob recognizes the owner, the content hash, and the consumption fee.
He then sends the consumption fee to the smart contract.
The smart contract transfers money to the NFT holder and gives the operators the hashes of every chunk that is required to assemble the file.
The closest operators that hold the chunks with the given hashes send the chunks to Bob who molds the file on the client side and verifies the final version with the hash stored in NFT which is publicly available.
To interact with content stored in the following format, end-users need to use a compatible interface built using the open source SDK provided by the Eno protocol. One of such interfaces is eno.xyz which enables users to seamlessly consume and interact with protected content inside web browsers.
We are starting with text files, adding support to more complex file formats as we grow.