Random-Number-Generator

Dieharder 如何使我的輸入文件適合 Dieharder?

  • February 14, 2022

我創建了我的隨機數並將它們保存到一個 txt 文件中。我的輸入文件只包含 0 和 1。這是我的文件的連結

我當然在問這個問題之前閱讀了一些答案,但我不明白如何為頑固分子創建輸入文件。頑固分子是否有一些準備好的評論來為自己轉換我們的輸入文件,或者我們應該手動完成?如果我們應該怎麼做?我看到太多參數,例如生成器,請參閱 type count numbit …您能幫幫我嗎?


更新:我實際上回答了這個問題,但是我的帳戶遇到了一些問題,所以答案失去了,所以我再次寫信

  1. 非常感謝您的回答我認為它終於可以解決了 在此處輸入圖像描述
  2. 只是為了確定:什麼是d?當我查看其他範例時,有時會看到 b 而不是 d
  3. 我只有 0 和 1,所以我猜 numbit 應該是 1,對吧?
  4. 你寫了一些數字,它們實際上是隨機數,對吧?(在我的情況下,它只是 0 和 1 而不是 3129711816 85411969 2545911541)
  5. 我想用這個文件和這個程式碼腳本測試我的數字有多少是隨機的,對嗎?
  6. 此外,當我嘗試不將文件更改為標頭檔時,它與以下程式碼腳本一起使用:dieharder -af your-file.txt,thos 腳本是什麼意思?好的,但是我不能像標頭檔一樣更改我的文件,我不知道這意味著什麼

更新 - - - - - - - - - - - - - - - - - - - - - - - - - ————

你好,我在賬戶匹配方面還有一些問題,所以我在這裡更新

1)也祝你聖誕快樂!

我沒有bin文件!為什麼你這麼想。我正在嘗試生成量子隨機數,我的數字將是 1 或 0,在生成它們之後,我將其保存為 txt 文件!txt文件有什麼問題。我真的不明白你的意思。和頑固的人一起研究我至少應該有多少個數字?200萬還不夠??其他技術是什麼

2)如果你看到他們像什麼是 d 或者我的標頭檔是否正確,你能解釋一下我的問題嗎?…

3)如何將我的txt文件轉換為二進製文件???

  1. 測試我的數字隨機程度的其他技術是什麼?NIST可以嗎?

5)例如我用這條線來轉換bin文件perl -ne 'print pack("B32", $_)' < instructions.txt > instructions.bin可以嗎?我使用了 10000000 個數據並將其轉換為二進製文件,速度非常快。我認為它應該一直很慢?

重要提示:我使用的是 dieharder 3.31.1 版本

就我個人而言,我從不打擾 ASCII,只是使用二進制,因為它更容易,但就這樣吧。這個頁面上有很多好東西,但本質上你需要做的是……

To use it with an ascii formatted file:

    dieharder -g 202 -f your-file.txt -a

  (your-file.txt should consist of a header such as:

   #==================================================================
   # generator I did it myself
   #==================================================================
   type: d
   count: 100000
   numbit: 32
   3129711816
     85411969
   2545911541
   etc...

請閱讀https://crypto.stackexchange.com/a/61546/23115。這個很重要。頑固分子是個貪吃者,渴望大量數據。2,500,000 個 ASCII 字元太少了,除了失敗之外,結果將毫無意義。連結答案中的範例吸收了 246 GB 的二進制位,以免倒帶數據樣本。這不僅僅是 1 TB 的 ASCII。

提示

隨機性是樣本大小的函式。您的數據集的大小表示替代測試,例如原始diehard測試或 NIST 的隨機測試套件。後者在現代 RNG 設計的文獻中很常見,我更喜歡它。


dieharder -a -g 201 -f your-file.bin以二進制形式進行,而無需所有標題廢話。

引用自:https://crypto.stackexchange.com/questions/87111