O que é um Hash?

Qué-es-una-función-Hash
8 min read

Já deve ter ouvido falar de Hash e Funções de Hash em muitas conversas sobre criptomoedas. Neste artigo vamos contar-lhe tudo sobre o Hash e o seu papel no mundo das criptomoedas.

Para ter uma ideia geral, temos de saber que um Hash vem a ser o resultado de uma Função Hash. As Funções de Hash são um tipo de operação criptográfica  criada, por isso seriam  identificadores únicos.  Estes identificadores são derivados das informações extraídas de cada bloco blockchain.

O principal objetivo das funções de hash é encrustar dados para criar uma única cadeia de caracteres. Uma função pode ser criada independentemente da quantidade de dados implementados na sua casa. Estas funções de hash são usadas principalmente na tecnologia blockchain, proporcionando uma maior segurança para a blockchain.

Quem criou as funções hash?

Hashes começou a fazer sentido em 1953 quando Hans Peter Luhn, um cientista informático alemão, pensou numa maneira de encontrar rapidamente documentos e validá-los. No entanto, só em 1961 é que se desenvolveu a primeira função Hash. Wesley Peterson desenvolveu a função de Verificação de Redundância Cíclica.

O principal objetivo desta função era verificar os dados que eram transmitidos em redes como a Internet.  Esta funcionalidade alcançou uma grande adoção devido à sua fácil implementação e hoje continua a ser um  padrão da indústria.  

Posteriormente, novas funções continuaram a ser criadas a partir do desenvolvimento da primeira. Entre estas funções, destaca-se o MD2. Isto foi criado pelo criptógrafo e professor no MIT, Ronald Rivest em 1989.  A função foi uma das primeiras funções criptográficas e proporcionou um alto nível de segurança na Internet. A partir desta função foi criado mD5 que é implementado em ambientes onde a segurança não é o principal objetivo.

Posteriormente, novas funções continuaram a ser criadas a partir do desenvolvimento da primeira. Entre estas funções, destaca-se o MD2. Isto foi criado pelo criptógrafo e professor no MIT, Ronald Rivest em 1989.  A função foi uma das primeiras funções criptográficas e proporcionou um alto nível de segurança na Internet.  A partir desta função foi criado mD5 que é implementado em ambientes onde a segurança não é o principal objetivo.

Para 1992, o projeto europeu RIPE criou a função de hash criptográfico RIPEMD.  Esta função foi incumbida de substituir a função MD4. Hoje em dia ainda é considerado um padrão altamente seguro, especialmente em

RIPEMD-256,   RIPEMD-160 e RIPEMD-320.  

Em 1993 a NSA criou a SHA, o padrão atual para hashes criptográficos. O objetivo da sua criação era  autenticar  documentos eletrónicos.   Atualmente esta função e seus derivados são considerados os mais seguros até à data. Entre os seus derivados podemos destacar o SHA-256 como uma tecnologia fundamental que abriu o caminho para a existência de Bitcoin.  

 

Qué-es-una-función-Hash

Como funciona uma função Hash?

As funções de hash, como esperado, funcionam com base em processos lógicos e muito complexos. Estes processos lógicos geralmente funcionam a partir de um computador a partir do qual qualquer série de dados é recolhida e processada após inseri-los na função.  Mas o que faz a função?

Este processo procura obter uma série de caracteres que têm um comprimento fixo e único para os dados introduzidos.  Note-se que é impossível realizar este processo ao contrário, ou seja, não podemos processar os resultados de uma função de hash para obter os dados iniciais. Por isso entende-se que o processo de criação de hash é um processo unidirecional.

Ser um processo unidirecional permite-nos criar provas de autenticidade.  Se criarmos um documento e o submetermos ao hash, resultará um resultado irreversível. Se alguém editar, copiar ou modificar o documento, o hash mudará para que saibamos sempre quando um documento foi modificado.  

Qué-es-una-función-Hash

Segurança da Função Hash

Quanto à segurança, as funções de hash são extremamente seguras.  Isto porque são criados para melhorar a segurança da  informação digital. O seu principal objetivo é manter os atacantes afastados e impedi-los de fazer ataques a informações que se destinam a proteger as hashes.

Estes altos níveis de segurança vêm de características como as que encontramos no mundo da criptografia.  Ambas as tecnologias baseiam-se nos mesmos conceitos. No entanto, é de notar que as funções de hash não são completamente inquebráveis.  

Para ter uma ideia podemos tomar o exemplo da função MD5. Esta função proporcionou uma segurança notável e a sua utilização espalhou-se por toda a Internet. No entanto, em 1996 tornou-se obsoleto, pois foi capaz de quebrar a segurança da função.

Atualmente existem funções como RIPEMD-160 e SHA-256 que garantem uma grande segurança com base na complexidade do seu funcionamento. No caso de não nos convencermos pela sua reputação de segurança, podemos tratar do que precisamos para os quebrar. Só levaríamos milhares de anos e os atuais supercomputadores a trabalhar sem parar. Então, sim, pode dizer-se que são inabaláveis.

Embora estas últimas funções garantam a elevada segurança necessária, ainda estão a ser investigadas novas formas de garantir a segurança nos processos digitais.

Características

É fácil reconhecer uma função hash pelas suas características.  Abaixo veremos alguns dos principais.

  • Facilidade de cálculo. São fáceis de calcular graças à eficiência dos algoritmos de Hash. Estes não requerem grandes poderes de computação a serem calculados.
  • Função do tipo Isto significa que se qualquer alteração mínima na entrada de dados for executada, um Hash diferente será gerado do que o original.
  • Hashes são irreversíveis. Como já mencionamos anteriormente, não é possível (em teoria) obter os dados originais através do resultado de uma função hash. Graças a isto, os Hashes estão totalmente seguros.
  • Têm fraca resistência e forte em termos de colisões. Isto significa que não é possível calcular um Hash que nos leve a outro Hash igual. Estes são chamados pré-imagem e segunda imagem, conceitos a partir dos quais a segurança de hashes começa.

 

Em suma, as funções de Hash são muito úteis no mundo digital.  Devido à sua rapidez e eficiência, que são únicos e que são económicos no sentido computacional, Hashes tornou-se a peça-chave das criptomoedas.  

Sem ir mais longe, no papel branco (whitepapper) Bitcoin, Satoshi Nakamoto explicou em detalhe por que hashes são usados para criptomoedas e como usá-los.  Desde o lançamento da tecnologia  blockchain Bitcoin evoluiu totalmente, no entanto, partes dela ainda são mantidas. Entre eles o uso de Hashes e criptografia, uma vez que são ferramentas fortes que protegem a segurança da rede.

Que lhe possa interessar…