Hi! I am a researcher at the CISPA-Helmholtz-Institute for information security (https://cispa.de/en/people/kuennemann). I would like to get some community feedback on a project we are working on. I am a Lemmy-user myself, but of course I use my other account for lurking; this account is for my research business.
My question taps into the age-verification debate, which I know is very controversial, and people are sceptical for very good reasons; I just ask everyone to stay polite and engage the topic.
In short, I am worried about the effect bots have on public discourse, which to a large part takes place in the Internet. I would like to propose cryptographic methods that allow an instance to attest that a poster or commenter are a real human being. I think the European Unified ID (euid.eu) provides good infrastructure to do that, at the cost of relying on the member countries to provide them with an ID. Crypto-magic can (potentially - I haven’t worked out the details yet) ensure that:
- users from an instance that opted in are sure to belong to someone with an id, other instances may use this knowledge in their moderation tools
- users from that instance can retain several pseudonyms that even this instance cannot link. Yet (configurable) policy can ensure that no users uses two pseudonyms in the same thread
- we could cap how many posts or comments a user makes per day/week/month, across their pseudonyms
- users who post on this instance but are not displayed (in the web or to other instances) can provide evidence that they are being censored, which the public may review to discredit that instance and chose a new one.
- the infrastructure also happens to allow for age verification (EUID can attest to statements like “this anonymous person is > 18”), and it could be part of an instance’s policy. Thanks to lemmy’s federated infrastructure, multiple verifying instances with different policies can exist. It’s not a focus of mine, though – I think social networks should not exploit children or adults.
Some of these ideas we have worked out (and tested on) reddit in this article, which was before Lemmy became popular and EUID was on the horizon.
I am interested in practical advice about who to talk to about engineering and how to best involve the community – we’ve got a prototype fork of lemmy including end-user verifiable authentication. I am also interested in how the community feels about the burden of moderation and this as a potential remedy. When discussing age verification, some users say they will never accept any ID-based authentication. Are there some amongst those who would change their minds provided they had full pseudonymity and censorship could be detected and made public with cryptographically signed evidence?


I think proof of personhood, no matter how it is done, is problematic either way. So many things can go wrong. The issue stems from the question where/how to obtain said proof besides a government / institution backed document. Institution will always be problematic one way or another. Look at how TLS certificate mafia operate. Only a few “trusted” companies can make it to be the root of trust by default on billions of devices. If you want to use a selfie then there is an issue of ease of forgery. Let’s face it, even many ID verification services out there struggle with it. Not to mention forging a photo realistic image nowadays is quite easy with generative AI. Overcome the issue of how said proof can be obtained then I am interested.
Yeah, not a fan of ID verification services either. I think that’s a government’s job. In contrast to big companies deciding on the policy, there is democratic oversight. (In countries that have working democracies.)
EUID’s design allows(*) to derive unlinkable pseudonyms from the identity, which in turn can be used with the third parties so neither they (nor the issuer, e.g., the government) know which pseudonym belongs to whom. So for me this is mostly about the government potentially limiting access.
(*) Caveat at the moment: cryptographic unlinkable pseudonyms are not yet standardized and we have to see how to create them with EUID’s current status. In the old article, we built this on DAAD, which provides this feature, but similiar techniques should apply here. Anyway, this strong unlinkability is a requirement for the system for me.
What cryptographic method would allow the issuer (government) and requiring party (some service) both be blind to the pseudonym and identity?