Inf seg redinf_semana6

1,362 views

Published on

1 Comment
1 Like
Statistics
Notes
No Downloads
Views
Total views
1,362
On SlideShare
0
From Embeds
0
Number of Embeds
62
Actions
Shares
0
Downloads
67
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide

Inf seg redinf_semana6

  1. 1. Professor Conteudista: Dailson de Oliveira Fernandes PERNAMBUCO, 2010.
  2. 2. CONTEÚDO PROGRAMÁTICO 6. Criptografia 6.1. O que é criptografia de chave única? 6.2. O que é criptografia de chaves pública e privada? 6.3 Mas afinal, O que é de fato uma chave? Qual o formato dela? 6.4. O que HASH? 6.5. O que é assinatura digital? 6.6 Certificado Digital 6.7 O que é Autoridade Certificadora (AC)? 6.8 Que exemplos podem ser citados sobre o uso de certificados? 6.9 Que exemplos podem ser citados sobre o uso de criptografia de chave única e de chaves pública e privada? 6.10 Que tamanho de chave deve ser utilizado? 6.11 Como posso obter um certificado? 6.12 GP 6.12.1 Open PGP
  3. 3. /EdZKh K Olá pessoal! Finalmente estamos na última semana do nosso curso. Na parte anterior deste fascículo, tratamos de segurança de computadores sob um olhar mais complexo e generalista da proteção. Tratamos de segurança de perímetros de rede. Citamos ferramentas como: Proxy Firewall + Proxy (ProxyWall) IDS – Intrusion Detection System IPS – Intrusion Prevention System VPN Também conhecemos algumas ferramentas utlizadas pelos hackers como Sniffers, Escaneadores de Rede e ferramentas de Footprinting. Além disso, tratamos de aspectos de segurança física e lógica Esta semana iremos abordar uma única área da Segurança. A Criptografia. Ao final dessa semana você será capaz de: • Conhecer a finalidade da Criptografia; • Conhecer métodos de Criptografia; • Entender a estrutura de Chaves simétricas e assimétricas; • Conhecer a Esteganografia; • Entender a função hash; • Entender o que é Autoridade Certificadora, certificados e assinatura digital; • Saber Criptografar e Descriptografar arquivos e textos. • Conhecer e utilizar o PGP e o OpenPGP. Sempre Seguro! E... Boa leitura!
  4. 4. 6. 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. No sentido mais básico da palavra, criptografar tem a ver com embaralhar. Veja o exemplo abaixo: Imagine que eu queira enviar uma mensagem “secreta” para minha namorada, mas sei que o pai dela vai ver a mensagem, então a maneira mais primária de Criptografar uma mensagem é trocando algumas letras por outras ou ainda, por números. Veja o exemplo abaixo: “Oi meu amor, me encontre hoje às 6 horas em frente a padaria.” Se eu apenas fizer uma relação, trocando vogais por número, desta forma: Toda vez que aparecer a letra a vou trocar pelo número 1 Toda vez que aparecer a letra e vou trocar pelo número 2 Toda vez que aparecer a letra i vou trocar pelo número 3 Toda vez que aparecer a letra o vou trocar pelo número 4 Toda vez que aparecer a letra u vou trocar pelo número 5 Então a nossa chave será essa: a=1 e=2 i=3 o=4 u=5 A mensagem criptografada ficará assim: “4i m25 1m4r, m2 2nc4ntr2 h4j2 1s 6 h4r1s 2m fr2nt2 1 p1d1r31.” Só que para minha namorada entender, eu terei que enviar para ela minha chave de criptografia para que ele possa Descriptografar o texto e me encontrar - Mas como entregar a chave para a minha namorada sem que o pai dela veja???
  5. 5. Os termos corretos de toda essa mensagem secreta é: A Mensagem em Texto Puro (Plain text) “Oi meu amor, me encontre hoje as 6 horas em frente a padaria.” A Chave secreta de criptografia a=1 , e=2 , i=3 , o=4 , u=5 A Mensagem Criptografada ou Cifrada “4i m25 1m4r, m2 2nc4ntr2 h4j2 1s 6 h4r1s 2m fr2nt2 1 p1d1r31.” A Mensagem Descriptografada ou Decifrada em Texto Puro (Plain text) “Oi meu amor, me encontre hoje as 6 horas em frente a padaria.” Claro que isso é uma criptografia super simples e muito fácil de ser quebrada, mas é um bom exemplo para um encontro “Secreto”! Criptografia é a ciência e arte de escrever mensagens em forma cifrada ou em código. É parte de um campo de estudos que trata das comunicações secretas, usadas, dentre outras finalidades, para: • Autenticar a identidade de usuários; • Autenticar e proteger o sigilo de comunicações pessoais e de transações comerciais e bancárias; • Proteger a integridade de transferências eletrônicas de fundos. • Passar mensagens onde somente o emissor e o destinatário possam entender o conteúdo da mensagem; • Certificar que a mensagem não foi modificada em parte alguma do trajeto • Certificar que o remetente da mensagem é realmente autêntico. Uma mensagem codificada por um método de criptografia deve ser privada, ou seja, somente aquele que enviou e aquele que recebeu devem ter acesso ao conteúdo da mensagem. Além disso, uma mensagem deve poder ser assinada, ou seja, a pessoa que a recebeu deve poder verificar se o remetente é mesmo a pessoa que diz ser e ter a capacidade de identificar se uma mensagem pode ter sido modificada. Uma informação não-cifrada que é enviada de uma pessoa (ou organização) para outra é chamada de texto claro (plaintext). Cifragem é o processo de conversão de um texto claro para um código cifrado e decifragem é o processo contrário, de recuperar o texto original a partir de um texto cifrado.
  6. 6. Diffie e Hellman são dois pesquisadores que revolucionaram os sistemas de criptografia existentes até 1976, a partir do desenvolvimento de um sistema de criptografia de chave pública que foi aperfeiçoado por pesquisadores do MIT (Massachusetts Institute of Tecnology) e deu origem ao algoritmo RSA. Os métodos de criptografia atuais são seguros e eficientes e baseiam-se no uso de uma ou mais chaves. A chave é uma seqüência de caracteres, que pode conter letras, dígitos e símbolos (como uma senha), e que é convertida em um número, utilizado pelos métodos de criptografia para codificar e decodificar mensagens. Atualmente, os métodos criptográficos podem ser subdivididos em duas grandes categorias, de acordo com o tipo de chave utilizada: a criptografia de chave única e a criptografia de chave pública e privada. Termos relacionados à criptografia são Esteganografia, Esteganálise, Código, Criptoanálise e Criptologia. A Esteganografia é o estudo das técnicas de ocultação de mensagens dentro de outras, diferentemente da Criptografia, que a altera de forma a tornar seu significado original ininteligível. A Esteganografia não é considerada parte da Criptologia, apesar de muitas vezes ser estudada em contextos semelhantes e pelos mesmos pesquisadores. Um excelente exemplo de Esteganografia é esconder uma mensagem de texto dentro de uma imagem. 6.1. O que é criptografia de chave única? A criptografia de chave única utiliza a mesma chave tanto para codificar quanto para decodificar mensagens. Apesar deste método ser bastante eficiente em relação ao tempo de processamento, ou seja, o tempo gasto para codificar e decodificar mensagens, tem como principal desvantagem a necessidade de utilização de um meio seguro para que a chave possa ser compartilhada entre pessoas ou entidades que desejem trocar informações criptografadas. Conforme o exemplo dado no início deste capítulo: A Mensagem em Texto Puro (Plain text) “Oi meu amor, me encontre hoje as 6 horas em frente a padaria.” A Chave secreta de criptografia a=1 , e=2 , i=3 , o=4 , u=5 A Mensagem Criptografada ou Cifrada “4i m25 1m4r, m2 2nc4ntr2 h4j2 1s 6 h4r1s 2m fr2nt2 1 p1d1r31.” A Mensagem Descriptografada ou Decifrada em Texto Puro (Plain text) “Oi meu amor, me encontre hoje as 6 horas em frente a padaria.”
  7. 7. A chave é única e tanto eu como minha namorada teríamos que ter a mesma chave para Cifrar e Decifrar o texto. A figura abaixo ilustra outro exemplo. Note que a chave que Criptografa e Descriptografa é a mesma: Fonte: http://www.gta.ufrj.br 6.2. O que é criptografia de chaves pública e privada? A criptografia de chaves pública e privada utiliza duas chaves distintas, uma para codificar e outra para decodificar mensagens. Neste método cada pessoa ou entidade mantém duas chaves: uma pública, que pode ser divulgada livremente, e outra privada, que deve ser mantida em segredo pelo seu dono. As mensagens codificadas com a chave pública só podem ser decodificadas com a chave privada correspondente. Veja o exemplo, onde José e Maria querem se comunicar de maneira sigilosa. Então, eles terão que realizar os seguintes procedimentos: 1. José codifica uma mensagem utilizando a chave pública de Maria, que está disponível para o uso de qualquer pessoa; 2. Depois de criptografada, José envia a mensagem para Maria, através da Internet; 3. Maria recebe e decodifica a mensagem, utilizando sua chave privada, que é apenas de seu conhecimento;
  8. 8. 4. Se Maria quiser responder a mensagem, deverá realizar o mesmo procedimento, mas utilizando a chave pública de José. A figura abaixo ilustra outro exemplo. Note que a chave que Criptografa é diferente da chave que Descriptografa o texto: Fonte: http://www.gta.ufrj.br Apesar deste método ter o desempenho bem inferior em relação ao tempo de processamento, quando comparado ao método de criptografia de chave, apresenta como principal vantagem a livre distribuição de chaves públicas, não necessitando de um meio seguro para que chaves sejam combinadas antecipadamente. Além disso, pode ser utilizado na geração de assinaturas digitais. Saiba mais: O Termo Técnico mais conhecido para estrutura de Chaves Públicas de Chaves Privadas é PKI – Public Key Infrastructure. No Brasil, convencionou-se o termo ICP – Infra-estrutura de Chave Pública. Fim do boxe 6.3 Mas afinal, O que é de fato uma chave? Qual o formato dela? Bom, uma chave ou um par delas são arquivos que são gerados por algoritmos criptográficos que estão ligados entre si. O Que um arquivo criptografa o outro é capaz de Descriptografar. Este tópico visa a lhe familiarizar com o formato da chave. Na verdade você não vai entender nada, parecem seqüências de caracter aleatórias mas na verdade só parecem.
  9. 9. Veja abaixo como é um arquivo de Chave Privada: ssh-rsa: Encryption: none Comment: Chave-Privada-Teste Public-Lines: 4 AAAAB3NzaC1yc2EAAAABJQAAAIEAk5jXFkeE9sfX4V2UAVLGfWaDao1qUmPuRzaz v2JmOKhfoNgok10k1I3BZDxXi4/sk1cl1KmqSgs99vGyOBeIPITd9SKeLlwtROw1 cf90CJDyNbKrYlIgig9l5Z2IfnQj/bji9TzrjIlePrvPy2S/ZUOpQkcuqqulQwdP bvQAXtc= Private-Lines: 8 AAAAgFfCqWcxcad9vqGtQz8On4jVK4t2revMtzFDHsTSuVIe7MCAhtQpi4VNXjuZ gCl4K806vIxJNNIUhbVtHdwpqvKemEY3fhnpBa4KlWkj+JPNQIzE9UldGfYiaSGJ w9hVMskmk8G1rcI3hA9qE02on+CEMQa4OJVO3jaGaZgp2EItAAAAQQD6r9Mzwfza rslh1pC6V519aevHF8EqfNPo2SBe8Jnly+ElCNA7RV3IhrVvaq6UNTlbcOt2D9Xd 1wI4oOImnRr3AAAAQQCWuavXWZGQ3ahKBoHltInF+NGJDl/zyYDsrWnuK5uh9xAY yl8402gdp/sCuQLvIDJPt1cm7jbJKfxg/PWeSQMhAAAAQGTxgjFQWhZezdtqnMum dTevB8FDQyfe/3Txk0eL7bSvSnp21x/bpySxPTF9q5W9DMYWh///pln9OMt+VXXD n/c= Private-MAC: 44476a197d9616c0d7782ab01500efb1e77d7694 Agora a estrutura de uma Chave Pública: ---- BEGIN SSH2 PUBLIC KEY ---- Comment: Chave-Publica-Teste AAAAB3NzaC1yc2EAAAABJQAAAIEAk5jXFkeE9sfX4V2UAVLGfWaDao1qUmPuRzaz v2JmOKhfoNgok10k1I3BZDxXi4/sk1cl1KmqSgs99vGyOBeIPITd9SKeLlwtROw1 cf90CJDyNbKrYlIgig9l5Z2IfnQj/bji9TzrjIlePrvPy2S/ZUOpQkcuqqulQwdP bvQAXtc= ---- END SSH2 PUBLIC KEY ---- 6.4. O que HASH? Uma função hash é uma função (um cálculo) que quando aplicada gera para cada entrada uma saída única e exclusiva. Desta forma, uma pequena modificação em um arquivo, como a troca do valor de um bit, altera completamente o resultado da aplicação desta função. Muitos sites de downloads utilizam o recurso de HASH para verificar se o download que foi feito não foi corrompido ou alterado durante o caminho. Exemplo: Você quer baixar uma imagem de CD do Sistema Operacional Ubuntu Linux. Como são cerca de 700MB, poderá ter algum problema de bits errôneos. Então se faz um cálculo dessa imagem lá no site que irá ser um número semelhante a este: md5 Hash Version 3b5e9861910463374bb0d4ba9025bbb1 ubuntu-9.04-alternate-amd64.iso c564ae16dffb51a922aef74a07250473 ubuntu-9.04-alternate-i386.iso cace6ea9dde8dc158174e345aabe3fae ubuntu-9.04-desktop-amd64.iso 66fa77789c7b8ff63130e5d5a272d67b ubuntu-9.04-desktop-i386.iso 8f921e001aebc3e98e8e8e7d29ee1dd4 ubuntu-9.04-netbook-remix-i386.img 78cf52114804f80576b0bfc8f5984339 ubuntu-9.04-server-amd64.iso 20480057590ff8b80ad9094f40698030 ubuntu-9.04-server-i386.iso
  10. 10. Veja que cada imagem tem um HASH único. Depois de baixar, você deverá utilizar algum utilitário que gera o HASH do arquivo que você baixou. Então é só comparar o número que você gerou com o número da tabela acima. Caso este exatamente igual, a sua imagem do Ubuntu Linux está intacta e pode ser gravada em um CD para ser instalado. Caso o número não corresponda, você deverá apagar o arquivo baixado e fazer o download novamente. Dentro do escopo da infra-estrutura de chaves públicas, a aplicação de uma função hash é associada à obtenção de uma assinatura digital para uma dada mensagem, que pode ser utilizada posteriormente para verificar a integridade do conteúdo da mensagem. Dentre os algoritmos que implementam a função hash, podemos citar o Message Digest 5 (MD5), e o Secure Hash Algorithm (SHA1), este último desenvolvido pelo instituto americano de ciência e tecnologia. A figura abaixo, compara o hash com a impressão digital: Fonte: http://www.gta.ufrj.br 6.5. O que é assinatura digital? A assinatura digital consiste na criação de um código, através da utilização de uma chave privada, de modo que a pessoa ou entidade 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. Desta forma, é utilizado o método de criptografia de chaves pública e privada, mas em um processo inverso ao apresentado no exemplo da seção 6.3. Se José quiser enviar uma mensagem assinada para Maria, ele codificará a mensagem com sua chave privada. Neste processo será gerada uma assinatura
  11. 11. digital, que será adicionada à mensagem enviada para Maria. Ao receber a mensagem, Maria utilizará a chave pública de José para decodificar a mensagem. Neste processo será gerada uma segunda assinatura digital, que será comparada à primeira. Se as assinaturas forem idênticas, Maria terá certeza que o remetente da mensagem foi o José e que a mensagem não foi modificada. É importante ressaltar que a segurança do método baseia-se no fato de que a chave privada é conhecida apenas pelo seu dono. Também é importante ressaltar que o fato de assinar uma mensagem não significa gerar uma mensagem sigilosa. Para o exemplo anterior, se José quisesse assinar a mensagem e ter certeza de que apenas Maria teria acesso a seu conteúdo, seria preciso codificá-la com a chave pública de Maria, depois de assiná-la. Fonte: http://www.gta.ufrj.br Seqüência de uma assinatura de uma mensagem: 1 - O emissor gera um hash da mensagem;
  12. 12. 2 - Codifica este hash com sua chave privada; 3 - Combina esta assinatura digital com a mensagem e a envia; 4 - O receptor recebe a mensagem; 5 - e calcula o hash dela; 6 - Enquanto isso, ele utilize a chave pública do emissor para obter o hash contido na assinatura digital; 7 - O receptor compara os valores dos hashs. Caso os valores sejam idênticos o receptor pode inferir que a mensagem não foi modificada desde a emissão. Além disso, a mensagem realmente veio do emissor, pois só ele possui a chave privada que foi utilizada para assinar digitalmente a mensagem. E ao mesmo tempo, o emissor não pode negar que enviou a mensagem, afinal ele a assinou com sua chave privada. (Não repúdio) 6.6 Certificado Digital O certificado digital é um arquivo eletrônico que contém dados de uma pessoa ou instituição, utilizados para comprovar sua identidade. Este arquivo pode estar armazenado em um computador ou em outra mídia, como um token ou smart card. Exemplos semelhantes a um certificado digital são o CNPJ, RG, CPF e carteira de habilitação de uma pessoa. Cada um deles contém um conjunto de informações que identificam a instituição ou pessoa e a autoridade (para estes exemplos, órgãos públicos) que garante sua validade. Algumas das principais informações encontradas em um certificado digital são: • 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 e o período de validade do certificado; • A assinatura digital da AC. O objetivo da assinatura digital no certificado é indicar que outra entidade (a Autoridade Certificadora) garante a veracidade das informações nele contidas. Saiba mais: Token é um dispositivo eletrônico, geralmente ligado a porta USB do computador para ser usado como mais um passo de segurança. Por exemplo, você só loga no sistema caso o Token esteja conectado e usuário e senha sejam válidos. Existem outros tipos de Token como o modelo OTP (On Time Password), o qual gera uma nova senha numérica aleatória a cada 36 segundos ou segundo a programação previamente realizada, para ser utilizada como um fator de segurança adicional em transações financeiras realizadas pela Internet.
  13. 13. Exemplo de um Token USB Fonte: www.etokenusb.com.br/ Exemplo de um Token OTP utilizado em transações bancárias. Fonte: blogs.verisign.com Fim do boxe Smart Card: é um cartão que geralmente assemelha-se em forma e tamanho a um cartão de crédito convencional de plástico com tarja magnética. Além de ser usado em cartões bancários e de identificação pessoal, é encontrado também nos celulares GSM (o chip localizado normalmente atrás da bateria). A grande diferença é que ele possui capacidade de processamento pois, embute um microprocessador e memória (que armazena vários tipos de informação na forma eletrônica), ambos com sofisticados mecanismos de segurança. É cada vez maior o número de cartões de crédito que utilizam a tecnologia. Exemplo de um Smart card Fonte: http://www.gta.ufrj.br 6.7 O que é Autoridade Certificadora (AC)?
  14. 14. 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. As autoridades Certificadoras são reconhecidas no mundo inteiro e todo browser já trás instalado os seus certificados. 6.8 Que exemplos podem ser citados sobre o uso de certificados? Alguns exemplos típicos do uso de certificados digitais são: • Quando você acessa um site com conexão segura, como por exemplo o acesso a sua conta bancária 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; • Quando você consulta seu banco pela Internet, este tem que se assegurar de sua identidade antes de fornecer informações sobre a conta; • Quando você envia um e-mail importante, seu aplicativo de e-mail pode utilizar seu certificado para assinar digitalmente a mensagem, de modo a assegurar ao destinatário que o e-mail é seu e que não foi adulterado entre o envio e o recebimento. Para entender melhor, veja o acesso ao site do Unibanco. – http://www.unibanco.com.br
  15. 15. Veja o endereço na figura, é http://www.unibanco.com.br e por enquanto não há dados criptografados durante esta conexão. Fonte: Conteudista O Usuário entra com Agência e Conta corrente, e note que apareceu o endereço HTTPS:// ou seja, a partir deste ponto, o protocolo é o http Seguro, com dados criptografados. Além disso, note na barra inferior do lado direito que há um cadeado. Se você der um duplo clique neste cadeado, irá aparecer informações sobre esse certificado Fonte: Conteudista
  16. 16. Esta é uma tela informativa do certificado. Caso queira ver detalhes do certificado, clique em Exibir Certificado Fonte: Conteudista Detalhes do Certificado que a Verisgn deu ao Unibanco. Fonte: Conteudista
  17. 17. Há outra maneira de saber detalhes do Autoridade Certificadora, é Clicando com o mouse ao lado do HTTPS:// (na parte azul da barra de endereços) Fonte: Conteudista 6.9. Que exemplos podem ser citados sobre o uso de criptografia de chave única e de chaves pública e privada? Exemplos que combinam a utilização dos métodos de criptografia de chave única e de chaves pública e privada são as conexões seguras, estabelecidas entre o browser de um usuário e um site, em transações comerciais ou bancárias via Web. Estas conexões seguras via Web utilizam o método de criptografia de chave única, implementado pelo protocolo SSL (Secure Socket Layer). O browser do usuário precisa informar ao site qual será a chave única utilizada na conexão segura, antes de iniciar a transmissão de dados sigilosos. Para isto, o browser obtém a chave pública do certificado da instituição que mantém o site. Então, ele utiliza esta chave pública para codificar e enviar uma mensagem para o site, contendo a chave única a ser utilizada na conexão segura. O site utiliza sua chave privada para decodificar a mensagem e identificar a chave única que será utilizada. Esse método também é conhecido como Chave de Sessão. Todo browser tem instalado, os Certificados Digitais das Autoridades certificadoras do mundo inteiro. Para acessar e visualizar estes certificados faça os seguintes
  18. 18. passos: No Internet Explorer: Menu Ferramentas / Opções da Internet / Conteúdo / Certificados / Autoridades de Certificação Raiz Confiáveis. Tela de gerenciamento de Certificados Digitais do Internet Explorer. Fonte: Conteudista Se quiser ver o certificado, basta dar um duplo clique em uma das linhas Detalhes de um Certificado. Fonte: Conteudista No Firefox:
  19. 19. Menu Ferramentas / Opções / Avançado / Certificados Tela de gerenciamento de Certificados do Firefox Fonte: Conteudista A partir deste ponto, o browser do usuário e o site podem transmitir informações, de forma sigilosa e segura, através da utilização do método de criptografia de chave única. A chave única pode ser trocada em intervalos de tempo determinados, através da repetição dos procedimentos descritos anteriormente, aumentando assim o nível de segurança de todo o processo. Saiba Mais: SSL - TLS (em português: Protocolo de Camada de Sockets Segura) e o seu predecessor, Secure Sockets Layer - SSL, são protocolos criptográficos que provêem comunicação segura na Internet para serviços como email, navegação por páginas web e outros tipos de transferência de dados. Há algumas pequenas diferenças entre o SSL 3.0 e o TLS 1.0, mas o protocolo permanece substancialmente o mesmo. O termo SSL usado aqui aplica-se a ambos os protocolos. O protocolo SSL provê a privacidade e a integridade de dados entre duas aplicações que estejam se comunicando pela Internet. Isto ocorre através da autenticação das partes envolvidas e da criptografia dos dados transmitidos entre as partes. Esse protocolo ajuda a prevenir que intermediários entre as duas pontas da comunicação tenham acesso indevido ou falsifiquem os dados sendo transmitidos. Fim do boxe
  20. 20. 6.10. Que tamanho de chave deve ser utilizado? Os métodos de criptografia atualmente utilizados, e que apresentam bons níveis de segurança, são publicamente conhecidos e são seguros pela robustez de seus algoritmos e pelo tamanho das chaves que utilizam. Para que um atacante descubra uma chave ele precisa utilizar algum método de força bruta, ou seja, testar combinações de chaves até que a correta seja descoberta. Portanto, quanto maior for a chave, maior será o número de combinações a testar, inviabilizando assim a descoberta de uma chave em tempo hábil. Além disso, chaves podem ser trocadas regularmente, tornando os métodos de criptografia ainda mais seguros. Atualmente, para se obter um bom nível de segurança na utilização do método de criptografia de chave única, é aconselhável utilizar chaves de no mínimo 128 bits. E para o método de criptografia de chaves pública e privada é aconselhável utilizar chaves de 2048 bits, sendo o mínimo aceitável de 1024 bits. Dependendo dos fins para os quais os métodos criptográficos serão utilizados, deve-se considerar a utilização de chaves maiores: 256 ou 512 bits para chave única e 4096 ou 8192 bits para chaves pública e privada. Os algoritmos mais utilizados para geração de chaves públicas e privadas é o RSA e o DSA. Saiba mais: RSA - é um algoritmo de criptografia de dados, que deve o seu nome a três professores do Instituto MIT (fundadores da atual empresa RSA Data Security, Inc.), Ron Rivest, Adi Shamir e Len Adleman, que inventaram este algoritmo — até a presente data (2009), a mais bem sucedida implementação de sistemas de chaves assimétricas, e fundamenta-se em teorias clássicas dos números. É considerado dos mais seguros, já que mandou por terra todas as tentativas de quebrá-lo. Foi também o primeiro algoritmo a possibilitar criptografia e assinatura digital, e uma das grandes inovações em criptografia de chave pública. DSA - Digital Signature Algorithm é outra alternativa de gerência de PKI. Fim do boxe
  21. 21. 6.11 Como posso obter um certificado? Para obter um certificado legítimo e válido no mundo inteiro, você precisa se dirigir a uma Autoridade Certificadora como a Verisign - http://www.verisign.com.br/ e solicitar o seu certificado. Aqui no Brasil o Governo Federal está estimulando a todos a adquirirem seus certificados digitais para terem acesso a CNPJ digital “e- CNPJ” e CPF digital “e-CPF”. Vejam o texto abaixo retirado do site da Receita Federal: “Quem optar pelo documento eletrônico poderá, entre outras coisas, saber em qual lote receberá a restituição do IR e ainda resolver problemas de malha sem sair de casa ou do escritório. Um protocolo de cooperação assinado pela Receita Federal com o Banco do Brasil e o Instituto Nacional de Tecnologia da Informação (ITI) vai permitir que os contribuintes realizem, a partir do ano que vem, a maioria dos serviços fiscais e bancários no conforto de sua casa, escritório ou trabalho. Com o uso da certificação digital, os chamados e-CPF e do e-CNPJ, o contribuinte poderá, por exemplo, checar o andamento da declaração do Imposto de Renda – se o documento já foi processado, em qual lote está previsto o pagamento da restituição ou ainda se caiu na malha fina. O objetivo da Receita é popularizar o uso do CPF e do CNPJ eletrônicos. Atualmente, 30 mil contribuintes brasileiros, entre empresas e pessoas físicas, dispõem de acesso ao sistema da Receita via certificado digital. Em outras palavras, esses contribuintes podem realizar operações fiscais (cópia de declaração, retificação e comprovante de arrecadação, transações de comércio exterior, entre outras) sem sair de casa ou do escritório. De acordo com o vice-presidente de Tecnologia e Logística do Banco do Brasil, José Luiz de Cerqueira César, o custo da certificação digital – que hoje é de R$ 200,00 – deverá cair para algo entre R$ 40,00 e R$ 50,00. Vamos estudar ainda o parcelamento desses custos, além de financiamento para a empresa que solicitar mais de um certificado, acrescentou. O e-CPF e o e-CNPJ, nomes comerciais dados aos certificados digitais tipo A3, seguem as regras da Infra-Estrutura de Chaves Públicas Brasileiras (ICP) Brasil. O uso de certificados A3, em que a chave privada é gerada e armazenada em um cartão inteligente (smart card), permite a autenticação do usuário em serviços, operações e aplicações feitos via- rede.” Fonte:
  22. 22. http://www.receita.fazenda.gov.br/Imprensa/Notas/2004/dezembro/2112200 4.htm Procedimento de obtenção de um certificado. Fonte: http://www.gta.ufrj.br 1- Usuário se dirige a autoridade certificadora; 2- Usuário entrega uma requisição de certificado para a autoridade, repassa suas informações e se registra com a autoridade; 3- Autoridade verifica com sucesso a idoneidade do usuário; 4- Autoridade emite o certificado do usuário, de acordo com suas políticas e restrições e lhe entrega sua chave privada; 5- Usuário concorda com o certificado recebido e com a chave recebida; 6 – Usuário pode utilizar o certificado e a chave. Saiba mais: A ICP-Brasil (Infra Estrutura de Chaves Públicas Brasil) é estrutura hierárquica, que dá confiança à emissão de certificados digitais brasileiros. ICP, ou Infra-estrutura de Chaves Públicas, é a sigla no Brasil para PKI - Public Key Infrastructure -, um conjunto de técnicas, práticas e procedimentos elaborado para suportar um sistema criptográfico com base em certificados digitais. Desde julho de 2001, o Comitê Gestor da ICP-Brasil estabelece a política, os critérios e as normas para licenciamento de Autoridades Certificadoras (AC), Autoridades de Registro (AR) e demais prestadores de serviços de suporte em todos os níveis da cadeia de certificação, credenciando as respectivas empresas na emissão de certificados no meio digital brasileiro.
  23. 23. Fim do Boxe 6.12 PGP O PGP, do inglês Pretty Good Privacy (privacidade bastante boa), é um programa de computador que utiliza criptografia para proteger a privacidade do e- mail e dos arquivos guardados no computador do usuário. O PGP pode, ainda, ser utilizado como um sistema à prova de falsificações de assinaturas digitais permitindo, desta forma, a comprovação de que arquivos ou e-mails não foram modificados. Este programa foi escrito por Phill Zimmermann. Nos últimos anos o PGP conquistou milhares de entusiastas em todo o mundo e tornou-se de fato um padrão para a criptografia de correio eletrônico (email) na Internet. O PGP é uma solução completa para implementação de PKI. Fique de Olho: A Empresa líder em soluções PGP para é a PGP.COM, em seu site www.pgp.com é possível baixar versões de testes (Trial) do seu software onde é possível criar seu par de chaves, criptografar emails, arquivos, pastas e discos inteiros como HDs e Pendrives. Porém existem soluções gratuitas de altíssima qualidade como o Open PGP. Fim do Boxe 6.12.1 Open PGP O OpenPGP é um padrão aberto de criptografia baseado no PGP. Funciona através de chaves assimétricas, cada usuário gera em seu computador um par de chaves correspondentes: uma pública e uma secreta. A pública é distribuída livremente e permite que qualquer usuário criptografe dados de modo que só quem possui a chave secreta correspondente possa descriptografar. A chave secreta, além dessa capacidade de descriptografar, é capaz de assinar dados; quando algo é assinado com uma chave secreta, a chave pública correspondente pode verificar se o remetente é verdadeiro e se o conteúdo não foi adulterado depois de assinado. Além disso, o padrão OpenPGP conta com um sistema de cadeias de confiança: cada vez que um usuário obtém a chave pública de outro usuário, ao
  24. 24. se encontrar com ele pode verificar a impressão digital da chave obtida, garantindo certeza de que a chave é a verdadeira. Ao ter certeza de que a chave é verdadeira, o usuário pode assinar a chave pública do outro usuário com a sua chave privada, atestando a outros usuários que a chave realmente pertence a quem diz pertencer. RESUMO Criptografia é a arte de esconder informações em um meio comum para que somente o destinatário consiga decifrá-la. Diffie e Hellman são dois pesquisadores que revolucionaram os sistemas de criptografia existentes até 1976, a partir do desenvolvimento de um sistema de criptografia de chave pública que foi aperfeiçoado por pesquisadores do MIT (Massachusetts Institute of Tecnology) e deu origem ao algoritmo RSA. Atualmente, os métodos criptográficos podem ser subdivididos em duas grandes categorias, de acordo com o tipo de chave utilizada: a criptografia de chave única e a criptografia de chave pública e privada. A Esteganografia é uma técnica de esconder informações em imagens (fotos). A criptografia de chave única utiliza a mesma chave tanto para codificar quanto para decodificar mensagens. A criptografia de chaves pública e privada utiliza duas chaves distintas, uma para codificar e outra para decodificar mensagens. Neste método cada pessoa ou entidade mantém duas chaves: uma pública, que pode ser divulgada livremente, e outra privada, que deve ser mantida em segredo pelo seu dono. As mensagens codificadas com a chave pública só podem ser decodificadas com a chave privada correspondente. O Termo Técnico mais conhecido para estrutura de Chaves Públicas de Chaves Privadas é PKI – Public Key Infrastructure. No Brasil, convencionou-se o termo ICP – Infra-estrutura de Chave Pública. Uma função hash é uma função (um cálculo) que quando aplicada gera para cada entrada uma saída única e exclusiva. Desta forma, uma pequena modificação em um arquivo, como a troca do valor de um bit, altera completamente o resultado da aplicação desta função A assinatura digital consiste na criação de um código, através da utilização de uma chave privada, de modo que a pessoa ou entidade 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. O certificado digital é um arquivo eletrônico que contém dados de uma pessoa
  25. 25. ou instituição, utilizados para comprovar sua identidade. Este arquivo pode estar armazenado em um computador ou em outra mídia, como um token ou smart card. Exemplos semelhantes a um certificado digital são o CNPJ, RG, CPF e carteira de habilitação de uma pessoa. Cada um deles contém um conjunto de informações que identificam a instituição ou pessoa e a autoridade (para estes exemplos, órgãos públicos) que garante sua validade. Token é um dispositivo eletrônico, geralmente ligado a porta USB do computador para ser usado como mais um passo de segurança. Por exemplo, você só loga no sistema caso o Token esteja conectado e usuário e senha sejam válidos. Smart Card: é um cartão que geralmente assemelha-se em forma e tamanho a um cartão de crédito convencional de plástico com tarja magnética. Além de ser usado em cartões bancários e de identificação pessoal, é encontrado também nos celulares GSM (o chip localizado normalmente atrás da bateria). Autoridade Certificadora (AC) é a entidade responsável por emitir certificados digitais. Na criptografia de chave única existe uma chave chamada Chave de Sessão, que é obtida da seguinte forma: O site envia a sua chave pública para o cliente. O cliente criptografa com a chave pública uma chave gerada aleatóriamente e manda de volta para o órgão emissor. O órgão emissor descriptografa utilizando a sua chave privada. Esta chave resultante é chamada de Chave de Sessão. SSL - TLS (em português: Protocolo de Camada de Sockets Segura) e o seu predecessor, Secure Sockets Layer - SSL, são protocolos criptográficos que provêem comunicação segura na Internet para serviços como email, navegação por páginas web e outros tipos de transferência de dados. Os algoritmos mais utilizados para geração de chaves públicas e privadas é o RSA e o DSA. RSA - é um algoritmo de criptografia de dados, que deve o seu nome a três professores do Instituto MIT (fundadores da atual empresa RSA Data Security, Inc.), Ron Rivest, Adi Shamir e Len Adleman, que inventaram este algoritmo. Para obter um certificado, você deve se dirigir a uma Autoridade Certificadora como a Verisign. O Governo Federal do Brasil pretende em um futuro próximo apenas utilizar CPF digitais (e-CPF) e CNPJ digitais (e-CNPJ). O PGP, do inglês Pretty Good Privacy (privacidade bastante boa), é um programa de computador que utiliza criptografia para proteger a privacidade do e-mail e dos arquivos guardados no computador do usuário. Este programa foi escrito por Phill Zimmermann. Nos últimos anos o PGP
  26. 26. conquistou milhares de entusiastas em todo o mundo e tornou-se de fato um padrão para a criptografia de correio eletrônico (email) na Internet. O PGP é uma solução completa para implementação de PKI. O OpenPGP é um padrão aberto de criptografia baseado no PGP. Referências bibliográficas: Partes do Textos deste capítulo tem os seguintes créditos: “Texto extraído da Cartilha de Segurança para Internet, desenvolvida pelo CERT.br, mantido pelo NIC.br, com inteiro teor em http://cartilha.cert.br/” http://www.tjpe.gov.br/Boletim/N41/dicadahora01.htm http://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2008_2/hugo/contents.ht m http://www.receita.fazenda.gov.br/Imprensa/Notas/2004/dezembro/2112200 4.htm http://www.gta.ufrj.br/grad/07_2/thiago_castello/AplicaesdaEsteganografia.h tml http://icp-brasil.certisign.com.br/ http://www.gta.ufrj.br/grad/07_2/delio/Criptografiasimtrica.html http://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2008_2/hugo/Criptografia. html http://www.devaspnet.com.br/colunas2/coluna1406.aspx http://www.dca.fee.unicamp.br/pgp/windows.shtml

×