The corrbits calculates bitwise correlation metrics between a pair of files. The files can be identical in which case self-correlation metrics are calculated. Calculated metrics are used to statistically analyse information properties of a binary data.
References:
1. Viznyuk S. 2008 Use of self-correlation metrics for evaluation of information properties
of binary strings.
2. Cover, Thomas M., Thomas, Joy A. 2006 Elements of information
theory. Second Edition. John Wiley & Sons, Inc. ISBN-13
978-0-471-24195-9.
3. Shannon, C.E. 1948 A Mathematical Theory of Communication. The
Bell System Technical Journal 27, 379-423, 623-656.
Usage: corrbits
The corrbits performs the following computations:
| fileA | mandatory | input fileA |
|---|---|---|
| fileB | optional | input fileB; if omitted, corrbits takes fileB=fileA which results in calculation of self-correlation metrics on fileA |
| -p | prints n , MF(n) , n=0...G−1 | |
| -g | prints G , MF ; this is the aggregate of -p option output | |
| -r | prints G , M , total number of bitwise XOR operations performed , MF , Adj.MF , DF | |
| -t top_counts | optional | used with -p or -g option; prints first
top_counts of pairs MF(n)max*N , MF(n)min*N , where MF(n)max and MF(n)min are the current running max and min values of MF(n) of the given rank, starting with 1st through top_count , and N is the running total of times the given max or min value has been encountered. If the [MF(n)max] or [MF(n)min] are enclosed in square brackets, the current output line is the one which provided the given max or min. |
| -s start_bit | optional | start summation in formulas (2-3) for MF and DF with n=start_bit ; default start_bit=0 |
| -e end_bit | optional | end summation in formulas (2-3) for MF and DF with n=end_bit ; default end_bit=G−1 |
| -i interval_bits | optional | summation interval in the formulas (2-3) for MF and DF ; default interval_bits=1 |
| -n threads | optional | allows corrbits to run in multi-threaded mode on SMP machines. Normally the execution time for corrbits grows as M•G. Using threads parameter allows corrbits to execute ≈threads times faster as long as there are at least threads CPU cores available on the machine. This option requires license. |
| -d | optional | debug flag, outputs some debugging info |
| -b int64_buffer_size | optional | by default corrbits may use up to nb=256Mb of memory to buffer the input files. Use this parameter to increase available buffer memory for corrbits, up to nbmax=4Gb |
| Linux | corrbits_linux.tgz |
|---|---|
| Solaris 9 64-bit | corrbits_solaris9.tgz |
| MS Windows cygwin | corrbits_cygwin.tgz |
Please email questions or comments to phystech@hotmail.com