Eigenlijk is het speerpunt van Monero in één woord te vangen: privacy. Dit betekent dat het niet te achterhalen is welke personen bepaalde transacties hebben geplaatst. Om dit te bereiken gebruikt Monero verschillende technische snufjes.
Privacy van Monero (XMR)
Het eerste onmisbare onderdeel achter de XMR is een digitale handtekening. Dit is niet een gewone signature, maar een zogenoemde ring signature. Dit kan worden uitgevoerd door elk persoon die onderdeel is van een groep mensen die allemaal een eigen signature hebben. Elke transactie die wordt gedaan, wordt door iemand anders bevestigd en goedgekeurd. Het is rekenkundig niet mogelijk om te achterhalen bij wie deze oorspronkelijke en beslissende key vandaan komt. De naam komt van de ring-achtige structuur achter de goedkeuring van de transacties.
Ring confidential transactions
Een tweede onmisbaar onderdeel achter de privacy zijn de ring confidential transactions, of kortweg RingCT. Dit zorgt ervoor dat de hoeveelheid van verstuurde coins verborgen worden. Dit is het beste uit te leggen met een voorbeeld:
Maak kennis met Bob. Bob wil graag 12,5 XMR versturen met behulp van de blockchain. Zodra hij dit doet, wordt zijn transactie opgesplitst in drie verschillende ringen: 2 XMR, 10 XMR en 0,5 XMR. Doordat deze aantallen gelijk zijn aan de gesplitte hoeveelheden verstuurde XMR’s van andere personen, kan dit nu in de ring worden doorgestuurd naar de gewenste ontvanger. Omdat er met allemaal dezelfde hoeveelheden transacties worden gedaan, kun je dus niet blind afgaan op de persoon achter inkomende transactie.
Stealth Addresses
Bij elke transactie die wordt gedaan, wordt er automatisch een one-time public key als onderdeel van de transactie gegenereerd. Deze public key zorgt ervoor dat er een transactie kan worden gedaan door een latere eigenaar van de munten. Een buitenstaander kan niet zien dat er geld van persoon A naar persoon B wordt verplaatst. Er is geen adres die linkt met de blockchain en dus kan er niets worden uitgelezen door buitenstaanders.
Dan gaan we nu een stapje verder. Een Monero Wallet Address is een 95-karakter lange zin. Hierbij horen een public view key en een public send key. Gezien beide keys public (publiekelijk openbaar) zijn, kan de verzender van de munten het unieke Stealth Address maken. Iedereen kan dit in de blockchain, maar niemand weet aan wie deze toebehoord. Als de ontvanger weet dat hij munten ontvangt, kan hij op zoek gaan naar de munten door met zijn one-time private key op zoek te gaan naar de one-time public key. Elke transactie heeft dus eigenlijk een sleutel én een slot. Beide zijn geheim voor alle andere partijen.
Dit gaat natuurlijk allemaal automatisch, maar het zorgt er wel voor dat adressen onderling nooit aan elkaar gelinkt worden.
Kovri
Tot slot is er ook nog Kovri. Dit is een beetje een buitenbeentje als je het vergelijkt met de bovenstaande drie methoden. Het zorgt er namelijk voor dat de nodes met elkaar kunnen verbinden zonder dat ze daarvoor de IP adressen hoeven te delen. Dit onderdeel is echter nog niet operationeel. Het is mogelijk om (als node eigenaar) je eigen IP beschermen met TORSOCKS. Hiermee bescherm je echter alleen jezelf en niet het hele netwerk.