Skip to main content
213 votes
Accepted

What are the differences between .pem, .csr, .key, .crt and other such file extensions?

File extensions can be (very) loosely seen as a type system. .pem stands for PEM, Privacy Enhanced Mail; it simply indicates a base64 encoding with header and ...
110 votes
Accepted

What is the difference between a digest and a hash function?

The digest is the output of the hash function. For example, sha256 has a digest of 256 bits, i.e. its digest has a length of 32 bytes. That's it really.
Awn's user avatar
  • 1,572
53 votes
Accepted

Can I say "I have encrypted something" if I hash something?

Encryption algorithms and hash algorithms both belong to the realm of cryptography but are two different things: Encryption doesn't contain hash functions. As stated on Wikipedia: In cryptography, ...
AleksanderCH's user avatar
  • 6,462
39 votes
Accepted

What is a Pedersen commitment?

what Pedersen commitments are In a commitment scheme such as Pedersen: the committer (or sender) decides (or is given) a secret message $m$ taken in some public message space with at least two ...
fgrieu's user avatar
  • 142k
36 votes
Accepted

Is there any difference between cryptography and cryptology?

Today, indeed the the terms "Cryptography" and "Cryptology" can mostly be used interchangeably. Historically things have been more interesting though, where Cryptology was the umbrella term for ...
SEJPM's user avatar
  • 46.1k
35 votes
Accepted

What does "birational equivalence" mean in a cryptographic context?

I feel that as it was my comment, I am obliged to answer this :-). First of all, birational equivalence is really a geometric notion. As far as I know, there is no analogue for groups, rings or ...
CurveEnthusiast's user avatar
35 votes
Accepted

What do the signature security abbreviations like EUF-CMA mean?

Notation. Sets are represented using the calligraphic font and algorithms using the straight font. Throughout, $\Sigma:=(\mathsf{K},\mathsf{S},\mathsf{V})$ denotes a signature scheme on a key-space $\...
ckamath's user avatar
  • 5,298
35 votes

Boolean Circuits vs Arithmetic Circuits

Boolean circuits and arithmetic circuits are two different ways of representing a computation. The main difference is with respect to their input types and their gate types: boolean circuits work on ...
Geoffroy Couteau's user avatar
31 votes
Accepted

How are the names of cryptographic algorithms (like RSA, AES, SHA-256, Curve25519, etc.) pronounced?

However you pronounce them, the important thing is to make sure that your listeners understand you. In general, it's never wrong to pronounce acronyms letter by letter (and digit by digit), as in: ...
Ilmari Karonen's user avatar
26 votes
Accepted

What was NIST’s reason to switch naming from MD… (Message Digest) to SHA… (Secure Hashing Algorithm)?

When NIST introduced SHA-0 in 1993, they – for the first time – switched their naming convention from MD-n to SHA-n Actually, MD-n was not NIST's naming conventions; it was RSA Security's (a private ...
poncho's user avatar
  • 148k
26 votes
Accepted

What is the difference between TRNG and CSPRNG?

A True Random Number Generator uses a physical phenomenon not known to be fully deterministic as origin of the discrete values (bits or integer numbers) that it outputs. That phenomenon can for ...
fgrieu's user avatar
  • 142k
26 votes
Accepted

Why was the term "discrete" used in discrete logarithm?

The word discrete is used as an antonym of 'continuous', that is, it is the normal logarithmic problem, just over a discrete group. The standard logarithmic problem is over the infinite group $\...
poncho's user avatar
  • 148k
25 votes

What is the difference between a digest and a hash function?

The basic difference between a hash function and digest is that digest is the value obtained from a hash function. A hash function is any function that can be used to map data of arbitrary size to ...
Shanif Ansari's user avatar
23 votes

Encoding vs. Compression vs. Encryption

OK, there seems to be some confusion with regards to terminology, so let's try to clean that up. I'll try and define things myself, but also provide the more formal Wikipedia definitions. Encryption. ...
SEJPM's user avatar
  • 46.1k
20 votes
Accepted

What is the difference between PBE and symmetric key encryption?

As typically implemented, PBE takes a low-entropy, user-supplied password, adds some entropy to it, and thus strengthens it before turning it into a key. This key can then be used for symmetric ...
vrtjason's user avatar
  • 346
20 votes

Can I say "I have encrypted something" if I hash something?

Encryption implies that with the appropriate key, it is possible to decrypt and recover the original message. Which (in general) is not possible from a hash. Thus “I will encrypt” is not adequate if ...
fgrieu's user avatar
  • 142k
18 votes
Accepted

What is a related key?

Related keys are keys with any mathematical relationship that leads to exploitability in the cipher. This can be a simple relationship, such as having many bits in common. This was the case with RC4 ...
forest's user avatar
  • 15.3k
17 votes
Accepted

Does a hash function necessarily need to allow arbitrary length input?

Is it necessary for a hash function to allow arbitrary length inputs or not? Of course not. SHA-256 is limited to inputs of 18,446,744,073,709,551,615 bits or less; it is not defined for larger ...
poncho's user avatar
  • 148k
17 votes

What do you call a random number that affects the calculation, but not the result?

The technique of using an auxiliary input that affects intermediate values, but not the final result, is called blinding. The auxiliary input can be called a “blinding parameter” or some other variant ...
Gilles 'SO- stop being evil''s user avatar
15 votes

What is a “witness” in zero knowledge proof?

A witness for an NP statement is a piece of information that allows you to efficiently verify that the statement is true. For example, if the statement is that there exists a Hamiltonian cycle in some ...
Christian Matt's user avatar
15 votes

What does puncturing in cryptography mean

Other than kodlu's answer, there exists another meaning of the term - potentially more specific to Cryptography rather than coding theory: That of a 'punctured' PRF. This describes a PRF $F : K \times ...
Morrolan's user avatar
  • 1,157
14 votes

Does a hash function necessarily need to allow arbitrary length input?

Is it necessary for a hash function to allow arbitrary length inputs or not? Although one can design a hash function that can hash arbitrary size there is no need since one can not easily pass the $2^...
kelalaka's user avatar
  • 49k
13 votes

"Seed" vs "seed key"

"seed" and "seed key" are NIST terminology talking about the X9.31 PRNG. In particular, it has a state that consists of: A 3DES or AES key (the "seed key") A 64 or 128 bit current state (the "seed") ...
poncho's user avatar
  • 148k
13 votes
Accepted

Functional difference between stream cipher, XOF, seed expander, KDF, etc

Before we start answering the subquestions, let's bring up some background knowledge. The sponge construct was first proposed by the Keccak team as a bridging element in a security proof for the ...
DannyNiu's user avatar
  • 9,421
13 votes

Is there any difference between cryptography and cryptology?

Word roots The greek word root "crypto" means "hidden" or "secret". The greek word root "ology" means "study of", "science of", or "theory of". The greek word root "graph" means "to write" or "...
Ella Rose's user avatar
  • 19.7k
13 votes

Why was the term "discrete" used in discrete logarithm?

While I agree completely with poncho's answer, this other viewpoint might be useful. Specifically, I think a better comparison isn't between $\mathbb{Z}_p^*$ and $\mathbb{R}^*$, but with $\mathbb{Z}_p^...
Mark Schultz-Wu's user avatar
  • 13.5k
13 votes

Can I say "I have encrypted something" if I hash something?

I understand that it gives the wrong impression, but I think it is not absolutely wrong, or is it? It is actually. A hash algorithm computes a 'fingerprint' if you will of the input. So just as a ...
Paul Uszak's user avatar
  • 15.5k
13 votes
Accepted

What does it mean to be "sound"?

An interactive or non-interactive protocol is said to be sound for a language $\mathcal{L}$ if it is "hard" for a (malicious) prover $\textsf{P}$ to convince a verifier $\textsf{V}$ of a ...
ckamath's user avatar
  • 5,298
12 votes
Accepted

What does the term "asymptotic security" mean?

One of the key ideas of cryptography is to provide security by means of operations that are (relatively) affordable to honest parties but prohibitively costly to adversaries. So one thing you see ...
Luis Casillas's user avatar
12 votes
Accepted

What does "seed" mean in cryptography?

The seed of a pseudorandom number generator — whether cryptographically secure of not — is the initial input that defines the pseudorandom sequence of outputs generated from it. It's not really a term ...
Ilmari Karonen's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible