• Nenhum resultado encontrado

Codificação de Informação 2010/2011

N/A
N/A
Protected

Academic year: 2021

Share "Codificação de Informação 2010/2011"

Copied!
25
0
0

Texto

(1)
(2)
(3)

Dept.
InformáIca
/
FCT
 9
Novembro
2010
 5


Tipos
de
chave
–
cifras
mistas


A
transferência
de
grandes
quanIdades
de
dados


é
feita
usando
um
método
simétrico
com
chave


secreta
K


A
troca
da
chave
K
entre
os
interlocutores
usa
um


método
assimétrico
(chave
pública,
chave


privada)


Cifras
con@nuas
(steam
ciphers)


Gerador de sequência

Sequência de chave
(bits)‏

xor

Sequência
em
claro
 Sequência
cifrada
 Ver
exemplo
do
XOR
a
propósito
do
“one
Ime
pad”


(4)
(5)

Cifra
simétrica


Dept.
InformáIca
/
FCT
 9
Novembro
2010
 9
 Chave
comum
à
operação
de
 cifrar
e
de
decifrar
 Chave
secreta
 P

mensagem
em
claro,
C
 mensagem
cifrada
 K
chave
usada
para
cifrar
e
 decifar

 f
função
usada
para
cifrar

 f‐1
função
usada
para
decifrar
 C
=
f
(
P,
K)
 P
=
f‐1
(
C,
K)
 cifrar decifrar

Bloco em claro com n bits

Bloco cifrado com n bits

(6)
(7)

Dept.
InformáIca
/
FCT
 9
Novembro
2010
 13


Versão
“moderna”
das
cifras
de


permutação
–
P‐BOX


Bloco
de
Feistel


1973‐
Aplicação
práIca
por
Feistel
das
noções
de


confusão
e
difusão
devidas
a
Shannon


É
a
base
da
maior
parte
dos
algoritmos
de
cifra
simétricos


por
bloco


Entrada:
2w
bits
de
texto
(L

i‐1

,
R

i‐1

)



e
uma
subchave
K

i

Todas
as
subchaves,
K

i

,
são


derivadas
de
K


L

i


=
R

i‐1


R

i


=
L

i‐1


XOR
f(R

i‐1


,
K

i

)


(8)

Reversibilidade
da
rede
de
Feistel


Dept.
InformáIca
/
FCT
 9
Novembro
2010
 15
 Ki
 Cifrar
 XOR
 f
 Ri‐1
 Li‐1
 Ri
 Li
 Decifrar
 XOR
 f
 K i
 Ri‐1
 Li‐1
 Ri
 Li
 Ri‐1
=
Li
é
óbvio
uma
vez
que
foi
copiado
directamente


(9)

Algoritmos
de
cifra
simétrica
por
blocos


Dept.
InformáIca
/
FCT
 9
Novembro
2010
 17


Muitos
usam
redes
de
Feistel


Nº
de
bits
de
um


bloco
 Nº
de
bits
da
chave
 Nº
de
iterações
 DES
(Digital
EncrypIon
 Standard)
 64
 56
 16
 IDEA
 64
 128
 8
 Blowfish
 64
 Variável
 até
488
 16
 AES
(Advanced
EncrypIon


Standard)
 128,
192
ou
256
 128,
192
ou
256
 10,12
ou
14


(10)
(11)

Dept.
InformáIca
/
FCT
 9
Novembro
2010
 21


DES
–
Digital
EncrypIon
Standard



(12)
(13)
(14)

Dept.
InformáIca
/
FCT
 9
Novembro
2010
 27


Transformação
das
chaves


Usa duas metades de 32-bit (L & R)

Como é normal na cifra de Feistel :

Li = Ri–1

Ri = Li–1 ⊕ F(Ri–1, Ki)

Toma 32 bit da metade R e uma sub-chave de 48

bits e:

Expande R para 48 bits usando a permutação E XOR com a sub-chave

Passa através de 8 S-boxes para obter um resultado de 32 bits

Permuta esses 32 bits usando a P-Box P

(15)
(16)

Ataques
ao
DES:
tamanho
da
chave


Dept.
InformáIca
/
FCT
 9
Novembro
2010
 31
 Os
ataques
de
força
bruta
não
são
fáceis
(comprimento
da
chave:
56
bits)
 256
chaves
possíveis
=
7.2x1016
chaves
 Os
avanços
do
hardware
tornaram‐nos
possíveis:
 Em
1997
na
Internet
nalguns
meses

 Em
1998
com
h/w
dedicado
(Electronic
FronIer
FoundaIon)
nalguns
dias

 Em
1999
num
esforço
distribuído
22
horas!


Preço de uma máquina para pesquisa

(17)
(18)
(19)
(20)
(21)

Dept.
InformáIca
/
FCT
 9
Novembro
2010
 41


CBC
–
Cipher
Block
Chaining


CBC
–
Cipher
Block
Chaining


O mesmo bloco em claro corresponde a blocos cifrados diferentes

Reordenação e substituição impossíveis Depende do bloco anterior

Propagação de erros limitada

Só afecta o bloco corrente e o próximo

Cifrar


X1
=
P1
xor
IV
;


C1
=
E(X1)
 Xi
=
Pi
xor
Ci‐1
;


Ci
=
E(Xi)


Decifrar


(22)
(23)
(24)

Função
de
cifra
do
TEA


Dept.
InformáIca
/
FCT
 9
Novembro
2010
 47


void encrypt(unsigned long k[], unsigned long text[]) {

unsigned long y = text[0], z = text[1]; unsigned long delta = 0x9e3779b9, sum = 0; int n;

for (n= 0; n < 32; n++) {

sum +=delta;

y += ((z << 4) + k[0]) ^ (z+sum) ^ ((z >> 5) + k[1]); // 5 z += ((y << 4) + k[2]) ^ (y+sum) ^ ((y >> 5) + k[3]); // 6 } text[0] = y; text[1] = z; } 
 As
linhas
5
e
6
fazem
 ocultação
(XOR
do
 texto
deslocado)
e
 difusão
(deslocamento
 e
trocas)
 chave 4 x 32 bits Texto em claro e cifrado 2 x 32 OU exclusivo deslocamento

- 64 passos (neste caso 32*2) com somas, XOR e deslocamentos lógicos para assegurar a confusão e a difusão dos padrões de bits do bloco em claro no bloco cifrado

- A constante “mágica” delta serve para evitar alguns tipos de ataques

Função
para
decifrar
do
TEA


void decrypt(unsigned long k[], unsigned long text[]) { unsigned long y = text[0], z = text[1];

unsigned long delta = 0x9e3779b9, sum = delta << 5; int n; for (n= 0; n < 32; n++) {

z -= ((y << 4) + k[2]) ^ (y + sum) ^ ((y >> 5) + k[3]); y -= ((z << 4) + k[0]) ^ (z + sum) ^ ((z >> 5) + k[1]); sum -= delta;

}

(25)

UIlização
do
TEA


Dept.
InformáIca
/
FCT
 9
Novembro
2010
 49


void tea(char mode, FILE *infile, FILE *outfile, unsigned long k[]) { /* mode is ’e’ for encrypt, ’d’ for decrypt, k[] is the key.*/

char ch, Text[8]; int i; while(!feof(infile)) {

i = fread(Text, 1, 8, infile); /* read 8 bytes from infile into Text */ if (i <= 0) break;

while (i < 8) { Text[i++] = ' ';} /* pad last block with spaces */ switch (mode) {

case 'e':

encrypt(k, (unsigned long*) Text); break; case 'd':

decrypt(k, (unsigned long*) Text); break;

}

fwrite(Text, 1, 8, outfile); /* write 8 bytes from Text to outfile */ }

Referências

Documentos relacionados

10.2 Agrotóxicos utilizar produtos químicos registrados, mediante receituário agronômico, conforme legislação vigente; utilizar sistemas adequados de amostragem e diagnóstico

Assis Marinho (Hospital Regional de Ilha Solteira) informou-nos que pessoas com paralisia cerebral, lesão medular e acidente vascular cerebral (AVC), por exemplo, serão beneficiadas

1 hora para cada equipe que não realizar alguma das modalidades extra (natação, cavalgada, patinação, etc) Todas as provas do Haka Expedition são válidas para o RBCA duplas e solo

Anais do X Encontro Nacional de Educação Matemática Comunicação Científica 8 Diante dessa situação, ao refletirmos sobre a formação de professores que ensinam

No entanto, não há garantia de que este tratamento tributário será sempre aplicável ao FUNDO devido a possibilidade de ser reduzido o prazo médio de sua carteira, em razão,

Destarte, não havendo provas de que o fracionamento indevido dos pagamentos gerou efetivo prejuízo aos cofres públicos e nem que o Prefeito tenha agido deliberadamente para tal fim,

A crise causada pela pandemia do novo Corona vírus impactou a maneira como as pessoas vivem, se relacionam e consomem. Mais do que uma mudança imediata na rotina da

A carga horária de orientação acadêmica referente ao Trabalho de Conclusão de Curso (TCC), de Estágio Curricular Supervisionado, de Estágio Curricular