[發明專利]一種隨機數發生器及電子券、動態支付碼的生成方法在審
| 申請號: | 201910345096.8 | 申請日: | 2019-04-26 |
| 公開(公告)號: | CN110069242A | 公開(公告)日: | 2019-07-30 |
| 發明(設計)人: | 陳其洪 | 申請(專利權)人: | 迅付信息科技有限公司 |
| 主分類號: | G06F7/58 | 分類號: | G06F7/58;G06Q30/02 |
| 代理公司: | 上海寶鼎專利代理有限公司 31222 | 代理人: | 龔崢嶸 |
| 地址: | 200233 上海*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數組 隨機數發生器 隨機種子 隨機數 排序數組 數組元素 位長 取出 隨機數獲取 隨機數算法 生成模塊 數組生成 順序排序 隨機算法 序號一致 放入 存儲 重復 保證 | ||
本發明公開了一種隨機數發生器及電子券、動態支付碼的生成方法,包括初始排序數組生成模塊:所述初始排序數組包含指定位長的全部數字,數組的值與數組序號一致,且按大小順序排序;隨機種子數組生成模塊:用隨機數算法得到序號,隨機算法取值范圍為0到數組元素個數減1,每取一個數,數組元素個數減1;將隨機序號存儲的數值按次序放入隨機種子數組中;隨機數獲取模塊:按次序從隨機種子數組取值,取出的值即為隨機數。本發明提供的隨機數發生器及電子券、動態支付碼的生成方法,能夠使用位長范圍內的全部隨機數,且保證取出的隨機數不會重復。
技術領域
本發明涉及一種高效隨機數獲取方法,尤其涉及一種隨機數發生器及電子券、動態支付碼的生成方法。
背景技術
在支付領域,隨機數用途非常廣,如:電子券號、隨機密碼等。
常規隨機數的獲得方法存在以下痛點:
1.隨機因子選擇不當,易生成相同隨機數;
2.隨著生成的隨機數增加,出現重復隨機數的概率越來越大,生成效率也越低,必須增加數字長度以提高可用性;
不能充分利用理論上可用的數字,且效率低下。如6位數字理論上存在1百萬個隨機數,但因以上原因,基本不可能高效的生成這1百萬個不同的隨機數。
發明內容
本發明所要解決的技術問題是提供一種隨機數發生器及電子券、動態支付碼的生成方法,能夠高效不重復地獲得預定數字長度范圍內的所有隨機數。
本發明為解決上述技術問題而采用的技術方案是提供一種隨機數發生器,包括初始排序數組生成模塊:所述初始排序數組包含指定位長的全部數字,數組的值與數組序號一致,且按大小順序排序;隨機種子數組生成模塊:用隨機數算法得到序號,隨機算法取值范圍為0到數組元素個數減1,每取一個數,數組元素個數減1;將隨機序號存儲的數值按次序放入隨機種子數組中;隨機數獲取模塊:按次序從隨機種子數組取值,取出的值即為隨機數。
上述的隨機數發生器,其中,所述初始排序數組按指定隨機數位長N生成,序號i從0開始遞增,最大序號為位長N對應的最大值。
上述的隨機數發生器,其中,所述隨機種子數組生成模塊包括:判斷初始排序數組中當前包含的數據個數n是否等于1,當個數n等于1時,將初始排序數組中序號為0的存儲單元中存儲的值添加到隨機種子數組中;當個數n不等于1時:使用random(0,n-1)生成1個隨機數r;查找初始排序數組中序號為r的存儲單元,并將該存儲單元中存儲的值添加到隨機種子數組中;將初始排序數組中最后一個存儲單元中存儲的值復制到初始排序數組中序號為r的存儲單元;將初始排序數組的數據個數n減去1;重復上述過程,直至將初始排序數組中的所有數值放進隨機種子數組中。
本發明為解決上述技術問題還提供一種電子券的生成方法,其中,采用上述的隨機數發生器,包括如下步驟:S1)設定代發電子券的張數及其對應的最大位長,生成初始排序數組;S2)隨機按序號從初始排序數組中取值,并放入隨機種子數組;S3)按序號查詢隨機種子數組,獲取不重復的隨機數作為電子券的唯一識別碼。
上述的電子券的生成方法,其中,采用兩個上述的隨機數發生器生成隨機種子數組,當其中一個隨機數發生器中的隨機種子數組使用完后,自動啟用另一個隨機種子數組。
上述的電子券的生成方法,其中,當需要生成的券號長度大于隨機數發生器返回隨機數最大長度時,多次調用隨機數發生器,并用獲得的多個隨機數組合成一個需要的券號。
本發明為解決上述技術問題還提供一種動態支付碼的生成方法,其中,采用上述的隨機數發生器,包括如下步驟:S1)設定動態支付碼的最大位長;S2)隨機按序號從初始排序數組中取值,并放入隨機種子數組;S3)按序號查詢隨機種子數組,獲取不重復的隨機數作為動態支付碼。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于迅付信息科技有限公司,未經迅付信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910345096.8/2.html,轉載請聲明來源鉆瓜專利網。





