EA_IID(1)
π EA_IID β the man page, but make it cute π
okay bestie, so you know ea_iid(1)? yeah, that one. the entropy assessment tool. it runs IID tests. here's literally everything about it, no notes, no skips, all the flags. you're welcome π
β¨ NAME β¨
ea_iid β run IID tests for entropy assesment π¦
(and yes, that's how the original spells "assesment", we do not correct the ancestors π)
π₯ SYNOPSIS π₯
ea_iid [-i|-c] [-a|-t] [-v] [-q] [-l <index>,<samples> ] <file_name>
[bits_per_symbol]
that's the whole vibe. one file, a bunch of little flags, and optionally a number. iconic honestly πΈ
π DESCRIPTION π
Run IID tests for entropy assesment. that's the mission. that's the whole job. π
<file_name>β has to be a relative path to a binary file, and that file needs at least 1 million entries (samples). no tiny files, bestie, the math needs data fr fr. π₯[bits_per_symbol]β must be between1-8, inclusive. if you don't pass it, the value is inferred from the data. by default. she figures it out herself π
π the flag pairings
[-i|-c]β pick one:-imeans initial entropy estimate,-cmeans conditioned sequential dataset entropy estimate</memint>. the initial entropy estimate is the default, so if you say nothing, you get-i. π[-a|-t]β pick one:-aproduces theH_bitstringassessment using all read bits.-ttruncates the bitstring used to produce theH_bitstringassessment to1000000bits. testing all data is the default. π¦
π Note, and this one matters: when you're testing binary data, noH_bitstringassessment is produced at all. so-aand-tproduce the same results for the initial assessment of binary data. not me warning you before you spend an hour comparing them π
π the rest of the flags
-vβ optional verbosity flag for more output. you can stack it, bestie β it can be used multiple times. more v's, more yapping β¨-qβ quiet mode, less output to screen. and heads up: this overrides any verbose flags. she's louder than-vand she will not be silenced π-l <index>,<samples>β read the<index>substring of length<samples>. π
samples are assumed to be packed into 8-bit values, where the least significant bits_per_symbol bits constitute the symbol. that's the packing rule, don't fight it. π§
π the entropy estimate modes, in full
-iβ Initial Entropy Estimate (Section3.1.3) π
Computes the initial entropy estimate H_I as described in Section 3.1.3 (not accounting for H_submitter) using the entropy estimators specified in Section 6.3. if bits_per_symbol is greater than 1, the samples are also converted to bitstrings and assessed to create H_bitstring. for multi-bit symbols, two entropy estimates get computed: H_original and H_bitstring. returns min(H_original, bits_per_symbol X H_bitstring). and the initial entropy estimate itself is:
H_I = min(H_submitter, H_original, bits_per_symbol X H_bitstring)
that's the whole formula, copied exactly, do not @ me. π
-cβ Conditioned Sequential Dataset Entropy Estimate (Section3.1.5.2) π¦
Computes the entropy estimate per bit h' for the conditioned sequential dataset, if the conditioning function is non-vetted. the samples are converted to a bitstring. returns:
h' = min(H_bitstring)
-oβ Set Output Type to JSON π
changes the output format to JSON and sets the file location for the output file. yes, it's in the option list even though it's not in the synopsis. that's just how she is. π
--versionβ prints tool version information. β¨
π COPYRIGHT π
okay bestie, this part is the legal tea and I'm keeping it exactly as-is, because that is the entire point of a legal notice. read it, it's not a vibe, it's a contract π«Ά
Disclaimer: NIST-developed software is provided by NIST as a public service. You may use, copy, and distribute copies of the software in any medium, provided that you keep intact this entire notice. You may improve, modify, and create derivative works of the software or any portion of the software, and you may copy and distribute such modifications or works. Modified works should carry a notice stating that you changed the software and should note the date and nature of any such change. Please explicitly acknowledge the National Institute of Standards and Technology as the source of the software.
NIST-developed software is expressly provided "AS IS." NIST MAKES NO WARRANTY OF ANY KIND, EXPRESS, IMPLIED, IN FACT, OR ARISING BY OPERATION OF LAW, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND DATA ACCURACY. NIST NEITHER REPRESENTS NOR WARRANTS THAT THE OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE, OR THAT ANY DEFECTS WILL BE CORRECTED. NIST DOES NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE OF THE SOFTWARE OR THE RESULTS THEREOF, INCLUDING BUT NOT LIMITED TO THE CORRECTNESS, ACCURACY, RELIABILITY, OR USEFULNESS OF THE SOFTWARE.
You are solely responsible for determining the appropriateness of using and distributing the software and you assume all risks associated with its use, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and the unavailability or interruption of operation. This software is not intended to be used in any situation where a failure could cause risk of injury or damage to property. The software developed by NIST employees is not subject to copyright protection within the United States.
and that's the whole page, bestie. go run some IID tests. slay. periodt. π β¨
πΈ sign-off time: this was ea_iid version 1.1.5, dated April 2023, living in section EA_IID(1) of the manual. mwah. ππ¦π
π¦ where this page comes from
- debian trixie: sp800-90b-entropy-assessment 1.1.8-3
- ubuntu noble: sp800-90b-entropy-assessment 1.1.5-4build2
- ubuntu questing: sp800-90b-entropy-assessment 1.1.8-3
- ubuntu resolute: sp800-90b-entropy-assessment 1.1.8-3build1
- ubuntu stonking: sp800-90b-entropy-assessment 1.1.8-3build2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms