Vimos na edição passada, o que é segurança da informação e seus atributos essenciais: Confidencialidade, Integridade, Autenticidade e Disponibilidade. Podemos pensar em diversos mecanismos diferentes para garantir esses atributos quando a informação se encontra em meio físico, ao alcance das nossas mãos. Mas e quando a informação é armazenada ou precisa ser transmitida em meio virtual?
Confidencialidade
Para garantir a confidencialidade utilizamos a criptografia:
Criptografia (Do Grego kryptós, “escondido”, e gráphein, “escrita”) é o estudo dos princípios e técnicas pelas quais a informação pode ser transformada da sua forma original para outra ilegível, de forma que possa ser conhecida apenas por seu destinatário (detentor da “chave secreta”), o que a torna difícil de ser lida por alguém não autorizado. Assim sendo, só o receptor da mensagem pode ler a informação com facilidade. É um ramo da Matemática, parte da Criptologia.
Existem diversos processos de codificação (cifragem) e decodificação (decifragem) de informação, e estes podem ser classificados pelo tipo de chave que utilizam. A criptografia de chaves simétricas se dá quando uma mesma chave é utilizada na cifragem e decifragem da informação.
Isso nos leva à criptografia chaves assimétricas que, por sua vez, utiliza duas chaves distintas: uma chave privada, conhecida apenas pelo seu criador, e uma chave pública que o criador da chave pode distribuir livremente. Ela pode ser utilizada para garantir a confidencialidade da informação trafegada, para isso, as partes envolvidas trocam as suas chaves públicas e passam a enviar dados cifrados com a chave pública do destinatário.
Uma vez cifrada pela chave pública, a mensagem só poderá ser decifrada pela chave privada correspondente, que só é conhecida pelo destinatário.
Autenticidade
A criptografia por chaves assimétricas também pode ser utilizada para garantir a autenticidade da informação, bastando para isso usar as chaves de forma inversa – ou seja, cifrando a mensagem utilizando a chave privada, ela poderá ser decifrada por qualquer um que pessoa a chave pública correspondente.
Integridade
Conferir a integridade de pequenos trechos de texto é relativamente simples, mas e quando o volume de informação aumenta? Como garantir que aquela mídia em que você guarda com todas as obras de Monteiro Lobato não teve seus dados corrompidos? E se você quiser transmiti-los para outro computador, como saber que os dados chegaram de forma íntegra do outro lado?
Na informática utiliza-se o conceito de hash para gerar uma forma de assinatura única de um arquivo. Uma função hash é um programa que utiliza funções matemáticas para transformar um arquivo de qualquer tamanho em uma assinatura única de tamanho fixo. Então, independente do arquivo em questão ser um soneto ou todo o conteúdo da bíblia, a assinatura deles possuirá o mesmo tamanho e será única. Qualquer alteração mínima no conteúdo original pode ser identificada através desse processo.
Certificado digital
Podemos assegurar a segurança da informação utilizando criptografia de chaves assimétricas e funções hash, mas esse modelo funciona apenas se partes envolvidas tiverem previamente definido os processos utilizados, afinal existem diversas funções de criptografia e de hash. Como saber qual foi utilizada para cifrar e assinar a informação?
Além disso, a criptografia por chaves assimétricas requer que o leitor tenha obtido de alguma forma a chave pública do autor. Como garantir que a chave que você recebeu pertence realmente a aquela pessoa?
O certificado digital é um documento eletrônico assinado digitalmente que liga uma chave pública a uma entidade, podendo assim ser utilizado para comprovar que aquela chave pública pertence de fato a aquela entidade ou indivíduo. Além disso, o certificado também inclui outras informações importantes, como a identificação do tipo de criptografia e de função hash utilizados.
A autenticidade e a validade de um certificado são comprovadas pelas assinaturas que ele possui. Ou seja, o certificado deve ter sido assinado por uma entidade da sua confiança para que você também possa confiar nele.
Modelos de infraestrutura de certificação digital
Existem hoje dois modelos de infraestrutura para validação de certificados digitais, o primeiro e mais comum é a Infraestrutura de Chaves Públicas.
Esse modelo se baseia na existência de entidades superiores em que todos podem confiar, e são conhecidas como Autoridades Certificadoras (AC, ou CA em inglês). Essas entidades são responsáveis pela emissão de novos certificados, e tem o poder de revogar qualquer certificado emitido se a segurança da chave privada associada ao certificado tiver sido comprometida.
Apesar de esse modelo nos dar uma forte ideia de hierarquia, esse é um mercado bastante fragmentado e existem inúmeras empresas pelo mundo que fazem o papel de autoridade certificadora. O principal motivo disso são as diferenças na legislação de cada país, o que propicia a criação de ACs de atuação estritamente regional.
Isso não quer dizer que não exista rigor no controle das atividades dessas empresas. Para ser considerada uma AC, a empresa deve passar por rigorosas vistorias, que incluem também avaliação de segurança das instalações físicas da empresa. Essas vistorias podem ser conduzidas por mais de um comitê ou órgão internacional, e são elas que determinam se os certificados emitidos pela AC são confiáveis.
No Brasil temos a ICP-Brasil (Infraestrutura de Chaves Públicas Brasileira), instituída por uma medida provisória em 2001 e administrada por um Comitê Gestor como previsto pela medida. O modelo de infraestrutura adotado pela ICP-Brasil foi o de Certificado de Raiz única, ou seja, todas as ACs brasileiras – tais como o Serasa, o Certisign e a Caixa – são credenciadas e as suas operações supervisionadas e auditadas pelo Instituto Nacional de Tecnologia da Informação.
O segundo modelo é a Teia de Confiança (Web of trust), nesse modelo o certificado é assinado pela própria entidade que o emitiu e por outras que afirmam confiar nessa entidade. Não existe uma figura superior de confiança absoluta. A ideia é simples: se você confia em João e ele atesta que Maria é de confiança, então você pode confiar em Maria também.
O uso desse modelo é mais restrito a profissionais e entusiastas da área da Informática, mas o seu uso tem se difundido como ferramenta antispam ou anti-scam (scam vem do inglês e pode ser traduzido como um golpe ou trapaça), por exemplo:
Maria recebeu um e-mail do seu banco sobre recadastramento dos dados da sua conta corrente com um link para o site do banco, mas rapidamente percebe que se trata de um golpe. Ela poderia simplesmente apagar o e-mail e ignorar a sua existência, mas ela quer também ajudar a evitar que outras pessoas venham a cair nesse golpe, então ela instalou uma extensão no seu navegador de internet que a permite marcar o endereço que consta no e-mail como não confiável.
João, amigo de Maria, recebe o mesmo e-mail, mas infelizmente ele desconhece esse tipo de golpe e clica no link acreditando que será redirecionado para o site do seu banco. Felizmente Maria instruiu João a instalar a mesma extensão no seu navegador, que já recebeu a informação de que o site não é confiável e, por isso, o acesso de João ao site é bloqueado, evitando que ele tenha os seus dados roubados.
Os dois modelos podem ser utilizados de maneira complementar, por exemplo, se você não conhece nem João e nem Maria, o fato de João confiar em Maria não significaria nada para você. Mas se o certificado de João foi emitido por uma AC, isso significa que você pode confiar nele e, por isso pode também confiar em Maria.
A certificação digital é hoje a forma melhor de garantir a segurança na transmissão ou no armazenamento da informação, pois o seu objetivo é justamente prover a base necessária para a implantação de medidas de segurança capazes de atender todos os atributos que garantem a segurança da informação.
Comentários
Comentários