Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Criptografia e Segurança Informática: Notas do Prof. Ricardo Staciarini Puttini, Notas de estudo de Física

Documento contendo notas e explicações sobre criptografia e segurança informática, incluindo algoritmos de cifração simétrica e assimétrica, hash functions, e teorias básicas de números. O documento aborda conceitos como redundância da linguagem, autenticação de origem, criptoanálise, cifração de césar, des, rijndael, hash functions md2 e md5, hmac, e teorema de euler.

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 26/09/2010

marilton-rafael-1
marilton-rafael-1 🇧🇷

4.5

(6)

140 documentos

1 / 94

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
1
Criptografia
Prof. Ricardo S. Puttini, MSc
Departamento de Engenharia Elétrica
Universidade de Brasília
mai-04 Criptografia
Prof. Ricardo Staciarini Puttini
Conteúdo
Princípios de Teoria da Informação
Introdução aos Sistemas Criptográficos
Criptografia Simétrica
Criptografia Assimétrica
Funções de Condensação (Hash Functions)
Infra-estrutura de Chaves Públicas (ICP)
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e

Pré-visualização parcial do texto

Baixe Criptografia e Segurança Informática: Notas do Prof. Ricardo Staciarini Puttini e outras Notas de estudo em PDF para Física, somente na Docsity!

Criptografia

Prof. Ricardo S. Puttini, MSc

Departamento de Engenharia Elétrica Universidade de Brasília

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Conteúdo

  • Princípios de Teoria da Informação
  • Introdução aos Sistemas Criptográficos
  • Criptografia Simétrica
  • Criptografia Assimétrica
  • Funções de Condensação (Hash Functions)
  • Infra-estrutura de Chaves Públicas (ICP)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Princípios de Teoria da Informação

  • O problema da codificação consiste na busca de

formas eficientes de representação da informação:

  • Economia de símbolo utilizados (compressão);
  • Proteção contra erros (detecção/correção de erros);
  • Serviços de segurança da informação (criptografia).
  • Teoria da Informação: construção de modelos

matemáticos para linguagem.

  • Linguagem: conjunto de características da

informação que se deseja codificar.

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Quantidade de Informação

  • Teoria de Shannon (1948): modelo probabilístico para a

linguagem.

  • Quantidade de Informação

I(E) = - log 2 p (E)

  • A base 2 do logaritmo permite que a quantidade de

informação seja medida em bits

  • Exemplos:
    • E1 = “o sol nascerá amanhã”; p (E1) = 1 → I(E1) = 0
    • E2 = “ao lançar-se a moeda, obteve-se cara”; p (E2) = 0,5 → I(E2) = 1 (bit)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Entropia

  • Entropia conjunta de um vetor X = [A,B], onde A e B são v.a. assumindo um número finito de valores:
  • Note que:

ij

H X H AB p A ai B bj p A ai B bj

,

( ) ( , ) ( , )log 2 ( , )

H ( A , B )≤ H ( A )+ H ( B )

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Entropia

  • Dado duas v.a. X e Y, a incerteza acerca de X, dado que uma ocorrência particular de Y é conhecida pode ser expressa como:
  • Define-se entropia condicional, H(X/Y), ou equivocação de X dado Y por:
  • Assim, a entropia condicional representa a incerteza em relação a uma ocorrência de X, quando uma ocorrência de Y é conhecida.

i

H ( X / Y y ) p ( X Xi , Y y )log 2 p ( X Xi , Y y )

j

H ( X / Y ) H ( X / Y yj ) p ( Y yj )

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Propriedades da Entropia

( ) log ( ) log 2 ( ) 1

H X p 2 p n

n

i

= −∑ i i ≤

=

H Y X H X Y H X

H X Y H X Y H Y

III) Se X e Y são v.a. independentes:

H X Y H X H Y

H Y X H Y

H X Y H X

I)

II)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Informação Mútua

  • É a quantidade de informação que a ocorrência de um evento Y = y

fornece a respeito da ocorrência de um evento X = x:

  • O valor esperado de I(x,y) é definido como a informação mútua entre

X e Y:

  • Note que:

log ( ) [ log ( / )]

2 pX x 2 pX x Y y

I xy Ix Ix y

ij

I X Y p X xi Y yj I xi yj ,

I ( X , Y )= H ( X )+ H ( Y )− H ( X , Y )

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Distribuição de Probabilidades de 1-gramas em

Português

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Distribuição de Probabilidades de 2-gramas em Português (1/2)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Distribuição de Probabilidades de 2-gramas em Português (2/2)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Probabilidades de Transição para o Português, em % (1/2)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Entropia do Inglês (Shannon)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

  • Dada uma fonte sobre um alfabeto Zm e entropia

H , pode-se codificar textos produzidos por essa

fonte em um código compacto, onde um n-grama

típico pode ser codificado com λ(n) letras de Zm.

  • λ(n) é o comprimento médio dos códigos

necessário para representar um n-grama.

Entropia e Redundância de Fontes de Texto

m

nH n log 2

λ ( )=

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

  • Define-se redundância de uma fonte como a diferença

entre o número de símbolos utilizados em um n-grama, obviamente n, e o número médio mínimo de símbolos λ(n) que poderiam ser utilizados por uma codificação mais apropriada:

  • Estima-se normalmente que a redundância da língua

inglesa seja de, aproximadamente, 40%.

  • Shannon mostrou que, considerando-se efeitos mais

amplos, a entropia do inglês se reduziria a 1bit por letra, o que equivale a uma redundância de cerca de 75%.

Entropia e Redundância de Fontes de Texto

m

H R log 2

= 1 −

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Introdução aos Sistemas Criptográficos

  • Criptologia: estudo dos processos criptográficos.
  • Formada por duas disciplina:
    • Criptografia: como projetar e construir de sistemas criptográficos
    • Criptoanálise: como “quebrar” sistemas criptográficos.

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Modelo Estatístico de um Sistema Criptográfico

  • Uma mensagem (M) é um n-grama de um

alfabeto A

  • O processo de cifração de m gera um

criptograma (C), designado por c = E(M)

  • Claramente, deve haver D(C) = D (E(M)) = m
  • O processo de cifração pode ser visto como um

conjunto de transformações E ={En,1≤n<∞},

E n: Z mn^ → Z mn

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Modelo Estatístico de um Sistema Criptográfico

  • Sistemas Criptográficos
    • Família de transformações criptográficas E ={EK,K∈ K }, onde cada transformação é indexada por um parâmetro k, denominado chave criptográfica.
    • Composto de uma tripla ( M , K , C )
      • M : espaço das mensagens
      • K : espaço das chaves
      • C : espaço dos criptogramas

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Modelo Estatístico de um Sistema Criptográfico

M 1

M 2

M 3

Mn

C 1

C 2

C 3

Cn

EK

EK

EKn

cifração

decifração

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

  • Criptoanálise
    • Supõe-se sempre que o criptoanalista conhece
      • Algoritmo;
      • Linguagem do texto em claro;
      • Contexto das mensagens (algumas mensagens são conhecidas).
    • Ataques contra algoritmos criptográficos
      • Ataque com mensagem conhecida;
      • Ataque com mensagem escolhida;
      • Ataque com criptograma escolhido;
      • Ataque ao criptograma apenas.
    • Segurança do algoritmo criptográfico:
      • No mínimo, deve suportar ataques com mensagens conhecidas.
      • Em geral, deve suportar ataques com mensagens/criptograma escolhido.

Modelo Estatístico de um Sistema Criptográfico

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Modelo Estatístico de um Sistema Criptográfico

  • Dado um modelo estatístico para a linguagem que

será a fonte de mensagens, as distribuições de

probabilidade P(M) e P(K) permitem obter:

= ,; ( )

( ) ( ) ( ) M KCEKM

PC PMP K

= ; ( )

( , ) ( ) ( ) K CEKM

PMC PMP K

= ; ( )

( , ) ( ) ( ) M CEKM

PKC PMP K

P ( M , K )= P ( M ) P ( K )

( )

( , ) ( / ) PC

PMC P M C =

( )

( , ) ( / ) PC

PKC P K C =

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Modelo Estatístico de um Sistema Criptográfico

  • Função de Decisão: função que faça δ(C) = M, se

C = EK(M).

  • Esta função deverá maximizar p(M/C)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Modelo Estatístico de um Sistema Criptográfico

  • Ex1 - Cifra de César:

K=7, m = 27 M = TROPAS C = _YVWHZ

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Modelo Estatístico de um Sistema Criptográfico

  • Obs1: o processo não destrói as estatísticas de

n-gramas da linguagem do texto claro.

  • Obs2: o espaço de chaves é pequeno, tornando um

ataque por força bruta possível.

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Segredo Perfeito

  • Uma condição necessária a um sistema

criptográfico para ter segredo perfeito é que o

espaço de chaves seja pelo menos tão grande

quanto o espaço de mensagens

  • Um sistema com | K |=| M |=| C | tem segredo perfeito sss toda chave é usada com igual probabilidade, e para todo Mi∈ M e todo Cj∈ C existe um único K∈ K , tal que EK(Mi)= Cj
  • Ex: one-time pad

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Teorema da Equivocação da Chave

  • H(M,C,K) = H(C) + H(K|C) + H(M|C,K)
  • H(M,C,K) = H(K) + H(M|K) + H(C|M,K)

Mas, H(M|C,K) = H(C|M,K) = 0 e H(M|K) = H(M)

Assim:

H(K|C)=H(K)+H(M)-H(C)

  • Se H(K|C) = 0 => código quebrado.
  • Se H(K|C) > 0 => duas ou mais chaves podem ter sido utilizadas para produzir o criptograma.
  • As possíveis chaves extras são chamadas de espúrias.

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Chaves espúrias

  • Seja KC o conjunto de chaves para o qual existem

textos em claro que fazem sentido para a cifração C=EK(M)

  • O número esperado de chaves espúrias é:

s=∑C∈ C p(C)| KC |-

  • H(K|C)= ∑C∈ C p(C)H(K|C)
  • H(K|C)≤log 2 | KC |
  • Usando a desigualdade de Jensen temos
  • H(K|C)≤log 2 (s+1)

mai-04 Criptografia Prof. Ricardo Staciarini Puttini

Distância de Unicidade

  • A recuperação da mensagem a partir de um dado criptograma é deve ser função da quantidade de criptograma disponível para análise.
  • Para uma mensagem Mn de tamanho n (n-grama), e um criptograma Cn de tamanho n, tem-se: - H(K|Cn) = H(K) + H(Mn) - H(Cn); - H(M)≈nHL=n(1-RL)log 2 m, onde RL é a redundância da linguagem e HL é a entropia da linguagem (Hport≈2,209 bits/letra); - H(K) = log 2 |K| (chaves são identicamente distribuídas); - H(C)≤nlog 2 m;
  • Assim:
    • H(K|C) ≥ H(K) - nRLlog 2 m = log 2 |K| - nRLlog 2 m
    • s ≥ |K|/[m^(nRL)]-