1 / 20

Protocolos Básicos

Protocolos Básicos. Autenticação. Esquemas de autenticação São métodos através dos quais alguém pode provar sua identidade, sem revelar conhecimentos importantes e que possam ser usados de forma maliciosa no futuro. Protocolos Básicos. Autenticação usando Hash

meena
Download Presentation

Protocolos Básicos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Protocolos Básicos Autenticação

  2. Esquemas de autenticação São métodos através dos quais alguém pode provar sua identidade, sem revelar conhecimentos importantes e que possam ser usados de forma maliciosa no futuro.

  3. ProtocolosBásicos Autenticação usando Hash A → S : senha Alice envia sua senha para um servidor S. S : Hash (senha) S calcula o Hash da senha recebida. S : Compara com valor Hash da senha, previamente armazenado. A lista de hash de senhas é sem utilidade, porque uma função Hash não pode ter inversa para recuperar senhas.

  4. Ataque do Dicionário e Salt • Um arquivo de senhas cifrado com uma função Hashé ainda vulnerável. • Em seu tempo livre, Mallory gera 1000.000 de senhas mais comuns. Ele opera sobre todas 1000.000 destas com uma função Hash e armazena os hashes resultantes. • Se cada senha tem 8 bytes, o arquivo resultante será não mais do que 8 Megabytes.

  5. Ataque do Dicionário e Salt • Mas, se Mallory furta, em um host, um arquivo de senhas criptografadas (por Hash), ele compara esse arquivo com seu arquivo de senhas possíveis criptografadas, e vê o que corresponde. • Este é o ataque do dicionário que pode ser realizado. • Um salt é uma string aleatória, que dificulta este ataque. • Salts são concatenados com senhas, antes de serem operados com uma função Hash.

  6. Ataque do Dicionário e Salt • Então, ambos, o valor salt e o resultado da função Hashsão armazenados numa base de dados no host. • Se o número de valores salt é bastante grande, isto praticamente elimina o ataque do dicionário contra senhas usadas comumente, porque Mallory tem de gerar um hash para cada valor saltpossivel.

  7. Problemas de segurança • Mesmo com salt, o protocolo de autenticação usando hash tem problema de segurança: quando Alice envia sua senha à S, qualquer um que tenha acesso ao caminho dos dados de Alice, poderá ler sua senha. • A senha não pode ser lida antes de S calcular o hash dessa. • Criptografia de chave pública pode resolver este problema.

  8. Autenticação com chave compartilhada “K” entre A e B A → B : NA B→ A : NB || V = EK( NA || NB || IDB ) A : DK ( V ) == NA || NB || IDB A→ B : Q = EK( NB || IDA ) B : DK ( Q ) == NB || IDA

  9. Autenticação com chave compartilhada “K” entre A e B • Criptografia simétrica provê alguma autenticação. • Quando Bob recebe uma mensagem de Alice, criptografada com a chave compartilhada, Bob sabe que a mensagem veio de Alice.

  10. Autenticação com chave compartilhada “K” entre A e B • É assumido que ninguém mais conhece tal chave K. • Contudo, se existir uma terceira parte (Trent) conhecendo K, Bob não tem nenhum modo de convencer Trent. Bob não pode enviar a mensagem a Trent e convencê-lo de que veio de Alice. • Trent pode estar convencido de que a mensagem veio de Alice ou de Bob, e não tem nenhum modo para saber que veio de qual deles.

  11. Autenticação com criptografa de chave pública (1) S  A : N N é uma string aleatória • A  S : EKRA(N) || IDA • S procura a chave pública de Alice, KUA, correspondente à chave privada KRA , em sua base de dados de chaves públicas. • S decripta com essa chave pública DKUA(N) obtendo N. • Se N corresponde ao que S enviou à A (Alice) em (1), S permitirá que Alice acesse ao sistema.A : N == DKUA( EKRA( N ) ) ? Se ninguém mais tem acesso à chave privada de Alice, ninguém poderá se passar por Alice.

  12. Protocolos Básicos Autenticação e Troca de Chave

  13. Autenticação e Troca de Chave Estes protocolos combinam autenticação e troca de chave para resolver um problema geral: Alice e Bob estão nas extremidades opostas de uma rede e desejam se comunicar com segurança. Como pode Alice e Bob trocarem uma chave secreta e ter certeza que ele e ela estão falando entre eles, e não com o atacante Mallory? A maioria dos protocolosassumemque Trent compartilhaumadiferentechavesecreta com cadaparticipante, e quetodasessaschavesestão em algum lugar antes do protocolo iniciar.

  14. Autenticação arbitrada “T” : Wide-Mouth-FrogProtocol A → T : IDA || EKA ( TA || KS || IDB ) T → B : EKB ( TB || KS || IDA ) T é um servidor confiável. KAe KBsão chaves compartilhadas com T que só servem para distribuição e não para encriptar mensagens. TA e TB são rótulos de tempo

  15. Yahalom A → B : IDA || NA B → T : IDB || EKB ( IDA,NA,NB ) T → A : EKA ( IDB,KS,NA,NB) || EKB ( IDA,KS ) A → B : EKB ( IDA,KS ) || EKS ( NB ) B : DKB ( EKB ( IDA,KS ) ) DKS ( EKS (NB) ) A e B ficam convencidos que estão falando entre eles e não com uma terceira parte, o atacante Mallory.

  16. Needham-Schroeder A → T : IDA || IDB || NA T → A : [ EKA ( NA || IDB || KS ) || EKB ( KS || IDA ) ] (2) A → B : EKB ( KS,IDA ) B → A : EKS ( NB ) A → B : EKS ( NB -1 ) (5)

  17. Needham-Schroeder Protocol • Tudo em torno de NA , NB , NB-1 é evitar ataques de repetição. • Nestes ataques, Mallory pode registrar mensagens já transmitidas e então usá-las mais tarde em uma tentativa de subverter o protocolo.

  18. Needham-Schroeder Protocol • A presença de NA em (2) assegura a Alice que a mensagem de Trent é legítima e não uma repetição de uma resposta de uma execução prévia do protocolo. • Quando Alice decifra NB e envia (NB – 1) em (5), Bob é garantido que as mensagens de Alice não são repetições de execuções prévias do protocolo.

  19. Kerberos A → T: IDA, IDB T→ A : EKA ( t || L || KS || IDB ) || EKB ( t || L || KS || IDA ) A → B : EKS ( IDA, t ) || EKB ( t || L || KS || IDA ) B → A : EKS ( t+1 )

  20. Kerberos • Variante de Needham-Schroeder. Alice e Bob compartilhamchaves com Trent (KDC) • Alice desejagerarumachave de sessão para conversação com Bob. • O protocolo funciona, mas assume que todos os clocks estão sincronizados com o clock de Trent (KDC). • Na prática, o efeito é obtido por sincronizar cloks dentro de poucos minutos de um servidor de tempo seguro e detectar repetições dentro de um intervalo de tempo.

More Related