-
Notifications
You must be signed in to change notification settings - Fork 5
Integridade e autenticidade do documento oficial
Sugestão: criar miniguia a partir das sugestões didáticas de deste artigo
Referência de algoritmo: https://github.com/okfn-brasil/discussOKBr-assets/wiki/Checksums
Um garrafa de água tem seu volume integral se confirmamos ao abrir que o volume de água bate com o volume indicado no rótulo. A "integralidade do volume de água" portanto estaria garantida pela capacidade do consumidor final de conferir (auditar) o volume. Se simplesmente beber no gargalo, sem nem mesmo conferir a quantidade de copos, perde o direito de reclamar da falta de volume.
A "integralidade do volume de um conteúdo digital" pode ser verificada grosseiramente pela verificação do tamanho do arquivo. Requer duas coisas:
-
indicação explícita na fonte oficial: é como o rótulo da garrafa, precisa estar escrito "aqui contém tanto volume". Em geral um botão de download vem com a indicação de volume do lado.
-
preservação do formato original: é suposto que o transportado seja uma cópia fiel ao original. Se, durante o transporte do download por exemplo, for necessário transformar o arquivo original em outro formato, deixa de ser válida a indicação explícita.
-
capacidade de verificação: é suposto que o usuário final possa realizar a medida. Se quem baixou o arquivo não sabe ou não pode verificar com confiança o volume, então a sua verificação não tem validade.
Vamos agora ao conceito (sutilmente) mais amplo de "integralidade", que é a integridade: além de não ter sofrido diminuição, não pode ter sofrido outras formas de adulteração (ex. troca sem diminuição).
NOTA: é aqui que o conceito de integridade também começa a se confundir com o de autenticidade: documentos digitais são idênticos ao original (portanto autênticos!) quando todas as suas partes são cópias, sem perdas, nem adições nem trocas. Podemos convencionar o seguinte jargão: integridade digital é garantida por métricas de volume e verificações por amostragem; autenticidade digital é garantida pela verificação byte-a-byte com o original.
Existem das formas de aferição de "volume de um documento": número de palavras, número de imagens, de parágrafos, de tabelas, etc. Todas elas ajudam a reforçar o atestado de integridade, tal como o volume em bytes. E existem ainda as formas de aferição não-volumétricas, por amostragem: por exemplo conferir se a décima palavra do quinto parágrafo é "olá" e a seguinte é "mundo". As verificações baseadas em hash são desse tipo, e são muito precisas.
Por fim, numa leitura atenta a um documento que oficial que nunca apresentou erratas, saltaria aos olhos qualquer coisa que possa ser percebida como "sujeira", de modo que as eventuais adulterações precisariam ser também consistentes com a gramática e a ortografia cultas utilizadas no restante do texto.
Todas as formas de verificação se somam no sentido de dificultar adulterações: a adulterador vai ter muito trabalho em alterar o conteúdo para o que deseja (e não uma alteração qualquer) e ao mesmo tempo preservar todas as verificações oficialmente já declaradas.
Pode acontecer de uma mesma chave abrir duas portas diferentes, mas se o portador da chave diz que é pessoa autorizada a entrar, somos levados a crer que não esteja mentindo. Acreditamos que hajam poucas portas no mundo que se abrem com aquela chave, logo acreditamos que a chance de ser outra pessoa é pequena.
A hash criptográfica, mesmo que pública, tem também esse valor de chave: seria muito azar que outra pessoa tivesse a mesma chave. Chaves em geral são algo que se adiciona, que faz parte da embalagem, não do objeto que se busca guardar. A hash critográfica todavia é parte do objeto, como um código de DNA do exame de paternidade, que se baseia na estrutura do próprio objeto guardado... E isso acaba sendo mais uma vantagem.
Quando lemos, em diversos documentos oficiais, "este documento pode ser verificado"... é falso, não é autenticidade, é apenas um ID de reprodução, da fonte oficial.
No DOU por exemplo, cada página tem no seu contato inferior esquerdo (exemplo em in.gov.br/imprensa
num diário oficial de 24/04/2017) um código que você copia e cola em http://www.imprensanacional.gov.br/verificacao-autenticidade
para o exemplo dado, digite 00012017042400113
... É apenas isso mesmo, um ID para nova busca, sem garantia de que o documento resgatado não tenha sido adulterado.
A principal diferença entre uma alteração (que em Diários Oficiais não seria permitida!) e uma adulteração maliciosa, é que há um histórico de alterações. Nos diários oficiais, de qualquer modo, deve-se publicar errata no lugar de alterar o original.
Checksums baseados em hashes longos (alta amostragem) e com alta entropia... A partir do SHA2 os padrões de hashes criptográficas vem oferecendo opções de tamanho justamente para garantir essa caraterística.