lfg_2010-2_seg_1 criptografia e conceitos basicos
TRANSCRIPT
Curso de TI LFG Gleyson Azevedo
1
Segurança da Informação
Conceitos Básicos e Criptografia
Prof. M.Sc. Gleyson [email protected]
2
• Arquitetura de Segurança OSI
• Fundamentos de Criptografia
• Algoritmos Simétricos
• Algoritmos de Chave Pública
• Funções de Hash
• Assinatura Digital
• Criptoanálise
Roteiro
3
Arquitetura de Segurança OSI
Ataques MecanismosServiços
Passivos
Ativos
Confidencialidade
Integridade
Disponibilidade
Autenticação
Irretratabilidade
Controle de Acesso
Criptografia
Assinatura Digital
Protocolos de Autenticação
. . .
Arquitetura de Segurança OSI
4
Confidencialidade
• Proteção dos dados contra divulgação não autorizada.• Isto inclui:
• impressão;• divulgação;• até mesmo a existência de algum tipo de informação.
Serviços
Curso de TI LFG Gleyson Azevedo
2
5
• Propriedade de que os dados não foram alterados ou destruídos de modo não autorizado. • Modificação consiste em:
• escrita;• mudança;• mudança de status;• apagamento;• duplicação.
ServiçosIntegridade
6
ServiçosDisponibilidade
• Propriedade de ser acessível e utilizável sob demanda por uma entidade autorizada.
7
ServiçosAutenticação
• A garantia de que a entidade se comunicando é aquela que ela afirma ser.
8
ServiçosIrretratabilidade (Não Repúdio)
• Oferece proteção contra negação, por parte de uma das partes envolvidas em uma comunicação, de ter participado de toda ou parte dela.
Curso de TI LFG Gleyson Azevedo
3
9
ServiçosControle de Acesso
• O impedimento do uso não autorizado de um recurso.
• Autenticação por meio de:
• algo que temos;
• algo que sabemos;
• algo que somos.
10
• Não há um mecanismo único que garanta todos os serviços citados.
• Sempre haverá a necessidade da utilização de um conjunto de mecanismos para solucionar o problema proposto.
• Entretanto existe um elemento que serve como base para a maioria dos mecanismos de segurança que são: as técnicas de criptografia.
Serviços
11
• O que o uso da criptografia pode fazer?
• Fornecer o sigilo da informação.
• Garantir a autenticidade do remetente.
• Garantir, implicitamente, a autenticidade do destino.
• Garantir a integridade da informação.
Serviços Exercícios1. [43] (Analista de Sistemas – Engenharia de Software – PETROBRAS/2008 – CESGRANRIO) Os três princípios fundamentais aplicáveis à segurança da informação são:
(A) confidencialidade, integridade e privacidade.
(B) confidencialidade, não-repúdio e legitimidade.
(C) confidencialidade, integridade e disponibilidade.
(D) privacidade, disponibilidade e integridade.
(E) privacidade, integridade e legitimidade.
Curso de TI LFG Gleyson Azevedo
4
2. [55] (Analista de Sistemas Júnior –TERMOAÇU/2008 – CESGRANRIO) Os controles de acesso biométricos são usados considerando-se algumas características principais sobre os usuários, que são:
(A) função, onde trabalha e identificação.
(B) o que sabe, o que é e o que tem.
(C) o que sabe, o que faz e o que tem.
(D) o que sabe, o que conhece e onde trabalha.
(E) o que tem, o que sabe e o que pode fazer.
Exercícios3. [63](Analista em Ciências e Tecnologia Jr I –Análise de Sistemas – Informática – CAPES/2008 –CESGRANRIO) Uma autenticação é caracterizada como forte quando estão presentes 2 ou mais itens dos seguintes fatores:
(A) senha, integridade, disponibilidade.
(B) disponibilidade, confidencialidade, confiabilidade.
(C) onde você está, em quem você confia, integridade.
(D) o que você é, o que você sabe, o que você tem.
(E) o que você é, confiabilidade, em quem você confia.
Exercícios
4. [52] (Profissional Básico – Análise de Sistemas –Suporte – BNDES/2007 – CESGRANRIO) Qual opção apresenta um conjunto de métodos que caracteriza uma autenticação forte?
(A) Utilização de senha, dados pessoais aleatórios e PIN.
(B) Reconhecimento de retina e impressão digital.
(C) Uso de crachá magnético, chave física e crachá com código de barras.
(D) Reconhecimento facial e de íris.
(E) Reconhecimento de padrão de voz e utilização de senha.
Exercícios5. (Informática – Análise de Sistemas – Ministério das
Comunicações/2008 – CESPE) Acerca de segurança da informação, julgue os itens subsequentes.
1. [51] Disponibilidade, integridade e confidencialidade são princípios de segurança. A fim de garantir integridade, os dados e os recursos devem ser protegidos, evitando que sejam alterados de modo não-autorizado. Para garantir confidencialidade, os dados e os recursos devem ser protegidos, a fim de que os mesmos só sejam disponíveis aos indivíduos, programas ou processos autorizados.
Exercícios
Curso de TI LFG Gleyson Azevedo
5
Exercícios6. (Analista Judiciário – Análise de Sistemas – TRE-
PR/2009 – CESPE) A respeito de segurança da informação, julgue os próximos itens.
1. [88] A confidencialidade tem o objetivo de garantir que apenas pessoas autorizadas tenham acesso àinformação. Essa garantia deve ser obtida em todos os níveis, desde a geração da informação, passando pelos meios de transmissão, até chegar ao seu destino e ser devidamente armazenada ou, se necessário, destruída sem possibilidade de recuperação.
2 [89] O processo de proteção da informação contra modificações não autorizadas ou acidentais, conhecido como processo de irretratabilidade, garante a integridade da informação, mas não necessariamente garante que o seu conteúdo esteja correto.
7. (Analista Administrativo – Tecnologia da Informação – ANAC/2009 – CESPE) Julgue o item a seguir, a respeito de segurança da informação.
1 [111] Disponibilidade é a garantia de que a informação éacessível ou revelada somente a pessoas, entidades ou processos autorizados a acessá-la.
Exercícios
19
FONTE DAINFORMAÇÃO
DESTINO DAINFORMAÇÃO
Fluxo normal
Ataques
20
FONTE DAINFORMAÇÃO
DESTINO DAINFORMAÇÃO
AtaquesInterceptação
• Entidade não autorizada ganha acesso a um recurso. • Este é um ataque à confidencialidade.• Exemplos:
• grampos em linhas de comunicação;• análise de tráfego.
Curso de TI LFG Gleyson Azevedo
6
21
FONTE DAINFORMAÇÃO
DESTINO DAINFORMAÇÃO
AtaquesFabricação
• Uma pessoa não autorizada insere objetos no sistema. • Este é um ataque à autenticidade. • Exemplos:
• inserção de mensagens maliciosas na rede;• adição de registros em um arquivo.
22
FONTE DAINFORMAÇÃO
DESTINO DAINFORMAÇÃO
• Entidade não autorizada não somente ganha acesso, mas também adultera o bem. • Este é um ataque à integridade. • Exemplos:
• mudança de valores em um arquivo; • reordenação de mensagens para produzir efeito indesejado.
AtaquesModificação
23
FONTE DAINFORMAÇÃO
DESTINO DAINFORMAÇÃO
• Um recurso se torna indisponível. • Este é um ataque à disponibilidade.• Exemplos:
• destruição de uma peça de hardware como um disco rígido;• o corte de uma linha de comunicação.
AtaquesInterrupção 8. [65](Analista Judiciário – Análise de Sistemas
TJU-SE/2009 – FCC) Envolve a captura passiva de uma unidade de dados e sua subsequente retransmissão para produzir um efeito não autorizado, o ataque ativo de
(A) decriptografia.
(B) adição de chave de ciclo.
(C) integridade.
(D) negação de serviço.
(E) repetição.
Exercícios
Curso de TI LFG Gleyson Azevedo
7
25
• Específicos (podem oferecer algum(ns) dos serviços de segurança OSI):• cifragem;• assinatura digital;• troca de informação de autenticação;• preenchimento de tráfego;• controle de roteamento;• certificação digital.
Mecanismos
26
• Pervasivos (não são específicos a qualquer serviço de segurança OSI):• funcionalidade confiável;• rótulo de segurança;• detecção de evento;• registros de auditoria;• recuperação de segurança.
Mecanismos
27
• Criptologia = criptografia + criptoanálise
• Criptografia = arte ou ciência de manter mensagens seguras.
• Criptoanálise = arte ou ciência de quebrar textos cifrados
Fundamentos de Criptografia9. (Analista Suporte – PRODEPA/2004 – CESPE)
Acerca de segurança da informação, julgue o item seguinte.
1 [104] A criptologia é uma área do conhecimento humano que pode ser dividida em criptografia, que trata da defesa dos sistemas de informação, e esteganografia, que se preocupa na identificação de técnicas para o ataque a sistemas de informação.
Exercícios
Curso de TI LFG Gleyson Azevedo
8
29
• Criptografar (cifrar ou encriptar);
• Decriptografar (decifrar ou desencriptar);
• Algoritmo criptográfico;
• Chave criptográfica;
• Espaço de chaves.
Fundamentos de Criptografia
30
Algoritmos proprietários x Algoritmos públicos(sigilo do algoritmo e da chave) (sigilo da chave)
Vantagens:
O código foi avaliado por muitas pessoas tornado o algoritmo mais confiável.
Maior facilidade de padronização e produção por fabricantes diferentes.
Vantagens:
Mais difícil de realizar criptoanálise devido ao desconhecimento do algoritmo.
Todos conhecem o códigoPoucos conhecem o códigoAlgoritmos públicosAlgoritmos proprietários
Fundamentos de Criptografia
31
Algoritmos proprietários x Algoritmos públicos(sigilo do algoritmo e da chave) (sigilo da chave)
Desvantagens:No caso de descoberta de uma vulnerabilidade no algoritmo, imediatamente todos os usuários estão comprometidos.
Desvantagens:
Código avaliado por poucas pessoas – podem existir fragilidades não descobertas.
Pode ser feita engenharia reversa em produto que implemente o algoritmo e pode ser descoberto o código.
Algoritmos públicosAlgoritmos proprietários
Fundamentos de Criptografia10. (Técnico Judiciário – Apoio Especializado –
Programação de Sistemas – TRE-PR/2009 –CESPE) Julgue o item abaixo, relativo à segurança da informação.
1 [96] Na criptografia, os algoritmos de cifragem e decifragem são públicos, enquanto as chaves são secretas.
Exercícios
Curso de TI LFG Gleyson Azevedo
9
33
Elementos de um sistema criptográfico
Algoritmo de
Cifração
Algoritmo de
DecifraçãoTexto claro
Texto cifrado (criptograma)
Texto claro
Chave K1 Chave K2
Canal Inseguro
Canal SeguroOrigem Destino
• Problema importante: Distribuição da chave
Fundamentos de Criptografia
34
• A chave de cifração é igual à chave de decifração.
ou• A chave de cifração pode ser facilmente gerada a partir da chave de decifração e vice-versa.
cifração decifraçãotexto claro texto cifrado texto claro
chave K chave K
Sistemas Simétricos
35
• Sejam:
• Ek( ) a função cifração com a chave k;
• Dk( ) a função de decifração com a chave k;
• M o texto em claro e C o texto cifrado.
• Logo Ek(M)=C, Dk(C)=M e Dk(Ek(M))=M
cifração decifraçãotexto claro texto cifrado texto claro
chave K chave K
Sistemas Simétricos
36
• A chave de cifração é diferente da de decifração e uma não pode facilmente ser gerada somente a partir da outra.
• As duas são relacionadas matematicamente.
cifração decifraçãotexto claro texto cifrado texto claro
chave K1 chave K2
Sistemas de Chave Pública
Curso de TI LFG Gleyson Azevedo
10
37
• Sejam:• Ekx( )a função cifração com a chave kx;• Dkx( )a função de decifração com a chave kx;• M o texto em claro e C o texto cifrado.
• Logo:• Ek1(M)=C, Dk2(C)=M e Dk2(Ek1(M))=M • Ek2(M)=C, Dk1(C)=M e Dk1(Ek2(M))=M
cifração decifraçãotexto claro texto cifrado texto claro
chave K1 chave K2
Sistemas de Chave Pública11. [66](Analista Judiciário – Informática –TRF2R/2007 – FCC) São dois princípios fundamentais da criptografia, a
(A) Origem e a Criptoanálise.
(B) Conformidade e a Exatidão.
(C) Redundância e a Atualidade.
(D) Chave Pública e a Chave Privada.
(E) Criptoanálise e a Recorrência.
Exercícios
12. [44] (Analista de Sistemas – DETRAN-AC/2009 –CESGRANRIO) Roni deseja enviar uma mensagem confidencial (encriptada) ao seu colega de trabalho Luiz. Para obter essa propriedade, Roni deve utilizar a
(A) chave pública de Luiz.
(B) chave privada de Luiz.
(C) chave privada dos dois.
(D) sua própria chave privada.
(E) sua própria chave pública.
Exercícios13. [59](Analista de Sistemas Jr – Infraestrutura –PETROBRAS/2008 – CESGRANRIO) Eduardo assinou, utilizando criptografia assimétrica, uma mensagem M e a enviou a Paulo. Para verificação da autenticidade de M, é necessária a chave
(A) pública de Eduardo.
(B) pública de Paulo.
(C) privada de Eduardo.
(D) privada de Paulo.
(E) secreta de ambos.
Exercícios
Curso de TI LFG Gleyson Azevedo
11
14. (Analista Judiciário – Apoio Especializado – Análise de Sistemas – TRE-PR/2009 – CESPE) A respeito de criptografia assimétrica, julgue os itens a seguir.
1 [92] A figura a seguir mostra o uso da criptografia de chave pública para oferecer autenticação.
Exercícios Exercícios
2 [93] A figura a seguir ilustra o uso da criptografia de chave pública para garantir a confidencialidade das informações.
Exercícios15. (Analista Executivo em Metrologia e Qualidade –
Processos de Negócios e Tecnologia da Informação – INMETRO/2009 – CESPE) O Banco ABC disponibiliza seus serviços exclusivamente por meio da Internet, 24 horas por dia, e está sujeito a ataques aos seus sistemas, que podem ser realizados por meio da própria Internet. Como qualquer empresa do sistema financeiro, o banco está sujeito a leis que garantem o sigilo bancário de seus clientes. Além disso, precisa garantir que os dados das transações financeiras realizadas pelos seus clientes cheguem aos seus sistemas sem alterações. Acerca desse cenário hipotético, julgue os itens seguintes.
Exercícios
Curso de TI LFG Gleyson Azevedo
12
1. [41] O uso de senhas para efetuar a autenticação dos clientes do banco pode ser um mecanismo para garantir a confidencialidade necessária às transações financeiras do banco.
2. [42] Entre as necessidades de segurança do Banco ABC, a integridade e a confidencialidade são as que podem ser comprometidas pelos ataques efetuados por meio da Internet.
3. [43] A integridade das transações pode ser garantida por meio do uso de criptografia.
Exercícios16. (Analista Judiciário – Informática – STJ/2008 -
CESPE) Com relação aos sistemas criptográficos, julgue os itens subsequentes.
1. [113] Os sistemas de criptografia simétrica utilizam apenas uma chave, que é usada tanto para cifração quanto para decifração.
2. [114] Do ponto de vista do custo computacional, os sistemas assimétricos apresentam melhor desempenho que os sistemas simétricos.
3. [115] Os sistemas de criptografia assimétrica utilizam duas chaves: uma pública, que é usada para cifração; e uma privada, que é usada para decifração.
Exercícios
17. (Analista de Controle Externo – Tecnologia da Informação – TCU/2007 – CESPE) Com relação àcriptografia, julgue os itens a seguir.
1. [163] A segurança de um sistema criptográfico depende, entre outros fatores: do segredo da guarda da chave ou das chaves; da dificuldade em se adivinhar ou tentar uma a uma as possíveis chaves; da dificuldade de se inverter o algoritmo de cifração sem conhecimento da chave; da existência ou não de formas de uma mensagem cifrada ser decifrada sem conhecimento da chave; da possibilidade de se decifrar uma mensagem cifrada conhecendo-se apenas como parte dela édecifrada; da possibilidade de se conhecer e usar propriedades das mensagens em claro para decifrar mensagens cifradas.
Exercícios2. [164] Atualmente, os sistemas criptográficos utilizados
são incondicionalmente seguros por se basearem na dificuldade de resolução de problemas matemáticos específicos ou em limitações na tecnologia computacional vigente.
3. [165] Em geral, um sistema criptográfico impede que dados sejam deletados, ou que o programa que o implementa seja comprometido.
Exercícios
Curso de TI LFG Gleyson Azevedo
13
49
• Para uma dada entrada, é relativamente fácil calcular a saída da função, mas dada uma saída, é extremamente difícil calcular uma possível entrada desta função.
Funções unidirecionais (one way)
x
xx
xx
x
xx
xx
xx x
x
fácil
difícil
Funções Hash
50
• Isto é, dado x é fácil calcular f(x), mas dado f(x) é difícil calcular x.• Analogia com o dia a dia: quebra de um prato.
Funções HashFunções unidirecionais (one way)
x
xx
xx
x
xx
xx
xx x
x
fácil
difícil
51
• Função que recebe, como entrada, uma string de tamanho variável (chamada de pré-imagem) e a converte em uma string de saída de tamanho fixo, geralmente menor, chamada de valor hash (resumo ou valor condensado).
Funções de condensação (hash functions)
x
xx
xx
x
xx
xx
Funções Hash
52
• Exemplo:
• função que pega uma pré-imagem e retorna um byte que consiste no XOR de todos os bytes de entrada.
1001 1110 saída
0101 01101001 01010100 01100001 1011
entrada
Funções HashFunções de condensação (hash functions)
Curso de TI LFG Gleyson Azevedo
14
53
• Função hash unidirecional: é fácil calcular o valor hash de uma pré-imagem, mas é difícil calcular uma pré-imagem que dê como valor hash um valor previamente escolhido.
Funções de condensação unidirecionais(one-way hash functions)
x
xx
xx
x
xx
xx
difícil
Funções Hash
54
• Exemplo de aplicação: armazenamento de senhas.
Funções HashFunções de condensação unidirecionais
(one-way hash functions)
x
xx
xx
x
xx
xx
difícil
18. (Inspetor de Controle Externo – Tecnologia da Informação – TCE-RN/2009 – CESPE) Acerca dos protocolos criptográficos, julgue os itens que se seguem.
1. [89] Além da verificação de integridade dos criptogramas, uma maneira de aumentar a segurança do protocolo criptográfico é a utilização conjunta de códigos de autenticação de mensagem.
2. [90] A criptografia, tanto simétrica quanto assimétrica, proporciona sigilo, integridade, autenticidade e disponibilidade.
Exercícios
56
• Substituição• Monoalfabética
• Utiliza um alfabeto de substituição• Polialfabética
• Utiliza vários alfabetos de substituição
• Permutação ou transposição• Modifica a posição dos símbolos
Processos Básicos para Cifração
Curso de TI LFG Gleyson Azevedo
15
57
• DES• 3DES• AES• Modos de Operação
Algoritmos Simétricos
19. (Tecnologista Pleno – Segurança de Sistemas de Informação – MCT/2008 – CESPE) Considerando a figura acima, julgue os itens que se seguem, acerca de criptografia.
1 [108] O módulo E na figura corresponde a um algoritmo de encriptação ou codificação e o elemento Ke
corresponde à chave de encriptação ou codificação. Dessa forma, Ciphertext = E(Ke, Plaintext).
Exercícios
2. [109] Se a decodificação do Ciphertext corresponde a Plaintext = D(Kd, Ciphertext) e o módulo E corresponde a um algoritmo de encriptação, então a decodificação do Ciphertext com a chave Kd deve depender do secretismo de E ou D.
3. [110] Shannon identificou duas propriedades essenciais em um algoritmo criptográfico: a confusão, em que a relação entre o Plaintext e o Ciphertext se torna o mais complexa possível; e a difusão, em que se removem do Ciphertext as propriedades estatísticas do Plaintext.
Exercícios
60
• Algoritmo amplamente difundido e estudado.
• Originado a partir do Lucifer (IBM).
• Aprovado como padrão em 1977.
• Mensagem: 64 bits.
• Chave: 56 bits (64 mas 8 são de paridade).
• Mensagem cifrada: 64 bits.
Algoritmos Simétricos – DES
Curso de TI LFG Gleyson Azevedo
16
61
texto claro
IP
L0 R0
f
L1 R1
f
L2 R2
L15 R15
f
L16 R16
IP -1
texto cifrado
K1
K2
K16
DES
62
texto claro
IP
L0 R0
f
L1 R1
f
L2 R2
L15 R15
f
L16 R16
IP -1
texto cifrado
K1
K2
K16
DES
63
Permutação inicial (IP)
715233139475563513212937455361
31119273543515919172533414957
816243240485664614223038465462
412202836445260210182634425058
OU SEJA
31 2 64 5 97 8
b 1 b 2 b 3 b 4 b 5 b 6 b 7 b 8 b 9 b 64b 63b 62b 61
64636261
...
IP
31 2 64 5 97 8
b 58 b 50 b 42 b 34 b 26 b 18 b 10 b 2 b 60 b 7b 15b 23b 31
64636261
...
Algoritmos Simétricos – DES
64
texto claro
IP
L0 R0
f
L1 R1
f
L2 R2
L15 R15
f
L16 R16
IP -1
texto cifrado
K1
K2
K16
DES
Curso de TI LFG Gleyson Azevedo
17
65
Função FRi-1
Ki
permutação deExpansão
SubstituiçãoS-Box
PermutaçãoP-Box
48 bits48 bits
32 bits
32 bits
32 bits
DESDES
66
texto claro
IP
L0 R0
f
L1 R1
f
L2 R2
L15 R15
f
L16 R16
IP -1
texto cifrado
K1
K2
K16
Ri-1Ki
permutação deExpansão
SubstituiçãoS-Box
PermutaçãoP-Box
48 bits48 bits
32 bits
32 bits
32 bits
DESDES
67
Permutação de Expansão
13231302928292827262524
252423222120212019181716
1716151413121312111098
9876545432132
OU SEJA
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
32
48
DES
68
Ri-1Ki
permutação deExpansão
SubstituiçãoS-Box
PermutaçãoP-Box
48 bits48 bits
32 bits
32 bits
32 bits
texto claro
IP
L0 R0
f
L1 R1
f
L2 R2
L15 R15
f
L16 R16
IP -1
texto cifrado
K1
K2
K16
DES
Curso de TI LFG Gleyson Azevedo
18
69
Substituição S-Box
S-Box 1 S-Box 2 S-Box 3 S-Box 4 S-Box 5 S-Box 6 S-Box 7 S-Box 8
entrada de 48 bits
saída de 32 bits
DES
70
Ri-1Ki
permutação deExpansão
SubstituiçãoS-Box
PermutaçãoP-Box
48 bits48 bits
32 bits
32 bits
32 bits
S-Box 1 S-Box 2 S-Box 3 S-Box 4 S-Box 5 S-Box 6 S-Box 7 S-Box 8
entrada de 48 bits
saída de 32 bits
texto claro
IP
L0 R0
f
L1 R1
f
L2 R2
L15 R15
f
L16 R16
IP -1
texto cifrado
K1
K2
K16
DES
71
S-box1
13601014311571942812153
05103791215112613814142
83591112610113214471501
70951261038111521134140
1514131211109876543210
Dada a entrada na base 2:
ABCDEF
AF -> define a linhaBCDE -> define a coluna
Exemplo:
Entrada: 01001101-> linha 11001 -> coluna 9
Saída será 6 -> 0110
DES
72
S-box 2
9145012761124153110813
1523961285113410117140
5119610101214821574133
1050121327943116148115
S-box 31225113141547896013101
7141051221110315894613
1151112145821064390713
8241171213151536149010
S-box 41427121154981311060153
4825143115137111209610
9141011227430156511813
1541211582110960314137
DES
Curso de TI LFG Gleyson Azevedo
19
73
S-box 53541090156132141712811
1403651291587131011124
6893101505113741221114
9140131535861110714122
S-box 61380671141110155912234
6111311040731282515149
8311014131659127241510
1157144313086291510112
DES
74
S-box 7
1232141505971041813116
2950861510147312131141
6815212531410194711013
1610579123138015142114
S-box 81165309121513810471412
8531513106021412914117
2914011651247310813151
7120514391011115648213
DES
75
Ri-1Ki
permutação deExpansão
SubstituiçãoS-Box
PermutaçãoP-Box
48 bits48 bits
32 bits
32 bits
32 bits
texto claro
IP
L0 R0
f
L1 R1
f
L2 R2
L15 R15
f
L16 R16
IP -1
texto cifrado
K1
K2
K16
DES
76
Permutação P Box
OU SEJA
25411226301319932732142482
10311852623151172812292120716
31 2 64 5 97 8
b1 b2 b3 b4 b5 b6 b7 b8 b9 b32b31b30b29
32313029
...
PBox
31 2 64 5 97 8
b16 b7 b20 b21 b29 b12 b28 b17 b1 b25b4b11b22...
32313029
DES
Curso de TI LFG Gleyson Azevedo
20
77
texto claro
IP
L0 R0
f
L1 R1
f
L2 R2
L15 R15
f
L16 R16
IP -1
texto cifrado
K1
K2
K16
DES
78
Permutação final (IP-1)
OU SEJA
25571749941133265818501042234
275919511143335286020521244436
296121531345537306222541446638
316323551547739326424561648840
31 2 64 5 97 8
b1 b2 b3 b4 b5 b6 b7 b8 b9 b64b63b62b61...
IP-1
31 2 64 5 97 8
b40 b8 b48 b16 b56 b24 b64 b32 b39 b25b57b17b49
64636261
...
64636261
DES
79
Chave
permutedchoice 1
C0 D0
shift àesquerda
shift àesquerda
C1 D1
permutedchoice 2
K1
shift àesquerda
shift àesquerda
Cn Dn
permutedchoice 2
Kn=2,3,...,15
shift àesquerda
shift àesquerda
C16 D16
permutedchoice 2
K16
1,2,3, 64. . . . . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
Geração das chaves de round
116
215
214
213
212
211
210
19
28
27
26
25
24
23
12
11
Número de deslocamentos
Round
DES
80
Geração das chaves de round
Chave
permutedchoice 1
C0 D0
shift àesquerda
shift àesquerda
C1 D1
permutedchoice 2
K1
shift àesquerda
shift àesquerda
Cn Dn
permutedchoice 2
Kn=2,3,...,15
shift àesquerda
shift àesquerda
C16 D16
permutedchoice 2
K16
1,2,3, 64. . . . . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
DES
Curso de TI LFG Gleyson Azevedo
21
81
OU SEJA
Permuted Choice 1
4122028513212937455361614
223038465462715233139475563
36445260311192735435159210
18263442505819172533414957
31 2 64 5 97 8
b1 b2 b3 b4 b5 b6 b7 b8 b9 b64b63b62b61
64636261
...
Permuted Choice 1
b4b12b20b28
31 2 4 5 56555453
...b57 b49 b41 b33 b25
DES
82
Geração das chaves de round
Chave
permutedchoice 1
C0 D0
shift àesquerda
shift àesquerda
C1 D1
permutedchoice 2
K1
shift àesquerda
shift àesquerda
Cn Dn
permutedchoice 2
Kn=2,3,...,15
shift àesquerda
shift àesquerda
C16 D16
permutedchoice 2
K16
1,2,3, 64. . . . . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
1,2,3, 28. . . 1,2,3, 28. . .
DES
83
OU SEJA
Permuted Choice 2
322936504246533456394944
483345514030554737315241
21320277168264121923
10216152835124111714
31 2 64 5 97 8
b1 b2 b3 b4 b5 b6 b7 b8 b9 b56b55b54b53
56555453
...
Permuted Choice 2
b32b29b36b50
31 2 4 5 48474645
...b14 b17 b11 b24 b1
DES
84
• As caixas S (S-Boxes) foram definidas pela NSA (National Security Agency), órgão do governo americano, sem que se deixasse claro o porquê de tais escolhas.
• Depois de alguns anos descobriu-se que essas caixas S faziam com que as criptoanálises linear e diferencial não se tornassem ataques práticos.
DES
Curso de TI LFG Gleyson Azevedo
22
85
• Há pessoas que desconfiam que as caixas S imponham algum tipo de backdoor (porta dos fundos) no algoritmo do DES mas isto não ficou provado até hoje e não passa apenas de especulação.
• O tamanho de chave aplicado ao DES (56 bits) já foi quebrado por um ataque de força bruta em um tempo relativamente pequeno (22 horas e 15 minutos).
DES
86
• Em uma busca exaustiva da chave do DES, teríamos que, a princípio, testar as 256
possíveis chaves, mas o DES possui a seguinte característica:• seja uma chave K;• seja K’ a chave complemento bit a bit (ou
seja se a chave K=0110 então K’=1001 –trocam-se os 1’s por 0’s e vice-versa);
• então EK(P)=C e EK’(P)=C’, onde C’ é o complemento bit a bit de C.
DES
87
• Considere que temos um bloco cifrado e queremos realizar uma busca exaustiva da chave, ou seja, decifrar este bloco com todas as possíveis chaves e achar o texto em claro que fizesse sentido no contexto.
• Neste caso, não precisamos decifrar o bloco com todas as chaves, uma vez que, se decifrarmos com a chave K e acharmos o texto em claro P, logo, se decifrarmos com a chave K’ iremos achar o texto em claro P’.
DES
88
• Com isso, é necessário testar apenas 255
chaves e não 256.• O DES possui 4 chave fracas e 6 pares de
chaves semi-fracas, totalizando 16 chaves com problema. Apesar dessa vulnerabilidade, a utilização delas não é muito provável (probabilidade = 16/256 = 1/252).
DES
Curso de TI LFG Gleyson Azevedo
23
89
• Chaves fracas: são as que permitem que a cifração seja desfeita por ela mesma. Isso define uma involução na aplicação do processo de cifra e no DES é ocasionado quando ocorre o que é conhecido como “chaves palindrômicas”, que são chaves que geram as seguintes coincidências: sub-chaves K1 e K16 iguais; sub-chaves K2 e K15 iguais, e assim sucessivamente até K8 = K9.
DES
90
• Chaves semi-fracas: são pares de chaves onde uma desfaz o que é efetuado pela outra, ou seja, caso a chave K1 seja utilizada para cifrar, a chave K2 poderá ser utilizada para decifrar o que K1 cifrou, resultando no texto claro original.
DES
20. (Perito Criminal Federal – Computação Científica –PF-Nacional/2004 – CESPE) Acerca dos principais algoritmos criptográficos, julgue o item subseqüente
1 [104] O algoritmo criptográfico DES é uma cifra de substituição que mapeia um bloco de texto claro de 64 bits em um outro bloco de criptograma de 64 bits.
Exercícios21. (Perito Criminal Federal – Computação Científica –
PF-Regional/2004 – CESPE) A respeito das técnicas criptográficas e do seu emprego adequado, julgue o item a seguir
1 [112] O algoritmo DES (data encryption standard) efetua exatamente as mesmas operações durante o processo de cifração e o de decifração. A única diferença percebida entre os dois processos está na ordem de aplicação das chaves parciais (chaves de round).
Exercícios
Curso de TI LFG Gleyson Azevedo
24
Exercícios22. (Analista Judiciário – Apoio Especializado – Análise
de Sistemas – TRE-PR/2009 – CESPE) A figura acima ilustra o esquema geral para a criptografia DES (data encription standard), projetado para permitir que a decodificação seja feita com a mesma chave da codificação. Considerando essa figura, julgue o seguinte item.
1 [90] O DES é uma cifragem de bloco que utiliza uma chave de 56 bits para criar uma tabela de chaves. Ao utilizar tal tabela, o DES realiza manipulações de bits sobre o texto simples e, para decriptar o texto cifrado, simplesmente reverte tudo.
Exercícios
23. (Técnico Judiciário – Apoio Especializado –Programação de Sistemas – TRE-PR/2009 –CESPE) Julgue o item abaixo, relativo à segurança da informação.
1. [97] A técnica S-box realiza uma substituição no nível de bits e inclui três componentes: um codificador, um decodificador e, internamente, uma implementação da P-box. A P-box permuta a saída do decodificador e o codificador converte a saída da P-box de volta para código binário cifrado, com a mesma quantidade de bits encontrada na entrada do decodificador.
Exercícios
96
textoclaro
textocifrado
KA KB
cifrar cifrar
textoclaro
textocifrado
KB KA
decifrar decifrar
Exemplo: Double DES
Cifração Múltipla
Curso de TI LFG Gleyson Azevedo
25
97
MEET IN THE MIDDLE ATTACK
• Suponha que temos um texto em claro e o correspondente cifrado e queremos achar a chave usada na cifração.
• Inicialmente ciframos, com apenas o primeiro estágio, o texto em claro com todas as possíveis chaves e armazenamos o resultados em um vetor.
Cifração MúltiplaExemplo: Double DES
98
MEET IN THE MIDDLE ATTACK
• Depois deciframos o texto cifrado, com apenas o segundo estágio e para cada saída comparamos para ver se este valor aparece na tabela.
• Se fizermos isto para alguns textos em claro e os respectivos textos cifrados, conseguimos achar a chave.
Cifração MúltiplaExemplo: Double DES
99
textoclaro
textocifrado
K1 K2
cifrar decifrar
chavetestada
saída
K0
K1
K2
K264
-1
......
X0
X1
X2
X264
-1
???
Cifração MúltiplaExemplo: Double DES
100
• Logo a força efetiva do double DES é 256
devido ao ataque Meet in the middle e não 2112 como poderia se imaginar inicialmente.
Cifração MúltiplaExemplo: Double DES
Curso de TI LFG Gleyson Azevedo
26
101
textoclaro
KA KB
cifrar decifrartexto
cifradocifrar
textoclaro
KAKB
cifrar decifrartexto
cifradodecifrar
KA
KA
Exemplo: Triple DES com duas chaves
Cifração Múltipla
102
• A vantagem cifrar-decifrar-cifrar é que se colocarmos KA=KB, podemos usar o Triple DES como sendo o DES simples, ou seja, esta solução serve tanto para cifrar triple-DESquanto para cifrar DES.
• Força efetiva de 2112 e o ataque meet in themiddle não é útil neste caso.
Exemplo: Triple DES com duas chaves
Cifração Múltipla
103
textoclaro
KA KB
cifrar decifrartexto
cifrado
KC
cifrar
textoclaro
KAKB
cifrar decifrartexto
cifrado
KC
decifrar
Cifração MúltiplaExemplo: Triple DES com duas chaves
104
• A vantagem de cifrar-decifrar-cifrar é que se colocarmos KA=KB=KC, podemos usar o Triple DES como sendo o DES simples, ou seja, esta solução serve tanto para cifrar triple-DESquanto para cifrar DES.
• Força efetiva – devido ao ataque meet in themiddle – 2112 e não 2168 como poderia se imaginar inicialmente.
Cifração MúltiplaExemplo: Triple DES com duas chaves
Curso de TI LFG Gleyson Azevedo
27
24. (Analista de Controle Externo – Tecnologia da Informação – TCU/2008 - CESPE) Na rede de computadores de uma organização pública brasileira com diversos ativos, como, por exemplo, switches, roteadores, firewalls, estações de trabalho, hosts servidores de aplicação web, servidores de bancos de dados, é comum a ocorrência de ataques e de outros incidentes que comprometem a segurança de seus sistemas. Nessa organização, a definição de políticas e metodologias adequadas para se lidar com esse tipo de problema cabe ao departamento de TI. Julgue o item abaixo relativo à segurança da informação.
Exercícios1 [167] Se, na rede de computadores da organização
citada, para garantir maior confidencialidade na troca de dados entre duas de suas máquinas, seus administradores empregarem a técnica conhecida como cifra de transposição para cifrar determinado conjunto de mensagens, então, nessas duas máquinas, devem ser utilizadas chaves simétricas.
Exercícios
2 [168] Caso a rede de computadores dessa organização utilize o algoritmo DES (Data EncryptionStandard) e os administradores dessa rede decidam empregar a técnica conhecida como whitening, com o objetivo de reduzir as vulnerabilidades de um dos sistemas criptográficos empregados na rede, haveráum acréscimo de bits à chave criptográfica original, reduzindo as chances de sucesso de uma eventual criptoanálise desse sistema.
Exercícios3 [169] Se, para a troca de mensagens seguras na rede de
computadores da organização citada, seus vários dispositivos móveis empregarem sistemas baseados no algoritmo criptográfico 3DES (DES triplo) e os vários dispositivos não-móveis utilizarem sistemas baseados no algoritmo simples DES, a superação da diferença entre os algoritmos criptográficos empregados pelos sistemas de troca de mensagens seguras usados por dispositivos móveis e não-móveis dessa rede pode ser feita pelo administrador por meio da definição K1 = K2 = K3 = K, em que K1, K2 e K3 são as três chaves usadas no 3DES e K é a chave usada no simples DES e compartilhada entre dois dispositivos quaisquer das duas categorias mencionadas.
Exercícios
Curso de TI LFG Gleyson Azevedo
28
109
• O AES foi definido no FIPS PUB 197 (Federal Information Processing Standards Publication197) e padronizado em 2001.
• O algoritmo escolhido como AES foi selecionado dentre diversas cifras que foram submetidas para análise.
• A cifra escolhida foi o algoritmo RIJNDAEL, que originalmente trabalhava com blocos de 128, 192 ou 256 bits e chaves de 128, 192 ou 256 bits.
AES
110
• O AES possui:
• tamanho de bloco de 128 bits;
• tamanho da chave de 128, 192 ou 256 bits.
AES
111
in0
in15
in1
in2
in3
in4
in5
in6
in7
in8
in9
in10
in11
in12
in13
in14
s0,0
s3,3
s1,0
s2,0
s3,0
s0,1
s1,1
s2,1
s3,1
s0,2
s1,2
s2,2
s3,2
s0,3
s1,3
s2,3
out0
out15
out1
out2
out3
out4
out5
out6
out7
out8
out9
out10
out11
out12
out13
out14
bytes deentrada
vetor deestado
bytes desaída
Estado
AES
112
• Os bytes de entrada (in0in1in2 ... in14in15) são considerados como uma matriz e o algoritmo AES realiza operações sobre ela, gerando a matriz final.
• O bloco cifrado então é considerado como sendo a seqüência de bytes out0out1out2 ... out14out15.
AES
Curso de TI LFG Gleyson Azevedo
29
113
s0,0
s3,3
s1,0
s2,0
s3,0
s0,1
s1,1
s2,1
s3,1
s0,2
s1,2
s2,2
s3,2
s0,3
s1,3
s2,3
s0,0
s3,3
s1,0
s2,0
s3,0
s0,1
s1,1
s2,1
s3,1
s0,2
s1,2
s2,2
s3,2
s0,3
s1,3
s2,3
s0,0
s3,3
s1,0
s2,0
s3,0
s0,1
s1,1
s2,1
s3,1
s0,2
s1,2
s2,2
s3,2
s0,3
s1,3
s2,3
s0,0
s3,3
s1,0
s2,0
s3,0
s0,1
s1,1
s2,1
s3,1
s0,2
s1,2
s2,2
s3,2
s0,3
s1,3
s2,3
S-Box
1
2
3
ShiftRows() MixColumns()
s0,0
s3,3
s1,0
s2,0
s3,0
s0,1
s1,1
s2,1
s3,1
s0,2
s1,2
s2,2
s3,2
s0,3
s1,3
s2,3
AddRoundKey()
AES
114
• A quantidade de passos depende do tamanho de chave usada:
• 128 bits – 10 passos;
• 192 bits – 12 passos;
• 256 bits – 14 passos.
• No último passo não é executada a operação MixColumns e antes do primeiro passo éexecutada a operação AddRoundKey.
AES
25. [57](Analista de Informática – TCE-RO/2007 –CESGRANRIO) Que algoritmo de criptografia simétrica foi escolhido como padrão AES (AdvancedEncryption Standard)?
(A) RSA
(B) 3DES
(C) Rijndael
(D) Blowfish
(E) Diffie-Hellman
Exercícios26. (Técnico Científico – Banco da Amazônia/2006 -
CESPE) Acerca das ferramentas e técnicas que implementam a criptografia de dados, julgue os itens subseqüentes.
1 [116] O AES (Advanced Encryption Standard) é o atual padrão de cifração de dados do governo norte-americano. Seu algoritmo criptográfico cifra blocos de até 128 bits utilizando, para isso, chaves de 32 bits, 64 bits ou 128 bits.
Exercícios
Curso de TI LFG Gleyson Azevedo
30
27. (Perito Criminal Federal – Computação Científica –PF-Nacional/2004 - CESPE) Julgue o item abaixo.
1 [105] O DES e o seu sucessor como padrão de criptografia do governo norte-americano, o AES, são cifradores de bloco que obedecem o esquema geral de cifradores de Feistel. Nesses cifradores, os blocos cifrados são divididos em metades (lado esquerdo e lado direito) de mesmo tamanho, que são processadas independentemente, a cada rodada de cifração. Esse processo faz que apenas metade dos bits do bloco cifrado sofra influência da chave, em cada rodada, introduzindo confusão no processo criptográfico.
Exercícios28. (Perito Criminal Federal – Computação Científica –
PF-Regional/2004 - CESPE) julgue o item a seguir.
1 [113] O AES (advanced encryption standard) surgiu com o objetivo de substituir o DES. Um dos principais motivos dessa necessidade de modificação de padrões está no fato de o tamanho do espaço de chaves utilizadas pelo DES (264 possíveis chaves) não ser grande o suficiente, atualmente, para garantir proteção contra ataques do tipo busca por exaustão. O AES, com suas chaves de, no mínimo, 112 bits, aumentou tremendamente a resistência a esse tipo de ataque.
Exercícios
119
Electronic Codebook Mode (ECB)
EK EK EK
Pi-1 Pi Pi+1
Ci-1 Ci Ci+1
DK DK DK
Pi-1 Pi Pi+1
Ci-1 Ci Ci+1
cifração ECB decifração ECB
Modos de Operação
120
Electronic Codebook Mode (ECB)
• Vantagens:• pode-se cifrar ou decifrar qualquer bloco de forma independente dos demais;• ideal para cifrar arquivos que sãoacessados aleatoriamente;• pode-se acessar, cifrar ou decifrar qualquerbloco;• pode-se paralelizar a cifração, onde cada bloco é cifrado em um processador.
Modos de Operação
Curso de TI LFG Gleyson Azevedo
31
121
• Desvantagens:• blocos em claro iguais geram blocoscifrados iguais
Modos de OperaçãoElectronic Codebook Mode (ECB)
Figura em Claro Figura Cifrada Utilizando ECB
122
• Desvantagens:• ataque block replay.
1 2 3 4 5 6 7 8 9 10 11 12 13
data/horabanco
emissorbancodestino
nome de quem será feito o depósitoconta de quem será
feito o depósitovalor
número do bloco
campo
• Inicialmente transfiro dinheiro para minha conta e, grampeando a linha de comunicação do banco, consigo os blocos de 5 a 12 correspondentes ao meu nome cifrado.
Modos de OperaçãoElectronic Codebook Mode (ECB)
123
• Desvantagens:• ataque block replay.
1 2 3 4 5 6 7 8 9 10 11 12 13
data/horabanco
emissorbancodestino
nome de quem será feito o depósitoconta de quem será
feito o depósitovalor
número do bloco
campo
• Intercepto toda a comunicação do banco e substituo os blocos de 5 a 10 pelos blocos que consegui no item anterior. Todos os depósitos serão feitos na minha conta.
Modos de OperaçãoElectronic Codebook Mode (ECB)
124
• Propagação de falhas
• O erro em um bit (troca) no texto cifrado afeta 1 bloco do texto claro decifrado.
• 1 bit do texto cifrado é removido ouadicionado – o erro se propaga para todos os demais blocos em claro subsequentes.
Modos de OperaçãoElectronic Codebook Mode (ECB)
Curso de TI LFG Gleyson Azevedo
32
125
Cipher Block Chaining Mode (CBC)
EK EK EK
Pi-1 Pi Pi+1
Ci-1 Ci Ci+1
DK DK DK
Pi-1 Pi Pi+1
Ci-1 Ci Ci+1
cifração CBC decifração CBC
IV
IV
Modos de Operação
126
Cipher Block Chaining Mode (CBC)
• Vantagem
• Remove padrões do texto em claro.
• Desvantagem
• Não permite paralelização do processamento.
Modos de Operação
127
Figura em Claro Figura Cifrada Utilizando CBC
Modos de Operação
128
Cipher Block Chaining Mode (CBC)
• Vetor de inicialização IV
• Serve para que mensagens que começamiguais não gerem os mesmos textos cifrados.
• Não precisa ser secreto e pode ser enviado junto com a mensagem cifrada.
Modos de Operação
Curso de TI LFG Gleyson Azevedo
33
129
• Propagação de falhas
• Erro de 1 bit no texto cifrado – afeta 1 bloco e 1 bit do texto claro decifrado.
• 1 bit do texto cifrado é removido ouadicionado – o erro se propaga para todos os demais blocos em claro subsequentes.
Modos de OperaçãoCipher Block Chaining Mode (CBC)
130
Cipher Feedback Mode (CFB)
cifrarchave K
pi ci
cifração CFB
cifrarchave K
pi
decifração CFB
ci
Modos de Operação
131
Cipher Feedback Mode (CFB)
• Propagação de falhas
• Erro de 1 bit no texto cifrado – gera 1 bit + 8 bytes errados no texto claro decifrado(considerando o bloco de 8 bytes).
• 1 byte do texto cifrado é removido ouadicionado – erro se propaga para os 8 bytes seguintes, após, a decifração continua semerros.
Modos de Operação
132
Output Feedback Mode (OFB)
cifrarchave K
pi ci
cifração OFB
cifrarchave K
pi
decifração OFB
ci
Modos de Operação
Curso de TI LFG Gleyson Azevedo
34
133
• Propagação de falhas
• Erro de 1 bit no texto cifrado – gera 1 biterrado no texto claro decifrado.
• 1 bit do texto cifrado é removido ouadicionado – o erro se propaga em todos os blocos decifrados a partir deste erro.
Modos de OperaçãoOutput Feedback Mode (OFB)
134
cifrarchave K
pi ci
cifração Counter Mode
cifrarchave K
pi
decifração CounterMode
ci
contador (1,2,3,...) contador(1,2,3,...)
Modos de OperaçãoCounter Mode
135
• Vantagem em relação ao OFB
• Pode-se cifrar ou decifrar Pi sem ter que gerar toda a seqüência para cifração dos Pj(onde j<i) anteriores.
Modos de OperaçãoCounter Mode
136
• Propagação de falhas
• Erro de 1 bit no texto cifrado – gera 1 biterrado no texto claro decifrado.
• 1 bit do texto cifrado é removido ouadicionado – erro em todos os blocosdecifrados a partir deste erro.
Modos de OperaçãoCounter Mode
Curso de TI LFG Gleyson Azevedo
35
Exercícios29. (Analista Judiciário – Análise de Sistemas –
TST/2007 - CESPE) Cifras de bloco são criptossistemas simétricos que cifram uma mensagem de tamanho fixo em um criptograma do mesmo tamanho. Exemplos de cifras de bloco são o DES (Data Encryption Standard) e o AES (AdvancedEncryption Standard). Para cifrar textos em claro de tamanhos arbitrários, é necessário escolher um modo de operação da cifra de bloco. Com relação a cifras de bloco e seus modos de operação, julgue os itens subsequentes.
1 [117] O modo de operação ECB (Electronic Codebook) não é adequado quando o texto em claro possui baixa entropia.
Exercícios2 [118] Uma cifra de bloco com o modo de operação
CBC (Cipher Block Chaining) pode ser utilizada para construir um código de autenticação de mensagens (MAC).
3 [119] No modo CBC, é recomendável que seja escolhido um único vetor de inicialização para a cifração de diversas mensagens.
30. (Perito Criminal Federal – Computação Científica –PF-Regional/2004 - CESPE) Julgue o item a seguir.
1 [115] Para a utilização do modo de operação CBC (Cipher Block Chaning Mode), é necessário que seja criado o que se denomina vetor de inicialização (initialization vector), que evita que mensagens que comecem idênticas gerem criptogramas com começos idênticos. Um inconveniente desse modo de operação reside na questão da propagação de erros, pois, caso haja um bit errado em um bloco de criptograma a ser decifrado, todos os blocos a partir dali serão decriptografados de forma errada.
Exercícios Exercícios31. (Técnico Científico – Banco da Amazônia/2006 -
CESPE) Acerca das ferramentas e técnicas que implementam a criptografia de dados, julgue os itens subseqüentes.
1 [118] O modo de operação CBC é um dos mais utilizados para criptografar dados. Uma importante característica desse modo é o fato de se poder cifrar ou decifrar qualquer bloco de forma independente dos demais blocos, o que o torna ideal para cifrar arquivos que são acessados aleatoriamente.
Curso de TI LFG Gleyson Azevedo
36
Exercícios32. (Tecnologista – Classe Pleno I – ABIN/2004 –
CESPE) No referente a sistemas criptográficos, julgue os itens a seguir.
1 [56] Diversos modos de operação são definidos para cifradores de bloco. Entre eles, tem-se destacado ultimamente o modo contador, que permite implementações de alta velocidade por meio de paralelização e(ou) pré-processamento, mas que apresenta a desvantagem de ser menos seguro em relação a outros modos, pois o conhecimento do valor inicial do contador simplifica a determinação da chave utilizada.
142
cifração decifraçãotexto claro texto cifrado texto claro
chave K1 chave K2
Algoritmos de Chave Pública
143
• Publicado em 1978.
• Nome RSA provém das iniciais dos autores (Ron Rivest, Adi Shamir e Len Adleman).
• Baseado na dificuldade de fatorar um número inteiro grande.
• Amplamente difundido.
RSA
144
• Sejam dois números primos grandes p e q.• Calcule n = p.q.• Seja e escolhido randomicamente tal que e e
(p-1)(q-1) sejam primos entre si.• Calcule d tal que e.d ≡1 mod(p-1)(q-1).• Desta forma:
• e e n formam a chave pública;• d e n forma a chave privada.
Geração das chaves pública e privada
RSA
Curso de TI LFG Gleyson Azevedo
37
145
• Divida a mensagem em blocos numéricos menores que n.
• Seja mi o bloco de texto claro que se deseja cifrar.
• Seja ci o bloco de texto cifrado correspondente a mi .
• ci é calculado da seguinte forma:
ci = mie mod n
Cifração
RSA
146
• Seja ci o bloco de texto cifrado que se deseja decifrar.
• Seja mi o bloco de texto claro correspondente a ci .
• mi é calculado da seguinte forma:mi = ci
d mod n
RSADecifração
Exercícios33. (Técnico Científico – Banco da Amazônia/2006 -
CESPE) Julgue o item abaixo.
1 [117] Um dos mais utilizados algoritmos de criptografia é o RSA, que se baseia na dificuldade de fatoração de números primos grandes e utiliza, por ser um algoritmo de ciframento assimétrico, um par de chaves (pública e privada) para cada usuário.
Exercícios34. (Técnico Judiciário – Apoio Especializado –
Programação de Sistemas – TRE-PR/2009 –CESPE) Julgue o item abaixo.
1 [98] No método RSA, a chave de decodificação consiste em um par de inteiros (n, e) em que n é o produto de dois inteiros quaisquer, não primos, e e étal que mdc(e, F(n)) = 1, em que F é a função de Euler.
Curso de TI LFG Gleyson Azevedo
38
Exercícios35. (Perito Criminal Federal – Computação Científica –
PF-Nacional/2004 - CESPE) Julgue o item abaixo.
1 [103] Cada uma das chaves pública e privada de um criptossistema RSA são formadas por dois números inteiros denominados expoente e módulo, ambos devendo ser números primos.
Exercícios36. (Perito Criminal Federal – Computação Científica –
PF-Regional/2004 - CESPE) A respeito das técnicas criptográficas e do seu emprego adequado, julgue o item a seguir.
1 [114] O algoritmo de criptografia assimétrica RSA (Rivest, Shamir e Adleman) tem sua segurança fundamentada na dificuldade de se fatorar números inteiros muito grandes. Além de ser utilizado para criptografar mensagens a serem enviadas por canais inseguros de comunicação, o RSA também pode ser aplicado na criptografia de chaves simétricas que são utilizadas na criptografia simétrica de mensagens.
Exercícios37. (Analista Judiciário – Informática – STJ/2008 -
CESPE) Com relação aos sistemas criptográficos, julgue os itens subsequentes.
1. [111] O sistema RSA é seguro contra ataques adaptativos de texto cifrado escolhido.
2. [112] O esquema OAEP apresenta segurança demonstrável no caso em que utiliza o RSA, devido às propriedades deste último.
Exercícios38. (Analista Judiciário – Análise de Sistemas –
TST/2007 - CESPE) Com relação a criptossistemasde chave-pública, julgue os itens a seguir.
1 [115] Criptossistemas simétricos possuem menor complexidade computacional do que criptossistemasassimétricos.
2 [116] O criptossistema RSA é seguro caso o problema da fatoração de números inteiros seja intratável, ou seja, não exista um algoritmo de fatoração de tempo polinomial.
Curso de TI LFG Gleyson Azevedo
39
153
• É computacionalmente inviável:
• encontrar uma mensagem que corresponda a uma determinada MD (Message Digest);
• dada uma mensagem, encontrar uma mensagem alternativa que gere a mesma MD;
• encontrar duas mensagens diferentes que produzam a mesma MD.
Funções de Hash UnidirecionaisRequisitos
154
• Qualquer mudança na mensagem geradora da MD irá, com altíssima probabilidade, causar uma mudança no MD.
Funções de Hash UnidirecionaisRequisitos
155
• Especificado na FIPS PUB 180-3.
• Nome do padrão: Secure Hash Standard (SHS).
• O padrão especifica cinco algoritmos hashseguros – SHA-1, SHA-224, SHA-256, SHA-384 e SHA-512.
Funções de Hash – SHS
156
• Segundo o padrão, é computacionalmente inviável:
• achar uma mensagem que corresponda a um message digest;
• achar duas mensagens que possuam o mesmo message digest.
Funções de Hash – SHS
Curso de TI LFG Gleyson Azevedo
40
157
Características:
11222432512< 264SHA-224
256512641024< 2128SHA-512
192384641024< 2128SHA-384
12825632512< 264SHA-256
8016032512< 264SHA-1
Segurança (bits)
Tamanho do message
digest(bits)
Tamanho da palavra
(bits)
Tamanho do bloco
(bits)
Tamanho da
mensagem (bits)
Algoritmo
• O item segurança considera que o ataque do aniversário em um message digest de tamanho n produz uma colisão com fator de trabalho de aproximadamente 2n/2.
Funções de Hash – SHS
158
• O algoritmo utiliza:
• 80 palavras de 32 bits fixas (constantes);
• 5 variáveis de 32 bits (A, B, C, D, E);
• Um valor hash com 5 palavras de 32 bits.
• Deve ser feito o pré-processamento antes da execução do algoritmo:
• “padding” para um múltiplo de 512 e divisão em blocos de 512.
SHA-1
159
• A mensagem final deve ter um número de bits múltiplo de 512.
• Exemplo: a mensagem é “abc”• acrescenta-se um bit 1;• vários bits 0;• 64 bits representando o tamanho original
da mensagem.
SHA-1
160
MD5• Melhoria do MD4.• Projetado por Ron Rivest (também autor do
MD4).• MD5 e MD4 produzem um hash de 128 bits.• O MD5 roda 30% mais lento que o MD4.
Curso de TI LFG Gleyson Azevedo
41
161
• Existem dois ataques de força bruta contra funções one way:
• dado o MD (hash) de uma mensagem H(M), o inimigo tenta achar M’ tal que H(M)=H(M’);
• o inimigo tenta achar duas mensagens aleatórias, M e M’ tal que H(M)=H(M’). Isto é bem mais fácil que o item anterior.
• O paradoxo do aniversário é um problema estatístico clássico.
Ataque do Aniversário
162
• Quantas pessoas devem estar em uma sala para que eu tenha uma chance maior do que 50% de que uma dessas pessoas tenham o mesmo aniversário que eu?
• Resp: 253.• Quantas pessoas devem estar em uma sala para que se tenha uma chance maior que 50% de que duas dessas pessoas façam aniversário no mesmo dia?
• Resp: 23.
Ataque do Aniversário
163
• O primeiro problema apresentado acima éanálogo ao primeiro caso de força bruta.
• O segundo problema apresentado é análogo ao segundo caso de força bruta.
Ataque do Aniversário
164
• Considere uma função hash que gere um hash de m bits
• Achar uma mensagem que tenha um valor hash específico requer o cálculo do hash de 2m mensagens aleatórias (2m é o espaço de todos os possíveis hash).
• Achar duas mensagens que tenham o mesmo valor hash requer o cálculo do hashde 2m/2 mensagens aleatórias.
Ataque do Aniversário
Curso de TI LFG Gleyson Azevedo
42
165
• Uma máquina que calcule o hash de um milhão de mensagens por segundo levaria 600.000 anos para achar uma segunda mensagem que possua um hash específico de 64 bits.
• A mesma máquina pode achar um par de mensagens que tenham o mesmo valor hashem aproximadamente uma hora.
Ataque do Aniversário
166
• Uma pessoa está se preparando para assinar uma mensagem onde a assinatura consiste em um hash de m bits cifrado com a chave privada.
• O fraudador prepara 2m/2 mensagens diferentes com o mesmo sentido e calcula os respectivos hash.
• O fraudador prepara 2m/2 mensagens diferentes com conteúdo fraudulento e calcula os respectivos hash.
Ataque do Aniversário
167
• Os dois conjuntos são comparados.
• Pelo ataque do aniversário, a probabilidade de se obter uma mensagem do primeiro grupo com um hash igual a uma mensagem do segundo grupo é de mais de 50%. Considere que conseguimos essas duas mensagem e elas são, respectivamente M e M’.
• O fraudador então entrega a mensagem M para quem vai assinar e essa assinatura seráválida também para M’.
Ataque do Aniversário
168
Conclusão:
• Se usamos uma função hash que gera um resumo de m bits, o nível de esforço necessário para quebrá-la é 2m/2.
Ataque do Aniversário
Curso de TI LFG Gleyson Azevedo
43
Exercícios39. (Perito Criminal Federal – Computação Científica –
PF-Nacional/2004 - CESPE) Acerca dos principais algoritmos para esses tipos de ferramenta criptográfica, julgue o item subsequente.
1 [106] MD5 e SHA-1 são funções de resumo de mensagem (funções hash). Esses algoritmos têm a finalidade de garantir a integridade e a autenticidade para mensagens de tamanho arbitrário.
Exercícios40. (Perito Criminal Federal – Computação Científica –
PF-Regional/2004 - CESPE) Acerca dos principais algoritmos para esses tipos de ferramenta criptográfica, julgue os itens subsequentes.
1 [117] Entre os algoritmos especificados pelo padrão SHS (secure hash signature standard), o SHA-1 é o que possui menor tamanho do valor condensado (message digest), que é de 160 bits.
Exercícios41. (Analista Administrativo – Tecnologia da
Informação – Redes e Segurança – ANATEL/2009 –CESPE) Julgue o item a seguir.
1 [87] MD2, MD4 e MD5 são uma família de funções hash do tipo one-way. O MD2 produz uma chave de 64 bits que é considerada menos segura que as do MD4 e do MD5. O MD4 produz uma chave de 128 bits e usa operandos de 32 bits para uma rápida implementação.
Exercícios42. (Tecnologista Jr – MCT/2008 – CESPE) Julgue os
itens abaixo.
1. [108] O secure hash algorithm (SHA) — padrão federal dos Estados Unidos da América FIPS 180 — aplica como função de uma via uma curva elíptica parametrizável em função do tamanho da mensagem da qual se deseja um resumo.
2. [109] Segundo o padrão FIPS 180-2, os algoritmos SHA-384 e SHA-512 operam com tamanho de bloco de entrada de 1.024 bits.
Curso de TI LFG Gleyson Azevedo
44
173
Esquema de assinatura digital
Assinatura Digital
Kprivada => só Bob conhece
Kpública => todos conhecem
hash
documento
hash cifradocom Kprivada
assinatura
par de chaves de umacifra assimétrica
174
Verificação da assinatura digital
hash (H1)
hash (H2)
compara
se for igual => assinatura válida
se for diferente => assinatura não válida
decifra a assinatura com achave Kpública
gera o hash do documentos
Assinatura Digital
175
Kprivada => só Bob conhece
Kpública => todos conhecem
documento documentocifrado
com Kprivada
assinatura
par de chaves de umacifra assimétrica
Assinatura Digital
Esquema de assinatura digital
176
decifra a assinatura com achave Kpública
Assinatura Digital
Verificação da assinatura digital
Curso de TI LFG Gleyson Azevedo
45
177
hash
documento
hash cifradocom Kprivada
assinatura
documentocifrado com
Kpública
emissor
destinatário
Assinatura Digital
178
Alice Bob
documento
assinatura
documentoCanal Seguro
Canal InseguroE D
KPu B KPri BE Dhash Ksim Ksim
EKPri A
D
KPu A
hash
H1
H2
Se
H1 = H2
assinaturavalidada !
Sigilo
Integridade
Autenticidade
Sistema Híbrido
Trudy
Exercícios43. [51] (Analista em Ciência e Tecnologia Júnior I – Análise de Sistemas – Informática – CAPES/2008 – CESGRANRIO) Cláudio assinou um determinado email E utilizando certificação digital e o enviou à Mariana. A esse respeito, observe as afirmativas abaixo.I - E poderia ser alterado sem que Mariana percebesse a modificação.II - Se o tráfego de rede no envio de E fosse farejado (sniffer), a confidencialidade da mensagem estaria comprometida.III - Mariana saberá que E foi enviada, de fato, por Cláudio. Está(ão) correta(s) a(s) afirmativa(s)(A) I, apenas. (B) II, apenas. (C) III, apenas. (D) II e III, apenas. (E) I, II e III.
Exercícios44. (Perito Criminal Federal – Computação Científica –
PF-Regional/2004 - CESPE) A respeito de técnicas criptográficas e do seu emprego adequado, julgue o item a seguir.
1 [111] Em um processo de assinatura digital, comumente é gerado um valor condensado (hash) do documento que se deseja assinar e, após isso, esse valor écriptografado utilizando-se chave privada (assimétrica) que somente as partes envolvidas na comunicação desse documento devem conhecer. Dessa forma, ao enviar o documento original e o respectivo valor condensado criptografado, o destinatário poderá validar a assinatura do documento e verificar a sua integridade.
Curso de TI LFG Gleyson Azevedo
46
Exercícios45. (Tecnologista – Classe Pleno I – ABIN/2004 –
CESPE) No referente a sistemas criptográficos, julgue os itens a seguir.
1. [52] Funções de hashing são elementos importantes em diversas aplicações criptográficas. Em particular, funções de hashing são utilizadas em procedimentos de geração de assinaturas digitais para impedir que um oponente possa tomar conhecimento do documento assinado, já que essas funções devem ter a propriedade de serem não-inversíveis.
Exercícios46. (Informática – Análise de Sistemas – Ministério das
Comunicações – CESPE – 2008) Acerca de segurança da informação, julgue os itens subsequentes.
1 [53] Na criptografia simétrica, o emissor e o receptor usam duas instâncias da mesma chave para cifrar e decifrar. Nesse tipo de criptografia, a chave deve ser mantida em segredo e protegida, pois a posse da chave possibilita decifrar mensagens cifradas com essa chave. Esse tipo de criptografia provê autenticação, pois, se duas pessoas usam a mesma chave, há como provar quem enviou cada mensagem.
Exercícios2 [54] Na criptografia assimétrica, para garantir a
confidencialidade de uma mensagem, quem envia a mensagem deve cifrá-la com a chave privada do destinatário da mensagem. Se a autenticação for o serviço desejado por quem envia a mensagem, este deve cifrá-la com sua chave pública.
3 [55] Para criar uma assinatura digital para uma mensagem, pode-se usar uma função hash para calcular um valor a partir do conteúdo da mensagem e criptografar esse valor usando-se a chave pública de quem enviou a mensagem. A partir desse valor épossível, na recepção, verificar por quem a mensagem foi remetida e se a mensagem recebida é diferente da enviada.
184
• Somente texto cifrado (Ciphertext-only attack)
• O criptoanalista somente tem o texto cifrado de diversas mensagens.
• O trabalho do criptoanalista é recuperar o texto em claro de tantas mensagens quanto possível ou deduzir a chave (ou chaves) usadas para cifrar a mensagem.
Criptoanálise
Curso de TI LFG Gleyson Azevedo
47
185
• Texto claro conhecido (Known-plaintextattack)
• O criptoanalista tem acesso ao texto cifrado de diversas mensagens e aos respectivos textos em claro.
• O trabalho do criptoanalista é deduzir a chave (ou chaves) usadas para cifrar a mensagem ou deduzir um algoritmo para recuperar novas mensagens cifradas com aquela chave.
Criptoanálise
186
• Texto claro escolhido (Chosen-plaintextattack)
• O criptoanalista tem acesso não somente ao textos cifrados e respectivos textos em claro, mas também pode escolher os textos em claro que são cifrados.
• O trabalho do criptoanalista é deduzir a chave (ou chaves) usadas para cifrar a mensagem ou deduzir um algoritmo para recuperar novas mensagens cifradas com aquela chave.
Criptoanálise
187
• Texto claro escolhido adaptativo (Adaptative-chosen-plaintext attack)• O criptoanalista tem acesso não somente ao
textos cifrados e respectivos textos em claro mas também pode escolher os textos em claro que são cifrados. Além disso ele pode escolher novos textos em claro a serem cifrados com base nos estudos realizados sobre os textos em claro e correspondentes cifrados.
• O trabalho do criptoanalista é recuperar o texto em claro de tantas mensagens quanto possível ou deduzir a chave (ou chaves) usadas para cifrar a mensagem.
Criptoanálise
188
• Texto cifrado escolhido (Chosen-ciphertext attack)• O criptoanalista pode escolher diferentes
textos cifrados a serem decifrados e ter acesso aos textos decifrados.
• O trabalho do criptoanalista é deduzir a chave (ou chaves) usadas para cifrar a mensagem ou deduzir um algoritmo para recuperar novas mensagens cifradas com aquela chave.
Criptoanálise
Curso de TI LFG Gleyson Azevedo
48
189
• Chave escolhida (Chosen-key attack)• Este ataque não significa que o
criptoanalista possa escolher a chave, significa que o criptoanalista tem conhecimento sobre a relação existente entre diversas chaves.
• O trabalho do criptoanalista é deduzir a chave (ou chaves) usadas para cifrar a mensagem ou deduzir um algoritmo para recuperar novas mensagens cifradas com aquela chave.
Criptoanálise Exercícios47. [73](Analista Legislativo – Informática Legislativa –Câmara dos Deputados/2009 – FCC) Efetuar o XOR de certos bits no texto simples e no texto cifrado para, examinando o resultado, identificar padrões, é uma técnica de criptoanálise
(A) diferencial.
(B) linear.
(C) sincronismo.
(D) lógica.
(E) consumo de energia.
48. (Tecnologista Jr – MCT/2008 – CESPE) Julgue o item subsequente.
1 [83] No campo da criptografia, a criptoanálise diferencial analisa a evolução da diferença —operação de E de três n-gramas — entre duas mensagens conhecidas e cifradas com a mesma chave durante o processo de criptografia. A criptoanálise linear é uma técnica que se vale de convoluções lineares equivalentes ao algoritmo criptográfico.
Exercícios
192
Gabarito das Questões1. C 11. C 21. 1C 31. 1E 41. 1E
2. C 12. A 22. 1C 32. 1E 42. 1E-2C
3. D 13. A 23. 1C 33. 1C* 43. D
4. E 14. 1C-2C 24. 1C-2C-3E 34. 1E 44. 1E
5. 1C 15. 1E-2E-3C 25. C 35. 1E 45. 1E
6. 1C-2E 16. 1C-2E-3C 26. 1E 36. 1C 46. 1E-2E-3E
7. 1E 17. 1C-2E-3E 27. 1E 37. 1E-2C 47. B
8. E 18. 1C-2E 28. 1E 38. 1C-2E 48. 1E
9. 1E 19. 1C-2E-3C* 29. 1C-2C-3E 39. 1E
10. 1C* 20. 1C 30. 1X 40. 1C
* Gabarito Discutível