http://www.pedro.jmrezende.com.br/sd.htm > Risco: Redes abertas

Redes Abertas e Fechadas
Riscos com as Tecnologias Atuais

Palestra proferida no Simpósio E-Dia
Colégio Notarial do Brasil, ANOREG e Ordem dos Advogados do Brasil
São Paulo, 19/09/2000

Prof. Pedro Antonio Dourado de Rezende
Departamento de Ciência da Computação
Universidade de Brasília


Agradecimento-
 Agradeço a oportunidade de participar deste evento. Aqui, computatas e profissionais do Direito podem se engajar num debate que é hoje necessário e urgente. Precisamos aprender a lidar com a caixa de pandora aberta pelas tecnologias da informação, não só no Brasil mas no mundo todo. Gostaria de exaltar o mérito de iniciativas como esta do Colégio Notarial ao promover este evento.

Enfoque-

Fui escalado para o papel de advogado do diabo. Mas em vez de defendê-lo, vou tentar desmascará-lo. Mesmo assim, receio que talvez possa frustrar as expectativas geradas pela promessa na divulgação deste evento, em relação ao que nos promete o futuro. Com um tema tão vasto para ser abordado em 45 minutos, vou me ater aos aspectos do risco que dizem respeito ao documento eletrônico. Vou falar de riscos nos mecanismos de autenticação eletrônica que possam eventualmente substituir assinaturas convencionais, e dos riscos nas leis que irão regular esta substituição.

História-

A virtualização que nos leva até o documento eletrônico precisa ser vista em perspectiva. Temos que enxergar a floresta para não nos perdemos entre as árvores. Portanto vou propor que comecemos com uma rápida olhada na história da informática. Vou pedir licença aos senhores para passar à leitura do texto da palestra, enquanto mostro as transparências. Vou abrir mão do contato cênico com a platéia, em troca de alguma objetividade.

Metáforas-

Na interpretação que apresento, a computação evoluiu como ciência em torno de paradigmas, que tem se renovado a cada década. Um paradigma é uma metáfora para organizar o entendimento. No caso da informática, os paradigmas se formam em torno do desafio central à tecnologia do momento. Precisamos de metáforas para entender fenômenos desconhecidos, mas as pessoas acompanham a evolução da informática com uma metáfora quase sempre defasada em relação àquela que o cientista precisa para promover sua evolução. Muitas pessoas ainda entendem a informática com a metáfora dos anos 70, outras com a dos anos 80, e isso dificulta a comunicação entre especialistas e leigos, o que esta palestra buscará redimir.

Redes fechadas e abertas-

Para entendermos os riscos e problemas afetos à virtualização dos processos sociais, é essencial compreendermos a mudança de paradigma ocorrida com o advento da internet. A internet não é uma rede de computadores, no sentido técnico do termo. É uma rede de redes autônomas, de hierarquia aberta. E é a primeira do gênero.

Uma rede fechada e autônoma reflete alguma hierarquia social do mundo da vida, que nela determina o propósito e a conduta de seus agentes, e que pode ser controlada por seu dono, com ajuda da infra-estrutura física de comunicação que a realiza.

A internet-

Já a internet não tem dono. Foi arquitetada assim, para não ter dono, nem hierarquia, nem controle central, e por isso não poderá tê-los. A internet é um padrão de comunicação entre redes autônomas, e um conjunto de mecanismos para que esta comunicação seja sempre tentada sempre que possível. O dono de uma rede autônoma a ela conectada, um provedor de acesso por exemplo, pode tentar controlar o tráfego que entra e sai de sua rede, mas nada além dela.

O verdadeiro bug do milênio-

Mecanismos de autenticação e controle que funcionam numa rede autônoma e fechada não terão o mesmo efeito na internet. A única forma de controle possível na internet é exercido nas pontas, pelos agentes que se comunicam a partir de suas redes autônomas.

O propósito e a natureza da conduta de interlocutores só pode ser efetivamente determinada nessas pontas. A internet é mais parecida com uma cooperativa de comunicação do que com uma rede mundial de computadores. Confundir a internet com uma rede fechada e autônoma é o verdadeiro bug do milênio, alimentado pela imagem simplificada que se faz quando a chamamos de "rede mundial de computadores". A internet é a revolução de Gutemberg acontecendo uma oitava acima na escala virtual.

Cibercultura-

Existem pelo mundo redes autônomas ligadas à internet que oferecem acesso discado sem identificação positiva, através de linhas telefônicas que podem ser grampeadas. Além disso, a identificação de origem para o tráfego pode ser forjada, como nas cartas pelo correio onde o endereço do remetente é falso.

O suspeito pelos ataques que bloquearam recentemente o acesso a várias grandes empresas na internet, só foi pego por causa de suas gabolices em salas de bate-papo visadas.

Qual seria então a questão central a desafiar a tecnologia na próxima década? Se seguirmos o encadeamento que imagino, podemos concluir que é a questão da confiança. Estamos iniciando um novo ciclo, onde a tecnologia precisa agora lidar com um conceito que ainda não sabe aquilatar.

O que é confiança?-

Vocês já tentaram definir o que é confiança? Se pensarem por um instante, verão como é difícil evitar a circularidade. Se definimos confiança em termos de crença, logo temos que definir crença, que é melhor explicada em termos de confiança. Não sabemos sequer se é mensurável. A melhor aproximação que conheço é a seguinte: confiança é o processo pelo qual se extrai significado da informação. Em ciência da linguagem, seria o mecanismo que controla a semiose. E por que estamos começando por aqui ? Porque, para entendermos os riscos na assinatura digital e sabermos avaliá-los, temos que percorrer o trajeto de onde eles surgem.

O que é risco?-

Avaliar risco pode ser algo completamente subjetivo, como faz o poeta Fernando Pessoa naquele verso "tudo vale a pena, quando a alma não é pequena". Ou algo mais objetivo, como fazem os atuários ao definir risco como Perda multiplicada por Probabilidade.

Agora que os documentos eletrônicos terão força de lei, podemos deixar de ser poéticos, quando as trapalhadas alheias nos divertem a menos que respinguem em nós, para definirmos melhor nossa posição com relação aos riscos que estamos dispostos ou preparados a aceitar ou assumir. E confiança é essencial para se avaliar riscos.

O fio azul-

Quando se diz que o peixe morre pela boca, fala-se de riscos. Antes das redes, a boca do nosso micro era o driver de disquete. O controle sobre quais programas iriam nele executar e manipular nossos arquivos começava ali. Os programas vinham em disquetes e com manuais, e as licenças de uso ainda não haviam detonado completamente o código de defesa do consumidor.

Com as redes, essa boca passou a incluir um cabo que o conecta a outros computadores, e as licenças ficaram kafkianas. Numa rede fechada, ainda é possível conhecer o tráfego que por ali passa, mas com a internet o fio azul passou a ter e a trazer outros e muitos significados.

O demônio de Descartes-

Considerando todos os sites que você já visitou e os botões que clicou, você saberia me dizer o que faz, e quais programas usam, cada DLL que está hoje no seu disco rígido? Estou supondo que você usa o sistema operacional preferido por 9 entre dez estrelas ao mencionar DLLs, mas a situação é idêntica com outros sistemas.

Nos anos 70, segurança da informação significava olhar para a máquina e seus programas, e imaginar que foram feitas por Murphey. Precisávamos de Backups, Nobreaks, Extintores de incêndio, etc. Murphey dizia "o que pode dar errado vai dar errado". Murphey era um otimista. Ele supunha que saberíamos dizer o que pode dar errado. Hoje, segurança na internet significa imaginar que por trás da tela pode estar, não só Murphey, mas também o demônio de Descartes.

O risco metafísico

Descartes queria promover um novo método, para inaugurar a ciência moderna. Para isso ele precisava separar conhecimento de crença, mas não queria correr o risco de ir para a fogueira promovida pelo monopólio de ambos na época. Especulou então que o mundo talvez não fosse exatamente como o percebemos, se um demônio muito esperto estivesse manipulando nossa percepção, com esse intuito.

E se estiver, não temos como sabê-lo. Hoje, tudo que entra pelo fio azul pode em princípio nos trazer malefício, e tudo o que sai pode ser usado contra nós. Para avaliarmos riscos nessa nuvem promíscua de elétrons, temos que conhecer as intenções e as falhas dos programas que rodam em nossa máquina. Delegar o controle desta tarefa a mais um programa é empacar em paradigmas ultrapassados.

Controle da execução

O paradigma imaginado aqui para a cibercultura é muito parecido com aquele que Descartes usou para dar início à ciência moderna. Descartes argumentou que não devemos confiar de graça, nem nos nossos cinco sentidos. Com o fio azul estamos numa situação parecida. Precisamos distinguir, nas cadeias de bits, o que pode ser programa, para termos algum controle sobre sua execução. E quando executam, precisamos saber o que acontece por trás da interface, por desígnio ou por interpretações inesperadas, enquanto comunicam entre si.

Para isso antivírus e firewalls ajudam, mas eles também são programas. Na cibercultura a última palavra deve ser nossa, se quisermos administrar nossos riscos. O vírus ILoveYou se espalhou daquele jeito porque o Outlook Express decide por todos quando os VBscripts que chegam anexados a mensagens serão interpretados.

Ativação de programas

O que uma cadeia de bits pode ser e fazer é uma questão Hamletiana. Não é só a cadeia em si que determina, mas o contexto. É a sintaxe da cadeia e o seu acesso por um programa, disposto e capaz de interpretá-la. Quando o interpretador de um programa está embutido no processador, ele é chamado executável. Mas esses não são todos os programas, como podem achar os que ainda estão atrasados em pelo menos três paradigmas.

Há um carnaval de programas interpretáveis, na forma de batches, scripts, applets, macros e o escambau, que executam indiretamente, por meio de outros programas, dotados dos mais variados poderes. Vocês sabiam, por exemplo, que a linguagem postscript, usada para descrever graficamente páginas para impressoras e telas para monitores, através de scripts, contém comandos para gravar e apagar arquivos?

Formato de programas

Para sabermos o que poderá fazer uma cadeia de bits, precisamos reconhecer sua sintaxe e saber como e quando seus interpretadores são ativados. Não é muito: é como saber que um texto está em alemão, sem precisar entender alemão. Precisamos também de uma cultura mínima sobre a lógica dos programas que recebemos em nossa máquina. É como saber quando um alemão está esbravejando ou se divertindo.

A lógica do programa determina suas intenções e falhas, e a diferença entre uma navegação curiosa e um embuste depende dela. Quando recebemos alguém em nossa casa, o fazemos por algum motivo, com alguma indicação sobre as intenções e antecedentes de conduta do visitante. Nossa ingenuidade nessa área se esvaiu com o adensamento urbano. Mas então, por que continuarmos ingênuos no mundo virtual?

Lógica de programas

As pistas para a lógica de um programa estão em sua interface, que inclui os menus, quando o programa é honesto e bem feito. Mas como saber se é?  Quando o programa está em formato executável, sua lógica está praticamente opaca ao homem. Mas em formato de código fonte, quem entende de programação tem acesso a ela, como também algum controle sobre o que incluir ou modificar na versão que podemos compilar para o formato da nossa máquina. Quanto mais simples for essa lógica, maior a chance de que falhas de qualquer natureza possam ser detectadas em boa hora.

Estas possibilidades são a idéia e o motivo do software livre. Livre quer dizer com liberdade. A gratuidade é apenas uma das liberdades. Este acesso é negado no software proprietário porque, segundo disse o prof. Silvio Meira em sua coluna do Jornal da Tarde de 9 de março deste ano, a segurança do software está no bloqueio a este acesso. Ele queria dizer a segurança do negócio de venda de licença de uso de software, e certamente não estava pensando na segurança do usuário de software, o assunto que nos interessa aqui hoje.

Acreditar que quanto mais dinheiro ganhar o dono do programa, melhor será a lógica do programa para o usuário, é ingenuidade plantada pelo demônio de Descartes, pois essa crença supõe um mercado de software perfeito.

Intenções e falhas

No computador interagem programas. Todo software interage, por exemplo, com seu sistema operacional. Um programa bem intencionado, mas mal feito, pode permitir que um programa mal intencionado explore suas falhas para atingir seus objetivos sorrateiros.

Temos aqui uma das possíveis classificações e nomenclatura dessas falhas, objetivos vis, e riscos decorrentes. Podemos ver que há um encadeamento de riscos, onde distintos níveis de falhas e intenções mal postas podem interagir em sinergia. Um bloqueio de serviços que não deixa rastro, por exemplo, se compõe de etapas onde os tipos anteriores de ataque ocorrem.

Intenções e riscos

Nesta palestra devemos nos ater à principal ameaça ao documento eletrônico, que é a fraude. Mas para ilustrar como os riscos surgem na delicada dança entre imperfeições e intenções, boas e más, vamos examinar brevemente os ataques de bloqueio de serviço.

A internet foi arquitetada para permitir a comunicação global por qualquer trajeto possível. Para o contexto que estava em foco, a guerra fria, a intenção era boa. Buscava-se a confiança na possibilidade da comunicação. Mas o sucesso neste objetivo permite hoje a contaminação de máquinas mal administradas no entorno da vítima, as zumbis, com programas embusteiros que irão disparar rajadas de tráfego sincronizado na sua direção, quando acionados em cadeia, congestionando seu processamento de conexões.  No contexto atual, o do comércio eletrônico, isso constitui séria vulnerabilidade, pois esses ataques são praticamente inevitáveis.

Onde a comunicação é possível, também será o barulho. A evolução do contexto mudou o valor da intenção, pois agora queremos confiar na qualidade da comunicação, diante da sua possibilidade.

Administração de riscos

A segurança é o processo de se administrar riscos. Não é o de se eliminar, terceirizar, ocultar, ou coisa que o valha, porque qualquer ação neste sentido vai gerar outros riscos. Como a política, a segurança é uma arte de escolhas. Precisamos perceber que existem várias seguranças relativas à informática.

Há a segurança do software, aquela de que fala o prof. Meira;

Há a segurança através do software, que eu chamo de segurança computacional,

E há a segurança contra o software, que alguns desconversam e outros despistam.

Essas seguranças podem ter intenções antagônicas e imperfeições que irão se combinar em sinergia para produzir novos riscos ao usuário, onde Murphey e o demônio de Decartes estarão a postos para materializa-los em incidentes.  Enquanto examinamos a segurança computacional, para entendermos como funciona, e como não funciona a assinatura digital, devemos estar atentos ao que esses dois podem estar tramando por trás da tela do computador.

Identificação

O primeiro problema a ser resolvido pela segurança computacional é o da identificação. Estamos de novo com Descartes, que não podia confiar nos seus próprios sentidos. Afinal, os fios conduzem apenas bits, que não tem fisionomia, nem timbre, nem cheiro, nem impressão digital.

Quando encadeados, os bits passam a carregar significados, que programas e circuitos reconhecem, segundo algum acordo prévio. Mas onde há acordo pode haver trapaça. Portanto, se esses bits intermediam interações sociais regidas por leis, a identificação do responsável pela sua produção ou manipulação é essencial para a eficácia dessas leis.

O canal de comunicação

Programas não são dotados de vontade própria, e quando interagem em cadeia, no seu início deve haver portanto um ser humano tomando decisões, que precisa ser identificado se o contexto exige. O primeiro mecanismo de segurança computacional é copiado do mundo da vida e arremeda a guarda medieval, que no portão do castelo pede a quem deseja entrar para que sussurre a senha.

O sussurro de uma senha pessoal pelo fio do teclado identifica o canal de comunicação entre o titular da senha, e os programas e recursos a que este tem direito de acesso, no sistema onde sua senha está cadastrada. Alguns querem só os direitos, e insistem de propósito em ficar com paradigmas passados. Boicotam o controle de acesso, permitindo o compartilhamento de senhas para evitar responsabilidades e expandir direitos, justificando a esperteza em nome da desburocratização e da agilidade.

Numa rede fechada esse boicote pode ser reprimido, e também a intimidade do fio do teclado pode ser estendida com a ajuda de protocolos como o Kerberos. Mas numa rede aberta esses controles perdem totalmente a eficácia, e a proteção ao sussurro torna-se mais complicada.

O alcance da mensagem

Nas redes abertas, a promiscuidade de ambientes e canais é inevitável. Sussurros podem ser ouvidos e segredos não devem trafegar ou serem armazenados às claras, sob o risco de deixarem de sê-lo. Precisamos então ocultar o conteúdo de mensagens sensíveis, e para isso podemos codificar a mensagem, mas esta codificação precisa ser revertida para que haja comunicação.

Para identificarmos quem recebe o que codificamos através de uma rede aberta, precisamos então de duas coisas: primeiro, saber que a decodificação só é viável por meio de algum segredo; e segundo, saber quem possui esse segredo. Uma função codificadora que permite o primeiro é uma cifra criptográfica. Um processo que permite o segundo, é um protocolo criptográfico.

A cifra mistura duas cadeias de bits: mensagem e chave. Numa rede fechada, a chave com que a cifra encripta pode ser a mesma com que decripta, compartilhada anteriormente entre os interlocutores. Tais cifras são ditas simétricas, pois o segredo da codificação está em uma única chave, usada nas duas pontas. Mas numa rede aberta, temos um problema de confiança. O de precisarmos sussurrar em público, no escuro. Temos que fazer chegar uma chave ao interlocutor pretendido, e saber que o segredo só estará com quem de direito. Este é o chamado problema da distribuição de chaves.

Sua solução depende de cifras assimétricas, onde as duas operações possam ser feitas por chaves distintas, e onde uma delas possa trafegar às claras, sem com isso comprometer o segredo da outra. Na literatura, quando a cifra é assimétrica usa-se K maiúsculo para a chave mantida em privado, e k minúsculo para o seu par, de uso público. (APPONTAR PARA A TELA!)

O valor da mensagem

Suponha agora que Banco onde você tem conta saiba distribuir chaves. O computador no Banco sabe que está falando com o terminal de saque, e vice versa. O do banco está usando a chave privada dele, e o do terminal está usando o par desta chave. O que o terminal encripta, só o banco sabe decriptar. Aí eu instalo um grampo no fio azul do terminal e começo a gravar tudo.

Você então chega no terminal, identifica sua transação com o banco digitando sua senha, e faz seu saque. Eu não terei chances de decodificar sua senha, mesmo se tiver uma cópia da chave que o terminal está usando. Mas posso tentar o ataque da meia-noite. De madrugada, enxerto meu laptop no conector do fio azul, entre o terminal e o banco, e reproduzo as transmissões que ocorreram durante o seu saque, na ordem em que as gravei, fingindo para o banco que sou o terminal e vice-versa.

Se o banco e o terminal não puderem identificar que as mensagens envias por mim são reproduções de mensagens anteriores, o terminal cuspirá as notas e o banco lhe debitará mais um saque. Eu restabeleço a conexão normal do fio azul, fico com as notas e você com o prejuízo. Pois se disser ao banco que não fez o saque, não haverá pistas da fraude, nem poderá o banco saber se você está ou não mentindo. Portanto a cifragem não basta, e o documento eletrônico que produz o saque precisa ser autenticado.

A circulação do valor

O pior estrago que o demônio de Descartes pode causar aqui, é fazer-nos acreditar que a mídia magnética está para o documento eletrônico, assim como o papel está para o documento tradicional. Não está. Nem uma nuvem de elétrons ou coisa física que o valha estaria. Se estivesse, cópias e recortes digitais seriam distinguíveis do original. E não são. O suporte material dos documentos eletrônicos é um conjunto binário, e não algo físico. Por isso a autenticação digital precisa criar um autenticador binário único para cada documento, que remeta à sua origem no mundo da vida através de verificação.

Se a autenticação substituir a assinatura de punho na espécie jurídica do contrato, e o princípio da analogia for mantido, o processo de verificação tem que ser aberto a terceiros. A verificação aberta poderá ser feita por meio da chave pública do titular da assinatura digital, como veremos. Mas, para a eficácia do processo, o nome do dono dessa chave pública precisa ser autêntico, já que o valor de um documento depende da confiança com que a verificação de assinatura identifica pessoas.

Com tudo em binário, precisamos de uma outra chave para verificar a autenticidade da chave que vai verificar a assinatura, que por sua vez também precisa ser autêntica. Temos aqui uma necessidade recursiva de autenticação com verificação aberta. Este processo recursivo é chamado de certificação, e é hoje padronizado pelas chamadas PKIs.

Autenticadores

Existem três tipos de autenticação digital, que servem para fins distintos. Temos que ter cuidado com o demônio de Descartes, para não confundirmos as finalidades.

O primeiro tipo e o mais simples, gera um autenticador da mensagem sem envolver nenhum segredo. Serve para detectar a alteração fortuita do conteúdo da mensagem, durante seu transporte ou armazenamento. Exemplos são os CRCs ou dígitos de paridade, como o sufixo do número de CPF.

O segundo tipo calcula o autenticador misturando a mensagem e uma chave através de alguma função criptográfica, e serve para detectar a adulteração intencional deste conteúdo. A criptografia serve aqui para vincular a emissão da mensagem à posse da chave. Se a encriptação for irreversível e de tamanho fixo, a função é chamada hash criptográfico e o autenticador é chamado MAC. Exemplo de MACs são os autenticadores de transações bancárias eletrônicas, que podemos ver impressos nos recibos.

.

Verificação de autenticadores

A autenticação digital é um protocolo criptográfico. Envolve distintos agentes com seus pontos de vista e intenções. Um deles está interessado em permitir a identificação da origem ou da integridade do que transmite. Outro está interessado em obter esta identificação.

Em situações onde uma arbitragem pode resolver eventuais disputas e conflitos por meio de outros mecanismos, pode-se usar um desses tipos simples de autenticação. Neles, a etapa de verificação consiste numa repetição do cálculo do autenticador, cujo resultado é conferido com o recebido. Se coincidirem, conclui-se que a mensagem se manteve íntegra no percurso.

No segundo tipo a verificação também vincula a origem da mensagem à  posse do segredo. A verificação é restrita a quem compartilha este segredo, onde a honestidade e a lisura do verificador são pressupostos, pois a chave que verifica é o próprio segredo que autentica, como ocorre no uso da senha.

Portanto, em situações onde quem autentica pode ser prejudicado por forjas perfeitas possibilitadas ao verificador pelo protocolo, esses dois tipos de autenticação não servem. O terceiro tipo de autenticação terá  que permitir a verificação aberta, para arbitragens, enquanto identifica sua origem. É a assinatura digital.

Padronizações

Vamos ver como é possível a verificação aberta. Programas que implementam autenticação digital precisam seguir padrões, para poderem se entender. Além disso, são escritos para serem entendidos por processadores, e não podemos supor que estarão sempre em mãos bem intencionadas numa rede aberta. Quem programa sabe decifrar a linguagem dos processadores e extrair segredos escondidos dentro de programas. Escondê-los assim seria como sussurrar em público no escuro. Portanto, o segredo para a autenticação deve ser separado do programa que a executa, e colocado numa chave binária.

Mas para termos garantias mínimas, precisamos controlar o custo da decodificação desta chave, a partir dos autenticadores que gera. Teremos esse controle se esse custo for exponencial em relação ao número de bits do segredo. Neste caso dizemos que a função criptográfica é robusta, pois o tamanho adequado do segredo torna proibitiva a decodificação por tentativa e erro. Funções de domínio público, de hash e de cifra, de robustez amplamente testadas, são hoje lugar comum nos softwares de segurança computacional. Por isso h e f aparecem em minúsculo na transparência.

Cifras assimétricas para verificação aberta

Se o protocolo busca evitar que a verificação permita forjas, terá que evitar duas coisas. Em primeiro lugar, o verificador não poderá simplesmente repetir o cálculo do autenticador, como acontece no MAC, pois a chave de verificação serviria também para forja. A verificação terá portanto que reverter esse cálculo, o que obriga o protocolo a usar uma função reversível, uma cifra. Em segundo, a chave de verificação deve ser diferente da chave de autenticação, pelo mesmo motivo.

Mas para mantermos as garantias mínimas, não basta que as chaves de autenticação e verificação sejam distintas. Elas precisam exibir uma propriedade especial. A de que o custo para se deduzir uma a partir da outra, deva também ser exponencial em relação ao seu tamanho, mesmo quando a função de cifra for conhecida. A cifra precisa portanto ser assimétrica.

Tais cifras são raríssimas. Existem hoje apenas 4 algoritmos eficazes para cifras assimétricas, sendo dois deles na verdade variantes. O mais simples e versátil, o RSA, foi o primeiro a ser descoberto, em 1978, e terá sua patente nos EUA expirada amanhã, 20/09/2000.

Propriedades

A assinatura digital pode mesmo substituir a convencional? A resposta honesta é: Quase.

Falta pouco para que a resposta seja sim. Mas o que falta, está escondido em uma caixa de pandora preparada pelo demônio de Descartes para os juristas e filósofos do Direito do nosso tempo. Vamos comparar a funcionalidade das duas e ver o que acontece.

Ambas identificam a autoria do documento à qual estão apostas, como também a integridade de seu conteúdo, desde o ato de assinatura. Queremos que sejam úteis para vincular vontade ou anuência do autor ao conteúdo do documento, se este for um contrato. Para isso, quando há garantias sobre a titularidade de uma assinatura de punho, isto é, uma certeza razoável de quem seja o autor de um registro de referência, tem-se que o reuso, forja, ou repúdio em má fé, deva estar contra o balanço de probabilidades para o código civil, ou fora da dúvida razoável para o código penal.

Semelhanças

Sob as mesmas hipóteses, ou seja, de que a titularidade de um par de chaves usadas no protocolo já esteja assegurada, podemos ver como a assinatura digital consegue alcançar as duas primeiras exigências.

Se algum bit de um documento legítimo for alterado, ou se a assinatura de um documento legítimo for recortada e colada em um documento forjado, ou se a chave de verificação for usada como chave de assinatura, a probabilidade de que a verificação da assinatura confira, pode ser ajustada para tão próxima de nula como queiram as partes no protocolo, através da escolha do tamanho das chaves utilizadas.

Mas quanto ao repúdio, entra em cena o detalhe de que o suporte material do documento eletrônico e das chaves não é físico, e a volatilidade decorrente rompe o equilíbrio jurídico que de outra forma já havia sido buscado.

 Não-repúdio

O não-repúdio é uma salvaguarda jurídica de um contratante contra possível má-fé de outro contratante. Num contrato solene assinado em papel, testemunhas podem amparar o não-repúdio. Em outros contratos, registros de fé pública que titulem a assinatura bastam para dar suporte à perícia grafotécnica diante de repúdio, que avaliará se ele é ou não de má-fé, quando a coação já estiver descartada.

Um juiz dificilmente aceitaria o argumento de que o cerebelo do titular foi copiado para que sua assinatura fosse forjada de maneira indefectível. Mas no caso digital, a chave privada pode ser copiada sem que o titular perceba, e forjas indefectíveis de sua assinatura produzidas com a cópia. Por outro lado o titular poderá também alegar, em má fé, que sua chave privada foi comprometida, onde a perícia técnica sobre a ocorrência de vazamento pode ser perfeitamente contaminada ou neutralizada, antes ou durante a perícia.

A importância do não-repúdio

A crença em duas premissas de autenticação por assinatura de punho estão na base da jurisprudência do Direito, no que se refere à espécie jurídica do contrato. O contrato é essencial ao direito comercial, e daí a importância do equilíbrio jurídico nas disposições sobre imputabilidade da assinatura, e consequentemente das obrigações e direitos referentes à repudiação.

Tomando-se o princípio jurídico da analogia para guiar a jurisprudência em novos cenários, devemos examinar as condições de crença em premissas análogas, no contexto do protocolo de assinatura digital. As duas premissas da assinatura de punho se projetam, através da abstração unificadora de conceitos funcionais, em premissas análogas para a criptografia assimétrica, mas sem o amparo da sua crença.

 Analogia de premissas

A premissa de que o padrão de autoria de uma assinatura é reconhecível e distinguível, se projeta como posse única da chave privada. Esta premissa está fortemente ligada ao não-repúdio.

A premissa de que haverá registro com titulação de fé pública acessível para verificação, se projeta como a premissa de que o dono de uma chave pública é identificável. Esta premissa tem sua crença amparada em protocolos de certificação, já padronizados e implementados, como veremos adiante.

A primeira premissa não tem recebido a devida atenção por parte de juristas e legisladores do virtual, como veremos no final da palestra. Nos vários eventos sobre informática e direito de que já participei, nunca vi nenhum outro palestrante abordar questões relativas à guarda da chave privada.

As dificuldades na aplicação do princípio da analogia e as complexidades técnicas envolvidas podem justificar esta desatenção, mas não justificam a pressa com que se quer ordenar a prática do protocolo. Esta pressa é exemplificada no decreto presidencial Nº 3.585, de 5/9/2000, determinando que a casa civil da Presidência, a partir de 2001, só deverá aceitar documentos em forma eletrônica, digitalmente assinados.

Protocolos de certificação

Um conjunto de protocolos destinados a dar suporte ao uso e à confiança na titularidade de chaves assimétricas é chamado de PKI, ou infra-estrutura de chave pública. Uma PKI precisa definir padrões para implementação de programas que interajam numa rede aberta com estas finalidades.

No cerne de uma PKI encontra-se um modelo de documento eletrônico autenticado, para transporte de uma chave pública junto ao nome do seu titular, além de informações necessárias para sua verificação e uso. Um documento nesse modelo é chamado abreviadamente de certificado digital.

A primeira implementação de PKI na internet, lançada pela Netscape e Verisign em 1994, adotou os padrões propostos pela empresa detentora da patente nos EUA do algoritmo RSA. Posteriormente a União Internacional de Telecomunicações encampou e ampliou esse primeiro modelo, hoje conhecido como X.509

X.509

O modelo de certificado X.509 possibilita a implementação de protocolos que autenticam e verificam chaves públicas em cadeia. Neles, um documento eletrônico transportando uma chave pública titulada deve ter sua integridade verificada por outra chave pública, cujo titular o certificado mesmo nomeia, e cuja integridade deve também ser verificada por outra chave, e assim por diante.

Essas cadeias precisam terminar em um "ponto cego", isto é, num certificado auto-assinado, cujo significado é apenas uma auto-proclamação de autenticidade. O protocolo SSL, implementado inicialmente pela Netscape em seu software navegador e depois também pela Microsoft, aborda a vulnerabilidade desse ponto cego da seguinte forma.

A Verisign opera como certificadora, assinando certificados de chave pública para quem quiser tê-los e distribui-los. O navegador é distribuído contendo um arquivo-chaveiro para o armazenamento de certificados verificados. Este arquivo contem originalmente o certificado auto-assinado da Verisign, e o de outras certificadoras com quem o fabricante do navegador tenha parceria.

Sempre que o navegador requisitar e receber na internet uma chave pública para estabelecer uma conexão segura, inicia-se a verificação do certificado recebido, usando-se os certificados que já estão no chaveiro, até que se chegue numa falha ou numa auto-verificação.

A falha ocorre se, na cadeia, o prazo de um certificado estiver vencido, se uma assinatura não conferir, ou se a chave para verificá-lo não for encontrada no chaveiro. Se a cadeia terminar sem falha, o certificado recebido é armazenado, sua chave é testada com seu titular, para ser usada na conexão. Só aí a figura do cadeado se fecha na tela do navegador. Neste procedimento, se um novo certificado requerido pelo navegador estiver auto-assinado, será recusado, pois a chave para verificá-lo não está no chaveiro, já que ele próprio a carrega.

Autoridades certificadoras

As auto-denominadas autoridades certificadoras, as CAs, tomam este nome de um modelo de negócio, e não de uma concessão estatal para prestação de serviços públicos. A autoridade neste caso se refere ao privilégio da distribuição de seu certificado auto-assinado, no núcleo do chaveiro de um software para navegação, que tem grande apelo: o de permitir ao usuário participar de uma infra-estrutura de chaves públicas na internet.

Este apelo é acentuado por um detalhe importante. As PKIs permitem, além da distribuição autenticada de chaves para verificação de assinaturas, a solução do problema da distribuição de chaves para cifragem numa rede aberta: uma chave pública autenticada pode ser usada para estabelecer um canal sigiloso com seu titular, já que apenas o par desta chave poderá reverter a sua cifragem.

As CAs oferecem algum suporte ao direito de repúdio dos seus clientes, mantendo listas de revogação de certificados e limitando seu prazo de validade, o que também contribui para seu fluxo de caixa.

Falsa titularidade

Ouve-se maravilhas do certificado digital. Dizem que garantem ser o dono da chave quem ele diz ser. Isto soa bem, mas é apenas figura de retórica espalhada pelo marketing de PKIs, e não pode ser levado a sério. Vocês levam a sério as propagandas de cigarro e bebida? Um certificado autenticado garante apenas que os bits da chave e do nome de seu dono, nele contidos, são os mesmos apresentados à CA.

A identificação do titular da chave, a partir do nome no certificado, é responsabilidade de quem for usá-lo. Numa rede fechada os riscos nesta identificação são contornáveis, mas numa rede aberta não. Como pode um mero nome como "Encol", "Ikal", ou o daquela companhia que comprou o apartamento do juiz lalau, garantir ser o que diz ser, ontem, hoje, amanhã? Vocês acham que uma lei mais severa sobre marcas e patentes irá diminuir esses riscos, ou promover abusos econômicos e censura?

No primeiro passo dos protocolos de certificação surge o risco da falsidade ideológica. As CAs se eximem da responsabilidade legal pela verificação da identidade civil do titular dos certificados que assina, seja ele pessoa física ou jurídica, como pode ser lido nas declarações que divulgam, a respeito das obrigações e direitos das partes no serviço que vendem. A primeira CA do Brasil, a Certisign, delega esta responsabilidade aos cartórios de notas e ofícios, e o decreto presidencial supracitado assim o exige.

Ambiente de assinatura hostil

Suponha que eu precise gerar e usar um par de chaves assimétricas para poder fazer negócios com o estado, ou com algum cartel que forneça bens ou serviços. Vou para isso precisar armazenar minha chave privada em meu computador, submeter minha chave pública para certificação, e operar um software que executa algum protocolo de assinatura e verificação de certificados e documentos, conectado à internet. Talvez o navegador que já uso.

Pode então ocorrer que eu seja cobrado por uma fatura, ou intimado a honrar um contrato, do qual não tenho nenhuma lembrança ou registro em memória, nem na minha e nem na da máquina. Como se pode então saber se houve ou não "roubo de chave privada", levado a cabo por algum software embusteiro que contaminou minha máquina, como o Back Orifice por exemplo? Isto é complicado, porque os embustes podem apagar seus rastros, e o "rastro de roubo" pode ser perfeitamente forjado.

E nem roubo seria, pois não fui privado da posse de nada. Suponha agora que evidências de embuste, mas não da autoria, sejam encontrados na rede e admitidos como prova, juntamente com provas da minha cautela. Quem poderia ser responsabilizado por danos? Certamente os produtores dos softwares que animam minha máquina não poderiam, segundo os termos da licença de uso que aceitei ao clicar para instalá-los. Mas tais licenças de uso tem mesmo valor legal inconteste?

No regime do UCITA, terão. E se as evidências levantarem suspeitas de que o próprio software do sistema é quem deliberadamente promove o embuste? Isso ocorreu na França, com casos de espionagem industrial, que envolveram inclusive o SIVAM. O UCITA tornará crime a divulgação destas evidências.

Ambiente de verificação hostil

Pode ocorrer também um outro tipo de incidente. Suponha que meu sistema pague automaticamente uma fatura recebida. Passam-se prazos, e eu não recebo a mercadoria. Ao procurar o titular da assinatura do recibo, digamos que seja a "Ikal", ela repudia a assinatura no recibo eletrônico, alegando que sua verdadeira chave pública, assinada pela Verisign, não confirma aquele recibo.

Investigo e descubro que a chave que verificou no meu sistema a suposta assinatura da Ikal, está num certificado auto-assinado de uma CA que ninguém conhece, e que a conta bancária onde foi paga a fatura é uma conta CC-5 de uma firma com sede nas Bahamas, recentemente fechada.

Como é que um certificado de uma CA fajuta foi parar no meu chaveiro? Simples. Chaveiros feitos de bits normalmente não vem com trancas. E se tiver sido um cavalo de tróia da própria Ikal quem plantou ele ali, já que o meu sistema e o da Ikal se comunicam? Novamente estou diante do problema da confiabilidade dos ambientes computacionais, onde hoje se implementam os mecanismos das PKIs.

Vazamento e revogação

Um protocolo de certificação faz o possível para administrar os novos riscos que surgem com a assinatura eletrônica, mas só pode dar amparo parcial à primeira premissa. Isto é pouco, e daí o argumento pela necessidade de novas leis para o comércio eletrônico. Quem se engajar numa PKI, por opção ou necessidade, deve aquilatar a extensão com que estes riscos poderão ser administrados, e o que estará sendo de fato promovido pelas leis atualmente propostas e supostamente discutidas.

Como o titular de uma assinatura convencional tem o direito de repudiar pretensas contrafações, as PKIs de hoje determinam que as CAs mantenham e disponibilizem listagens dos certificados por ela assinados, cujas chaves foram revogadas a pedido do próprio titular para amparar este direito com as assinaturas digitais.

Mas a revogação de um certificado de chave pública não é tão simples como a de um certificado em papel. No papel, a autoridade competente intima o titular a devolve-lo. Já os certificados digitais funcionam pela distribuição de cópias, e quem tiver uma, deve ficar sabendo da sua anulação. O prazo de validade atenua o problema da revogação, tornando-a automática quando o certificado não é renovado, mas este não é o maior problema, apesar de não sair barato.

O maior problema é o seguinte: a revogação pressupõe a suspeita do titular, de que sua chave privada foi vazada. Mas essa suspeita normalmente ocorre pela constatação de uma forja, que será perfeita se anterior à revogação. Caso o titular retenha o direito de repudiar assinaturas em documentos com datas anteriores à da revogação da sua chave, estará apto a refutar perfeitamente, em má-fé, contratos que assina.

Já a negação deste direito implica em responsabilidade pelo controle do ambiente computacional, onde sua assinatura é gerada. Mas este controle estará além das aptidões médias de um internauta, ou mesmo em conflito com sua licença de uso para os softwares que exercem esse controle. O software proprietário é um bem de terceiro, onde o bem não pode ser  inspecionado e o terceiro não pode ser responsabilizado.

Direitos de repúdio

Na lacuna virtual entre revogação e repúdio, o demônio de Descartes insere um dilema, onde temos que optar entre legalizar a fraude ou impor a negligência, mantidas as jurisprudências e tendências atuais sobre comércio e uso de software. Este dilema tem levado entidades interessadas na virtualização dos processos sociais a propor soluções jurídicas no mínimo curiosas.

Soluções ora Gordianas, ora Orwellianas, onde no impasse de um problema, muda-se o problema. Algumas propostas de lei ignoram solenemente os riscos aqui examinados e consideram que, para a autenticação eletrônica, não cabe o repúdio. Outras misturam alhos com bugalhos, destapando um santo para cobrir outro, pois confundem o risco de fraude para o assinante com o risco de fraude para o verificador, propondo a liberdade das partes em buscarem soluções mágicas no compartilhamento de segredo para autenticação. Isso numa rede aberta. É o verdadeiro bug do milênio.

Modelos de lei

Há três modelos de lei para regulamentação de autenticadores eletrônicos, todos trazendo graves riscos.

Há o modelo prescritivo, que legisla diretamente sobre o funcionamento de PKIs;

Há o modelo de critérios, que estabelece parâmetros de funcionalidade e confiabilidade, a serem alcançados por um mecanismo aceite como substituto da assinatura de punho;

E há o modelo de outorga, que não estabelece métodos nem critérios, mas delega às partes o poder de decidir que mecanismos serão aceitos.

A primeira dessas leis sancionada no mundo, a do estado de Utah, segue o modelo prescritivo e impõe responsabilidade total pela guarda da chave privada ao seu titular, com os riscos já apontados.

A da Califórnia segue o modelo de critérios, com o risco de vestir mecanismos falhos com um véu de confiança infundada, já que não sabemos ainda como medir confiança em protocolos.

A lei federal assinada em 30 de junho pelo presidente americano, a e-Sign, sobrepõe-se às leis estaduais e segue o modelo da outorga, com o risco de abusos por agentes cujo poder econômico lhes permitam impor mecanismos favoráveis no balanço de riscos e responsabilidades, e onde o equilíbrio desse balanço deveria ser o objetivo da lei.

Qualquer desses riscos contribuirá para que as quadrilhas especializadas em crimes eletrônicos ampliem suas especializações e áreas de atuação além da indústria financeira. O prejuízo dessa indústria com este tipo de crime é hoje estimada pelos especialistas em segurança computacional em cerca de 70bi ao ano, pagos nas taxas de serviços financeiros. Esqueçam os hackers.

Em todos esses exemplos, podemos observar uma enorme pressão para que o ônus da prova de forja e não-negligência seja transferido para o acusado, revertendo uma tradição do Direito. Mas onde quer que a lei sobre o virtual coloque este ônus, ela será desequilibrada e falha se não exigir a confiabilidade dos ambientes computacionais onde operam os mecanismos autenticatórios. E o modelo de negócio de software atualmente predominante no mundo não beneficia, não privilegia, não promove esta meta. Pelo contrário.

O passado e o futuro

Estamos diante da questão crucial proposta como paradigma para a próxima década, na necessidade de se proteger o processo computacional autenticatório. O caminho natural será o de se confinar este processo em algum hardware dedicado a isto. Os cartões inteligentes estão se aproximando do limiar de performance necessária para este confinamento, e a dança dos riscos continua por aí. Não há tempo para falar aqui desses riscos, mas se alguém se interessar, o artigo de minha autoria que a organização do evento está distribuindo contém comentários a respeito.

Deixando agora o pessimismo de lado, gostaria que vocês me dissessem a origem e o significado desta citação.

Pedro A. D. Rezende
Setembro de 2000