Um usuário decidiu compartilhar sua experiência frustrante ao tentar ler um eBook comprado na Amazon, revelando as complexidades e limitações do sistema de proteção de conteúdo da empresa.
Após adquirir seu primeiro eBook, o usuário se deparou com um aplicativo Kindle para Android que apresentou falhas constantes, resultando em várias travadas. "Eu só queria ler meu livro", lamentou. Quando tentou utilizar o leitor online, percebeu que não poderia baixar o conteúdo para leitura offline ou exportá-lo para um gerenciador de livros como o Calibre.
O que deveria ser uma compra simples rapidamente se transformou em uma frustração. "Eu paguei por este livro. É meu e eu quero lê-lo junto com os outros da minha biblioteca, mesmo que eu tenha que reverter o sistema de proteção deles para isso", explicou. A situação fez com que o usuário se sentisse como se estivesse apenas alugando o conteúdo, pois a Amazon poderia remover o acesso ao livro a qualquer momento.
Ao começar a investigar o sistema de proteção da Amazon, ele descobriu que o Kindle Cloud Reader, a versão web do aplicativo, funcionava. No entanto, o conteúdo estava longe de ser simples. Em vez de texto legível, o que ele encontrou foram IDs de glifos, que não correspondiam diretamente às letras do alfabeto. A cada cinco páginas, o alfabeto utilizava um conjunto de glifos completamente diferente, tornando a tarefa de decodificação extremamente complexa.
"A cada solicitação, o alfabeto muda completamente. Não dá para construir uma tabela de mapeamento única para o livro todo", afirmou o usuário. Ele precisou fazer 184 requisições para decifrar todos os 361 glifos únicos encontrados, resultando em mais de um milhão de glifos a serem decodificados.
Após várias tentativas frustradas de usar tecnologia de OCR para reconhecer os glifos, ele decidiu mudar de estratégia. A solução veio ao comparar as formas SVG dos glifos, utilizando hashes perceptuais para identificá-los. Ele conseguiu, assim, decifrar cada um dos caracteres do eBook, resultando em 5.623.847 caracteres reconstruídos.
O usuário finalmente conseguiu criar um arquivo EPUB que preservava a formatação original do livro, mantendo quebras de parágrafo, estilos de texto e links internos. "O resultado final é quase indistinguível do original!", comemorou.
Embora o processo tenha sido longo e trabalhoso, a experiência serviu como uma forma de demonstrar o quão elaborado é o sistema de proteção da Amazon. "Valeu a pena? Para ler um livro? Não. Para provar um ponto? Absolutamente. Para aprender sobre renderização SVG e hash perceptual? Provavelmente sim", concluiu.
Confira os últimos vídeos publicados no canal