zlacker

[parent] [thread] 15 comments
1. markat+(OP)[view] [source] 2025-12-11 18:02:28
Im the developers who actually got banned because of this dataset. I used NudeNet offline to benchmark my on-device NSFW app Punge — nothing uploaded, nothing shared.

Your dataset wasn’t the problem. The real problem is that independent developers have zero access to the tools needed to detect CSAM, while Big Tech keeps those capabilities to itself.

Meanwhile, Google and other giants openly use massive datasets like LAION-5B — which also contained CSAM — without facing any consequences at all. Google even used early LAION data to train one of its own models. Nobody bans Google. But when I touched NudeNet for legitimate testing, Google deleted 130,000+ files from my account, even though only ~700 images out of ~700,000 were actually problematic. That’s not safety — that’s a detection system wildly over firing with no independent oversight and no accountability.

Big Tech designed a world where they alone have the scanning tools and the immunity when those tools fail. Everyone else gets punished for their mistakes. So yes — your dataset has done good. ANY data set is subject to this. There needs to be tools and process for all.

But let’s be honest about where the harm came from: a system rigged so only Big Tech can safely build or host datasets, while indie developers get wiped out by the exact same automated systems Big Tech exempts itself from.

replies(2): >>petee+51 >>lynndo+Vf
2. petee+51[view] [source] 2025-12-11 18:08:21
>>markat+(OP)
700 were csam, if I'm reading this right?
replies(3): >>wang_l+t2 >>markat+Z4 >>rolph+2e
◧◩
3. wang_l+t2[view] [source] [discussion] 2025-12-11 18:16:01
>>petee+51
Perhaps these folks should work together to make patches to the dataset to remove the problematic images?

E: But also make sure every image in the dataset is properly licensed. This would have eliminated this entirely from the get go. Playing fast and loose with the distribution rights to these images led to this problem.

◧◩
4. markat+Z4[view] [source] [discussion] 2025-12-11 18:28:55
>>petee+51
That is right: https://medium.com/@russoatlarge_93541/canadian-child-protec...
◧◩
5. rolph+2e[view] [source] [discussion] 2025-12-11 19:04:06
>>petee+51
700 CSAM images, even one is damning, but hundreds are often referred to as a cache or horde, normally anyone caught with that can wave bye-bye to thier life.

google should be fully accountable for possesion and distribution, perhaps even manufacturing.

6. lynndo+Vf[view] [source] 2025-12-11 19:11:01
>>markat+(OP)
Agreed entirely.

I want to add some technical details, since this is a peeve I've also had for many years now:

The standard for this is Microsoft's PhotoDNA, a paid and gatekept software-as-a-service which maintains a database of "perceptual hashes." (Unlike cryptographic hashes, these are robust against common modifications).

It'd be very simple for Microsoft to release a small library which just wraps (1) the perceptual hash algorithm and provides (2) a bloom filter (or newer, similar structures, like an XOR filter) to allow developers to check set membership against it.

There are some concerns that an individual perceptual hash can be reversed to a create legible image, so I wouldn't expect or want that hash database to be widely available. But you almost certainly can't do the same with something like a bloom filter.

If Microsoft wanted to keep both the hash algorithm and even an XOR filter of the hash database proprietary, that's understandable. But then that's ok too, because we also have mature implementations of zero-knowledge set membership proofs.

The only reason I could see is that security-by-obscurity might be a strategy that makes it infeasible for people to find adversarial ways to defeat the proprietary secret-sauce in their perceptual hash algorithm. But I that means giving up opportunities to improve the algorithm, while excluding so many ways it could be useful to combat CSAM.

replies(4): >>Hizonn+4m >>bigfat+Br >>markat+1C >>johnea+B21
◧◩
7. Hizonn+4m[view] [source] [discussion] 2025-12-11 19:38:31
>>lynndo+Vf
> There are some concerns that an individual perceptual hash can be reversed to a create legible image,

Yeah no. Those hashes aren't big enough to encode any real image, and definitely not an image that would actually be either "useful" to yer basic pedo, or recognizable as a particular person. Maybe they could produce something that a diffusion model could refine back into something resembling the original... if the model had already been trained on a ton of similar material.

> If Microsoft wanted to keep both the hash algorithm and even an XOR filter of the hash database proprietary

That algorithm leaked years ago. Third party code generates exactly the same hashes on the same input. There are open-literature publications on creating collisions (which can be totally innocent images). They have no actual secrets left.

replies(1): >>lynndo+471
◧◩
8. bigfat+Br[view] [source] [discussion] 2025-12-11 20:09:21
>>lynndo+Vf
PhotoDNA is not paid, but it is gatekept.
◧◩
9. markat+1C[view] [source] [discussion] 2025-12-11 21:03:28
>>lynndo+Vf
I’m not a CSAM-detection expert, but after my suspension I ended up doing a lot of research into how these systems work and where they fail. And one important point: Google isn’t just using PhotoDNA-style perceptual hashing.

They’re also running AI-based classifiers on Drive content, and that second layer is far more opaque and far more prone to false positives.

That’s how you get situations like mine: ~700 problematic images in a ~700k-image dataset triggered Google to delete 130,000+ completely unrelated files and shut down my entire developer ecosystem. Hash-matching is predictable.

AI classification is not. And Google’s hybrid pipeline: isn’t independently vetted isn’t externally audited isn’t reproducible

has no recourse when it’s wrong

In practice, it’s a black box that can erase an innocent researcher or indie dev overnight. I wrote about this after experiencing it firsthand — how poisoned datasets + opaque AI detection create “weaponized false positives”: https://medium.com/@russoatlarge_93541/weaponized-false-posi...

I agree with the point above: if open, developer-accessible perceptual hashing tools existed — even via bloom filters or ZK membership proofs — this entire class of collateral damage wouldn’t happen.

Instead, Big Tech keeps the detection tools proprietary while outsourcing the liability to everyone else. If their systems are wrong, we pay the cost — not them.

◧◩
10. johnea+B21[view] [source] [discussion] 2025-12-11 23:22:29
>>lynndo+Vf
So, given your high technical acumen, why would expose yourself to goggle's previously demonstrated willingness to delete your career's and your life's archive of communications?

Stop using goggle!

It's as simple, and as necessary, as that.

No technically astute person should use ANY goggle services at this point...

replies(1): >>lynndo+Y71
◧◩◪
11. lynndo+471[view] [source] [discussion] 2025-12-11 23:52:02
>>Hizonn+4m
> > There are some concerns that an individual perceptual hash can be reversed to a create legible image,

> Yeah no.

Well, kind of. Towards Data Science had an article on it that they've since removed:

https://web.archive.org/web/20240219030503/https://towardsda...

And this newer paper: https://eprint.iacr.org/2024/1869.pdf

They're not very good at all (it just uses a GAN over a recovered bitmask), but it's reasonable for Microsoft to worry that every bit in that hash might be useful. I wouldn't want to distribute all those hashes on a hunch they could never be be used to recover images. I don't think any such thing would be possible, but that's just a hunch.

That said, I can't speak on the latter claim without a source. My understanding is that PhotoDNA still has proprietary implementation details that aren't generally available.

replies(1): >>Hizonn+mi1
◧◩◪
12. lynndo+Y71[view] [source] [discussion] 2025-12-11 23:57:45
>>johnea+B21
I'm not the person in the OP, I've been completely de-googled since 2019 and I agree that Google should not be trusted for anything important.
replies(1): >>broken+SF1
◧◩◪◨
13. Hizonn+mi1[view] [source] [discussion] 2025-12-12 01:18:53
>>lynndo+471
> They're not very good at all (it just uses a GAN over a recovered bitmask),

I think you're making my point here.

The first one's examples take hashes of known headshots, and recover really badly distorted headshots, which even occasionally vaguely resemble the original ones... but not enough that you'd know they were supposed to be the same person. Presumably if they had a better network, they'd get things that looked more human, but there's no sign they'd look more like the originals.

And to do even that, the GAN had to be trained over a database of... headshots. They can construct even more distorted headshots that collide with corporate logos. If they'd used a GAN trained on corporate logos, they would presumably get a distorted corporate logo when they tried to "reverse" any hash. A lot of the information there is coming from the model, not the hash.

The second one seems to be almost entirely about collisions. And the collisions they find are in fact among images that don't much resemble one another.

In the end, a PhotoDNA hash is 144 bytes, made from apparently a 26 by 26 pixel grayscale version of the original image (so 676 bytes). The information just isn't there. You might be able to recover the poses, but that's no more the original image than some stick figures would be, probably less.

Here's [the best "direct inversion" I can find](https://anishathalye.com/inverting-photodna/). That's still using machine learning, and therefore injects some information from the model... but without being trained on a narrow class of source images, it does really badly. Note that the first two sets of images are cherry picked; only the last set is representative, and those are basically unrecognizable.

Here's [a paper](https://eprint.iacr.org/2021/1531.pdf) where they generate collisions (within reasonable values for the adjustable matching threshold) that look nothing like the original pictures.

> That said, I can't speak on the latter claim without a source. My understanding is that PhotoDNA still has proprietary implementation details that aren't generally available.

For original PhotoDNA, only for basically irrelevant reasons. First, actually publishing a complete reverse-engineering of it would be against many people's values. Values aside, even admitting to having one, let alone publishing it, would probably draw some kind of flak. At least some and probably dozens of people have filled in the small gaps in the public descriptions. Even though those are unpublished, I don't think the effort involved in doing it again is enough to qualify it as "secret" any more.

Indeed, it probably would've been published regardless of those issues, except that there's no strong incentive to do so. Explanations of the general approach are public for people who care about that. For people who actually want to compute hashes, there are (binary) copies of Microsoft's actual implementation floating around in the wild, and there are [Python](https://github.com/jankais3r/pyPhotoDNA) and [Java](https://github.com/jankais3r/jPhotoDNA) wrappers for embedding that implementation in other code.

There are competitors, from openly disclosed (PDQ) to apparently far less fully reverse engineered (NeuralHash), plus probably ones I don't know about... but I think PhotoDNA is still dominant in actual use.

[On edit: but I probably shouldn't have said "third party code", since the public stuff is wrapped around Microsoft's implementation. I haven't personally seen a fully independent implementation, although I have reason to be comfortable in believing they exist.]

◧◩◪◨
14. broken+SF1[view] [source] [discussion] 2025-12-12 05:37:32
>>lynndo+Y71
Gmail is the only thing I wouldn't be able to replace.

I've read it's almost impossible to run your own email server without getting blocked by all recipients in 2025.

replies(2): >>jenadi+BZ1 >>lynndo+rt3
◧◩◪◨⬒
15. jenadi+BZ1[view] [source] [discussion] 2025-12-12 09:33:23
>>broken+SF1
I'm running my email server on some famous VPS provider, and with properly configured server (SPF, DCIM), I didn't really get any problems sending emails.
◧◩◪◨⬒
16. lynndo+rt3[view] [source] [discussion] 2025-12-12 19:58:16
>>broken+SF1
I don't self-host everything. For example, I use Fastmail with custom domains. I think this spreads the risk.

Unfortunately, Google has a policy of "greylisting" domains it had not yet seen, so this increases friction with people on Google. I'm not even running my own email server :(

[go to top]