Skip to content

Instantly share code, notes, and snippets.

@ewaldbenes
ewaldbenes / file_entropy.py
Created December 8, 2018 13:07
Calculate Shannon entropy of a file to show randomness of contained data. Can give hints if a file is compressed or encrypted. Entropy of 0 means all data is equal hence no randomness at all. 8 means perfect randomness which is the mathematical limit.
# file_entropy.py
#
# Shannon Entropy of a file
# = minimum average number of bits per character
# required for encoding (compressing) the file
#
# So the theoretical limit (in bytes) for data compression:
# Shannon Entropy of the file * file size (in bytes) / 8
# (Assuming the file is a string of byte-size (UTF-8?) characters
# because if not then the Shannon Entropy value would be different.)
@ewaldbenes
ewaldbenes / firebase-csv-user-import.ts
Created December 4, 2018 10:15
Firebase user import from CSV using admin tools and RxJs
/**
* Written in Typescript (v3+).
*
* Dependencies:
* - rxjs >= 6
* - firebase-tools >= 6
*
* Have fun!
*
*/