Assinatura digital

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Esquema de funcionamento da assinatura digital (em castelhano).

Este artigo trata da assinatura digital utilizando a tecnologia PKI (Public Key Infrastructure), que é apenas uma das técnicas disponíveis para gerar documentos digitais com validade legal, outros métodos de assinatura digital estão em uso e a tecnologia continua evoluindo e apresentando alternativas à PKI.

Em criptografia, a assinatura ou firma digital é um método de autenticação de informação digital tipicamente tratada como análoga à assinatura física em papel. Embora existam analogias, existem diferenças importantes. O termo assinatura eletrônica, por vezes confundido, tem um significado diferente: refere-se a qualquer mecanismo, não necessariamente criptográfico, para identificar o remetente de uma mensagem electrônica. A legislação pode validar tais assinaturas eletrônicas como endereços Telex e cabo, bem como a transmissão por fax de assinaturas manuscritas em papel.

A utilização da assinatura ou firma digital providencia a prova inegável de que uma mensagem veio do emissor. Para verificar este requisito, uma assinatura digital deve ter as seguintes propriedades:

  • autenticidade - o receptor deve poder confirmar que a assinatura foi feita pelo emissor;
  • integridade - qualquer alteração da mensagem faz com que a assinatura não corresponda mais ao documento;
  • irretratabilidade - o emissor não pode negar a autenticidade da mensagem.

Essas características fazem a assinatura digital ser fundamentalmente diferente da assinatura manuscrita.

História[editar | editar código-fonte]

Em 1976, Whitfield Diffie e Martin Hellman descreveram primeiramente a noção de um esquema de assinatura digital, embora eles apenas conjecturaram que tais esquemas existissem. Apenas mais tarde, Ronald Rivest, Adi Shamir, e Len Adleman inventaram o algoritmo RSA que poderia ser usado para assinaturas digitais primitivas (note que isso apenas serve como uma prova do conceito, e as assinaturas RSA puras não são seguras). O primeiro pacote de software amplamente comercializado a oferecer a assinatura digital foi o Lotus Notes 1.0, em 1989, que usava o algoritmo RSA.

Como notado ainda cedo, esse esquema básico não é muito seguro. Para prevenir ataques pode-se primeiro aplicar uma função de criptografia hash para a mensagem 'm' e então aplicar o algoritmo RSA ao resultado. Outros esquemas de assinatura digital foram logo desenvolvidos depois do RSA, o mais antigo sendo as assinaturas de Lamport, de Merkle (também conhecidas como árvores de Hash) e as de Rabin.

Em 1984, Shafi Goldwasser, Silvio Micali, e Ronald Rivest tornaram-se os primeiros a rigorosamente definir os requerimentos de segurança de esquemas de assinatura digital. Eles descreveram uma hierarquia de modelos de ataque para esquemas de assinatura, e também apresentaram o esquema de assinatura GMR, o primeiro que podia se prevenir até mesmo de uma forja existencial contra um ataque de mensagem escolhida.

Como funciona?[editar | editar código-fonte]

Existem diversos métodos para assinar digitalmente documentos, e esses métodos estão em constante evolução. Porém de maneira resumida uma assinatura típica envolve dois processos criptográficos: o hash (resumo) e a encriptação deste hash.

Em um primeiro momento é gerado um resumo criptográfico da mensagem através de algoritmos complexos (Exemplos: MD5, SHA-1, SHA-256) que reduzem qualquer mensagem sempre a um resumo de mesmo tamanho. A este resumo criptográfico se dá o nome de hash. Uma função de hash deve apresentar necessariamente as seguintes características:

  • Deve ser impossível encontrar a mensagem original a partir do hash da mensagem.
  • O hash deve parecer aleatório, mesmo que o algoritmo seja conhecido. Uma função de hash é dita forte se a mudança de um bit na mensagem original resulta em um novo hash totalmente diferente.
  • Deve ser impossível encontrar duas mensagens diferentes que levam a um mesmo hash.

Neste ponto, o leitor mais atento percebe um problema: Se as mensagens possíveis são infinitas, mas o tamanho do hash é fixo, é impossível impedir que mensagens diferentes levem a um mesmo hash. De fato, isto ocorre. Quando se encontram mensagens diferentes com hashs iguais, é dito que foi encontrada uma colisão de hashes. Um algoritmo onde isso foi obtido deve ser abandonado. As funções de hash estão em constante evolução para evitar que colisões sejam obtidas. Cabe destacar porém que a colisão mais simples de encontrar é uma aleatória, ou seja, obter colisões com duas mensagens geradas aleatoriamente, sem significado real. Quando isto ocorre os estudiosos de criptografia já ficam atentos, porém para comprometer de maneira imediata a assinatura digital seria necessário obter uma mensagem adulterada que tenha o mesmo hash de uma mensagem original fixa, o que é teoricamente impossível de ocorrer com os algoritmos existentes hoje. Desta forma, garante-se a integridade da assinatura.

Após gerar o hash, ele deve ser criptografado através de um sistema de chave pública, para garantir a autenticação e a irretratabilidade. O autor da mensagem deve usar sua chave privada para assinar a mensagem e armazenar o hash criptografado junto a mensagem original.

Para verificar a autenticidade do documento, deve ser gerado um novo resumo a partir da mensagem que está armazenada, e este novo resumo deve ser comparado com a assinatura digital. Para isso, é necessário descriptografar a assinatura obtendo o hash original. Se ele for igual ao hash recém gerado, a mensagem está íntegra. Além da assinatura existe o selo cronológico que atesta a referência de tempo à assinatura.

Aspectos legais[editar | editar código-fonte]

Legislações sobre o efeito e validade de assinaturas digitais:

Brasil[editar | editar código-fonte]

Conforme a Medida provisória 2.200-2, a lei brasileira determina que qualquer documento digital tem validade legal se for certificado pela ICP-Brasil (a ICP oficial brasileira). A medida provisória também prevê a utilização de certificados emitidos por outras infra-estruturas de chaves públicas, desde que as partes que assinam reconheçam previamente a validade destes.

O que a MP 2.200-2 portanto outorga à ICP-Brasil é a fé pública, considerando que qualquer documento digital assinado com o certificado emitido pela ICP-Brasil pode de fato ser considerado assinado pela própria pessoa.

Resultado igual pode ser obtido se o usuário de um certificado emitido por outra ICP qualquer, depositar em cartório de registro o reconhecimento da mesma como sua identidade digital. O que se quer preservar é o princípio da irrefutabilidade do documento assinado, assim sendo, o registro em cartório de um documento no qual o usuário reconhece como sendo seu um determinado certificado digital é prova mais que suficiente para vincular a ele qualquer documento eletrônico assinado com aquele certificado.

Comunidade Europeia[editar | editar código-fonte]

Estados Unidos da América[editar | editar código-fonte]

  • Uniform Electronic Transactions Act (UETA)
  • Electronic Signatures in Global and National Commerce Act (E-SIGN), através 15 U.S.C. 7001 et seq.

Outras tecnologias disponíveis oferecidas por empresas:

Inglaterra, Escócia e Gales[editar | editar código-fonte]

Índia[editar | editar código-fonte]

Nova Zelândia[editar | editar código-fonte]

Portugal[editar | editar código-fonte]

A legislação portuguesa prevê a utilização da assinatura digital no Decreto-Lei n.º 290-D/99, republicado pelo Decreto-Lei n.º 62/2003, definindo-a como um documento elaborado mediante processamento electrônico de dados.

Este Decreto-Lei procede à transposição da Directiva do Parlamento Europeu e do Conselho nº 1999/93/CE, de 28 de Junho, relativa a um quadro legal comunitário para as assinaturas electrónicas.

De acordo com a legislação portuguesa, as assinaturas electrónicas têm a mesma validade probatória que as assinaturas manuscritas, desde que se baseiem em certificados emitidos por entidades certificadoras credenciadas.

A autoridade de credenciação das entidades certificadoras é a Autoridade Nacional de Segurança; a credenciação, contudo, é facultativa, podendo qualquer entidade não credenciada exercer essa actividade. A Autoridade Nacional de Segurança publica a lista das entidades credenciadas. Neste momento, em Portugal, para além da entidade certificadora do Cartão de Cidadão, do Ministério da Justiça, da Assembleia da República e da Entidade Certificadora Electrónica do Estado, há duas entidades certificadoras privadas credenciadas pela Autoridade Nacional de Segurança para emissão de certificados de assinatura electrónica qualificada, a Multicert e a DigitalSign.

United Nations Commission on International Trade Law[editar | editar código-fonte]

Ícone de esboço Este artigo sobre Informática é um esboço. Você pode ajudar a Wikipédia expandindo-o.