At least some decentralised networks purported to provide anonymity are vulnerable to this attack: the original software is modified to allow tracking/logging/whatever, and a large amount of nodes running this modified software joins the network. The larger the proportion of attacker's nodes is, the less secure is the network.
- Freenet. From R. v. Owen, 2017 ONCJ 729 (CanLII):
When a police officer wants to determine if a Freenet node is downloading child pornography, he parses the logs kept by the ICAC database. That database logs activity on Freenet from several law enforcement nodes operating on the network that have been modified for law enforcement use.
- Tor: as per this question.
Is there an architectural solution to this vulnerability? Are there decentralised networks not vulnerable to this?
To me it seems like there is no way for genuine nodes to reliably verify that yet another new node is running unmodified software. Barring circumstantial methods (e.g. an oddily large amount of new nodes suddenly crops up on AWS), no methods seem to exist even in theory: compromised nodes will respect the protocol and remain unnoticed to genuine nodes, while knowing each other and cooperating to break anonymity for the attacker's benefit.
Do these considerations stand?