Um Benefício Social das Assinaturas Digitais

Este é o primeiro de uma série de artigos que vou escrever para comemorar os 10 anos da Infra-Estrutura de Chaves Públicas Brasileira, também aproveitando que quinta-feira Recife estará sediando a primeira etapa do IX CertForum. Hoje eu vou descrever os benefícios únicos que as assinaturas digitais conferem a um programa pioneiro e inovador levado a cabo pela ATI e o Governo de Pernambuco do qual eu tive o privilégio de ser um dos consultores.

Introdução

"Certificação Digital" é um dos assuntos mais desafiadores de se abordar, por diversos motivos: primeiro, por ser uma área inerentemente multidisciplinar onde matemática, ciência da computação e direito colidem de frente. Dizer que a turma de TI e os advogados não se entendem muito é um eufemismo comparável a dizer que os rubro-negros se estranham com os tricolores. Como se não bastasse, as aplicações jurídicas tendem a atrair governo, políticos e política. Dizer que isso torna as coisas "um pouco mais complicadas" é outro tremendo eufemismo.

Segundo, a área é um campo minado de mal explicados e mal entendidos. Até o nome da área é intrinsecamente inadequado: tornou-se conhecida como "Certificação Digital" quando o verdadeiro protagonista da história são as assinaturas digitais. Por isso, quase sempre vou usar o termo "certificação digital" entre aspas.

Fazendo uma analogia grosseira, é como se os certificados digitais fossem a "gasolina" e as assinaturas digitais fossem os "motores dos carros". Quase ninguém compra gasolina só porque é gasolina. Em geral, as pessoas compram gasolina pra fazerem seus veículos andarem. O que as pessoas querem é o resultado; o insumo é só um meio para um fim.

Contudo, quase todo artigo sobre a área foca demais nos certificados e fala pouco ou nada sobre as aplicações (os "carros") que usam as assinaturas digitais como "motores". Por isso, as pessoas ficam meio sem entender para que essa coisa toda serve: imagine como seria ter de explicar pra que serve um posto de gasolina pra quem nunca viu um carro ou moto.

Por isso, neste artigo eu não vou falar quase nada sobre certificados digitais. Ao invés, vou falar sobre as assinaturas digitais e pra que elas servem, usando como exemplo um sistema real, que já está no ar, em uma aplicação de grande impacto social.

O Programa "Minha Certidão"

Hoje há um punhado de maternidades em Pernambuco em que, quando uma criança nasce, os pais já recebem sua certidão de nascimento lá mesmo, sem precisar ir ao cartório. Pra quem é de classe média, isso parece uma mera conveniência; mas para muitos o custo e trabalho de terem de se deslocar até o cartório mais próximo podem ser proibitivos (especialmente fora da capital).

Nas camadas menos favorecidas, há muita gente que não tem sequer o esclarecimento sobre a importância e benefícios do registro, criando toda uma população da qual o Estado desconhece até sua existência. Por isso, a emissão "automática" da certidão tem um efeito social importante, estendendo o amparo do Estado a um número muito maior de recém-nascidos.

A figura abaixo mostra como se parece uma dessas certidões. Eu cortei as bordas e reduzi o tamanho dela no GIMP para fazê-la caber melhor aqui no layout do Blog:

No rodapé da certidão, pode-se ver uma mensagem dizendo que essa certidão foi "assinada digitalmente" e que sua autenticidade pode ser verificada acessando um determinado site e digitando um determinando código alfanumérico. Indo lá no site, o usuário se depara com um formulário pedindo que você digite o código e a data/hora que constam na certidão. Fazendo isso, aparece uma outra janela de onde você pode baixar um arquivo chamado CERTIDAO_NASCIMENTO.BMP.p7s.

Esse tipo de arquivo chama-se "pacote assinado com conteúdo incluso". Abrindo esse arquivo dentro de um programa conferidor de assinaturas digitais, obtemos o seguinte resultado:

A operação de conferência da assinatura digital só pode dar dois resultados possíveis: válida ou inválida (por debaixo dos panos, resume-se a um teste de igualdade booleano, que só pode dar "true" ou "false"). Note, no exemplo acima, o campo "Situação da Assinatura" dizendo "VÁLIDA". Quando a conferência de qualquer assinatura digital dá "VÁLIDA", podemos ter certeza de pelo menos uma coisa:

  • Que o arquivo contra o qual estamos conferindo a assinatura digital (no nosso caso, o bitmap da certidão) é idêntico bit-a-bit ao documento assinado;

Nesse caso em particular, há um detalhe a mais: em arquivos bitmap, há uma correspondência direta entre os bits no arquivo e os pixels que aparecem na tela. Arquivos do Word e PDF, por exemplo, não oferecem essa garantia – o que é exibido na tela depende de uma interpretação complicada feita pelo Word ou pelo Acrobat Reader que varia de acordo com a versão exata do programa, das fontes que estão instaladas no sistema operacional, etc. Mas para arquivos bitmap, a associação entre os bits e o que você vê é clara, precisa, indisputável, universalmente idêntica e facilmente periciável.

O campo "Cadeia de Certificados" sendo qualificado como "Confiável" nos dá uma razoável confiança de que o responsável legal por ter gerado essa assinatura é o Marcus Antônio (quase meu xará!) de Azevedo Beltrão Júnior, que provavelmente deve ser um dos notários do cartório que emitiu a certidão. Todavia, essa certeza é dependente de uma cadeia complicada de fatores que vou explicar em outro artigo, outro dia. Hoje vou focar apenas no significado e consequências profundas da validade da assinatura digital.

Sabendo-se que a assinatura está válida, eu poderia clicar no botão "Extrair..." mostrado no exemplo acima e com isso obter um arquivo CERTIDAO_NASCIMENTO.BMP, munido da certeza de que essa é exatamente a mesma certidão que o notário assinou.

Colocar no documento impresso um código que te permite baixar uma "segunda via" do documento no site do emitente é um truque antigo – vários sites o utilizam. Mas há uma série de riscos/inconvenientes com essa abordagem:

  • Você só poderá fazer a consulta enquanto o órgão mantiver o site de consulta no ar. Se o site de consulta for descontinuado, digamos, daqui a dez anos, você não mais poderá provar a autenticidade do seu documento a um terceiro;

  • Na eventualidade de algum problema (acidental ou intencional) com o banco de dados, o site poderá passar a não mais reconhecer a validade de um documento. Ou seja, o emitente pode "voltar atrás", justificada ou maliciosamente, temporária ou permanentemente.

A conferência da assinatura digital, entretanto, independe do sistema computacional de origem. Você nem sequer precisa estar online. Tudo que você precisa é do arquivo .P7S com a assinatura e um bom programa conferidor de assinaturas.

À primeira vista, esse lance da "independência da origem" não parece ser nada demais. Mas é, talvez, a coisa mais bacana do sistema, por vários motivos:

  • Qualquer tentativa de "photoshopar" os pixels para alterar o significado do documento, ou mesmo alterar um único bit sequer, será prontamente detectada pelos programas de conferência, que passarão a exibir os status da assinatura como "INVÁLIDA". (Para os nerds que estão tentando imaginar como isso é feito, aqui vai uma dica: a assinatura digital é uma espécie de hash turbinado; relaxem, vou explicar em detalhes em um futuro post desta série).

  • Por causa disso, a certeza de que o documento que vemos é idêntica ao que o notário assinou independe dos sistemas computacionais de qualquer um dos vários intermediários por onde esse documento tenha passado ou ficado armazenado. Qualquer um deles que tente adulterar o arquivo inevitavelmente invalidará a assinatura. Assim, não há como o responsável pelo documento (o notário que o assinou) "tirar o corpo fora" alegando que o documento foi mexido por outrem.

  • Considere o segunte cenário catastrófico: imagine que o datacenter que abriga o site de consulta incendiou e tudo foi perdido – computadores, discos rígidos, fitas de backup – de sorte que nada pode ser recuperado. Mesmo assim conseguiremos verificar a validade a assinatura da nossa cópia, pois, além do arquivo .P7S, não precisamos de nada que estivesse somente lá.

  • De fato, a assinatura digital é uma construção matemática relativamente simples. Por isso, é particularmente amena a perícias científicas. Ao contrário de outros meios de prova, as assinaturas digitais são muito menos sujeitas a diferenças de interpretação (sob certas condições, há zero margem para interpretação; ou a conta dá certo ou não dá). Isso a torna um meio de prova muito importante, transformando documentos digitais "photoshopáveis" em evidências periciáveis juridicamente fortes. Os advogados e operadores de direito gostam de dizer que a assinatura digital agrega "eficácia probante" que os documentos digitais sozinhos não têm. Em outras palavras, a assinatura digital resgata uma característica tínhamos no mundo do papel mas que vínhamos perdendo no mundo digital: a periciabilidade.

  • Isso tudo também significa que (pelo menos em teoria e até onde sabemos), daqui a 50 anos ainda conseguiremos conferir a validade dessa assinatura. Imagine que talvez daqui a décadas o recém-nascido ao qual esta certidão se refere talvez esteja brigando em juízo por uma herança que lhe foi negada sob a alegação de que não faz parte da família. Nessa época, pode ser que o site de consulta nem exista mais e que o Word 25.0 ou o Adobe Reader 39.0 não mais consiga abrir arquivos tão antigos. Mas, devido ao fato da assinatura digital ser um objeto matemático "atemporal" e devido à escolha de um formato de arquivo igualmente atemporal como o BMP, há boas chances de que a autenticidade do documento poderá ser conferida mesmo em um futuro tão longínquo pelos padrões atuais da informática.

Não é todo sistema que pode se gabar de oferecer esses recursos. Na realidade, pouquíssimos sistemas computacionais hoje oferecem garantias dessa força, abrangência e longevidade. De fato, não conheço outra tecnologia, além das assinaturas digitais, que possa oferecer tais garantias.

É curioso: o lançamento do programa "Minha Certidão" foi amplamente celebrado em vários veículos de mídia, mas não vi nenhum artigo que explicasse esses detalhes, que, ao meu ver, são de suma importância.

Apesar de este ser o primeiro artigo da série e eu mal ter começado a falar sobre o assunto, já dá pra perceber um tema que será recorrente: as assinaturas digitais estão entre as tecnologias mais politicamente reformadoras que existem. Por enquanto elas ainda são ilustres desconhecidas, mas não há dúvidas que transformações sociais profundas advirão da sua adoção.

Próximas partes

Comentários
Aceita-se formatação à la TWiki. HTML e scripts são filtrados. Máximo 15KiB.

 
Enviando... por favor aguarde...
Comentário enviado com suceso -- obrigado.
Ele aparecerá quando os moderadores o aprovarem.
Houve uma falha no envio do formulário!
Deixei uma nota para os admins verificarem o problema.
Perdoe-nos o transtorno. Por favor tente novamente mais tarde.
Pedro Mesel | 2012-03-03 08:08:17 | permalink | topo

Kiko,

Adorei o post, muita clareza de detalhes e fácil compreeensão. A didática nos convida a acompanhar todo conteúdo e aguardar ansiosamente os "próximos capítulos".

Já está nos meus Favoritos.

Marco Carnut | 2011-05-03 18:38:22 | permalink | topo

Grande PP! Honrado em tê-lo aqui conosco!

Outros compromissos me impediram de comparecer ao Certforum. Mas, com você no comando, o que poderia ter eu a acrescentar? :)

Por favor, fique à vontade para nos brindar com seus sempre pertinentes comentários.

-K.

Pedro Paulo | 2011-04-25 19:30:37 | permalink | topo

Kiko, esperava vê-lo no 9 Certiforum em Recife. Em minhas intervenções (conduzi em nome do Renato Martini a etapa Recife do Certiforum), usei e abusei de referências ao seu trabalho e sobre os nossos consensos e dissensos e como apreendi muito com eles. A minha condução seguiu mais ou menos na sua linha, ou seja, Tecnologia a Serviço da Cidadania, que é a forma como gosto de falar sobre a ICP/Brasil.Estou ansioso pela continuidade dos artigos. Pedro Paulo (PP)

Angelo Mariano | 2011-04-24 20:10:47 | permalink | topo

Parabens a Pernambuco por essa conquista social, eh assim que deve ser, a tecnologia a serviço da sociedade!

Marco Carnut | 2011-04-18 11:23:43 | permalink | topo

Presidente! Muito honrado em tê-lo aqui. Convido-o a voltar sempre e nos brindar com seus sempre ponderados comentários.

(Pra quem não sabe, o Joaquim Costa é presidente da Agência de Tecnologia de Informação do Governo do Estado de Pernambuco.)

Queira também, por favor, aceitar meus parabéns pela realização do projeto SERC/Minha Certidão e o estender a todos os envolvidos.

Joaquim Costa | 2011-04-18 10:12:47 | permalink | topo

Excelente artigo.

A utilização da certificação digital no programa Minha Certidão, do Governo de Pernambuco, é um bom exemplo do que a tecnologia pode fazer para melhorar a vida das pessoas que mais precisam, através deste instrumento de cidadania que é a Certidão de Nascimento.

A ATI tem procurado estruturar o Governo para ampliar a oferta de e-Serviços e processos automatizados. Com eventos como o Certforum Recife, que tivemos na semana passada, estou certo de que todos saíram entusiasmados com as possibilidades da tecnologia.

Marco Carnut | 2011-04-14 16:32:15 | permalink | topo

Presidente! Que honra tê-lo aqui! Já que veio, não vou perder a oportunidade de abusar e convidá-lo para voltar aqui de vez em quando!

(Pra quem não sabe, o Renato Martini é o presidente do Instituto Nacional de Tecnologia da Informação, a autarquia vinculada à Casa Civil da Presidência da República e que tem como atribuição gerir a Infra-Estrutura de Chaves Públicas Brasileira.)

Ao planejar este artigo tutorial, cheguei a considerar usar o exemplo das Notas Fiscais Eletrônicas. Contudo, preferi o caso do SERC, pois me dava a oportunidade de homenagear o estado de Pernambuco e os colegas da ATI que implementaram o SERC/Minha Certidão. Além disso, o tema "impostos" nem sempre tende a gerar a melhor das reações no público. :)

Renato Martini | 2011-04-14 16:09:41 | permalink | topo

Esse menino é bom! (bem, ex-menino né, já tá velho)

...Refletindo sobre o final do artigo, acho que a tecnologia em si, se é vitoriosa, tem mesmo é que permanecer desconhecida e intransparente ao usuário. E deve-se lembrar que já é vitoriosa, no dia de hj o Brasil já tem autorizadas 2.437.782.967 de NFes! Quase 2 bi e meio de documentos eletrônicos assinados digitalmente com um certificado do sistema ICP-Brasil.

Marco Carnut | 2011-04-13 18:18:50 | permalink | topo

Olá Miguel,

A sua pergunta é imensamente abrangente e acho que você já pode imaginar que a resposta nem seria curta nem simples. De fato, a resposta eu vou dar aos poucos, pois a série de artigos que aqui começa vai falar exatamente disso: pretendo abordar vários aspectos sobre PKI no Brasil, tanto as vitórias quanto as burradas, sob vários ângulos. Aí você poderá formar sua própria opinião sobre em que ponto estamos – aliás, eu lhe peço que você faça isso, sempre comentando nos próximos posts, pois isso vai nos dar uma perspectiva comparativa muito enriquecedora e muito necessária. Será um prazer tê-lo conosco nessa jornada.

-K.

Miguel Almeida | 2011-04-13 13:09:48 | permalink | topo

Olá, Marco. Bom post. E deixou-me com uma curiosidade adicional: de que forma são utilizados os certificados digitais no Brasil? Aliás, reformulando a pergunta, os certificados estão distribuídos por uma fatia significativa da população Brasileira? São utilizados de uma forma generalizada, abrangente? Como? Em quê? Seria interessante conhecer o percurso e o desenvolvimento da vossa PKI nos últimos 10 anos. Fica a sugestão ; )

(Aqui desde lado do mar, em PT, os certificados digitais já abrangem uma parte razoável da população porque, desde há uns anos, têm sido emitidos e integrados no nosso Cartão do Cidadão (CC). Este cartão - um smartcard - inclui a identificação para vários serviços e pode ser usado para autenticar os cidadãos (e gerar assinaturas digitais) em diversos serviços. No entanto, parece-me, a sua utilização ainda não atingiu todo o seu potencial. Como é com vocês?)

Abraço! – Miguel

Marco Carnut | 2011-04-13 11:17:45 | permalink | topo

Magf,

Obrigado pelo comentário e por compartilhar sua experiência aqui.

Ao longo dos anos eu venho percebendo que aquela abordagem clássica de começar por criptografia para fins de sigilo e depois partir para assinaturas digitais pode ser adequada para uma aboragem acadêmica, mas cria um overhead insustentável quando todo o tempo que você tem para cativar sua audiência é uma hora.

Gradativamente, percebi que tudo ficava mais fácil se mostrássemos o assunto meio que "de trás pra frente", mostrando os resultados primeiro e os princípios depois. Percebi que era também possível fazer as pessoas terem um entendimento funcional do assunto, mesmo sem saber o que é RSA, AES, SHA-1, nem ter de recorrer a nenhuma equação matemática.

Mas deu trabalho: tive de desentortar a "árvore de dependências" do assunto e reduzi-la a sua essência. Mas valeu muito a pena, pois me proveu um entendimento muito mais apurado do assunto.

Neste artigo, fui ajudado por um execelente exemplo real – o projeto SERC/Minha Certidão. Nada como um exemplo real para tornar as coisas claras. Um exemplo real dá uma legitimidade, um ar de "é realidade mesmo, não é blablablá não", que nenhum exemplo enlatado, por mais bem feito que seja, pode dar.

Será para mim uma grande satisfação se este artigo te ajudar no seu dia-a-dia de ensino. Eu, mesmo, esperei por anos pra ver uma aplicação como essa; vi e participei de muitas outras que foram mal feitas ou mal projetadas.

Em futuros artigos vou mapear em mais detalhes o "campo minado de mal explicados e mal entendidos" e mostrar os "caminhos seguros" que achei por dentro deles.

Marco Carnut | 2011-04-13 11:10:38 | permalink | topo

Jonysberg: fique à vontade para referenciar.

A todos: obrigado, fico feliz que tenham gostado e lhes esteja sendo útil. Fiquem ligados, vem muito mais coisa por aí – a série promete ser longa e fértil.

Leandro Oliveira | 2011-04-13 10:28:05 | permalink | topo

Mestre Kiko,

Muito bom o post!

-Frank

Magf | 2011-04-13 09:28:04 | permalink | topo

Muito bom mesmo. Eu dou aula de criptografia nas pós-graduações que envolvam a disciplina aqui em Recife e cidades vizinhas. Explico o DES e o AES bit a bit, o RSA função a função, além de um bocado de historinha legal, mas não consigo fazer os meus alunos entenderem o quão o modelo de assinaturas digitais é ducacete e como ele intersecciona como o mundo real. Vou mandar lerem esse texto! ;)

Jonysberg | 2011-04-13 08:42:11 | permalink | topo

Parabéns pela visão crítica e pelos ensinamentos fundamentados. Posso referenciar seu blog no meu ?

Atenciosamente,

enildo | 2011-04-12 17:28:53 | permalink | topo

kiko, esse artigo está muito bem explicado. Gostei

Denise Direito | 2011-04-12 17:28:12 | permalink | topo

Adorei a matéria! Kiko, será que vc se rendeu ao munda da ICP-Brasil???? Grande abraço,