Compartilhamento de tecnologia

Explicação do hash da string C (hush)

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


O que é haxixe

Hash, também conhecido como hash, é a base da criptografia. Compreender o hash é um pré-requisito necessário para compreender tecnologias como assinaturas digitais e comunicação criptografada.

Em C++, hashes são frequentemente usados ​​para criptografar strings para que strings diferentes tenham valores diferentes.

Ao mesmo tempo, os hashes também são irreversíveis, por isso são frequentemente usados ​​para criptografar senhas.

Princípio de hash

O princípio do hash é realmente muito simples. Trata-se de tratar essa string como um número multibase e, em seguida, convertê-lo em um número decimal.

Processo de implementação

Conhecendo o princípio do hash, é muito simples escrever código.

const int base=131;//这里是将字符串看成的进制
int hash(string str) {
	int ans=0;
	for(int i=0;i<str.size();++i) ans=ans*base+(int)str[i];
	return ans;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

outro

Na verdade, existem muitos métodos de hash, como o hash duplo. Mas na verdade apenas um hash é suficiente.

prática

Na verdade, há apenas uma pergunta