Live data from Hacker News

Confess your love with zero-knowledge

zkcrush.xyz

71–80 of 205 posts

Re: Confess your love with zero-knowledge

#72
post #2

This is some strange notion of zero-knowledge. If Bob publishes his link, and I want to know who his crush is, I can simply try all our classmates' names and quickly find out that it's Alice. Those games only make at least a bit of sense when everybody enters their crush and only when matching both get notified. Also brute-forceable, but at least it's quadratic (if you suspect nothing about crushes, which is unrealis…

> Those games only make at least a bit of sense when everybody enters their crush and only when matching both get notified.

Even then, among heterosexuals they will suffer from the same problem as basically every software platform for romance among straight people: the massive asymmetry in interest between men and women. Men would copy and paste virtually every woman they know into the system as a "crush," so they can find which if any of their female acquaintances might be interested, and then they would decide who to pursue.

Re: Confess your love with zero-knowledge

#73

What does this achieve that posting "text me and I'll tell you if I have a crush on you" doesn't? Or texting your crush directly? I suppose it's a useful commitment mechanism for proving you aren't telling everyone they're your only crush, but that seems a bit of a niche use case.

1. Since it's an external web site with a little bit of tech behind it that presumably others are using, it might seem less desperate or strange than the post you suggest.

2. The potential crushee can do the check without notifying you they're doing so. They might be too embarrassed/intimidated to actually tell you they're interested in whether you have a crush.

Re: Confess your love with zero-knowledge

#74
Love these kind of ideas. Reminded me of once I was trying to allow access to a file with a password. It wasn't any super-secret file or anything, just a CV of a friend hosted on a static file server and she wanted it to "protect" it with a simple password (just didn't want it to be directly available to anyone viewing the homepage. No mission-critical secret of any kind otherwise).

Having no real/strict security requirements and being lazy to go server-side scripting, I simply hashed the password. Noted the hash. Saved the file into a folder like "/${hash}/Proper Name.pdf". Hashed the hash again and embedded it into client-side JS. Wrote a JS function that took the input, hashed it twice, and if second hash of the entered password matches that, download the file "/${first hash}/Proper Name.pdf".

It worked like a charm, but please note that this is prone to attacks so if anyone reading this thinks it's a good idea to implement actual security, DO NOT. It is not. Fun to play with though.

Re: Confess your love with zero-knowledge

#76
post #2

This is some strange notion of zero-knowledge. If Bob publishes his link, and I want to know who his crush is, I can simply try all our classmates' names and quickly find out that it's Alice. Those games only make at least a bit of sense when everybody enters their crush and only when matching both get notified. Also brute-forceable, but at least it's quadratic (if you suspect nothing about crushes, which is unrealis…

You'd want to use asymmetric public key cryptography so that Bob could hash his message with Alice's public key, and it could only be decrypted with Alice's private key.

Yup, everyone publishes their public keys. No one’s private keys gets published (fake crush created).

I’m not sure if zero-knowledge proofs exist for love outside of action - repeated acts of commitment over time (to reduces the confidence that someone doesn’t love you).

Re: Confess your love with zero-knowledge

#78
post #2

This is some strange notion of zero-knowledge. If Bob publishes his link, and I want to know who his crush is, I can simply try all our classmates' names and quickly find out that it's Alice. Those games only make at least a bit of sense when everybody enters their crush and only when matching both get notified. Also brute-forceable, but at least it's quadratic (if you suspect nothing about crushes, which is unrealis…

You'd want to use asymmetric public key cryptography so that Bob could hash his message with Alice's public key, and it could only be decrypted with Alice's private key.

That still lets Alice find out.

I don't see a clear way of mapping the concept of a zero knowledge proof to the crush problem.

But the best I can come up with is:

1) No one learns that Alice (claims to) have a crush on Bob

2) Unless Bob also claims to have a crush on Alice, in which case.

3) Only Bob learns that Alice has a crush on him.

4) If Bob learns that Alice has a crush on him, Alice learns that Bob has a crush on her.

5) All the above guarantees are symmetric if you swap Bob and Alice.

Re: Confess your love with zero-knowledge

#79
post #48

I own the domain ilikeyou.fyi and considered doing something very much like this. I rejected that plan for all the reasons above. It could be done better with public/private key cryptography, but then your audience has to be able to deal with that. Oh well, it's on my backlog down in the "I'll never actually get there" section.

Maybe don't display the hash and self destruct after n bad guesses or something.

Re: Confess your love with zero-knowledge

#80
post #2

This is some strange notion of zero-knowledge. If Bob publishes his link, and I want to know who his crush is, I can simply try all our classmates' names and quickly find out that it's Alice. Those games only make at least a bit of sense when everybody enters their crush and only when matching both get notified. Also brute-forceable, but at least it's quadratic (if you suspect nothing about crushes, which is unrealis…

And when everyone is an actual adult, not a manchild or other people without a fully formed prefrontal cortex and thus prone to making ugly, life-changing decisions - for themselves and others - on a dime.

That's most of the demographic for this product. The number of over-25 people, not in a committed relationship, who still haven't figured out how to ask people out, is pretty small.

Post reply on HN