解决方案:CN113726526A_人脸数据采集、验证的方法、设备及系统在审

优采云 发布时间: 2022-11-20 08:17

  解决方案:CN113726526A_人脸数据采集、验证的方法、设备及系统在审

  人脸数据采集、验证的方法、设备及系统

  技术领域

  本申请涉及信息技术领域,尤其涉及一种人脸数据采集、验证的方法、设备及系统。

  背景技术

  随着信息技术的发展,越来越多的场景中会使用到人脸识别技术。在使用人脸识别技术时,首先需要采集人脸数据,然后将采集到的人脸数据发送给处理设备中进行人脸识别。该上述过程中存在着人脸数据重放攻击风险,即攻击者使用此前交易中截获的人脸数据,或者在其他渠道获取的用户人脸数据,在人脸识别的通讯报文中进行替换,从而伪冒用户达到欺骗识别设备的目的。目前的解决方案一般是通过对报文完整性的保护来进行防范,如使用报文签名或者计算报文MAC(Media Access Control,介质访问控制)地址的方式,但是此种并不能从采集源头上防止重放攻击,仍然存在一定的安全风险。

  发明内容

  本申请的一个目的是提供一种人脸数据采集、验证的方案,用以解决现有方案中无法从采集源头上防止了重放攻击的问题。

  本申请实施例提供了一种人脸数据采集方法,所述方法包括:

  采集设备获取由人脸识别服务器生成的、对应于本次人脸数据采集的随机数,并采集人脸样本;

  所述采集设备将所述人脸样本和校验数据作为待签名数据,并使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名,其中,所述校验数据包括所述随机数;

  所述采集设备根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据。

  本申请实施例还提供了一种人脸数据验证方法,所述方法包括:

  人脸识别服务器生成对应于本次人脸数据采集的随机数,并将其提供给采集设备,以使所述采集设备生成收录

所述随机数的可信人脸数据;

  所述人脸识别服务器获取由采集设备生成的可信人脸数据,其中,所述可信人脸数据包括待签名数据、人脸数据签名和收录

设备公钥的数字证书,所述待签名数据包括所述采集设备采集到的人脸样本和校验数据,所述校验数据包括所述随机数,所述人脸数据签名由采集设备使用预先为所述采集设备分配的设备私钥进行签名获得;

  所述人脸识别服务器对收录

设备公钥的数字证书进行证书验证;

  在通过证书验证后,所述人脸识别服务器使用所述数字证书中的设备公钥对人脸数据签名进行签名验证;

  在通过签名验证后,所述人脸识别服务器对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  本申请实施例还提供了一种人脸数据采集和验证的方法,该方法包括:

  人脸识别服务器生成对应于本次人脸数据采集的随机数,并将其提供给采集设备;

  采集设备获取所述随机数,并采集人脸样本;

  所述采集设备将所述人脸样本和校验数据作为待签名数据,并使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名,其中,所述校验数据包括所述随机数;

  所述采集设备根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据;

  所述人脸识别服务器获取由采集设备生成的可信人脸数据,并对所述可信人脸数据中收录

设备公钥的数字证书进行证书验证;

  在通过证书验证后,所述人脸识别服务器使用所述数字证书中的设备公钥对人脸数据签名进行签名验证;

  在通过签名验证后,所述人脸识别服务器对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  本申请实施例还提供了一种用于人脸数据采集的采集设备,所述采集设备包括:

  数据接收装置,用于获取由人脸识别服务器生成的、对应于本次人脸数据采集的随机数;

  视频采集模块,用于采集人脸样本;

  人脸输出模块,用于将人脸样本和校验数据作为待签名数据,使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名,并根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据,其中,所述校验数据包括所述随机数。

  本申请实施例还提供了一种用于人脸数据验证的人脸识别服务器,其中,所述人脸识别服务器包括:

  数据收发模块,用于将对应于本次人脸数据采集的随机数提供给采集设备,以使所述采集设备生成收录

所述随机数的可信人脸数据;以及获取由采集设备生成的可信人脸数据,其中,所述可信人脸数据包括待签名数据、人脸数据签名和收录

设备公钥的数字证书,所述待签名数据包括所述采集设备采集到的人脸样本和校验数据,所述校验数据包括所述随机数,所述人脸数据签名由采集设备使用预先为所述采集设备分配的设备私钥进行签名获得;

  数据处理模块,用于生成所述随机数,对收录

设备公钥的数字证书进行证书验证,在通过证书验证后,使用所述数字证书中的设备公钥对人脸数据签名进行签名验证;在通过签名验证后,对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  本申请实施例还提供了一种用于人脸数据采集和验证的系统,该系统包括:

  采集设备,用于获取对应于本次人脸数据采集的随机数,并采集人脸样本;将所述人脸样本和校验数据作为待签名数据,并使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名,所述校验数据包括所述随机数;以及根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据;

  人脸识别服务器,用于人脸识别服务器生成所述随机数,并将其提供给采集设备;获取由采集设备生成的可信人脸数据,并对所述可信人脸数据中收录

设备公钥的数字证书进行证书验证;在通过证书验证后,使用所述数字证书中的设备公钥对人脸数据签名进行签名验证;以及在通过签名验证后,对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  本申请实施例还提供了一种计算设备,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行所述的方法。

  此外,本申请实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机可读指令可被处理器执行以实现所述的方法。

  本申请实施例提供的方案中,采集设备在采集到人脸样本后,将人脸样本与收录

随机数的校验数据一起构成待签名数据,使用设备私钥进行签名获得人脸数据签名,进而根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书获得可信人脸数据。人脸识别服务器在对采集设备生成的可信人脸数据进行验证时,依次对收录

设备公钥的数字证书、人脸数据签名以及校验数据进行验证,在通过这些验证之后,即完成验证的过程,从而可将人脸样本进行业务处理。由于该方案在采集设备上就对人脸样本添加了用于校验的内容,其中收录

的随机数仅对应于本次人脸数据采集,有效提高了安全性,即时传输的通讯报文被攻击者替换,也无法通过后续的验证,因此从采集源头上防止了重放攻击。

  附图说明

  通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

  图1为本申请实施例中采集设备在实现人脸数据采集方法时的处理流程图;

  图2为本申请实施例中可信人脸数据的一种数据构成*敏*感*词*;

  图3为本申请实施例提供的人脸识别服务器在实现人脸数据验证方法时的处理流程图;

  图4为采用本申请实施提供的方案实现人脸数据采集和验证时各方设备之间的交互流程图;

  图5为本申请实施例提供的一种人脸数据采集和验证的方法的处理流程图;

  图6为本申请实施例提供的另一种人脸数据采集和验证的方法的处理流程图;

  

" />

  图7为本申请实施例提供的一种计算设备的结构*敏*感*词*;

  附图中相同或相似的附图标记代表相同或相似的部件。

  具体实施方式

  下面结合附图对本申请作进一步详细描述。

  在本申请一个典型的配置中,终端、服务网络的设备均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

  内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

  计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的装置或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘(CD-ROM)、数字*敏*感*词*光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

  本申请实施例提供了一种人脸数据采集及验证方法,由采集设备实现人脸数据的采集,并由人脸识别服务器实现人脸数据的验证,该方案在采集设备上就对人脸样本添加了用于校验的内容,即时传输的通讯报文被攻击者替换,也无法通过后续的验证,因此从采集源头上防止了重放攻击。

  在实际场景中,所述采集设备可以是具有视频采集及信息处理功能的电子设备,例如收录

*敏*感*词*以及数据处理芯片的设备。其中,所述*敏*感*词*可以是能够采集彩*敏*感*词*像的普通*敏*感*词*,或者也可以是能够采集深度信息、红外信息等额外信息的*敏*感*词*。所述人脸识别服务器在实现时可以包括但不限于单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现,可以用于实现设置闹钟时的部分处理功能。在此,云由基于云计算(Cloud Computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟计算机。

  图1示出了本申请实施例中采集设备在实现人脸数据采集方法时的处理流程,包括以下处理步骤:

  步骤S101,采集设备获取由人脸识别服务器生成的、对应于本次人脸数据采集的随机数,并采集人脸样本。所述人脸样本可以是收录

人脸图像的视频数据和/或人脸3D数据,可以通过各类具有视频采集功能的装置实现,例如RGB*敏*感*词*、深度*敏*感*词*等。

  在本申请的一些实施例中,可以将*敏*感*词*直接采集到的数据作为人脸的原创

样本,而后对所述原创

样本进行质量评估和/或活体检测,将通过质量评估和/或活体检测的原创

样本作为人脸样本。其中,所述质量评估是指对人脸的原创

样本的质量进行评估,以判断采集到的数据是否符合后续人脸识别处理的要求。对图像进行质量评估后,避免将不符合识别要求的人脸样本进行人脸识别,可以提高后续人脸识别处理时的准确度。实际场景中,可以根据人脸图像区域占整体图像区域的大小、人脸图像的清晰度、图像中收录

的人脸的完整度、人脸的姿态和角度、人脸的光照情况等进行质量评估,通过设定阈值的方式判断上述的质量评估项是否满足要求,若满足要求,则判定为通过质量评估;若不满足要求,则判定为未通过质量评估。例如,本实施例中可以设定质量评估项包括:人脸图像区域占整体图像区域是否大于60%,人脸完整度大于90%,人脸正面与镜头的角度小于20°,若采集的原创

样本符合所有的阈值,则可以认为该原创

样本通过了质量评估。

  活体检测是用于确定采集的原创

样本是否来自于用户本人活体,而不是来自于攻击者持有的图片、视频或者*敏*感*词*等假体,从而进一步提升安全性。在实际场景中,活体检测可以根据应用场景的不同,而采用不同的检测方式,例如若用于采集原创

样本的*敏*感*词*仅可以获取二维图像数据,则可以采用动作配合式的活体检测,由显示屏等输出装置提示用户执行相应的动作,由于假体一般无法根据提示做出相应的动作,因此可以根据二维图像数据判定用户是否在预设时间内做出了相应的动作,从而判断采集到的原创

样本是否来自于活体。若用于采集原创

样本的*敏*感*词*还可以采集到红外信息、深度信息等,则可以采用利用红外或者深度图像的活体检测方式。

  在本申请实施例中,可以根据实际应用场景的需求同时采用质量评估和活体检测,或者也可以仅采用其中一种。例如在本实施例中,会对原创

样本同时进行质量评估和活体检测,仅当同时通过质量评估和活体检测后,该人脸的原创

样本才会作为人脸样本,被用于后续的处理,否则可以重新采集原创

样本直至通过质量评估和活体检测。

  步骤S102,采集设备将所述人脸样本和校验数据作为待签名数据,并使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名。其中,所述校验数据用于在后续验证过程中使用,可以包括由人脸识别服务器生成的、对应于本次人脸数据采集的随机数。每一次生成的随机数都对应于一次的人脸数据采集和验证,例如人脸识别服务器生成一个随机数RN1后,会通过相应的方式将该随机数RN1提供至采集设备,采集设备会在成功采集到一次人脸样本F1后,该随机数RN1会与本次采集到的人脸样本F1一起作为待签名数据。若采集设备进行下一次采集时,则不会再使用随机数RN1,而是会获得人脸识别服务器生成的一个新的随机数RN2。由此,人脸识别服务器在生成随机数RN1后,将其保存,当获取到人脸样本F1对应的可信人脸数据之后,可以将其中的随机数与保存的随机数比较,若都是RN1,则验证通过,否则,可以认为获得的数据不安全,验证未通过。

  在本申请的另一些实施例中,所述校验数据还可以包括预先为所述采集设备分配的设备标识,由此可以同时使用随机数和设备标识作为校验数据的内容。所述设备标识与采集设备对应,预先为采集设备分配的方式可以在采集设备出厂时由厂商通过安全的方式生成并写入到采集设备内,或者也可以在采集设备初始化时由用户进行注册、申请等。每台采集设备可以有一个唯一的设备标识,即设备标识与采集设备一一对应。由此,将所述采集设备的设备标识作为校验数据中的一项内容之后,人脸识别服务器可以通过其它方式获取并存储采集设备的设备标识,在获取到人脸样本F1对应的可信人脸数据之后,可以将其中的设备标识与预先存储的设备标识比较,若两者都是ID1,则验证通过,否则,可以认为获得的数据不安全,验证未通过。

  步骤S103,所述采集设备根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据。例如,当待签名数据收录

人脸样本、设备标识、随机数时,可信人脸数据中的数据构成可以如图2所示。

  所述收录

设备公钥的数字证书可以来自于可信管理服务器,所述可信管理服务器可以是CA(Certificate Authority、证书授权)机构的服务器,可用于证明该数字证书中的设备公钥是合法、可信的。

  在本申请的一些实施例中,采集设备在生成可信人脸数据之后,可以将所述可信人脸数据提供给至人脸识别服务器,以使所述人脸识别服务器对所述可信人脸数据进行验证。

  在实际场景中,采集设备可以基于本地业务终端发送的采集调用指令来触发人脸数据的采集。其中,本地业务终端可以是具有人脸验证、人脸注册等功能的设备,当用户在本地业务终端执行特定的操作后,会启动相应的业务处理流程。例如,当用户点击某一按钮后,即启动了人脸注册的业务处理流程,此时本地业务终端会生成相应的业务请求,该业务请求可以收录

了采集调用指令,发送给采集设备后即可触发采集设备执行前述的人脸数据采集方法。

  同时,本地业务终端启动了人脸注册的业务处理流程后,会向人脸识别服务器请求一个随机数,人脸识别服务器会根据该随机数获取请求生成一个随机数并返回给本地业务终端。本地业务终端向采集终端发送的业务请求中也可以收录

该随机数,由此使得采集设备可以将该随机数添加至可信人脸数据,以实现后续的验证过程。即,采集设备在获取由人脸识别服务器生成的、对应于本次人脸数据采集的随机数,并采集人脸样本时,可以获取本地业务终端发送的采集调用指令和对应于本次人脸数据采集的随机数,并根据所述采集调用指令采集人脸样本。其中,所述采集调用指令由所述本地业务终端在获取到用户发起的人脸识别业务请求后生成,所述随机数由所述人脸识别服务器生成,并由所述本地业务终端在获取到用户发起的人脸识别业务请求后向所述人脸识别服务器请求获取。

  图3示出了本申请实施例提供的人脸识别服务器在实现人脸数据验证方法时的处理流程,包括以下处理步骤:

  步骤S301,人脸识别服务器生成对应于本次人脸数据采集的随机数,并将其提供给采集设备,以使所述采集设备生成收录

所述随机数的可信人脸数据;

  步骤S302,人脸识别服务器获取由采集设备生成的可信人脸数据。所述可信人脸数据的生成过程可以参考前述内容,此处不再赘述,可信人脸数据中包括待签名数据、人脸数据签名和收录

设备公钥的数字证书,所述待签名数据包括所述采集设备采集到的人脸样本和校验数据,所述校验数据包括所述随机数,所述人脸数据签名由采集设备使用预先为所述采集设备分配的设备私钥进行签名获得。

  步骤S303,人脸识别服务器对收录

设备公钥的数字证书进行证书验证。其中,所述设备公钥和设备私钥为一个密钥对,可以预先生成后,人脸数据的采集和验证过程中使用。而所述收录

设备公钥的数字证书可以来自于可信管理服务器,所述可信管理服务器可以是CA机构的服务器,可用于证明该数字证书中的设备公钥是合法、可信的。

  数字证书中的内容可以包括至少收录

设备公钥的待签名数据,使用可信管理服务器私钥对该待签名数据进行签名后所获得的数字签名。在验证过程中,人脸识别服务器可以预先获取可信管理服务器公钥,使用可信管理服务器公钥对数字证书中的数字签名进行解密,获得数字签名的原文,进而与数字证书本身所携带的、至少收录

设备公钥的待签名数据进行比较,若完全一致,则说明数字证书验证通过。此外,若可信管理服务器私钥处理收录

设备公钥的待签名数据之前,对该待签名数据进行过哈希计算,则验证时使用可信管理服务器公钥解密获得的原文即为进行哈希计算后的摘要。此时,人脸识别服务器要对数字证书中本身所携带、至少收录

设备公钥的待签名数据采用同样的哈希算法进行计算,获取到摘要之后,与通过可信管理服务器公钥解密获得的摘要进行比较,若两者完全一致,则说明数字证书验证通过。

  步骤S304,在通过证书验证后,所述人脸识别服务器使用所述数字证书中的设备公钥对人脸数据签名进行签名验证。由于可信人脸数据中的人脸数据签名由待签名数据通过设备私钥加密获得,因此理论上可以使用设备公钥对人脸数据签解密获得数据原文,即收录

人脸样本和校验数据的待签名数据。由此,对人脸数据签名进行验证过程与数字证书的验证过程类似,此处不再水煮,其区别在于数据签名的验证过程使用的密钥为设备公钥,而数字证书的验证过程使用的密钥为可信管理服务器公钥。当人脸数据签名验证通过后,可以认为可信人脸数据中的待签名数,即人脸样本和校验数据是合法、可信的,可以用于后续的处理。

  步骤S305,在通过签名验证后,所述人脸识别服务器对校验数据进行验证。在本申请的一些实施例中,所述校验数据包括由人脸识别服务器生成的、对应于本次人脸数据采集的随机数。由此,人脸识别服务器对校验数据进行验证时,可以采用校验数据中的随机数进行验证,即所述人脸识别服务器对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  在本申请的另一些实施例中,若同时采用随机数和设备标识进行验证时,则所述人脸识别服务器对校验数据中收录

的随机数与生成后保存的随机数进行比较,以及对校验数据中收录

的设备标识与预先存储的、所述采集设备的设备标识进行比较,若两个比较结果均为相同,确认通过校验数据验证。

  在实际场景中,用于验证的随机数是人脸识别服务器在接收本地业务终端发送的随机数获取请求后,根据所述随机数获取请求生成,并向所述本地业务终端返回的。由此,人脸识别服务器在生成对应于本次人脸数据采集的随机数,并将其提供给采集设备时,可以接收本地业务终端发送的随机数获取请求,而后根据所述随机数获取请求生成对应于本次人脸数据采集的随机数,并向所述本地业务终端返回所述随机数,以使所述本地业务终端将所述随机数提供给采集设备。

  图4示出了采用本申请实施提供的方案实现人脸数据采集和验证时各方设备之间的交互流程,具体流程包括准备阶段和使用阶段。其中,准备阶段的流程如下:

  P1)为采集设备配置设备ID(即设备标识)和设备可信密钥对,其中设备ID是与每台采集设备一一对应的,设备可信密钥对可以是每台采集设备一套,也可以是一批次采集设备共享一套。在使用阶段之前,将设备ID和其对应的设备可信密钥对中的设备公钥上传到可信管理服务器上。

  P2)采集设备在出厂时,在每一台采集设备写入其对应的设备ID,用来唯一标识该采集设备;另外,需要在采集设备中写入设备可信密钥对的设备私钥以及对应的设备公钥证书。

  P3)人脸识别服务器从可信管理服务器获取到其用以签发设备公钥证书的私钥所对应的公钥。

  使用阶段的流程如下:

  S1)用户在本地业务终端上发起业务请求,例如实际场景中可以是人脸认证、人脸识别等与需要基于人脸数据实现的业务请求,本地业务终端从人脸识别服务器请求一个随机数;

  S2)本地业务终端调用采集设备对用户进行人脸采集,并将随机数发送给采集设备;

  S3)采集设备对用户人脸的原创

样本进行采集后,经过质量判断和活体检测后,作为人脸样本与设备标识、传入的随机数等信息一起使用设备私钥进行签名,获得人脸数据签名,然后与收录

设备公钥的数字证书一起形成可信人脸数据后,返回给本地业务终端。

  S4)本地业务终端将获得的可信人脸数据块送至人脸识别服务器进行处理。

  S5)人脸识别服务器对可信人脸数据进行验证,具体方法为:先使用可信管理服务器公钥验证可信人脸数据中附带的数字证书的合法性。如果验证通过,则使用该数字证书中的设备公钥,验证可信人脸数据中的人脸数据签名的合法性。如果验证通过,则验证可信人脸数据中的随机数与人脸识别服务器生成并保存的随机数是否一致。如果一致,则认为验证通过,可以使用该可信人脸数据中的人脸样本进行后续业务处理,例如进行人脸注册或者人脸识别等;

  S6)人脸识别服务器返回处理结果给本地业务终端,例如人脸注册或者人脸识别的结果是否成功。

  基于前述人脸数据的采集方案和验证方案,本申请实施例还提供了一种人脸数据采集和验证的方法,该方法所涉及的人脸识别服务器和采集设备的交互过程如下图5所示,包括如下步骤:

  步骤S501,人脸识别服务器生成对应于本次人脸数据采集的随机数,并将其提供给采集设备;

  步骤S502,采集设备获取所述随机数,并采集人脸样本;

  步骤S503,所述采集设备将所述人脸样本和校验数据作为待签名数据,并使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名,其中,所述校验数据包括所述随机数;

  步骤S504,所述采集设备根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据;

  步骤S505,所述人脸识别服务器获取由采集设备生成的可信人脸数据;

  

" />

  步骤S506,所述人脸识别服务器对所述可信人脸数据中收录

设备公钥的数字证书进行证书验证;

  步骤S507,在通过证书验证后,所述人脸识别服务器使用所述数字证书中的设备公钥对人脸数据签名进行签名验证;

  步骤S508,在通过签名验证后,所述人脸识别服务器对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  在本申请的一些实施例中,实现人脸数据采集和验证的方法时,还可以包括本地业务终端,所述本地业务终端与人脸识别服务器、采集设备之间的交互过程如下图6所示,包括如下步骤:

  步骤S601,本地业务终端获取用户发起的人脸识别业务请求,根据所述人脸识别业务请求生成采集调用指令;

  步骤S602,本地业务终端向所述人脸识别服务器发送随机数获取请求;

  步骤S603,人脸识别服务器根据所述随机数获取请求生成对应于本次人脸数据采集的随机数;

  步骤S604,人脸识别服务器向所述本地业务终端返回所述随机数;

  步骤S605,本地业务终端向所述采集设备发送采集调用指令和所述随机数;

  步骤S606,采集设备获取所述随机数,并根据采集调用指令采集人脸样本;

  步骤S607,所述采集设备将所述人脸样本和校验数据作为待签名数据,并使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名,其中,所述校验数据包括所述随机数;

  步骤S608,所述采集设备根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据;

  步骤S609,所述人脸识别服务器获取由采集设备生成的可信人脸数据。采集设备在生成可信人脸数据之后,可以先将其发送给本地业务终端,再由本地业务终端将可信人脸数据发送至人脸识别服务器。

  步骤S610,所述人脸识别服务器对所述可信人脸数据中收录

设备公钥的数字证书进行证书验证;

  步骤S611,在通过证书验证后,所述人脸识别服务器使用所述数字证书中的设备公钥对人脸数据签名进行签名验证;

  步骤S612,在通过签名验证后,所述人脸识别服务器对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  基于同一发明构思,本申请实施例中还提供了用于人脸数据采集的采集设备、用于人脸数据验证的人脸识别服务器以及用于实现人脸数据采集和验证的系统,所述采集设备、人脸识别服务器和系统对应的方法是前述实施例中相应方法,并且其解决问题的原理与该方法相似。

  本申请实施例提供的一种用于人脸数据采集的采集设备的结构可以至少包括数据接收装置、视频采集模块和人脸输出模块。其中,所述数据接收装置用于获取由人脸识别服务器生成的、对应于本次人脸数据采集的随机数;所述视频采集模块用于采集人脸样本;所述人脸输出模块用于将人脸样本和校验数据作为待签名数据,使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名,并根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据,其中,所述校验数据包括所述随机数。

  所述人脸样本可以是收录

人脸图像的视频数据和/或人脸3D数据,可以通过各类具有视频采集功能的装置实现,例如RGB*敏*感*词*、深度*敏*感*词*等。

  在本申请的一些实施例中,可以将*敏*感*词*直接采集到的数据作为人脸的原创

样本,而后对所述原创

样本进行质量评估和/或活体检测,将通过质量评估和/或活体检测的原创

样本作为人脸样本。其中,所述质量评估是指对人脸的原创

样本的质量进行评估,以判断采集到的数据是否符合后续人脸识别处理的要求。对图像进行质量评估后,避免将不符合识别要求的人脸样本进行人脸识别,可以提高后续人脸识别处理时的准确度。实际场景中,可以根据人脸图像区域占整体图像区域的大小、人脸图像的清晰度、图像中收录

的人脸的完整度、人脸的姿态和角度、人脸的光照情况等进行质量评估,通过设定阈值的方式判断上述的质量评估项是否满足要求,若满足要求,则判定为通过质量评估;若不满足要求,则判定为未通过质量评估。例如,本实施例中可以设定质量评估项包括:人脸图像区域占整体图像区域是否大于60%,人脸完整度大于90%,人脸正面与镜头的角度小于20°,若采集的原创

样本符合所有的阈值,则可以认为该原创

样本通过了质量评估。

  活体检测是用于确定采集的原创

样本是否来自于用户本人活体,而不是来自于攻击者持有的图片、视频或者*敏*感*词*等假体,从而进一步提升安全性。在实际场景中,活体检测可以根据应用场景的不同,而采用不同的检测方式,例如若用于采集原创

样本的*敏*感*词*仅可以获取二维图像数据,则可以采用动作配合式的活体检测,由显示屏等输出装置提示用户执行相应的动作,由于假体一般无法根据提示做出相应的动作,因此可以根据二维图像数据判定用户是否在预设时间内做出了相应的动作,从而判断采集到的原创

样本是否来自于活体。若用于采集原创

样本的*敏*感*词*还可以采集到红外信息、深度信息等,则可以采用利用红外或者深度图像的活体检测方式。

  由此,本申请的一些实施例中,所述视频采集模块可以包括采集单元和检测评估单元,所述采集单元用于采集人脸的原创

样本,而所述检测评估单元用于对所述原创

样本进行质量评估和/或活体检测,将通过质量评估和/或活体检测的原创

样本作为人脸样本。

  在本申请实施例中,可以根据实际应用场景的需求同时采用质量评估和活体检测,或者也可以仅采用其中一种。例如在本实施例中,会对原创

样本同时进行质量评估和活体检测,仅当同时通过质量评估和活体检测后,该人脸的原创

样本才会作为人脸样本,被用于后续的处理,否则可以重新采集原创

样本直至通过质量评估和活体检测。

  所述人脸输出模块用于将人脸样本和校验数据作为待签名数据,使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名。所述校验数据用于在后续验证过程中使用,可以包括由人脸识别服务器生成的、对应于本次人脸数据采集的随机数。每一次生成的随机数都对应于一次的人脸数据采集和验证,例如人脸识别服务器生成一个随机数RN1后,会通过相应的方式将该随机数RN1提供至采集设备,采集设备会在成功采集到一次人脸样本F1后,该随机数RN1会与本次采集到的人脸样本F1一起作为待签名数据。若采集设备进行下一次采集时,则不会再使用随机数RN1,而是会获得人脸识别服务器生成的一个新的随机数RN2。由此,人脸识别服务器在生成随机数RN1后,将其保存,当获取到人脸样本F1对应的可信人脸数据之后,可以将其中的随机数与保存的随机数比较,若都是RN1,则验证通过,否则,可以认为获得的数据不安全,验证未通过。

  在本申请的另一些实施例中,所述校验数据还可以包括预先为所述采集设备分配的设备标识,由此可以同时使用随机数和设备标识作为校验数据的内容。所述设备标识与采集设备对应,预先为采集设备分配的方式可以在采集设备出厂时由厂商通过安全的方式生成并写入到采集设备内,或者也可以在采集设备初始化时由用户进行注册、申请等。每台采集设备可以有一个唯一的设备标识,即设备标识与采集设备一一对应。由此,将所述采集设备的设备标识作为校验数据中的一项内容之后,人脸识别服务器可以通过其它方式获取并存储采集设备的设备标识,在获取到人脸样本F1对应的可信人脸数据之后,可以将其中的设备标识与预先存储的设备标识比较,若两者都是ID1,则验证通过,否则,可以认为获得的数据不安全,验证未通过。

  在获得待签名数据和人脸数据签名之后,人脸输出模块可以根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据。例如,当待签名数据收录

人脸样本、设备标识、随机数时,可信人脸数据中的数据构成可以如图2所示。

  所述收录

设备公钥的数字证书可以来自于可信管理服务器,所述可信管理服务器可以是CA(Certificate Authority、证书授权)机构的服务器,可用于证明该数字证书中的设备公钥是合法、可信的。

  在本申请的一些实施例中,采集设备在生成可信人脸数据之后,可以将所述可信人脸数据提供给至人脸识别服务器,以使所述人脸识别服务器对所述可信人脸数据进行验证。

  在实际场景中,采集设备可以基于本地业务终端发送的采集调用指令来触发人脸数据的采集。由此,本申请的一些实施例中,所述采集设备还可以包括数据接收模块,该数据接收模块用于在获取人脸的原创

样本之前,获取本地业务终端发送的采集调用指令和对应于本次人脸数据采集的随机数。其中,本地业务终端可以是具有人脸验证、人脸注册等功能的设备,当用户在本地业务终端执行特定的操作后,会启动相应的业务处理流程。例如,当用户点击某一按钮后,即启动了人脸注册的业务处理流程,此时本地业务终端会生成相应的业务请求,该业务请求可以收录

了采集调用指令,发送给采集设备后即可触发采集设备执行前述的人脸数据采集方法。

  同时,本地业务终端启动了人脸注册的业务处理流程后,会向人脸识别服务器请求一个随机数,人脸识别服务器会根据该随机数获取请求生成一个随机数并返回给本地业务终端。本地业务终端向采集终端发送的业务请求中也可以收录

该随机数,由此使得采集设备可以将该随机数添加至可信人脸数据,以实现后续的验证过程。即,采集设备在获取由人脸识别服务器生成的、对应于本次人脸数据采集的随机数,并采集人脸样本时,可以获取本地业务终端发送的采集调用指令和对应于本次人脸数据采集的随机数,并根据所述采集调用指令采集人脸样本。其中,所述采集调用指令由所述本地业务终端在获取到用户发起的人脸识别业务请求后生成,所述随机数由所述人脸识别服务器生成,并由所述本地业务终端在获取到用户发起的人脸识别业务请求后向所述人脸识别服务器请求获取。

  本申请实施例还提供了一种用于人脸数据验证的人脸识别服务器,该人脸识别服务器可以包括数据收发模块和数据处理模块。其中,数据收发模块用于将对应于本次人脸数据采集的随机数提供给采集设备,以使所述采集设备生成收录

所述随机数的可信人脸数据;以及获取由采集设备生成的可信人脸数据。所述可信人脸数据的生成过程可以参考前述内容,此处不再赘述,可信人脸数据中包括待签名数据、人脸数据签名和收录

设备公钥的数字证书,所述待签名数据包括所述采集设备采集到的人脸样本和校验数据,所述校验数据包括所述随机数,所述人脸数据签名由采集设备使用预先为所述采集设备分配的设备私钥进行签名获得人脸数据签名。

  所述数据处理模块用于生成所述随机数,以及根据可信人脸数据进行各种验证,包括用于对收录

设备公钥的数字证书进行证书验证、使用所述数字证书中的设备公钥对人脸数据签名进行签名验证以及对校验数据进行校验数据验证。

  其中,所述设备公钥和设备私钥为一个密钥对,可以预先生成后,人脸数据的采集和验证过程中使用。而所述收录

设备公钥的数字证书可以来自于可信管理服务器,所述可信管理服务器可以是CA机构的服务器,可用于证明该数字证书中的设备公钥是合法、可信的。

  数字证书中的内容可以包括至少收录

设备公钥的待签名数据,使用可信管理服务器私钥对该待签名数据进行签名后所获得的数字签名。在验证过程中,人脸识别服务器可以预先获取可信管理服务器公钥,使用可信管理服务器公钥对数字证书中的数字签名进行解密,获得数字签名的原文,进而与数字证书本身所携带的、至少收录

设备公钥的待签名数据进行比较,若完全一致,则说明数字证书验证通过。此外,若可信管理服务器私钥处理收录

设备公钥的待签名数据之前,对该待签名数据进行过哈希计算,则验证时使用可信管理服务器公钥解密获得的原文即为进行哈希计算后的摘要。此时,人脸识别服务器要对数字证书中本身所携带、至少收录

设备公钥的待签名数据采用同样的哈希算法进行计算,获取到摘要之后,与通过可信管理服务器公钥解密获得的摘要进行比较,若两者完全一致,则说明数字证书验证通过。

  在通过证书验证后,所述人脸识别服务器的数据处理模块使用所述数字证书中的设备公钥对人脸数据签名进行签名验证。由于可信人脸数据中的人脸数据签名由待签名数据通过设备私钥加密获得,因此理论上可以使用设备公钥对人脸数据签解密获得数据原文,即收录

人脸样本和校验数据的待签名数据。由此,对人脸数据签名进行验证过程与数字证书的验证过程类似,此处不再水煮,其区别在于数据签名的验证过程使用的密钥为设备公钥,而数字证书的验证过程使用的密钥为可信管理服务器公钥。当人脸数据签名验证通过后,可以认为可信人脸数据中的待签名数,即人脸样本和校验数据是合法、可信的,可以用于后续的处理。

  在通过签名验证后,所述人脸识别服务器的数据处理模块对校验数据进行验证。在本申请的一些实施例中,所述校验数据包括由人脸识别服务器生成的、对应于本次人脸数据采集的随机数。由此,人脸识别服务器对校验数据进行验证时,可以采用校验数据中的随机数,即所述人脸识别服务器对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  在本申请的另一些实施例中,若同时采用随机数和设备标识进行验证时,则所述人脸识别服务器对校验数据中收录

的随机数与生成后保存的随机数进行比较,以及对校验数据中收录

的设备标识与预先存储的、所述采集设备的设备标识进行比较,若两个比较结果均为相同,确认通过校验数据验证。

  在实际场景中,所述数据收发模块还用于接收本地业务终端发送的随机数获取请求,并向所述本地业务终端返回随机数,以使所述本地业务终端将所述随机数提供给采集设备;所述数据处理模块还用于根据所述随机数获取请求生成随机数。即用于验证的随机数是人脸识别服务器在接收本地业务终端发送的随机数获取请求后,根据所述随机数获取请求生成,并向所述本地业务终端返回的。

  此外,本申请的一些实施例还提供了一种用于人脸数据采集和验证的系统,系统至少包括采集设备和人脸识别服务器。

  采集设备用于获取对应于本次人脸数据采集的随机数,并采集人脸样本;将所述人脸样本和校验数据作为待签名数据,并使用预先为所述采集设备分配的设备私钥进行签名,获得人脸数据签名,所述校验数据包括所述随机数;以及根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书,获得可信人脸数据。

  人脸识别服务器则用于人脸识别服务器生成所述随机数,并将其提供给采集设备;获取由采集设备生成的可信人脸数据,并对所述可信人脸数据中收录

设备公钥的数字证书进行证书验证;在通过证书验证后,使用所述数字证书中的设备公钥对人脸数据签名进行签名验证;以及在通过签名验证后,对校验数据中收录

的随机数与生成后保存的随机数进行比较,基于相同的比较结果确认通过校验数据验证。

  本申请的另一实施例中,所述该系统还可以包括本地业务终端。所述本地业务终端用于获取用户发起的人脸识别业务请求,根据所述人脸识别业务请求生成采集调用指令,并向所述人脸识别服务器发送随机数获取请求;获取由人脸识别服务器生成的、对应于本次人脸数据采集的随机数;以及向所述采集设备发送采集调用指令和所述随机数。

  所述采集装置在采集人脸样本时,可以根据所述采集调用指令采集人脸样本;而所述人脸识别服务器在提供随机数时,可以根据所述随机数获取请求生成对应于本次人脸数据采集的随机数,并向所述本地业务终端返回所述随机数,以使所述本地业务终端将所述随机数提供给采集设备。

  综上所述,本申请实施例提供的方案中,采集设备在采集到人脸样本后,将人脸样本与收录

随机数的校验数据一起构成待签名数据,使用设备私钥进行签名获得人脸数据签名,进而根据所述待签名数据、人脸数据签名和收录

设备公钥的数字证书获得可信人脸数据。人脸识别服务器在对采集设备生成的可信人脸数据进行验证时,依次对收录

设备公钥的数字证书、人脸数据签名以及校验数据进行验证,在通过这些验证之后,即完成验证的过程,从而可将人脸样本进行业务处理。由于该方案在采集设备上就对人脸样本添加了用于校验的内容,其中收录

的随机数仅对应于本次人脸数据采集,有效提高了安全性,即时传输的通讯报文被攻击者替换,也无法通过后续的验证,因此从采集源头上防止了重放攻击。

  另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一些实施例包括一个如图7所示的计算设备,该设备包括存储有计算机可读指令的一个或多个存储器710和用于执行计算机可读指令的处理器720,其中,当该计算机可读指令被该处理器执行时,使得所述设备执行基于前述本申请的多个实施例的方法和/或技术方案。

  此外,本申请的一些实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机可读指令可被处理器执行以实现前述本申请的多个实施例的方法和/或技术方案。

  需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。

  对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

  整套解决方案:优采云

采集器之PBOOTCMS入库

  网上已经有优采云

采集

器的使用方法。

  我正在使用从云端下载的 优采云

PBOOTCMS 规则。但是在使用的时候发现在存储选择中只能存储新闻中心、新闻动态和公司动态三个类别。

  今天我们就来说说如何修改存储列。顺带从头到尾说说优采云

的使用方法。

  大哥step:下载插件。

  首先我们在后台云平台上搜索PBOOT找到这个插件,然后下载。

  看一下,这里可以看到一个APP的logo:PbootDemoSkycaiji

  这个方法就是下载官方插件的方法。或者,您可以自己发布一个插件。

  自己发布还是官方下载都无所谓。如果不是很熟悉,直接使用官方插件即可。

  第 2 步:让我们创建一个新任务。

  你可以随意填写。

  然后点击:采集器设置

  根据需要填写这些内容。

  然后设置其他三个,比较简单。在此不再赘述。

  

" />

  第 3 步:让我们点击发布设置。

  按选择,然后选择绑定。

  这时候会报错。由于PBOOCMS不是系统已知的CMS,所以需要添加:@pboot

  下面的插件会显示我们自己创建安装的插件。选择您使用的那个。如果我选择从云平台下载的pboot示例。

  根据需要填写相关选项。

  这时我们会发现,在分类栏目中,我们只能看到三个栏目:新闻中心、公司新闻、行业新闻。

  这也是我们今天要讲的重点。

  正如我们刚才所说,这是要记住的事情。这实际上是发布时调用的 PHP 文件。具体路径为: 在你的优采云

采集

网站的根目录下,找到这个文件夹:

  \\plugin\\release\\cms

  可以看到,有两个与刚才APP名称同名的PHP文件。你使用哪个插件对应修改哪个PHP文件。

  我用的是官方的PbootDemoSkycaiji,我们打开这个PHP文件。

  在醉酒的底部我们看到

   public function param_option_category(){

<p>

" />

$catsDb=$this->db()->table(&#39;__CONTENT_SORT__&#39;)->where("contenttpl=&#39;news.html&#39;")->limit(100)->select();//文章分类

$catList=array();

foreach ($catsDb as $cat){

$catList[$cat[&#39;id&#39;]]=$cat[&#39;name&#39;];

}

return $catList;

}</p>

  它指定了一个news.html,如果你改成:case.html,你会在优采云

的后台看到publication classification变成了一个case栏。因此,如果我们要显示所有的列,我们可以这样修改。

  public function param_option_category(){

$catsDb=$this->db()->table(&#39;__CONTENT_SORT__&#39;)->limit(100)->select();//文章分类

$catList=array();

foreach ($catsDb as $cat){

$catList[$cat[&#39;id&#39;]]=$cat[&#39;name&#39;];

}

return $catList;

}

  然后回到发布后台,就可以看到了。列出所有列。然后正常采集

和释放。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线