2015-06-18 67 views
0

我想這個PDF 68頁整合到MATLAB代碼:MATLAB代碼

http://csrc.nist.gov/publications/drafts/800-90/draft-sp800-90b.pdf#page=68

我已經包含了這些指令如下圖像:

據我所知沒有或很少馬爾可夫鏈的,我首先標誌着什麼Ø是說明混淆。 「o i表示樣本中發生的狀態i的次數」。什麼是狀態i

第4步可能是最困難的一切。我不知道如何計算S或類似的東西。

這裏是我開始的代碼:

function minEntropy = markovTest(points, bitSize) 
if bitSize > 6 
    err('Maximum of 6 bits are allowed for Markov test, re-map inputs as in 7.2') 
end 
k = 128; 
alpha = 0.05; 
alpha = min(alpha^(bitSize^2),alpha^k); 
% Estimate the initial state probability distribution: 
e = sqrt(log(1./(1-alpha))./(2*N)); 
N = length(points); 
oi == ? 
Pi = min(1, oi./N + e); 
??? Hat to do next? 
end 

回答

0

NIST的集成了所有這些測試到一個不錯的Python庫,它可以在GitHub上找到。如果出於某種原因圖書館不在了,您可以嘗試聯繫NIST的Tim Hall,他也已經將該圖書館移植到C代碼中,如果這樣可以更好地滿足您的需求。 [email protected]