一种随机数生成设备和方法

文档序号:6633196阅读:414来源:国知局
一种随机数生成设备和方法
【专利摘要】本发明公开了一种随机数生成设备,该设备包括:虹膜采集单元,适于采集用户的虹膜图像;虹膜模板生成单元,适于根据采集的用户虹膜图像生成虹膜模板;虹膜对比单元,适于对两个虹膜模板进行对比;以及随机数生成单元,适于以对比结果作为种子生成随机数。本发明还公开了相应的随机数生成方法。
【专利说明】一种随机数生成设备和方法

【技术领域】
[0001] 本发明涉及数据信号处理【技术领域】,特别涉及一种随机数生成设备和方法。

【背景技术】
[0002] 密码技术需要良好的随机数。可能需要随机数发生器产生公/私密钥对用于非对 称算法,如Rivest、Shamir、Adman (RSA)、数字签名算法(DSA)和Diffie-Helman。随机数发 生器可以是计算装置,其被设计成产生缺乏任何可识别模式的一系列数字和/或符号。由 于安全协议可能依赖于他们使用的密钥的不可预知性,因此用于密码应用的随机数发生器 必需满足有时非常严格的要求。
[0003] 随机数在计算机软件、硬件、安全等领域有着广泛的应用,因而产生高效优质(即 随机性高)的随机数变得非常重要。当前的随机数发生器使用给定的随机种子,基于某种 随机算法生成随机数。然而,由于种子本身的随机性有限,因此所产生的随机数的随机性也 不够高,不能满足当前实际应用中对随机性越来越高的要求。
[0004] 因此,如何生成高质量的随机数成为当前需要解决的一个问题。


【发明内容】

[0005] 为此,本发明提供一种新的随机数生成设备和方法,以力图解决或者至少缓解上 面存在的问题。
[0006] 根据本发明的一个方面,提供一种基于人体的虹膜信息生成随机数的设备。该设 备包括:虹膜采集单元,适于采集用户的虹膜图像;虹膜模板生成单元,适于根据采集的用 户虹膜图像生成虹膜模板;虹膜对比单元,适于对两个虹膜模板进行对比;以及随机数生 成单元,适于以对比结果作为种子生成随机数。
[0007] 该随机数生成设备还可以包括通信接口,适于将随机数生成单元生成的随机数发 送给应用。两个虹膜模板可以包括根据现场采集的一个用户的虹膜图像生成的虹膜模板 以及该用户在注册期间生成的注册虹膜模板。随机数生成设备还可以包括虹膜认证单元, 适于根据对比结果来认证两个虹膜模板是否一致,其中随机数生成单元还可以适于响应于 认证一致而以对比结果作为种子生成随机数。两个虹膜模板也可以包括根据采集的同一个 用户的两个虹膜图像生成的两个虹膜模板,可以包括根据采集的两个用户的虹膜图像生成 的两个虹膜模板,或者可以包括两个用户在注册期间生成的两个注册虹膜模板。虹膜对比 单元还可以适于对两个虹膜模板进行逻辑计算。随机数生成单元还可以适于响应于认证一 致,通过通信接口向应用发送随机数。
[0008] 根据本发明的另一方面,提供一种随机数生成方法。方法包括:采集用户的虹膜图 像;根据采集的用户虹膜图像生成虹膜模板;对两个虹膜模板进行对比;以对比结果作为 种子生成随机数。
[0009] 该方法还可以包括将生成的随机数发送给应用。两个虹膜模板可以包括根据现场 采集的一个用户的虹膜图像生成的虹膜模板以及该用户在注册期间生成的注册虹膜模板。 该方法还可以包括根据对比结果来认证两个虹膜模板是否一致,以及响应于认证一致而以 对比结果作为种子生成随机数。两个虹膜模板也可以包括根据采集的同一个用户的两个虹 膜图像生成的两个虹膜模板,可以包括根据采集的两个用户的虹膜图像生成的两个虹膜模 板,或者可以包括两个用户在注册期间生成的两个注册虹膜模板。对两个虹膜模板进行对 比的步骤可以包括对所述两个虹膜模板进行逻辑计算。将生成的随机数发送给应用的步骤 包括响应于认证一致而向应用发送随机数。
[0010] 根据本发明的一个方面,提供一种计算终端,包括如上所述的随机数生成设备。
[0011] 由于基于虹膜对比过程中所产生的随机性高的对比结果来生成随机数,因此能够 生成高质量的随机数。

【专利附图】

【附图说明】
[0012] 为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方 面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面 旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述 以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的 部件或元素。
[0013] 图1示出了一个计算终端100的结构框图;
[0014] 图2示出了根据本发明一个示例性实施例的随机数生成设备200的示意图;以及
[0015] 图3示出了根据本发明一个示例性实施例的随机数生成方法300的流程图。

【具体实施方式】
[0016] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开 的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例 所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围 完整的传达给本领域的技术人员。
[0017] 图1是计算终端100的结构框图。具有多点触摸能力的计算终端100可以包括存 储器接口 102、一个或多个数据处理器、图像处理器和/或中央处理单元104,以及外围接口 106。
[0018] 存储器接口 102、一个或多个处理器104和/或外围接口 106既可以是分立元件, 也可以集成在一个或多个集成电路中。在计算终端100中,各种元件可以通过一条或多条 通信总线或信号线来耦合。传感器、设备和子系统可以耦合到外围接口 106,以便帮助实现 多种功能。例如,运动传感器110、光传感器112和距离传感器114可以耦合到外围接口 106,以方便定向、照明和测距等功能。其他传感器116同样可以与外围接口 106相连,例如 定位系统(例如GPS接收机)、温度传感器、生物测定传感器或其他感测设备,由此可以帮助 实施相关的功能。
[0019] 相机子系统120和光学传感器122可以用于方便诸如记录照片和视频剪辑的相机 功能的实现,其中所述相机子系统和光学传感器例如可以是电荷耦合器件(CCD)或互补金 属氧化物半导体(CMOS)光学传感器。
[0020] 可以通过一个或多个无线通信子系统124来帮助实现通信功能,其中无线通信子 系统可以包括射频接收机和发射机和/或光(例如红外)接收机和发射机。无线通信子系 统124的特定设计和实施方式可以取决于计算终端100所支持的一个或多个通信网络。例 如,计算终端100可以包括被设计成支持GSM网络、GPRS网络、EDGE网络、Wi-Fi或WiMax 网络以及Bluebooth?网络的通信子系统124。
[0021] 音频子系统126可以与扬声器128以及麦克风130相耦合,以便帮助实施启用语 音的功能,例如语音识别、语音复制、数字记录和电话功能。
[0022] I/O子系统140可以包括触摸屏控制器142和/或一个或多个其他输入控制器 144。
[0023] 触摸屏控制器142可以耦合到触摸屏146。举例来说,该触摸屏146和触摸屏控制 器142可以使用多种触摸感测技术中的任何一种来检测与之进行的接触和移动或是暂停, 其中感测技术包括但不局限于电容性、电阻性、红外和表面声波技术。
[0024] -个或多个其他输入控制器144可以耦合到其他输入/控制设备148,例如一个或 多个按钮、摇杆开关、拇指旋轮、红外端口、USB端口、和/或指示笔之类的指点设备。一个 或多个按钮(未显不)可以包括用于控制扬声器128和/或麦克风130音量的向上/向下 按钮。
[0025] 存储器接口 102可以与存储器150相耦合。该存储器150可以包括高速随机存取 存储器和/或非易失性存储器,例如一个或多个磁盘存储设备,一个或多个光学存储设备, 和/或闪存存储器(例如NAND,N0R)。
[0026] 存储器150可以存储操作系统152,例如Android、IOS或是Windows Phone之类 的操作系统。该操作系统152可以包括用于处理基本系统服务以及执行依赖于硬件的任务 的指令。存储器150还可以存储各种应用154。在移动设备运行时,会从存储器150中加载 操作系统152,并且由处理器104执行。应用154在运行时,也会从存储器150中加载,并由 处理器104执行。应用154运行在操作系统之上,利用操作系统以及底层硬件提供的接口 实现各种用户期望的功能,如即时通信、网页浏览、图片管理等。应用可以是独立于操作系 统提供的,也可以是操作系统自带的。
[0027] 在各种应用154中,其中的一种应用为随机数生成设备200,该随机数生成设备基 于虹膜对比过程中所产生的随机性高的对比结果来生成随机数。该设备200可以生成高质 量的随机数。
[0028] 图2是根据本发明一个示例性实施例的随机数生成设备200的示意图。如图2所 示,随机数生成设备200包括虹膜采集单元210、虹膜模板生成单元220、虹膜对比单元230 和随机数生成单元240。
[0029] 虹膜采集单元210用于采集用户的虹膜图像,其包括成像单元(未示出)。成像单 元可以包括摄像头、图像传感器(未示出)。虹膜采集单元210还可以包括至少一个光源, 用来提供辅助照明,以提高采集虹膜图像的质量。虹膜采集单元210的摄像头理论上可以 位于随机数生成设备的任何位置。在一个实施例中,随机数生成设备200可以在移动终端 中实现,如智能手机、平板电脑等。此时,可以使用移动终端的摄像头采集虹膜图像。用户只 需要用移动终端中的摄像头朝向眼部即可开始虹膜图像采集。与单独安装的虹膜采集摄像 头相比,使用移动终端中的摄像头不占用额外的空间,也不需要额外布置连线、接口。而且, 用户可以用手将随机数生成设备和移动终端中的摄像头调整到对准眼部的方向,而不需要 调整头部位置去对准摄像头,因此对用户而言更加便捷。由于移动终端可以放置到离眼睛 较近的位置,因此不需要很高像素的摄像头就可以获得质量满意的成像,从而可以节省摄 像头的成本。
[0030] 虹膜模板生成单元220适于根据采集的用户虹膜图像生成虹膜模板。虹膜对比单 元230用于对两个虹膜模板进行对比。随机数生成单元240用于以对比结果作为种子生成 随机数。典型的情况下,其中一个模板是根据现场采集的一个用户的虹膜图像生成的虹膜 模板,另一个模板是该用户在注册期间生成的注册虹膜模板。在虹膜注册过程中,虹膜采 集单元210采集用户的虹膜,并且存储采集的虹膜。登记的虹膜数量可以不止一个,例如, 共用一台计算设备的用户和他/她的家人都可以登记各自的虹膜。在这种情况下,随机数 生成设备还可以包括虹膜认证单元(未示出),适于根据对比结果来认证两个虹膜模板是 否一致,随机数生成单元240可以响应于认证一致而以对比结果作为种子生成随机数。在 另一种情况下,这两个虹膜模板是根据采集的同一个用户的两个虹膜图像生成两个虹膜模 板,例如根据对用户连续两次采集的虹膜图像生成的两个虹膜模板。应当注意,所选用的两 个虹膜模板可以是任意的,例如这两个虹膜模板可以包括根据采集的两个用户的虹膜图像 生成的两个虹膜模板或者包括两个用户在注册期间生成的两个注册虹膜模板。
[0031] 虹膜对比单元230在对虹膜模板进行对比时,可以利用各种算法来计算相似度。 例如,可以通过汉明距离对比,例如将两个虹膜模板进行异或运算。对比结果数值等于0表 示这两个模板100%完全不一样,数字等于1表示这两个模板100%-样,这两种情况在实 际中不会发生。如果对比结果大于预定阈值,则虹膜认证单元可以认证两个模板一致,否则 认证不一致。
[0032] 应当理解的是,本发明不受限于虹膜对比和认证的具体算法,所有算法都在本发 明的保护范围之内。
[0033] 随机数生成单元240可以以对比结果作为种子生成随机数。随机数生成设备200 还可以包括通信接口 250,随机数生成单元240生成的随机数经由通信接口 250发送给应 用。应用例如包括将该随机数用于安全功能的应用,如具有网络加密解密功能的应用,或者 将该随机数用于其他功能的应用,如抽奖应用。应当注意,应用可以位于与随机数生成设备 200不同的计算设备中,例如,随机数生成设备200可以位于移动终端中或者单独的虹膜识 别设备中,而应用可以位于如个人计算机这样的计算设备中,随机数生成设备200通过通 信接口 250 (如USB线、蓝牙等)将生成的随机数发送给应用。或者,随机数生成设备200 和应用可以位于同一计算设备中,如移动终端中,甚至集成为同一应用。在一个实施例中, 随机数生成单元240响应于认证一致,通过通信接口 250向应用发送随机数。
[0034] 根据一个实施例,模板对比是通过对两个虹膜模板进行逻辑计算得到的。
[0035] 根据一个实施例,假如A^Bi (i = 1……2048)分别为第一虹膜模板与第二虹膜模 板的编码位,则汉明距离为:
[0036] HD = V2048ELTAMBi
[0037] 其中?表示异或,如果Ai与Bi完全相同时,则HD= 1 ;如果Ai与Bi完全不相同时, 则HD = 0。这两种情况在实际虹膜比对过程中不会发生,对比结果是介于0与1之间的数 字。对于任何一次虹膜识别过程,虹膜识别的环境(比如光线)和人的状态(虹膜识别时 的头部角度,眼睛旋转位置,光斑反射强弱)几乎不可能和另一次虹膜识别过程相同。这也 意味着,根据现场采集的虹膜图像生成的虹膜模板与之前的注册模板不可能一样,而且根 据对同一用户任意两次采集的虹膜图像生成的两个虹膜模板也不可能一样。因此,每次产 生的对比结果都是高度随机的。相应地,使用这种高度随机的对比结果作为种子,生成的随 机数也具有良好的随机性。
[0038] 为了进一步增加随机性,可以通过辅助条件来实现。虹膜采集单元前面可以不设 置用于固定用户头部或眼部的装置,这样每次用户在使用的过程中,识别目标(即眼睛)距 离虹膜采集单元的距离在一定范围内是随机的,例如300mm-500mm,在这个范围内都可以识 另IJ。由于用户每次使用时的识别距离是随机变化的,这也会增加识别结果的随机性,从而增 加生成的随机数的随机性。此外,通过在每次识别过程中调节提供辅助照明的光源的亮度, 也会造成每次对比结果之间的差异,增加生成的随机数的随机性。
[0039] 此外,由于不同用户之间的虹膜本身存在差别,因此两个用户的虹膜模板的对比 结果也是不同的,这也可以增加生成的随机数的随机性。
[0040] 以下是一个随机数生成设备的示例性使用场景。在公司年会的抽奖环节中,需要 随机抽出幸运员工。在此之前公司员工的虹膜已经通过包括虹膜采集单元、虹膜模板生成 单元、虹膜对比单元以及虹膜认证单元的虹膜识别考勤系统登记。现场抽奖时,可以使用虹 膜识别考勤系统对员工进行虹膜认证,同时将对比结果发送给例如位于外部计算设备中的 随机数生成单元,后者可以集成在抽奖应用内,以对比结果作为种子生成随机数,抽奖应用 利用该随机数随机抽出幸运奖,保证了抽奖环节的随机性和公平性。该随机数生成设备可 以利用已有的虹膜识别设备所产生的对比结果,而不需要专门的种子发生器。而且,由对比 结果生成的随机数随机性更好,并且可以结合虹膜认证的结果有选择地生成随机数,提高 了安全性。
[0041] 图3是根据本发明一个示例性实施例的随机数生成方法300的流程图。如图3所 示,本实施方法适于在随机数生成设备200中执行,以便有效地生成随机性较强的随机数。 该随机数生成方法始于步骤S310。
[0042] 在步骤S310中,采集用户的虹膜图像。
[0043] 随后,在步骤S320中,根据采集的用户虹膜图像生成虹膜模板。在步骤S330中, 对两个虹膜模板进行对比。在步骤S340中,以对比结果作为种子生成随机数。在步骤S350 中,可以将生成的随机数发送给应用。步骤S340、S350可以在认证一致的情况下执行。
[0044] 应当理解的是,本发明不受限于虹膜对比认证的具体算法。
[0045] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施 例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结 构和技术,以便不模糊对本说明书的理解。
[0046] 类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在 上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施 例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保 护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的 权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵 循【具体实施方式】的权利要求书由此明确地并入该【具体实施方式】,其中每个权利要求本身都 作为本发明的单独实施例。
[0047] 本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组 件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备 不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个 子模块。
[0048] 本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地 改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单 元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或 子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任 何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开 的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴 随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代 特征来代替。
[0049] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例 中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的 范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任 意之一都可以以任意的组合方式来使用。
[0050] 此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行 所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法 元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在 此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行 的功能。
[0051] 如在此所使用的那样,除非另行规定,使用序数词"第一"、"第二"、"第三"等等来 描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必 须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
[0052] 尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本【技术领域】 内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意, 本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限 定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本 【技术领域】的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本 发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
【权利要求】
1. 一种基于人体的虹膜信息生成随机数的设备,该设备包括: 虹膜采集单元,适于采集用户的虹膜图像; 虹膜模板生成单元,适于根据采集的用户虹膜图像生成虹膜模板; 虹膜对比单元,适于对两个虹膜模板进行对比;以及 随机数生成单元,适于以对比结果作为种子生成随机数。
2. 如权利要求1所述的随机数生成设备,还包括: 通信接口,适于将随机数生成单元生成的随机数发送给应用。
3. 如权利要求1所述的随机数生成设备,其中所述两个虹膜模板包括根据现场采集的 一个用户的虹膜图像生成的虹膜模板以及该用户在注册期间生成的注册虹膜模板。
4. 如权利要求3所述的随机数生成设备,还包括: 虹膜认证单元,适于根据对比结果来认证两个虹膜模板是否一致,其中所述随机数生 成单元还适于响应于认证一致而以对比结果作为种子生成随机数。
5. 如权利要求1所述的随机数生成设备,其中所述两个虹膜模板包括根据采集的同一 个用户的两个虹膜图像生成的两个虹膜模板。
6. 如权利要求1所述的随机数生成设备,其中所述两个虹膜模板包括根据采集的两个 用户的虹膜图像生成的两个虹膜模板。
7. 如权利要求1所述的随机数生成设备,其中所述两个虹膜模板包括两个用户在注册 期间生成的两个注册虹膜模板。
8. 如权利要求1-7中任一项所述的随机数生成设备,其中所述虹膜对比单元还适于对 所述两个虹膜模板进行逻辑计算。
9. 一种随机数生成方法,所述方法包括: 采集用户的虹膜图像; 根据采集的用户虹膜图像生成虹膜模板; 对两个虹膜模板进行对比; 以对比结果作为种子生成随机数。
10. -种计算终端,包括如权利要求1-9中任一项所述的随机数生成设备。
【文档编号】G06F7/58GK104360832SQ201410614230
【公开日】2015年2月18日 申请日期:2014年11月4日 优先权日:2014年11月4日
【发明者】王晓鹏, 徐鹤菲 申请人:北京释码大华科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1