Lição 2

Hash vs criptografia vs codificação

Como hashing difere de criptografia e codificação.

Desenvolvedores misturam hash, criptografia e codificação porque os três transformam dados em outra representação. Resolvem problemas diferentes.

Codificação: representação, não proteção

Codificação formata dados para transporte ou armazenamento. Base64, por exemplo, transforma binário em ASCII imprimível. Quem recebe o texto pode decodificar de volta. Codificação é reversível por design.

Criptografia: sigilo com chave

Criptografia protege confidencialidade. Com a chave correta, o ciphertext volta ao plaintext. Sem a chave, descriptografar deve ser impraticável. Responde: “Como manter isso legível só para quem está autorizado?”

Hash: impressão digital, não sigilo

Hash produz digest para comparação e integridade. É unidirecional no uso normal. Responde: “Estes bytes batem com uma impressão conhecida?” Não esconde dados de quem já tem a entrada.

Comparação rápida

MecanismoReversível?Objetivo típico
CodificaçãoSimFormato de transporte / exibição
CriptografiaSim (com chave)Confidencialidade
HashNão (na prática)Integridade / comparação

Erro comum

Times codificam valores sensíveis em Base64 e acham que estão protegidos. Base64 não é criptografia. Publicar MD5 de um arquivo ajuda outros a verificar integridade, mas não impede leitura se já têm o arquivo.

Voltar à visão geral do curso