Confidencialidade usando Criptografia Simtrica Distribuio de Chaves Distribuio
Confidencialidade usando Criptografia Simétrica
Distribuição de Chaves
Distribuição de Chaves �Compartilhar a mesma chave. �Proteção da chave compartilhada. �Mudanças frequentes da chave compartilhada. �A força de qualquer sistema criptográfico está na técnica de distribuição de chaves. �Técnicas de Distribuir Chaves: meios de entregar uma chave a duas partes, A e B, querem trocar informações, sem permitir que outros a vejam.
Distribuição de Chaves �Uma rede pode ter centenas de hosts e milhares de usuários. �O slide anterior (Fig. 7. 7) mostra a magnitude da tarefa de distribuição de chaves para a criptografia simétrica de ponta-a-ponta. �Uma rede usando criptografia em nível de nodos com 1000 nodos, precisaria distribuir mais de meio milhão de chaves.
Distribuição de Chaves 1. A pode gerar uma chave e entregar, fisicamente, a B. 2. Um terceiro pode gerar a chave e entregar, fisicamente, a A e a B. 3. Se A e B tiverem usado uma chave prévia, e recentemente, uma parte pode transmitir uma nova chave criptografada à outra, usando a chave prévia. 4. Se A e B tiverem uma conexão criptografada com um terceiro C, C pode entregar uma chave a A e a B pelos enlaces (camada 2) de
Centro de Distribuição de Chaves CDC � Para a criptografia de ponta-a-ponta, de (4) um CDC pode ser utilizado. � Um CDC distribui chaves a pares de usuários. � Cada usuário pode precisa compartilhar uma chave exclusiva com o CDC, para fins de distribuição de chaves: uma Chave-Mestra. � O uso do CDC é baseado no uso de uma hierarquia de chaves.
Centro de Distribuição de Chaves CDC � Chave de Sessão – A comunicação entre os sistemas finais (ponto-a-ponto) é criptografada usando uma chave temporária, menciona da como Chave de Sessão. � Uma Chave de Sessão é usada numa conexão lógica e depois descartada. � Chaves de Sessão transmitidas em formato criptografado, usando uma Chave-Mestra, que é compartilhada entre o CDC e o usuário final.
Centro de Distribuição de Chaves CDC �Suponha que A precisa estabelecer uma conexão lógica com B. �A precisa de uma Chave de Sessão, Ks, para proteger a comunicação com B. �A tem um Chave-Mestra, Ka, conhecida apenas por A e o CDC. �B tem um Chave-Mestra, Kb, conhecida apenas por B e o CDC.
Centro de Distribuição de Chaves CDC 1. A emite um pedido ao CDC de uma Chave de Sessão para se comunicar com B. Mensagem: IDA, IDB, N 1 é um identificador exclusivo para esta comunicação. N 1 é chamado um nonce (data-hora, um contador, um número aleatório). N 1 tem o requisito mínimo de que ele seja diferente a cada solicitação, e que seja difícil para um oponente descobrir.
Centro de Distribuição de Chaves CDC 2. O CDC responde com uma mensagem criptografada usando Ka. A é o único que pode ler esta mensagem e sabe que esta foi originada no CDC: E( Ka, [Ks || IDA || IDB || N 1] ) || E( Kb, [Ks || IDA] ) Se A recebe o nonce N 1, ele pode combinar esta resposta (parte azul) com o pedido ao CDC em (1). E( Kb, [Ks || IDA] ) – esta parte, A deve enviar a B, para estabelecer a comunicação com B e provar sua IDA para B.
Centro de Distribuição de Chaves CDC 3. A armazena Ks para uso na próxima sessão e envia a B, a informação que se originou no CDC: E( Kb, [Ks || IDA] ) Esta mensagem é criptografada por Kb e assim, é protegida contra interceptação. B, agora, conhece a Chave de Sessão Ks, sabe que a outra parte é A, e sabe que a informação foi originada no CDC (por causa de Kb).
Centro de Distribuição de Chaves CDC 4. Usando a chave de sessão Ks, B envia um nonce N 2 para A. E( Ks, N 2 ) 5. Também usando Ks, A responde com f(N 2), uma função que transforma N 2, e a transformação é usada em resposta a B: E( Ks, f(N 2) ) As etapas 4 e 5 garantem a B, que a mensagem original que ele recebeu na (etapa 3), não é uma repetição.
Centro de Distribuição de Chaves CDC �Observe que a distribuição da chave de sessão, Ks, ocorre nas etapas 1, 2 e 3. �As etapas 4 e 5 realizam uma função de autenticação. �Chaves-mestras são protegidas, fisicamente, dentro do hardware criptográfico do CDC e dos sistemas finais de A e B. �Chaves de sessão, criptografadas com chavemestras, estão disponíveis aos programas de aplicação.
Controle de Chaves Descentralizado � O uso de um CDC impõe o requisito de que este CDC seja confiável e protegido contra subversão. � Outra alternativa que evita este requisito, se a distribuição for descentralizada. � Não prática para redes amplas, mas útil em contextos locais. � Exige que cada sistema final seja capaz de se comunicar, de maneira segura, com todos os sistemas finais parceiros em potencial, para fins de distribuir chaves de sessão. � Devem existir [(n*(n-1)]/2 chaves-mestras, para n sistemas finais.
Controle de Chaves Descentralizado �Uma chave de sessão pode ser estabelecida: 1. A emite uma solicitação a B, de uma chave de sessão Ks e emite um nonce N 1. 2. B responde com uma mensagem criptografada por uma chave-mestra Km, compartilhada com A. A resposta inclui uma chave de sessão selecionada por B, o identificador de B e um f(N 1) e um outro nonce N 2. 3. Usando a nova chave de sessão, Ks, A retorna
Controle de Chaves Descentralizado �Assim, embora cada sistema final deva manter no máximo (n-1) chaves-mestras, tantas chaves de sessão, quantas necessárias, podem ser geradas e usadas. �Como as mensagens em (2), usando Km, são curtas, a criptoanálise se torna difícil.
Criptografia com Cifras de Fluxo
� Uma cifra de fluxo típica criptografa o texto claro um byte de cada vez, ou mesmo unidades maiores do que um byte de cada vez. � Uma chave é inserida em um gerador de bytes pseudo-aleatórios, que produz um fluxo de números pseudo-aleatórios, um fluxo que é imprevisível sem o conhecimento da chave de entrada. � A saída do gerador é combinada um byte de cada vez com o fluxo de bytes do texto claro, usando-se a operação XOR bit a bit
XOR cifrando �Cifragem 1100 texto claro XOR 01101100 byte pseudo-aleatório _______________ 10100000 texto cifrado
XOR decifrando �Decifragem 10100000 texto cifrado XOR 01101100 byte pseudo-aleatório _____________ 1100 texto claro
Estrutura de uma Cifra de Fluxo
RC 4 �Cifra de fluxo, projetada em 1987. �Ron Rivest para a RSA Security. �Tamanho de chave K é variável de 8 bits à 2048 bits, ou seja, o tamanho da chave K é variável de 1 a 256 bytes. �RC 4 pode ser usado em SSL ou TLS, na comunicação entre navegadores e servidores Web. �Também usado no protocolo WEP (Wired Equivalent Privacy) e no WAP (Wi. Fi Protected Access), do padrão IEEE 802. 11 �É vulnerável a uma técnica de ataque (WEP).
- Slides: 27