2

Some number of years ago, I heard that one of the reasons that Tor does not allow anything longer than a 1024-bit RSA key as an onion service's private key is because the address would be a lot longer, meanwhile they're already uncomfortably long and hard to remember.

But I just came across this question regarding CloudFlare's new access channel to their 1.1.1.1 DNS resolver over a Tor Hidden Service, and the appearance of the address shocked me: https://dns4torpnlfs2ifuz2s2yf3fc7rdmsbhm6rw75euj35pac6ap25zgqad.onion/

How on Earth is the address that long? I don't have the resources to test right now, nor have I found any explanations online, but this looks like the result of the Tor Project implementing longer RSA keys for hidden services. Is that true? If not, what is going on here? The address is valid and accessible, I was able to check that.

1 Answer 1

2

After a bit of searching, I did find this article. It seems that I'm a little behind the times, so to make up for asking a silly question, I'll answer it for anyone still wondering:

Technical Backstory: One of the problems with public/private key cryptography such as the RSA algorithm which powers a lot of online security today, including Tor Onion Services, is that they'll be much easier to crack when quantum computing becomes feasible in the next few decades. A solution? Elliptic-curve cryptography (ECC). Instead of using prime factorization as in RSA, ECC uses some fancier math (which I'm not too familiar with, so I won't try to describe) that is supposedly "quantum-resistant." In other words, the protocols should remains secure even after the quantum computing epoch.

So what did the Tor Project do? Well, they were smart. Instead of just upgrading to 2048-bit RSA keys to resist the attacks of faster computing, they upgraded to ECC to resist the attacks of quantum computing. They're referring to these new key types as V3 Onion Addresses. The address is so long because it is the public key, not just the hash like it is with standard V2 Onion Addresses. This is, although not drastically more secure, still a notable security increase. This new cryptography should be less taxing on lower-end processing equipment, for those of you running heavy Onion Services on the Raspberry Pi.

Though this new standard was released in September of 2017, the Tor Project is taking it slow, ensuring that the new standard goes through proper testing. So V2 addresses are still the standard default, but you can try out V3 by adding HiddenServiceVersion 3 to your torrc file.

These are very exciting times. If you've found any information in this summary to be misleading or innacurate, please make a comment and I'll do my best to correct it. I was never a straight-A student when it came to math ;)

EDIT: Yeah apparently this particular ECC algorithm is not quantum resistant. But it is still faster and more future-proof. The whole HSDirs not being able to snoop on addresses is also very cool. Shoutout to bn4t for the corrections

1
  • 2
    Quick correction: ECC is not quantum resistant. See here: crypto.stackexchange.com/questions/35482/… Also: A key difference between V2 and V3 onion addresses are that HSDirs no longer can snoop V3 addresses like they were able with V2 addresses. Note about the Crypto: The newly used cryptography (SHA3/ed25519/curve25519) is indeed a big security improvement over the old cryptography (SHA1/DH/RSA1024). Other than that: great answer!
    – bn4t
    Commented Jul 4, 2018 at 11:31

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .