CN112738067B - 一种人脸识别方法、装置及设备 - Google Patents
一种人脸识别方法、装置及设备 Download PDFInfo
- Publication number
- CN112738067B CN112738067B CN202011562222.4A CN202011562222A CN112738067B CN 112738067 B CN112738067 B CN 112738067B CN 202011562222 A CN202011562222 A CN 202011562222A CN 112738067 B CN112738067 B CN 112738067B
- Authority
- CN
- China
- Prior art keywords
- client
- random number
- face recognition
- face image
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0861—Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3231—Biological data, e.g. fingerprint, voice or retina
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/50—Maintenance of biometric data or enrolment thereof
- G06V40/53—Measures to keep reference information secret, e.g. cancellable biometrics
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Collating Specific Patterns (AREA)
Abstract
本发明提供一种人脸识别方法、装置及设备,通过服务端接收客户端发送的携带第一认证信息的人脸识别请求;若根据第一认证信息认证人脸识别请求存在合法性,生成第一随机数和第二随机数;利用公钥对第一随机数和第二随机数进行加密得到并向客户端返回第一加密信息;接收客户端利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息;如果第三随机数和第一随机数一致,利用计算规则对目标人脸图像进行计算得到第二MAC值;在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。基于本发明,可以在提高人脸识别服务接入安全性的前提下,实现人脸识别。
Description
技术领域
本发明涉及人脸识别技术,更具体的说,涉及一种人脸识别服务接入方法、装置及设备。
背景技术
人脸识别技术作为人工智能领域的一项重要分支,因其方便性和快捷性在各行业中有广泛应用,近年来成为继指纹、虹膜后生物特征识别的主流形式。为了顺应互联网时代开放、互联和共享的潮流,需要对外输出业务能力,在第三方产品中提供服务能力。
现有技术从互联网接入的应用方客户端可以直接调用人脸识别服务接口接入人脸识别服务器,应用方客户端上传人脸照片,人脸识别服务器对应用方客户端上传的人脸照片进行人脸识别得到识别结果,以基于人脸识别结果来决定与第三方客户端的后续交互策略。
这种人脸识别方法在执行过程中会将人脸识别服务接口直接暴露给互联网端应用方客户端,当应用方客户端为不可信的应用方客户端(比如,黑客等)时,存在安全隐患,容易因恶意攻击而造成人脸识别服务不可用。
发明内容
有鉴于此,本发明提供一种人脸识别方法、装置及设备,以在提高人脸识别服务接入安全性的前提下,实现人脸识别。
本发明第一方面公开一种人脸识别方法,包括:
接收客户端发送的携带第一认证信息的人脸识别请求,所述第一认证信息包括发送所述第一认证请求的时间戳、所述客户端的客户端标识和公钥;
若根据所述第一认证信息认证所述人脸识别请求存在合法性,生成第一随机数和第二随机数;
利用所述公钥对所述第一随机数和第二随机数进行加密得到并向所述客户端返回第一加密信息;
接收所述客户端利用与所述公钥匹配的私钥对所述第一加密信息进行解密后返回的第二认证信息,所述第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;所述目标人脸图像为所述客户端利用所述第二随机数对采集到的第一人脸图像进行加密得到的,所述第一MAC值为所述客户端按照预先设置的计算规则对所述目标人脸图像进行计算得到的;
如果所述第三随机数和所述第一随机数一致,利用所述计算规则对所述目标人脸图像进行计算得到第二MAC值;
在所述第一MAC值和所述第二MAC值一致的情况下,基于所述身份信息对所述目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。
可选的,所述基于所述身份信息对所述目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果,包括:
利用所述第二随机数对所述目标人脸图像进行解密得到所述第一人脸图像;
获取拥有所述身份信息的用户的第二人脸图像;
比对所述第一人脸图像和所述第二人脸图像生成人脸识别结果。
可选的,所述比对所述第一人脸图像和所述第二人脸图像生成人脸识别结果,包括:
比对所述第一人脸图像和第二人脸图像生成比对结果;
生成与所述比对结果匹配的人脸识别结果;若所述比对结果表征所述第一人脸图像和所述第二人脸图像为同一用户的人脸图像,所生成的人脸识别结果表征人脸识别成功;若所述比对结果表征所述第一人脸图像和所述第二人脸图像不为同一用户的人脸图像,所生成的人脸识别结果表征人脸识别失败。
可选的,还包括根据所述第一认证信息认证所述人脸识别请求是否存在合法性的过程,该过程包括:
确定以所述时间戳为结束时间点的历史时间段,所述历史时间段的时长为预设时长;
检测所述历史时间段内接收到携带所述客户端标识的客户端发送的人脸识别请求的次数是否超过预设次数;
若所述历史时间段内接收到携带所述客户端标识的客户端发送的人脸识别请求的次数超过预设次数,认证当前接收到的所述人脸识别请求不存在合法性;
若所述历史时间段内接收到携带所述客户端标识的客户端发送的人脸识别请求的次数未超过预设次数,认证当前接收到的所述人脸识别请求存在合法性。
可选的,还包括:
对所述第一加密信息进行摘要处理得到第一摘要信息;
向所述客户端返回所述第一摘要信息;
所述接收所述客户端利用与所述公钥匹配的私钥对所述第一加密信息进行解密后返回的第二认证信息,包括:接收所述客户端对所述第一加密信息进行摘要处理得到第二摘要信息与所述第一摘要信息相同的情况下,利用与所述公钥匹配的私钥对所述第一加密信息进行解密后返回的第二认证信息。
可选的,在所述人脸识别结果表征人脸识别成功的情况下,该方法还包括:
接收所述客户端发送的业务办理请求,所述业务办理请求携带所述用户请求办理的业务和第四随机数;
比较所述第四随机数和所述第一随机数是否相同;
若所述第四随机数和所述第一随机数相同,为用户提供与所述业务对应的业务办理服务。
本发明第二方面公开一种人脸识别方法,包括:
向服务端发送携带第一认证信息的人脸识别请求,所述第一认证信息包括发送所述第一认证请求的时间戳、所述客户端的客户端标识和公钥;
接收所述服务端在根据所述第一认证信息认证所述人脸识别请求存在合法性时,利用所述公钥对生成的第一随机数和第二随机数进行加密得到并返回的第一加密信息;
利用与所述公钥匹配的私钥对所述第一加密信息进行解密后向所述服务端发送第二认证信息,所述第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;所述目标人脸图像为所述客户端利用所述第二随机数对采集到的第一人脸图像进行加密得到的,所述第一MAC值为所述客户端按照预先设置的计算规则对所述目标人脸图像进行计算得到的;
接收所述服务端返回的人脸识别结果。
本发明第三方面公开一种人脸识别装置,包括:
第一接收单元,用于接收客户端发送的携带第一认证信息的人脸识别请求,所述第一认证信息包括发送所述认证请求的时间戳、所述客户端的客户端标识和公钥;
第一生成单元,用于若根据所述第一认证信息认证所述人脸识别请求存在合法性,生成第一随机数和第二随机数;
第一加密单元,用于利用所述公钥对所述第一随机数和第二随机数进行加密得到并向所述客户端返回第一加密信息;
第二接收单元,用于接收所述客户端利用与所述公钥匹配的私钥对所述第一加密信息进行解密后返回的第二认证信息,所述第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;所述目标人脸图像为所述客户端利用所述第二随机数对采集到的第一人脸图像进行加密得到的,所述第一MAC值为所述客户端按照预先设置的计算规则对所述目标人脸图像进行计算得到的;
第一计算单元,用于如果所述第三随机数和所述第一随机数一致,利用所述计算规则对所述目标人脸图像进行计算得到第二MAC值;
人脸识别单元,用于在所述第一MAC值和所述第二MAC值一致的情况下,基于所述身份信息对所述目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。
本发明第四方面公开一种人脸识别装置,其特征在于,包括:
发送单元,用于向服务端发送携带第一认证信息的人脸识别请求,所述第一认证信息包括发送所述认证请求的时间戳、所述客户端的客户端标识和公钥;
第三接收单元,用于接收所述服务端在根据所述第一认证信息认证所述人脸识别请求存在合法性时,利用所述公钥对生成的第一随机数和第二随机数进行加密得到并返回的第一加密信息;
第一解密单元,用于利用与所述公钥匹配的私钥对所述第一加密信息进行解密后向所述服务端发送第二认证信息,所述第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;所述目标人脸图像为所述客户端利用所述第二随机数对采集到的第一人脸图像进行加密得到的,所述第一MAC值为所述客户端按照预先设置的计算规则对所述目标人脸图像进行计算得到的;
第四接收单元,用于接收所述服务端返回的人脸识别结果。
本发明第五方面公开一种设备,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现所述人脸识别方法。
基于上述本发明实施例提供的一种人脸识别方法、装置及设备,通过客户端向服务端发送携带第一认证信息的人脸识别请求,第一认证信息包括发送认证请求的时间戳、客户端的客户端标识和公钥;服务端在接收到客户端发动的携带第一认证信息的人脸识别请求后,在根据第一认证信息认证人脸识别请求存在合法性的情况下,生成第一随机数和第二随机数;将利用第一认证请求中的公钥对第一随机数和第二随机数进行加密得到第一加密信息返回给客户端;客户端在接收到第一加密信息后,利用与该公钥匹配的私钥对第一加密信息解密后向服务端发送第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的;服务端接收客户端返回的第二认证信息,在第三随机数和第一随机数一致的情况下,利用预先设置的计算规则对目标人脸图像进行计算得到第二MAC值;在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。基于本发明,通过在客户端和服务端进行信息传输的过程进行认证信息和合法性判断以及进行信息的比对,提高人脸识别服务接入的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种现有的人脸识别方法的结构图;
图2为本发明实施例提供的一种人脸识别方法的流程示意图;
图3为本发明实施例提供的一种基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果的方法的流程示意图;
图4为本发明实施例提供的一种根据第一认证信息认证人脸识别请求是否存在合法性的方法的流程示意图;
图5为本发明实施例提供的另一种人脸识别方法的流程示意图;
图6为本发明实施例提供的另一种人脸识别方法的流程示意图;
图7为本发明实施例提供的另一种人脸识别方法的流程示意图;
图8为本发明实施例提供的一种人脸识别装置的结构示意图;
图9为本发明实施例提供的另一种人脸识别装置的结构示意图;
图10为本发明实施例提供的一种服务器的硬件结构框图;
图11为本发明实施例提供的一种人脸识别方法所使用的终端的硬件结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
目前的人脸识别服务根据应用方与人脸识别服务的交互方式不同,可以分为间连和直连两种方式。如图1所示,间连方式为:从公网(互联网)接入的应用方客户端或H5页面向应用方服务端发送人脸识别服务请求,应用方服务端在识别该人脸识别服务请求合法的情况下,将应用方客户端上传的人脸照片发送给人脸识别服务器,人脸识别服务器对应用方客户端上传的人脸照片进行人脸识别得到识别结果,以基于人脸识别结果来决定与第三方客户端的后续交互策略。
直连方式为:从互联网接入的应用方客户端可以直接调用人脸识别服务接口接入人脸识别服务器,应用方客户端上传人脸照片,人脸识别服务器对应用方客户端上传的人脸照片进行人脸识别得到识别结果,基于人脸识别结果来决定与第三方客户端的后续交互策略。
间联的方式进行人脸识别的执行过程复杂,且基于应用方服务器对接入的人脸识别服务请求进行合法性验证的方式也较为表面,当应用方客户端为不可信的应用方客户端(比如,黑客)时,存在安全隐患,容易因恶意攻击而造成人脸识别服务不可用。直联的方式在进行人脸识别的过程中会将人脸识别服务接口直接暴露给互联网端的应用方客户端,当应用方客户端为不可信的应用方客户端(比如,黑客)时,存在安全隐患,容易因恶意攻击而造成人脸识别服务不可用。
因此,本发明提供一种人脸识别方法、装置及设备,能够在提高人脸识别服务接入安全性的前提下,实现人脸识别。
参见图2,示出了本发明实施例提供的一种人脸识别方法的流程示意图。该人脸识别方法包括一下步骤:
S201:客户端向服务端发送携带第一认证信息的人脸识别请求,第一认证信息包括发送第一认证请求的时间戳、客户端的客户端标识和公钥;
在本申请实施例中,客户端基于预先设置的算法生成公私钥对,并将所生成的公私钥对中的公钥发送至认证机构,以便该认证机构基于该公钥制作公钥证书后返回给客户端;客户端在接收到认证机构返回的公钥证书后,向服务端发送携带第一认证信息的人脸识别请求,该第一认证信息包括发送第一认证请求时的时间戳、客户端的客户端标识和经过认证机构处理的公钥。其中,公私钥对包括加密密钥(公钥)和解密密钥(私钥)两种,发送者使用公钥加密消息,接受者用对应的私钥对密文进行解密。
在本申请实施例中,预先设置的算法可以为RSA算法、ElGamal算法、椭圆曲线密码算法等等。有关于预先设置的算法的具体内容,发明可根据自己的需求进行设置,本申请实施例不加以限定。
需要说明的是,通过利用公钥所制作的公钥证书,可以对公钥的归属人进行认定,证明特定公钥确实属于某个人或组织,具体认证方式可以为认证机构向特定公钥、公钥所属人信息明细组成的消息加数字签名。服务端利用接收到的客户端发送的通过认证机构进行处理的公钥后,对该数字签名进行验证,以确定第一认证信息来源于客户端。
S202:服务端若根据第一认证信息认证人脸识别请求存在合法性,生成第一随机数和第二随机数;
在本申请实施例中,服务端在接收到客户端发送的第一认证信息后,基于该第一认证信息认证人脸识别请求是否存在合法性;若人脸识别请求存在合法性,则基于伪随机数生成器生成第一随机数和第二随机数。
在本申请实施例中,服务端基于伪随机数生成的第一随机数可以为token,生成的第二随机数可以为对称密钥。
需要说明的是,对称密钥可以为:加解密过程中使用相同的密钥,加密方将明文与密钥进行计算后形成密文,解密方将密文与加密时使用的密钥进行计算后还原成明文。对称密码有效率高、计算量小、加密速度快的特点,适合加密大段明文。
需要说明的,还可以通过DES算法、AES算法、国密SM4算法等算法生成对称秘钥。
S203:服务端利用公钥对第一随机数和第二随机数进行加密得到并向客户端返回的第一加密信息;
在本申请实施例中,服务端在生成第一随机数和第二随机数后,利用接收到的第一认证信息中的公钥,对所生成的第一随机数和第二随机数进行加密生成第一加密信息,并将所生成的第一加密信息返回给客户端;
S204:客户端利用与公钥匹配的私钥对第一加密信息进行解密后向服务端发送第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;
在具体执行步骤S204的过程中,客户端在接收到服务端返回的第一加密信息后,利用基于预设算法生成的公私钥对中与公钥匹配的私钥,对所接收到的第一加密信息进行解密得到第三随机数和第二随机数;利用进行解密得到的第二随机数对采集到的第一人脸图像进行加密得到目标人脸图像;并按照预设的计算规则对目标人脸图像进行计算得到第一MAC值;进而将进行解密得到的第三随机数、目标人脸图像、第一MAC值和身份信息发送给服务端。
在本申请实施例中,客户端可以通过人脸SDK采集用户的现场人脸照片,为了便于区分,将采集到的用户的现场人脸照片称为第一人脸图像。
在本申请实施例中,预设的计算规则可以为MAC算法,按照预设的计算规则对目标人脸图像进行计算得到第一MAC值的过程可以为:将目标人脸图像按照MAC算法与第二随机数据进行计算,得到第一MAC值。
以上仅仅是本申请实施例提供的一种按照预设的计算规则对目标人脸图像进行计算得到第一MAC值的优选方式,有关于按照预设的计算规则对目标人脸图像进行计算得到第一MAC值的具体方式,发明人可根据自己的需求进行计算,本申请实施例不加以限定。
在本申请实施例中,身份信息可以为采集的第一人脸图像的用户的身份证号码。
S205:服务端在第三随机数和第一随机数一致的情况下,利用计算规则对目标人脸图像进行计算得到第二MAC值;
在具体执行步骤S205的过程中,服务端在接收到客户端发送的第二认证信息后,获取该第二认证信息的第三随机数;并判断所获取的第三随机数与自身生成的第一随机数是否一致,若一致,利用预先设置的计算规则对接收到的第二认证信息中的目标人脸图像进行计算,得到第二MAC值。
在本申请实施例中,预设的计算规则可以为MAC算法,利用预先设置的计算规则对接收到的第二认证信息中的目标人脸图像进行计算,得到第二MAC值的过程可以为:将目标人脸图像按照MAC算法与自身生成的第二随机数据进行计算,得到第二MAC值。
以上仅仅是本申请实施例提供的一种利用预先设置的计算规则对接收到的第二认证信息中的目标人脸图像进行计算得到第二MAC值的优选方式,有关于利用预先设置的计算规则对接收到的第二认证信息中的目标人脸图像进行计算得到第二MAC值的具体方式,发明人可根据自己的需求进行计算,本申请实施例不加以限定。
S206:服务端在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。
在本申请实施例中,服务端将计算得到的第二MAC值和接收客户端发送的第二认证信息中第一MAC值进行比对;在第一MAC值和第二MAC值一致的情况下,利用自身生成的第二随机数对接收到的第二认证信息中的目标人脸图像进行解密,得到第一人脸图像;根据第二认证信息中的身份信息获取与该身份信息匹配的第二人脸图像;进而将第一人脸图像和第二人脸图像进行比对,生成比对结果。
本发明实施例提供的一种人脸识别方法,通过客户端向服务端发送携带第一认证信息的人脸识别请求,第一认证信息包括发送认证请求的时间戳、客户端的客户端标识和公钥;服务端在接收到客户端发动的携带第一认证信息的人脸识别请求后,在根据第一认证信息认证人脸识别请求存在合法性的情况下,生成第一随机数和第二随机数;将利用第一认证请求中的公钥对第一随机数和第二随机数进行加密得到第一加密信息返回给客户端;客户端在接收到第一加密信息后,利用与该公钥匹配的私钥对第一加密信息解密后向服务端发送第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的;服务端接收客户端返回的第二认证信息,在第三随机数和第一随机数一致的情况下,利用预先设置的计算规则对目标人脸图像进行计算得到第二MAC值;在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。基于本发明,通过在客户端和服务端进行信息传输的过程进行认证信息和合法性判断以及进行信息的比对,提高人脸识别服务接入的安全性。
上述本发明实施例图2公开的步骤S206基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果,如图3所示,包括以下步骤:
S301:利用第二随机数对目标人脸图像进行解密得到第一人脸图像;
在本申请实施例中,在第一MAC值和第二MAC值一致的情况下,服务端利用自身生成的第二随机数对接收到的第二认证信息中的目标人脸图像进行解密,得到第一人脸图像。
S302:获取拥有身份信息的用户的第二人脸图像;
在本申请实施例中,身份信息可以为采集的第一人脸图像的用户的身份证号码。服务端利用该用户的身份证号码从公安部的数据库中获取与该用户的身份证号码匹配的身份证文件号,进而利用所获取的身份证文件号获取该用户的身份证照片,为了便于区分,将所获取的用户的身份证照片称为用户的第二人脸图像。
S303:比对第一人脸图像和第二人脸图像生成比对结果;
在本申请实施例中,服务端将所获取的第一人脸图像和第二人脸图像进行比对,生成比对结果;其中,比对结果可以表征第一人脸图像和第二人脸图像为同一用户的人脸图像,或者第一人脸图像和第二人脸图像不为同一用户的人脸图像。
S304:生成与比对结果匹配的人脸识别结果。
在本申请实施例中,服务端将所获取的第一人脸图像和第二人脸图像进行比对,若生成的比对结果表征第一人脸图像和第二人脸图像为同一用户的人脸图像,所生成的人脸识别结果表征人脸识别成功;若比对结果表征第一人脸图像和第二人脸图像不为同一用户的人脸图像,所生成的人脸识别结果表征人脸识别失败。
上述本发明实施例图1公开的步骤S202中涉及到的根据第一认证信息认证人脸识别请求是否存在合法性的过程,参考图4,示出了本发明实施例提供的一种根据第一认证信息认证人脸识别请求是否存在合法性的方法的流程示意图,包括以下步骤:
S401:确定以时间戳为结束时间点的历史时间段,历史时间段的时长为预设时长;
在具体执行步骤S401的过程中,服务端在接收到客户端发送的携带第一认证信息的人脸识别请求后,确定以第一认证信息中的时间戳为结束的历史时间段。
在本申请实施例中,历史时间段的时长为预设时长。比如,可以将历史时间段的时长预先设置为5分钟,若服务端接收到第一认证信息中的时间戳标识的时间为2019年12月30号15:30,则确定以该时间戳为结束点的历史时间为2019年12月30号15:25-2019年12月30号15:30。
S402:检测历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数是否超过预设次数;若历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数超过预设次数,执行步骤S403;若历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数未超过预设次数;执行步骤S404。
在本身申请实施例中,预先设置在历史时间段内接收同一个客户端发送的人脸识别请求的预设次数,在确定以时间戳为结束时间点的历史时间段后,检测历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数是否超过预设次数;若历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数超过预设次数,则认证当前接收到的人脸识别请求不存在合法性;若历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数未超过预设次数,则认证当前接收到的人脸识别请求存在合法性。
比如,在5分钟内接收同一个客户端发送的人脸识别请求的预设次数为2次。当服务端接收到客户端1发送的第一认证信息中的时间戳标识的时间为2019年12月30号15:30时,确定以该时间戳为结束点的历史时间为2019年12月30号15:25-2019年12月30号15:30,若检测到在2019年12月30号15:25-2019年12月30号15:30内接收到客户端1发送的人脸识别请求的次数为1次,则确定在历史时间段内接收到客户端1发送的人脸识别请求的次数未超过预设次数,进而认证当前接收到的人脸识别请求存在合法性。
反之,若检测到在2019年12月30号15:25-2019年12月30号15:30内接收到客户端1发送的人脸识别请求的次数为3次,则确定在历史时间段内接收到客户端1发送的人脸识别请求的次数超过预设次数,进而认证当前接收到的人脸识别请求不存在合法性。
S403:认证当前接收到的人脸识别请求不存在合法性;
S404:认证当前接收到的人脸识别请求存在合法性。
本发明提供的实施例,通过检测历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数是否超过预设次数,来认证当前接收到的人脸识别请求是否存在合法性,可以在一定程度上提高人脸识别服务接入安全性。
参见图5,示出本发明实施例提供的另一种人脸识别方法的流程示意图。该人脸识别方法具体包括以下步骤:
S501:客户端向服务端发送携带第一认证信息的人脸识别请求,第一认证信息包括发送第一认证请求的时间戳、客户端的客户端标识和公钥;
S502:服务端若根据第一认证信息认证人脸识别请求存在合法性,生成第一随机数和第二随机数;
S503:服务端利用公钥对第一随机数和第二随机数进行加密得到第一加密信息;
在具体执行步骤S501至步骤S503的过程中,步骤S501至步骤S503的具体执行过程和实现原理与上述本发明实施例图2公开的步骤S201至步骤S203的具体执行过程和实现原理相同,可参见上述本发明实施例图2公开的人脸识别方法中相应的部分,这里不再进行赘述。
S504:服务端对第一加密信息进行摘要处理得到第一摘要信息;
在具体执行步骤S504的过程中,服务端在接收到客户端发送的第一加密信息后,利用单向散列函数对第一加密信息进行摘要处理,得到第一摘要信息;并将第一摘要信息附加至第一加密信息中返回给客户端。
在本申请实施例中,可以利用单向散列函数可以将第一加密信息转换为固定长度结果的函数,获得的结果为散列值;并将得到散列值作为第一摘要信息附加到第一加密信息。
在本申请实施例中,利用单向散列函数进行摘要处理,能保证不同的输入一定输出不同的散列值,而且无法通过散列值反算出原始消息,可以通过对比散列值判断两消息是否一致,进而保证人脸识别服务接入安全性。
以上仅仅例本申请实施例提供的一种对第一加密信息进行摘要处理得到第一摘要信息的优选方式,有关于对第一加密信息进行摘要处理得到第一摘要信息的具体方式,发明人可根据自己的需要进行设置,本申请实施例不加以限定。
S505:服务端向客户端返回第一摘要信息;
S506:客户端对第一加密信息进行摘要处理得到第二摘要信息;
在具体执行步骤S506的过程中,客户端在接收到服务端返回的第一加密信息后,同样利用单向散列函数对第一加密信息进行摘要处理,得到第二摘要信息。
在本申请实施例中,利用单向散列函数可以将第一加密信息转换为固定长度结果的函数,获得的结果为散列值,即得到第二摘要信息。
需要说明的是,客户端对第一加密信息进行摘要处理得到第二摘要信息所采用的方式,与服务端对第一加密信息进行摘要处理得到第一摘要信息的方式相同。
S507:客户端在第一摘要信息和第二摘要信息相同的情况下,利用与公钥匹配的私钥对第一加密信息进行解密后向服务端返回第二认证信息;第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;
在本申请实施例中,客户端在对第一加密信息进行摘要处理得到第二摘要信息后,将第二摘要信息和第一摘要信息进行比对;在第一摘要信息和第二摘要信息相同的情况下,利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息。
比如,当服务端利用单向散列函数可以将第一加密信息转换为固定长度结果的函数,获得的结果为散列值3;若客户端利用单向散列函数可以将第一加密信息转换为固定长度结果的函数,获得的结果也为散列值3,则确定第一摘要信息和第二摘要信息相同,进而利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息。若客户端利用单向散列函数可以将第一加密信息转换为固定长度结果的函数,获得的结果不为散列值3,则确定第一摘要信息和第二摘要信不相同。
在本申请实施中,利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息的过程,可参见上述本发明实施例图2公开的步骤S204的具体执行过程,这里不再进行赘述。
S508:服务端在第三随机数和第一随机数一致的情况下,利用计算规则对目标人脸图像进行计算得到第二MAC值;
S509:服务端在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果;
在具体执行步骤S508至步骤S509的过程中,步骤S508至步骤S509的具体执行过程和实现原理与上述本发明实施例图2公开的步骤S205至步骤S206的具体执行过程和实现原理相同,可参见上述本发明实施例图2公开的人脸识别方法中相应的部分,这里不再进行赘述。
S510:服务端在人脸识别结果表征人脸识别成功的情况下,接收客户端发送的业务办理请求,业务办理请求携带用户请求办理的业务和第四随机数;
在本申请实施例中,当人脸识别结果表征人脸识别成功时,说明发送该人脸识别请求的客户端为可信的客户端,进而可以接收该客户端发送的业务办理请求。其中,业务办理请求携带用户请求办理的业务和第四随机数。
需要说明的是,用户请求办理的业务可以为修改银行卡密码、修改手机银行密码、办理手机银行等等。有关于用户请求办理的业务的具体内容,可根据实际情况进行设置,本申请实施例不加以限定。
S511:服务端比较第四随机数和第一随机数是否相同;
在本申请实施例中,在接收客户端发送的业务办理请求后,获取该业务办理请求中的第四随机数;并判断所获取的第四随机数与自身生成的第一随机数是否相同;若相同,为用户提供与业务对应的业务办理服务。
需要说明的是,若第四随机数和第一随机数不相同,则拒绝为用户提供业务办理服务
S512:服务端在第四随机数和第一随机数相同的情况下,为用户提供与业务对应的业务办理服务。
在本申请实施例中,服务端在人脸识别结果表征人脸识别成功的情况下,即在保证接入的人脸识别服务的客户端的安全性下,接收客户端发送的业务办理请求;通过比较第四随机数和第一随机数是否相同,来决定是否为用户提供业务办理服务,可以进一步提高人脸识别服务接入安全性。
下面分别从客户端和服务端的角度对本发明实施例提供的人脸识别方法进行介绍。
参见图6,示出了本发明实施例提供的另一种人脸识别方法的流程示意图,该人脸识别方法方法应用于客户端,具体包括以下步骤:
S601:向服务端发送携带第一认证信息的人脸识别请求,第一认证信息包括发送第一认证请求的时间戳、客户端的客户端标识和公钥;
S602:接收服务端在根据第一认证信息认证人脸识别请求存在合法性时,利用公钥对生成的第一随机数和第二随机数进行加密得到并返回的第一加密信息;
S603:利用与公钥匹配的私钥对第一加密信息进行解密后向服务端发送第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;
在本申请实施例中,目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的;其中,第一人脸图像为通过人脸SDK采集用户的现场人脸照片。
S604:接收服务端返回的人脸识别结果。
上述本发明实施例公开的人脸识别方法中的各个步骤的具体的原理和执行过程,与上述本发明实施例图2公开的客户端执行的各个步骤的具体实现原理和执行过程相同,可参见上述本发明实施例图2公开相应的部分,这里不再进行赘述。
在本发明实施例中,客户端通过利用与公钥匹配的私钥,对接收到的服务端在根据第一认证信息认证人脸识别请求存在合法性时,利用公钥对生成的第一随机数和第二随机数进行加密得到并返回的第一加密信息进行解密;并在解密后向服务端发送第二认证信息;以便于服务端基于接收到的第二认证信息进行后续的处理。这样可以保证客户端和服务端在进行传输过程中的安全性,进而实现在提高人脸识别服务接入安全性的前提下,进行人脸识别。
参见图7,示出了本发明实施例提供的另一种人脸识别方法的流程示意图,该人脸识别方法方法应用于服务端,具体包括以下步骤:
S701:接收客户端发送的携带第一认证信息的人脸识别请求,第一认证信息包括发送第一认证请求的时间戳、客户端的客户端标识和公钥;
S702:若根据第一认证信息认证人脸识别请求存在合法性,生成第一随机数和第二随机数;
S703:利用公钥对第一随机数和第二随机数进行加密得到并向客户端返回第一加密信息;
S704:接收客户端利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;
在申请实施例中,目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的。
S705:如果第三随机数和第一随机数一致,利用计算规则对目标人脸图像进行计算得到第二MAC值;
S706:在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。
上述本发明实施例公开的人脸识别方法中的各个步骤的具体的原理和执行过程,与上述本发明实施例图2公开的服务端执行的各个步骤的具体实现原理和执行过程相同,可参见上述本发明实施例图2公开相应的部分,这里不再进行赘述。
在本发明实施例中,服务端在接收到客户端发送得到携带第一认证认证信息的人脸识别请求后,根据第一认证信息认证人脸识别请求是否存在合法性;在认证人脸识别请求存在合法性的情况下,利用公钥对第一随机数和第二随机数进行加密得到并向客户端返回第一加密信息;以及在接收客户端利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息后,判断第二认证信息的第三随机数与自身生成的第一随机数是否一致;在第三随机数与第一随机数一致的情况下;利用计算规则对目标人脸图像进行计算得到第二MAC值,并判断第二认证信息中的第一MAC值与第二MAC值是否一致;在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果,即在保证人脸识别服务接入安全性的前提下,实现人脸识别。
与上述本发明实施例公开的一种信息传输方法相对应,参考图8,本发明实施例还提供了一种人脸识别装置的结构示意图,该人脸识别装置包括:
第一接收单元81,用于接收客户端发送的携带第一认证信息的人脸识别请求,第一认证信息包括发送认证请求的时间戳、客户端的客户端标识和公钥;
第一生成单元82,用于若根据第一认证信息认证人脸识别请求存在合法性,生成第一随机数和第二随机数;
第一加密单元83,用于利用公钥对第一随机数和第二随机数进行加密得到并向客户端返回第一加密信息;
第二接收单元84,用于接收客户端利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的;
第一计算单元85,用于如果第三随机数和第一随机数一致,利用计算规则对目标人脸图像进行计算得到第二MAC值;
人脸识别单元86,用于在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。
优选的,在本申请实施例中,人脸识别单元,包括:
第二解密单元,用于利用第二随机数对目标人脸图像进行解密得到第一人脸图像;
获取单元,用于获取拥有身份信息的用户的第二人脸图像;
第一比对单元,用于比对第一人脸图像和第二人脸图像生成人脸识别结果。
优选的,在本申请实施例中,第一比对单元,包括:
第二比对单元,用于比对第一人脸图像和第二人脸图像生成比对结果;
第二生成单元,用于生成与比对结果匹配的人脸识别结果;若比对结果表征第一人脸图像和第二人脸图像为同一用户的人脸图像,所生成的人脸识别结果表征人脸识别成功;若比对结果表征第一人脸图像和第二人脸图像不为同一用户的人脸图像,所生成的人脸识别结果表征人脸识别失败。
进一步的,本申请实施例提供的人脸识别装置,还包括根据第一认证信息认证人脸识别请求是否存在合法性的过程,该过程包括:
确定单元,用于确定以时间戳为结束时间点的历史时间段,历史时间段的时长为预设时长;
检测单元,用于检测历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数是否超过预设次数;
第一认证单元,用于若历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数超过预设次数,认证当前接收到的人脸识别请求不存在合法性;
第二认证单元,用于若历史时间段内接收到携带客户端标识的客户端发送的人脸识别请求的次数未超过预设次数,认证当前接收到的人脸识别请求存在合法性。
进一步的,本申请实施例提供的人脸识别装置,还包括:
摘要处理单元,用于对第一加密信息进行摘要处理得到第一摘要信息;
第一摘要信息返回单元,用于向客户端返回第一摘要信息;
相应的,第二接收单元还用于,接收客户端对第一加密信息进行摘要处理得到第二摘要信息与第一摘要信息相同的情况下,利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息。
进一步的,本申请实施例提供的人脸识别装置,在人脸识别结果表征人脸识别成功的情况下,还包括:
第五接收单元,用于接收客户端发送的业务办理请求,业务办理请求携带用户请求办理的业务和第四随机数;
比较单元,用于比较第四随机数和第一随机数是否相同;
业务办理服务提供单元,用于若第四随机数和第一随机数相同,为用户提供与业务对应的业务办理服务。
与上述本发明实施例公开的一种信息传输方法相对应,参考图9,本发明实施例还提供了一种人脸识别装置的结构示意图,该人脸识别装置包括:
发送单元91,用于向服务端发送携带第一认证信息的人脸识别请求,第一认证信息包括发送认证请求的时间戳、客户端的客户端标识和公钥;
第三接收单元92,用于接收服务端在根据第一认证信息认证人脸识别请求存在合法性时,利用公钥对生成的第一随机数和第二随机数进行加密得到并返回的第一加密信息;
第一解密单元93,用于利用与公钥匹配的私钥对第一加密信息进行解密后向服务端发送第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的;
第四接收单元94,用于接收服务端返回的人脸识别结果。
基于上述共性,本申请实施例还提供一种设备,该设备包括:处理器以及存储器,处理器以及存储器通过通信总线相连;其中,处理器,用于调用并执行存储器中存储的程序;存储器,用于存储程序,程序用于实现本申请实施例提供的一种人脸识别方法。
本申请实施例提供的一种设备可以为终端,也可以为服务器,现分别从服务器和终端的角度对本申请实施例提供的一种人脸识别方法进行详细说明。
为了便于理解,现从服务器的角度对本申请实施例提供的一种人脸识别方法进行详细说明。服务器可以是网络侧为用户提供服务的服务设备,其可能是多台服务器组成的服务器集群,也可能是单台服务器。
图10为本申请实施例提供的一种服务器的硬件结构框图。参照图10,服务器的硬件结构可以包括:处理器1001,通信接口1002,存储器1003和通信总线1004;
在本发明实施例中,处理器1001、通信接口1002、存储器1003、通信总线1004的数量均可以为至少一个,且处理器1001、通信接口1002、存储器1003通过通信总线1004完成相互间的通信;
处理器1001可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
存储器1003可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory)等,例如至少一个磁盘存储器;
其中,存储器存储有程序,处理器可调用存储器存储的程序,程序用于:
接收客户端发送的携带第一认证信息的人脸识别请求,第一认证信息包括发送第一认证请求的时间戳、客户端的客户端标识和公钥;
若根据第一认证信息认证人脸识别请求存在合法性,生成第一随机数和第二随机数;
利用公钥对第一随机数和第二随机数进行加密得到并向客户端返回第一加密信息;
接收客户端利用与公钥匹配的私钥对第一加密信息进行解密后返回的第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的;
如果第三随机数和第一随机数一致,利用计算规则对目标人脸图像进行计算得到第二MAC值;
在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。
可选的,程序的细化功能和扩展功能可参照上文描述。
图11为本申请实施例提供的一种人脸识别方法所适用于的终端的硬件结构框图。
如图11所示该终端可以包括:处理器1101、存储器1102、通信接口1103、输入单元1104和显示器1105和通信总线1106。
存储器1102中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本发明实施例中,该存储器中至少存储有用于实现以下功能的程序:
向服务端发送携带第一认证信息的人脸识别请求,第一认证信息包括发送第一认证请求的时间戳、客户端的客户端标识和公钥;
接收服务端在根据第一认证信息认证人脸识别请求存在合法性时,利用公钥对生成的第一随机数和第二随机数进行加密得到并返回的第一加密信息;
利用与公钥匹配的私钥对第一加密信息进行解密后向服务端发送第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的;
接收服务端返回的人脸识别结果。
可选的,程序的细化功能和扩展功能可参照下文描述。
处理模块1101、存储器1102、通信接口1103、输入单元1104、显示器1105、均通过通信总线1106完成相互间的通信。
在本发明实施例中,该处理器1101,可以为中央处理器(Central ProcessingUnit,CPU),特定应用集成电路(application-specific integrated circuit,ASIC),数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件等。
该处理器可以调用并执行存储器1102中存储的程序。
该通信接口1103可以为通信模块的接口,如GSM模块的接口。
本发明还可以包括输入单元1104,该输入单元可以包括感应触摸显示面板上的触摸事件的触摸感应单元、键盘等等。
该显示器1105包括显示面板,如触摸显示面板等。在一种可能的情况中,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-EmittingDiode,OLED)等形式来配置显示面板。
当然,图11所示的终端结构并不构成对本发明实施例中终端的限定,在实际应用中终端可以包括比图11所示的更多或更少的部件,或者组合某些部件。
进一步的,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令用于执行上述人脸识别方法。
有关计算机可执行指令的具体内容可参见上文对本申请实施例提供的一种人脸识别方法的详细描述,在此不做赘述。
基于上述本发明实施例提供的一种人脸识别方法、装置及设备,通过客户端向服务端发送携带第一认证信息的人脸识别请求,第一认证信息包括发送认证请求的时间戳、所述客户端的客户端标识和公钥;服务端在接收到客户端发动的携带第一认证信息的人脸识别请求后,在根据第一认证信息认证人脸识别请求存在合法性的情况下,生成第一随机数和第二随机数;将利用第一认证请求中的公钥对第一随机数和第二随机数进行加密得到第一加密信息返回给客户端;客户端在接收到第一加密信息后,利用与该公钥匹配的私钥对第一加密信息解密后向服务端发送第二认证信息,第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;目标人脸图像为客户端利用第二随机数对采集到的第一人脸图像进行加密得到的,第一MAC值为客户端按照预先设置的计算规则对目标人脸图像进行计算得到的;服务端接收客户端返回的第二认证信息,在第三随机数和第一随机数一致的情况下,利用预先设置的计算规则对目标人脸图像进行计算得到第二MAC值;在第一MAC值和第二MAC值一致的情况下,基于身份信息对目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。基于本发明,通过在客户端和服务端进行交互的过程不断的进行比对,来提高人脸识别服务接入安全性。进而实现在提高人脸识别服务接入安全性的前提下,实现人脸识别。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种人脸识别方法,其特征在于,包括:
接收客户端发送的携带第一认证信息的人脸识别请求,所述第一认证信息包括发送第一认证请求的时间戳、所述客户端的客户端标识和公钥;
若根据所述第一认证信息认证所述人脸识别请求存在合法性,生成第一随机数和第二随机数;
利用所述公钥对所述第一随机数和第二随机数进行加密得到并向所述客户端返回第一加密信息;
接收所述客户端利用与所述公钥匹配的私钥对所述第一加密信息进行解密后返回的第二认证信息,所述第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;所述目标人脸图像为所述客户端利用所述第二随机数对采集到的第一人脸图像进行加密得到的,所述第一MAC值为所述客户端按照预先设置的计算规则对所述目标人脸图像进行计算得到的;
如果所述第三随机数和所述第一随机数一致,利用所述计算规则对所述目标人脸图像进行计算得到第二MAC值;
在所述第一MAC值和所述第二MAC值一致的情况下,基于所述身份信息对所述目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。
2.根据权利要求1所述的方法,其特征在于,所述基于所述身份信息对所述目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果,包括:
利用所述第二随机数对所述目标人脸图像进行解密得到所述第一人脸图像;
获取拥有所述身份信息的用户的第二人脸图像;
比对所述第一人脸图像和所述第二人脸图像生成人脸识别结果。
3.根据权利要求2所述的方法,其特征在于,所述比对所述第一人脸图像和所述第二人脸图像生成人脸识别结果,包括:
比对所述第一人脸图像和第二人脸图像生成比对结果;
生成与所述比对结果匹配的人脸识别结果;若所述比对结果表征所述第一人脸图像和所述第二人脸图像为同一用户的人脸图像,所生成的人脸识别结果表征人脸识别成功;若所述比对结果表征所述第一人脸图像和所述第二人脸图像不为同一用户的人脸图像,所生成的人脸识别结果表征人脸识别失败。
4.根据权利要求1所述的方法,其特征在于,还包括根据所述第一认证信息认证所述人脸识别请求是否存在合法性的过程,该过程包括:
确定以所述时间戳为结束时间点的历史时间段,所述历史时间段的时长为预设时长;
检测所述历史时间段内接收到携带所述客户端标识的客户端发送的人脸识别请求的次数是否超过预设次数;
若所述历史时间段内接收到携带所述客户端标识的客户端发送的人脸识别请求的次数超过预设次数,认证当前接收到的所述人脸识别请求不存在合法性;
若所述历史时间段内接收到携带所述客户端标识的客户端发送的人脸识别请求的次数未超过预设次数,认证当前接收到的所述人脸识别请求存在合法性。
5.根据权利要求4所述的方法,其特征在于,还包括:
对所述第一加密信息进行摘要处理得到第一摘要信息;
向所述客户端返回所述第一摘要信息;
所述接收所述客户端利用与所述公钥匹配的私钥对所述第一加密信息进行解密后返回的第二认证信息,包括:接收所述客户端对所述第一加密信息进行摘要处理得到第二摘要信息与所述第一摘要信息相同的情况下,利用与所述公钥匹配的私钥对所述第一加密信息进行解密后返回的第二认证信息。
6.根据权利要求1所述的方法,其特征在于,在所述人脸识别结果表征人脸识别成功的情况下,该方法还包括:
接收所述客户端发送的业务办理请求,所述业务办理请求携带用户请求办理的业务和第四随机数;
比较所述第四随机数和所述第一随机数是否相同;
若所述第四随机数和所述第一随机数相同,为用户提供与所述业务对应的业务办理服务。
7.一种人脸识别方法,其特征在于,包括:
向服务端发送携带第一认证信息的人脸识别请求,所述第一认证信息包括发送第一认证请求的时间戳、客户端的客户端标识和公钥;
接收所述服务端在根据所述第一认证信息认证所述人脸识别请求存在合法性时,利用所述公钥对生成的第一随机数和第二随机数进行加密得到并返回的第一加密信息;
利用与所述公钥匹配的私钥对所述第一加密信息进行解密后向所述服务端发送第二认证信息,所述第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;所述目标人脸图像为所述客户端利用所述第二随机数对采集到的第一人脸图像进行加密得到的,所述第一MAC值为所述客户端按照预先设置的计算规则对所述目标人脸图像进行计算得到的;
接收所述服务端返回的人脸识别结果。
8.一种人脸识别装置,其特征在于,包括:
第一接收单元,用于接收客户端发送的携带第一认证信息的人脸识别请求,所述第一认证信息包括发送认证请求的时间戳、所述客户端的客户端标识和公钥;
第一生成单元,用于若根据所述第一认证信息认证所述人脸识别请求存在合法性,生成第一随机数和第二随机数;
第一加密单元,用于利用所述公钥对所述第一随机数和第二随机数进行加密得到并向所述客户端返回第一加密信息;
第二接收单元,用于接收所述客户端利用与所述公钥匹配的私钥对所述第一加密信息进行解密后返回的第二认证信息,所述第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;所述目标人脸图像为所述客户端利用所述第二随机数对采集到的第一人脸图像进行加密得到的,所述第一MAC值为所述客户端按照预先设置的计算规则对所述目标人脸图像进行计算得到的;
第一计算单元,用于如果所述第三随机数和所述第一随机数一致,利用所述计算规则对所述目标人脸图像进行计算得到第二MAC值;
人脸识别单元,用于在所述第一MAC值和所述第二MAC值一致的情况下,基于所述身份信息对所述目标人脸图像中的人脸图像进行人脸识别生成人脸识别结果。
9.一种人脸识别装置,其特征在于,包括:
发送单元,用于向服务端发送携带第一认证信息的人脸识别请求,所述第一认证信息包括发送认证请求的时间戳、客户端的客户端标识和公钥;
第三接收单元,用于接收所述服务端在根据所述第一认证信息认证所述人脸识别请求存在合法性时,利用所述公钥对生成的第一随机数和第二随机数进行加密得到并返回的第一加密信息;
第一解密单元,用于利用与所述公钥匹配的私钥对所述第一加密信息进行解密后向所述服务端发送第二认证信息,所述第二认证信息包括第三随机数、目标人脸图像、第一MAC值和身份信息;所述目标人脸图像为所述客户端利用所述第二随机数对采集到的第一人脸图像进行加密得到的,所述第一MAC值为所述客户端按照预先设置的计算规则对所述目标人脸图像进行计算得到的;
第四接收单元,用于接收所述服务端返回的人脸识别结果。
10.一种设备,其特征在于,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如权利要求1-6所述的人脸识别方法或用于实现如权利要求7所述的人脸识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011562222.4A CN112738067B (zh) | 2020-12-25 | 2020-12-25 | 一种人脸识别方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011562222.4A CN112738067B (zh) | 2020-12-25 | 2020-12-25 | 一种人脸识别方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112738067A CN112738067A (zh) | 2021-04-30 |
CN112738067B true CN112738067B (zh) | 2023-03-24 |
Family
ID=75616639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011562222.4A Active CN112738067B (zh) | 2020-12-25 | 2020-12-25 | 一种人脸识别方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112738067B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010031142A1 (en) * | 2008-09-22 | 2010-03-25 | Joseph Elie Tefaye | Method and system for user authentication |
CN101771539A (zh) * | 2008-12-30 | 2010-07-07 | 北京大学 | 一种基于人脸识别的身份认证方法 |
CN109903433A (zh) * | 2019-01-31 | 2019-06-18 | 武汉天喻聚联网络有限公司 | 一种基于人脸识别的门禁系统及门禁控制方法 |
-
2020
- 2020-12-25 CN CN202011562222.4A patent/CN112738067B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010031142A1 (en) * | 2008-09-22 | 2010-03-25 | Joseph Elie Tefaye | Method and system for user authentication |
CN101771539A (zh) * | 2008-12-30 | 2010-07-07 | 北京大学 | 一种基于人脸识别的身份认证方法 |
CN109903433A (zh) * | 2019-01-31 | 2019-06-18 | 武汉天喻聚联网络有限公司 | 一种基于人脸识别的门禁系统及门禁控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112738067A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10742626B2 (en) | Method for key rotation | |
CN112926051B (zh) | 多方安全计算方法和装置 | |
US8601267B2 (en) | Establishing a secured communication session | |
CN111079128A (zh) | 一种数据处理方法、装置、电子设备以及存储介质 | |
CN113691502A (zh) | 通信方法、装置、网关服务器、客户端及存储介质 | |
Jaidhar | Enhanced mutual authentication scheme for cloud architecture | |
CN109309566B (zh) | 一种认证方法、装置、系统、设备及存储介质 | |
US20230344643A1 (en) | Digital signature system using scalable servers | |
Giri et al. | A novel and efficient session spanning biometric and password based three-factor authentication protocol for consumer USB mass storage devices | |
US10158490B2 (en) | Double authentication system for electronically signed documents | |
Shakiba | Security analysis for chaotic maps-based mutual authentication and key agreement using smart cards for wireless networks | |
CN110417740B (zh) | 用户数据的处理方法、智能终端、服务器及存储介质 | |
CN114501431A (zh) | 报文传输方法、装置、存储介质及电子设备 | |
KR20060078768A (ko) | 사용자 개인키의 분산 등록을 이용한 키 복구 시스템 및그 방법 | |
CN112738067B (zh) | 一种人脸识别方法、装置及设备 | |
KR20220143557A (ko) | 암호화 장치, 암호화 장치를 포함하는 시스템의 인증 방법 및 서명을 생성하는 방법 | |
Mishra et al. | Authenticated content distribution framework for digital rights management systems with smart card revocation | |
JP2009111594A (ja) | 短い系列を用いた認証システム | |
KR101605766B1 (ko) | 비밀키 생성 방법 및 중복 제거 방법 | |
CN115277074B (zh) | 一种加密和解密方法、装置、设备和存储介质 | |
US11601284B2 (en) | Digital signature system based on a cloud of dedicated local devices | |
Téllez et al. | Security in mobile payment systems | |
CN110213245B (zh) | 基于非对称密钥池和代理签名的应用系统近距离节能通信方法和系统 | |
KR101298216B1 (ko) | 복수 카테고리 인증 시스템 및 방법 | |
Prakasha et al. | Enhanced authentication and key agreement mechanism using PKI |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |