O que é a Bíblia de Hashing?

11

Existe uma referência semelhante a Cormen em Hashes e Hashing? Por alguma razão, essa estrutura em particular tem recebido pouca atenção na minha formação em CS, mas eu gostaria de aprender mais, pois elas parecem estar em toda parte. Eu sei que Cormen cobre, mas estou procurando algo mais especializado e aprofundado.

Engenheiro Mundial
fonte
Até onde eu sei, não existem muitos livros sobre hashes e apenas hashes. Tenho certeza que você pode encontrar alguns, mas eles não são reconhecidos como a "Bíblia".
Dynamic
Eu realmente não entendi sua pergunta. Um hash é apenas um BLOB retornado por uma função de hash. Deseja saber mais sobre funções hash? Você está falando sobre funções hash criptográficas ou o tipo rápido mas inseguro usado na maioria das hashtables? Ou sobre tabelas hash?
CodesInChaos
5
Eu assumo que por Cormen você quer dizer Thomas H. Cormen e, portanto, está se referindo à Introdução aos Algoritmos . Geralmente, é uma boa ideia vincular esses recursos, pois eles podem não ser tão amplamente conhecidos quanto você imagina.
Mark Booth

Respostas:

5

Gostei muito do livro Organização e processamento de arquivos . Apesar do nome, é apenas um livro de estruturas de dados. A primeira metade é sobre hash e vários métodos de resolução de colisão, e mais tarde há cobertura de alguns algoritmos de hash dinâmico.

É um pouco velho, mas ainda é útil. Existem exemplos passo a passo para cada algoritmo e respostas para os exercícios.

Disclaimer: Sou tendencioso porque o autor era um dos meus professores de CS.

Chris
fonte
1

Cormen está um pouco desatualizado atualmente. A página da wikipedia tem uma boa coleção e discussão , mas atualmente o líder em acesso rápido a dados não criptográficos é o hash de murmúrio .

ps Alguém poderia argumentar que novas Bíblias não estão mais sendo criadas nos dias de hoje. Existem apenas páginas muito boas na Wikipedia e no Stack Overflow. :)

Randall Cook
fonte
O tipo de hash que você precisa depende criticamente dos dados que estão sendo hash (tanto no caso normal quanto no anormal) e no tipo de tabela de hash que está sendo construída. Por exemplo, funções hash fortes contra ataques (caso anormal) tendem a ser mais lentas com dados médios (caso normal) e pode haver mecanismos externos para limitar o dano em um caso anormal (por exemplo, limites gerais no tamanho total da entrada) dados).
Donal Fellows
-1

Meu palpite é que aprender sobre hashes não é o mesmo que aprender sobre geradores de números aleatórios (rng), mas seu campo muito semelhante para saber o que difere um número aleatório real de um pseudo-aleatório e a qualidade sobre a aleatoriedade. Você provavelmente sabe como copiar uma imagem para ocultar qualquer tipo de dados que você possa extrair dela, então esse é o meu palpite. Você precisa de algumas boas sementes para obter um bom hash e saber sobre aleatoriedade pode ajudar.

Flavio Kodama
fonte
Uma resposta deve abordar completamente a questão. A questão aqui é sobre fontes autorizadas e material de referência para obter informações sobre hashes. Sua resposta não menciona nenhuma fonte ou material. Recomendamos que você leia o centro de ajuda . Lembre-se de que o Stack Exchange não é um fórum - que essas são respostas, não comentários ou tangentes.