X. Segurança na Internet Segurança na Internet O aspecto mais
Transcrição
X. Segurança na Internet Segurança na Internet O aspecto mais
X. Segurança na Internet 1. Criptografia 2. Assinaturas Digitais 3. Certificados Digitais 4. Autoridade Certificadora (AC) 5. Esteganografia 6. Protocolos de segurança 7. Firewalls (paredes corta-fogo) Simone Bacellar Leal Ferreira – [email protected] UNIRIO Segurança na Internet O comércio à distância não é recente. Faz anos que ele é executado, por telefone, por catálogos e pelo correio. Mas comércio pela Internet é relativamente recente O aspecto mais importante para o desenvolvimento do comércio na Internet, é o sistema de transacção, e o principal problema com o TCP/IP, ou seja, o protocolo de comunicação, é que a informação é transmitida através de routers, pontes e linhas telefónicas "nuas", e podem ser interceptadas Simone Bacellar Leal Ferreira – [email protected] UNIRIO 1. Criptografia A palavra Criptografia tem sua origem no Grego : kryptos significa oculto, envolto, secreto; graphos significa escrever, grafar. criptografia significa escrita secreta ou escrita oculta. Existem várias formas de ocultar mensagens. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação A criptografia é um método matemático de codificar e descodificar mensagens, inventado por Philip Zimmerman, e que se tornou no dia a dia de espiões e serviços secretos . Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Texto puro Dados não criptografados Texto cifrado Dados não criptografados Criptograma ou Criptosistema Técnica ou algoritmo para criptografar mensagems Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Serviços oferecidos pela Criptografia Serviços Descri ção Disponibilidade Garante que uma informação estará disponível para acesso no momento desejado. Integridade Garante que o conteúdo da mensagem não foi alterado. Controle de acesso Garante que o conteúdo da mensagem somente será acessado por pessoas autorizadas. Autenticidade da origem Garante a identidade de quem est á enviando a mensagem. Não-repudiação Previne que alguém negue o envio e/ou recebimento de uma mensagem. Privacidade (confidencialidade ou sigilo) Impede que pessoas não autorizadas tenham acesso ao conteúdo da mensagem, garantindo que apenas a origem e o destino tenham conhecimento. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Algoritmos de Criptografia “É uma função matemática utilizada para cifrar e decifrar um dado.” Os primeiros algoritmos criptográficos desenvolvidos aplicavam uma função matemática, repetidamente, a um dado para cifrá- lo. Para tornar os algoritmos de criptografia mais robustos criou-se o conceito de chave criptográfica. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Criptografia sem chave: Qualquer pessoa que conheça o algoritmo decifra a mensagem Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação A criptografia moderna se dois componentes: um algoritmo e uma chave. Algoritmo É uma transformação matemática, que converte uma mensagem em claro em uma mensagem cifrada e vice-versa. Chave Consiste de uma série de dígitos que funciona como uma senha, para tornar os dados incompreensíveis a todos, exceto para o emissor e para o receptor. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Algoritmos de Criptografia Os algoritmos de criptografia podem ser utilizados para: • Autenticação: garante que o emissor de uma mensagem, ou usuário, é quem clama ser. Desta maneira evita-se que um invasor se mascare como um emissor ou usuário válido. • Integridade: garante que os dados não foram alterados durante a transmissão ou por um outro usuário de um sistema. Desta maneira pode detectar se um arquivo ou dado foi modificado sem a devida autorização do proprietário deste. • Não-repudiação: garante que um emissor de uma mensagem não será capaz de negar que tenha enviado uma determinada mensagem. A segurança de um algoritmo criptográfico depende do tamanho da chave e do algoritmo utilizado. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação O número de chaves possíveis depende do tamanho (número de bits) da chave. Por exemplo, uma chave de 8 bits permite uma combinação de no máximo 256 chaves (28 ). Quanto maior o tamanho da chave, mais difícil quebra-la, pois estamos aumentando o número de combinações. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação O uso de chaves sua utilização oferece duas importantes vantagens. 1. Permitir a utilização do mesmo algoritmo criptográfico para a comunicação com diferentes receptores, apenas trocando a chave. 2. Permitir trocar facilmente a chave no caso de uma violação, mantendo o mesmo algoritmo Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Tipos de Algoritmos 1. Criptografia Simétrica ou de Chave Secreta 2. Criptografia Assimétrica ou de Chave Pública Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação 1. Criptografia Simétrica ou de Chave Secreta Criptografia com uma só chave: só quem tem a chave decifra a mensagem Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação 1. Criptografia simétrica ou de Chave Secreta È a criptografia que usa uma mesma chave para o ciframento e para deciframento, ou quando a chave de deciframento pode ser obtida a partir do conhecimento da chave de ciframento. Antes que as duas pessoas possam se comunicar, elas precisam encontrar uma maneira de trocar a chave simétrica de forma segura, como por exemplo, usando um serviço postal ou dispor de uma autoridade central, chamada central de distribuição de chave. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Problemas na Criptografia Simétrica ou Chave Secreta Como cada par necessita de uma chave para se comunicar de forma segura, para um uma rede de n usuários seria necessário cerca de n2 chaves, quantidade esta que dificulta a gerência das chaves; A chave deve ser trocada entre as partes e armazenada de forma segura, o que nem sempre é fácil de ser garantido; A criptografia simétrica não garante a identidade de quem enviou ou recebeu a mensagem (autenticidade e não repudiação). Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Alguns algoritmos Simétricos de 56 Bits DES DES (Data Encryption Standard) é o algoritmo simétrico mais disseminado no mundo. Foi criado pela IBM em 1977 e, apesar de permitir cerca de 72 quadrilhões de combinações (256), seu tamanho de chave (56 bits) é considerado pequeno, tendo sido quebrado por "força bruta" em 1997 em um desafio lançado na Internet. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Alguns algoritmos Simétricos de 56 Bits DES (Continuação) Continuação NIST(National Institute of Standards and Technology) recertificou o DES em 1993 e desde então está recomendando o 3DES. O NIST propôs um substituto ao DES que deve aceitar chaves de 128, 192 e 256 bits, operar com blocos de 128 bits, ser eficiente, flexível e estar livre de "royalties". Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Alguns algoritmos Simétricos de 56 Bits Continuação Continuação AES AES (Advanced Encryption Standard) éum novo padrão que está sendo estudado desde 1997 a partir de vários algoritmos apresentados pela comunidade. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Algoritmo Simétrico de 112 ou 168 Bits 3DES 3DES (Triple DES) é uma simples variação do DES, utilizando-o em três ciframentos sucessivos, podendo empregar um versão com duas ou com três chaves diferentes. É seguro, porém muito lento para ser um algoritmo padrão. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Algoritmo Simétrico de 128 Bits IDEA IDEA (International Data Encryption Algorithm) foi criado em 1991 por James Massey e Xuejia Lai e possui patente da suíça ASCOM Systec. O algoritmo é estruturado seguindo as mesmas linhas gerais do DES. Mas na maioria dos microprocessadores, uma implementação por software do IDEA é mais rápida do que uma implementação por software do DES. O IDEA é utilizado principalmente no mercado financeiro e no PGP, o programa para criptografia de e- mail pessoal mais disseminado no mundo. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Algoritmo Simétrico de 32 a 448 Bits Blowfish Blowfish é um algoritmo desenvolvido por Bruce Schneier, que oferece a escolhe entre maior segurança ou desempenho através de chaves de tamanho variável. O autor aperfeiçoou-o no Twofish, concorrente ao AES. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Algoritmo Simétrico de 8 a 1024 Bits RC2 RC2 foi projetado por Ron Rivest (o R da empresa RSA Data Security Inc.) e utilizado no protocolo S/MIME, voltado para criptografia de e-mail corporativo. Também possui chave de tamanho variável. Rivest também é o autor do RC4, RC5 e RC6, este último concorrente ao AES. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação 2. Criptografia Assimétrica ou de Chave Pública Forma de criptografia desenvolvida em 1976, por Whitfield Diffie e Martin Hellman, pesquisadores da Universidade de Stanford. . Whitfield Diffie Martin Hellman Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação 2. Criptografia Assimétrica ou de Chave Pública Se baseia no conceito de par de chaves: uma chave privada e uma chave pública. Qualquer uma das chaves é utilizada para cifrar uma mensagem e a outra para decifrá- la. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação 2. Criptografia Assimétrica ou de Chave Pública As mensagens cifradas com uma das chaves do par só podem ser decifradas com a outra chave correspondente. A chave de deciframento deve ficar secrta, sendo chamada de chave privada. A chave de ciframento se torna disponível livremente para qualquer interessado e é chamada de chave pública. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação 2. Criptografia Assimétrica ou de Chave Pública UNIRIO Simone Bacellar Leal Ferreira – [email protected] Criptografia Continuação 2. Criptografia Assimétrica ou de Chave Pública Bob divulga sua chave pública e assim Eve pode obtê-la. Quando Alice deseja enviar uma mensagem a Bob, precisa primeiro encontrar a chave pública dele. Ela cifra sua mensagem utilizando a chave pública de Bob, despachando-a em seguida. Bob recebe a mensagem e a decifra com sua chave privada. Eve, que interceptou a mensagem em trânsito, não conhece a chave privada de Bob, embora conheça sua chave pública. Mas este conhecimento não o ajuda a decifrar a mensagem. Mesmo Alice, que foi quem cifrou a mensagem com a chave pública de Bob, não pode decifrá- la agora. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Algoritmo Assimétrico RSA RSA é o algoritmo assimétrico mais amplamente utilizado. Possui este nome devido a seus inventores: Ron Rivest, Adi Shamir e Len Adleman, que o criaram em 1977 no MIT. Ron Rivest Adi Shamir Simone Bacellar Leal Ferreira – [email protected] Criptografia Len Adleman UNIRIO Continuação Algoritmo Assimétrico RSA É uma das mais poderosas formas de criptografia de chave pública conhecidas. O RSA utiliza números primos. A premissa por trás do RSA é que é fácil multiplicar dois números primos para obter um terceiro número, mas muito difícil recuperar os dois primos a partir daquele terceiro número. Isto é conhecido como fatoração. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Algoritmo Assimétrico RSA Por exemplo, os fatores primos de 3.337 são 47 e 71. Gerar a chave pública envolve multiplicar dois primos grandes; qualquer um pode fazer isto. Derivar a chave privada a partir da chave pública envolve fatorar um grande número. Se o número for grande o suficiente e bem escolhido, então ninguém pode fazer isto em uma quantidade de tempo razoável. Assim, a segurança do RSA baseia-se na dificuldade de fatoração de números grandes. Deste modo, a fatoração representa um limite superior do tempo necessário para quebrar o algoritmo. Uma chave RSA de 512 bits foi quebrada em 1999 pelo Instituto Nacional de Pesquisa da Holanda, com o apoio de cientistas de mais 6 países. Levou cerca de 7 meses e foram utilizadas 300 estações de trabalho para a quebra. Um fato preocupante: cerca de 95% dos sites de comércio eletrônico utilzam chaves RSA de 512 bits. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Problemas na Criptografia Assimétrica ou Chave Pública Os algoritmos de chave pública não são eficientes para o envio de grandes quantidades de dados, logo não podem ser considerados substitutos de algoritmos de chave secreta, Podem ser usados para permitir que as duas partes cheguem a um acordo quanto à chave a ser usada para criptografia de chave secreta, em um meio seguro (sistema híbrido). Protocolo de concordância de chaves Processo pelo qual duas partes trocam chaves em um meio não seguro. O protocolo estabelece as regras para a comunicação, definindo qual algoritmo será usado. O protocolo mais usado é o envelope digital Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Key Escrow Os algoritmos de criptografia permitem transmitir informação utilizando códigos que não podem ser lidos por pessoas que não tenham as chaves ou senhas corretas. A França só permite o uso de criptografia se uma cópia das chaves for enviada para à agência do governo. Tal conceito, chamado Key Escrow, permite que o governo e a polícia decifrem mensagens criptografadas. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Problemas Legais na Exportação O grande problema é a criptografia forte. Ela usa algoritmos matemáticos complexos para codificar texto e foi originalmente desenvolvida pelos militares Em 1991, Phil Zimmermann escreveu um programa de criptografia de 128 bits chamado PGP (Pretty Good Privacy), o que tornou fácil o uso de criptografia pelos usuários da Internet. Veja http://www.pgp.com. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Problemas Legais na Exportação Nos EUA, é ilegal exportar qualquer tecnologia que utiliza criptografia mais forte do que 40 bits, sem o consenso por escrito do governo america-no. Para exportar algoritmos de criptografia fortes, é preciso deixar as chaves com o governo. A única exceção é o setor bancário. Simone Bacellar Leal Ferreira – [email protected] Criptografia UNIRIO Continuação Problemas Legais na Exportação Em 1994, Phil Karn solicitou permissão para exportar seu livro, Applied Crytography. O livro discutia criptografia e tinha um disquete com todos os códigos- fonte. O livro foi aprovado para exportação, mas o disquete não. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Criptografia Continuação Leis Nacionais de Criptografia Parece não existir nenhuma restrição ao uso da criptografia forte no Brasil Discussão sobre leis Para mais detalhes sobre leis e certificação: http://www. ibpbrasil.com.br/certificacaodigital Simone Bacellar Leal Ferreira – [email protected] UNIRIO 2. Assinaturas Digitais Uma assinatura digital consiste na criação de um código, através da utilização de uma chave privada, de modo o destinatário que receber uma mensagem contendo este código possa verificar se o remetente é mesmo quem diz ser e identificar qualquer mensagem que possa ter sido modificada. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Assinaturas Digitais Continuação Assinaturas digitais são o equivalente eletrônico de assinaturas manuscritas. Foram desenvolvidas para o uso em criptografia de chave pública para solucionar problemas de autenticação e identidade. É usada quando uma pessoa deseja garantir aos destinatários que a mensagem foi enviada realmente por ela e que a mensagem chegue integra aos destinatários, sem alterações em seu conteúdo Simone Bacellar Leal Ferreira – [email protected] Assinaturas Digitais UNIRIO Continuação O remetente cifra a mensagem com sua chave privada e a envia, em um processo denominado de assinatura digital. Cada um que receber a mensagem deverá decifrá- la, ou seja, verificar a validade da assinatura digital, utilizando para isso a chave pública do remetente. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Assinaturas Digitais Continuação Como a chave pública do remetente apenas decifra (ou seja, verifica a validade de) mensagens cifradas com sua chave privada, fica garantida assim a autenticidade, integridade e não-repudiação da mensagem. Pois se alguém modificar um bit do conteúdo da mensagem ou se outra pessoa assiná- la ao invés do remetente, o sistema de verificação não irá reconhecer a assinatura digital do remetente.como sendo válida. Simone Bacellar Leal Ferreira – [email protected] Assinaturas Digitais Simone Bacellar Leal Ferreira – [email protected] UNIRIO Continuação UNIRIO Assinaturas Digitais Continuação Função Hash A assinatura digital não pode ser empregada, na prática, de forma isolada. É necessário a existência de um mecanismo para o adequado emprego da assinatura digital. Este mecanismo é a função Hashing, também conhecida por Message Digest, One-Way Hash Function, Função de Condensação ou Função de Espalhamento Unidirecional. Simone Bacellar Leal Ferreira – [email protected] Assinaturas Digitais UNIRIO Continuação Função Hash Funciona como uma impressão digital de uma mensagem gerando, a partir de uma entrada de tamanho variável, um valor fixo pequeno: o digest ou valor hash Sua utilização como componente de assinaturas digitais se faz necessário devido à lentidão dos algoritmos assimétricos, em geral cerca de 1.000 vezes mais lentos do que os simétricos. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Assinaturas Digitais Continuação Função Hash A função Hashing gera um valor pequeno, de tamanho fixo, derivado da mensagem que se pretende assinar, de qualquer tamanho. Assim, a função Hashing oferece agilidade nas assinaturas digitais, além de integridade confiável. Este valor está para o conteúdo da mensagem assim como o dígito verificador de uma conta-corrente está para o número da conta. Serve, para garantir a integridade do conteúdo da mensagem. Assim, após o valor hash de uma mensagem ter sido calculado através de uma função hashing, qualquer modificação em seu conteúdo será detectada, pois um novo cálculo do valor hash sobre o conteúdo modificado resultará em um valor hash bastante distinto. Simone Bacellar Leal Ferreira – [email protected] Assinaturas Digitais UNIRIO Continuação Situação Prática "Um arquivo é periciado, devolvido a delegacia/justiça em mídia magnética (disquete ou hd), depois de algum tempo, levanta-se uma dúvida sobre o que foi feito no trabalho pericial. Como garantir que o material não sofreu nenhuma alteração isto é, o arquivo está com o mesmo conteúdo e formato quando da perícia?" Simone Bacellar Leal Ferreira – [email protected] UNIRIO Assinaturas Digitais Continuação Situação Prática O que pode-se fazer para garantir que um arquivo examinado por um agente investigativo, possa ser identificado posteriormente e ainda ter a certeza que nenhuma alteração acometeu a prova? Um documento escrito ou impresso numa folha de papel, possui como proteção o suporte onde ele foi posto. Isto é, em caso de dúvida sobre sua autenticidade, poderíamos analisar fisicamente o material (uso de lentes, padrões do fabricante, rasuras, etc). Simone Bacellar Leal Ferreira – [email protected] Assinaturas Digitais UNIRIO Continuação Situação Prática Solução: Funções "Hash" em arquivos digitais As funções "Hash" consistem de um método, através de algoritmos, verificar-se a autenticidade de um arquivo. O procedimento é simples, por meio de funções específicas, um conjunto de letras e números de tamanho fixo são associados ao arquivo. Para se ter certeza que o arquivo é o mesmo executa-se o programa e gera-se a chave. Se não ocorreram mudanças no conjunto "hash", o arquivo não foi alterado. Um ponto chave para a segurança é o fato de ser impossível retornar ao arquivo por meio de analise do resumo gerado. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Assinaturas Digitais Continuação Situação Prática Exemplo: método SHA Será utilizado como exemplo o algoritmo SHA, para gerar uma chave fixa de autenticação, para o arquivo exemplo carta.txt, o qual contem o seguinte conteúdo: ============= CARTA EXEMPLO ============= Número serial : 234432265236342xxx Usuario : Joao Claudio de Almeida Texto exemplo para uso de SHA. =========================================== fim do documento =========================================== Simone Bacellar Leal Ferreira – [email protected] Assinaturas Digitais UNIRIO Continuação Situação Prática Etapa 1 Digita-se o nome do arquivo hash <sha> seguido do nome do arquivo <carta.txt>: sha carta.txt 07e660bb bfb4cb85 1aa3367e fa5c4bd6 2c42ea46 Imagine que alguém intercepta este arquivo e altera o "Número serial" em um único digito. Original "Número serial : 234432265 236342xxx" Adulterado "Número serial : 234432267 236342xxx" No exemplo é o 9° digito. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Assinaturas Digitais Continuação Situação Prática Novo Arquivo carta.txt: ============= CARTA EXEMPLO ============= Número serial : 234432267 236342xxx Usuario : Joao Claudio de Almeida Texto exemplo para uso de SHA. =========================================== fim do documento =========================================== Simone Bacellar Leal Ferreira – [email protected] Assinaturas Digitais UNIRIO Continuação Situação Prática Etapa 2 Determina-se o "hash" do arquivo carta.txt com a adulteração. sha carta.txt 58095d3e 42b2cee0 15f6a7e7 af53b02b 84db94b9 Imagine que alguém intercepta este arquivo e altera o "Número serial" em um único digito. Original "Número serial : 234432265 236342xxx" Adulterado "Número serial : 234432267 236342xxx" No exemplo é o 9° digito. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Assinaturas Digitais Continuação Situação Prática Etapa3 Compara-se as chaves do arquivo carta.txt original e o arquivo adulterado. Note que a chave gerada pelo SHA é completamente diferente, a alteração foi somente para um digito!!!. Hash do arquivo original 07e660bb bfb4cb85 1aa3367e fa5c4bd6 2c42ea46 Hash do arquivo adulterado em um dígito 58095d3e 42b2cee0 15f6a7e7 af53b02b 84db94b9 Simone Bacellar Leal Ferreira – [email protected] Assinaturas Digitais UNIRIO Continuação Situação Prática Nenhuma alteração é tolerada pela função "HASH". Desta forma a autenticidade fica preservada. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Assinaturas Digitais Continuação Algoritmos mais comuns MD5(Message -Digest-Algoritm 5) Criado por R. Rivest do MIT Laboratory for Computer Sciense and RSA Data Security, em 1992. O uso deste algoritmo gera um resumo de 128bits (16 dígitos). SHA(Secure Hash Algoritm) Desenvolvido a partir do MD4 (versão anterior do MD5) em 1994, foi criado pelo governo dos Estados Unidos. Sua vantagem sobre o MD5 é o tamanho do resumo que é de 160bits (20 dígitos). Simone Bacellar Leal Ferreira – [email protected] UNIRIO 3. Certificados Digitais O certificado digital é um documento eletrônico, emitido por uma autoridade certificadora (AC), que contém dados de uma pessoa ou instituição, utilizados para comprovar sua identidade. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Certificados Digitais Continuação Principais informações em um certificado digital : • dados que identificam o dono (nome, número de identificação, estado, etc); • nome da Autoridade Certificadora (AC) que emitiu o certificado • o número de série do certificado; • o período de validade do certificado; • a assinatura digital da AC. • chave pública do remetente Simone Bacellar Leal Ferreira – [email protected] Certificados Digitais UNIRIO Continuação O objetivo da assinatura digital no certificado é indicar a Autoridade Certificadora garante a veracidade das informações nele contidas. Algumas Aplicações Ao se acessar um site com conexão segura, como por exemplo o acesso a um banco pela Internet, é possível checar se o site apresentado é realmente da instituição que diz ser, através da verificação de seu certificado digital. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Certificados Digitais Continuação Algumas Aplicações Ao enviar um e-mail importante, o aplicativo de e-mail pode utilizar seu certificado para assinar "digitalmente" a mensagem, de modo a assegurar ao destinatário que o e-mail é de fato de remetente e que não foi adulterado entre o envio e o recebimento Simone Bacellar Leal Ferreira – [email protected] Certificados Digitais UNIRIO Continuação Funções da certificação digital: proteger as transações, diminuindo os riscos de fraudes; garantir sigilo, integridade, autenticidade e validade jurídica. Atualmente, o principal usuário da certificação digital é o sistema financeiro. A primeira grande experiência no país: Sistema de Pagamentos Brasileiro (SPB) em vigor desde abril de 2002. Simone Bacellar Leal Ferreira – [email protected] UNIRIO 4. Autoridade Certificadora (AC) Autoridade Certificadora (AC), é a entidade responsável por emitir certificados digitais. Estes certificados podem ser emitidos para diversos tipos de entidades, tais como: pessoa, computador, departamento de uma instituição, instituição, etc. Os certificados digitais possuem uma forma de assinatura eletrônica da AC que o emitiu. Graças à sua idoneidade, a AC é normalmente reconhecida por todos como confiável, fazendo o papel de "Cartório Eletrônico". Alguns exemplos de CA: Verisign, Cybertrust e Nortel Simone Bacellar Leal Ferreira – [email protected] Autoridade Certificadora (AC) UNIRIO Continuação Uma CA também tem a responsabilidade de manter e divulgar uma lista com os certificados revogados (Certificate Revocation List - CRL). Certificados nesta lista podem ter sido roubados, perdidos ou, simplesmente, estar sem utilidade. As CAs podem estar encadeadas em hierarquias de certificação, onde a CA de um nível inferior valida sua assinatura com a assinatura de uma CA mais alta na hierarquia Simone Bacellar Leal Ferreira – [email protected] UNIRIO Autoridade Certificadora (AC) Continuação A validade legal é um dos grandes atrativos do sistema de certificação digital brasileiro, instruído por medida provisória em agosto de 2001. A MP criou a infra-estrutura de Chaves Públicas Brasileira (ICP-Brasil) com a finalidade de garantir a autenticidade, a integridade e a validade jurídica de documentos em forma eletrônica, das aplicações de suporte e das aplicações habilitadas que utilizem certificados digitais e as próprias transações eletrônicas seguras. Simone Bacellar Leal Ferreira – [email protected] Autoridade Certificadora (AC) UNIRIO Continuação É um conjunto de técnicas, práticas e procedimentos, a ser implementado pelas organizações governamentais e privadas brasileiras com o objetivo de estabelecer os fundamentos técnicos e metodológicos de um sistema de certificação digital baseado em chave pública. Veja http://www. icpbrasil.gov.br/ Simone Bacellar Leal Ferreira – [email protected] UNIRIO Autoridade Certificadora (AC) Continuação Autoridades credenciadas para emitir certificados digitais no Brasil: Serpro Secretaria da Receita Federal governo Caixa Econônica Federal Presidência da República CertiSign Serasa Simone Bacellar Leal Ferreira – [email protected] Autoridade Certificadora (AC) privadas UNIRIO Continuação A CertiSign, geralmente vende o certificado digital como parte de um pacote de soluções que oferece ao mercado corporativo, e que inclui infra-estrutura segura, autenticação, habilitação de aplicativos e help desk. O preço unitário de um certificado digital emi-tido pela CertiSign, com reconhecimento da ICP-Brasil, é de 100 reais. Mas este valor pode cair para até um dolar se o pacote adquirido incluir um grande volume de certificados. Estima-se um mercado de R$ 400 milhões ao ano. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Autoridade Certificadora (AC) Continuação A técnica empregada na infra-estrutura de chaves públicas (PKI – Public Key Infrastruc-ture) adotada na certificação digital é a criptografia assimétrica. Uma chave é mantida em sigilo (privada) e a outra é distribuída livremente (pública). O que uma chave codifica, a outra decodifica; o que uma faz, a outra desfaz. Simone Bacellar Leal Ferreira – [email protected] Autoridade Certificadora (AC) UNIRIO Continuação Passos para obter um certificado digital: 1. Obter identificação junto a uma autoridade de registro (AR) que têm a tarefa de garantir a identidade física do usuário ; 2. ao fornecer os dados, o usuário gera o par de chaves do seu certificado digital; 3. enviar a chave pública para uma autori-dade certificadora (AC), que é a responsável pela emissão do certificado digital. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Autoridade Certificadora (AC) Continuação Algumas ACs, como CertiSign e Serasa, também exercem a função de AR. O investimento para se tornar uma AC: cerca de 10 milhões de reais. O padrão adotado pela infra-estrutura de chaves públicas brasileiras é o X.509 versão 3 que permite acrescentar dados na chave como data de nascimento e CPF. O usuário pode guardar seu certificado no pró-prio computador ou em um smart card. Simone Bacellar Leal Ferreira – [email protected] Autoridade Certificadora (AC) UNIRIO Continuação No Brasil, o mercado de software e serviços vem apostando no desenvolvimento de vários aplicativos que incorporam a utilização do certi- ficado digital. O Internet Explorer já suporta os certificados oficiais braisleiros. O Windows 2000 pode gerar o par de chaves. Em março de 2003, a United Linux e a ICP-Brasil assinaram um acordo para inserir o certificado-raiz da ICP-Brasil nos navegadores Netscape, Mozilla, Galeon e Konqueror. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Autoridade Certificadora (AC) Continuação As próprias autoridades certificadoras (AC) ofe-recem aos clientes pacotes completos de soluções que, em alguns casos, incluem até os aplicativos. Para aumentar o grau de segurança de uma aplicação pode-se combinar o uso do certificado digital com outros recursos de hardware e software, como tokens, smart cards e sistemas de reconhecimento biométrico. Para empresas que querem mais segurança, pode-se associar um sistema de reconhecimento biométrico à assinatura digital. Simone Bacellar Leal Ferreira – [email protected] Autoridade Certificadora (AC) UNIRIO Continuação O uso de certificação digital pelos bancos no Sistema de Pagamentos Brasileiros (SPB). A Companhia Siderúrgica Nacional (CSN) adotou a certificação para dar segurança à correspondência eletrônica de seus diretores e executivos de várias áreas. Na Imprensa Oficial do Estado de São Paulo, o certificado digital vem sendo usado como instrumento para melhorar os serviços prestados aos órgãos do governo e, também, a advogados, empresas e ao público. Simone Bacellar Leal Ferreira – [email protected] UNIRIO 5. Esteganografia O termo esteganografia significa “escrita encopberta” e quer dizer a prática de ocultar informações dentro de outras informações. As mensagens criptografadas com a técnica de esteganografia parecem mensagens inocentes com imagens ou sons anexados. Usando esta técnica, é possível transmitir dados sem que ninguém notar. Exemplos de software: http://www.stegoarchive.com http://linux01.gwdg.de/~alatham/stego.html Simone Bacellar Leal Ferreira – [email protected] Esteganografia UNIRIO Continuação Aplicação da Esteganografia Marcas d´águas digitais usadas para propriedade intelectual: Uma marca d´água digital pode ser visível ou invisível. Geralmente é o logotipo de uma empresa, notificação de direito autoral ou outra marca ou mensagem que indique o proprietário do documento. Uma marca d´água invisível pode ser usada em tribunal de justiça como prova que um item foi roubado. Simone Bacellar Leal Ferreira – [email protected] UNIRIO 6. Protocolos de segurança Os dois principais protocolos usados para comércio pela Internet: SSL (Secure Sockets Layer) SET (Secure Eletronic Transactions ) Simone Bacellar Leal Ferreira – [email protected] Protocolos de segurança UNIRIO Continuação Há três participantes importantes no comércio pela Internet: o cliente que está comprando; o comerciante que está vendendo; o banco comercial que autoriza a compra. O SSL fornece segurança para as comunicações entre os dois primeiros participantes. O SET oferece segurança para as comunicações entre os três participantes. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Protocolos de segurança Continuação SSL Originalmente desenvolvido pela Netscape. É um protocolo projetado para fornecer cripto-grafia de dados e autenticação entre um cliente e um servidor Web. O protocolo começa com uma fase de apresen-tação mútua que negocia um algoritmo de cripto- grafia e chaves e autentica o servidor para o cliente. Opcionalmente, o cliente também pode ser autenticado para o servidor. Simone Bacellar Leal Ferreira – [email protected] Protocolos de segurança UNIRIO Continuação SSL Uma vez completada a mútua apresentação e iniciada a transmissão da aplicação de dados, to-dos os dados são criptografados usando as chaves de sessão negociadas durante a fase de apresen-tação mútua. O SSL é a base do protocolo TLS (Transport Layer Security – segurança da camada de transporte). O protocolo SSL não é limitado à aplicação na Web, ele pode ser usado para autenticar e criptografar e-mails. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Protocolos de segurança Continuação Funcionamento do SSL Bob usa o browser para consultar a página segura de Alice Alice envia seu certificado para o Bob Bob cria uma chave simétrica aleatória e a criptografa usando a chave pública de Alice Bob obtém a chave pública de Alice Alice obtém a chave simétrica de Bob Simone Bacellar Leal Ferreira – [email protected] Protocolos de segurança UNIRIO Continuação Características do SSL Autenticação do servidor SSL ? permite que um usuário confirme a identidade de um servidor (troca informações com uma autoridade certificadora). Autenticação do cliente SSL ? permite que um servidor confirme a identidade de um usuá-rio. Uma sessão SSL criptografada ? dados são criptografados pelo software remetente. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Protocolos de segurança Continuação Limitações do SSL Não foi produzido para transações com cartões de pagamento. Não vincula o usuário a um determinado cartão (como sei quem é o dono ?). Não há certeza se o usuário está autorizado a fazer compra usando o cartão. As compras SSL são semelhantes às compras pelo correio ou telefone, e naturalmente o comer-ciante é respons ável por uma compra SSL. Simone Bacellar Leal Ferreira – [email protected] Protocolos de segurança UNIRIO Continuação SET É um protocolo especificamente projetado para transações seguras com cartões de pagamento pela Internet. Foi originalmente desenvolvido pela Visa Inter-national e MasterCard International em feverei-ro de 1996 com a participação de empresas de tecnologias expoentes de todo o mundo. Os três participantes da transação (cliente, comerciante e banco) precisam ter certificado. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Protocolos de segurança Continuação SET O cliente deve obter as chaves públicas do comerciante e do banco para a transação ser realizada. A ordem de pagamento vai direto do cliente para o banco. Uma das caraterísticas principais do protocolo SET é a não-exposição do número do cartão de crédito ao comerciante. Simone Bacellar Leal Ferreira – [email protected] UNIRIO 7. Firewalls (paredes corta-fogo) Para que o aceso seja feito sem comprometer a segurança da intranet, é instalado na intranet da empresa um equipamento chamado firewall Um firewall é qualquer dispositivo projetado para impedir que estranhos acessem a rede. Esse dispositivo geralmente é um computador independente (standalone), um roteador ou um firewall em uma caixa (dispositivo de hardware proprietário). Os firewalls são combinações de hardware e software. Simone Bacellar Leal Ferreira – [email protected] UNIRIO Firewalls Continuação Simone Bacellar Leal Ferreira – [email protected] Firewalls UNIRIO Continuação O firewall serve como o único ponto de entrada para a rede e avalia cada solicitação de conexão quando é recebida. Somente solicitações de conexão de hosts autorizados são processadas; as demais solicitações de conexão são descartadas. A maioria dos firewalls realiza seu trabalho apenas verificando o endereço de origem da solicitação. Simone Bacellar Leal Ferreira – [email protected] UNIRIO