One experienced user of this forum said: "The key is the input of the hash function to build up a fast internal hash table. The key is hashed again to perform the lookup.".

If I hash a data such as a 262144-bytes seed (as SMhasher does) is passed through a hash function to build up a fast internal hash table, can the secondary lookups include different data such as a counter appended to the seed again? I mean if some bytes can be appended to the seed to be hashed and reuse the same internal hash table again, not having to rebuild it again.

For example:


H is the hash, S is the seed, 01, 02, 03 the counter, all hashed sequentially. The H(S) hashed first should build the internal hash table for subsequent lookups.

  • $\begingroup$ Your question could really use a concrete example of what you're trying or expecting to achieve. Missing that, I can only speak generically: if the question is whether there is a simple relationship between any two inputs (related, as you're suggesting, or not) to a secure hash function, such as SHA-3, then the answer is no. $\endgroup$
    – swineone
    Mar 13 at 3:02
  • $\begingroup$ @swineone I want to know if I could freely use a large seed with a hash function for encryption, hashing a 4096-byte seed and produce a 32-byte output would make the speed of output be terrible slow. Without the need to rebuild the internal hash table of a hash function would make the output be way faster, but as you said "no", I'm giving up that idea. Thanks! $\endgroup$
    – alpominth
    Mar 13 at 5:31


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.