Entropy
GitHub 上的 NIST 工具是否可靠地測量熵?
在那個 Git 東西上有一個名為SP800-90B_EntropyAssessment的假定 NIST 工具。它的設計目的是按照 NIST對用於隨機比特生成的熵源的建議進行使用。本質上,這些工具測量來自熵數據源的數據集中的熵。它意味著輸出 0 - 8 位/字節,(但要注意 Python 測試需要很多小時才能完成)。
我不知道這個 Git 儲存庫是否得到了美國商務部的正式批准,或者這些工具是否是業餘愛好者在午休時間編寫的。
- C++ IID 工具根本無法編譯 (
bzlib.h: No such file or directory
)- C++ 非 IID 工具提供了包含的 1.2MB $ \pi $ 對 0.08 位/字節的熵進行排序,該熵基於
Compression Test Estimate
. 這是我測量它的十分之一,並且很難與常數是完全隨機的科學共識相一致。期望值應該是 ~1 位/字節,給出或採用最小熵變異數。- 不清楚他們是否 $ \pi $ 序列是 IID 或非 IID,因為它是一種奇怪的文件格式,並且 IID 的定義對於馬爾可夫序列的度數是模糊的。
- 對於測試和數據源的某些組合,您可以獲得 > 8 位/字節的熵,這表明熵生成器非常好或驗證不佳的程式碼(肯定缺少
assert
語句)。有沒有人有這個工具的經驗?我從來沒有讀過任何提到使用它來估計它們的熵的 TRNG 論文。我讀過很多。也許我誤解了該工具的作用。可以依靠這個工具來正確、安全地測量熵嗎?
C++ IID 工具根本不編譯(bzlib.h:沒有這樣的文件或目錄)
從程式碼:
#include "bzlib.h" // sudo apt-get install libbz2-dev
作者建議從包管理器安裝 bzip2 開發包,因為預設情況下不安裝。他們的命令將適用於基於 Debian 的發行版。
您只需要安裝軟體包。
對我來說,安裝工作
sudo eopkg install bzip2-devel
(我在 Solus 上),但它會因作業系統和發行版而異。搜尋 bzip2 開發包。