Entendendo Criptografia, Certificados e Assinaturas Digitais

Classificado em Computação

Escrito em em português com um tamanho de 14,2 KB

Criptografia Assimétrica (Chave Pública)

Também conhecida como criptografia de chave pública, é um método de criptografia que utiliza um par de chaves: uma chave pública e uma chave privada. A chave pública é distribuída livremente para todos os correspondentes via e-mail ou outras formas, enquanto a chave privada deve ser conhecida apenas pelo seu dono. Em um algoritmo de criptografia assimétrica, uma mensagem cifrada com a chave pública pode apenas ser decifrada pela sua chave privada correspondente.

Os algoritmos de chave pública podem ser utilizados para autenticidade e confidencialidade:

  • Confidencialidade: A chave pública é usada para cifrar mensagens, com isso, apenas o dono da chave privada pode decifrá-la, evitando assim que terceiros possam ler a mensagem.
  • Autenticidade: A chave privada é usada para cifrar a mensagem, com isso, garante-se que apenas o dono da chave poderia tê-la editado.

Exemplos de métodos criptográficos que usam chaves assimétricas são: RSA, DSA, ECC e Diffie-Hellman.

A criptografia de chaves assimétricas, apesar de possuir um processamento mais lento que a de chave simétrica, resolve esses problemas uma vez que facilita o gerenciamento (pois não requer que se mantenha uma chave secreta com cada um que desejar se comunicar) e dispensa a necessidade de um canal de comunicação seguro para o compartilhamento de chaves.

Após tudo isso, podemos ver que esses algoritmos que utilizam este tipo de criptografia podem ser utilizados na troca de mensagens na internet, assim como o algoritmo GnuPG, que é um programa de criptografia de e-mail.

Criptografia Simétrica (Chave Secreta)

Também chamada de criptografia de chave secreta ou única, utiliza uma mesma chave tanto para codificar quanto para decodificar informações, sendo usada principalmente para garantir a confidencialidade dos dados. Em casos nos quais a informação é codificada e decodificada por uma mesma pessoa, não há necessidade de compartilhamento da chave secreta.

Entretanto, quando essas operações envolvem pessoas ou equipamentos diferentes, é necessário que a chave secreta seja previamente combinada por meio de um canal de comunicação seguro (para não comprometer a confidencialidade da chave).

Exemplos de métodos criptográficos que usam chave simétrica são: AES, Blowfish, RC4, 3DES e IDEA.

A criptografia de chave simétrica, quando comparada com a de chaves assimétricas, é a mais indicada para garantir a confidencialidade de grandes volumes de dados, pois seu processamento é mais rápido. Todavia, quando usada para o compartilhamento de informações, torna-se complexa e pouco escalável, em virtude de:

  • Necessidade de um canal de comunicação seguro para promover o compartilhamento da chave secreta entre as partes (o que na Internet pode ser bastante complicado);
  • Dificuldade de gerenciamento de grandes quantidades de chaves (imagine quantas chaves secretas seriam necessárias para você se comunicar com todos os seus amigos).

Por exemplo, o Blowfish, que é um algoritmo de criptografia do tipo citado e explicado acima, um exemplo de seu uso é o método da troca de senha usado em OpenBSD (sistema operacional da família UNIX) que usa um algoritmo derivado de Blowfish que emprega a programação de chave lenta; a ideia é que o esforço computacional extra requerido dá a proteção contra ataques de dicionário.

O que é Certificado Digital?

O certificado digital é um arquivo eletrônico que tem por principal função oferecer autenticidade e garantir segurança em transferências de dados online, ou em envios e recebimentos de documentos que necessitam de uma validação jurídica.

A partir desse arquivo, os softwares de controle de dados conseguem fazer uma validação e aumentar a força das ferramentas de segurança, tendo por objetivo usar esta tecnologia na privacidade e autenticidade dos dados do usuário que está enviando esses documentos digitais, via transações online.

Uma empresa, órgão, ou mesmo pessoa física que possua um certificado digital, garante com esses dispositivos várias vantagens, entre elas:

  • Autenticidade jurídica em documentos eletrônicos;
  • Menos burocracia em processos de transferências eletrônicas;
  • Diminuição de custos;
  • Ganho de tempo de operações;
  • Diminuição no uso de papéis e documentos físicos;
  • Acesso a dados da internet com autenticidade e segurança.

O certificado digital pode ser utilizado em várias atividades econômicas, sendo utilizado pelo ramo financeiro e contábil, o Poder Judiciário, para comunicação entre governos, atividades dos ramos de saúde e educação, e a RFB (Receita Federal do Brasil). Com um certificado em mãos, o usuário tem possibilidade de realizar transferências eletrônicas bancárias com mais segurança.

O certificado digital possui a função de interligar uma entidade portadora a uma chave pública. O que garante digitalmente, em um cenário com uma massa de chaves públicas, é o certificado ser assinado eletronicamente por uma empresa que é Autoridade Certificadora, que repassa à entidade uma espécie de termo de confiança para essa entidade.

Simplificando, uma empresa possui a autorização de fornecer certificados digitais a outras empresas ou pessoas físicas, sendo que esse arquivo irá conter as informações de nome, CPF ou CNPJ, e-mail e demais dados do titular do certificado, um número de série do certificado, o tipo de algoritmo de criptografia do certificado, a identificação da autoridade certificadora, as informações da chave pública, e o período de validade do certificado.

A empresa então terá instalado esse certificado digital em uma máquina de escritório responsável pelas transações. Os aplicativos de transações e softwares realizarão então a movimentação, e buscarão o arquivo do certificado digital da máquina, a partir de onde ele está instalado e enviarão o documento ou a confirmação já com a autenticidade comprovada pela empresa.

O certificado possui uma senha que, para ser configurado na máquina, é aplicada juntamente com o arquivo que é da extensão .pfx, que é anexado ou importado para dentro de um navegador de internet do computador, ou em softwares que possuam essa possibilidade.

Tipos de Certificado Digital: A1 e A3

O certificado digital possui dois formatos para comercialização. Um é um arquivo único que é instalado na máquina, conhecido por Certificado Digital A1, sendo que esse pode ser copiado para outras máquinas, que apesar de possuir uma senha para poder ser importado e acesso, esse possui muito menos segurança, por ser possível quebrar a senha dele, ainda mais quando o arquivo estiver em mãos de terceiros que não possuem a autoridade de assinar pela entidade.

A vantagem é que em uma rede de máquinas de uma empresa que necessita dessa ferramenta, esse equipamento pode ser configurado em várias estações, para poder fazer as autenticações eletrônicas em todas as máquinas.

Geralmente esse arquivo tem um período curto de validade, geralmente em torno de 12 meses.

Outro formato é um dispositivo físico que pode ser um cartão magnético, ou um Token. Esse formato é conhecido como Certificado Digital A3. O cartão magnético fica conectado a uma leitora de cartões, que comunica com a máquina a partir de uma conexão de driver USB. O Token também conecta da mesma forma com a máquina, tendo um formato semelhante a um pen drive, porém com uma funcionalidade totalmente diferente do dispositivo de armazenamento.

Apesar das diferenças físicas, a aplicação é a mesma. A instalação se dá por um software próprio da autoridade certificadora, onde o equipamento fica conectado unicamente na máquina onde está instalado, não sendo possível realizar mais de uma autorização ao mesmo tempo, por se tratar de dispositivo físico. Os dados são lidos diretamente do dispositivo, porém, da mesma forma, é anexado ao browser ou ao aplicativo um arquivo responsável pela comunicação com o driver do equipamento físico.

Sendo assim, fornece uma segurança muito maior que o certificado digital em arquivo (A1), pelo fato de que para outra pessoa usar os dados da autoridade, ela precisa estar com o dispositivo físico em mãos, além da senha e dos softwares para instalação do equipamento.

O uso dos certificados digitais teve grande impulso no Brasil a partir da criação da Nota Fiscal Eletrônica (NF-e) pela RFB (Receita Federal do Brasil), onde todos os contribuintes tiveram que se adaptar ao novo formato de emissão de notas fiscais, onde para concluir a transação dessa operação de comunicação com o servidor da RFB e confirmar que aquela NF-e que estava sendo emitida, teriam que possuir uma confirmação de autenticidade eletrônica via Certificado Digital.

Estes teriam por função validar que os dados do emitente dessa NF-e estavam de acordo com os dados do titular do certificado digital que está enviando a NF-e.

Assinatura Digital

Frequentemente, sempre que uma pessoa vai identificar-se em um determinado documento, tem-se a necessidade que este seja assinado. Dessa forma, elimina-se a chance de outra pessoa se apropriar dessa identificação, podendo fazer desse documento o que quiser, podendo, em alguns casos, prejudicar essa pessoa ou os bens a que ela pertence.

No meio eletrônico, a fim de garantir essa segurança nos documentos digitais e transferências online, foi estabelecida uma autenticidade, e assim criada a assinatura digital.

Essa forma de garantia digital funciona como uma verificação para o envio, sendo que se o emitente de um determinado documento, ou transferência digital, é reconhecido realmente por quem ele está dizendo ser. Assim, uma entidade poderá navegar por sites online e demais conteúdos da internet, além de acessar sites que venham a usar informações de seus dados pessoais, não tendo a necessidade de se preocupar com algo que venha a enganar ou roubar dados.

Qualquer pessoa física, entidade ou empresa pode adquirir uma assinatura digital. Para isso, ela deve adquiri-la em uma empresa conhecida como Autoridade Certificadora, que é cadastrada pelo Instituto Nacional de Tecnologia da Informação (ITI), e assim fará uma requisição de uma chave privada.

A chave privada é formada por um conjunto de sequência de bits criptografados, utilizada para que apenas algumas pessoas possam enviar e receber determinados arquivos. Uma entidade que for titular de uma chave privada terá a possibilidade de emitir arquivos e dados com a sua identidade única, evitando totalmente a chance de alguém se passar por ela para a emissão desses dados.

Quando uma determinada entidade possuir uma chave pública, essa terá apenas a possibilidade de abrir um determinado arquivo recebido, e ainda poderá retransmitir essa informação. Porém, o reconhecimento da identificação do emitente original estará sempre atrelado no documento, arquivo ou transação, de forma que isso não gere dúvidas de qual entidade foi a autora desse documento, ou seja, qual é o real responsável por esse arquivo repassado.

Porém, a assinatura digital ainda assim não estará concluída. Para poder ser repassado os dados e a informação de forma integralmente segura, será necessário gerar um “hash”, que se define como o resultado de um método que criptografa e garante a identificação única desses dados que estão sendo assinados.

Após a conclusão de todos esses procedimentos citados, um certificado será emitido em nome do titular, sendo que dessa maneira será possível estabelecer uma comunicação dos dados entre duas ou mais entidades, contanto que ao menos uma dessas entidades tenha uma chave privada (ou chave simétrica), e as outras entidades tenham as chaves públicas (ou chaves assimétricas).

Validação de Certificados em Navegadores

Uma coisa que sempre ocorre, porém quase nunca está perceptível ao usuário, é que o navegador de internet confere e valida todos os certificados de sites que estão sendo acessados durante toda a navegação. Particularmente, cada um dos browsers possuem maneiras diferentes de identificar os problemas e acesso aos certificados digitais da web, mas sempre mostrando por ícones ou mensagens qual é o status ou confiabilidade do certificado digital da página web que está sendo visitada.

Quando um certificado apresenta um problema, seja por falha no acesso à origem ou falha de segurança, aparecerá uma mensagem em uma página única indagando se o usuário deseja ou não continuar acessando esse endereço que teve a falha de certificação. Essa opção de escolha é de responsabilidade inteira do usuário que navega, e, com isso, também, surgirão possíveis problemas que poderão aparecer durante o decorrer da navegação ou da operação instruída.

É dessa forma que os browsers e navegadores avisarão aos usuários se as informações pessoais permanecem seguras e realmente guardadas. Além de tudo, também é dessa maneira que os mesmos informam se o usuário pode considerar todos os dados e informações repassados pela página, como geração de boletos bancários e autorizações de identidade confirmada.

Entradas relacionadas: