Monero (XMR): A Reasonably Private Digital Currency
What is Monero?
Monero is a private-centric cryptocurrency launched in 2014 to allow direct and anonymous digital payments without being dependent on a central authority.
Apart from these hints, installation and usage of Monero in Whonix ™ does not differ from installing Monero on any Linux based distribution.
Monero GUI (graphical user interface) and Monero CLI (command line interface) can be installed from Whonix ™ repository. 
This procedure installs all Monero programs,
monerod and less frequently used utilities; see footnote. 
Start Monero GUI
Do not launch Monero from the start menu yet.
Open a terminal.
In the future, this will be simplified in Whonix ™
188.8.131.52.4 (and above) which is coming soon.  Also, users who upgrade will no longer require this workaround in the future.
Figure: Monero GUI in Whonix ™
Start Monero CLI
Alternatively, you could also use Monero on the command line.
Remote Node Security and Privacy Considerations
Using a remote node provides a quick way to set up your Monero wallet. You will not have to download the entire blockchain.
It is important to note that the remote node:
- cannot spend your XMR (you hold the keys);
- does not know your IP address (we are connecting to it over Tor);
- does not know your XMR address; and
- does not know your balance or private view key.
In general, if the wallet warns you about the node misbehaving, then immediately exit the wallet and connect to a different node.
To enforce stream isolation, you could experiment with the following commands.
DNS_PUBLIC=tcp TORSOCKS_ALLOW_INBOUND=1 torsocks ./monerod --p2p-bind-ip 127.0.0.1 --no-igd --hide-my-port
QMLSCENE_DEVICE=softwarecontext torsocks monero-wallet-gui
For more inspiration, refer to the related forum discussion: monero in Whonix with torsocks for better stream isolation [archive].
After installing Monero, please consider making a donation to Whonix ™ to help keep it running for many years to come.
Donate Monero (XMR) to Whonix ™.
It is recommended to read the Money wiki page as it contains a lot of related information on how to make anonymous payments.
Gratitude is expressed to the donors of Monero who funded the proposal Monero Debian Package Repository for 2 years [archive], to @rehrar [archive] for helping the creator of the package (Whonix developer Patrick Schleizer) with writing the proposal, everyone else who supported the proposal, and the community of Monero developers and users at large for creating Monero.
Monero works by having contributors host large files which are equivalent to a public ledger. Any time someone broadcasts a transaction, every ledger maintainer updates their copy of the ledger and ensures no cheating or fraud has occurred. As with most cryptocurrencies, transactions are sent to Public Addresses which are derived from personally created private keys.
Since transactions could otherwise be traced by watching which addresses are sending to each-other, Monero uses a Diffie-Hellman key exchange using the transaction information on the sender's side and the public address on the receiver's end of a transaction to encrypt the recipients address on the ledger. To protect the sender, spending Monero is equivalent to forwarding the output of the previous transaction, so a users address is never stored on the ledger at all - this technique is called Stealth Addressing.
Since this solution is imperfect, and allows EABE attacks and is dependent on ECC for the key exchange, Monero uses a second layer of anonymity called Ring Signatures. When signing a transaction and broadcasting it to the network, Ring Signatures take signers from previous transactions and forge a new signature with Ring Size = N, where you cannot tell which entity in the group N actually authorized a transaction. This further obfuscates the blockchain and reduces the available attack vectors on the cryptocurrency as a whole, as well as introduces several zero knowledge proofs which prevent absolute analysis of the ledger.
Ring Signatures combined with Stealth Addressing prevent many attack vectors, but since new transactions are forwarded outputs from previous ones you can still perform analysis by viewing the amounts spent on-chain. To address this potential issue, a solution called RingCT was introduced which obfuscates the amount spent in a transaction.
Further attack vectors including cross-referencing an address posted in multiple places and IP leaks when connecting to the network are further developments sought out by the Monero community. These potential issues are addressed with Subaddresses and Kovri respectively.
The former Manual Monero Instructions have been archived for historic reasons.
- qubes-users - Guide: Monero wallet/daemon isolation w/qubes+whonix [archive]
- https://ccs.getmonero.org/proposals/adrelanos-debian-package.html [archive]
- https://github.com/Whonix/monero-gui [archive]
- https://forums.whonix.org/t/monero-and-whonix-sitting-in-a-tree/5949/24 [archive]
- https://repo.getmonero.org/monero-project/ccs-proposals/-/merge_requests/130 [archive]
- https://www.reddit.com/r/Monero/comments/fc8c2j/whonix_lead_developer_wants_to_maintain_a_debian/ [archive]
- https://forums.whonix.org/t/policy-for-inclusion-of-compiled-software/6635 [archive]
- Workaround: https://github.com/Whonix/vm-config-dist/blob/master/etc/X11/Xsession.d/20software_rendering_in_vms [archive]
This is a wiki. Want to improve this page? Help is welcome and volunteer contributions are happily considered! Read, understand and agree to Conditions for Contributions to Whonix ™, then Edit! Edits are held for moderation.
Copyright (C) 2012 - 2020 ENCRYPTED SUPPORT LP. Whonix ™ is a trademark. Whonix ™ is a licensee [archive] of the Open Invention Network [archive]. Unless otherwise noted, the content of this page is copyrighted and licensed under the same Freedom Software license as Whonix ™ itself. (Why?)