偽隨機序列產生器的構成方式?
這種偽隨機數生成器的工作方式如下。1 用偽隨機數的種子初始化內部狀態(計數器)。
2 用單向散列函數計算計數器的散列值。
3 將散列值作為偽隨機數輸出。
4 計數器的值加1。
5 根據需要的偽隨機數數量重復2到4的步驟。
假設攻擊者獲得了這樣的偽隨機數生成器所生成的過去的偽隨機數列,他是否能夠預測出下一個偽隨機數呢?
攻擊者要預測下一個偽隨機數,需要知道計數器的當前值。這里輸出的偽隨機數列實際上相對于單向散列函數的散列值。也就是說,要想知道計數器的值,就需要破解單向散列函數的單向性,這是非常困難的,因此攻擊者無法預測出下一個偽隨機數。總而言之,在這種偽隨機數生成器中,單向散列函數的單向性是支撐偽隨機數生成器不可預測性的基礎。