{"id":"d270dad3-ebd0-4c27-8888-74d796dbd216","arxiv_id":"2504.15986","paper_version":1,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":5.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":3,"one_line_summary":"A timestamp-free, frequency-based inference method maps Monero's P2P network and finds it is highly centralized around about 14 supernodes.","lead":"This paper infers which Monero nodes are directly connected by counting how often addresses reappear in peer lists captured from TCP traffic, then maps the network. It reports 68 to 83 percent precision against real connection lists and finds a topology dominated by a small set of supernodes.","discovery_kind":"new_method","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Missing recall leaves the inferred edge set unvalidated: k-means splits any frequency distribution, so topology claims (82.1% hub coverage, 9.4% collapse) may reflect false negatives.","rationale":"I read the paper as claiming a valid timestamp-free neighbor inference method and a resulting topology. The precision tables are genuine evidence that many inferred edges are real. However, the central topology claim depends on the completeness of the inferred edge set, and completeness is never measured. The reader's weakest assumption about uniform peer-list sharing is one mechanism that could break; my concern is the unmeasured recall, which is more direct and more consequential. I partially agree with the reader because their stated weakest assumption is about the frequency-separation principle, while I focus on the missing false-negative rate and the unavoidable k-means partition of any frequency distribution. The fix is feasible and bounded: compute recall for the three observer nodes and re-run the topology metrics on an edge set whose error model is quantified. This does not require rejecting the paper; it requires a conditional acceptance pending this check. The current CONDITIONAL verdict is appropriate, so I recommend UNCHANGED.","tokens_in":7555,"tokens_out":6901,"duration_ms":70584,"concrete_test":"Using the three observer nodes, rerun Algorithm 1 without excluding rows whose ip1 is the observer itself, and compare the inferred neighbor set against the RPC connection lists over the same three-week window. Compute recall = |inferred ∩ actual| / |actual| in addition to precision. Then, using only edges that pass a simulated ground-truth check (or a recall-corrected edge set), recompute the 14 top-degree nodes, the 82.1% coverage figure, and the 9.4% LCC collapse threshold. If recall is below ~70% or the coverage/collapse figures shift by more than a few percentage points, the topology conclusions need revision.","verdict_should_be":"UNCHANGED","load_bearing_attack":"Section III-D reports only precision (Tables I-II), despite defining recall. The edge set D' from Algorithm 1 (count≤1 removed, then k-means k=2 on unique counts) is used wholesale for the topology claims in Section IV: 4,837 nodes, 14 top-degree nodes covering 82.1%, and LCC collapse at 9.4% high-betweenness removal. No false-negative rate is measured anywhere. If many true edges have low observed frequency and are discarded by the count threshold or assigned to the low-frequency cluster, the inferred graph is a high-precision but low-recall subgraph. Such a subgraph is biased toward repeated handshakes and toward hub-connected nodes, precisely the pattern that would inflate degree centralization and make the network appear more fragile under targeted attack than it actually is. The frequency-separation argument (P_neighbour≈0.833 vs Prandom≈0.252, Section III-B) only establishes that a gap should exist; it does not establish that the k-means split point separates true from false edges with acceptable recall. Moreover, k-means with k=2 always partitions any set of count values, so the existence of a 'high-frequency cluster' is not by itself evidence of a real bimodal separation. The reported precision is computed only on surviving high-frequency edges, so it cannot detect systematic omission of true neighbors.","agreement_with_reader":"partial"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper proposes a method to infer peer-to-peer connections in the Monero network under its updated protocol that removes timestamps from peer lists. The authors collect TCP flow data at three nodes on three continents for three weeks, extract peer-list frequencies, filter low-count rows, and apply per-source k-means clustering (k=2) to separate 'true' high-frequency neighbors from noise. They validate precision against RPC-reported connection lists for their own nodes, reporting 68.73--82.99% precision. Using the inferred edge set, they map a 4,837-node largest connected component, identify 14 top-degree supernodes covering 82.1% of nodes, and simulate targeted removal by degree and betweenness centrality. They conclude that the Monero P2P network is highly centralized and that removing about 9.4--12% of nodes collapses the largest connected component.","tokens_in":7809,"tokens_out":7770,"duration_ms":70020,"significance":"If the inferred edge set were validated, this would be a useful contribution: it addresses a gap left by the protocol change, provides a measurement methodology independent of RPC, and offers concrete topology and robustness findings for Monero. The paper's strengths include real deployment on three continents, three weeks of data, an external benchmark via monero-daemon-rpc, and the observation that precision improves with longer observation windows. However, because recall is never measured and validation covers only edges incident to the authors' own three nodes, the global topology and robustness claims are currently under-supported. The central method is plausible and the missing quantities are computable from the authors' own data, so the issues are fixable within the scope of the manuscript.","major_comments":[{"comment":"Recall is defined in the text but never measured. The validation procedure computes precision only as the fraction of inferred neighbors that appear in the RPC connection lists, and the tables report 'Inferred network neighbors' and 'Neighbors in connection list' but not the total number of actual neighbors. Without recall, D' may be a high-precision, low-recall subgraph that systematically omits true low-frequency edges. This matters directly for Section IV, where D' is treated as the complete graph for the 82.1% hub-coverage and 9.4% collapse claims; a low-recall edge set biased toward repeated handshakes would inflate degree centralization and apparent fragility. The authors should report recall for their three validation nodes and, if recall is low, re-examine the topology conclusions.","section":"Section III-D, Tables I and II"},{"comment":"The k-means step with k=2 always partitions any multiset of count values into two clusters, so the existence of a 'high-frequency cluster' is not by itself evidence of a real bimodal separation. The thresholds Cmin=2, Nmin=8, and k=2 are hand-set, and the paper provides no sensitivity analysis or null-model comparison. For example, a source with only low count values such as {2,3,4} will still be split, and the higher-count values will be labeled true neighbors by construction. The authors should demonstrate that the separation is robust across threshold choices and, ideally, compare against a null model in which peer-list entries are permuted.","section":"Section III-C, Algorithm 1"},{"comment":"The frequency-separation argument rests on the assumed probabilities Pneighbour≈0.833 and Prandom≈0.252, which in turn assume uniform draws from the top-300 whitelist and a fixed entry probability Penter≈0.302. No empirical evidence or citation is provided for these values. If Monero's actual peer-list sharing is ordered, biased toward recently seen addresses, or otherwise non-uniform, the threefold gap disappears and k-means separates on an axis unrelated to neighbor status. Because this assumption supports every inferred edge in the network, it should be validated directly, for instance by measuring the empirical frequency distributions on the authors' own nodes and by reporting the false-negative rate.","section":"Section III-B"},{"comment":"Validation is performed only for edges incident to the authors' three nodes, but the topology analysis in Section IV uses D' for all nodes, including edges between third-party peers that are never checked against ground truth. The reported precision numbers therefore do not validate the global edge set used for the supernode overlap and attack-robustness results. The authors should either obtain additional ground truth for a sample of non-ego edges or clearly state that the global topology conclusions rest on unvalidated inferred edges and temper the corresponding claims.","section":"Section IV"}],"minor_comments":[{"comment":"The text says the network 'demonstrates strong resilience' but then reports that removing 9.4% of nodes by betweenness centrality collapses the LCC to nearly zero; this characterization appears internally inconsistent and should be reworded.","section":"Section IV-3"},{"comment":"The heatmap shows overlap rates of one-hop neighbor sets, but the text interprets values above 0.91 as 'each top-degree node's direct neighbors are connected to other top-degree nodes'; neighbor-set overlap does not imply direct connectivity between those neighbors and other supernodes.","section":"Figure 3"},{"comment":"The text in Section III-C says groups with fewer than two interactions were discarded, while Algorithm 1 line 6 imposes Nmin=8; please make the group-size threshold consistent and explicit.","section":"Algorithm 1 and Section III-C text"},{"comment":"The protocol description says a peer returns '120% of peers from its top 300 last seen peers', while the data-collection section says each peer 'shares up to 250 entries from its top 300 whitelist peers'; these numbers should be reconciled with the protocol source.","section":"Section II and Section III-B1"},{"comment":"Reference [1] (Eason et al., 1955) appears unrelated to distributed-ledger technology and may be a placeholder; please replace it with an appropriate citation for the first paragraph.","section":"Reference list"},{"comment":"The second author's name is typeset as 'Pi ˇskorec' in the author block; it should be 'Piškorec'.","section":"Author list"},{"comment":"The abstract claims 'the first to reveal connectivity patterns in Monero's updated protocol'; given prior work by Cao et al. [17] on the Monero P2P network, please qualify the novelty claim as applying to the updated timestamp-free protocol.","section":"Abstract"},{"comment":"In the definition of pi(a), the notation ni is used but not defined; please define it as the total number of received peer lists for node i.","section":"Section III-B1"}],"recommendation":"major_revision","confidential_remarks":"The paper is within the scope of cs.DC and the empirical setup is sound, but the missing recall and the lack of global edge validation are substantial enough to prevent acceptance in the current form. I recommend major revision and encourage the authors to report recall from their existing validation data, add threshold sensitivity analysis, and clarify the scope of their topology claims."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Colleague,\n\nThis is a real empirical contribution: the authors have built a timestamp-free neighbor inference method for Monero's updated peer protocol, collected three weeks of peer-list data from three geographically dispersed nodes, and validated the inferred edges against actual RPC connection lists. The precision numbers (68.7% to 83.0%) are concrete evidence that the frequency-based signal carries information. The paper is also the first to map Monero's post-update network, which is genuinely new.\n\nThe main problem is recall. The authors define recall but never report it. The pipeline—dropping count≤1, then k-means on the remaining counts—selects a high-frequency edge set. If many true neighbor edges appear only a few times, the inferred graph is a high-precision, low-recall subgraph. That subgraph is biased toward repeated handshakes and hub-connected nodes, which is exactly what would inflate the reported 82.1% hub coverage and make the LCC collapse look more dramatic. So the topology conclusions are not yet established. The frequency model (P≈0.83 vs 0.25) is plausible, but it's only tested indirectly through the three validation nodes; the hand-set thresholds Cmin=2, Nmin=8, k=2 are arbitrary and no sensitivity analysis is given. The robustness section also contradicts itself: it says the network is strongly resilient and then shows it collapses at 9.4% node removal.\n\nTo be clear, the stress-test worry about k-means splitting any distribution is fair as a warning, but it doesn't sink the method—the precision numbers against external connection lists show the split has some real basis. The missing piece is the false-negative rate.\n\nNo code or data are released, which limits reproducibility. I'd send this to peer review—the method and the empirical data deserve referee time, and a serious reviewer could push the authors to measure recall and tighten the robustness claims. For my own work, I wouldn't cite the topological numbers yet, but the inference approach is worth monitoring.\n\nRecommendation: accept for review, not for publication as-is.","headline":"A promising but incomplete timestamp-free neighbor-inference method for Monero: solid precision evidence, missing recall, and topology claims that go beyond what the data support.","tokens_in":8346,"tokens_out":2491,"would_cite":false,"duration_ms":22383,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"The paper claims that Monero's timestamp-free peer protocol still leaks its structure: clustering how often addresses recur in received peer lists reveals a network dominated by 14 supernodes that reach 82.1 percent of nodes.","keywords":["Monero peer-to-peer network","peer list inference","k-means clustering","timestamp-free protocol","network topology","supernodes","network robustness","TCP flow analysis"],"falsifier":"Run a Monero node whose neighbors are fully known, record every received peer-list packet for at least a week, and compare the empirical appearance frequencies of known neighbors with those of addresses known to be non-neighbors; if the distributions overlap strongly, or if the same sender's peer-list entries are ordered by recency, the 0.833/0.252 gap and hence the k-means split do not recover true edges. The same experiment can also measure recall, which the paper does not report.","tokens_in":7365,"feed_emoji":"🕸️","tokens_out":8633,"duration_ms":74317,"temperature":0.7,"pith_summary":"Monero's privacy-focused peer protocol removed the timestamps that earlier work used to infer who is connected to whom, and this paper tries to close that gap. Its claim is that a real neighbor appears in the peer lists a node receives about 0.833 of the time, while a random address appears about 0.252 of the time, so simply counting appearances and splitting the counts with k-means clustering separates the true links. The authors validate the inference against the actual connection lists of their three observation nodes and report precision between 68.73 and 82.99 percent, with longer observation improving accuracy. If the method holds, the visible Monero network is substantially centralized: 14 high-degree nodes attach directly to 3,153 of 4,837 nodes, and removing roughly 9.4 percent of nodes by betweenness centrality breaks the largest connected component. That matters because the anonymity layer is often assumed to hide such structure, and a centralized core is a potential target for partitioning or eclipse-style attacks.","feed_headline":"Monero's hidden P2P map shows 14 supernodes reach 82% of network","feed_subtitle":"A timestamp-free clustering method infers Monero's real peer links; removing 9.4 percent of hubs collapses the network.","key_machinery":"The load-bearing mechanism is the relative-presence frequency $p_i(a) = \\frac{1}{n_i}\\sum_{j=1}^{n_i}\\chi(a \\in P_j)$, the fraction of TCP peer-list packets received by node $i$ that contain address $a$. Because Monero's handshake returns a near-uniform draw from the top-300 whitelist, a genuine neighbor appears with probability $P_{\\text{neighbour}} \\approx 0.833$, whereas a non-neighbor appears with $P_{\\text{random}} = P_{\\text{enter}} \\cdot P_{\\text{selected}} \\approx 0.302 \\times 0.833 \\approx 0.252$. The roughly threefold gap is what k-means clustering detects, and this frequency-separation step is what converts raw peer-list mentions into an inferred edge set.","core_discovery":"Using passive TCP flow captures on three geographically separate Monero nodes, the paper's central discovery is that the updated timestamp-free protocol does not defeat neighbor inference. When a node returns 250 entries from its top-300 whitelist during handshakes, known neighbors are selected with probability about 0.833, while a random address must first enter the top 300 (probability about 0.302) and then be selected (probability about 0.833), giving about 0.252. The authors turn this ratio into an algorithm: count each address's relative presence across all received peer lists, discard counts of one, run k-means with k=2 within each source IP's count set, and keep the high-frequency cluster. Across their three nodes, 68.73 to 82.99 percent of the inferred neighbors matched the connection lists reported by the daemon, and the EU node's precision rose from 69.48 to 80.22 percent when the observation window grew from one to three weeks. Applying the inferred edge set to the whole collection yields a 4,837-node network in which 14 top-degree nodes connect directly to 82.1 percent of the nodes, share over 91 percent of their one-hop neighbor sets with each other, and whose removal by betweenness centrality collapses the largest component at 9.4 percent removal.","pith_inferences":["A direct test the authors do not report is measuring how uniformly Monero actually samples its top-300 whitelist; if a peer orders entries by recency or uses a recency-weighted selection, the 0.833/0.252 gap would narrow or shift, and k-means would find clusters on a different axis.","The same frequency-separation recipe should transfer to other P2P protocols that hide timestamps but share a bounded whitelist subset; the only requirement is a stable recurrence gap between real neighbors and random addresses, so testing it on another timestamp-hiding coin would extend the method.","The precision numbers likely understate the true quality, because the benchmark real connection list is only a transient snapshot: an inferred edge to a peer that disconnected just before the RPC snapshot is counted as a false positive even if it was genuine during the listening window.","The betweenness-collapse result implies a concrete attack surface: if an adversary can control or eclipse a handful of high-betweenness supernodes, partitioning the Monero network may be feasible despite the high overlap among hubs; the paper's robustness framing describes the vulnerability without proposing a mitigation."],"forward_implications":["Monero can be mapped without timestamps: longer passive listening raises precision, from 69.48 percent to 80.22 percent for the EU node when the window goes from one week to three weeks.","The visible network is core-periphery rather than flat: 14 top-degree nodes attach directly to 3,153 of 4,837 nodes, so most nodes are within one hop of a small hub set.","The core is internally redundant: over 91 percent of each top-degree node's one-hop neighbors are shared with other top-degree nodes, and 9 of the 14 nodes have near-100 percent overlap.","Centrality-based attacks are efficient: removing 9.4 percent of nodes by betweenness centrality, or 12 percent by degree, reduces the largest connected component to near zero.","The inferred map's accuracy holds across continents: precision runs 79.35 percent for Singapore, 68.73 percent for the US, and 69.48 percent for the EU on one-week data, improving to 82.99, 73.00, and 80.22 percent on three-week data."],"supporting_citations":[{"why":"Supplies the data-collection pipeline and the observation that Monero's protocol update removed the timestamp field, the exact gap the proposed frequency-based inference method must fill.","marker":"[17]"},{"why":"Defines degree centrality and betweenness centrality, the measures the paper uses to characterize supernodes and to run the largest-connected-component robustness test.","marker":"[18]"},{"why":"Provides the small-world premise the paper invokes when arguing that high-degree nodes can gain disproportionate influence and attract eclipse or denial-of-service risks.","marker":"[19]"}],"fun_headline_variants":["Monero peer map exposed: 14 supernodes control 82% of network","Timestamp-free trick reveals Monero's hidden supernodes","Monero's P2P topology cracked: 14 hubs reach 82%","Inferring Monero's network: 14 supernodes dominate","How to unmask Monero peers without timestamps"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The whole inference rests on a single ratio: real neighbors are about 3.3 times more likely than random addresses to appear in received peer lists, which holds only if Monero's peer-list sharing draws near-uniformly from a top-300 whitelist; if that sharing is ordered, recency-biased, or otherwise non-uniform, the clusters stop being neighbors.","fun_headline_variants_meta":{"raw":{"variants":["Monero peer map exposed: 14 supernodes control 82% of network","Timestamp-free trick reveals Monero's hidden supernodes","Monero's P2P topology cracked: 14 hubs reach 82%","Inferring Monero's network: 14 supernodes dominate","How to unmask Monero peers without timestamps"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000544,"raw_usage":{"total_tokens":2608,"prompt_tokens":955,"completion_tokens":1653,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":571,"completion_tokens_details":{"reasoning_tokens":1562}},"tokens_in":571,"tokens_out":1653,"duration_ms":10275,"temperature":1.0,"reasoning_tokens":1562,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-16T11:12:45.963014+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Run a Monero node whose neighbors are fully known, record every received peer-list packet for at least a week, and compare the empirical appearance frequencies of known neighbors with those of addresses known to be non-neighbors; if the distributions overlap strongly, or if the same sender's peer-list entries are ordered by recency, the 0.833/0.252 gap and hence the k-means split do not recover true edges. The same experiment can also measure recall, which the paper does not report.","supporting_citations":[{"cited_title":"Exploring the monero peer-to-peer network,","cited_arxiv_id":null,"evidence_quote":"Supplies the data-collection pipeline and the observation that Monero's protocol update removed the timestamp field, the exact gap the proposed frequency-based inference method must fill."},{"cited_title":"Networks, dynamics, and the small-world phenomenon,","cited_arxiv_id":null,"evidence_quote":"Provides the small-world premise the paper invokes when arguing that high-degree nodes can gain disproportionate influence and attract eclipse or denial-of-service risks."}],"review_version":1}