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$
    – poncho
    Commented Jun 2, 2022 at 13:58
  • $\begingroup$ Do you mean the entropy of the key? The entropy of the ciphertext (assuming a fixed plaintext)? $\endgroup$
    – poncho
    Commented Jun 2, 2022 at 14:11
  • $\begingroup$ Yes the entropy of the key of a cryptosystem $\endgroup$ Commented Jun 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 Uszak
    Commented Jun 2, 2022 at 18:39

1 Answer 1



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.


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.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.