Questions tagged [hashing]
161 questions
43
votes
4 answers
What exactly (and precisely) is "hash?"
I have heard the word "hash" being used in different contexts (all within the world of computing) with different meanings. For example, in the book Learn Python the Hard Way, in the chapter on dictionaries it is said "Python calls them "dicts."…
Basil Ajith
- 601
- 1
- 5
- 9
14
votes
9 answers
Do passwords need a max length?
I understand that password storage generally uses hashing for security due to it being irreversible and that the stored hash is just compared to the hash of the password inputed by a user attempting to log in. As hashes are fixed length, does that…
Ethan
- 241
- 2
- 3
11
votes
4 answers
Two-way Hash Functions
While I'm aware most (good) hash functions are one-way (or at least mostly so), I'm wondering if there's any construct (not necessarily called a hash function) which behaves in many ways like a hash function, but can be easily reversed.
For example,…
Joe Horne
- 165
- 1
- 2
- 7
7
votes
2 answers
simple uniform hashing: unclear definition of probability
I am trying to understand the assumption of Simple Uniform Hashing (SUHA) as e.g., in CLRS textbook; or other courses about hashing.
The usual description given to SUHA is (cf. CLRS):
"we shall assume that any given element [i.e., key] is equally…
Jack
- 171
- 1
- 5
6
votes
0 answers
Time complexity of obtaining the support set of an unsorted sequence?
Consider a sequence $s$ of $n$ integers (let's ignore the specifics of their representation and just suppose we can read, write and compare them in O(1) time with arbitrary positions). What's known about the worst-case time complexity of producing a…
einpoklum
- 1,025
- 6
- 19
6
votes
1 answer
Two definitions of universal hash functions
I have seen two definitions of universal hash functions in the literature.
For any $i \geqslant 2$ let $[i]=\{1,\ldots,i\}$.
Definition 1:
A family $\mathcal H$
of hash functions from $[n]$ to $[m]$ is a
$k$-universal family of hash functions…
Mohammad Alaggan
- 358
- 2
- 8
6
votes
3 answers
Can we remove duplicates faster than we can sort?
The problem is (integer) duplicate removal, which can also be perceived as producing the image of an evaluated function (of integers):
Given a sequence $S_\text{in}$ of $n$ integers, produce a sequence $S_\text{out}$ of elements such that any…
einpoklum
- 1,025
- 6
- 19
5
votes
4 answers
How do you find a hash function that respects a custom equality function?
I've been tasked with hashing arbitrary types in C++, with the caveat that A == B implies hash(A) == hash(B) even if equality of A and B is determined by a custom equality function ==.
For simplicity we can assume that == is an equivalence relation.…
etha7
- 51
- 5
4
votes
1 answer
Lemma 2 in Knuth's "Notes on Open Addressing"
I'm trying to read Knuth's Notes on Open Addressing, and I don't quite follow the proof of Lemma 2.
The set-up
We're thinking about hashing $k - 1$ keys into a size $N$ array, with collision resolution via linear probing. In particular, we're…
CruiskeenLawn
- 43
- 4
4
votes
1 answer
What is the complexity class of solving hash decision problems?
With $hash_n$, I mean a standard cryptographic hash like sha256, scaled up to have arbitrary length $n$ of its output with the same underlying principles. What is the time complexity class of the following problem?
Given an $n \in \mathbb{N}$ and…
UTF-8
- 197
- 1
- 11
4
votes
1 answer
Is FKS hashing really linear space?
In FKS hashing, I wonder if the size of the table $G[1..n]$ (used to record the functions $g_i$ which is chosen randomly; one entry per bucket) is really strictly $O(n)$. Given that the probability of a hash function $g_i$ is higher than 0.5, I can…
Thomas Mueller
- 203
- 1
- 8
4
votes
0 answers
Mean and variance of number of buckets of length $i$ in hashing with chaining
Consider a hash table with $m$ buckets, with chaining as collision resolution policy. Given the set $S$ that will be stored in the hash table, let $X_i$ be the number of buckets whose chain length is $i$. Then the cardinality $s = |S|$ of the set…
Mohammad Alaggan
- 358
- 2
- 8
4
votes
2 answers
Merkle tree collision probability
Say I use a perfect 128-bit hash function to construct a merkle tree.
By perfect I mean that any of the values in the $0$–$2^{128}$ range has an equal probability to be an outcome of the function, over a large enough domain of hashed entities.
Does…
Jake
- 49
- 3
4
votes
1 answer
Finding a (minimal?) program that maps $M$ items to indices $[0,M)$
Let's say there are $M$ strings that we are trying to create a perfect hash for such that we get as output of the hash $[0,M)$ with no collisions, when hashing those $M$ items.
I know that there are algorithms that can help you achieve this by…
Alan Wolfe
- 1,358
- 11
- 22
4
votes
2 answers
Why is tabulated hashing 3-wise independent but not 4-wise independent?
Tabulated hashing uses tables of random numbers to compute hash values.
Suppose $|\mathcal{U}| = 2^w \times 2^w$ and $m = 2^l$, so that the items being hashed are pairs $(x,y)$ where $x$ and $y$ are $w$-bit strings (or $2w$-bit strings broken in…
kings
- 141
- 2