I want to calculate the entropy of a specific cryptosystem such as the Caesar cipher or Vernam cryptosystem etc but I don't quite understand how to do so. Any help?
-
3$\begingroup$ What does 'entropy of a specific cryptosystem' mean? $\endgroup$– ponchoJun 2, 2022 at 13:58
-
$\begingroup$ Do you mean the entropy of the key? The entropy of the ciphertext (assuming a fixed plaintext)? $\endgroup$– ponchoJun 2, 2022 at 14:11
-
$\begingroup$ Yes the entropy of the key of a cryptosystem $\endgroup$– Konstantina MilJun 2, 2022 at 16:49
-
$\begingroup$ Then I suggest that it's impossible to obtain a bitwise entropy value of a single key since they're derived from passwords like "secret". $\endgroup$– Paul UszakJun 2, 2022 at 18:39
1 Answer
TL;DR:
The entropy of a cryptographic key $K$ cannot be computed in isolation for a single key. It is the property of the generation mechanism for the key.
Explanation:
Entropy is a function of a probability distribution. Assuming you mean the most common entropy measure, Shannon Entropy, given a key $K\in \{0,1\}^b$ which has been randomly generated from the set of $b-$bit strings according to some probability distribution $$ P(x)=Prob\{K=x\},\quad x\in \{0,1\}^b $$ then the entropy of a key drawn from this distribution is $$ H(X)=\sum_{x \in \{0,1\}^b} -P(x) \log_2 P(x)\quad\textrm{bits}. $$ If the distribution of $K$ is uniform then this entropy is $b$ bits.
If the key comes from some randomly chosen SEED and is generated by means of some deterministic algorithm or function, the entropy of the key that is output is the same as the entropy of the SEED.
PS: One can define the uncertainty in a single object, such as a key, by means of Kolmogorov Complexity, which is a theoretical measure. It is defined as the program length of a universal Turing machine (UTM) that will output that key, and halt (stop). This complexity is uncomputable, but can be approximated.