Este estudo não envolveu participantes humanos, sujeitos humanos, animais ou amostras clínicas. Portanto, não era necessário aprovar a ética institucional nem o consentimento informado.
Materiais e software
O ambiente usado para implantar o framework era Hyperledger Fabric versão 2.4.8, CouchDB, Docker Containers, implantação Minifab, aplicações de processamento multimídia FFmpeg e a linguagem de programação Go. O Hyperledger Fabric fornecia serviços para gerenciamento descentralizado de livros-razão e execução de contratos inteligentes, enquanto o CouchDB armazenava e recuperava informações de direitos autorais de forma eficiente via armazenamento off-chain. FFmpeg era usado para pré-processamento de vídeos e extração de quadros de vídeo, enquanto algoritmos de hash perceptual eram aplicados por meio de bibliotecas de hashing de imagem na linguagem de programação Go. Uma lista de todas as ferramentas e suas respectivas descrições está ilustrada na Tabela de Materiais.
Arquitetura do framework
O framework proposto emprega algoritmos de hashing perceptual dentro do blockchain autorizado Hyperledger Fabric para permitir uma abordagem descentralizada para proteção de direitos autorais de vídeo e validação de propriedade. A estrutura consiste em cinco componentes principais: pré-processamento de vídeo, geração perceptual de hash, registro de direitos autorais baseado em blockchain e verificação baseada em similaridade. Nesse framework, o Hyperledger Fabric serve como camada de confiança, fornecendo registros de propriedade imutáveis, enquanto o CouchDB fornece armazenamento fora da cadeia. A arquitetura geral da estrutura proposta é retratada na Figura 1.
Modelo do sistema para verificação de direitos autorais
Um fluxo de trabalho detalhado do sistema em investigação é mostrado na Figura 2. Começa com a aquisição de vídeo, seguida pela extração de quadros em intervalos regulares usando FFmpeg. Os quadros extraídos são processados dentro do ambiente de implementação do Hyperledger Fabric, que inclui ações como registro de propriedade, administração de certificados, comunicação entre pares e validação de transações. O hashing perceptual é aplicado aos quadros extraídos, seguido pelo cálculo da distância de Hamming para avaliar o grau de similaridade. Se a distância de Hamming estiver abaixo do limiar, o quadro é considerado autêntico e semelhante ao conteúdo registrado; caso contrário, é tratado como conteúdo modificado.
Aquisição de vídeo, pré-processamento e criação de hash perceptual
Amostras de vídeo usadas no experimento eram arquivos MP4 em resolução 480p, com média de cerca de 26 segundos de duração. O conjunto de dados de avaliação tinha 15 amostras de vídeo, incluindo um vídeo de referência original e várias versões modificadas. Essas modificações incluíam tarefas comuns de edição, como alterar taxas de quadros, inserir, excluir ou substituir quadros, e aplicar distorções como recorte, escalonamento, rotação e efeitos de sobreposição. O conjunto de dados também incluía adições de compressão, ruído, texto e adesivos, efeitos de falhas e mais. Todos os vídeos estavam em formato MP4 em resolução 480p e passavam pelas mesmas etapas de pré-processamento e geração de impressão digital. Projetado para testar a resiliência do sistema, este conjunto de dados cobre uma ampla gama de cenários reais envolvendo infração e manipulação. Antes de serem sujeitos à detecção e confirmação de direitos autorais, os arquivos de vídeo passavam por pré-processamento no FFmpeg. Quadros de arquivos de vídeo eram extraídos em intervalos de 1 segundo para obter resumos condensados de conteúdo na forma de conteúdo visual que permaneciam computacionalmente baratos para processar. Em seguida, esses quadros eram convertidos para tons de cinza e normalizados para minimizar mudanças nas intensidades dos pixels decorrentes das condições de iluminação, codificação e diferenças de compressão.
Quatro funções de hashing perceptual foram usadas para produzir impressões digitais de conteúdo de vídeo na forma de hashing médio (aHash), hashing de diferença (dHash), hashing perceptual (pHash) e hashing wavelet (wHash).
Para geração de hash, os quadros foram primeiro convertidos para escala de cinza e redimensionados para 8x8 pixels para calcular aHash e dHash. Com o aHash, uma impressão digital de 64 bits era gerada comparando cada pixel com o valor médio em escala de cinza. O algoritmo dHash fez algo semelhante, criando também uma impressão digital de 64 bits, mas analisou como as intensidades dos pixels horizontais adjacentes diferiam. Para pHash, os quadros eram redimensionados para 32x32 pixels, então a transformada discreta do cosseno era calculada. Para gerar a impressão digital perceptiva de 64 bits, apenas os coeficientes DCT de baixa frequência 8x8 foram usados. Quanto ao wHash, os quadros foram novamente redimensionados para 32x32 pixels, mas desta vez processados com uma transformada wavelet de Haar. Um hash de 64 bits era gerado a partir dos coeficientes de wavelet de menor frequência extraídos. Todas essas configurações de parâmetros buscam um bom equilíbrio entre eficiência computacional e força para lidar com ajustes típicos de vídeo.
Para realizar cálculos eficientes da função hash, essas imagens eram normalizadas e redimensionadas. O método de hashing médio funciona comparando intensidades de pixels com as da média da imagem. O hashing de diferença opera de forma semelhante, mas foca em gradientes locais comparando intensidades de pixels com as de pixels vizinhos. O hashing perceptual utiliza características de Fourier que resultam da DCT, enquanto o hash wavelet depende dos resultados da transformada wavelet para extrair características.
Registro e verificação de direitos autorais baseados em blockchain
As impressões digitais perceptivas, metadados de propriedade, carimbos de data e detalhes das transações obtidos são inseridos na blockchain Hyperledger Fabric por meio do smart contract vitChain. A implementação do blockchain inclui duas organizações, dois pares, dois nós ordenados, dois nós de autoridade certificadora (CA) e bancos de dados de estado CouchDB, todos conectados via um canal automático. O framework de blockchain autorizado facilita o processamento seguro, acesso restrito e armazenamento à prova de adulteração dos dados de direitos autorais.
O procedimento de registro de direitos autorais começa assim que o proprietário do conteúdo faz upload do vídeo pela interface do usuário. Quando um usuário envia um vídeo para registro de direitos autorais, a camada de aplicação chama o contrato inteligente vitChain via o Hyperledger Fabric SDK. Esse registro inclui um ID de transação único, informações do proprietário, ID de vídeo, carimbo de data e quatro tipos de valores de hash perceptivos: aHash, dHash, pHash e wHash. Além disso, há metadados sobre o conteúdo. O aplicativo envia a proposta de transação para os pares que endossam. Esses pares então executam a lógica de contratos inteligentes e garantem que a transação esteja em conformidade com a política de endosso. Após validação bem-sucedida, a transação é transferida para o serviço de pedido. Aqui, as transações verificadas são agrupadas em blocos e enviadas para nós pares para inclusão no livro-caixa. Enquanto isso, os metadados relacionados vão para o CouchDB. Eles se conectam aos registros da blockchain via o ID da transação, permitindo consultas fáceis e mantendo os dados on-chain e off-chain consistentes.
Após o pré-processamento e os cálculos de hash perceptual, as impressões digitais, junto com seus metadados associados, são reunidas em uma transação a ser executada pelo contrato inteligente. A validação da transação é realizada pelos pares participantes de acordo com a política de endosso especificada. Após a endosso, a transação é encaminhada ao serviço de ordenação para inclusão em um bloco no livro-razão distribuído. Para uma operação confiável, incluímos o tratamento básico de erros nos processos de registro e verificação. Antes de uma transação acontecer, o app verifica metadados obrigatórios, informações de propriedade e hashes perceptuais para evitar problemas. Se as transações não atenderem às regras de endosso ou tiverem parâmetros inválidos, os nós pares as rejeitam diretamente. Quando há problemas como falhas de comunicação ou erros de processamento, o sistema os registra e envia um alerta administrativo. Isso ajuda a evitar pequenos erros de processamento que se propaguem pelo sistema. Durante as verificações de direitos autorais, vídeos contendo metadados inválidos ou valores de hash corrompidos são excluídos do processo de verificação. Vídeos para os quais a geração de impressão digital falha são igualmente excluídos do processo de verificação. No geral, essas etapas mantêm os dados limpos e fortalecem a confiabilidade do framework. As informações de propriedade do vídeo protegido por direitos autorais tornam-se imutáveis e estão disponíveis para recuperação posterior.
Verificação
O processo de verificação envolve etapas semelhantes de pré-processamento e computação de impressões digitais, seguidas por comparação de impressões digitais com impressões digitais armazenadas na blockchain, usando uma medida de similaridade baseada na distância de Hamming. Com base na medida de similaridade, o contrato inteligente determina as informações de direitos autorais do vídeo submetido. O fluxo de trabalho de interação é representado na Figura 3.
Verificação de direitos autorais baseada em similaridade
O processo de verificação de direitos autorais compara impressões digitais perceptuais derivadas do vídeo de consulta com impressões digitais previamente armazenadas no sistema blockchain. O mesmo processo de pré-processamento e geração de valor hash usado durante o registro é repetido na fase de verificação para manter a consistência. A similaridade é medida usando a distância de Hamming, que conta o número de diferenças de bits entre dois valores de hash. Distâncias Hamming menores indicam maior semelhança entre os dois vídeos, enquanto distâncias Hamming maiores indicam manipulação de conteúdo. Para verificar se o vídeo de consulta correspondia ao vídeo registrado, usamos a distância de Hamming entre seus valores de hash perceptuais. Com base em experimentos preliminares, foi selecionado um limiar de distância de Hamming de 20 para fornecer um equilíbrio adequado entre robustez a operações comuns de processamento de vídeo e sensibilidade a modificações não autorizadas. Vídeos com distância de Hamming de 20 ou menos eram considerados representando o mesmo conteúdo protegido por direitos autorais. Se fosse mais, mostraria grandes mudanças. Este 20 foi escolhido para lidar com edições comuns de vídeo como compressão, filtragem, transcodificação e mudanças na taxa de quadros, mas ainda detecta alterações não autorizadas. Medições de similaridade são feitas para todas as impressões digitais coletadas e depois agregadas para produzir uma conclusão de verificação de direitos autorais. Vídeos que fogem do conteúdo registrado são sinalizados para análise adicional.
Ambiente de implantação
O ambiente de teste foi criado usando containers Docker e a ferramenta de orquestração Minifab. Uma rede blockchain baseada no Hyperledger Fabric versão 2.4.8 foi implantada com o CouchDB como banco de dados estadual e camada de armazenamento para dados de contratos inteligentes. O contrato inteligente vitChain foi implementado no Go e implantado usando o ciclo de vida do chaincode do Hyperledger Fabric. Os parâmetros de implantação são resumidos na Tabela 2. A rede era composta por duas organizações participantes, a saber, o Criador de Conteúdo e o Videógrafo. Para garantir a integridade da transação e evitar registros ou modificações não autorizadas de direitos autorais, foi implementada uma política de endosso multi-organização, exigindo aprovação de ambas as organizações antes que a transação pudesse ser registrada no livro-caixa. Especificamente, a política de endosso seguia uma regra AND, expressa como AND ('ContentCreatorMSP.peer', 'VideographerMSP.peer').