This article has been translated from English to Brazilian.
Como funciona o hashing?
Na lição anterior, apresentei o conceito de hashing e os termos relevantes. Agora, vamos aprender como ele funciona!
O hashing é uma operação matemática fácil de executar, mas extremamente difícil de reverter.
O processo de hashing transforma uma parte dos dados em código binário, que é apenas um conjunto de 0s e 1s.
Em seguida, ele divide os números e aplica um "jumbling" secreto, que é feito por algo chamado "função de hash".
Como o hashing funciona na criptografia?
Quando usado no Bitcoin e em outras criptomoedas, o resultado final é normalmente uma sequência longa de 64 dígitos de números e letras.
Como a conversão é feita por um algoritmo criptográfico (a "função de hash"), a fórmula de junção é desconhecida, de modo que a cadeia de 64 dígitos não pode ser revertida.
Uma cadeia é uma sequência de caracteres.
As cadeias de caracteres são como frases. Elas são formadas por uma combinação de caracteres.
Pense em um hash como um conjunto de letras e números aleatórios.
Uma parte única de dados sempre produzirá o mesmo hash.
Por exemplo, toda vez que a cadeia de caracteres acima for executada por meio da função de hash, ela sempre produzirá o mesmo hash.
Mas o que acontece se fizermos apenas uma pequena alteração na cadeia de caracteres? (Destacado em amarelo.)
A frase termina com um ponto de interrogação em vez de um ponto final.
Apesar de ter sido uma alteração mínima na frase, o hash é TOTALMENTE diferente.
Você pode ver como o uso de hashes pode ser usado para detectar adulterações, pois mesmo uma pequena alteração na entrada da função hash resulta em um resultado totalmente diferente.
É muito importante que você se lembre desse ponto porque, em uma lição posterior, você verá como isso é usado para evitar que transações anteriores sejam adulteradas.
A função hash é apenas de sentido único.
Você não pode pegar um hash existente e tentar revertê-lo para encontrar a string de entrada.
Portanto, se tudo o que você sabe é o hash, não há como saber qual é a entrada original. Você não pode fazer "engenharia reversa" ou hackear o hash.
Por fim, o comprimento do resultado (o "hash") NÃO aumenta com o aumento das informações na entrada. Uma função de hash recebe dados de entrada de QUALQUER tamanho e retorna um valor que tem um tamanho FIXO.
Se você colocar o texto inteiro de um livro do Harry Potter, que tem mais de 76.000 palavras, o resultado do hash AINDA terá apenas 64 caracteres.
E, mais uma vez, se você digitar incorretamente uma única letra do livro do Harry Potter e passar pela função de hash, ela produzirá um hash totalmente diferente do anterior.
Isso permitiria que você soubesse instantaneamente que o livro foi modificado sem precisar inspecionar manualmente o livro inteiro! Muito legal, não é?




