一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

人脸数据签名方法、装置、电子设备和存储介质与流程

2022-12-20 20:16:22 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,具体涉及一种人脸数据签名方法、装置、电子设备和存储介质。


背景技术:

2.随着人脸识别技术在智能安防、城市交通、智慧商业以及智能社区等公共场所大规模落地商用,对人脸数据的隐私保护问题也越来越多地引起公众的关注和担忧,为了保护公众隐私,新一代人脸识别系统中需要引入人脸数据加密的安全机制。
3.在目前的相关技术中,人脸数据加密一般是对人脸面部关键部位(如眼部)进行位置变换或乱序处理,以达到关键部分马赛克的效果,但马赛克效果精确控制难,比如通过乱序或变换等操作得到的打码效果并不稳定,有时会看出部分原图,加密效果不够理想。


技术实现要素:

4.本技术实施例提供一种人脸数据签名方法、装置、电子设备和存储介质,可以提高人脸数据加密的安全性。
5.本技术实施例提供一种人脸数据签名方法,包括:
6.获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;
7.将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;
8.对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;
9.对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;
10.对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;
11.基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。
12.相应的,本技术实施例提供一种人脸数据签名装置,包括:
13.获取单元,用于获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;
14.融合单元,用于将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;
15.编码单元,用于对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;
16.重构单元,用于对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;
17.哈希单元,用于对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;
18.加密单元,用于基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。
19.可选的,在本技术的一些实施例中,所述哈希单元可以包括融合子单元和哈希子单元,如下:
20.所述融合子单元,用于将所述加速度安全因子和所述人脸数据进行融合,得到信息序列;
21.哈希子单元,用于对所述信息序列进行哈希运算,得到所述人脸数据对应的哈希值。
22.可选的,在本技术的一些实施例中,所述融合子单元具体可以用于获取所述人脸数据的预设安全因子;将所述预设安全因子、所述加速度安全因子和所述人脸数据进行融合,得到信息序列。
23.可选的,在本技术的一些实施例中,所述编码单元可以包括提取子单元、获取子单元和采样子单元,如下:
24.所述提取子单元,用于对所述融合后人脸数据进行特征提取,得到所述融合后人脸数据在隐空间中的隐向量;
25.获取子单元,用于获取所述隐向量对应的概率分布;
26.采样子单元,用于基于所述隐向量对应的概率分布,对所述隐向量进行采样处理,得到所述融合后人脸数据的编码信息。
27.可选的,在本技术的一些实施例中,所述获取子单元具体可以用于获取所述隐向量对应的均值信息和方差信息;基于所述均值信息和所述方差信息,确定所述隐向量的概率分布。
28.可选的,在本技术的一些实施例中,所述编码单元具体可以用于通过自编码器模型,对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息。
29.可选的,在本技术的一些实施例中,所述人脸数据签名装置还可以包括训练单元,所述训练单元用于对预设自编码器模型进行训练。所述训练单元可以包括数据获取子单元、样本融合子单元、特征编码子单元、特征重构子单元和调整子单元,如下:
30.所述数据获取子单元,用于获取训练数据,所述训练数据包括样本人脸数据和所述样本人脸数据对应的样本加速度数据;
31.样本融合子单元,用于对所述样本人脸数据和所述样本加速度数据进行融合,得到融合后样本人脸数据;
32.特征编码子单元,用于通过预设自编码器模型,对所述融合后样本人脸数据进行特征编码,得到所述融合后样本人脸数据的编码信息;
33.特征重构子单元,用于对所述编码信息进行特征重构,得到重建人脸数据;
34.调整子单元,用于基于所述重建人脸数据和所述融合后样本人脸数据之间的损失值,调整所述预设自编码器模型的参数,得到训练后的自编码器模型。
35.可选的,在本技术的一些实施例中,所述调整子单元具体可以用于计算所述重建人脸数据和所述融合后样本人脸数据之间的重建损失值;计算所述融合后样本人脸数据的编码信息对应的概率分布与预设分布之间的分布损失值;根据所述重建损失值和所述分布损失值,调整所述预设自编码器模型的参数。
36.本技术实施例提供的一种电子设备,包括处理器和存储器,所述存储器存储有多条指令,所述处理器加载所述指令,以执行本技术实施例提供的人脸数据签名方法中的步骤。
37.此外,本技术实施例还提供一种存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现本技术实施例提供的人脸数据签名方法中的步骤。
38.本技术实施例提供了一种人脸数据签名方法、装置、电子设备和存储介质;可以获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。本技术实施例可以结合加速度数据对人脸数据进行加密,有利于提高人脸数据加密的安全性。
附图说明
39.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
40.图1a是本技术实施例提供的人脸数据签名方法的场景示意图;
41.图1b是本技术实施例提供的人脸数据签名方法的流程图;
42.图1c是本技术实施例提供的人脸数据签名方法的页面示意图;
43.图1d是本技术实施例提供的人脸数据签名方法的模型架构图;
44.图1e是本技术实施例提供的人脸数据签名方法的另一流程图;
45.图1f是本技术实施例提供的人脸数据签名方法的另一流程图;
46.图2是本技术实施例提供的人脸数据签名方法的另一流程图;
47.图3是本技术实施例提供的人脸数据签名装置的结构示意图;
48.图4是本技术实施例提供的电子设备的结构示意图。
具体实施方式
49.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
50.本技术实施例提供一种人脸数据签名方法、装置、电子设备和存储介质。该人脸数据签名装置具体可以集成在电子设备中,该电子设备可以是终端或服务器等设备。
51.可以理解的是,本实施例的人脸数据签名方法可以是在终端上执行的,也可以是在服务器上执行,还可以由终端和服务器共同执行的。以上举例不应理解为对本技术的限制。
52.如图1a所示,以终端和服务器共同执行人脸数据签名方法为例。本技术实施例提供的人脸数据签名系统包括终端10和服务器11等;终端10与服务器11之间通过网络连接,比如,通过有线或无线网络连接等,其中,人脸数据签名装置可以集成在终端中。
53.其中,终端10,可以用于:获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。其中,终端10可以包括手机、智能电视、平板电脑、笔记本电脑、或个人计算机(pc,personal computer)等。终端10上还可以设置客户端,该客户端可以是应用程序客户端或者浏览器客户端等等。
54.其中,服务器11,可以接收终端10发送的人脸数据的签名信息,并对所述签名信息进行验证,再将验证结果发送给终端10。其中,服务器11可以是单台服务器,也可以是由多个服务器组成的服务器集群或云服务器。本技术所公开的人脸数据签名方法,其中人脸数据的签名信息、人脸数据、参考加速度数据以及密钥等这些数据可保存于区块链上。
55.本技术实施例提供的人脸数据签名方法涉及人工智能领域中的计算机视觉技术。本技术实施例可以提高人脸数据加密的安全性。
56.其中,人工智能(ai,artificial intelligence)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。其中,人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
57.其中,计算机视觉技术(cv,computer vision)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建、自动驾驶、智慧交通等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
58.以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
59.本实施例将从人脸数据签名装置的角度进行描述,该人脸数据签名装置具体可以集成在电子设备中。
pooling)等。
78.其中,隐向量具体可以理解为不可观测的随机变量构成的向量。隐向量对应的概率分布具体可以是正态分布(即高斯分布),也可以是均匀分布,根据实际情况而定。
79.可选地,本实施例中,步骤“获取所述隐向量对应的概率分布”,可以包括:
80.获取所述隐向量对应的均值信息和方差信息;
81.基于所述均值信息和所述方差信息,确定所述隐向量的概率分布。
82.比如,假设隐向量服从标准正态分布n(0,1),融合后人脸数据记为x,均值信息记为μ,方差信息记为σ,隐向量记为z,令x=σ*z μ,则x服从均值为μ,方差为σ2的正态分布n(μ,σ2),也即得到隐向量z的概率分布n(μ,σ2)。
83.104、对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子。
84.其中,对编码信息进行特征重构,可以得到特征重构后的融合后人脸数据,可以将特征重构后的融合后人脸数据作为加速度安全因子,进而根据加速度安全因子对人脸数据进行加密,提高人脸数据加密的安全度。
85.可选地,本实施例中,步骤“对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息”,可以包括:
86.通过自编码器模型,对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;
87.步骤“对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子”,可以包括:
88.通过自编码器模型,对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子。
89.其中,该自编码器模型可以是深度神经网络(dnn,deep neural networks)、视觉几何组网络(vggnet,visual geometry group network)、残差网络(resnet,residual network)和密集连接卷积网络(densenet,dense convolutional network)等等,但是应当理解的是,本实施例的自编码器模型并不仅限于上述列举的几种类型。
90.具体地,自编码器模型可以包括编码器和解码器,编码器可以用于对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;解码器可以用于对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子。
91.可选地,本实施例中,该自编码器模型具体可以是变分自编码器(vae,variationalauto-encoder),编码器可以视为推理网络,解码器可以视为生成网络。vae是一种基于概率的无监督生成模型。
92.在一具体实施例中,如图1d所示,其中的堆叠解卷积网络单元为一个变分自编码器,其左侧的输入端神经网络为推理网络,右侧的输出端神经网络为生成网络。在推理网络中可以采用三个卷积层(convolutionallayer)和一个全连接网络层。生成网络可以使用全连接层,并在全连接层后接四个卷积转置层(也即反卷积层deconvolutionallayer)。
93.具体地,推理网络的第一层为输入层;第二层为卷积层,使用16个卷积核,卷积核大小为3x3,步长(stride)为2,padding为same,激活函数为relu;第三层为卷积层,使用32个卷积核,卷积核大小为3x3,步长为2,padding为same,激活函数为relu;第四层为卷积层,
使用64个卷积核,卷积核大小为3x3,步长为2,padding为same,激活函数为relu;第五层为全连接层。
94.其中,padding为一种填充像素的方法,same为padding的一种方式参数,same采用的是补全的方式。
95.其中,relu全称为rectified linear unit,即线性整流函数,又称修正线性单元,是人工神经网络中常用的激活函数。
96.具体地,生成网络第一层为输入层;第二层为全连接层,激活函数使用relu;第三层为重采样层,对第二层的输入特征进行reshape为(batch_size批尺寸,7,7,32);第四层为反卷积层,使用64个卷积核,卷积核大小为3x3,stride为2,padding为same,激活函数为relu;第五层为反卷积层,使用32个卷积核,卷积核大小为3x3,stride为2,padding为same,激活函数为relu;第六层为反卷积层,使用16个卷积核,卷积核大小为3x3,stride为2,padding为same,激活函数为relu;第七层为反卷积层,使用1个卷积核,卷积核大小为3x3,stride为1,padding为same,激活函数为线性函数。
97.其中,reshape函数可以用于对矩阵进行变换,reshape函数是将指定的矩阵变换成特定维数矩阵的一种函数,且矩阵中元素个数不变,函数可以重新调整矩阵的行数、列数、维数。
98.其中,生成网络可以视为一个上采样模块,推理网络可以视为一个下采样模块。
99.可选地,本实施例中,可以通过变分自编码器的编码器对融合后人脸数据x进行特征编码,得到融合后人脸数据的编码信息z,再将编码信息z通过变分自编码器的解码器得到变分自编码器的生成数据,即特征重构后的融合后人脸数据,将其作为加速度安全因子。
100.其中,编码器的作用是由融合后人脸数据x得到隐性表达z,具体过程可以是:
101.先假设潜在表示(即隐向量)服从预设分布,可以将预设分布定义为近似后验分布q(z|x),q(z|x)为概率分布形式,该近似后验分布以观测值(即融合后人脸数据)作为输入,并获得用于潜在表示的条件概率分布的一组参数(具体可以是均值信息和方差信息),进而确定潜在表示的概率分布,从而从潜在表示的概率分布中采样得到隐性表达z,也即融合后人脸数据的编码信息。
102.其中,解码器的作用是将隐性表达z映射到与融合后人脸数据分布一致的空间,也即对通过隐性表达z,对融合后人脸数据进行重构,或者说,对融合后人脸数据进行还原,具体过程可以是:
103.将潜在编码(即隐性表达z)作为输入,并对潜在编码使用单位高斯先验p(z),输出用于观测条件分布的参数p(x|z),将其作为加速度安全因子。
104.需要说明的是,该自编码器模型具体可以由其他设备进行训练后,提供给该人脸数据签名装置,或者,也可以由该人脸数据签名装置自行进行训练。
105.若由该人脸数据签名装置自行进行训练,则在步骤“通过自编码器模型,对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息”之前,还可以包括:
106.获取训练数据,所述训练数据包括样本人脸数据和所述样本人脸数据对应的样本加速度数据;
107.对所述样本人脸数据和所述样本加速度数据进行融合,得到融合后样本人脸数据;
108.通过预设自编码器模型,对所述融合后样本人脸数据进行特征编码,得到所述融合后样本人脸数据的编码信息;
109.对所述编码信息进行特征重构,得到重建人脸数据;
110.基于所述重建人脸数据和所述融合后样本人脸数据之间的损失值,调整所述预设自编码器模型的参数,得到训练后的自编码器模型。
111.其中,损失值可以通过交叉熵损失函数、均方误差损失函数、以及范数损失函数等计算得到,本实施例对此不作限制。
112.其中,可以计算重建人脸数据的特征向量和融合后样本人脸数据的特征向量之间的向量距离;基于所述向量距离,确定所述重建人脸数据和所述融合后样本人脸数据之间的损失值。其中,损失值的大小可以通过向量距离的大小来衡量。向量距离越大,损失值越大;向量距离越小,损失值越小。该向量距离可以是余弦距离或欧式距离等,本实施例对此并不限制。
113.在样本人脸数据和样本加速度数据融合前,可以先对样本人脸数据进行预处理,如可以对样本人脸数据进行数据清洗,过滤无效数据,并将样本人脸数据转化为灰度图像,再使用伯努利分布对灰度图像中的每个像素进行建模,即对其进行静态二值化为0和1,具体可以通过如下代码进行二值化:
114.#标准化图片到区间[0.,1.]内
[0115]
train_images/=255.
[0116]
test_images/=255.
[0117]
#二值化
[0118]
train_images[train_images》=.5]=1.
[0119]
train_images[train_images《.5]=0.
[0120]
test_images[test_images》=.5]=1.
[0121]
test_images[test_images《.5]=0
[0122]
其中,train_images即为样本人脸数据的灰度图像。
[0123]
其中,样本人脸数据可以包括图像质量较好的人脸数据,也可以包括图像质量较差的人脸数据(即带噪样本数据)。
[0124]
可选地,本实施例中,步骤“基于所述重建人脸数据和所述融合后样本人脸数据之间的损失值,调整所述预设自编码器模型的参数”,可以包括:
[0125]
计算所述重建人脸数据和所述融合后样本人脸数据之间的重建损失值;
[0126]
计算所述融合后样本人脸数据的编码信息对应的概率分布与预设分布之间的分布损失值;
[0127]
根据所述重建损失值和所述分布损失值,调整所述预设自编码器模型的参数。
[0128]
其中,该预设分布可以是正态分布(即高斯分布),也可以是均匀分布,本实施例对此不作限制。
[0129]
本实施例中,该训练过程是先计算出重建人脸数据和融合后样本人脸数据之间的重建损失值,以及融合后样本人脸数据的编码信息对应的概率分布与预设分布之间的分布损失值,然后,使用反向传播算法对预设自编码器模型的参数进行调整,基于重建损失值和分布损失值,优化预设自编码器模型的参数,使得重建损失值和分布损失值满足预设损失
条件,得到训练好的自编码器模型。具体地,该预设损失条件可以是重建损失值和分布损失值之和小于预设损失值,其中,预设损失值可以根据实际情况进行设置。
[0130]
其中,分布损失值可以用如下式子进行表示:
[0131][0132]
其中,q(z|x)为近似后验分布,p(x,z)为x和z的联合概率密度,x为融合后样本人脸数据,z为融合后样本人脸数据对应的编码信息,elbo即边际对数似然的证据下界。
[0133]
其中,自编码器模型的整个训练框架即融合后样本人脸数据x进行编解码,q(z|x)将融合后样本人脸数据x编码为隐性表达z(编码信息),而p(z)又将隐性表达z解码得到重建人脸数据。训练的目的是学习出编码器的映射函数和解码器的映射函数,所以训练过程实际上是在进行变分推断,即寻找出某一个函数来优化目标,因此取名为变分自编码器vae。
[0134]
具体地,整个训练迭代过程中,可以假设潜在表示(即隐向量)服从预设分布q(z|x)(如高斯分布),描述高斯分布的参数-均值和方差可直接通过预设自编码器模型学习得到。在每次迭代期间,将融合后样本人脸数据传递给编码器,以获得近似后验q(z|x)的一组均值向量和方差向量,进而得到隐向量对应的概率分布;然后,应用重参数化技巧,从单位高斯先验分布p(z)中采样得到融合后样本人脸数据的编码信息z;最后,将重新参数化得到的编码信息z传递给解码器,以获取生成分布p(x|z)的logit,即重建人脸数据,可以将其作为加速度安全因子。
[0135]
需要说明的是,训练变分自编码器vae时避免使用批归一化(batch normalization)是一种常见的做法,因为使用小批量处理会导致额外的随机性,从而加剧随机抽样的不稳定性。
[0136]
在一具体实施例中,如图1d所示,该自编码器模型具体可以是堆叠解卷积网络(sdn,stacked deconvolutional network),它包含多个堆叠解卷积网络单元(sdn单元),每个堆叠解卷积网络单元可以包括一个解码器和一个编码器,具体地,一个堆叠解卷积网络单元可以视为一个自编码器模块。堆叠解卷积网络可以用于高效的图像语义分割,具体可以采用层级监督帮助网络优化。
[0137]
在sdn中,多个浅层解卷积网络(即sdn单元)依次堆叠,以整合语境信息,确保位置信息的精细恢复。同时,单元间和单元内的连接被用来支持网络训练和提升特征融合,因为这些连接可以改善信息流和整个网络内的梯度传播。此外,在每个sdn单元的采样过程中使用层级监督(hierarchical supervision),可以确保特征表示的区别并帮助网络优化。层级监督利用多个分类层同时进行整体图像和局部图像进行分类监督,以鉴定不同尺寸的图像效果;另外,通过多个分类层的权重共享可以得到生成图像的不同位置的细节信息。
[0138]
图1d中,上半部分表示堆叠解卷积网络(sdn)的结构,下半部分表示sdn单元(标号a)、以及sdn单元中的下采样模块(标号b)和sdn单元中的上采样模块(标号c)的具体结构。
[0139]
具体地,如图1e所示,展示了自编码器模型的整个训练流程。首先要进行数据搜集,包括样本人脸数据和样本加速度数据的搜集,其中,样本人脸数据可以包括图像质量较好的人脸数据,也可以包括图像质量较差的人脸数据,然后,可以提取样本人脸数据中相对
重要性较高的特征,并与样本加速度数据进行融合,将融合结果输入到预设自编码器模型进行训练;其中,在对预设自编码器模型进行训练前,可以先对模型进行选择,例如可以选择变分自编码器模型;模型选择完后,则可以基于融合后样本人脸数据对预设自编码器模型进行训练,基于重建人脸数据和融合后样本人脸数据之间的损失值,对预设自编码器模型的参数进行调整,以得到训练后的自编码器模型,再对训练后的自编码器模型进行评估。
[0140]
105、对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值。
[0141]
其中,哈希运算所采用的算法可以是sm3(一种密码散列函数标准)、sha(secure hash algorithm,安全散列算法)和md5(message digest algorithm 5,消息摘要算法第五版)等,本实施例对此不作限定。
[0142]
哈希运算(hash function)是一种主要用于信息安全领域中的加密算法,哈希运算又称为散列函数,是一种通过散列算法,将任意长度的输入转化为固定长度输出的函数,其输出为固定长度的字符串,被称为哈希值。这种转化的本质是一种压缩映射,即哈希值的空间通常小于输入值的空间。哈希运算的一个重要属性是不可逆,即给定一个哈希值,想要计算出它所对应的消息是极其困难的。其中,不同输入值对应的输出值基本不同,不同输出值对应的输入值不同,所以不可能从散列值来确定唯一的输入值,也就是说,没有办法从输出的哈希值得到原来输入的数据。
[0143]
可选地,本实施例中,步骤“对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值”,可以包括:
[0144]
将所述加速度安全因子和所述人脸数据进行融合,得到信息序列;
[0145]
对所述信息序列进行哈希运算,得到所述人脸数据对应的哈希值。
[0146]
可选地,本实施例中,步骤“将所述加速度安全因子和所述人脸数据进行融合,得到信息序列”,可以包括:
[0147]
获取所述人脸数据的预设安全因子;
[0148]
将所述预设安全因子、所述加速度安全因子和所述人脸数据进行融合,得到信息序列。
[0149]
其中,融合的方式有很多种,比如可以是拼接处理等,本实施例对此不作限制。
[0150]
其中,预设安全因子具体为非传感器安全因子(即非加速度安全因子),它可以根据实际情况进行设置,本实施例对此不做限制。比如,预设安全因子可以包括时间戳、计步器信息,魔术字,设备型号信息、签名算法版本、随机数等。其中,签名原串格式不同,魔术字不同,其依赖于业务后台适用方,统一约定即可。
[0151]
其中,人脸数据可以记为payload,时间戳记为timestamp,计步器信息记为counter,魔术字记为magic_num,设备型号信息记为device_info,签名算法版本记为sign_version,随机数记为random;对预设安全因子、加速度安全因子和人脸数据进行融合具体可以为:
[0152]
{magic_num}{device_info}{sign_version}{timestamp}{counter}{加速度安全因子}{random}{payload}。
[0153]
在一些实施例中,人脸数据的预设安全因子有多种;
[0154]
步骤“将所述预设安全因子、所述加速度安全因子和所述人脸数据进行融合,得到
信息序列”,可以包括:
[0155]
计算各个预设安全因子的哈希值、所述加速度安全因子的哈希值以及所述人脸数据的哈希值;
[0156]
基于哈希值的大小,对各个预设安全因子的哈希值、所述加速度安全因子的哈希值以及所述人脸数据的哈希值进行排序,得到排序后信息;
[0157]
对排序后信息进行拼接处理,得到信息序列。
[0158]
具体地,可以根据哈希值的大小来决定拼接的顺序。
[0159]
其中,预设安全因子、加速度安全因子和人脸数据可以采用不同的哈希运算来计算对应的哈希值,也可以采用相同的哈希运算来计算对应的哈希值。
[0160]
在一具体场景中,如图1f所示,通过人脸采集设备采集人脸数据,将预设安全因子与人脸数据进行融合,得到初始信息序列,其中,预设安全因子具体为非传感器安全因子,它可以包括业务约定的魔术字、时间戳安全因子、防重复安全因子以及随机数。在目标设备的加速度传感器侦测到目标设备处于非平稳的情况下,添加一层融合了参考加速度数据的人脸数据经过自编码器模型输出的加速度安全因子,得到信息序列,再对该信息序列进行哈希运算,得到人脸数据对应的哈希值,进而对哈希值进行加密处理,得到人脸数据的签名信息。
[0161]
106、基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。
[0162]
其中,加密处理所采用的算法可以是国密和rsa(里维斯特,萨莫尔&阿德曼,rivest,shamir&adleman)算法等,本实施例对加密所采用的算法不做限定。
[0163]
其中,rsa算法的安全性基于数论中的大素数分解的困难性。rsa需要采用足够大的整数。因子分解越困难,密码越难以破译,加密程度越高。
[0164]
需要说明的是,该加密过程可以是对称加密,也可以是非对称加密,本实施例对此不作限制。对称加密是快速简单的一种加密方式,加密与解密用的是同样的密钥。而非对称加密的加密密钥和解密密钥不同。非对称加密算法需要两个密钥:公钥(public key)和私钥(private key)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密;如果用私钥对数据进行加密,那么只有用对应的公钥才能解密。
[0165]
其中,人脸数据的签名信息中隐含了密钥的信息,因此,签名信息可以证明人脸数据所对应的采集对象的身份。
[0166]
由上可知,本实施例可以获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。本技术实施例可以结合加速度数据对人脸数据进行加密,有利于提高人脸数据加密的安全性。
[0167]
根据前面实施例所描述的方法,以下将以该人脸数据签名装置具体集成在终端举例作进一步详细说明。
[0168]
本技术实施例提供一种人脸数据签名方法,如图2所示,该人脸数据签名方法的具
体流程可以如下:
[0169]
201、终端获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据。
[0170]
其中,人脸数据可以通过目标设备采集到,该目标设备可以包括人脸采集模块(如摄像头)。具体地,该目标设备可以是人脸支付设备等,通过采集到的人脸数据进行相关支付操作。
[0171]
其中,参考加速度数据可以是采集人脸数据时目标设备中加速度传感器的加速度。加速度传感器是一种能够测量加速度的传感器。具体地,参考加速度数据可以包括x/y/z三轴的加速度数据。
[0172]
202、终端将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据。
[0173]
其中,该融合方式有多种,本实施例对此没有限制,比如,该融合方式可以是拼接等,具体可以在人脸数据之后拼接参考加速度数据,也可以在参考加速度数据之后拼接人脸数据。
[0174]
一些实施例中,可以先对所述人脸数据进行预处理,再将预处理后的人脸数据与参考加速度数据进行融合,得到融合后人脸数据。
[0175]
其中,该预处理方式具体可以是对人脸数据进行灰度处理,将人脸数据转化成灰度图像,再使用伯努利分布对灰度图像中的各个像素进行二值化处理,也即将灰度图像转化为黑白图像。
[0176]
203、终端对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息。
[0177]
可选地,本实施例中,步骤“对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息”,可以包括:
[0178]
对所述融合后人脸数据进行特征提取,得到所述融合后人脸数据在隐空间中的隐向量;
[0179]
获取所述隐向量对应的概率分布;
[0180]
基于所述隐向量对应的概率分布,对所述隐向量进行采样处理,得到所述融合后人脸数据的编码信息。
[0181]
可选地,本实施例中,步骤“获取所述隐向量对应的概率分布”,可以包括:
[0182]
获取所述隐向量对应的均值信息和方差信息;
[0183]
基于所述均值信息和所述方差信息,确定所述隐向量的概率分布。
[0184]
比如,假设隐向量服从标准正态分布n(0,1),融合后人脸数据记为x,均值信息记为μ,方差信息记为σ,隐向量记为z,令x=σ*z μ,则x服从均值为μ,方差为σ2的正态分布n(μ,σ2),也即得到隐向量z的概率分布n(μ,σ2)。
[0185]
204、终端对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子。
[0186]
其中,对编码信息进行特征重构,可以得到特征重构后的融合后人脸数据,可以将特征重构后的融合后人脸数据作为加速度安全因子,进而根据加速度安全因子对人脸数据进行加密,提高人脸数据加密的安全度。
[0187]
205、终端将所述加速度安全因子和所述人脸数据进行融合,得到信息序列。
[0188]
可选地,本实施例中,步骤“将所述加速度安全因子和所述人脸数据进行融合,得到信息序列”,可以包括:
[0189]
获取所述人脸数据的预设安全因子;
[0190]
将所述预设安全因子、所述加速度安全因子和所述人脸数据进行融合,得到信息序列。
[0191]
其中,融合的方式有很多种,比如可以是拼接处理等,本实施例对此不作限制。
[0192]
步骤“将所述预设安全因子、所述加速度安全因子和所述人脸数据进行融合,得到信息序列”,可以包括:
[0193]
计算各个预设安全因子的哈希值、所述加速度安全因子的哈希值以及所述人脸数据的哈希值;
[0194]
基于哈希值的大小,对各个预设安全因子的哈希值、所述加速度安全因子的哈希值以及所述人脸数据的哈希值进行排序,得到排序后信息;
[0195]
对排序后信息进行拼接处理,得到信息序列。
[0196]
206、终端对所述信息序列进行哈希运算,得到所述人脸数据对应的哈希值。
[0197]
其中,哈希运算所采用的算法可以是sm3(一种密码散列函数标准)、sha(secure hash algorithm,安全散列算法)和md5(message digest algorithm 5,消息摘要算法第五版)等,本实施例对此不作限定。
[0198]
207、终端基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。
[0199]
其中,加密处理所采用的算法可以是国密和rsa(里维斯特,萨莫尔&阿德曼,rivest,shamir&adleman)算法等,本实施例对加密所采用的算法不做限定。
[0200]
由上可知,本实施例可以通过终端获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;将所述加速度安全因子和所述人脸数据进行融合,得到信息序列;对所述信息序列进行哈希运算,得到所述人脸数据对应的哈希值。基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。本技术实施例可以结合加速度数据对人脸数据进行加密,有利于提高人脸数据加密的安全性。
[0201]
为了更好地实施以上方法,本技术实施例还提供一种人脸数据签名装置,如图3所示,该人脸数据签名装置可以包括获取单元301、融合单元302、编码单元303、重构单元304、哈希单元305和加密单元306,如下:
[0202]
(1)获取单元301;
[0203]
获取单元301,用于获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据。
[0204]
(2)融合单元302;
[0205]
融合单元302,用于将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据。
[0206]
(3)编码单元303;
[0207]
编码单元303,用于对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息。
[0208]
可选的,在本技术的一些实施例中,所述编码单元可以包括提取子单元、获取子单元和采样子单元,如下:
[0209]
所述提取子单元,用于对所述融合后人脸数据进行特征提取,得到所述融合后人脸数据在隐空间中的隐向量;
[0210]
获取子单元,用于获取所述隐向量对应的概率分布;
[0211]
采样子单元,用于基于所述隐向量对应的概率分布,对所述隐向量进行采样处理,得到所述融合后人脸数据的编码信息。
[0212]
可选的,在本技术的一些实施例中,所述获取子单元具体可以用于获取所述隐向量对应的均值信息和方差信息;基于所述均值信息和所述方差信息,确定所述隐向量的概率分布。
[0213]
可选的,在本技术的一些实施例中,所述编码单元具体可以用于通过自编码器模型,对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息。
[0214]
(4)重构单元304;
[0215]
重构单元304,用于对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子。
[0216]
(5)哈希单元305;
[0217]
哈希单元305,用于对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值。
[0218]
可选的,在本技术的一些实施例中,所述哈希单元可以包括融合子单元和哈希子单元,如下:
[0219]
所述融合子单元,用于将所述加速度安全因子和所述人脸数据进行融合,得到信息序列;
[0220]
哈希子单元,用于对所述信息序列进行哈希运算,得到所述人脸数据对应的哈希值。
[0221]
可选的,在本技术的一些实施例中,所述融合子单元具体可以用于获取所述人脸数据的预设安全因子;将所述预设安全因子、所述加速度安全因子和所述人脸数据进行融合,得到信息序列。
[0222]
(6)加密单元306;
[0223]
加密单元306,用于基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。
[0224]
可选的,在本技术的一些实施例中,所述人脸数据签名装置还可以包括训练单元,所述训练单元用于对预设自编码器模型进行训练。所述训练单元可以包括数据获取子单元、样本融合子单元、特征编码子单元、特征重构子单元和调整子单元,如下:
[0225]
所述数据获取子单元,用于获取训练数据,所述训练数据包括样本人脸数据和所述样本人脸数据对应的样本加速度数据;
[0226]
样本融合子单元,用于对所述样本人脸数据和所述样本加速度数据进行融合,得到融合后样本人脸数据;
[0227]
特征编码子单元,用于通过预设自编码器模型,对所述融合后样本人脸数据进行特征编码,得到所述融合后样本人脸数据的编码信息;
[0228]
特征重构子单元,用于对所述编码信息进行特征重构,得到重建人脸数据;
[0229]
调整子单元,用于基于所述重建人脸数据和所述融合后样本人脸数据之间的损失值,调整所述预设自编码器模型的参数,得到训练后的自编码器模型。
[0230]
可选的,在本技术的一些实施例中,所述调整子单元具体可以用于计算所述重建人脸数据和所述融合后样本人脸数据之间的重建损失值;计算所述融合后样本人脸数据的编码信息对应的概率分布与预设分布之间的分布损失值;根据所述重建损失值和所述分布损失值,调整所述预设自编码器模型的参数。
[0231]
由上可知,本实施例可以由获取单元301获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;通过融合单元302将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;由编码单元303对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;由重构单元304对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;通过哈希单元305对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;通过加密单元306基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。本技术实施例可以结合加速度数据对人脸数据进行加密,有利于提高人脸数据加密的安全性。
[0232]
本技术实施例还提供一种电子设备,如图4所示,其示出了本技术实施例所涉及的电子设备的结构示意图,该电子设备可以是终端或者服务器等,具体来讲:
[0233]
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0234]
处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
[0235]
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
[0236]
电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等
功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0237]
该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
[0238]
尽管未示出,该电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
[0239]
获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。
[0240]
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0241]
由上可知,本实施例可以获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。本技术实施例可以结合加速度数据对人脸数据进行加密,有利于提高人脸数据加密的安全性。
[0242]
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
[0243]
为此,本技术实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本技术实施例所提供的任一种人脸数据签名方法中的步骤。例如,该指令可以执行如下步骤:
[0244]
获取待签名的人脸数据、以及所述人脸数据对应的参考加速度数据;将所述人脸数据和所述参考加速度数据进行融合,得到融合后人脸数据;对所述融合后人脸数据进行特征编码,得到所述融合后人脸数据的编码信息;对所述编码信息进行特征重构,得到所述融合后人脸数据对应的加速度安全因子;对所述加速度安全因子和所述人脸数据进行哈希运算,得到所述人脸数据对应的哈希值;基于所述人脸数据对应的密钥,对所述哈希值进行加密处理,得到所述人脸数据的签名信息。
[0245]
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0246]
其中,该存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
[0247]
由于该存储介质中所存储的指令,可以执行本技术实施例所提供的任一种人脸数
据签名方法中的步骤,因此,可以实现本技术实施例所提供的任一种人脸数据签名方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
[0248]
根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述人脸数据签名方面的各种可选实现方式中提供的方法。
[0249]
以上对本技术实施例所提供的一种人脸数据签名方法、装置、电子设备和存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献