Lição
A teoria — A Marca de Água que Sobrevive a um Conluio
Um código de impressão digital fornece a cada assinante uma cópia do mesmo filme com uma sequência diferente de m bits. Assim, uma cópia vazada identifica quem a recebeu. Os bits não são escolhidos uniformemente. Cada posição j recebe o seu próprio viés pj, gerado para que a maioria das posições apresente quase exclusivamente uns ou quase exclusivamente zeros em toda a base de assinantes. Um grupo que junte as suas cópias apenas consegue detetar uma posição caso os seus próprios bits divirjam. A pontuação de acusação soma, ao longo das posições onde a falsificação regista um, quão surpreendente era o bit de cada assinante.
O que significa cada símbolo
m- o comprimento do código em bits, que é o tema central de toda a lição
c- quantos assinantes agrupam as suas cópias
Z- o limiar de acusação: uma pontuação acima deste valor aponta um culpado
- Pressupõe
- A premissa da marcação: nas posições em que todas as cópias da coligação carregam o mesmo bit, o grupo não consegue perceber que essa posição existe e não a pode alterar. Tudo nesta página repousa sobre este princípio. Num sistema real, trata-se de uma afirmação sobre o método de incorporação. Uma marca invisível durante a comparação de cópias constitui uma marca impossível de remover. Os ataques alvejam sempre esta componente da arquitetura e não a aritmética.
- Falha quando
- Quando o número de conspiradores ultrapassa a capacidade para a qual o código foi dimensionado. Não existe uma degradação suave. As pontuações dos culpados decaem como 1/c enquanto a fasquia permanece onde a população inocente a estabelece. Consequentemente, um código suficientemente longo para quatro que venha a enfrentar oito não aponta um culpado com menos frequência. Não aponta rigorosamente ninguém.
Problemas resolvidos na íntegra
-
De onde vem o 2.490? A ferramenta apresenta este valor para quatro cúmplices entre um milhão de assinantes, e não é um número simulado. Resulta de duas leis medidas e de uma decisão sobre a frequência com que se aceita acusar uma pessoa inocente. A dedução faz-se em quatro linhas. É a última que gera o quadrado.
Abrir este problema na ferramenta
-
As provas que um cúmplice deixa são proporcionais ao comprimento do código e repartem-se pelo grupo, pois cada coluna que controlam resulta da intervenção de todos. Numa medição feita em conluios de 2 a 16 elementos e códigos de 800 a 51.200 bits, o valor ronda os 0,34 m/c.
-
A pontuação de um assinante inocente é a soma de m contribuições independentes de média nula. Trata-se, por isso, de um passeio aleatório. A sua dispersão cresce com a raiz quadrada do comprimento, e não com o comprimento linear. Valor medido: cerca de √(m/2).
-
Comece por decidir com que frequência admite acusar uma pessoa inocente: no máximo ε numa população de n. Logo, é preciso ilibar um assinante ao nível de 1 − ε/n. Para um milhão de assinantes e uma probabilidade em mil, isto equivale a 6,00 desvios-padrão de afastamento.
-
A deteção exige que os indícios superem o limiar. Substitua as duas leis na equação e resolva em ordem a m.
-
O c encontra-se dentro do quadrado, e é aqui que reside toda a resposta: 2.490 bits para quatro cúmplices e 9.959 para oito. É um valor quatro vezes superior, descontando apenas o arredondamento para bits inteiros.
-
O valor em torno do qual se desenha o sistema não é o valor que a demonstração matemática nos dá. O próprio teorema de Tardos assegura o resultado com 100c²⌈ln(n/ε)⌉ bits, o que neste caso corresponde a 2.100c². É um código treze vezes mais longo do que a estimativa gaussiana, porque a prova matemática tem de resistir a todas as estratégias de conluio possíveis e não apenas às três referidas nesta página.
Resposta
m > (z c √(1/2) ÷ 0,34)² = 4,3253 z² c², o que para z = 5,9978 resulta em 155,60 c² antes do arredondamento para bits inteiros: 623 bits para dois cúmplices, 2.490 para quatro, 39.833 para dezasseis. Em bytes, isto corresponde a uma carga útil de marca de água de 78 B, 311 B e 4,98 kB. São dimensões tão pequenas que o comprimento nunca é um verdadeiro obstáculo, o que explica por que razão os especialistas debatem, em vez disso, a premissa da marcação. A única variável imune ao peso do quadrado é o público. O n entra apenas por via de z, que cresce segundo √(log n). Passar de mil assinantes para dez milhões faz o comprimento subir de 1.564 bits para 2.801, um aumento de 79%, ao passo que duplicar o conluio apenas uma vez custa 300%.
-
-
Um serviço de streaming precisa de alguma destas coisas? O primeiro passo desta série aborda um mundo onde todas as cópias são idênticas e não existe forma de comunicar com um dispositivo. Um serviço de assinaturas é o cenário oposto. A própria documentação do Widevine refere que um pedido de licença segue via HTTPS para um servidor de licenças, e que "o conteúdo da licença não pode ser modificado e é individualizado para o dispositivo que a solicita". O que sobra, então, da matemática?
Abrir este problema na ferramenta
-
Metade dela desaparece por completo. Existindo um canal de retorno, não há nenhum cabeçalho a proteger. Excluir um dispositivo não tem qualquer custo na transmissão, bastando não lhe emitir uma licença. O problema de cobertura do primeiro passo é o preço a pagar por não haver forma de obter uma resposta. Um disco não tem como perguntar quem o está a reproduzir.
-
A outra metade não desaparece. Ganha, pelo contrário, uma importância reforçada. Um servidor de licenças consegue bloquear os dispositivos que sabe estarem comprometidos, mas não tem como impedir um assinante em situação regular de gravar aquilo que desencriptou de forma legítima. Essa fuga de conteúdos leva consigo uma impressão digital, e essa impressão digital é a única pista capaz de revelar a identidade de quem o fez.
-
Assim, a questão do dimensionamento é a que abordamos nesta página, perante uma base de assinantes real. O comprimento do código cresce com o quadrado da coalizão e, em relação ao público, apenas através de um logaritmo.
-
Leia a tabela na horizontal e de seguida na vertical. Dezasseis cúmplices custam sessenta e quatro vezes mais do que dois cúmplices. A passagem de dez mil assinantes para cem milhões (um salto de quatro ordens de grandeza) representa um aumento de apenas 1,66 vezes.
-
Para dez milhões de assinantes e quatro cúmplices, obtemos 2.801 bits. Trata-se de trezentos e cinquenta bytes de carga útil, num filme que ocupa vários gigabytes.
Resposta
O comprimento do código nunca constitui o problema de fundo. Falamos de 350 bytes num contexto em que os conteúdos pesam milhares de milhões de bytes, e em que um público mil vezes superior implica um custo extra de apenas dois terços, e não um custo mil vezes maior. A dimensão do conluio é o único fator de rutura, por ser o único que se encontra dentro do quadrado. Ora, o número de pessoas dispostas a juntar as suas cópias é a única grandeza de todo o cálculo que ninguém consegue medir à partida. A engenharia de um sistema real não gasta os seus recursos nesta aritmética. O verdadeiro esforço passa por garantir que a marca sobrevive a recodificações, a cortes na imagem e a uma câmara apontada ao ecrã. Passa também por conseguir sustentar a premissa da marcação quando o atacante tem nas mãos duas cópias e uma ferramenta de comparação.
-
Percurso de aprendizagem
Proteger uma transmissão: revogar um dispositivo e depois descobrir qual
Referências (4)
- Worked problem 2 turns on a streaming service working the other way round from step 1 of the series, and this is the vendor's own description of the licence flow: Google, "Widevine DRM Overview", developers.google.com/widevine/drm/overview.
- The code this page builds, the accusation score it computes, and the c² the whole lesson is about: G. Tardos, "Optimal probabilistic fingerprint codes." Journal of the ACM 55(2), 2008, pp. 1–24. First published in STOC 2003, pp. 116–125.
- Where the marking assumption comes from, and the proof that some length is unavoidable: D. Boneh and J. Shaw, "Collusion-secure fingerprinting for digital data." IEEE Transactions on Information Theory 44(5), 1998, pp. 1897–1905.
- Why a studio cares: this is the other half of the same specification as step 1 of the series, and forensic marks are what it falls back on when revocation is too slow. AACS LA, Advanced Access Content System (AACS): Introduction and Common Cryptographic Elements, Revision 0.91, 17 February 2006.