A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Criptografia e Segurança em Redes Capítulo 13

Apresentações semelhantes


Apresentação em tema: "Criptografia e Segurança em Redes Capítulo 13"— Transcrição da apresentação:

1 Criptografia e Segurança em Redes Capítulo 13
Quarta Edição William Stallings por Lawrie Brown Palestra por slides de Lawrie Brown para "Criptografia e Segurança em Redes“ de William Stallings, Capítulo 13 - "assinaturas digitais e protocolos de autenticação ".

2 Capítulo 13 – Assinaturas Digitais & Protocolos de Autenticação
 Proteger-se da prejudicial influência exercida por estranhos é uma prudência elementar do selvagem. Assim, antes que estranhos sejam autorizados a entrar num distrito, ou, pelo menos, antes de serem autorizados a misturarem-se livremente com os habitantes, muitas vezes determinadas cerimônias são realizadas pelos nativos do país a fim de desarmar os estranhos de seus poderes mágicos, ou de desinfecção, por assim dizer, da atmosfera contaminada pela qual eles estão supostamente cercados. -The Golden Bough, Sir James George Frazer Citação de abertura

3 Assinaturas Digitais analisa a autenticidade da mensagem
●mas não aborda questões de falta de confiança assinaturas digitais fornecem a capacidade para: ● verificar autor, data e hora da assinatura ● autenticar o conteúdo da mensagem ● pode ser verificada por terceiros, para resolver litígios daí a inclusão de autenticação funciona com capacidades adicionais  O mais importante no desenvolvimento dos trabalhos de criptografia de chaves públicas é a assinatura digital. A autenticação da mensagem protege as duas partes na troca de mensagens de quaisquer terceiros. No entanto, ela não protege as partes uns contra os outros. Uma assinatura digital é semelhante à assinatura manuscrita, e fornece um conjunto de capacidades de segurança que seria difícil de implementar em qualquer outra forma. Ela deve ter as seguintes propriedades: • É preciso verificar o autor a data e hora da assinatura • É preciso para autenticar o conteúdo no momento da assinatura • Devem ser verificáveis por terceiros, para resolver litígios Assim, a assinatura digital função inclui a autenticação funcionar.

4 Propiedades da Assinatura Digital
deve depender da mensagem assinada deve utilizar informações exclusivas do remetente ●tanto para evitar falsificações como negação deve ser relativamente fácil de produzir deve ser relativamente fácil de reconhecer e verificar deve ser computacionalmente impossível de forjar ●para uma nova mensagem ter a mesma assinatura digital existente ●forjar uma assinatura digital fraudulenta para determinada mensagem ser prática de guardar Com base nas propriedades sobre o slide anterior, podemos formular as exigências de uma assinatura digital conforme mostrado. Uma variedade de abordagens tem sido proposta para a função de assinatura digital. Estas abordagens podem ser classificadas em duas categorias: diretas e arbitrada.

5 Assinatura Digital Direta
envolvem apenas remetente e receptor assume que o receptor tem a chave pública do remetente assinatura digital feita pelo remetente assinando a mensagem inteira ou o hash com a sua chave privada pode criptografar usando receptores de chaves públicas importante que assine primeiro, em seguida, criptografe mensagem e assinatura segurança depende da chave privada do remetente Assinaturas Digitais Diretas envolvem a aplicação direta de algoritmos de chaves públicas que envolvem apenas as partes comunicantes. Uma assinatura digital pode ser formada pela criptografia de toda a mensagem com a chave privada do remetente, ou por criptografar um código hash da mensagem com a chave privada do remetente. Confidencialidade pode ser fornecida por criptografar a mensagem inteira acrescido de assinatura usando chave pública ou privada regimes. É importante a desempenhar a função primeira assinatura exterior confidencialidade e, em seguida, uma função, uma vez que em caso de litígio, algum terceiro deve ver a mensagem e sua assinatura. Mas estas abordagens são dependentes da segurança da chave privada do remetente. Terá problemas se for perdido / furtado e assinaturas falsificados. Precisa de tempo carimbos e oportuna chave revogação.

6 Assinatura Digital Arbritada
envolve uso de um árbitro valida qualquer mensagem assinada em seguida, é datada e enviada ao destinatário exige nível adequado de confiança no árbitro pode ser executada com chaves privadas ou algoritmos de chaves públicas árbitro pode ou não ver mensagem Os problemas relacionados com assinaturas digitais direta podem ser abordados através de um árbitro, em uma variedade de mecanismos possíveis, como mostrado na Tabela Stallings O árbitro desempenha um papel crucial e sensível a este tipo de regime, e de todas as partes devem ter uma grande dose de confiança que o mecanismo de arbitragem está a funcionar corretamente. Esses sistemas podem ser implementados com particulares ou algoritmos de chaves públicas, e o árbitro pode ou não ver a mensagem real conteúdo.

7 Protocolos de Autenticaçao
utilizados para convencer cada uma das partes na sessão de sua identidade e para a troca de chaves pode ser one-way ou mútua questões-chave: ●confidencialidade - para proteger as chaves de sessão ●timeliness - para evitar ataques de repetição em protocolos já publicados são frequentemente encontradas falhas e precisam ser modificados   Autenticação protocolos é usada para convencer outras partes de cada identidade e para a troca de chaves sessão. Podem-se uma forma ou de mútuo. Central para o problema da troca de chaves autenticadas são duas questões: a confidencialidade e a atualidade. Para prevenir e impedir a masquerade compromisso da sessão chaves de identificação e essencial sessão chave informação deve ser transmitido de forma criptografada. Isto implica a existência prévia de chaves secretas ou públicas que podem ser utilizados para esta finalidade. A segunda questão, a atualidade, é importante por causa da ameaça de mensagem repetições. Stallings discute uma série de protocolos que parecia segura, mas foram revistos após análise adicional. Estes exemplos mostram a dificuldade de obtenção de coisas na área de autenticação.

8 Ataques de Repetição sempre que uma mensagem com assinatura válida é copiada e depois reenviada ●simples replay ●repetição que pode ser conectado ●repetição que não pode ser detectado ●replay para trás, sem alteração contramedidas incluem ●utilização de números de sequência (geralmente impraticável) ●timestamps (necessidade de relógios sincronizados) ●desafio / resposta (usando única Nonce) Ataques de repetição são válidos quando uma mensagem assinada é copiada e depois reenviado. Essas repetições, na pior das hipóteses, poderia permitir que um adversário de compromisso ou uma chave de sessão com êxito personificar um outro partido. No mínimo, um bom replay pode perturbar as operações por apresentar partes com mensagens que parecem verdadeiros, mas não são. [GONG93] enumera os exemplos acima de ataques repetidos. Possíveis contramedidas incluem o uso de: • números de sequência (geralmente impraticável, pois preciso lembrar último número utilizado comunicar com cada parte) • timestamps (necessidades relógios sincronizados entre todas as partes envolvidas, o que pode ser problemático) • desafio / resposta (utilizando único, aleatório, Nonce imprevisível, mas não adequadas para conexão devido a pedidos handshake overhead)

9 Usando Encriptação Simétrica
como discutido anteriormente pode usar um dois-nível hierarquia de chaves geralmente com um Centro de Distribuição de Chaves de confiança (KDC) Cada uma partes tem sua própria chave mestra com KDC ●KDC gera chaves de sessão utilizadas para as ligações entre as partes e são utilizadas chaves mestre para distribui-las entre eles Uma criptografia simétrica com hierarquia de dois de níveis pode ser utilizada para proporcionar confidencialidade para a comunicação em um ambiente distribuído. Normalmente envolve a utilização de um centro de distribuição confiável chave (KDC). Cada uma das partes na rede compartilha uma chave mestra com o KDC. O KDC é responsável pela geração das chaves de sessão, e para a distribuição dessas chaves para as partes envolvidas, utilizando as chaves mestras para proteger estas chaves sessões.

10 Needham-Schroeder Protocol
Protocolo para distribuição de chaves de sessão entre A e B mediada pelo KDC O resumo do protocolo é: 1. A->KDC: IDA || IDB || N1 2. KDC -> A: EKa[Ks || IDB || N1 || EKb[Ks||IDA] ] 3. A -> B: EKb[Ks||IDA] 4. B -> A: EKs[N2] 5. A -> B: EKs[f(N2)] Needham-Schroeder O protocolo é o original, basicamente um protocolo de troca de chaves. Usado por 2 partes, que para tanto confiarem uma chave comum do servidor, ele dá uma quantidade de informações necessárias para estabelecer uma chave sessão com a outra parte. Note que, uma vez que a chave do servidor escolhe a chave de sessão, ele é capaz de ler/forjar quaisquer mensagens entre A & B, que é por isso que eles precisam de confiança absoluta! Note que toda a comunicação está entre A & KDC e A & B, B & KDC não fale diretamente (ainda que indiretamente, uma mensagem passa de KDC através de A para B, codificados em B da chave, de modo que A é incapaz de ler ou alterá-lo). Outra variação dos principais protocolos de distribuição pode envolver as comunicações diretas entre B & KDC.

11 Needham-Schroeder Protocol
utilizada para distribuir uma nova chave de sessão segura para as comunicações entre chave A e B mas é vulnerável a um ataque de repetição se uma velha chave de sessão estiver comprometida ●a mensagem pode ser então reenviada, convencendo B que está se comunicando com A para resolver este problema é sugeirido: ●timestamps (Denning 81) ●utilizar um Nonce extra (Neuman 93) Existe uma falha crítica no protocolo, como mostrado. Ela pode ser corrigida usando timestamps, ou um adicional Nonce, com as respectivas vantagens e limitações. Este exemplo salienta a necessidade de ser extremamente cuidadosos na codificação, pressupostos a atualidade e monitoramento do fluxo de informação nos protocolos. Projetando seguros protocolos não é fácil, e não deve ser feito de ânimo leve. É necessário muito cuidado e muita análise

12 Usando a Encriptação de chave Publica
existe uma gama de abordagens baseadas no uso de criptografia de chaves públicas necessidade de assegurar a correta utilização das chaves públicas por outras partes utilizando uma central Authentication Server (AS) existem vários protocolos usando timestamps ou nonces Existe uma série de abordagens baseadas no uso de criptografia de chaves públicas, onde geralmente se assume que cada uma das duas partes está de posse de uma chave pública do outro atualizada. O sistema central é conhecido como um servidor de autenticação (AS). Existem vários protocolos que usam timestamps ou nonces, mas novamente, falhas foram encontradas em uma série de propostas originais. Veja texto para maiores detalhes.

13 Denning AS Protocol Denning 81 apresenta o seguinte: A -> AS: IDA | | IDB AS -> A: EPRas [IDA | | PUa | | T] | | EPRas [IDB | | PUb | | T] A -> B: EPRas [IDA | | PUa | | T] | | EPRas [IDB | | PUb | | T] | | EPUB [EPRas [Ks | | T]] note que a chave de sessão é escolhida por A, por conseguinte, o AS não precisa ser necessariamente confiável para protegê-lo timestamps previnem a repetição, mas exigem relógios sincronizados Um protocolo usando timestamps é como o [DENN81] é mostrado acima. O servidor de autenticação central (AS) só fornece certificados de chaves públicas. A chave de sessão é encriptada e escolhida por A, daí, não há qualquer risco de exposição pela AS. O timestamps proteger contra repetições de chaves. Este protocolo é compacto, mas, como antes, requer sincronização de relógios.

14 Autenticação One-Way  necessária quando o remetente e o destinatário não estão em comunicação online (por exemplo, ) estando o cabeçalho de forma clara, pode ser entregue pelo sistema de pode requerer conteúdo do corpo protegidos & remetente autenticado Uma aplicação onde a encriptação que está crescendo em popularidade é o correio eletrônico ( ). A própria natureza do correio eletrônico, bem como a sua principal vantagem, que é não ser necessário que o remetente e o receptor estejam on-line ao mesmo tempo. Em vez disso, a mensagem de correio eletrônico é enviada para o receptor do correio eletrônico, onde é armazenada até que o receptor está disponível para lê-la. O "envelope" ou cabeçalho da mensagem de deve estar no modo claro que a mensagem pode ser tratada pelo armazenamento e envio pelo protocolo do . No entanto, muitas vezes, é desejável que a mensagem de correio eletrônico ser codificado tal que o sistema de tratamento de correio não está em posse da decriptografia chave. Um segundo requisito é o da autenticação, quando o beneficiário quiser alguma garantia de que a mensagem é a partir da suposta remetente. One-Way Autenticação endereços estes requisitos.

15 Usando Encriptação Simétrica
pode refinar o uso do KDC, mas não pode ter final do intercâmbio de nonces, em relação: A->KDC: IDA || IDB || N KDC -> A: EKa[Ks || IDB || N1 || EKb[Ks||IDA] ] 3. A -> B: EKb[Ks||IDA] || EKs[M] não protege contra as repetições ●poderia confiar no timestamps na mensagem, apesar de atrasos na entrega dos fazendo disto um problema Usar criptografia simétrica, com algum requinte, o KDC estratégia é um candidato para o correio eletrônico encriptado. Porque queremos evitar que a que exige que o destinatário esteja em linha, ao mesmo tempo em que o remetente, os passos 4 e 5 devem ser eliminados, deixando o protocolo como mostrado. Esta abordagem garante que apenas o destinatário de uma mensagem irá ser capaz de ler I, e também oferece um nível de autenticação que o remetente é A. Como especificado, o protocolo não proteger contra repetições. Você pode confiar na hora da mensagem, apesar de atrasos fazer esta problemática.

16 Abordagens com chaves Publicas
temos visto algumas abordagens com chaves públicas se a confidencialidade é a preocupação principal, pode-se usar: A-> B: EPUB [Ks] | | EKS [M] ●tendo codificado a chave de sessão, a mensagem será criptografada se autenticação necessitou usar uma assinatura digital com um certificado digital: A-> B: M | | EPRA [H (M)] | | EPRas [T | | IDA | | PUa] ●com a mensagem, assinatura, certificado Já apresentaram a encriptação de chave pública com abordagens que estão adaptadas ao correio eletrônico, incluindo a criptografia na frente de toda a mensagem para a confidencialidade, autenticação, ou ambos. Estas abordagens exigem que tanto o remetente conheça a chave pública do destinatário (confidencialidade) ou o destinatário conheça a chave pública do remetente (autenticação) ou ambos (confidencialidade acrescido autenticação). Além disso, o algoritmo de chave pública deve ser aplicado uma ou duas vezes para aquilo que pode ser uma mensagem longa. Se segredo é a principal preocupação, então, a mensagem pode ser codificado com uma chave secreta de one-way, que em seu turno, é criptografado com a chave pública do B. Para conseguir autenticação, e para validar os remetentes de chaves públicas, a assinatura pode ser criptografado com a chave pública do destinatário, e para garantia de uma chave pública é enviada em um certificado digital, como mostrado. Para obter o segredo tão bem, a mensagem pode ser codificada com uma chave de sessão, combinando as duas opções acima.

17 Digital Signature Standard (DSS)
Governo E.U. aprova o regime de assinatura Projetado pelo NIST e NSA no início da década de 90 publicado como FIPS-186 em 1991 revisado em 1993, 1996 e depois 2000 utiliza o algoritmo hash SHA DSS é um padrão, DSA é o algoritmo FIPS (2000) inclui alternativas RSA & variantes da assinatura utilizando curva elíptica ADS regime de assinatura aprovado pelo Gov. dos E.U., que se destina a proporcionar uma forte assinatura sem permitir fácil utilização para encriptação. A SAD faz uso do Secure Hash Algorithm (SHA), e apresenta uma nova técnica de assinatura digital, a Assinatura Digital Algoritmo (DSA). O DSS foi originalmente proposto em 1991 e revisto em 1993, em resposta ao público sobre a segurança do sistema. Houve ainda uma pequena revisão em Em 2000, uma versão expandida do padrão foi publicada como FIPS 186-2, que incorpora a assinatura digital, baseada em algoritmos RSA e em curva elíptica criptografia. ADS e os E.U. Gov. aprovado assinatura regime, que se destina um proporcionar uma forte assinatura sem permitir fácil utilização para encriptação. A SAD faz uso do Secure Hash Algorithm (SHA), e apresenta uma nova técnica de assinatura digital, uma Assinatura Digital Algorithm (DSA). O DSS foi originalmente proposto em 1991 e revisto em 1993, em resposta ao público informação sobre a segurança do sistema. Houve ainda uma pequena revisão em Em 2000, uma versão expandida do padrão foi publicada como FIPS 186-2, que incorpora uma assinatura digital, baseada em algoritmos RSA e em curva elíptica criptografia.

18 Digital Signature Algorithm (DSA)
320 bits Cria uma assinatura com bit com segurança menor e mais rápido do que o RSA um regime só de assinatura digital a segurança depende da dificuldade de calcular logaritmos discretos variante dos regimes ElGamal e Schnorr Vamos discutir o algoritmo original DSS. O esquema de assinatura DSA tem vantagens, sendo tanto menor (320 vs 1024bit) e mais rápido (uma grande parte do cálculo é feito um modulo número 160 bits), mais rápido que o RSA. Diferentemente do RSA, não pode ser utilizada para a encriptação ou para troca de chaves. No entanto, é uma técnica de chaves públicas. A DSA é baseada na dificuldade de calcular logaritmos discretos, e baseia-se sobre os regimes inicialmente apresentado pela ElGamal [ELGA85] e Schnorr [SCHN91].

19 Digital Signature Algorithm (DSA)
DSA difere da RSA no modo como a mensagem é gerada assinatura e validadas, como mostrado na figura Stallings Assinaturas RSA hash encriptar a mensagem com a chave privada para criar uma assinatura, que é, então, a ser verificada por descriptografado com a chave pública para comparar com um valor hash recriado. DSA assinaturas uso da mensagem hash, valores globais pública, chave privada & k aleatória para criar uma assinatura 2 parte (s, r). Isto é verificado por computação uma função hash da mensagem, a chave pública, r e s, e comparando o resultado com r. A prova de que esta obra é complexa, mas atinge os seus objetivos!

20 Geração da chave DSA ter chaves públicas compartilhadas (p, q, g): ●escolhe um grande primo com 2L-1 < p < 2L ●onde L = 512 a 1024 bits e é um múltiplo de ●escolhe q com 2159 <q < ●tal que q é um divisor de 160 bit prime (p-1) ●escolhe g = h(p-1)/q ●onde 1<h<p-1 e h(p-1)/q mod p > 1 usuario escolhe e calcula as chaves pública e privada: ●escolhe x <q ●calcula y = gx mod p ADS geralmente usa um conjunto de parâmetros mundiais (p, q, g) para uma comunidade de clientes, como mostrado. Em seguida, cada ADS utiliza uma chave privada x escolhida aleatoriamente e calcula sua chave pública, como mostrado. O cálculo da chave pública y dado x é relativamente simples. No entanto, dada a chave pública y, é computacionalmente impossível de determinar x, que é o logaritmo discreto de y na base g mod p.

21 Gerando a assinatura DSA
para assinar uma mensagem M do remetente ●gera uma chave de assinatura aleatória k, k <q ●nb. k deve ser aleatório, ser destruído após o uso, e nunca será reutilizado em seguida, calcula o par de assinaturas : ●r = (gk mod p) mod q ●s = [k-1 (H (M) + xr)] mod q envia as assinaturas (r, s) com a mensagem M Para criar uma assinatura, um usuário calcula dois valores, r e s, que são funções das componentes de chave pública (p, q, g), chave privada do usuário (x), o código hash da mensagem H (M), e um inteiro k adicionais que devem ser gerados aleatoriamente ou pseudo-aleatória e ser único para cada assinatura. Isto é semelhante às assinaturas ElGamal, com o uso de uma mensagem temporária por assinatura chave k, mas fazendo primeiro cálculos mod p, q, em seguida, mod para reduzir o tamanho do resultado. A assinatura (r, s) é então enviado com a mensagem para o destinatário. Note que apenas envolve computação r cálculo mod p e não depende da mensagem, por isso pode ser feito com antecedência. Do mesmo modo com aleatoriamente escolhendo k da computação e os seus inversos.

22 DSA Verificação da Assinatura
Tendo recebido M & assinatura (R, S) para verificar uma assinatura, receptor calcula: w = s-1 mod q u1= [H(M)w ]mod q u2= (rw)mod q v = [(gu1 yu2)mod p ]mod q Se v = r então assinatura é verificada ver web site para obter maiores detalhes do porquê Na extremidade de recepção, a verificação é realizada utilizando as fórmulas mostradas. O receptor gera um valor onde v é uma função das componentes da chave pública do remetente, bem como o hash da mensagem recebida. Se essa quantidade corresponde a R componente da assinatura, em seguida, a assinatura é validada. Note-se que a dificuldade de computação de logs discretos, motivo por que é inviável para um adversário recuperar k de r, ou x de s. Nota também que quase todos os cálculos são mod q, e, portanto é muito mais rápido salvar o último passo. A estrutura desta função é tal que o receptor possa recuperar r utilizando a mensagem recebida e a assinatura, a chave pública do usuário, e a chave publica. Não é tão evidente que tal sistema possa funcionar. A prova está disponível no site da Web do presente livro.

23 Summary  temas discutidos: assinaturas digitais autenticação de protocolos (mútuo & one- way) algoritmo de assinatura digital e padrão Sumario do Capitulo13


Carregar ppt "Criptografia e Segurança em Redes Capítulo 13"

Apresentações semelhantes


Anúncios Google