Where it is offered
Offered everywhere, per the provider's code or documents. Checked 2026-10-09. Not scored.
The protocol has no country or address rules, and the official node, CLI and GUI wallets contain no country or IP-geolocation gate in GitHub code search on 2026-10-09. The GUI picks bootstrap nodes from the P2P network, not by region. Optional DNS lookups (MoneroPulse) and remote nodes chosen by the user are outside the protocol. Legality of use and exchange access vary by jurisdiction; that is not an availability restriction by the protocol.
Evidence (2)2 verified
- Verified
The GUI starts the local node with bootstrap address auto and no location check; code search of monero-gui for country returns nothing.
monero-project/monero-gui · main.qml
commit d7c2f13d88 · checked 2026-10-09
- Verified
Transaction validation has no address or country rule.
monero-project/monero · src/cryptonote_core/blockchain.cpp
commit 22578c3f7d · checked 2026-10-09
What would raise this pillar
- Admin pause or freeze powers reaching Strong: No pause, freeze, blacklist, or relayer/allowlist role that can stop settlement exists in the settlement contracts.
- Settle without the provider reaching Strong: A payer or payee can complete settlement by calling the public contract directly, with the ABI and addresses documented.
- Neutral settlement, disclosed filtering reaching Strong: Settlement contracts contain no address or geographic filtering, and any filtering in the SDK, frontend, or backend is disclosed in code or a versioned repo document, names its list source, and is bypassed by the direct settlement path (C2 at least 2). Requires every required component in the request path to be public, or a trace.
- Token and chain freeze risks disclosed reaching Strong: Supported tokens and chains enumerated in code and docs, with issuer freeze/blacklist powers and sequencer or forced-inclusion assumptions stated to payees.
Sets the pillar ratingBest evidence: VerifiedChecked 2026-10-19 today
UnreviewedAssessed by AI research agent (seed), 2026-10-09
The consensus rules contain no admin key, pause, freeze, blacklist or allowlist role, and recipients are one-time addresses that a filter could not target. The core team runs the MoneroPulse DNS domains, which publish checkpoints; nodes look them up by default but only enforce them if the operator opts in. Rule changes need a hard fork that miners and node operators choose to run. Judgment call: the substance is anchor 3, but a 3 needs onchain evidence about a deployed contract, which a chain with no contract addresses cannot supply, so we take 2.
Evidence (2)2 verified
- Verified
monerod fetches checkpoints from the MoneroPulse DNS domains (checkpoints.cpp L315-L338), but enforce-dns-checkpointing defaults to false and disable-dns-checkpoints turns the lookup off; enforcement is the operator's opt-in.
monero-project/monero · src/cryptonote_core/cryptonote_core.cpp
commit 22578c3f7d · checked 2026-10-09
- Verified
Rule changes are hard forks compiled into releases at fixed heights; the last mainnet fork (v16) was at height 2,689,608 in August 2022.
monero-project/monero · src/hardforks/hardforks.cpp
commit 22578c3f7d · checked 2026-10-09 · source unchanged at weekly re-read 2026-10-19
Sets the pillar ratingBest evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
A payer signs a transaction in their own wallet and submits it to any Monero node; the payee detects it by scanning with their view key. No company, API or signer is in the path. Judgment call: this is direct settlement in substance, but anchor 3 is defined by calls to public contracts and needs onchain evidence about a deployed contract, which this chain has none of, so we take 2.
Evidence (1)1 verified
- Verified
The node's send_raw_transaction RPC takes only the signed transaction hex (plus relay and sanity flags) and relays it to the P2P network; any monerod, the user's own or a remote one, accepts it.
monero-project/monero · src/rpc/core_rpc_server_commands_defs.h
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
No relayer, paymaster or API is required. A user can run monerod and a wallet locally; light users can point the wallet at any remote node, and the GUI's simple mode picks one from public nodes advertised on the P2P network rather than from a vendor list. All node code is public.
Evidence (1)1 verified
- Verified
With bootstrap-daemon-address set to auto (the GUI's simple modes, main.qml L792), monerod picks a public node advertised on the P2P network, so there is no vendor endpoint; the local node takes over once synced.
monero-project/monero · src/rpc/core_rpc_server.cpp
commit 22578c3f7d · checked 2026-10-09
Sets the pillar ratingBest evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
The settlement layer is neutral: consensus has no address or country rules, and recipients are unlinkable one-time addresses. We found no screening in the node, the CLI or the GUI. A remote node can refuse to relay, but the wallet can switch node or use its own. Judgment call: the substance fits 3, but 3 needs a distributed-package or trace record for the client, which we do not have, so we take 2.
Evidence (2)2 verified
- Verified
Transaction validation checks ring sizes, key images and proofs; it has no address or country rule.
monero-project/monero · src/cryptonote_core/blockchain.cpp
commit 22578c3f7d · checked 2026-10-09
- Verified
GitHub code search on 2026-10-09 for country, analytics and telemetry in monero-project/monero-gui returned nothing; in monero-project/monero, country matched only an old English mnemonic word list.
monero-project/monero-gui · main.qml
commit d7c2f13d88 · checked 2026-10-09
Sets the pillar ratingBest evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
The rail carries one asset, XMR, on one proof-of-work chain, so there is no issuer freeze and no sequencer to inherit. The upgrade schedule is published in the README. Neither the GUI nor the CLI states to payees that the chain depends on scheduled hard forks and miner adoption. Scored 2: enumerated in code, assumptions not stated.
Evidence (1)1 verified
- Verified
The README's upgrade table lists every mainnet fork and states that upgrades are scheduled; the chain carries only XMR, with no issued tokens and no sequencer.
monero-project/monero · README.md
commit 22578c3f7d · checked 2026-10-09
What would raise this pillar
Sets the pillar rating
UnreviewedAssessed by AI research agent (seed), 2026-10-09
No checkable evidence settles this yet, so it counts as 0.
Not applicable as worded: Monero has no contracts, and its rules run in node software that each operator builds or downloads. The repo has reproducible-build tooling (contrib/guix), but we did not verify any release binary against source.
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
Every layer of a payment is public: node, wallet library, CLI and GUI wallets, RPC servers and build scripts. Remote nodes run the same public code. Scored 3.
Evidence (1)1 verified
- Verified
The monero repo at v0.18.5.3 contains the node (daemon, cryptonote_core, p2p, rpc), the wallet library and CLI (wallet, simplewallet), the wallet RPC server and reproducible-build scripts (contrib/guix); the GUI is in monero-project/monero-gui at v0.18.5.3 (d7c2f13d).
monero-project/monero · src
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
Build and run documentation exists for the node and wallets. Reproduction not attempted, so the score is capped at 1.
Evidence (1)1 verified
- Verified
The README documents dependencies and build steps for each platform and how to run monerod; the GUI README covers its build.
monero-project/monero · README.md
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
A payee can export transfers to CSV from the CLI, and the RPC request and response types are versioned in the repo. There are no contract ABIs. The RPC interface is defined as C++ serialization structs; the human-readable RPC reference lives on the website, not in the repo. Judgment call: the export would support 3, but we are not sure the C++ definitions count as an API schema equivalent to OpenAPI, so we take the lower anchor, 2.
Evidence (1)1 verified
- Verified
The CLI's export_transfers command writes the wallet's transfer history to a CSV file (output<N>.csv by default); node RPC messages are defined in src/rpc/core_rpc_server_commands_defs.h and wallet RPC in src/wallet/wallet_rpc_server_commands_defs.h.
monero-project/monero · src/simplewallet/simplewallet.cpp
commit 22578c3f7d · checked 2026-10-09
What would raise this pillar
Best evidence: VerifiedChecked 2026-10-19 today
UnreviewedAssessed by AI research agent (seed), 2026-10-09
Every repository needed to run the rail (node, wallet library, CLI and GUI) is BSD-3-Clause. The meta repository (process documents) has no licence file, but nothing needs it to run. It is not listed under repos because nothing runs from it.
Evidence (1)1 verified
- Verified
monero, monero-gui and monero-site carry the BSD 3-clause licence; the meta repo (process documents) has no licence file and no running component needs it.
monero-project/monero · LICENSE
commit 22578c3f7d · checked 2026-10-09 · source unchanged at weekly re-read 2026-10-19
Best evidence: VerifiedChecked 2026-10-19 today
UnreviewedAssessed by AI research agent (seed), 2026-10-09
There is no CLA, copyright stays with each contributor, and the repo's contribution contract forbids copyright assignment, so no single party can relicense the code. No relicensing has happened. Judgment call: we read the no-assignment and share-alike rules as the written licence-stability commitment anchor 3 asks for.
Evidence (2)2 verified
- Verified
The contribution contract says the project MUST use a share-alike licence, patches MUST use the project licence, patches are owned by their authors, and there MUST NOT be any copyright assignment process.
monero-project/monero · docs/CONTRIBUTING.md
commit 22578c3f7d · checked 2026-10-09
- Verified
The LICENSE file's commit history since 2016 (14f75384) shows only copyright-year updates.
monero-project/monero · LICENSE
commit 22578c3f7d · checked 2026-10-09 · source unchanged at weekly re-read 2026-10-19
Sets the pillar ratingBest evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
A production deployment needs no proprietary component: node and wallets are public and run on their own. The default DNS lookups are optional. Judgment call: the code supports 3, but with no O3 reproduction we take 2.
Evidence (1)1 verified
- Verified
The only external services the node consults by default are the MoneroPulse DNS records (checkpoints, update notices), and both can be disabled by flag.
monero-project/monero · src/cryptonote_core/cryptonote_core.cpp
commit 22578c3f7d · checked 2026-10-09
What would raise this pillar
Sets the pillar ratingBest evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
We found no analytics, telemetry or crash-reporting SDK in the node, CLI or GUI. The node's default update check is a DNS lookup, counted under P4. We ran no trace. Judgment call: absence shown only in code is capped at 2.
Evidence (1)1 verified
- Verified
The GUI's persistent settings hold node addresses and display options and no analytics setting; code search of monero-gui for analytics and telemetry returned nothing, and in monero only a Trezor protobuf matched telemetry.
monero-project/monero-gui · main.qml
commit d7c2f13d88 · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
The flow collects only what settlement needs: a transaction whose outputs, amounts and optional encrypted payment ID are readable only by the recipient. No required component holds an account or identity. A remote node, if used, sees the user's IP and the transactions and outputs they request (see P4).
Evidence (1)1 verified
- Verified
Submitting a payment sends only the signed transaction; no RPC on the payment path takes account, identity or contact fields.
monero-project/monero · src/rpc/core_rpc_server_commands_defs.h
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
By default every payment goes to a one-time stealth address, hides the amount, and hides the spent output among 16 ring members. Fee, transaction size, input and output counts, timing and tx_extra contents are visible. The sender is hidden only probabilistically: decoy-selection and timing heuristics, and transactions that spend outputs created together, can narrow the ring; we record these in the finding and do not score them. Judgment call: we score what the protocol reveals by default, which is anchor 3.
Evidence (1)1 verified
- Verified
From fork v15 every input must use a ring of 16 (15 decoys plus the real output) and all rings in a transaction must be the same size; amounts are hidden by RingCT with Bulletproofs+ (cryptonote_config.h HF_VERSION_BULLETPROOF_PLUS 15).
monero-project/monero · src/cryptonote_core/blockchain.cpp
commit 22578c3f7d · checked 2026-10-09
Sets the pillar ratingBest evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
With a local node, only the user's DNS resolver (for MoneroPulse lookups) and P2P peers see anything. With a remote or bootstrap node, that node sees the user's IP, the transactions they submit and the outputs they request. Both are named in code and can be swapped or disabled by setting. Scored 2: third parties present, named in code, swappable.
Evidence (2)2 verified
- Verified
check-updates defaults to notify (a DNS lookup of MoneroPulse records), and DNS checkpoints are looked up hourly unless disabled (L272-L280).
monero-project/monero · src/cryptonote_core/cryptonote_core.cpp
commit 22578c3f7d · checked 2026-10-09
- Verified
In simple mode the wallet's requests go through a bootstrap public node until the local node syncs.
monero-project/monero · src/rpc/core_rpc_server.cpp
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
The node endpoint, which is both RPC and indexer for a Monero wallet, is configurable in the GUI and CLI, and the node code is public.
Evidence (1)1 verified
- Verified
The GUI stores a user-editable list of remote nodes (remoteNodesSerialized, edited in components/RemoteNodeEdit.qml) and a bootstrap node address; the CLI takes --daemon-address.
monero-project/monero-gui · main.qml
commit d7c2f13d88 · checked 2026-10-09
What would raise this pillar
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
Value moves directly from the payer's outputs to the payee's one-time outputs in one transaction; keys stay in the user's wallet. No one holds funds in flight. Judgment call: anchor 3 in substance, but 3 needs onchain evidence about a deployed contract, which this chain has none of, so we take 2.
Evidence (1)1 verified
- Verified
A transaction spends the payer's outputs and creates one-time outputs only the payee's keys can spend; there is no escrow or intermediary account.
monero-project/monero · src/cryptonote_core/blockchain.cpp
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
No key can change the rules. Upgrades are hard forks compiled into node releases at fixed heights, announced in the README schedule ahead of time, and effective only if miners and node operators run them; the last one was in August 2022. The core team's MoneroPulse checkpoints are advisory unless an operator enforces them. Judgment call: notice is given by schedule but there is no enforced delay, and 3 would also need onchain evidence this chain cannot supply, so we take 2.
Evidence (1)1 verified
- Verified
The README states that upgrades are scheduled hard forks whose software is released before the fork date, and tabulates every fork with its height and minimum version; the next fork is listed as undetermined.
monero-project/monero · README.md
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
There are no token approvals; each payment is a signed transaction and nothing can pull funds later. Judgment call: this beats exact-amount approvals in substance, but 3 needs a distributed-package or trace record for the client, so we take 2.
Evidence (1)1 verified
- Verified
Wallets submit fully signed transactions; Monero has no allowance or delegated-spend mechanism.
monero-project/monero · src/rpc/core_rpc_server_commands_defs.h
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
Derived from S1=2 (anchor 3 in substance), C2=2 (direct in substance), C3=3 and O3=1. Funds are outputs controlled by the user's keys (S1), any node accepts a payment (C2), and no hosted service is required (C3). There is no provider whose disappearance would stop the rail; if the project's maintainers stopped, the released code would keep running. We did not reproduce a self-hosted setup (O3=1). Judgment call: 2, not 3, for that reason.
Evidence (1)1 verified
- Verified
Node discovery and bootstrap rely on the P2P network, not on a vendor service.
monero-project/monero · src/rpc/core_rpc_server.cpp
commit 22578c3f7d · checked 2026-10-09
Best evidence: VerifiedChecked 2026-10-09 10 days ago
UnreviewedAssessed by AI research agent (seed), 2026-10-09
Spend and view keys stay in the user's wallet file. The protocol has no API keys or webhooks, and we found no bundled service keys. Judgment call: absence shown only in code is capped at 2, since 3 needs a distributed-package or trace record.
Evidence (1)1 verified
- Verified
Remote-node credentials in the GUI are per-node username and password entered by the user; no service keys are bundled.
monero-project/monero-gui · main.qml
commit d7c2f13d88 · checked 2026-10-09
Sets the pillar ratingBest evidence: VerifiedChecked 2026-10-19 today
UnreviewedAssessed by AI research agent (seed), 2026-10-09
Audit reports exist for protocol components (CLSAG, Bulletproofs), and a bug bounty with scope is in a repo. We did not read the audit PDFs for a pinned commit, and the current release has not been shown to be the audited code. Scored 1: audit reports, no pinned commit shown.
Evidence (2)2 verified
- Verified
The CLSAG audit report by JP Aumasson and Antony Vennard (2020) is in the website repo; research-lab/audits/BP holds Bulletproofs audit statements of work.
monero-project/monero-site · resources/research-lab/audits/clsag.pdf
commit 5a596d1933 · checked 2026-10-09 · source unchanged at weekly re-read 2026-10-19
- Verified
A live bug bounty paid in XMR from community donations, with scope (code only, not live sites) and HackerOne intake, is defined in the meta repo; the monero README links it.
monero-project/meta · VULNERABILITY_RESPONSE_PROCESS.md
commit 97fb74b0bf · checked 2026-10-09 · source unchanged at weekly re-read 2026-10-19
Security audits 8
Published audits and similar reviews of this provider's code, newest first. Context for the Audits and bug bounty rating, which scores them; this list does not change any rating, and an audit of older code says little about what is deployed now.
Compiled from: The monero-site repo (resources/research-lab/audits and blog posts on CLSAG, Bulletproofs and Bulletproofs+), the monero and meta repos, the CCS proposal pages for the Bulletproofs+ audits, the RandomX repo's audits folder (RandomX is the proof-of-work in the node, vendored as external/randomx), OSTIF's and Quarkslab's posts, and the Trail of Bits publications list. Not logged: JP Aumasson's second Bulletproofs+ audit (CCS milestone completed March 2021; no report link found), Cypher Stack's 2024 review of Zano's CLSAG variant, and the FCMP++ reviews and contest (including Trail of Bits' July 2026 FCMP++ crypto review), which cover an upgrade not yet activated. No audit of the current wallet or node release as a whole was found. Checked 2026-10-13. Only published reports are listed; private audits a provider mentions without a report are not.
Scope of assessment
Components in the payment path
Assessor notes
Unit: Monero mainnet transfers. Pins: monero@22578c3f (v0.18.5.3), monero-gui@d7c2f13d (v0.18.5.3), meta@97fb74b0, monero-site@5a596d19. The chain has no contracts, so cells whose top anchor needs onchain contract evidence (C1, C2, S1, S2) are capped at 2 with the reason in each finding, and O1 is unknown. No transactions, node runs, builds, traces or self-host attempts were made. No primary legal source was cited: EUR-Lex refused automated requests (HTTP 202 challenge), so the EU AML Regulation's treatment of anonymity-enhancing coins is not recorded here.