Hacker News new | ask | show | jobs
by coppsilgold 144 days ago
> To what extent does this watermarking survive transcoding? Would not transcoding multiple times possibly affect it?

They are designed to survive being recorded by a phone at an angle. The embedding is only 1-bit per segment which can be multiple megabytes.

> Why?

Tardos codes scale as the square of the number of traitors times a constant. For example, a movie would typically have 2000 segments -> 2000 bits of encoding. By my calculation, at around 7 traitors some start to skate by detection. And there are ways to make detection additive across leaked content, so with another 2000 all 7 will get caught. This is because while they may not score highly enough to be reliably accused, they will be under suspicion, and that suspicion can later be enhanced.

To be clear, what the traitors are doing is pooling all the segment versions they have available to them, and adversarially choose a segment at random. This is the best strategy they have, a close second is to choose the segment that the majority have.

Trying to remove the actual 1-bit watermark from the segment isn't typically feasible. Every segment will have a unique adjustment to encode it. The embedding algorithm will take a secret key.

2 comments

> They are designed to survive being recorded by a phone at an angle.

Any idea what this looks like? I assume it's not visible to the human eye, but being able to survive this level of degradation is quite impressive.

My understanding is that it has gotten fairly complex. Don't know if they still use this particular facet but look at the Fourier-Mellin transform: <https://sthoduka.github.io/imreg_fmt/docs/fourier-mellin-tra...>

They don't use the highest frequencies as those watermarks are easy to obliterate, and they don't use the lowest frequencies as those would noticeably affect quality, the focus is generally on the mid range frequencies. However for A/B watermarking in particular which involve 1-bit watermarks, low frequencies may actually be fair game.

Keep in mind that when embedding watermarks of significant size (>100 bits) as for example if you want to create a camera that includes the serial of the device in every photo, error correcting codes would also be used. For 1-bit watermarks the error correction is likely ad-hoc and involves constructing some mathematical object (for example, a few real numbers derived from frames of a segment) which remains approximately fixed through transformations, you can afford to be wasteful.

It depends on which vendor they're using.

It generally occurs as patterns which are slightly in the noise. Good systems pick locations where its easier to hide and turn it off when the scene would expose it. Usually when badly done increasing sharpness in a scene can help reveal it.

Basically, if you can damage the watermark the picture quality is bad enough that it's harming your viewing. You need to compress into crap SD quality to make it hard to detect and even then you'll get something.

You don't even need a complete pattern, if you can get enough fragments you can narrow down the possible identities until you have a high match probability. I.e. partial fingerprints or DNA match.

That's fascinating, thank you.