Professional, fast, uncensored RPC


Currently, Tornadocash does not have a reliable default RPC that is fast enough to offer a good user experience on withdrawals and support the special calls needed to display proposals properly.

@Theo suggested to spin up nodes on custom hardware in proposal 19.

We are professionally hosting RPCs for many years in geographic regions that do not require us to censor. We support all chains that Tornadocash needs from day one except BSC (more on this below).

Opinion on Proposal 19

In our opinion, spinning up RPCs for all those chains and optimizing them for the usage and scale of a project like Tornadocash is not an easy task. Especially not without extensive experience hosting blockchain nodes. On top of that, the hardware described by Theo is by far not enough to support hosting all the necessary nodes for Tornadocash (including archival) and would not support throughput high enough for the scale of usage.

See below for a preview of why the proposed node would not support the chains needed and the load:

Storage size

  • Archival nodes are needed for tornadocash
  • Ethereum Mainnet needs nearly 3TB storage as of this month with Erigon and lighthouse (most efficient)
  • Polygon Mainnet needs ~7TB storage as of this month, again with Erigon (most efficient)
  • Arbitrum needs 4TB storage as of this month
  • Gnosis needs ~1TB
  • BSC needs ~10TB with an experimental erigon version

That’s ~25TB of data, but because of deterioration of speed of SSDs, you would need to have ~20-30% more and outlooking the next year at least 50% more. So about 35TB are responsible.

Storage Speed

RPCs are intrinsically storage bound. This means that the bottleneck of nodes is nearly always the storage. Because of that it is required for good speed nodes (especially archival) to host purely on NVME drives (enterprise use only).

The best NVME drives are 8TB NVME enterprise drives. Hosted in a reliable data center this alone would be ~750-1000 USD per month, not including server costs. Including a high speed server it’s in the region of ~2000 USD per month.

Load balancing and distribution

Because one node can be out of sync or have other issues, plus the speed of one drive is sometimes not enough to support high loads, it is required to have at least 2 servers, better even 3 that do the same. Using the formula from before this would be up to 6000 USD per month for a reliable RPC infrastructure that is fast and responsive and supports the chains that Tornadocash needs.


In our opinion, starting an RPC service that is reliable and fast with no prior experience would be much more expensive than stated in proposal 19.

Therefore, we propose to provide access to Tornadocash to our enterprise RPC services that are ready and used by many businesses needing full speed nodes already. Tornadocash can utilize our load balanced, high speed infrastructure from day one.

We can provide the services for cheaper because we have a ready infrastructure and people paying for the services already. On scale it’s easier and cheaper to host RPCs.

Our experience

We are hosting Ethereum Mainnet, Optimism, Polygon, Arbitrum and Gnosis nodes and have been in the RPC business for enterprises for 2 years. Our nodes are highly optimized and load balanced, especially for trace calls and eth_getLogs, which is what Tornadocash needs the most.
We purposefully choose geographic regions for hosting our nodes that do not require any censorship as this is our number 1 priority, being in the Crypto space since 2012.

We would be able to provide IP rate limiting to prevent abuse and high-speed nodes to increase fetching speed on withdrawals for all users. Including no limits per second if usage spikes.


For access to the already supported chains by us, we are proposing 500 USD per month, or 5000 USD for a full year. This would cover costs for existing users and there would be room to grow if necessary.

We refer to proposal 19 with an average TORN price of 7.19:

695 TORN for 12 months of RPC access to Ethereum Mainnet, Gnosis, Arbitrum, Polygon


Binance archival nodes do not censor Tornadocash and are fast and well-maintained to provide access for Tornadocash users as of now. If needed, we are happy to host BSC nodes as well and we can be live with BSC nodes within 2 weeks after this proposal passes.

As BSC is significantly harder to host, our pricing would reflect that with 1000 USD per month or 10000 USD per year.

We refer to proposal 19 with an average TORN price of 7.19:

1390 TORN for 12 months of RPC access to Ethereum Mainnet, Gnosis, Arbitrum, Polygon and BSC

Depending on feedback I will create the first or the second proposal.

Hello, @promaster1332.

I have read your proposal and it sounds extremely good. However, all links to this proposal were given in the Russian-speaking Tornado chat by accounts that are associated with the owner of the scam domain - everyone can check conversation history.

If you are really ready to confirm that your proposal is legitimate, for example, create RPCs and provide trial access to them, for example, for a month, I think the DAO will gladly accept your proposal pay the required amount.


Hi Theo,

I am not in the Russian speaking Telegram group and the tornado city scammers tried to scam me as well multiple times.

I am ready to provide trial access to the nodes. Can I message you on Telegram to send you the links?

Better to write me PM on this forum, if you have real offers.

1 Like

In addition, there is also the problem of jurisdiction where the RPC servers will be located - if it is the EU or the US, what guarantees can there be that they will not be arrested, since the Tornado court case is still ongoing?

1 Like

We host in eastern europe. Right now there is no censorship in place in Europe. We will obey by the rules if it is forbidden at any point and will move our datacenters to a different region. This is not just for tornadocash but because we do not support countries with censorship on speech and would distance ourselves from that.

firstly, you say that you have been providing rpc for the grid for many years, can I link your rpc? secondly, if you have been using rpc for many years without a censor, then why the hell should you allocate money? scammers. And I can write a lot of questions, but I don’t want to be crucified in front of scammers

I don’t understand your questions. My RPCs are not free. I am selling them. The prices are the same for tornadocash as everyone else.

Theo mentioned that non-rate limited access would be needed because there will be a lot of requests.

I don’t like this because it will lead to immediate DDOS.

There are 2 options:

  • Per IP rate limit that is high enough to support normal use cases

  • Generalized rate limit (either per hour or per day) but no IP rate limit

The IP rate limit would limit the amount of requests per IP every hour. For example, if 100k requests are needed for a withdrawal, we can set it to 2x that (so 2 full cache fillings per hour). A reasonable amount that nobody would reach under normal circumstances.

The generalized rate limit has its own issues. If a DDOS happens, nobody will be able to access the RPC anymore because the generalized rate limit happened. But under normal operation there won’t be limits per IP.

We cannot provide no rate limit as this will lead to DDOS immediately because the RPC URL will be leaked on the Tornadocash frontend. We have to prevent DDOS otherwise no matter what I do there will be a point where the servers go down.
If this would be a backend access use case no rate limit would be fine. But from an exposed frontend it’s not feasible. And whoever tries to build a node with no rate limits will feel it as well. It’s not just me.

If no rate limit is needed and community wants it I am out, unfortunately. Happy to hear other possibilities though.

1 Like

Sorry, and you can check the Telegram link on the original Twitter (before the sanctions). that I’m not linked to and never promoted it after seeing the scam commit.

Raid1 is a bad idea because it means each writes needs to complete on 2 devices (so takes more time) and you cause unrequired wear leveling on ꜱꜱᴅ that need only to be used for backup (hence why it is better to rsync databases manually every 2 months in order to still resync quickly) But even if it’s ʀᴀɪᴅ1 on btrfs clone for soft crash you definitely need to edit your ʀᴘᴄ proposal to make it more realistic.

My idea I told you of distributing copies of the databases over ɪᴘꜰꜱ or eDonkey/Bittorent like for Bitcoin was the way to achieve availability without rate limits.

The rate limit for IP is a good option if it is high. Links to RPC should not be made public, on and so on, but only those who find it on the Tornado website will use them at most.

It will probably also require additional configuration to reject requests that are not native to Tornado - for example, calling third-party contracts or receiving blocks in a different way than is done in the Tornado Cash interface.

And I wait link to your to your domain for selling RPC access to prove your credibility.

1 Like

Sent a DM with link. DNS txt record can be added so you can verify

1 Like

I moved the topic to the Enhancements category and removed the proposal from the title: it is incorrect to call a purely technical issue a project proposal.

Do you have an idea on how many requests browsing the website, doing a deposit and a withdrawal will generate? Without cache of course. Based on that we can 10x it per hour or something like that to be reasonably high and still prevent abuse.