《一种基于单幅图像的真随机数序列生成方法.pdf》由会员分享,可在线阅读,更多相关《一种基于单幅图像的真随机数序列生成方法.pdf(8页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103092567 A(43)申请公布日 2013.05.08CN103092567A*CN103092567A*(21)申请号 201310015116.8(22)申请日 2013.01.16G06F 7/58(2006.01)G06T 1/00(2006.01)(71)申请人西安电子科技大学地址 710071 陕西省西安市太白南路2号164#(72)发明人刘刚 王泉 杜冲 田冬东 张敬佘陈承(74)专利代理机构北京科亿知识产权代理事务所(普通合伙) 11350代理人汤东凤(54) 发明名称一种基于单幅图像的真随机数序列生成方法(57) 摘要本发明公开了一种基于单幅。
2、图像的真随机数序列生成方法,首先取得一幅数字图像,对其进行前处理操作,包括进行格式转换和裁剪等操作,得到符合尺寸要求的位图BMP格式图像,将此图像作为初始熵源图像;初始熵源图像经过后处理转换、二维到一维转换生成一组真随机数序列作为输出;同时,生成的该组真随机数序列作为反馈,用于对初始熵源图像进行置乱变换处理,生成一幅变换后的新熵源图像,同样经过后处理转换、二维到一维转换生成下一组真随机数序列,依此类推,将每一轮产生的真随机数序列合并,即可得到所需长度的真随机数序列;或将每一轮生成的真随机数序列依次存入缓存中,由应用程序按所需长度进行取用。(51)Int.Cl.权利要求书1页 说明书3页 附图3。
3、页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书1页 说明书3页 附图3页(10)申请公布号 CN 103092567 ACN 103092567 A1/1页21.一种基于单幅图像的真随机数序列生成方法,其特征在于,首先取得一幅数字图像,对其进行前处理操作,包括进行格式转换和裁剪等操作,得到符合尺寸要求的位图BMP格式图像,将此图像作为初始熵源图像;初始熵源图像经过后处理转换、二维到一维转换生成一组真随机数序列作为输出;同时,生成的该组真随机数序列作为反馈,用于对初始熵源图像进行置乱变换处理,生成一幅变换后的新熵源图像,同样经过后处理转换、二维到一维转换生成下一组真随机数序。
4、列,依此类推,将每一轮产生的真随机数序列合并,即可得到所需长度的真随机数序列;或将每一轮生成的真随机数序列依次存入缓存中,由应用程序按所需长度进行取用。2.根据权利要求1所述的基于单幅图像的真随机数序列生成方法,其特征在于,所述方法构成一个反馈系统:后续熵源图像通过系统生成的真随机数序列对初始熵源图像进行变换得到,上一轮生成的真随机数序列作为新熵源图像产生过程的一个输入参数。权 利 要 求 书CN 103092567 A1/3页3一种基于单幅图像的真随机数序列生成方法技术领域0001 本发明属于计算机技术领域,涉及一种基于单幅图像的真随机数序列生成方法。背景技术0002 真随机数产生器建立在一。
5、种称为熵源的不确定性源的基础上,如热力学噪声、空气噪声、核衰变等现象,基于这些源来产生真随机数一般都需要额外的电路或设备。从成本和便利性等方面来看,这种硬件真随机数产生器的应用场合受到限制。基于此,人们提出了基于数字图像来产生真随机数的方法,这种软件真随机数生成器不但廉价,而且由于数字图像几乎随处可得,使用非常方便。但是,单幅图像所能产生的真随机数长度有限,当需要较长或者较多的真随机数时,要输入多幅图像才能满足应用要求,且耗时较长,在时效要求比较严格的场合应用受到限制。发明内容0003 本发明的目的是克服现有技术中的缺陷,提供一种基于单幅图像的真随机数序列生成方法。0004 其技术方案为:00。
6、05 一种基于单幅图像的真随机数序列生成方法,首先取得一幅数字图像,对其进行前处理操作,包括进行格式转换和裁剪等操作,得到符合尺寸要求的位图(BMP)格式图像,将此图像作为初始熵源图像;初始熵源图像经过后处理转换、二维到一维(2D-1D)转换生成一组真随机数序列作为输出;同时,生成的该组真随机数序列作为反馈,用于对初始熵源图像进行置乱变换处理,生成一幅变换后的新熵源图像,同样经过后处理转换、2D-1D转换生成下一组真随机数序列。依此类推,将每一轮产生的真随机数序列合并,即可得到所需长度的真随机数序列;或将每一轮生成的真随机数序列依次存入缓存中,由应用程序按所需长度进行取用。由于对初始熵源图像进。
7、行置乱变换处理所用的一个参数是上一个循环中生成的“01”随机数序列,因此变换后产生的图像依然具有随机性。0006 本发明所述方法构成一个反馈系统:后续熵源图像通过系统生成的真随机数序列对初始熵源图像进行变换得到,上一轮生成的真随机数序列作为新熵源图像产生过程的一个输入参数,可保证熵源的不确定性。0007 与现有技术相比,本发明的有益效果:0008 1、本发明所述方法选用常见的数字图像作为系统的输入,节约成本,使用方便。0009 2、本发明的技术方案在产生较长的真随机数序列时,不需要用户选取大量的图像,节省大量人力和时间。0010 3、本发明所述方法中,真随机数序列的生成及保存与应用程序取用随机。
8、数的操作分离进行,系统在后台持续运行,源源不断地提供真随机数序列,应用程序可按需进行取用。方便且易于管理。0011 4、本发明构成一个反馈系统:后续熵源图像通过系统产生的真随机数序列对初始说 明 书CN 103092567 A2/3页4熵源图像进行变换得到,保证了熵源的不确定性。附图说明0012 图1为本发明真随机数生成方法流程示意图;0013 图2为BMP图像尺寸裁剪流程图;0014 图3为2D-1D转换操作流程图;0015 图4为初始熵源图像变换处理生成后续新熵源图像的操作流程图;0016 图5为对应动态链接库的内部结构示意图。具体实施方式0017 下面结合附图具体实施例来详细描述本发明的。
9、技术方案。0018 参照图1,一种基于单幅图像的真随机数序列生成方法,首先获取一幅数字图像,对其进行前处理操作,包括进行格式转换和裁剪等操作,得到符合尺寸要求的位图(BMP)格式图像,将此图像作为初始熵源图像;初始熵源图像经过后处理转换、二维到一维(2D-1D)转换生成一组真随机数序列作为输出;同时,生成的该组真随机数序列作为反馈,用于对初始熵源图像进行置乱变换处理,生成一幅变换后的新熵源图像,同样经过后处理转换、2D-1D转换生成下一组真随机数序列。依此类推,将每一轮产生的真随机数序列合并,即可得到所需长度的真随机数序列。0019 图2为BMP图像尺寸裁剪流程图,对BMP位图进行裁剪操作,裁。
10、剪边长选取标准为:假设待裁剪图像大小为MN,令m等于M、N中较小的值,选取n值,使得式2nm2n+1成立,则m=2n即为裁剪边长。0020 对于MN大小的BMP图像,判断M、N值的大小,如果MN,则令m=N,否则令m=M;设i=1,判断2im&2(i+1)m是否成立,不成立,则令i+,继续判断;如果成立,则以m=2i为边长裁剪原图像,得到尺寸为mm大小的符合要求的初始熵源图像。0021 在得到熵源图像后,需要对其进行后处理转换。此操作的目的是对熵源图像做置乱变换,使像素矩阵变得杂乱无章,更具有随机性。此处可选用各种可以产生图像置乱效果的算法,如Arnold图像置乱算法,图像加密置乱算法等。00。
11、22 图3:为2D-1D转换操作流程图。0023 图像经过后处理转换后,得到一幅置乱后的数字图像。将所得图像的mm的像素矩阵分割成MM个相等的块,每个块中包含(m/M)(m/M)个像素点,统计每一个块中像素值为奇数的像素点个数,如果为奇数,则对应的真随机数序列位为1,如果是偶数,则对应的真随机数序列位为0,统计完成之后即可得到一个MM长度的“01”随机数序列。0024 如图4中初始熵源图像为图2中得到的符合要求的初始熵源图像,“01”随机数序列为上一轮产生的真随机数序列(在对初始图像进行初次变换处理时,由于没有来自之前产生的随机数序列,可以将所需的随机数序列设为全0),应用上一轮中生成的真随机。
12、数序列对初始图像像素点进行局部移位,真随机数序列中每L位(L5)为1组,前3位指定当前鼠标点要进行偏移的方向,3位有8种情况,分别对应上,下,左,右,左上,左下,右上,右下8个方向,后(L-3)位指定鼠标点要进行偏移的位移(斜方向取近似值),循环调用真随机数序列对所有的像素点进行此种操作,可以得到变换后的新熵源图说 明 书CN 103092567 A3/3页5像。0025 图5是对对应的动态链接库内部结构的简单描述:动态链接库包含2个对外接口函数,分别是TRNG_Thread(string path_image)和Get_RandNum(int length,char*rand_buf)。TR。
13、NG_Thread(string path_image)的功能是产生真随机数序列,通过参数path_image将数字图像的路径传入系统,如果路径不正确,或图像不能被系统识别,则函数返回false;否则进入生成真随机数序列的操作,将产生的真随机数依次存入缓冲区中,如果缓冲区满则对其进行循环覆盖。Get_RandNum(int length,char*rand_buf)的功能是从缓冲区中获取真随机数序列,参数length为所需真随机数序列的长度,参数rand_buf为用来存放取出的真随机数序列的缓冲区。另外设置2个指针变量,用来保存当前缓冲区中正在写入和正在读出的指针位置,1个长度变量,用来记录当。
14、前缓冲区中真随机数序列的长度。如果调用函数Get_RandNum(int length,char*rand_buf)时,缓冲区中真随机数序列的长度小于length,则返回false,推迟某一时间后再重新执行。0026 以上所述,仅为本发明较佳的具体实施方式,本发明的保护范围不限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可显而易见地得到的技术方案的简单变化或等效替换均落入本发明的保护范围内。说 明 书CN 103092567 A1/3页6图1说 明 书 附 图CN 103092567 A2/3页7图2图3图4说 明 书 附 图CN 103092567 A3/3页8图5说 明 书 附 图CN 103092567 A。