16
votes
Accepted
Which hash algorithms support binary input of arbitrary bit length?
What established hash algorithms are compatible with input binary data of arbitrary bit length?
The specifications of many hash algorithms include provisions for input of binary data of length not a ...
7
votes
Implementing SHAKE using SHA3
This is not possible.
For SHAKE128 this is trivially true, because there is no normal SHA3 hash function which has the same "capacity" (~internal state size), as we can see in section 6 of ...
6
votes
Which hash algorithms support binary input of arbitrary bit length?
Most common hash algorithms support arbitrary bit strings as input (up to a very large maximum length: $2^{64}-1$ bits or more). This includes MD5, SHA-1, the SHA-2 family, the SHA-3 family, etc.
...
3
votes
Accepted
When to use UUID and when to use hash?
They can both be used to uniquely identify a content, so I have doubts about which one should be used in what situations.
The purpose in common for all UUIDs is that they're intended to be unique. ...
2
votes
Which hash algorithms support binary input of arbitrary bit length?
What established hash algorithms are compatible with input binary data of arbitrary bit length?
Actually, most of them.
All SHA-3 hashes are well defined for any finite bit string, be it 1 bit, 42 ...
2
votes
Which hash algorithms support binary input of arbitrary bit length?
The following general method would work:
Append $0$ bits until the length of the bitstream is a multiple of 8. Call the number of bits you had to append $N$. Thus $N$ will be between $0$ and $7$.
...
2
votes
When to use UUID and when to use hash?
TL;DR: UUID's should be thought of as unique identifiers; they do not have any other strong cryptographic properties.
As explicitly stated in the security section of the RFC:
Do not assume that UUIDs ...
2
votes
Accepted
Using hash for data integrity and authenticity, how?
Taking a hash of the concatenation of hashes is perfectly fine. It's how Merkle trees work. Blockchains are Merkle trees, by the way.
You can also hash the concatenation of multiple pieces of data, ...
2
votes
Padding for SHAKE256
When there's more than 2 bytes to pad:
0x1f || 0x00^* || 0x80
When there's only 2 bytes to pad:
0x1f || 0x80
When there's only ...
1
vote
Accepted
How do non-Turing complete languages like Clarity support sha256 hashing, which internally relies on loops?
The loops in SHA, AES, and pretty much all ciphers used in modern IT security can all be un-rolled, as their loop condition don't depend on input data.
Take SHA-256 for example, it's compression ...
1
vote
Which hash algorithms support binary input of arbitrary bit length?
These algorithms take bit strings as input:
MD4/5/6, SHA-0/1/2/3
GOST, RIPEMD, Streebog, Tiger, Whirlpool
Unless NIST screwed up, all 51 first-round SHA-3 candidates, since one requirement was that ...
1
vote
Reversed hashing algo using subtle crypto
Let $H$ be a random oracle, i.e. a perfect hash function that for each input (source) $x$, outputs a uniformly random $y=H(x)$.
$fHash(x)$:
sample a random string $r\gets\{0,1\}^\kappa$
let $h_1 = H(...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
hash × 3039collision-resistance × 526
encryption × 298
sha-256 × 266
passwords × 147
hmac × 140
md5 × 140
signature × 135
preimage-resistance × 134
sha-1 × 132
algorithm-design × 127
cryptanalysis × 106
mac × 100
password-hashing × 95
salt × 87
sha-3 × 85
public-key × 79
authentication × 79
key-derivation × 74
sha-2 × 70
sha-512 × 67
aes × 64
one-way-function × 62
rsa × 61
merkle-damgaard × 60