【技术实现步骤摘要】
本专利技术属于随机数生成,具体涉及一种随机数生成方法及装置。
技术介绍
1、本部分的陈述仅仅是提供了与本专利技术相关的
技术介绍
信息,不必然构成在先技术。
2、在算法的设计和实现中,常常需要生成一定数量模n的随机数,目前随机数一般都通过sha3,aes,或者国密sm3等的字节流产生,字节流产生后需要将字节拼成所需要的长度的随机数。当需要生成的比特数是8的倍数的时候它的实现是很高效的,但是当取一些特殊的值,比如说模8余1的值时,常规的按顺序拼接会导致很多多余的移位操作,或者会造成随机数的浪费,不光增加了时间开销,同时也不符合算法设计时的规范。
技术实现思路
1、本专利技术为了解决上述问题,提出了一种随机数生成方法及装置,本专利技术针对具有余数的模值,能够高效的生成模值为n的随机数,且减少了移位操作的数量,降低了对于内存的浪费,提高了生成随机数的效率。
2、根据一些实施例,本专利技术采用如下技术方案:
3、一种随机数生成方法,包括以下步骤:
4、获
...【技术保护点】
1.一种随机数生成方法,其特征是,包括以下步骤:
2.如权利要求1所述的一种随机数生成方法,其特征是,按照M*8:N的比例对原始数据进行分块。
3.如权利要求1或2所述的一种随机数生成方法,其特征是,利用随机数生成算法生成能够满足数量要求的随机数的具体过程包括,随机数生成需求为比特长度需求X的随机数Y个,则利用随机数生成算法生成至少X*Y/8的随机数。
4.如权利要求1所述的一种随机数生成方法,其特征是,从低位数据块中选取M*8长度的数据。
5.如权利要求1或4所述的一种随机数生成方法,其特征是,从高位数据块中选取N长度
...
【技术特征摘要】
1.一种随机数生成方法,其特征是,包括以下步骤:
2.如权利要求1所述的一种随机数生成方法,其特征是,按照m*8:n的比例对原始数据进行分块。
3.如权利要求1或2所述的一种随机数生成方法,其特征是,利用随机数生成算法生成能够满足数量要求的随机数的具体过程包括,随机数生成需求为比特长度需求x的随机数y个,则利用随机数生成算法生成至少x*y/8的随机数。
4.如权利要求1所述的一种随机数生成方法,其特征是,从低位数据块中选取m*8长度的数据。
5.如权利要求1或4所述的一种随机数生成方法,其特征是,从高位数据块中选取n长度的数据。
6.如权利要求1-4...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。