Hashing

Definição - o que significa hash?

Hashing é a prática de pegar uma string ou chave de entrada, uma variável criada para armazenar dados narrativos, e representá-la com um valor hash, que é normalmente determinado por um algoritmo e constitui uma string muito mais curta do que a original.

O hash também é um método de classificação de valores-chave em uma tabela de banco de dados de maneira eficiente.

Definirtec explica Hashing

Pense em uma frase de três palavras codificada em um banco de dados ou outro local da memória que pode ser transformada em um valor alfanumérico curto composto de apenas algumas letras e números. Isso pode ser incrivelmente eficiente em escala e esse é apenas um dos motivos pelos quais o hashing está sendo usado.

Outros motivos principais estão relacionados à segurança cibernética superior.

Hashing em ciência da computação e criptografia

O hash tem vários usos importantes na ciência da computação. Um que talvez receba mais atenção hoje em um mundo onde a segurança cibernética é a chave é o uso de hashing na criptografia.

Como as strings e entradas com hash não estão em sua forma original, elas não podem ser roubadas da forma como seriam se não tivessem hash. Se um hacker acessar um banco de dados e encontrar uma string original como "John's wallet ID 34567", ele pode simplesmente coletar, nab ou furtar essas informações e usá-las a seu favor, mas se, em vez disso, encontrar um valor hash como "a67b2", essa informação é completamente inútil para eles, a menos que tenham uma chave para decifrá-la.

O hash é usado na compactação de dados?

No entanto, também há grandes benefícios no hashing em termos de compactação de dados.

Hashing não é compressão.

É um animal diferente, mas pode operar de forma muito parecida com a compactação de arquivos, pois pega um conjunto de dados maior e o reduz para uma forma mais gerenciável. Suponha que você tenha escrito "ID da carteira de John" 40 ou até 4000 vezes em um banco de dados.

Ao pegar todas essas strings repetitivas e misturá-las em uma string mais curta, você está economizando muito espaço na memória.

Usando Hashing na Recuperação de Banco de Dados

Depois, há também o uso de hashing na recuperação do banco de dados.

É aqui que outro exemplo se torna útil - muitos especialistas fazem uma analogia com o hashing a uma importante inovação de biblioteca do século 20 - o sistema decimal de Dewey.

Em certo sentido, o que você obtém ao recuperar um valor hash é como obter um número do sistema decimal de Dewey para um livro. Em vez de pesquisar o título do livro, você está pesquisando o endereço do sistema decimal de Dewey ou a identificação, além de alguns caracteres alfanuméricos essenciais do título ou autor do livro.

Vimos como o sistema decimal de Dewey funcionou bem nas bibliotecas e também na ciência da computação. Resumindo, ao reduzir essas strings de entrada originais e ativos de dados em chaves hash alfanuméricas curtas, os engenheiros são capazes de fazer vários aprimoramentos importantes de segurança cibernética e economizar espaço de arquivo ao mesmo tempo.

Função do Hashing na adulteração de arquivos

O hash também é valioso na prevenção ou análise da violação de arquivos.

Veja como isso funciona - o arquivo original irá gerar um hash que é mantido com os dados do arquivo. O arquivo e o hash são enviados juntos e a parte receptora verifica o hash para ver se o arquivo foi comprometido. Se houver alguma alteração no arquivo, o hash mostrará isso.

Tudo isso mostra por que o hashing é uma parte tão popular do tratamento de banco de dados.

Esta definição foi escrita no contexto da Cibersegurança