Live data from Hacker News

Obfuscation: Building the final boss of cryptography (Part I)

vitalik.eth.limo

11–13 of 13 posts

Re: Obfuscation: Building the final boss of cryptography (Part I)

#11
post #2

I’m reasonably familiar with cryptography but the formalism of obfuscation given here makes no sense to me. > The precise formalism typically used, indistinguishability obfuscation, says that if you are given obfuscations of two different programs that have the same functionality, you can't tell which is which. This seems… not that useful? A sufficiently advanced optimizing compiler would be capable of transforming t…

The tl;dr on why IO is important is you can just use (effectively) one program, but stuff different secrets inside them with a guarantee that no one can pull those secrets back out.

Cryptographers have proven that it's possible to use this as a primitive from which you can rebuild the rest of common cryptographic primitives (public encryption, symmetric encryption, etc). So--if it's possible to put this together it'll be a novel construction for every cryptographic primitive that also dodges some of the problems with key distribution and negotiation.

Re: Obfuscation: Building the final boss of cryptography (Part I)

#12

Earlier quoted context omitted.

A friend once explained to me that the general goal of iO is basically DRM but with an inverted power dynamic: Imagine being able to deploy containers to cloud providers (AWS, GCP, etc.), whereby the Cloud provider cannot see what software you are running. Even if the government commanded them to do so. That's how I understand it, informally. The formalisms of "indistinguishability" in the blog posts are indeed weird…

The formalisms are not an invention of the blog post, just the formal definition of iO

Correct, I didn't mean to make it sound like they were foreign to iO overall. Just that the formalisms were in the blog post.

(The iO research field, overall, is still pretty weird to me.)

Re: Obfuscation: Building the final boss of cryptography (Part I)

#13
post #2

I’m reasonably familiar with cryptography but the formalism of obfuscation given here makes no sense to me. > The precise formalism typically used, indistinguishability obfuscation, says that if you are given obfuscations of two different programs that have the same functionality, you can't tell which is which. This seems… not that useful? A sufficiently advanced optimizing compiler would be capable of transforming t…

Nor does the claim "The most powerful primitive that has been conceived in cryptography is obfuscation". A good test for how useful a cryptographic primitive is is "if you magically removed this from existence, would any attackers notice?". For this one the answer would be "no".

I'd say the actual most powerful primitive in crypto is KDFs/MACs (there's some overlap, e.g. HKDF). Remove that and pretty much everything that requires security would collapse overnight. Not just the obvious TLS and SSH but the global payments infrastructure and a lot of other less-visible things.

Post reply on HN