zlacker

[parent] [thread] 12 comments
1. jwally+(OP)[view] [source] 2025-09-24 15:18:25
Here's my crack at a good-enough solution for the U.S. It doesn't have a ton of granularity - but the concept is shovel ready now, dirt cheap, and privacy preserving.

Video Demo: https://www.youtube.com/watch?v=MmcUJ5u65Q0

Actual Demo: https://app.hornpub.click

How it works:

1) Go to app.horpub.click

2) Create an ephemeral passkey

3) Extract its public-key and id (this binds the credential you're creating to your device)

4) The user copies this data to their bank's Age-Verification-Section

5) The bank creates an object that it signs with an attestation of the user's age (KYC) and their pass-key-public-key

6) The user copies this back to app.hornpub.click

7) The passkey is verified on the server, the bank's signature is verified by the server, some other meta-data is verified to make sure nothing weird is happening.

8) The user's age has been verified by their bank without the bank knowing who is asking for verification

* This method is more private than anything requiring sharing your photo-id online

* This method doesn't trigger GLBA or GDPR (user copies data themselves)

* This method is free to the merchant (hornpub)

replies(4): >>Someon+d2 >>zb3+Za >>tzs+kg >>reitan+yo4
2. Someon+d2[view] [source] 2025-09-24 15:28:20
>>jwally+(OP)
What's crazy to me is why they didn't go for that kind of implementation. This works well, ensures privacy, can be audited easily, and doesn't need a f*cking app on my phone.
replies(2): >>jwally+F3 >>f_devd+69
◧◩
3. jwally+F3[view] [source] [discussion] 2025-09-24 15:35:10
>>Someon+d2
If I work for Aylo (pornhub, etc) I'm telling every fintech and click-and-mortar bank who wants more customers to do this yesterday!

"Hey third fifth of Oregon! Do you want to triple your customer base in Oregon for the cost of a small dev team and 1 month of work?!"

> f*cking app on my phone

I need another app on my phone like I need another hole in my head...

◧◩
4. f_devd+69[view] [source] [discussion] 2025-09-24 15:56:36
>>Someon+d2
If you read the guidelines they actually want to implement a double-blind approach with ZKPs, which imo is significantly better than a challenge-response pub key system in term of privacy.

If you're not familiar this would mean the verifier doesn't learns anything except a statement about attributes (age, license, etc); and the EU doesn't learn what attributes have been tried to verify or by who.

replies(1): >>jwally+Th
5. zb3+Za[view] [source] 2025-09-24 16:04:58
>>jwally+(OP)
But the bank and the horn content provider could collude and that would let the bank know that you're watching horn (shame, shame!).

The ZKP approach aims to prevent this attack method.

replies(1): >>jwally+Yf
◧◩
6. jwally+Yf[view] [source] [discussion] 2025-09-24 16:24:57
>>zb3+Za
Chase.com currently is using:

mPulse

Google Marketing Platform Meta

LinkedIn Ads

Trade Desk

Aggregate Knowledge (Trans Union)

Adobe Audience Manger

Can you elaborate on how the risk of ironbank and hornpub colluding by de-anonymizing you via rainbow tables or IP forensics is substantially greater than Chase and PornHub using - Google Marketing?

replies(1): >>zb3+7l
7. tzs+kg[view] [source] 2025-09-24 16:26:40
>>jwally+(OP)
What happens if some party is able to get logs of the bank's age attestation signings and of hornpub.click's steps #2 and #6? It appears this would present some risk of matching up hornpub.click accounts with real IDs.

This is called "linkability" and ideally should be avoided so anonymous age verification can be safe.

replies(1): >>jwally+Rn
◧◩◪
8. jwally+Th[view] [source] [discussion] 2025-09-24 16:32:39
>>f_devd+69
Not asking to troll or be a jerk. Promise.

What would need to happen in the United States to implement a reliable ZKP age verification system - and how long would it take to roll it out?

Asking because it feels like the Titanic has sunk, and we're eschewing a floating door because the coast guard has regulation conformant life rafts that would work better.

replies(1): >>f_devd+4q
◧◩◪
9. zb3+7l[view] [source] [discussion] 2025-09-24 16:47:33
>>jwally+Yf
It isn't, but due to bureaucracy, when designing a solution, it's that solution that has to be "secure" without really considering that the current outside situation is already insecure..

Anyway I'm not advocating for this solution, just addressing the question directly.

replies(1): >>jwally+jo
◧◩
10. jwally+Rn[view] [source] [discussion] 2025-09-24 16:59:53
>>tzs+kg
Banks and most sites requiring age verification are _littered_ with tracking software that does _literally_ this.

Further, if you put on an adblocker and I get access to the logs at ironbank and hornpub; I could just query them for your IP address.

Collusion to this degree is possible, but doesn't seem worth worrying about if the aforementioned attack vectors still exist. My $0.02.

◧◩◪◨
11. jwally+jo[view] [source] [discussion] 2025-09-24 17:02:23
>>zb3+7l
Thanks for the feedback.

I don't see this as the end all ultimate solution for age verification. I see it more as a tourniquet; imperfect - but better than bleeding to death.

◧◩◪◨
12. f_devd+4q[view] [source] [discussion] 2025-09-24 17:11:19
>>jwally+Th
> United States to implement a reliable ZKP age verification system (my emphesis)

Realistically at least 3-4 years, assuming they want to keep the same goals as eIDAS. I think the (software) implementation will be the least costly part, time-wise; but it takes a long time before everyone adopts a new social system. Especially in the US where there has been no precedent for digital identification. Even with full control of your own ID & and solid implementation details, there will be push-back just for suggesting that people/companies should adopt it.

13. reitan+yo4[view] [source] 2025-09-25 20:23:53
>>jwally+(OP)
This doesn't seem to work at all, maybe a Firefox issue, but it tells me to insert my security key when I generate passkey. I don't have a security key, so I'm totally at a loss of what to do. (And somewhat poor style on Firefox's behalf, to not explain what is going on to someone who doesn't know what one is)
[go to top]