Skip to main content

Privacy

Mangonote is 100% private and untraceable.

Mangonote's privacy is based upon four main layers: Ring Signature, Confidential Transaction, Stealth Addresses, and Dandelion++ Routing.

Ring Signatures

an example Ring Signature

A ring signature is a type of digital signature that can be performed by any member of a set of users that each have keys.

A ring signature makes use of your account keys and your outputs pulled from the blockchain. Over the course of time, past outputs could be used multiple times to form possible signer participants.

In a "ring" of possible signers, all ring members are equal and valid. There is no way an outside observer can tell which of the possible signers in a signature group belongs to your account. So, ring signatures ensure that transaction outputs are untraceable.

This ensures privacy via plausible deniability: an outside observer cannot tell which outputs are spent or unspent, and cannot correlate them with on-chain identities.

Mangonote has a Ring Size of 16: each output is mixed with other 15 decoy outputs.

Confidential Transactions

Mangonote hides transaction amounts via Pedersen Commitments, which can prove that the sum of some amounts is zero without revealing the values.

By using Confidential Transactions, only the sender and the receiver can determine the amount of a transaction, but everyone can validate that the transaction is valid, aka does not spend more money than allowed.

Stealth Addresses

Stealth addresses are an important part of MangoNote's privacy. They require the sender to create random one-time addresses for every transaction on behalf of the recipient. The recipient can publish just one address, yet have all of the incoming payments go to unique addresses on the blockchain, where they cannot be linked back to either the recipient's published address or any other transactions' addresses.

By using stealth addresses, only the sender and receiver can determine the origin of a transaction.

Dandelion++ Routing

Mangonote hides the IP address of the transaction sender using Dandelion++, a network layer routing protocol that obfuscates the origin of a message in a computer network.

It is divided in two phases: the Stem phase, and the Fluff phase.

During the Stem phase, transaction is broadcast to a single node. Every node which receives a transaction during the Stem phase has a 20% chance of beginning the Fluff phase.

When fluff phase begins, transaction is broadcast to the whole network.

Dandelion++ effectively increases anonymity, as there is no way to be sure of the origin of a transaction.