Você está na página 1de 149

Criptografia Aplicada

Seção 01: Funcionamento de um criptossistema

Prof. MSc. José Paulo Lima


Sumário
1 Definições básicas de criptografia
Introdução
Criptossistema
Criptografia Simétrica
O que proteger no criptossistema?
Tipos de ataques
Criptossistemas históricos
Sigilo Perfeito
Bloco de uso único
Código de Autenticação de Mensagem
Função hash
Criptografia Assimétrica
Assinatura Digital

2 Troca de chaves Diffie-Hellman


Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 2
Sumário II

3 Aplicação da criptografia na autenticação multifatores


Confidencialidade
Integridade
Disponibilidade
Garantia
Autenticidade
Anonimato

4 Certificação digital

5 Infraestruturas de Chaves Públicas

6 Referências
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 3
Definições básicas de criptografia
Introdução

Diffie e Hellman (1976) definiram que a criptografia é o estudo de sistemas matemáticos


para resolver problemas de privacidade e autenticação;
Katz e Lindell (2014, p. 3–4) classifica a criptografia em dois períodos: clássica e mo-
derna;
• Até o final do século XX, a criptografia era tratada como uma arte que estudava uma co-
municação secreta. Neste período não haviam teorias ou noções do que era seguro, as
criações e quebras das cifragem aconteciam com a criatividade e habilidade pessoal.
• Hoje em dia a criptografia é considerada uma ciência que não busca apenas o sigilo da
comunicação, mas busca autenticação de mensagens, assinaturas digitais, protocolos para
a troca de chaves secretas, protocolos de autenticação, etc. Baseados sempre em modelos
e padrões que são considerados seguros.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 4


Definições básicas de criptografia
Comunicação através de um canal inseguro
Segundo Stinson (2006)
O objetivo geral da criptografia é permitir que duas pessoas se comuniquem através de um
canal inseguro, sem que algum curioso que intercepte as mensagens trocadas e entenda
o que está sendo transmitido.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 5


Definições básicas de criptografia
Comunicação através de um canal inseguro
Segundo Stinson (2006)
O objetivo geral da criptografia é permitir que duas pessoas se comuniquem através de um
canal inseguro, sem que algum curioso que intercepte as mensagens trocadas e entenda
o que está sendo transmitido.

Canal inseguro de comunicação

Alice Bob

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 5


Definições básicas de criptografia
Comunicação através de um canal inseguro
Segundo Stinson (2006)
O objetivo geral da criptografia é permitir que duas pessoas se comuniquem através de um
canal inseguro, sem que algum curioso que intercepte as mensagens trocadas e entenda
o que está sendo transmitido.

Canal inseguro de comunicação

Alice Escuta Modifica Bob

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 5

Eve
Definições básicas de criptografia
Comunicação através de um canal inseguro
Solução para este problema
Alice encripta (ou cifra) a mensagem usando uma chave (ou senha), e envia o resultado
(o cifrotexto) a Bob. Bob usa a mesma chave para decriptar (ou decifrar) o cifrotexto,
recuperando a mensagem original, ou seja, o purotexto.

Canal inseguro de comunicação


Troca de cifrotextos

Alice Escuta cifrotextos Modifica Bob

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 6

Eve
Definições básicas de criptografia
Criptossistema

Segundo Stinson (2006, p. 1)


Um criptossistema é uma quíntupla (P, C, K , E, D), onde as condições a seguir são
satisfeitas:
1 P é um conjunto finito de possíveis purotextos;
2 C é um conjunto finito de possíveis cifrotextos;
3 K é um conjunto finito de possíveis chaves;
4 Para cada k ∈ K , temos uma regra de encriptação Enck ∈ E e uma correspondente
regra de decriptação Deck ∈ D. Onde cada Enck : P → C e Deck : C → P são
funções tais que Deck (Enck (p)) = p para todo purotexto p ∈ P.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 7


Definições básicas de criptografia
Criptossistema

Katz e Lindell (2014, p. 4–7) sugerem a divisão da criptografia em dois grupos, destin-
gindo-os quanto a forma de utilização das chaves: o esquema de encriptação de chave
privada e o esquema de encriptação de chave pública;
Criptografia Simétrica x Criptografia Assimétrica.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 8


Definições básicas de criptografia
Criptossistema - Criptografia Simétrica

Criptografia Simétrica
No esquema de encriptação de chave privada é composto por:
1 Ger – Um algoritmo probabilístico para geração de chaves (k);
2 Enc – Um algoritmo de encriptação que tome como entrada a chave k e o purotexto
m, produzindo um cifrotexto c. Enck (m) = c.
3 Dec – Um algoritmo de decriptação que tome como entrada a chave k e o cifrotexto c,
retornando o purotexto m. Deck (c) = m.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 9


Definições básicas de criptografia
Criptossistema - Criptografia Simétrica

Na prática, um esquema de encriptação será de utilidade se:


cada função Enck e cada função de decriptação Deck forem eficientemente computáveis;
um adversário, ao ver um cifrotexto c deveria ser incapaz de determinar a chave k que
foi usada, ou a cadeia de purotexto m.

Criptoanálise
O processo de tentativa de obtenção de calcular a chave k, dada uma cadeia de cifrotexto
c, é chamado de criptanálise.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 10


Definições básicas de criptografia
O que proteger no criptossistema? - Princípio de Kerckhoffs

A chave deve ser mantida em segredo. Os algoritmos Ger, Enc, e Dec de-
vem ser mantidos em também em segredo?
1 O sistema deve ser fisicamente, se não matematicamente indecifrável;
2 Não deve existir segredo do sistema em si, pois ele pode convenientemente cair nas
mãos do inimigo;
3 A chave deve ser comunicada, mantida e alterada a critério dos interlocutores sem a
ajuda de notas escritas.
[. . . ]
(KERCKHOFFS, 1883, p. 12, tradução nossa).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 11


Definições básicas de criptografia
O que proteger no criptossistema? - Princípio de Kerckhoffs

Analogia
Se eu pego uma carta, tranco-a em um cofre, escondo o cofre em algum lugar de Nova
York, e então lhe digo para ler a carta, isso não é segurança. Isso é obscuridade. Por
outro lado, se eu pego uma carta e a tranco em um cofre, e então lhe entrego o cofre
juntamente com as especificações do seu projeto e uma centena de cofres idênticos com
suas combinações, de modo que você e os melhores arrombadores de cofre do mundo
possam estudar o mecanismo da fechadura - e você ainda assim não pode abrir o cofre e
ler a carta - isso é segurança. (SCHNEIER, 1996 apud MARCACINI, 2010, p. 46).

Princípio de Kerckhoffs
A segurança de um criptossistema deve repousar unicamente e exclusivamente sobre o
sigilo da chave.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 12


Definições básicas de criptografia
Tipos de ataques criptográficos

A seguir veremos os ataques mais comuns, organizados segundo Katz e Lindell (2014, p. 19–
20) por ordem de gravidade:
Ciphertext-only attack [Ataque de cifrotexto-somente]:
Este é o tipo mais básico de ataque e refere-se ao cenário onde o adversário apenas
observa um cifrotexto e tenta determinar o purotexto que foi encriptado.
Known-plaintext attack [Ataque de purotexto-conhecido]:
Aqui o adversário aprende um ou mais pares de purotexto/cifrotexto encriptados sob a
mesma chave. O objetivo do adversário é determinar o purotexto que foi encriptado para
dar algum outro cifrotexto (para o qual ele não sabe o purotexto correspondente).
Nota-se que os dois primeiros tipos de ataques são passivos, pois o adversário apenas re-
cebe algumas mensagens cifradas (e possivelmente alguns textos originais correspondentes)
e depois de analisa-las lança o seu ataque.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 13


Definições básicas de criptografia
Tipos de ataques criptográficos

Chosen-plaintext attack [Ataque de purotexto-escolhido]:


Neste ataque, o adversário tem a capacidade de obter o cifrotexto de qualquer purotexto
a sua escolha. Em seguida, ele tenta determinar o purotexto que foi encriptado para dar
algum outro cifrotexto.
Chosen-ciphertext attack [Ataque de cifrotexto-escolhido]:
O último tipo de ataque é aquele em que o adversário além de ser capaz de obter de-
criptação de qualquer cifrotexto a sua escolha, consegue outras informações sobre tal
decriptação, por exemplo, se a decriptografia de algum cifrotexto gera uma mensagem
em um idioma conhecido. O objetivo do adversário, mais uma vez, é então determinar
o purotexto que foi encriptado para dar algum outro cifrotexto (cuja decriptação o adver-
sário é incapaz de obter diretamente).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 14


Definições básicas de criptografia
Tipos de ataques criptográficos

Em contraste, os dois últimos tipos de ataques são ativos, já que o adversário pode adapta-
velmente pedir encriptação e/ou decriptação da sua escolha.
Estes ataques citados são técnicas para tentar melhorar sua probabilidade de acertar ao
acaso, esta probabilidade de acerto é igual a probabilidade de um ataque de Força Bruta ou
de Busca Exaustiva.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 15


Definições básicas de criptografia
Criptossistemas históricos - Cifra de César
Definição
Cifra de César, De Vita Caesarum, Divus Iulius (110 dC):
Há também cartas dele a Cícero, assim como aos mais íntimos sobre assuntos privados,
e nessas últimas, se ele tinha algo confidencial a dizer, ele escreveria em cifras, isto é,
trocando de tal forma a ordem das letras do alfabeto, de modo que nenhuma palavra faria
sentido. Se alguém deseja decifrar tais palavras, e saber seus significados, teria que subs-
tituir a quarta letra do alfabeto, a saber, D, por A, e assim por diante.

A Cifra de César é uma Cifra de Deslocamento


P = C = K = Z26
Enck (m) = (m + k) mod 26
Deck (c) = (c − k) mod 26
A cifra de César era uma cifra de deslocamento com k = 3.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 16
Definições básicas de criptografia
Criptossistemas históricos - Cifra de Vigenère

Numa cifra de César, cada letra do alfabeto é deslocada da sua posição um número fixo de
lugares. A cifra de Vigenère consiste no uso de várias cifras de César em sequência, com
diferentes valores de deslocamento ditados por uma “palavra-chave”.
Para cifrar, é usada uma tabela de alfabetos que consiste no alfabeto escrito 26 vezes em
diferentes linhas, cada um deslocado ciclicamente do anterior por uma posição. As 26 linhas
correspondem às 26 possíveis cifras de César. Uma palavra é escolhida como "palavra-
chave", e cada letra desta palavra vai indicar a linha a ser utilizada para cifrar ou decifrar uma
letra da mensagem.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 17


Definições básicas de criptografia
Criptossistemas históricos - Cifra de Vigenère

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 18


Definições básicas de criptografia
Criptossistemas históricos - Cifra de Vigenère

Exemplo de cifragem:
m AtacarBaseSul;
k LimaoLimaoLim;
c LBMCOCJMSSDCX.
A quebra tanto da Cifra de César quanto da Cifra de Vigenère é relativamente fácil. Na Ci-
fra por Deslocamento um estudo estatístico pode revelar a chave, enquanto que na Cifra de
Substituição Poli-alfabética palavras comuns como “de” vão provavelmente aparecer cripto-
grafadas segundo as mesmas letras da chave, levando à descoberta de padrões repetidos
no texto.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 19


Definições básicas de criptografia
Sigilo Perfeito

Um esquema de encriptação (Ger, Enc, Dec) sobre um espaço de mensagens M é perfeita-


mente secreto se para toda distribuição de probabilidades sobre M, toda mensagem m ∈ M,
e todo cifrotexto c ∈ C para o qual Pr[C = c] > 0:

Pr[M = m|C = c] = Pr[M = m]

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 20


Definições básicas de criptografia
Bloco de uso único

Definição

O sigilo perfeito do Bloco-de-Uso-Único repousa em duas premissas fundamentais:


1 A chave deve ter o mesmo comprimento da mensagem;
2 A chave e utilizada apenas uma vez.

O esquema de encriptação é perfeitamente secreto;


Limitação: o espaço de chaves deve ser tão grande quanto o espaço de mensagens.
• Seja (Ger, Enc, Dec) um esquema de encriptação perfeitamente secreto sobre um espaço
de mensagens M, e suponha que K seja o espaço de chaves determinado por Ger.
Então |K| ≥ |M|

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 21


Definições básicas de criptografia
Código de Autenticação de Mensagem
Esquemas de Encriptação proveem integridade das mensagens?
NÃO, e isto é um problema.

Se c := G(k) ⊕ m, então dado um c, ao inverter um bit de c é possível obter um cifrotexto


′ ′
c cuja decriptação será um purotexto m cuja diferença para m será na inversão do bit
invertido em c.
Objetivo do MAC
Códigos de autenticação de mensagens servem para evitar que um adversário modifique
uma mensagem enviada por uma das partes honestas comunicantes, sem que essas par-
tes tomem conhecimento dessas modificações. Tal qual no caso de esquemas de encrip-
tação, preciso que as partes comunicantes compartilhem uma informação secreta.
Por exemplo: uma “chave”.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 22
Definições básicas de criptografia
Código de Autenticação de Mensagem

Dada uma chave secreta compartilhada por Alice e Bob, quando Alice deseja enviar uma
mensagem m a Bob, ela computa uma etiqueta t em função da chave k e da mensagem
m;
Envia a mensagem juntamente com a etiqueta a Bob;
Essa etiqueta é computada pelo algoritmo de geração de etiquetas, que será chamado
de Mac;
Ao receber um par (m, t), Bob verifica se t é ou não uma etiqueta válida sobre a mensa-
gem m (com respeito à chave privada);
Isso é feito rodando-se um algoritmo de verificação, aqui chamado de Vrf, que toma
como entrada a chave k e a mensagem m e a etiqueta t, e indica se a dada etiqueta é
válida.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 23


Definições básicas de criptografia
Código de Autenticação de Mensagem

Um código de autenticação de mensagem (ou MAC) é uma tripla de algoritmos de tempo-


polinomial probabilístico (Ger, Mac, Vrf) tal que:
O algoritmo de geração de chaves Ger toma como entrada um parâmetro de segurança
1n e produz uma chave k onde |k| ≥ n.
O algoritmo de geração de etiqueta Mac toma uma chave k e uma mensagem m ∈ {0, 1}∗
, e produz uma etiqueta t. Como esse algoritmo pode ser aleatorizado, escrevemos
r ← Mac k(m).
O algoritmo de verificação Vrf toma como entrada uma chave k, uma mensagem m,
e uma etiqueta t. Dá como saída um bit b, com b = 1 significando válida e b = 0
significando inválida. Assumimos, sem perda de generalidade, que Vrf é determinístico
e portanto escrevemos b := Vrfk (m, t).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 24


Definições básicas de criptografia
Código de Autenticação de Mensagem

Exige-se que para todo n, toda chave k gerada por Ger(1n ), e toda m ∈ {0, 1}∗ , verifica-se que
Vrfk (m, Mack )(m)) = 1.
Se (Ger, Mac, Vrf) for tal que para toda k gerada por Ger(1n ), o algoritmo Mack é somente
definido para mensagens m ∈ {0, 1}l(n) e como Vrfk dá como saída 0 para qualquer m <
{0, 1}l(n) , então dizemos que (Ger, Mac, Vrf) é um Mac de comprimento-fixo para mensagens
de comprimento l(n).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 25


Definições básicas de criptografia
Funções Hash

Trabalha recebendo uma entrada de tamanho variável e retornando uma sequência de


tamanho fixo de caracteres hexadecimais;
São utilizados como validadores de integridade. Caso a entrada seja alterada em um
bit, o valor hash sofrerá mudanças apontando a alteração.
“Seja h uma função hash e deixe x ser alguns dados. Como exemplo ilustrativo, x pode
ser uma cadeia binária de comprimento arbitrário. A impressão digital correspondente é
definida como sendo y = h(x). Esta impressão digital é muitas vezes referida como um
resumo de mensagem. O resumo da mensagem seria tipicamente uma cadeia binária
relativamente curto; 160 bits é uma escolha comum.” (STINSON, 2006, p. 119, tradução
nossa).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 26


Definições básicas de criptografia
Criptografia de Chave pública

Segundo Katz e Lindell (2014, p. 378–379): A criptografia de chave pública é definida por
uma tupla de algoritmos probabilísticos de tempo polinomial (Ger; Enc; Dec):
1 Ger - Um algoritmo que toma como entrada um parâmetro de segurança 1n e gera um
par de chaves (pk; sk). Referimo-nos a primeira delas como a chave pública e a segunda
como a chave privada. Nós supomos, por conveniência, que pk e sk tem cada uma o
comprimento n, pelo menos, e que n pode ser determinado a partir de pk, sk.
2 Enc - Um algoritmo que toma como entrada a chave pública pk e uma mensagem m
de algum espaço de purotexto subjacente (que pode depender de pk). Ele produz um
cifrotexto c, e nós escrevemos isso como c ← Encpk (m).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 27


Definições básicas de criptografia
Criptografia de Chave pública

3 Dec - Um algoritmo que toma como entrada uma chave privada sk e um cifrotexto c, e
emite uma mensagem m ou um símbolo especial ⊥ denotando falha. Nós assumimos,
sem perda de generalidade que Dec é determinístico, e escrevemos isso como m :=
Decsk (c).
Para cada n e cada par de chaves (pk; sk) gerado por Ger(1n ), e cada mensagem m no
apropriado espaço subjacente de purotexto, garanta que a igualdade Decsk (Encpk (m)) = m
seja satisfeita.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 28


Definições básicas de criptografia
Criptografia de Chave pública

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 29


Definições básicas de criptografia
Assinatura Digital
Definição
Esquemas de assinatura digital são técnicas para garantir o reconhecimento de uma en-
tidade de ter visto uma determinada mensagem digital. Normalmente, uma entidade tem
uma chave privada e uma correspondente chave pública que está ligada ao nome da en-
tidade (infraestrutura de chave pública). A entidade gera uma string chamada assinatura,
que depende da mensagem para assinar e de sua chave privada. (TILBORG; JAJODIA,
2011, p. 343–344, tradução nossa).

Os algoritmos de assinatura digital seguem portanto o esquema de criptografia de chave


pública, esquema este já citados por (KATZ; LINDELL, 2014, p. 378–379), só que com
algumas mudanças;
A assinatura digital funciona de forma inversa ao algoritmo de chave assimétrica, aqui é
utiliza a chave privada para encriptar e deixa a chave pública livre para qualquer pessoa
validar tal assinatura.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 30
Definições básicas de criptografia
Assinatura Digital x MAC

A assinatura digital, apesar de validar mensagens como o MAC, se diferencia dos esquemas
MAC por utilizar duas chaves na sua aplicação: uma chave privada do remetente, onde
ele a utiliza para criptografar a mensagem; e uma chave pública onde qualquer pessoa que a
possua pode reconhecer a mensagem. Enquanto que o algoritmo MAC utiliza uma etiqueta
que é enviada junto a mensagem cifrada, onde esta etiqueta é validada pelo destinatário para
saber se a mensagem não foi adulterada.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 31


Definições básicas de criptografia
Assinatura Digital

Com a utilização da chave pública na decriptação, o remetente pode se comunicar com


vários destinatários distintos sem que haja uma chave específica a cada um deles. Portanto
podemos definir, baseado em Katz e Lindell (2014, p. 442), que o esquema de assinaturas é
composto de três algoritmos de tempo polinomial probabilístico, citados abaixo:
1 O algoritmo de geração de chaves Ger toma como entrada um parâmetro de segurança
1n e tem como saída um par de chaves (pk, sk) onde cada uma tem um comprimento de
pelo menos n. Estas chaves são chamadas de pública e privada, respectivamente.
2 O algoritmo de assinatura Sign toma como entrada a chave privada sk e o purotexto m
tendo como saída a assinatura σ ← Signsk (m).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 32


Definições básicas de criptografia
Assinatura Digital

3 O algoritmo determinístico de verificação Vrf que tem como entrada a chave pública pk,
a mensagem m e a assinatura σ. A saída deste algoritmo é um bit b, onde b = 1 significa
que a assinatura é válida, e b = 0 se inválida. O algoritmo é dado por b := Vrfpk (m, σ).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 33


Definições básicas de criptografia
Assinatura Digital

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 34


Exemplos de algoritmos criptográficos

Tabela: Algoritmos simétricos, assimétricos, híbridos e hashes

Simétrico Assimétrico Híbridos Hash


DES RC6 ECC IPSec MD5
3DES CAST-256 Diffie-Hellman TLS RIPEMD-160
IDEA AES El Gamal S/MIME Tiger
Twofish RSA SET SHA-256
Fonte: Tabela desenvolvida pelo autor baseado em Oliveira (2012a, p. 11–15) e Oliveira
(2012b, p. 21–24).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 35


Troca de chaves Diffie-Hellman

Diffie e Hellman (1976) apontam que exis-


tem 2 partes, Alice e Bob, que desejam
estabelecer uma chave secreta comparti-
lhada para uma comunicação segura;
Trabalhando em algum grupo primo p-
ordenado G, eles acertam um gerador g;
• Maior número primo conhecido:
282.589.933 − 1 (possui quase 35 milhões
de dígitos).
X = gx mod p.

Whitfield Diffie e Martin Hellman.


Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 36
Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A = ga mod p

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A = 56 mod 23

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A = 15.625 mod 23

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

4 Bob escolhe b=15 e envia para Alice:

B = gb mod p

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

4 Bob escolhe b=15 e envia para Alice:

B = 515 mod 23

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

4 Bob escolhe b=15 e envia para Alice:

B = 30.517.578.125 mod 23

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

4 Bob escolhe b=15 e envia para Alice:

B = 19

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

4 Bob escolhe b=15 e envia para Alice:

B = 19

5 Para verificar, Alice calcula a chave definitiva:

k = Ba mod p

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

4 Bob escolhe b=15 e envia para Alice:

B = 19

5 Para verificar, Alice calcula a chave definitiva:

k = 196 mod 23

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

4 Bob escolhe b=15 e envia para Alice:

B = 19

5 Para verificar, Alice calcula a chave definitiva:

k = 47.045.881 mod 23

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:

A=8

4 Bob escolhe b=15 e envia para Alice:

B = 19

5 Para verificar, Alice calcula a chave definitiva:

k=2

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:
A=8
4 Bob escolhe b=15 e envia para Alice:
B = 19
5 Para verificar, Alice calcula a chave definitiva:
k=2
6 Para verificar, Bob calcula a chave definitiva:
k = Ab mod p

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:
A=8
4 Bob escolhe b=15 e envia para Alice:
B = 19
5 Para verificar, Alice calcula a chave definitiva:
k=2
6 Para verificar, Bob calcula a chave definitiva:
k = 815 mod 23

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:
A=8
4 Bob escolhe b=15 e envia para Alice:
B = 19
5 Para verificar, Alice calcula a chave definitiva:
k=2
6 Para verificar, Bob calcula a chave definitiva:
k = 35.184.372.088.832 mod 23

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
1 Vamos supor que o número primo escolhido foi p = 23 e a base g = 5;
2 Alice escolhe algum a ∈ Zp , e Bob escolhe algum b ∈ Zp .
3 Alice escolhe a = 6 e envia para Bob:
A=8
4 Bob escolhe b=15 e envia para Alice:
B = 19
5 Para verificar, Alice calcula a chave definitiva:
k=2
6 Para verificar, Bob calcula a chave definitiva:
k=2

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 37


Troca de chaves Diffie-Hellman
A chave foi definida em k = 2;

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 38


Troca de chaves Diffie-Hellman
A chave foi definida em k = 2;
Isto é possível porque tivemos do lado de Alice, basicamente:
A = (ga )b mod p

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 38


Troca de chaves Diffie-Hellman
A chave foi definida em k = 2;
Isto é possível porque tivemos do lado de Alice, basicamente:
A = (ga )b mod p
E no lado de Bob tivemos, basicamente:
a
B = (gb ) mod p

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 38


Troca de chaves Diffie-Hellman
A chave foi definida em k = 2;
Isto é possível porque tivemos do lado de Alice, basicamente:
A = (ga )b mod p
E no lado de Bob tivemos, basicamente:
a
B = (gb ) mod p
Logo:
a
k = (ga )b mod p = (gb ) mod p
k = ga×b mod p
k = 56×15 mod 23 = 590 mod 23
k=2

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 38


Aplicação da criptografia na autenticação multifatores
Confidencialidade

O que é confidencialidade?
É evitar a revelação não autorizada de informação. Isto é, envolve a proteção dos dados,
propiciando acesso àqueles que são autorizados.

Encriptação
• Codificação da mensagem através de uma chave criptográfica.
▶ Simétrica;
▶ Assimétrica.
Controle de acesso
• Utilização de regras e políticas de acesso;
• Captura do nome, do IP ou até do serial da máquina utilizada.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 39


Aplicação da criptografia na autenticação multifatores
Confidencialidade
Autenticação
• Algo que você tem
▶ Código de barra;
▶ QR Code;
▶ Smart Card;
▶ Token.
• Algo que você sabe
▶ Senhas;
▶ Respostas a uma pergunta secreta.
• Algo que você é
▶ Impressão digital;
▶ Biometria de retina e/ou íris;
▶ Reconhecimento facial e/ou fala.
Autorização
• Controle a certos recursos a usuários específicos.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 40
Aplicação da criptografia na autenticação multifatores
Integridade

O que é integridade?
É a garantia de que a informação não foi alterada de maneira não autorizada.

Cópias de segurança
• Arquivamento periódico de dados;
• Backups.
Códigos de correlação de dados
• Método de armazenar dados de tal maneira que pequenas alterações podem ser facilmente
detectadas e automaticamente corrigidas.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 41


Aplicação da criptografia na autenticação multifatores
Integridade
Somas de verificação
• Função que mapeia o conteúdo de um arquivo para um valor numérico;
• Indicam uma inesperada manipulação de arquivo.

PAUSA PARA A PRÁTICA!


1 Vamos simular o checksum de algum arquivo;
2 Façamos uma pequena alteração e vejamos como isso é notado;
3 Qual nossa conclusão?

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 42


Aplicação da criptografia na autenticação multifatores
Disponibilidade

O que é disponibilidade?
É a propriedade da informação ser acessível e modificável no momento oportuno por
aqueles que estejam autorizados a fazer isso.

Proteções físicas
• Geradores, locais construídos para aguentar desastres naturais...
Redundâncias computacionais
• Computadores que usam redundâncias de armazenamento para manter os dados disponí-
veis em casa de falha de alguma outra máquina;
• RAID, Server farms...

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 43


Aplicação da criptografia na autenticação multifatores
Garantia
O que é garantia?
Se refere como a confiança é fornecida e gerenciada. Envolve o grau de confiança que
temos de que pessoas ou sistemas se comportem da maneira que esperamos.

Políticas
• Especificam as expectativas comportamentais que pessoas ou sistemas tem de si mesma
ou de outros;
• O que é esperado que aconteça.
Permissões
• Descrevem os comportamentos permitidos pelos agentes que interagem com uma pessoa
ou sistema;
• Limites do que pode ser feito.
Proteções
• Mecanismos para assegurar as políticas e permissões;
• Barrar o que foge do que foi planejado.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 44
Aplicação da criptografia na autenticação multifatores
Autenticidade

O que é autenticidade?
É a habilidade de determinar que afirmações, políticas e permissões são genuínas.

Não repúdio
• Afirmações autênticas emitidas que não são negadas.
• Assinaturas digitais
▶ Validação criptográfica de que tal dado é autêntico, podendo ser validado por qualquer pessoa.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 45


Aplicação da criptografia na autenticação multifatores
Anonimato
O que é anonimato?
É a propriedade de que certos registros ou transações não sejam atribuíveis a qualquer
indivíduo.

Agregação
• A combinação de dados de modo que a divulgação dessas somas ou médias não possa
ser vinculada a qualquer indivíduo.
Mistura
• Entrelaçamento de transações, informações ou comunicações de modo que não possam
ser rastreadas a nenhum indivíduo.
Representantes
• Agentes de confiança que não podem ser rastreados de volta. Proxies.
Pseudônimos
• Identidades ficcionais.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 46
Certificação Digital

Certificado Digital é o documento eletrônico que possibilita a troca segura de informa-


ções entre duas partes, com a garantia da identidade do emissor, da integridade da
mensagem e, opcionalmente, de sua confidencialidade.
São exemplos de uso e atividades que podem ser seguradas pro um Certificado Digital:

• Assinatura e envio documentos e declarações pela internet;


• Obrigatória para empresas que emitem nota fiscal eletrônica (NF-e);
• Uso para pessoas físicas e jurídicas;
• Acesso em ambientes virtuais com segurança.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 47


Certificação Digital

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 48


Infraestruturas de Chaves Públicas

PKI – Public Key Infrastructure, em português ICP – Infraestrutura de Chaves Públicas.


• PKI é um ecossistema que tem como objetivo identificar, no meio eletrônico, de forma
inequívoca: pessoas, empresas, aplicações e dispositivos a fim de estabelecer confiança
entre as partes.
• Não menos importante, um ecossistema de PKI também tem como função, prover a cripto-
grafia dos ativos eletrônicos para resguardar o sigilo. Com o uso dos certificados digitais é
possível controlar o acesso à conteúdos de arquivos eletrônicos apenas às pessoas auto-
rizadas.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 49


Infraestruturas de Chaves Públicas

A ICP-Brasil foi criada pela Medida Provisória 2200-2, de 24.08.2001 e está regulamen-
tada pelas Resoluções do Comitê-Gestor da ICP-Brasil.
• Tem como objetivo estabelecer os fundamentos técnicos e metodológicos de um sistema de
certificação digital baseado em criptografia de chave pública, para garantir a autenticidade,
a integridade e a validade jurídica de documentos em forma eletrônica.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 50


Referências

DIFFIE, Whitfield; HELLMAN, Martin E. New Directions in Cryptography. Information


Theory, IEEE Transactions on, v. 22, n. 6, p. 644–654, 6 nov. 1976. ISSN 0018-9448.
Disponível em: <http://dx.doi.org/10.1109/TIT.1976.1055638>. Acesso em: 21 ago. 2013.
Jérémy Jean. TikZ for Cryptographers. 2015. Disponível em: <http://www.iacr.org/
authors/tikz/>. Acesso em: 10 jun. 2016.
KATZ, Jonathan; LINDELL, Yehuda. Introduction to Modern Cryptography. 2. ed.
Boca Raton: Chapman & Hall/CRC Press, 2014. 603 p. (Cryptography and Network Se-
curity). ISBN 978-1-4665-7026-9.
KERCKHOFFS, Auguste. La cryptographie militaire. Journal des Sciences Militaires,
IX, p. 5–38, jan. 1883. Disponível em: <https://www.bibnum.education.fr/sites/default/files/
kerckhoffs-texte.pdf>. Acesso em: 21 dez. 2014.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 51


Referências II

MARCACINI, Augusto Tavares Rosa. Direito e informática: uma abordagem jurídica


sobre a criptografia. São Paulo: Lulu. com, 2010. 190 p. ISBN 978-0-5574-7303-8.
OLIVEIRA, Ronielton Rezende. Criptografia simétrica e assimétrica: os principais al-
goritmos de cifragem. Revista Segurança Digital, Brasília, n. 5, p. 11–15, 2012. Dis-
ponível em: <http://segurancadigital.info/sdinfo_downloads/revista_sd/5_edicao_marco_
31_03_2012.pdf>. Acesso em: 30 abr. 2015.
OLIVEIRA, Ronielton Rezende. Criptografia simétrica e assimétrica: os principais al-
goritmos de cifragem. Revista Segurança Digital, Brasília, n. 6, p. 21–24, 2012. Dispo-
nível em: <http://segurancadigital.info/sdinfo_downloads/revista_sd/6_edicao_maio_31_
05_2012.pdf>. Acesso em: 30 abr. 2015.
SCHNEIER, Bruce. Applied Cryptography: Protocols, Algorithms, and Source Code
in C. 2. ed. New York: Wiley, 1996. 758 p. ISBN 0-471-11709-9.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 52


Referências III

STINSON, Douglas R. Cryptography: Theory and Practice. 3. ed. Boca Raton:


Taylor & Francis, 2006. 616 p. (Discrete Mathematics and Its Applications). ISBN
9781584885085.
TILBORG, Henk C.A. van; JAJODIA, Sushil (Ed.). Encyclopedia of Cryptography
and Security. 2. ed. New York: Springer, 2011. ISBN 978-1-4419-5905-8. Disponível em:
<https://dx.doi.org/10.1007/978-1-4419-5906-5>. Acesso em: 6 maio 2015.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 01 53


Criptografia Aplicada
Seção 02: Aplicação da criptografia nas redes de comunicação

Prof. MSc. José Paulo Lima


Sumário
1 Introdução
2 Protocolos para proteção de enlace sem fio
WEP
Open System
Shared Key
Problemas
Evoluções
WPA
Protocolo TKIP
Algoritmo AES
Evolução
Protocolo CCMP

3 Protocolos para camada de rede


IPSec
VPNs
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 2
Sumário II

4 Protocolos para transporte seguro


SSL/TLS
HTTPS
SSH
Ferramentas

5 Protocolos na camada de aplicação


PGP
Axolotl

6 Referências

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 3


Introdução

Segurança na rede:
• Para uma mensagem ser segura, é necessário que apenas os envolvidos na mesma pos-
sam entender a mensagem.
▶ Para isso, ninguém mais pode interceptar, ler ou executar processos computacionais trocados
entre os envolvidos.
• Apenas o emissor e o receptor devem entender o conteúdo da mensagem.
▶ Necessita-se prover Confidencialidade, Integridade, Autenticação e Não-Repúdio.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 4


Introdução

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 5


Introdução

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 6


Protocolos para proteção de enlace sem fio
WEP

O protocolo WEP (Wired Equivalent Privacy - Privacidade Equivalente à de Redes com


Fios), foi o pioneiro no assunto de proteção de redes sem fio;
Lançado como um padrão de segurança neste tipo de rede em 1997;
Utiliza o algoritmo de criptografia RC4;
• É apontado por muitos como seu principal ponto negativo;
• Obsoleto no quesito segurança.
O WEP continua sendo amplamente utilizado em residências de todo o mundo.
• Reflexo da falta de informação dos usuários de redes sem fio e da insistência de fabricantes
de pontos de acesso em permitir que ele seja um dos padrões de segurança.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 7


Protocolos para proteção de enlace sem fio
WEP

O funcionamento do WEP pode ser dividido em duas partes: autenticação e encripta-


ção/decriptação de mensagens;
Ele é todo baseado na troca de quadros encriptados pelo algoritmo RC4;
Existem dois métodos básicos de autenticação: o modo sistema aberto (Open System)
e o de chave compartilhada (Shared Key).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 8


Protocolos para proteção de enlace sem fio
WEP - Open System
O WEP Open System assume que qualquer um que conheça o nome de identificação
da rede, ou SSID (do inglês Service Set Identifier), é passível de se conectar a ela.

Assim, conforme ilustrado na Figura, a


máquina que deseja se conectar deve
apenas enviar uma requisição junto com
o SSID.

Caso ele esteja correto, o access point


retorna uma resposta positiva de cone-
xão; caso contrário, uma resposta de ne-
gação de conexão é enviada.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 9


Protocolos para proteção de enlace sem fio
WEP - Shared Key

O WEP Shared Key só realiza a conexão


de quem possuir a chave secreta que o
access point possui.

Assim, quando for solicitada a conexão


na rede por alguma máquina, o ponto de
acesso lhe envia uma mensagem com
um desafio composto de um número in-
teiro aleatório.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 10


Protocolos para proteção de enlace sem fio
WEP - Problemas

Força Bruta:
• A chave secreta do WEP possui 40 bits, valor relativamente alto, mas que, com o uso de
ataques de dicionário, isto é, através da utilização de nomes que são comumente utilizados,
torna-se plausível sua execução.
Conexão:
• Durante a conexão de um suplicante ao ponto de acesso, o desafio passa em claro e logo
depois encriptado. Assim, é possível ter acesso ao mesmo conteúdo das duas formas,
facilitando o processo de obtenção da chave secreta.
Escuta:
• Existem outros tipos de ataque que conseguem recuperar a chave secreta a partir da escuta
do tráfego por alguns minutos, até que o valor do vetor de inicialização se repita.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 11


Protocolos para proteção de enlace sem fio
WEP - Evoluções
As tentativas de melhoria foram em vão, pois não focaram na essência do principal
problema deste protocolo: a maneira como o algoritmo RC4 é utilizado.
WEP2:
• Tenta diminuir a chance de que algum estranho descubra o valor da chave secreta, seu
número de bits foi aumentado e o vetor de inicialização teve seu comprimento dobrado.
• Porém, isto surtiu pouco efeito, tendo em vista que o problema não se encontra apenas no
tamanho da chave, mas na fragilidade do algoritmo como um todo.
WEP+
• Escolhe de maneira mais “inteligente” o valor dos vetores de inicialização, tentando diminuir
a chance de um eventual ataque ser bem sucedido.
WEP Dinâmico
• Muda o valor da chave periodicamente;
• Caso o tempo de alteração de valor seja maior que o tempo que leva para a quebra do
algoritmo, ele não surte o efeito desejado.
• Todavia, a ideia por trás desta implementação foi utilizada em parte pelo WPA.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 12
Protocolos para proteção de enlace sem fio
WPA

O protocolo WPA (Wi-Fi Protected Access - Acesso Protegido a Wi-Fi) foi criado em
2002 pela WFA (Wi-Fi Alliance) como postulante a substituto do WEP.
• Dentre as melhorias propostas, a mais significativa foi a utilização do algoritmo RC4 de
uma forma mais segura, dentro do protocolo TKIP.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 13


Protocolos para proteção de enlace sem fio
WPA - Protocolo TKIP

O TKIP, (Temporal Key Integrity Protocol - Protocolo de Integridade de Chave Temporal)


é o protocolo usado pelo WPA para encriptação da mensagem transmitida.
• Faz uso do algoritmo RC4, da mesma forma que o WEP, mas toma algumas precauções
para evitar ataques, como não enviar a chave secreta “em claro” e trabalhar com uma
política de vetores de inicialização mais inteligente.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 14


Protocolos para proteção de enlace sem fio
WPA - Algoritmo AES

O algoritmo AES (Advanced Encryption Standard Padrão de Encriptação Avançado) é


um algoritmo de criptografia simétrica de cifra de bloco (a entrada deve possuir um ta-
manho fixo) criado em 1997 pelo NIST (National Institute of Standards and Technology),
órgão do governo dos Estados Unidos.
Ele surgiu como uma alternativa ao algoritmo DES, que começava a apresentar proble-
mas de segurança.
Sofreu algumas modificações para comportar a encriptação apenas de palavras de 128,
192 e 256 bits.
Ele funciona em rodadas, nas quais ocorrem operações de permutações e combinações
dos bits. Assim, o algoritmo é eficiente computacionalmente, podendo ser calculado
rapidamente.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 15


Protocolos para proteção de enlace sem fio
WPA - Evolução

Em 2004, a WFA lançou o sucessor do WPA, o WPA2, após a descoberta de algumas


falhas de segurança presentes no TKIP.
• Assim, para tentar contorná-las, ele foi substituído pelo protocolo CCMP, que faz uso de um
algoritmo de criptografia simétrica muito robusto e amplamente utilizado, o AES.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 16


Protocolos para proteção de enlace sem fio
WPA - Protocolo CCMP

O CCMP é o protocolo usado pelo WPA2 para encriptação das mensagens transmitidas.
Ele é totalmente independente do funcionamento do WEP, diferentemente do WPA, pelo
fato de não usar o algoritmo RC4.
Ao invés disto, a mensagem é codificada antes de ser transmitida com o uso do AES.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 17


Protocolos para camada de rede
IPSec

É um conjunto de protocolos desenvolvido pelo IETF (Internet Engineering Task Force)


para oferecer segurança para um pacote no nível de rede.
• Pacotes confidenciais e autenticados
Dois Modos:
• Modo de Transporte;
• Modo Túnel (pacote IP).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 18


Protocolos para camada de rede
IPSec

Modo de Transporte do IPSec


• Baseia no encapsulamento dos protocolos das camadas superiores.
▶ Os cabeçalhos referentes ao AH e/ou ESP (os dois protocolos responsáveis por fornecer auten-
ticação e encriptação) são adicionados após o cabeçalho da Camada de Transporte (TCP/UDP).
• O cabeçalho IP é inalterado, possibilitando um roteamento na rede idêntico ao usual.
▶ Apenas a porção de dados do pacote pode ser encriptada, provendo confidencialidade.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 19
Protocolos para camada de rede
IPSec

Atenção
Caso o pacote seja interceptado por terceiros, ainda que os dados enviados estejam crip-
tografados, as informações contidas no cabeçalho IP (entre elas endereço de origem e
destino) poderão ser acessadas.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 20


Protocolos para camada de rede
IPSec

Modo de Túnel do IPSec


• Muito utilizado atualmente para o estabelecimento de VPNs;
• Encapsula completamente o pacote IP.
▶ Desta forma, a segurança será sempre aplicada ao pacote original como um todo, e não apenas
à porção de dados.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 21
Protocolos para camada de rede
IPSec

Tipicamente, o modo túnel é utilizado quando ao menos um dos pontos da comunicação


está atrás de um gateway de segurança, que pode ser um roteador ou firewall que
implemente o IPSec;
Cria-se um túnel seguro através de uma rede pública não segura (como a Internet atual);
É este o princípio das VPNs.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 22


Protocolos para camada de rede
IPSec

Dois protocolos de Segurança


• AH (Authentication Header);
▶ Fornece autenticação de fonte e integridade de dados.
• ESP (Encapsulating Security Payload);
▶ Recursos de autenticação de fonte, integridade e privacidade.

Suporte ao IPv6 e IPv4.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 23


Protocolos para camada de rede
IPSec - AH

O protocolo Authentication Header é utilizado para garantir a autenticidade e a integri-


dade de pacotes IP.
• Sozinho, não provê qualquer confidencialidade;
• Em alguns programas P2P para compartilhamento de arquivos, por exemplo, é realizada
a autenticação dos usuários e o teste de integridade dos blocos de arquivos enviados.
Entretanto, não há privacidade na troca de pacotes.
O AH define um cabeçalho, que é acrescentado ao pacote IP. Nele, estarão os dados de
autenticação que serão verificados pelo receptor da mensagem.
• Para computar e verificar os dados do AH, é usada uma função de hash como MD5 e SHA-
1;
• No envio da mensagem, é calculada uma sequência de bits (chamada hash) de acordo
com uma chave secreta estabelecida;
• Na recepção, o hash é recalculado e comparado com o presente no AH.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 24


Protocolos para camada de rede
IPSec - ESP

Responsável pelos serviços de confidencialidade do IPSec, o Encapsulating Security


Payload se baseia no acréscimo de um cabeçalho e uma cauda ao pacote;
Este protocolo define a encriptação do pacote como um todo (no modo túnel) ou da
porção de dados do pacote (no modo transporte).
Tanto para a encriptação, feita pelo emissor, quanto para a decriptação, feita pelo recep-
tor, são utilizados o algoritmo de criptografia e a chave secreta definidos;
Além de prover serviços de confidencialidade, o ESP também provê serviços de auten-
ticação e integridade, de maneira bastante similar ao AH. Todavia, estes não incluem o
cabeçalho IP (no caso do modo túnel, não incluem o novo cabeçalho IP).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 25


Protocolos para camada de rede
VPNs

O novo cabeçalho IPSec no Modo túnel é utilizado no roteamento do pacote através da


Internet;
• Chegando a seu destino, ocorrerá primeiramente a verificação da autenticação e/ou a de-
sencriptação do restante do pacote;
• No caso de as informações estarem corretas, os cabeçalhos AH e ESP são removidos e o
pacote IP original é reconstituído;
• De acordo com o endereço de destino original, o pacote pode ser entregue à máquina local
ou roteado novamente na rede.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 26


Protocolos para camada de rede
VPNs

Aplica segurança aos datagramas IP;


Datagrama destinado ao uso privado é encapsulado;
Nas redes TCP/IP as VPNs são estabelecidas através do IPSec.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 27


Protocolos para camada de rede
VPNs

Exemplo de Link Provado:

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 28


Protocolos para camada de rede
VPNs
Exemplo de Links Privado e Públicos:

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 29


Protocolos para camada de rede
VPNs

Exemplo de VPN:

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 30


Protocolos para transporte seguro
SSL/TLS

Secure Sockets Layer e Transport Layer Security;


Serviços de Segurança de ponta a ponta para aplicações que usam um protocolo de
camada de transporte confiável, como o TCP.
• Fornece serviços de segurança para transações na Internet;
• Normalmente recebe serviços do HTTP.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 31


Protocolos para transporte seguro
SSL/TLS

Aplicação numa compra online


Servidor pertence ao verdadeiro fornecedor;
• Autenticação de Entidades.
Certeza do conteúdo da mensagem;
• Integridade.
Cliente e fornecedor precisam ter certeza de que um impostor não intercepte informa-
ções confidenciais.
• Confidencialidade.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 32


Protocolos para transporte seguro
HTTPS

HTTPS (Hypertext Transfer Protocol Secure - Protocolo de Transferência de Hipertexto


Seguro) é a versão criptografada do HTTP.
• Usando Transport Layer Security (TLS) ou, anteriormente, Secure Sockets Layer (SSL).
Usado para realizar a comunicação segura na Internet ou em uma rede.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 33


Protocolos para transporte seguro
HTTPS

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 34


Protocolos para transporte seguro
HTTPS

Usa um certificado seguro de um fornecedor terceirizado para proteger uma conexão e


verificar se o site é legítimo.
• Esse certificado seguro é conhecido como Certificado SSL.
TLS (Transport Layer Security - Segurança da Camada de Transporte) ajuda a cripto-
grafar HTTPS e pode ser usado para proteger e-mails e outros protocolos.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 35


Protocolos para transporte seguro
SSH

SSH é a sigla para Secure Socket Shell (Concha de Segurança ou numa tradução me-
lhorada Bloqueio de Segurança), sendo um dos protocolos específicos de segurança de
troca de arquivos entre cliente e servidor de internet, usando criptografia.
O objetivo do SSH é permitir que desenvolvedores ou outros usuários realizem altera-
ções em sites e servidores utilizando uma conexão simples e segura.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 36


Protocolos para transporte seguro
SSH

SmarTTY
• Permite transferir arquivos e diretórios, abrir mais de uma aba e editar arquivos no próprio
servidor.
PuTTy
• Ferramenta open source destinada para Windows, Unix e Linux.
• Estabelece um túnel codificado entre os servidores.
• Permite acessar o servidor de forma remota.
OpenSSH
• Atua evitando espionagem, sequestro de dados e outros tipos de danos causados por hac-
kers.
• Disponibiliza vários recursos de filtragem e alternativas de autenticação.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 37


Protocolos na camada de aplicação
PGP

O PGP (Pretty Good Privacy) foi criado para prover e-mails confidenciais;
• Segurança na camada de aplicação;
• No PGP, o emissor da mensagem precisa incluir os identificadores dos algoritmos usados
na mensagem, bem como dos valores das chaves;
• A tecnologia PGP consiste de um sistema híbrido de criptografia que usa tanto encriptação
simétrica como assimétrica para atingir altos níveis de segurança e privacidade.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 38


Protocolos na camada de aplicação
PGP

Antes do processo de encriptação começar, a maioria dos sistemas PGP realiza uma
compressão dos dados;
Após a compressão dos arquivos, o processo de encriptação é iniciado.
• O plaintext comprimido é encriptado com uma chave de uso único, chamada chave de ses-
são (session key). Tal chave é gerada aleatoriamente através de um sistema de criptografia
simétrica e cada sessão de comunicação PGP possui uma única session key.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 39


Protocolos na camada de aplicação
PGP

A session key (1) é encriptada usando


encriptação assimétrica: o receptor da
mensagem (Bob) fornece sua chave pú-
blica (2) para o remetente (Alice) para
que ela consiga encriptar a session key
criada na etapa anterior;
Isso garante que Alice possa comparti-
lhar a session key com Bob pela Inter-
net, independente das condições de se-
gurança.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 40


Protocolos na camada de aplicação
PGP
Assim que o ciphertext da mensagem e
a session key encriptada são transmiti-
dos, Bob pode usar sua chave privada
(3) para decriptar a session key, a qual é
então usada para decriptar o ciphertext
de volta a sua forma original (plaintext).
Garantias:
• Autenticação: Bob pode ter certeza de
que o remetente foi Alice.
• Integridade: Bob pode checar se a
mensagem não foi alterada.
• Não-repudiação: depois que a mensa-
gem é assinada digitalmente, Alice não
pode negar que foi a remetente.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 41
Protocolos na camada de aplicação
Axolotl

Na criptografia , o Double Ratchet Algorithm (Algoritmo de catraca dupla, anteriormente


referido como Axolotl Ratchet);
É um algoritmo de gerenciamento de chave que pode ser usado como parte de um
protocolo criptográfico para fornecer criptografia ponta a ponta para mensagens instan-
tâneas.
• Após uma troca inicial de chaves, ele gerencia a renovação contínua e a manutenção de
chaves de sessão de curta duração.
• Ele combina uma chamada “catraca” criptográfica baseada na troca de chaves Diffie-Hellman
(DH) e uma catraca baseada em uma função de derivação de chave (KDF), como uma fun-
ção hash e, portanto, é chamada de catraca dupla.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 42


Referências

KATZ, Jonathan; LINDELL, Yehuda. Introduction To Modern Cryptography. 3. ed.


Boca Raton: CRC Press/Taylor & Francis Group, 2021. 649 p. (Chapman & Hall/CRC
Cryptography And Network Security). ISBN 9781351133036.
KUROSE, James F.; ROSS, Keith W. Computer Networking: A top-down approach. 8.
ed. [S.l.]: Pearson, 2020. ISBN 9780136681557.
STINSON, Douglas R.; PATERSON, Maura B. Cryptography: Theory and practice. 4.
ed. Boca Raton: CRC Press/Taylor & Francis Group, 2018. 599 p. (Textbooks in Mathema-
tics). ISBN 9781138197015.
TANENBAUM, Andrew S.; FEAMSTER, Nick; WETHERALL, David J. Computer
Networks. 6. ed. [S.l.]: Pearson, 2021. Global Edition. ISBN 978-1-292-37406-2.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 02 43


Criptografia Aplicada
Seção 03: Outras aplicações da criptografia

Prof. MSc. José Paulo Lima


Sumário

1 Introdução

2 Redes de anonimização de tráfego


Tor
Sobre a web
Sobre o navegador
Vantagens de usar o Tor
I2P
Serviços escondidos

3 Blockchain e Criptomoedas
BitCoin
Ethereum
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 2
Sumário II

4 NFT

5 Referências

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 3


Redes de anonimização de tráfego
Tor - Sobre a web
DeepWeb é apenas a parte da internet
que não é acessível pelos mecanismos
de pesquisas;
A DarkWeb é uma parte menor da Deep
Web e é considerada a parte mais “pro-
funda” da rede.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 4


Redes de anonimização de tráfego
Tor - Sobre a web

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 5


Redes de anonimização de tráfego
Tor - Sobre a web

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 6


Redes de anonimização de tráfego
Tor - Sobre a web

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 7


Redes de anonimização de tráfego
Tor - Sobre a web

A Dark Web existe nas Darknets, que são “redes de sobreposição” ou “redes em ca-
madas”. Eles são criados com base na internet normal, mas precisam de um programa
para poderem ser acessados e navegados.
Os Darknets escondem sites que não podem estar na internet normal, onde são rastre-
ados, indexados e facilmente excluídos ou derrubados. O conjunto destes sites é o que
conhecemos como a dark web.
• A web escura (Dark Web) fornece anonimato, tanto para as pessoas que visitam os sites
quanto para os próprios sites.
• Os dissidentes políticos em um país opressivo, por exemplo, poderiam utilizar a Dark Web
para se comunicar e organizar.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 8


Redes de anonimização de tráfego
Tor - Sobre o navegador

Um dos programas a qual podemos ter acesso a Dark Web é o navegador Tor, que por
si só esconde um Darknet.
Embora você possa usar o Tor para ficar anônimo em suas atividades de navegação na
web em “sites normais”, o Tor também oferece sites .onion ou “serviços ocultos do Tor”.
Estes sim são sites especiais que só podem ser acessados através deste navegador.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 9


Redes de anonimização de tráfego
Tor - Sobre o navegador

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 10


Redes de anonimização de tráfego
Tor - Vantagens de usar o Tor

1 Ocultar sua atividade online;


2 Proteção anti-espionagem;
3 Identidade anônima;
4 Criptografia multicamadas;
5 Acesso irrestrito;
6 Sem restrição por geolocalização;
7 Acesso livre a dark web;
8 Fugir de rastreadores e mecanismos de browsers;
9 Pode ser melhor que VPN.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 11


Redes de anonimização de tráfego
I2P

O Projeto Internet Invisível (Invisible Internet Project - I2P) é uma camada de rede total-
mente privado e criptografado.
• Ele protege sua atividade e sua localização.
I2P esconde o servidor do usuário e o usuário do servidor.
Todo o tráfego I2P é interno à rede I2P.
O tráfego dentro do I2P não interage diretamente com a Internet.
• É uma camada no topo da Internet.
• Ele usa túneis unidirecionais criptografados entre você e seus pares.
Ninguém pode ver de onde vem o tráfego, para onde ele vai, ou qual é o conteúdo.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 12


Redes de anonimização de tráfego
I2P

O principal mecanismo do I2P é a utilização de túneis para comunicações entre usuários.


Cada túnel é definido por 3 nós (usuários): gateway, participante e final.
Para que uma comunicação com um nó seja realizada, é necessário que a mensagem
seja enviada para o nó gateway do túnel onde o nó final é o desejado, da seguinte forma:

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 13


Redes de anonimização de tráfego
I2P
Além disso, existem túneis de entrada e de saída:
• Quando um usuário A deseja enviar uma mensagem para B, ele utiliza um dos seus túneis
de saída para enviar a mensagem, cujo destino será o gateway de um dos túneis de entrada
de B.

Estes túneis têm uma duração de 10 minutos, e toda vez que um usuário quiser manter-
se comunicável na camada I2P, ele deve ficar recriando túneis enquanto os antigos são
abandonados.
Normalmente, um usuário é ligado a diversos túneis, onde em cada um ele exerce um
papel diferente.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 14
Redes de anonimização de tráfego
I2P

Mensagens de cliente são criptografadas de ponta a ponta pelo roteador;


• ElGamal/AES+SessionTags.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 15


Redes de anonimização de tráfego
Serviços escondidos

Diferente dos nomes de domínio que podem ser lidos por humanos e que estamos
acostumados a usar quando navegamos na Web, os sites da Dark Web usam nomes de
serviços ocultos de Tor;
• Estes são sempre valores de 16 caracteres adicionados ao início do domínio de topo .onion.
O software Tor operando em um host Tor cria um diretório de arquivos local, atribui
um número de porta para o serviço e gera um par de chaves público-privado quando
configura um serviço oculto.
• Para criar um nome de host de 16 caracteres, o software Tor processa um hash da chave
pública desse par e depois converte os primeiros 80 bits do hash de valor binário para
ASCII.
• Dessa forma, os 16 caracteres resultantes atendem ao requisito de “letra, dígito, hífen” do
protocolo do DNS (Sistema de Nomes de Domínio).
Cada página do Tor é um serviço escondido.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 16


Redes de anonimização de tráfego
Serviços escondidos

O diretório mais famoso do Tor é a Hidden Wiki.


• Surface web: https://thehiddenwiki.org/
• Rede Tor:
http://6nhmgdpnyoljh5uzr5kwlatx2u3diou4ldeommfxjz3wkhalzgjqxzqd.onion/
O Hidden Wiki é uma Wikipedia da dark web.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 17


Serviços escondidos

DuckDuckGo é um mecanismo de busca que também está disponível na surface web.


Ao contrário de outros mecanismos de busca, o DuckDuckGo não coleta ou compartilha
nenhuma de suas informações pessoais.
O mecanismo de busca é ideal se você quer ser completamente anônimo na web.
• Surface web: https://duckduckgo.com/
• Rede Tor: https://3g2upl4pq6kufc4m.onion/

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 18


Serviços escondidos

O Hidden Answers pode ser descrito como uma versão dark web do Reddit ou Quora.
Você pode fazer a pergunta que quiser, sem qualquer censura. Outros membros da
comunidade tentarão responder às suas perguntas.
• Rede Tor: http://answerstedhctbek.onion/

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 19


Serviços escondidos

Até o Facebook está no Tor:


• Surface web: https://www.facebook.com/
• Rede Tor: https://www.facebookcorewwwi.onion/

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 20


Blockchain e Criptomoedas

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 21


Blockchain e Criptomoedas

De forma resumida, blockchain é um sistema que permite rastrear o envio e recebimento


de alguns tipos de informação pela internet. São pedaços de código gerados online que
carregam informações conectadas – como blocos de dados que formam uma corrente
– daí o nome.
O conceito do blockchain surgiu em 2008 no artigo acadêmico Bitcoin: um sistema finan-
ceiro eletrônico peer-to-peer, de autoria de Nakamoto (2009) (pseudônimo do suposto
criador do bitcoin).

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 22


Blockchain e Criptomoedas

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 23


Blockchain e Criptomoedas

Todas as transações na blockchain funcionam através de mensagens criptografadas.


• Esse processo é a base da confiança e da segurança das transações, não apenas de
bitcoin, mas de todas as criptomoedas.
Até hoje nunca houve nenhum tipo de fraude que conseguisse explorar uma falha na
rede.
• As fraudes vistas até aqui foram ataques a serviços de terceiros que utilizavam blockchain.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 24


Blockchain e Criptomoedas
BitCoin

A Bitcoin (BTC) foi a primeira criptomoeda descentralizada com base de tecnologia


blockchain, funciona sem qualquer controlo de nenhuma entidade bancária ou governo.
A Bitcoin é divisível em 8 casas decimais.
• Como o euro pode ser dividido em cêntimos, da mesma forma a BTC pode ser dividido
em mBTC (1 MiliBit = 0.001 BTC), uBTC (1 MicroBit = 0.000001 BTC) e satoshis (1 sat =
0.00000001 BTC).
O preço é definido pela oferta e pela procura, ou seja, pelo preço que as pessoas estão
dispostas a pagar.
• Quando há mais procura de Bitcoin, o preço sobe, quando há menos procura, o preço
desce.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 25


Blockchain e Criptomoedas
Ethereum

É uma plataforma descentralizada, que permite, de uma forma mais simples, criar apli-
cações e executar contratos inteligentes baseados na tecnologia blockchain.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 26


NFT

Non-fungible tokens ou tokens colecionáveis são indivisíveis e não são substituíveis: o


que significa que não se pode enviar uma parte de um NFT a alguém e cada um destes
tokens é único.
O que os torna únicos são os dados ou a informação armazenada dentro das NFT’s.
Os dados de identificação dentro das NFT’s são armazenados nos seus contratos inte-
ligentes.
As NFT’s facilitam o processo de digitalização de dados e bens. Atualmente este tipo de
tokens são utilizados em várias áreas, tais como: arte, bens virtuais, jogos.

Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 27


Referências

KATZ, Jonathan; LINDELL, Yehuda. Introduction To Modern Cryptography. 3. ed.


Boca Raton: CRC Press/Taylor & Francis Group, 2021. 649 p. (Chapman & Hall/CRC
Cryptography And Network Security). ISBN 9781351133036.
KUROSE, James F.; ROSS, Keith W. Computer Networking: A top-down approach. 8.
ed. [S.l.]: Pearson, 2020. ISBN 9780136681557.
NAKAMOTO, Satoshi. Bitcoin: A peer-to-peer electronic cash system. 2009. Dispo-
nível em: <http://www.bitcoin.org/bitcoin.pdf>. Acesso em: 15 mar. 2022.
STINSON, Douglas R.; PATERSON, Maura B. Cryptography: Theory and practice. 4.
ed. Boca Raton: CRC Press/Taylor & Francis Group, 2018. 599 p. (Textbooks in Mathema-
tics). ISBN 9781138197015.
TANENBAUM, Andrew S.; FEAMSTER, Nick; WETHERALL, David J. Computer
Networks. 6. ed. [S.l.]: Pearson, 2021. Global Edition. ISBN 978-1-292-37406-2.
Criptografia Aplicada - Prof. MSc. José Paulo Lima Seção 03 28

Você também pode gostar