usnistgov / SP800-90B_EntropyAssessment

The SP800-90B_EntropyAssessment C++package implements the min-entropy assessment methods included in Special Publication 800-90B.
195 stars 88 forks source link

Meaning of H_bitstring and H_original #197

Open ShaohuaTong opened 2 years ago

ShaohuaTong commented 2 years ago

Hi, in most cases of my experiment from 'ea_non_iid', H_bitstring bit-wide < H_original (Bitstring estimate bit-wide < literal estimate).

In a few cases H_original < H_bitstring bit-wide, I would like to ask what is the implicit meaning behind H_original < H_bitstring bit-wide, What could have caused this?

joshuaehill commented 2 years ago

These terms are described in NIST's SP 800-90B document. It is difficult to interpret the results of this program without first reading this document, so I encourage you to do so if you haven't yet.

Testing the bitstring representation of the data stream (resulting in the H_bitstring estimate) allows all of the 90B entropy estimators to be used (as only a subset of entropy estimators support non-binary data). If bit-width * H_bitstring is less than H_original, then likely one of the binary-only estimators produced a lower estimate than suggested by the non-binary estimators.