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





