新四季網

一種軟體實現的真隨機數產生方法

2023-08-13 06:19:41 1

專利名稱:一種軟體實現的真隨機數產生方法
技術領域:
本發明涉及只使用軟體的隨機函數配合設備的上電時間的不可預測性生成真隨 機數的方法。
背景技術:
真正意義上的隨機數在某次產生過程中是按照實驗過程中表現的分布概率隨機 產生的,其結果是不可預測的,是不可見的。而以往使用電子設備中程序的隨機函數是按照 一定算法模擬產生的,這些數列是「似乎」隨機的數,實際上它們是通過一個固定的、可以重 復的計算方法產生的。它們不真正地隨機,因為它們實際上是可以依據函數的架構和程序 的運行時間計算出來的,其結果是確定的,是可見的。我們可以認為這個可預見的結果其出 現的概率是100%。所以以往使用軟體隨機函數所產生的「隨機數」並不隨機,是偽隨機數。通常目前真隨機數的產生方法都是依賴與硬體電路來實現,這樣無疑增加設備的 設計複雜度和設備成本。

發明內容
有鑑於此,本發明提供一種軟體實現的真隨機數產生方法,以解決現有單純使用 軟體只能生成偽隨機數的問題。本發明所提供的一種真隨機數產生方法的具體方案如下設備第一次上電時,電子設備的程序調用存儲模塊中的初始隨機種子,隨機函數 使用該隨機種子產生一個偽隨機數,並將該偽隨機數寫入存儲模塊,之後程序每循環一次, 生成一個偽隨機數,並寫入存儲模塊;其中程序循環的周期都是毫秒級別的,所以每次設備 的上電時間內,隨機函數可以生成很多次隨機數。最後設備斷電後,因設備上電至設備斷電 的時間不可預知性,最終生成的隨機數是無法預知的。當設備第二次上電時即調用上次設 備生成的無法預知的隨機數作為隨機種子,即可生成真隨機數。


為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以 根據這些附圖獲得其他的附圖。圖1為本發明所提供的真隨機數生成方法的示意圖;圖2為本發明所提供的真隨機數生成方法的結構示意圖;圖3為本發明所提供的真隨機數生成方法的流程具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於 本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他 實施例,都屬於本發明保護的範圍。申請人:經研究發現,通過軟體方式生成的隨機數,都是通過一個固定的,可以重複 的方法根據一個隨機種子生成一個隨機數,因此以往軟體生成的隨機數都稱為偽隨機數, 其結果是確定的,是可預見的。當然如果隨機種子是一個真隨機數,那以此隨機種子所生成 的隨機數,也是一個真隨機數。但是電子設備的一致性導致它每次上電後所獲取隨機種子 也只能通過固定的算法從固定的位置提取出來,所以隨機種子也是確定。因此以往單靠軟 件不能生成的真隨機數。為了解決上述問題,本發明提供了一種軟體實現的真隨機數產生方法,該方法包 括隨機函數、循環模塊、存儲模塊和隨機種子隨機函數用於生成偽隨機數,存儲模塊用來存儲隨機函數經過循環模塊後生成的 隨機數,並將此隨機數作為下次上電隨機函數的隨機種子。本發明實施例所提供的隨機數生成系統中各個模塊之間關係示意圖如圖1所示, 當設備上電開始運行時,隨機函數從存儲模塊中提取隨機種子,依據此隨機種子生成隨機 數,通過循環模塊後,隨機函數再次生成隨機數,並將此隨機數寫入存儲模塊,替換之前的 隨機種子,以此類推。若干次循環後,設備斷電了,這是存儲模塊中的隨機種子也被替換了 若干次。最終的替換的隨機種子即作為下次上電的隨機種子。例如設備第一次上電時,存 儲模塊中預存的隨機種子為Ni,隨機函數上電後提取m作為初始的隨機種子,生成隨機數 N2,N2和m之間的關係是特定的,即通過m可以推導出N2的值;軟體經過一次循環後隨 機函數又生成一個隨機數N3,此時存儲模塊將原先的初始的隨機種子m替換為N3,N3依舊 是一個可依據m推導預見的一個隨機數;以此類推,軟體循環若干次後,設備斷電,在斷電 前的一次程序循環隨機函數生成了隨機數Nm,存儲模塊將其存儲的隨機種子替換為了 Nm。 因設備是首次上電,初始隨機種子是固定的Ni,故此次設備運行過程中某一時刻所生成的 隨機數都是可預見,可推導出的。但是由於設備的運行時間是不可控的,且設備運行時間是 軟體循環所需時間至少上萬倍的差距,因此對於設備第二次上電時,隨機函數從存儲模塊 中所提取的隨機種子Nm來說就是一個不可預見的數值,即真隨機數。而從設備第二次上電 以後,都會已Nm這個真隨機數來產生隨機數,因隨機種子是不可預見的,故之後生成的隨 機數也是不可預見推導的,即此時生成的歲數為真隨機數。應用上述技術方案,有效的利用了設備上電工作時間的不可預見性生成真隨機 數。與現有技術相比,解決了純軟體申城隨機數因隨機種子固定而只能生成偽隨機數的問題。請參閱圖2,圖2為本發明實施例提供的視頻轉接設備的結構示意圖。該視頻轉接 設備包括提取裝置10、生成裝置11、循環裝置13和寫入裝置14。其中提取裝置10,用於從存儲模塊中提出隨機種子;生成裝置11,用於通過隨機函數生成隨機數;循環裝置12,用於在設備上電期間不停生成隨機數;寫入裝置13,用於將生成裝置生成的隨機數寫入存儲模塊。本發明中的提取裝置和寫入裝置都是通過程序運行的處理器對存儲模塊進行操作,生成裝置是由設備程序中的隨機函數完成,循環裝置是有設備中的各種功能模塊運行 完成。應用以上的技術方案,利用設備上電時間不可預見性,循環裝置運行次數的不可 預見性,生成一個不可預見的隨機種子,再通過隨機函數即可生成真隨機數。圖3是本發明實施例所提供的一種軟體生成真隨機數的方法,該方法用於上述真 隨機數生成系統中,該方法的具體步驟如下,包括SlOl 設備上電;S102 從存儲模塊中提取隨機種子;S103 隨機函數依據隨機種子第一次生成隨機數。S104 存儲模塊將原有隨機種子用此隨機數替代S105 軟體循環1次S106 隨機函數依據隨機種子第二次生成隨機數S107 存儲模塊將原有隨機種子用此隨機數替代S108:軟體循環η次S109 隨機函數依據隨機種子第η次生成隨機數SllO 存儲模塊將原有隨機種子用此隨機數替代Slll 軟體循環過程中設備斷電應用上述技術方案,電子設備依據設備上電運行的不可預知性來控制軟體軟體循 環次數η,隨機函數依據這個不可預知的循環次數η生成不可預知的隨機數,並將次隨機數 作為下次上電設備初始的隨機種子。與現有技術相比,解決了現有軟體生成隨機數的技術 每次上電都只能使用可預見可推導的隨機種子,無法生成真隨機數的問題。應用上述技術方案,保證在設備第二次上電之後能夠生成無法預知的真隨機數。本說明書中對於實施例公開的裝置而言,由於其與實施例公開的方法相對應,所 以描述的比較簡單,相關之處參見方法部分說明即可。專業人員還可以進一步意識到,結合本文中所公開的實施例描述的各示例的單元 及算法步驟,能夠以電子硬體、計算機軟體或者二者的結合來實現,為了清楚地說明硬體和 軟體的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些 功能究竟以硬體還是軟體方式來執行,取決於技術方案的特定應用和設計約束條件。專業 技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應 認為超出本發明的範圍。結合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬體、處理器執 行的軟體模塊,或者二者的結合來實施。存儲模塊可以置於隨機存儲器(RAM)、內存、只讀存 儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬碟、可移動磁碟、CD-ROM、或技術 領域內所公知的任意其它形式的存儲介質中。對所公開的實施例的上述說明,使本領域專業技術人員能夠實現或使用本發明。 對這些實施例的多種修改對本領域的專業技術人員來說將是顯而易見的,本文中所定義的 一般原理可以在不脫離本發明的精神或範圍的情況下,在其它實施例中實現。因此,本發明 將不會被限制於本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一 致的最寬的範圍。
權利要求
1.一種通過軟體和設備上電時間生成真隨機數的方法,包括隨機函數、程序循環和存 儲模塊,其特徵在於隨機函數調用存儲模塊中的隨機種子來生成隨機數,並通過程序循環 不停的生成隨機數並更新存儲模塊中的隨機種子,存儲中的最新的隨機種子將作為下次上 電後隨機函數新的隨機種子。
2.根據權利要求1所述的隨機函數,其特徵在於,可以依據隨機種子生成隨機數的軟 件函數,在已知隨機種子的情況下其結果是可見的。
3.根據權利要求2所述的隨機函數,其特徵還在於,可以依據隨機種子不停的循環生 成新的隨機數,且每次生成的隨機數不同,但從起初算起,相同循環次數所生成的隨機數結 果是相同的。
4.根據權利要求1所述的存儲模塊,其特徵在於,能夠根據隨機函數新生成的隨機數, 進行更新,同時能夠在設備上電時為隨機函數提供隨機種子。
5.根據權利要求1所述的程序循環,其特徵在於,整個電子設備軟體隨機函數運行的 其他函數運行的過程,可以認為隨機函數可以是其他函數運行一次即生成一次密碼,也可 其他函數運行多次生成一次密碼。
6.根據權利要求5所訴的程序循環,其特徵還在於,此程序循環並非特定的為生成隨 機數而作的循環,此程序循環是電子設備正常運行中必要的程序運行動作。
全文摘要
本發明公開了一種軟體實現的真隨機數產生方法。它包括偽隨機數產生模塊,循環模塊,存儲模塊。偽隨機數模塊根據存儲模塊裡的存儲的隨機種子生成偽隨機數;循環模塊通過軟體循環不停的利用偽隨機數產生新的偽隨機數;存儲模塊用於定期保存循環模塊產生的隨機數。因為電子設備在出廠檢測、用戶使用過程中上電時間不確定性,可使設備在使用若干次即可生成真隨機數。
文檔編號G06F7/58GK102063285SQ20101060300
公開日2011年5月18日 申請日期2010年12月24日 優先權日2010年12月24日
發明者方震 申請人:倍奧銳(北京)科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀