1) Indentify Offsets, replace marks, add noise
For systems used with an EMV-compatible card, the card is usually available in the back of your receiver equipment. Your equipment with the help of the EMV-card in its back, decodes the streams, usually sent via cable, to your receiver and finally to your screen.
Fellas need to start with at least 3 different receivers tunned on the same stream(channel) to “watch/analyze” the RAW streams AFTER decryption, identifying the watermarks in both audio AND video.
If you manage to get your hands on the watermarking patching algorithm, for sure a much easier way, its all done, but I doubt it is so easily available in any market at all 🙂
It is a hell of low-level analysis, hexdump/xxd-like, I am sure some Python-magician can semi-automate the task, even in realtime. In addition, after identifying the offsets commonly used (because these spots can also change with time), you need to insert your own “noise” so the original streams cannot be properly identified. Its pretty much like “patching” a virus signature with random sequence of bytes in an hex-editor, so the “virus” (in this case the watermark) cannot be detected anymore. All while not breaking the quality of the audio/video stream.
For the audio stream to be processed in near realtime, y’all know GPU/CPU usage spikes will occur – and possibly delay, so prepare for scaling of processing power.
2) Multiplexing – The Easy way nº 1
You shall not be cheap – this is the rule.
Come on, you have thousands of customers, so lets make a simple math, ok? Compare the total number of greens paid by customers, to the total number of greens providers charge per EMV-card. How much EMV-card subscriptions can you buy retaining a good profit margin? More than 5? Ok. Buy up to 32.
Shuffle the source of the cable streams into your IPTV-based stream. Why? Plausible-deniability. They cannot trace a single card to your service.
Keep cancelling subscriptions and buying new cards.
You will need an engineer to set this up 🙂
3) Filters – The Easy way nº 2
This is too much cost-effective, so I will not explain it. I leave to you fellas to figure it out.
Warning: I assume no responsability for the implementation of the solutions above mentioned, which were explained just for research purposes. I haven’t the time nor the will to implement them, but can be done.