密碼工程讀后感-第三章-第二,三,四節(jié)

這一章主要是對(duì)于PRNG的評(píng)估事項(xiàng)(例子我看了頭也疼)
一般來(lái)說(shuō),PRNG的核心在于噪音源(noise source),將噪音數(shù)字化之后的數(shù)值我們稱之為digitized analog signals或者叫das。一般來(lái)說(shuō),PRNG會(huì)產(chǎn)生三次隨機(jī)數(shù),分別是das,內(nèi)部隨機(jī)數(shù)和外部隨機(jī)數(shù)。das就算噪音數(shù)字化的數(shù)值,內(nèi)部隨機(jī)數(shù)是對(duì)于das的“后處理”, postprocessing。這個(gè)內(nèi)部隨機(jī)數(shù)會(huì)進(jìn)行多一次加工,生成最后的外部隨機(jī)數(shù)。一般上外部隨機(jī)數(shù)并不是由隨機(jī)數(shù)的設(shè)計(jì)者所決定的,打個(gè)比方,我決定在PRNG生成一個(gè)隨機(jī)數(shù)后進(jìn)行一次mod 114514的運(yùn)算,這個(gè)PRNG生成的隨機(jī)數(shù)在我的系統(tǒng)里就算內(nèi)部隨機(jī)數(shù),而經(jīng)過(guò)mod 114514之后的隨機(jī)數(shù),就算外部隨機(jī)數(shù)。

PTRNG的評(píng)估最主要的目的是估算每一個(gè)比特的熵,然后第二個(gè)目的就算進(jìn)行在線測(cè)試(online test,之后會(huì)細(xì)說(shuō)),很不幸的是,熵不能夠像其他數(shù)值(例如溫度)一樣可以簡(jiǎn)單地測(cè)量。因?yàn)樾畔㈧乇旧砭褪且环N“隨機(jī)性”,所以統(tǒng)計(jì)學(xué)上的黑箱測(cè)試是不太管用的。
備注3.1:以Maurer的例子(https://link.springer.com/content/pdf/10.1007/BF00193563.pdf),如果我們用LFSR來(lái)產(chǎn)生隨機(jī)數(shù),每增加一個(gè)偽隨機(jī)比特所增加的熵為0,但是Maurer的測(cè)試會(huì)接近最大值。這跟Coron的例子(http://www.crypto-uni.lu/jscoron/publications/entropy.pdf)很相似。
所以,與其量化每一個(gè)比特的熵,我們可能要先研究隨機(jī)數(shù)的分布會(huì)比較合適。

這一節(jié)是隨機(jī)模型(Stochastic model)
假設(shè)隨機(jī)變量R和Y,分別滿足das(數(shù)字化信號(hào))和ir(內(nèi)部隨機(jī)數(shù))隨機(jī)性質(zhì)。前者的分布方式會(huì)很依賴噪音源和“數(shù)字化機(jī)制”,而后者的分布會(huì)依賴后處理算法。所一般上,我們是無(wú)法準(zhǔn)確確認(rèn)這些分布的,所以評(píng)估的時(shí)候,會(huì)先標(biāo)注一個(gè)“分布家族”(Family of distribution),并證明所有此分布都是源于這個(gè)“家族”。
打個(gè)比方(3.1)
把硬幣正面設(shè)為1,反面設(shè)為0,結(jié)果為我們假設(shè)這其中并沒有任何“后處理算法”,也就是說(shuō)
然后我們把每一次投幣的結(jié)果設(shè)為,而且其分布概率是B(1,p)分布,而
。也就意味著,其分布是來(lái)自于單一參數(shù)的家族,或者單一參數(shù)的概率分布(B(1,p)分布的積)
對(duì)于現(xiàn)實(shí)中的PTRNG,往往情況更復(fù)雜,特定的分布家族可能需要依賴多個(gè)參數(shù),所有需要多次實(shí)驗(yàn)來(lái)測(cè)試其獨(dú)立性。一般來(lái)說(shuō),信號(hào)那一段了解的越深,在PTRNG的所需要的證實(shí)部分就越少。另外,隨機(jī)模型并不是噪音源的物理模型,更不是數(shù)字化的機(jī)制。
這個(gè)隨機(jī)模型的最終目的是找出每個(gè)內(nèi)部隨機(jī)數(shù)的平均熵(下限),然后基于這個(gè)下限,再估算出PTRNG的熵。所以需要這三個(gè)步驟:
對(duì)于PTRNG設(shè)置一個(gè)隨機(jī)模型,如果沒有理論上的論據(jù),就需要實(shí)驗(yàn)證實(shí)。
用這個(gè)PTRNG來(lái)生成隨機(jī)數(shù),然后導(dǎo)入屬于這個(gè)PTRNG的參數(shù)
使用這些參數(shù)來(lái)估算每一個(gè)隨機(jī)比特的熵增。