There are a few components that make Mirror's publishing tool decentralized:
- Log in with Ethereum account. To publish on Mirror, you're required to have an Ethereum wallet and must connect it to start publishing. This wallet is controlled by a private key that you own.
- Sign content with your key pair. Mirror generates signing keys for all users to connect their wallet. These signing keys are stored in the browser such that Mirror can't access them. When publishing an entry, you sign the content with this key pair in the background to authorize that the content came from your account.
- Content Digest is stored on Arweave. Signing content with your key pair produces a digest which is a fixed length string which is a compressed representation of your content. This digest is stored on Arweave, a decentralized storage protocol, so you always have access to your content - even if Mirror is unavailable.
- Updates stored on Arweave. Any time you update your entry, we go through the same process of signing the content and storing on Arweave so there's a permanent record of all updates.
- Entries can be minted as a writing NFT on Optimism, a layer 2 network on Ethereum. If you want your audience to collect your writing as an NFT, you can do that as well. Check out the writing NFT section of the knowledge base for more info.
You can also check out this blog post for a more detailed technical deep dive into how Mirror's publishing protocol works.