criptografia

Upload: fhf019

Post on 03-Mar-2016

6 views

Category:

Documents


0 download

DESCRIPTION

slide de aula

TRANSCRIPT

  • Mecanismos de Segurana CRIPTOGRAFIA CERTIFICADOS DIGITAIS

  • Necessidade de assegurar a privacidade e a integridade dos dados em uma comunicao no segura; Utilizado inicialmente para fins militares;Criptografia - Conceitos

  • Premissas bsicasUma comunicao segura deve garantir: Privacidade dos dados trafegados (Confidencialidade); Integridade dos dados; Autenticao dos participantes; Comprovante de Transao ( Autoria garantida).

  • ESTEGANOGRAFIA

  • FORMAS DE ESTEGANOGRAFIA MARCAO DE CARACTERES: -uso de tinta com composto diferente visvel apenas com contraste da luzTINTA INVISVEL: - uso de tinta invisvel para escrever uma mensagem em cima da outra - tcnicas modernas - uso de bits no significativos para esconder algo

  • ESTEGANOGRAFIA X CRIPTOGRAFIA CRIPTOGRAFIA : mensagem visvel mas no entendvel

    ESTEGANOGRAFIA : mensagem invisvel, porm:- desvantagens :-grande esforo para esconder a mensagem- se a estratgia usada for descoberta, ela torna-se intil

  • Algoritmos Modernos de CriptografiaAlgoritmos conhecidos, divulgados, padronizados e bem testados, possivelmente uma funo matemtica;Utilizam-se de chaves secretas, e no de algoritmos secretos;

  • O algoritmo de criptografia recebe uma chave secreta e o texto limpo, produzindo assim o texto criptografado.Algoritmos Modernoscriptografiatexto limpochave secretatexto criptografado

  • Algoritmo de decriptografia recebe uma chave secreta (igual ou no primeira) e o texto criptografado, produzindo o texto original.Decriptografiadecriptografiatexto originalchave secretatexto criptografado

  • criptografiatexto limpochave secretatexto criptografadodecriptografiatexto originalchave secretatexto criptografadoCriptografia Simtrica

  • Criptografia SimtricaAlgoritmos de Chaves Simtricas utilizam somente uma chave secreta; Chaves simtricas possuem comprimento em geral de 64 a 128 bits; A chave secreta sorteada aleatoriamente; Quanto maior for a aleatoriedade da chave maior ser a sua segurana;

  • Desvantagens da criptografia simtrica: Todos os pontos que esto em comunicao precisam conhecer a chave secreta. Surge o problema do gerenciamento e distribuio das chaves; Criptografia Simtrica

  • Exemplos de algoritmos de chaves Simtricas mais conhecidos:DES, Triple DES, RC2, RC4 e RC5(Rivest Cipher), IDEA (International Data Encryption Algorithm).Exemplos de Algoritmos

  • ALGORITMOS DES : - CHAVE DE 56 BITS - PROBLEMA : TAMANHO REDUZIDO DA CHAVE - EXEMPLO DE USO : SSH(SECURE SHELL)IDEA: - CHAVE DE 128 BITS - EXEMPLO :PGP

  • criptografiatexto limpochave de criptografiadecriptografiatexto originalchave de decriptografiatexto criptografadotexto criptografadoCriptografia Assimtrica

  • Caractersticas:

    Possuem duas chaves secretas; Uma chave criptografa (chamada chave pblica) enquanto que a outra decriptografa (chamada chave privada), ou vice-versa.Criptografia Assimtrica

  • Caractersticas: Possui algoritmos assimtricos; Funes cuja inversa so de complexidade computacional elevada;Chaves assimtricas so muito mais longas (512 , 1024, 2048 bits);Possui mtodo de obteno prpria para as chaves (no aleatrio);Criptografia Assimtrica

  • Caractersticas: A obteno da chave privada secreta e ningum alm do dono precisa conhec-la; A chave pblica obtida a partir da chave privada; A chave pblica pode ser distribuda sem a necessidade de sigilo;Criptografia Assimtrica

  • Exemplos de algoritmos de chaves assimtricas ou de chaves pblicas: RSA (Rivest, Shamir, Adleman)KnapSack (Merkle, Hellman)RabinEl GamalExemplo de Algoritmos

  • Algoritmo RSAGerao de chaves:Selecione p e q ambos nmeros primos;Calcule n = p x q;Selecione um inteiro d, tal que: mdc(f(n),d) = 1; 1 < d < f(n);Calcule e, tal que e = d-1mod f(n);Chave Pblica KU = {e, n};Chave Privada KR = {d, n}.f(n) : nmero de inteiros positivos menores do que n e primos relativos a n,mdc: mximo divisor comum

  • Algoritmo RSASelecione dois nmeros primos: p = 7 e q = 17;Calcule n = pxq, n = 7x17 = 119;Calcule f(n) = f(119) = (p-1)(q-1) = 96;Selecione e, tal que seja primo relativo a 96 e menor que 96. Neste caso escolhemos e = 5;Determine d tal que, dxe=1mod 96 e d < 96. O valor calculado d = 77;Chave Pblica = {5, 119} e Chave Privada = {77, 119}.

  • Algoritmo RSASeja o texto limpo igual a M < n e o texto cifrado igual a C: Criptografia:C = Me (mod n) Decriptografia:M = Cd (mod n)

  • Exemplo RSACriptografiaDecriptografia19195=24760992476099/119=20807resto = 66666677=1.27x101401.27x10140/119=1.06x10138resto = 1919KU = {5, 119}KR = {77, 119}Chave PblicaChave PrivadaTextoCifradoTextoLimpoTextoLimpo

  • A segurana do algoritmo RSA apoia-se na dificuldade de fatorar nmeros primos extensos;A chave pblica e privada so resultados de um par de nmeros primos que possuem geralmente de 100 a 200 dgitos. Descobrir a chave privada a partir da chave pblica equivalente a fatorar o produto destes dois primos (de 512, 1024 e 2048 bits); Algoritmo RSA

  • Alice (A)Bob (B)textoApblicaBprivadaBtextoApblicaAprivadaAtextoBtextoBChaves AssimtricasKUBKRBKRAKUA

  • Chaves AssimtricasO que se criptografa com uma chave pblica somente pode ser entendido aps a decriptografia com a correspondente chave privada; Obtem-se ento o sigilo e a confidencialidade da informao transmitida, pois a chave privada conhecida somente pelo dono.

  • Chaves AssimtricasAlice (A)Bob (B)textoAPrivadaAPblicaAtextoAPrivadaBPblicaBtextoBtextoBKUBKUAKRAKRB

  • Chaves AssimtricasO que se criptografa com a chave privada de A pode ser entendido somente aps a decriptografia com a correspondente chave pblica de A;Como a chave privada de A s conhecida por A, este processo garante que quem enviou a mensagem que foi decriptografada com sucesso pela chave pblica de A, s pode ter sido o prprio A.

  • Falsa identificao :Se E fingisse ser A, B acreditaria ?E mandaria a sua chave pblica dizendo que era a de A !!!!Tcnicas de AutenticaoE fingindo ser AB e a chave pblica de E textoidentificadorprivadaEpblicaEtextoidentificador

  • Tcnicas de AutenticaoPara poder se fazer uma autenticao com segurana necessrio se introduzir um terceiro componente na comunicao que seja acreditado por ambas as partes; Esta terceira entidade conhecida como Entidade Certificadora.

  • Conceito de One Way Hash Functions:Descrio de one-way hash function :notao : h = H(M) fcil obter h em funo de M; extremamente complexo obter M em funo de h;Conceito de Message Digest :recebem entrada M de tamanho arbitrrio;produzem sada h de tamanho fixo;Tcnicas de Autenticao

  • Assinatura DigitalDada uma mensagem M de tamanho varivel, utiliza-se uma funo no inversvel do tipo Message Digest para se produzir um cdigo de tamanho fixo associado univocamente mensagem; Com a chave privada de quem deseja assinar a mensagem se faz a criptografia do cdigo gerado anteriormente;

  • Assinatura DigitalO resultado da criptografia do cdigo univocamente associado mensagem com a chave privada de quem est assinando, define o que se chama de assinatura digital; A assinatura digital passa a fazer parte da mensagem, dizendo-se ento que ela est assinada pelo proprietrio da chave privada utilizada no processo da assinatura.

  • Certificado de AutenticidadeCom o intuito de comprovar a autenticidade de uma dada chave pblica, definiu-se o que vem a ser um certificado digital; Hoje este tipo de documento padronizado pela ISO e conhecido como X.509, assim como os algoritmos pblicos de criptografia;

  • Certificado de AutenticidadeUm certificado assinado por uma entidade certificadora reconhecida serve para distribuir a chave pblica das entidades que participam de uma comunicao segura;A chave pblica de uma entidade certificadora deve ser conhecida por todas as partes envolvidas na comunicao (Por exemplo, os Browsers).

  • CERTIFICADO um documento com formato padronizado (X.509), legvel e que identifica um indivduo, equipamento ou entidade.

  • Campos PrincipaisNome da entidade certificada.Chave pblica da entidade certificada.Nome da entidade certificadora.Assinatura da entidade certificadora.Data de validade;Nmero de srie;etc.

  • FLUXO DE FUNES USANDO TCPFLUXO DE FUNES USANDO UDP

  • http://www.cardwerk.com/smartcards/smartcard_standard_ISO7816.aspxhttp://www.cardwerk.com/smartcards/smartcard_standard_ISO7816-3.aspxhttp://www.st.com/web/en/home.html

  • Assinatura DigitalCertificadoMD5CdigoMD5: algoritmo que associa um cdigo unvoco ao texto do certificado. Funo no inversvel.Message Digest

  • AssinaturaCdigoCriptografiaAssinaturaChave privada da entidade certificadora

  • Certificado AssinadoCertificadoAssinaturaColoca-se a assinatura gerada no campo correspondente do certificado.

  • Verificao da Integridade do CertificadoCertificado recebidoAssinaturaChave pblicaEnt. certificadaDecriptografiaChave pblica da entidade certificadoraMD5CdigoCdigoSe for igual o certificado ntegro

  • Como se garante que quem manda o certificado possui tambm a chave privada associada?

  • O protocolo SSL faz um dilogo (desafio) que verifica este fato.envia certificado{desafio} Kpub.do certificado{desafio}ABgera um nmero aleatrio: {desafio}Valor recebido deve ser o mesmo que o enviado

  • Protocolos de SeguranaCom o intuito de realizar uma comunicao segura entre duas ou mais partes, eUtilizando-se das tcnicas modernas de criptografia,Podem ser definidos protocolos de comunicao que implementam os mecanismos de segurana para defesa dos possveis ataques e ameaas.

  • Secure Socket Layer - SSLclient_hello, challengeconnection_id, server_helloMclient_master_keyMSCMSCserver_verifyS(challenge)client_verifyC(connection_id)server_finish(session_id)SKUSKRSCertificadoServidorClienteServidor

  • O protocolo de criptografia SSL implementado acima do protocolo de comunicao TCP/IP. Como resultado, herda as caractersticas de orientado a conexo, e transporte confivel. Orientado a conexo porque possui a fase de conexo (estabelecimento de um canal lgico na comunicao e sincronismo dos recursos); a fase de transferncia de dados e por fim a fase de desconexo. Transporte confivel porque os dados so entregues com confirmao e na ordem correta.Durante a conexo, o SSL realiza a autenticao e a troca de chave simtrica por criptografia assimtrica. Primeiro aberto uma conexo TCP/IP. A seguir, a iniciativa de iniciar a conexo segura parte do cliente (browser).O cliente envia ao servidor uma mensagem que chamamos client_hello. Nesta, enviada um identificador de incio do protocolo seguro, seguido de um challenge que ser utilizado posteriormente. Uma lista de algoritmos suportados pelo cliente tambm enviado.O servidor, por sua vez, envia uma mensagem server_hello, que contm o certificado assinado, e um identificador da conexo - connection_id. Com a lista de algoritmos que recebeu, o servidor seleciona aqueles que tambm suporta e devolve ao cliente; isto compatibiliza as diferentes plataformas e tecnologias encontrada em toda a Internet. Neste ponto os algoritmos que a conexo utilizar j esto definidos.Recebido o certificado, e por conseguinte a chave pblica, o cliente realiza o processo de autenticao. Autenticado com sucesso, sorteia aleatoriamente a chave simtrica - tambm chamada de chave de sesso.A chave de sesso encriptado pela chave pblica e enviada ao servidor na mensagem client_master_key.

    Neste meio tempo, o cliente gera duas novas chaves simtricas a partir da chave de sesso : a chave de escrita do servidor (server write key) e a chave de escrita do cliente (client write key). J o servidor, aps recebido a chave de sesso e decriptado, realizar o mesmo processo.A chave de escrita do servidor, como o prprio nome j diz, servir para o servidor encriptar suas mensagens ao cliente, enquanto que este utiliza a chave de escrita do cliente.

  • Neste ponto, realizado uma verificao do sincronismo entre estas duas chaves. Para autenticar a sua chave, o cliente encripta o texto connection_id recebido pela mensagem server_hello e devolve-o ao servidor - a fase client_verify. Este decripta e compara com o texto que enviou. O mesmo acontece com o servidor, que encripta o texto challenge recebido pela mensagem client_hello. O cliente ento decripta e tambm verifica se o texto recebido e enviado so idnticos - esta a fase server_verify.Se no houver nenhum erro nestes challenges, o servidor termina o processo de conexo enviando a mensagem server_finish, contendo um session_id, que ser utilizado para identificar aquela sesso.Para transmitir os dados, so utilizados os algoritmos simtricos com as respectivas chaves secretas, e autenticao dos dados com algoritmos MACs utilizando a respectiva chave de escrita.Para a desconexo, no h funo especial dentro do algoritmo, sendo utilizado a desconexo da prpria camada TCP/IP.A seguir esto relacionados alguns algoritmos suportados pelo SSL verso 2.0.Chave simtricas : DES-CBC; DES-EDE, RC4, RC4-export, RC2-CBC, RC2-CBC-export, e IDEA-CBC (a verso entitulada export tem somente 40 bits);Chave pblica : RSA;Autenticao : RSA + MD5;Algoritmos de Hash : MD2 e MD5;

  • FIM !!!

    *