Post on 04-Oct-2020
Criptografia, Hash e EncodeProf. Vinícius Vieira
Criptografia, Hash e Encode
● Crypto quer dizer "escondido, secreto", e graphy aponta para "escrita, representação, gravação, descrição, uma maneira de desenhar etc...".
Criptografia, Hash e Encode
● Encriptação então, é a ciência que estuda as técnicas da comunicação secreta na potencial presença de third parties, que neste contexto é quem não deve ter acesso à informação de forma legível.
Criptografia, Hash e Encode
Encriptação de Fluxo Encriptação de Bloco
Criptografia, Hash e Encode
Sistema Criptográfico Simétrico
Criptografia, Hash e Encode
Exemplos:
- AES- Twofish- Serpent- Blowfish- CAST5- RC4- 3DES (baseado no DES)- IDEA
Criptografia, Hash e Encode
Limitações:
A desvantagem dos algoritmos de chave simétrica é a exigência de uma única chave secreta compartilhada, com uma cópia em cada extremidade. As chaves estão sujeitas à descoberta potencial por um adversário criptográfico, por isso necessitam ser mudadas frequentemente e mantidas seguras durante a distribuição e no serviço. Essa exigência de escolher, distribuir e armazenar chaves sem erro e sem perda, é conhecida como “gerenciamento de chave”.
Criptografia, Hash e Encode
Sistema Criptográfico Assimétrico
Criptografia, Hash e Encode
Exemplos:
- Protocolo Diffie-Hellman- DSS (Digital Signature Standard)- ElGamal- Criptosistema de Paillier- Algoritmo de encriptação RSA (PKCS#1)- Criptosistema de Cramer–Shoup- YAK- PGP e GPG
Criptografia, Hash e Encode
Limitações:
Um problema central com o uso da criptografia de chave pública é a confiança que uma chave pública específica é autêntica e não foi adulterada ou substituída por um terceiro malicioso. A abordagem mais comum para esse problema é usar uma infraestrutura de chave pública (ICP), na qual um ou mais terceiros – conhecidos como autoridades certificadoras – certificam a propriedade dos pares de chaves.
Criptografia, Hash e Encode
Limitações:
Privacidade Muito Boa (em inglês PGP), além de ser uma estrutura de autoridade certificada, usa um esquema geralmente chamado de a "teia da verdade" (do inglês "web of trust"), que descentraliza essa autenticação de chaves públicas por um mecanismo central, e substitui endossos individuais do elo entre usuário e chave pública. Até agora, nenhuma solução completamente satisfatória para o "problema de autenticação de chave pública" foi encontrado.
Criptografia, Hash e Encode
Hashing
Criptografia, Hash e Encode
Hashing é muitas vezes dito como se fosse uma forma de encriptação, mas não.
Hashing serve para garantir a integridade, em que os algoritmos de hash são one-way, ou seja, é irreverssível/unidirecional, ex: formato em as passwords são armazenadas, são hashes, em que a verificação é feita não com base na password original do utilizador, mas sim confirmando que a password que o utilizador colocou gera a mesma hash que está armazenada ou não.
Criptografia, Hash e Encode
Modelo de cálculo de hash
Criptografia, Hash e Encode
Exemplos:
- MD4 e MD5- SHA 256 e SHA 512
Criptografia, Hash e Encode
Encode
Criptografia, Hash e Encode
O propósito do Encoding é garantir que os dados possam ser consumidos por tipos de sistema diferentes, ex: enviar dados em binário por e-mail ou conseguir fazer o encode de caracteres especiais numa página web, etc... É processo de colocar uma sequência de caracteres (letras, números, pontuação, e certos símbolos) em um determinado formato.
Criptografia, Hash e Encode
O objetivo NÃO é tornar a informação secreta, mas sim para garantir que a informação possa ser consumida corretamente consoante o sistema/encoding que temos/queremos.
Criptografia, Hash e Encode
Exemplos:
- Família Base- Família ROT- Outros diversos aqui
Criptografia, Hash e Encode
Dúvidas?