CN117501265A - 用于认证移动设备的用户的方法 - Google Patents

用于认证移动设备的用户的方法 Download PDF

Info

Publication number
CN117501265A
CN117501265A CN202280042478.3A CN202280042478A CN117501265A CN 117501265 A CN117501265 A CN 117501265A CN 202280042478 A CN202280042478 A CN 202280042478A CN 117501265 A CN117501265 A CN 117501265A
Authority
CN
China
Prior art keywords
image
execution environment
user
mobile device
trusted execution
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.)
Pending
Application number
CN202280042478.3A
Other languages
English (en)
Inventor
F·希克
P·希伦
B·古蒂尔
P·辛德勒
D·布托夫
M·普雷迪格尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TrinamiX GmbH
Original Assignee
TrinamiX GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by TrinamiX GmbH filed Critical TrinamiX GmbH
Publication of CN117501265A publication Critical patent/CN117501265A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/167Detection; Localisation; Normalisation using comparisons between temporally consecutive images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2105Dual mode as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Collating Specific Patterns (AREA)

Abstract

提出了一种用于认证移动设备(110)的用户的方法。该方法包括以下步骤:a)(114)通过使用该移动设备(110)的至少一个相机(112)来成像面部的至少一个第一图像(116);b)(118)将该第一图像(116)提供给该移动设备(110)的处理器(122)的常规执行环境(120),并将该第一图像(116)提供给该处理器(122)的可信执行环境(124);c)(126)使用该常规执行环境(120)中的至少一个经训练模型来分析该第一图像(116),从而确定包括图像信息的多维向量;d)(128)面部验证步骤,包括:di)(130)向该可信执行环境(124)提供该多维向量,dii)在该可信执行环境(124)中通过使用至少一个解码器(132)根据该多维向量来确定第二图像,以及diii)将该第一图像(116)与该第二图像进行比较,其中,如果该第一图像和该第二图像相同,则该多维向量通过验证;div)如果该多维向量通过验证,则将该验证后的多维向量与该可信执行环境(124)中存储的该用户面部的多维向量进行比较,其中,如果该多维向量和所存储的该用户面部的多维向量相同,则该用户通过认证。

Description

用于认证移动设备的用户的方法
技术领域
本发明涉及一种用于认证移动设备的用户的方法、一种用于授权的方法、一种移动设备以及该移动设备的各种用途。根据本发明的设备、方法和用途具体地可以用于各个领域,例如日常生活、安全性技术、游戏、交通技术、生产技术、摄影(比如用于艺术、文档或技术目的的数字摄影或视频摄影)、安全技术、信息技术、农业、作物保护、维护、化妆品、医疗技术或科学。然而,其他应用也是可能的。
背景技术
众所周知,使用可信执行环境(TEE)技术可用于诸如智能电话或平板计算机等移动设备中,例如参见en.wikipedia.org/wiki/Trusted_execution_environment。然而,与主处理器(特别是其常规执行环境)相比,移动设备的处理器的可信执行环境具有有限的计算能力和存储器容量。
移动设备被广泛用于通常需要安全性的应用中。例如,移动设备可以用于支付。为了批准支付过程,通常使用用户面部的相机记录来核验他的身份。可能会使用神经网络进行面部分析,并基于指定标准来明确用户的身份。基于结果,支付过程可以被批准。在移动设备的处理器的常规且不安全的环境中,这部分过程可能会被篡改。但是,由于计算能力和存储器容量有限,无法在可信执行环境中执行面部认证和/或识别。在不安全的常规执行环境中执行图像分析可能会暴露用户面部的记录,比如使其可被访问用于修改,从而导致安全性问题。
US2021/173916 A1在各种实施例中描述了与生成动态质询密码短语数据对象相关的系统、设备、方法和计算机可读介质。该方法包括:建立表示个体的一组互斥的结构化数据记录的多个数据记录聚类;基于每个特征数据字段相对于数据记录聚类的建立的确定贡献值,对多个特征数据字段进行排序;以及使用排序的多个特征数据字段来识别多个特征数据字段中的第一特征数据字段和第二特征数据字段。该方法包括生成动态质询密码短语数据对象,其中,第一特征数据字段或第二特征数据字段用于建立语句串部分,而第一特征数据字段或第二特征数据字段中的剩余一者用于建立问题串部分和正确响应串。
US2019/205518 A1描述了一种在移动设备中用于基于用户的面部来认证或识别用户的方法。该方法包括:在移动设备的可信执行环境中获取与用户的连续图像帧相对应的生物特征面部样本序列;以及在可信执行环境中修改或替换该序列中的一些生物特征面部样本,以便生成具有测试生物特征面部样本修改后的序列。该方法包括:将修改后的序列传输到移动设备的富执行环境;以及使用富执行环境中的分类器对生物特征面部样本的至少一部分进行分类,以便为每个分类的生物特征面部样本生成一组中间输出和分类结果。该方法还包括:对于每个分类的生物特征面部样本,将中间输出或分类结果中的至少一些、和/或中间输出的摘要发送到可信执行环境。该方法进一步包括:对于至少一个测试生物特征面部样本,在可信执行环境中验证至少一些中间输出和/或结果和/或摘要。
CN 105 138 973A描述了一种面部认证方法和设备。该方法包括以下步骤:使用预先经过多层分类网络联合训练的多层级深度卷积网络,从待认证的面部图像和面部图像模板中依次提取出多个层级的特征向量;通过统一维度线性映射矩阵将多个层级的特征向量依次映射为统一维度特征向量;将统一维度特征向量串联连接成联合特征向量;通过线性降维映射矩阵对联合特征向量进行降维映射;以及通过线性判别分析,利用绝对值将余弦值归一化,并将得到的待认证面部图像的特征向量与面部图像模板的特征向量进行比较和认证。
本发明解决的问题
因此,本发明的目的是提供针对上述已知设备和方法的技术挑战的设备和方法。具体地,本发明的目的是提供允许以增强的安全性认证移动设备的用户的设备和方法。
发明内容
本发明以独立专利权利要求的特征解决了这个问题。可以单独或组合地实现的本发明的有利发展在从属权利要求和/或以下说明书和详细实施例中呈现。
如下文中所使用的,术语“具有”、“包括(comprise)”或“包括(include)”或其任何任意语法变型以非排他性方式使用。因此,这些术语既可以指的是除了这些术语引入的特征之外,在该上下文中描述的实体中不存在另外特征的情况,又可以指的是存在一个或多个另外特征的情况。作为示例,表述“A具有B”、“A包括B”和“A包含B”既可以指的是除B之外,A中不存在另外要素的情况(即,A仅且单独地由B组成的情况),又可以指的是除了B之外,实体A中还存在一个或多个另外要素(比如要素C、要素C和D或者甚至另外要素)。
进一步地,应当注意的是,指示特征或要素可以存在一个或多于一个的术语“至少一个”、“一个或多个”或类似表达通常在介绍相应特征或要素时仅使用一次。在下文中,在大多数情况下,当提及相应特征或要素时,将不会重复表述“至少一个”或“一个或多个”,但事实上相应特征或要素可能存在一个或多于一个。
进一步地,如下文中所使用的,术语“优选地”、“更优选地”、“特别地”、“更特别地”、“具体地”、“更具体地”或类似术语与可选特征结合使用,而不限制替代性的可能性。因此,这些术语引入的特征是可选特征并且不旨在以任何方式限制权利要求的范围。正如技术人员将认识到的,本发明可以通过使用替代性特征来执行。类似地,由“在本发明的实施例中”或类似表述引入的特征旨在是可选特征,而不对本发明的替代性实施例有任何限制,不对本发明的范围有任何限制,并且不对以这种方式引入的特征与本发明的其他可选或非可选特征组合的可能性有任何限制。
在本发明的第一方面中,披露了一种用于认证移动设备的用户的方法。
如本文所使用的术语“移动设备”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于移动电子设备,更具体地是诸如蜂窝电话或智能电话等移动通信设备。另外地或可替代地,移动设备还可以是指平板计算机或其他类型的便携式计算机。
如本文所使用的术语“用户”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于使用移动设备的人。用户可以是移动设备的所有者和/或以其他方式被授权的人。
如本文所使用的术语“认证”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于验证用户的身份。具体地,认证可以包括区分用户与其他人类或对象、特别是区分授权访问与非授权访问。认证可以包括验证相应用户的身份和/或向用户指派身份。认证可以包括生成和/或提供身份信息,例如提供给其他设备或单元(比如,提供给至少一个授权单元)用于授权执行支付过程。身份信息可以通过认证来证明。例如,身份信息可以是和/或可以包括至少一个身份令牌。如果成功认证,则由移动设备的相机记录的面部图像可以被验证为用户面部的图像,和/或用户的身份通过验证。
该方法包括以下步骤:
a)通过使用该移动设备的至少一个相机来成像面部的至少一个第一图像;
b)将该第一图像提供给该移动设备的处理器的常规执行环境,并将该第一图像提供给该处理器的可信执行环境;
c)使用该常规执行环境中的至少一个经训练模型来分析该第一图像,从而确定包括图像信息的多维向量;
d)面部验证步骤,包括:
di)向该可信执行环境提供该多维向量,
dii)在可信执行环境中通过使用至少一个解码器根据多维向量来确定第二图像,以及
diii)将该第一图像与该第二图像进行比较,其中,如果该第一图像和该第二图像相同,则该多维向量通过验证;
div)如果该多维向量通过验证,则将该验证后的多维向量与该可信执行环境中存储的用户面部的多维向量进行比较,其中,如果该多维向量和所存储的用户面部的多维向量相同,则该用户通过认证。
这些方法步骤可以以给定的顺序执行或者可以以不同的顺序执行。进一步地,可以存在未列出的一个或多个附加方法步骤。进一步地,可以重复执行其中一个、多于一个或者甚至所有方法步骤。
如本文所使用的术语“相机”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于具有至少一个成像元件的设备,该成像元件被配置用于记录或捕获空间解析的一维、二维或甚至三维光学数据或信息。作为示例,相机可以包括至少一个相机芯片,比如被配置用于记录图像的至少一个CCD芯片和/或至少一个CMOS芯片。例如,相机可以是彩色相机,如下文将详细描述的,其包括至少三种颜色的像素。相机可以是彩色CMOS相机。例如,相机可以包括黑白像素和彩色像素。彩色像素和黑白像素可以在相机内部组合。相机可以包括至少一个彩色相机和至少一个黑白相机,比如黑白CMOS。相机可以包括至少一个黑白CMOS芯片。相机通常可以包括图像传感器(比如像素)的一维或二维阵列。
相机可以包括其他元件,比如一个或多个光学元件,例如一个或多个镜头。作为示例,相机可以是定焦距相机,其至少一个镜头相对于相机的调节是固定的。然而,可替代地,相机还可以包括可以自动或手动调节的一个或多个可变镜头。然而,其他相机也是可行的。
如本文所使用的术语“成像”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于通过使用相机来捕获和/或生成和/或确定和/或记录至少一个图像。成像可以包括捕获单个图像和/或多个图像,比如图像序列。例如,成像可以包括连续记录图像序列,比如视频或电影。成像可以由用户动作发起或者可以自动发起,例如,在自动检测到相机的视场内和/或视场的预定区域内存在至少一个对象时发起。成像可以由移动设备的处理器支持。
如本文所使用的,非限制性地,术语“图像”具体地可以涉及通过使用相机记录的数据,比如来自相机的多个电子读数,比如相机芯片的像素。第一图像可以是通过使用相机成像的初始图像。第一图像可以包括原始图像数据或者可以是预处理的图像。例如,预处理可以包括对原始图像数据应用至少一个滤波器和/或至少一个背景校正和/或至少一个背景减除。第一图像可以包括包含面部的场景。预处理可以包括执行面部检测和/或选择关注区域中的一项或多项。关注区域可以是手动确定的或者可以是比如通过识别第一图像内的特征来自动确定的。
如本文所使用的术语“处理器”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于被配置用于执行计算机或系统的基本操作的任意逻辑电路,和/或一般地是指被配置用于执行计算或逻辑运算的设备。特别地,处理器可以被配置用于处理驱动计算机或系统的基本指令。作为示例,处理器可以包括至少一个算术逻辑单元(ALU)、至少一个浮点单元(FPU),比如数学协处理器或数字协处理器、多个寄存器(具体为被配置用于向ALU提供操作数并存储运算结果的寄存器)、以及诸如L1和L2高速缓存存储器等存储器。特别地,处理器可以是多核处理器。具体地,处理器可以是或者可以包括中央处理单元(CPU)。另外地或可替代地,处理器可以是或可以包括微处理器,因此具体地,处理器的元件可以包含在单个集成电路(IC)芯片中。另外地或可替代地,处理器可以是或可以包括一个或多个专用集成电路(ASIC)和/或一个或多个现场可编程门阵列(FPGA)和/或一个或多个张量处理单元(TPU)和/或一个或多个芯片,比如专用的机器学习优化芯片等。处理器具体地可以比如通过软件编程进行配置以用于执行一个或多个评估操作。
如本文所使用的术语“执行环境”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于提供被配置用于支持应用程序运行的设施的一组硬件和软件部件。执行环境可以如以下文献中描述的那样进行设计:GlobalPlatform技术,TEE系统架构,版本1.2,2018年11月公开发布,文档引用:GPD_SPE_009,或www.qualcomm.com/media/documents/files/guard-your-data-with-the-qualcomm-snapdragon-mobile-platform.pdf,或www.arm.com/why-arm/technologies/trustzone-for-cortex-a/tee-reference-documentation。具体地,执行环境可以包括至少一个硬件处理单元、至少一个存储器(特别是易失性存储器和非易失性存储器)、硬件处理单元与其他硬件资源之间的连接、以及外围接口。
如本文所使用的术语“常规执行环境”(也称为富执行环境)是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。常规执行环境可以如以下文献中描述的那样进行设计:GlobalPlatform技术,TEE系统架构,版本1.2,2018年11月公开发布,文档引用:GPD_SPE_009,或www.qualcomm.com/media/documents/files/guard-your-data-with-the-qualcomm-snapdragon-mobile-platform.pdf,或www.arm.com/why-arm/technologies/trustzone-for-cortex-a/tee-reference-documentation。术语“常规执行环境”具体地可以是指但不限于处理器的执行环境,其包括至少一个设备操作系统(OS)和/或富操作系统(Rich OS)以及设备的所有其他部件,特别是至少一个片上系统(SoC)、其他分立部件、固件和软件,这些被配置用于执行、托管和支持OS和/或Rich OS。SoC可以是其所有部件都包括在单个集成电路中的电子系统。常规执行环境可以排除移动设备中包括的任何可信执行环境和安全元件(SE)。具体地,常规执行环境可以是可信执行环境之外的任何东西。特别是由于OS和/或Rich OS的大小和需要,常规执行环境可以在可信执行环境的硬件之外的执行环境中运行。常规执行环境的物理安全性边界可能比可信执行环境的物理安全性边界低得多。因此,常规执行环境可以被认为是不可信的。然而,常规执行环境中可能会存在内部信任结构。
如本文所使用的术语“可信执行环境(TEE)”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。可信执行环境可以如以下文献中描述的那样进行设计:GlobalPlatform技术,TEE系统架构,版本1.2,2018年11月公开发布,文档引用:GPD_SPE_009,或www.qualcomm.com/media/documents/files/guard-your-data-with-the-qualcomm-snapdragon-mobile-platform.pdf,或www.arm.com/why-arm/technologies/trustzone-for-cortex-a/tee-reference-documentation。术语“可信执行环境”具体地可以是指但不限于包括至少一种安全能力并且满足至少一种安全要求的执行环境。可信执行环境可以被配置用于保护可信执行环境内的资产免受一般软件攻击。可信执行环境可以被配置用于定义关于程序可以访问的数据和功能的严格保护措施。可信执行环境可以被配置用于抵抗一组定义的威胁。已知有多种技术用于实施可信执行环境,并且所实现的安全性级别可以相应地变化。具体地,可信执行环境可以满足如source.android.com/compatibility/11/android-11-cdd#7_3_10_biometric_sensors中所描述的安全要求。TEE可以以防止相机帧在TEE之外或具有到TEE的安全通道的芯片之外被读取或更改的模式来操作相机,特别是当基于生物特征的认证或登记正在发生时。对于RGB单相机解决方案,相机帧可以在TEE之外可读,以支持诸如登记预览等操作,但可能仍然不可更改。TEE可能不允许对可识别的生物特征数据或由该生物特征数据导出到TEE的背景之外的处理器部分的任何数据(比如嵌入)进行未加密的访问。TEE可以具有安全的处理流水线,使得在操作系统或内核被破解时也无法直接注入数据以错误地认证为用户。TEE可以具有硬件支持的密钥库实施方式。TEE可以对所有可识别数据进行加密和密码认证,使得这些数据无法在TEE之外或具有到TEE的安全通道的芯片之外被获取、读取或更改。TEE可以通过让用户确认由TEE保护的现有设备凭证或添加新的设备凭证(例如,PIN和/或图案和/或密码)来防止在没有首先建立信任链的情况下添加新的生物特征。
可信执行环境可以是与常规执行环境隔离的执行环境。可信执行环境可以通过物理隔离方法、基于硬件逻辑的隔离方法或密码隔离方法中的一种或多种与常规执行环境隔离。具体地,可信执行环境可以通过TEE系统硬件通过电子访问控制与常规执行环境隔离,该TEE系统硬件可以由TEE常驻引导或运行时软件来配置。
如本文所使用的术语“提供”第一图像是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于将由相机记录的图像数据传送到移动设备的处理器,特别是传送到常规执行环境和可信执行环境。第一图像可以经由常规路径提供给常规执行环境。常规路径可以是不可信路径。常规路径可以被配置用于允许由常规执行环境和/或可信执行环境内的软件进行访问。第一图像可以经由安全路径被提供给可信执行环境,其中,安全路径可以被配置用于防止第一图像被常规执行环境内的任何软件导出和/或修改。
第一图像的分析在常规执行环境中执行。因此,高计算能力和存储器容量可以用于分析第一图像。
步骤c)中的分析可以包括对第一图像进行滤波和卷积中的一项或多项。经训练模型可以包括至少一个面部识别模型。可以通过使用诸如FaceNet等面部识别系统来执行对第一图像的分析。因此,面部识别系统可以如以下文献中描述的那样进行设计:FlorianSchroff、Dmitry Kalenichenko、James Philbin的“FaceNet:A Unified Embedding forFace Recognition and Clustering[FaceNet:用于面部识别和聚类的统一嵌入]”,arXiv:1503.03832。
如本文所使用的术语“经训练模型”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于在至少一个训练数据集上训练的数学模型。经训练模型可以基于附加训练数据进行再训练和/或更新。经训练模型可以通过使用机器学习来训练。如本文所使用的术语“机器学习”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于使用人工智能(AI)来自动进行模型构建、特别是参数化模型的方法。可以通过使用机器学习、深度学习、神经网络或其他形式的人工智能中的一种或多种来参数化经训练模型。可以使用训练数据的记录来训练经训练模型。训练数据的记录可以包括训练输入数据和对应的训练输出数据。训练数据记录的训练输出数据可以在将同一训练数据记录的训练输入数据作为输入给予模型时预期由模型产生的结果。可以通过“损失函数”来观察和评定该预期结果与算法产生的实际结果之间的偏差。该损失函数可以用作调节模型参数的反馈。例如,可以对参数进行调整,其优化目标是使在将所有训练输入数据馈送到模型并将结果与对应的训练输出数据进行比较时使所得到的损失函数的值最小化。这种训练的结果可能是,给定相对少量的训练数据记录作为“基本事实”,该模型使得能够针对高出许多数量级的大量输入数据记录很好地执行其工作。因此,模型可以包括至少一种算法和模型参数。可以通过使用至少一个人工神经网络来生成模型的参数。
经训练模型可以包括至少一个卷积神经网络。例如,卷积神经网络可以如以下文献中描述的那样进行设计:M.D.Zeiler和R.Fergus,“Visualizing and understandingconvolutional networks[可视化和理解卷积网络]”,CoRR,abs/1311.2901,2013;或C.Szegedy等人,“Going deeper with convolutions[深入理解卷积]”,CoRR,abs/1409.4842,2014。有关面部识别系统的卷积神经网络的更多细节,请参考:FlorianSchroff、Dmitry Kalenichenko、James Philbin,“FaceNet:A Unified Embedding forFace Recognition and Clustering[FaceNet:用于面部识别和聚类的统一嵌入]”,arXiv:1503.03832。
可以使用来自图像数据库的带标记的图像数据作为训练数据。具体地,可以使用来自以下一个或多个文献中的经标记的面部:G.B.Huang、M.Ramesh、T.Berg和E.Learned-Miller,“Labeled faces in the wild:Adatabase for studying face recognition inunconstrained environments[人脸数据库:用于研究无约束环境中的面部识别的数据库]”,技术报告07-49,马萨诸塞大学阿默斯特分校,2007年10月;如以下文献中描述的Faces数据库,L.Wolf、T.Hassner和I.Maoz的“Face recognition inunconstrained videos with matched background similarity[利用匹配背景相似度在无约束视频中进行面部识别]”,IEEE国际计算机视觉与模式识别会议,2011;或/>面部表情比较数据集。卷积神经网络的训练可以如以下文献中描述的那样来执行:FlorianSchroff、Dmitry Kalenichenko、James Philbin,“FaceNet:A Unified Embedding forFace Recognition and Clustering[FaceNet:用于面部识别和聚类的统一嵌入]”,arXiv:1503.03832。
步骤c)中使用经训练模型进行分析的输出可以是多维向量。多维向量可以是嵌入,具体地是第一图像的低维表示。从第一图像确定作为经训练模型的输入的多维向量可以如以下文献中描述的那样来执行:Florian Schroff、Dmitry Kalenichenko、JamesPhilbin,“FaceNet:A Unified Embedding for Face Recognition and Clustering[FaceNet:用于面部识别和聚类的统一嵌入]”,arXiv:1503.03832。具体地,经训练模型可以从第一图像确定128个数字的向量。多维向量的条目可以是成像面部的特征。图像信息可以被嵌入和/或映射到多维向量中。图像信息可以是表征和/或定义第一图像的第一图像的任何参数。图像信息可以是允许与另一图像信息进行比较以验证人脸的相似度的信息。
多维向量被提供给可信执行环境。多维向量的提供可以通过使用常规执行环境与可信执行环境之间的至少一个接口来执行,特别是通过可信执行环境对常规执行环境的访问来执行。
在可信执行环境中,通过使用至少一个解码器根据多维向量来确定第二图像。第二图像可以是根据多维向量重构的图像。第二图像的确定可以包括解码器根据多维向量来重构用户面部的图像。如本文所使用的术语“解码器”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于可信执行环境的至少一个元件,其被配置用于根据嵌入、特别是根据多维向量来重构图像。这样的解码器及其工作原理对于本领域技术人员来说是公知的,例如,如papers.nips.cc/paper/2014/file/a14ac55a4f27472c5d894ec1c3c743d2-Paper.pdf中描述的。
该方法包括将第一图像与第二图像进行比较。该比较可以由处理器在可信执行环境中执行。该比较可以包括比较第一图像和第二图像的至少一个特征、特别是多个特征。用于比较的特征可以是预定义的。第一图像的特征和第二图像的特征基于相同的图像数据,但是这些特征是通过使用不同的算法而生成的。特别地,包含在多维向量中的特征由如上所述的面部识别算法确定。多维向量是根据第一图像确定的,该第一图像也保存在TEE中。另外地或可替代地,可以以相似度量度(例如逐像素地)将第一图像与第二图像进行比较。如果第一图像和第二图像相同,则多维向量通过验证。如本文所使用的术语“相同”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于至少在公差内相同。第一图像和第二图像可以在±30%、优选地±10%、更优选地±5%的公差范围内被认为是相同的。
如果多维向量通过验证,则将验证后的多维向量与可信执行环境中存储的用户面部的多维向量进行比较。否则,该过程可能会中止和/或重新启动。如果多维向量和存储的用户面部的多维向量相同,则用户通过认证。用户面部的多维向量可以存储在TEE的至少一个存储器中。如上所述,嵌入描述了可以相互比较的面部特征的数学表示,例如通过使用标量积。
在不安全的常规执行环境中执行图像分析可以允许使用常规执行环境的全部计算能力和存储器容量。通过与存储在可信执行环境中的第一图像进行比较来证明在常规执行环境中得到的图像分析的结果允许以增强的安全性对用户进行认证。
在另一方面中,披露了一种用于授权用户的方法。该方法包括执行根据本发明的用于认证移动设备的用户的方法。该方法进一步包括可信执行环境输出用于授权过程步骤的信号。该过程步骤包括支付、签署文档、访问移动设备、启用诸如BiometricPrompt和/或FIDO2 API等应用程序中的一项或多项,参见source.android.com/security/biometric/measure。
如本文所使用的术语“授权”是广义术语,并且将被赋予其对于本领域普通技术人员而言普通和常规的含义并且不限于特殊或自定义含义。该术语具体地可以是指但不限于向用户指派执行进一步过程步骤的许可的过程。
细节、选项和定义可以参考上文讨论的方法。
在另一方面中,提出了一种用于认证移动设备的用户的计算机程序,该计算机程序被配置用于当在计算机或计算机网络上执行时,使得该计算机或计算机网络完全或部分地执行根据本发明的用于认证用户的方法,其中,该计算机程序被配置用于至少进行和/或执行根据本发明的用于认证的方法的步骤a)至d)。类似地,披露了一种包括指令的计算机可读存储介质,当该程序由计算机或计算机网络执行时,这些指令使得该计算机或计算机网络执行根据本发明的用于认证的方法,比如根据上文披露的实施例中的任一项和/或下文进一步详细披露的实施例中的任一项的方法。如本文所使用的,术语“计算机可读存储介质”具体地可以是指非暂态数据存储装置,比如其上存储有计算机可执行指令的硬件存储介质。计算机可读数据载体或存储介质具体地可以是或可以包括诸如随机存取存储器(RAM)和/或只读存储器(ROM)等存储介质。
因此,具体地,如上所指示的方法步骤a)至d)中的一个、多于一个或者甚至所有都可以通过使用计算机或计算机网络、优选地通过使用计算机程序来执行。
本文进一步披露和提出了一种具有程序代码装置的计算机程序产品,以便当程序在计算机或计算机网络上执行时执行本文所包含的一个或多个实施例中的根据本发明的方法。具体地,程序代码装置可以存储在计算机可读数据载体和/或计算机可读存储介质上。
本文进一步披露和提出了一种其上存储有数据结构的数据载体,该数据载体在加载到计算机或计算机网络中(比如加载到计算机或计算机网络的工作存储器或主存储器中)之后,可以执行根据本文所披露的一个或多个实施例的方法。
本文进一步披露和提出了一种包括指令的非瞬态计算机可读介质,这些指令当由一个或多个处理器执行时,使得该一个或多个处理器执行根据本文所披露的一个或多个实施例的方法。
本文进一步披露和提出了一种计算机程序产品,其具有存储在机器可读载体上的程序代码装置,以便当该程序在计算机或计算机网络上执行时执行根据本文所披露的一个或多个实施例的方法。如本文所使用的,计算机程序产品是指作为可交易产品的程序。产品通常可以以任意格式存在,比如以纸质格式,或者存在于计算机可读数据载体和/或计算机可读存储介质上。具体地,计算机程序产品可以通过数据网络分布。
进一步地,本文披露和提出了一种调制数据信号,其包含计算机系统或计算机网络可读的指令,用于执行根据本文所披露的一个或多个实施例的方法。
具体地,本发明进一步披露了:
-一种计算机或计算机网络,其包括至少一个处理器,其中,该处理器适合于执行根据本说明书中描述的实施例之一的方法,
-一种计算机可加载数据结构,其适合于当在计算机上执行该数据结构时,执行根据本说明书中描述的实施例之一的方法,
-一种计算机程序,其中,该计算机程序适合于当在计算机上执行该程序时,执行根据本说明书中描述的实施例之一的方法,
-一种计算机程序,其包括用于当在计算机上或计算机网络上执行该计算机程序时执行根据本说明书中描述的实施例之一的方法的程序装置,
-一种计算机程序,其包括根据前述实施例的程序装置,其中,该程序装置存储在计算机可读的存储介质上,
-一种存储介质,其中,数据结构存储在该存储介质上,并且其中,该数据结构适合于在被加载到计算机或计算机网络的主存储设备和/或工作存储设备中之后执行根据本说明书中描述的实施例之一的方法,以及
-一种具有程序代码装置的计算机程序产品,其中,该程序代码装置可以存储在或被存储在存储介质上,用于当在计算机或计算机网络上执行该程序代码装置时执行根据本说明书中描述的实施例之一的方法。
在本发明的另一方面中,披露了一种用于授权移动设备的用户的计算机程序。该计算机程序包括指令,当该程序由计算机或计算机网络执行时,这些指令使得该计算机或计算机网络执行根据本发明的用于授权的方法,比如根据上文披露的实施例中的任一项和/或下文进一步详细披露的实施例中的任一项的方法。类似地,披露了一种包括指令的计算机可读存储介质,当该程序由计算机或计算机网络执行时,这些指令使得该计算机或计算机网络执行根据本发明的用于授权的方法,比如根据上文披露的实施例中的任一项和/或下文进一步详细披露的实施例中的任一项的方法。
在另一方面中,披露了一种移动设备。该移动设备包括至少一个相机以及至少一个处理器。该移动设备被配置用于至少执行根据本发明的用于认证的方法的步骤a)至d)和/或用于执行根据本发明的用于授权的方法,比如根据上文披露的实施例中的任一项和/或下文进一步详细披露的实施例中的任一项的方法。细节、选项和定义可以参考上文讨论的方法。
在本发明的另一方面中,提出了根据本发明(比如根据上文给出的或下文进一步详细给出的一个或多个实施例)的移动设备的用途,该用途用于选自由以下各项组成的组的使用目的:支付、签署文档、启用诸如BiometricPrompt和/或FIDO2 API等应用程序,参见source.android.com/security/biometric/measure。
总的来说,在本发明的上下文中,以下实施例被认为是优选的:
实施例1.一种用于认证移动设备的用户的方法,该方法包括以下步骤:
a)通过使用该移动设备的至少一个相机来成像面部的至少一个第一图像;
b)将该第一图像提供给该移动设备的处理器的常规执行环境,并将该第一图像提供给该处理器的可信执行环境;
c)使用该常规执行环境中的至少一个经训练模型来分析该第一图像,从而确定包括图像信息的多维向量;
d)面部验证步骤,包括:
di)向该可信执行环境提供该多维向量,
dii)在可信执行环境中通过使用至少一个解码器根据多维向量来确定第二图像,以及
diii)将该第一图像与该第二图像进行比较,其中,如果该第一图像和该第二图像相同,则该多维向量通过验证;
div)如果该多维向量通过验证,则将该验证后的多维向量与该可信执行环境中存储的用户面部的多维向量进行比较,其中,如果该多维向量和所存储的用户面部的多维向量相同,则该用户通过认证。
实施例2.根据前一实施例所述的方法,其中,该可信执行环境是与该常规执行环境隔离的执行环境。
实施例3.根据前一实施例所述的方法,其中,该可信执行环境通过物理隔离方法、基于硬件逻辑的隔离方法或密码隔离方法中的一种或多种与该常规执行环境隔离。
实施例4.根据前述实施例中任一项所述的方法,其中,该可信执行环境包括至少一种安全能力并且满足至少一种安全要求。
实施例5.根据前述实施例中任一项所述的方法,其中,经由常规路径将该第一图像提供给该常规执行环境,其中,该常规路径被配置用于允许由该常规执行环境和/或该可信执行环境内的软件进行访问。
实施例6.根据前述实施例中任一项所述的方法,其中,该第一图像经由安全路径被提供给该可信执行环境,其中,该安全路径被配置用于防止该第一图像被该常规执行环境内的任何软件导出和/或修改。
实施例7.根据前述实施例中任一项所述的方法,其中,该第二图像的确定包括该解码器根据该多维向量来重构该用户面部的图像。
实施例8.根据前述实施例中任一项所述的方法,其中,该经训练模型包括至少一个面部识别模型。
实施例9.根据前述实施例中任一项所述的方法,其中,该经训练模型包括至少一个卷积神经网络。
实施例10.根据前述实施例所述的方法,其中,步骤c)中的分析包括对该第一图像进行滤波和卷积中的一项或多项。
实施例11.一种用于授权用户的方法,其中,该方法包括执行根据前述实施例中任一项所述的用于认证移动设备的用户的方法,其中,该方法进一步包括该可信执行环境输出用于授权过程步骤的信号,其中,该过程步骤包括支付、签署文档、访问该移动设备、启用应用程序中的一项或多项。
实施例12.一种用于认证移动设备的用户的计算机程序,该计算机程序被配置用于当在计算机或计算机网络上执行时,使得该计算机或计算机网络完全或部分地执行根据与用于认证的方法相关的前述实施例中任一项所述的用于认证用户的方法,其中,该计算机程序被配置用于至少进行和/或执行根据与用于认证的方法相关的前述实施例中任一项所述的用于认证的方法的步骤a)至d)。
实施例13.一种用于授权移动设备的用户的计算机程序,该计算机程序被配置用于当在计算机或计算机网络上执行时,使得该计算机或该计算机网络完全或部分地执行根据实施例11的用于授权用户的方法。
实施例14.一种包括指令的计算机可读存储介质,这些指令当由计算机或计算机网络执行时,使得至少执行根据涉及与认证相关的方法的前述实施例中任一项所述的方法的步骤a)至d),和/或执行根据实施例11所述的用于授权用户的方法。
实施例15.一种移动设备,该移动设备包括至少一个相机和至少一个处理器,该移动设备被配置用于至少执行根据涉及用于认证的方法的前述实施例中任一项所述的用于认证的方法的步骤a)至d)和/或用于执行根据实施例11所述的用于授权的方法。
实施例16.根据前述实施例所述的移动设备用于支付、签署文档中的一项或多项的用途。
附图说明
根据下文结合从属权利要求对优选示例性实施例的描述,本发明的另外可选的细节和特征是明显的。在此上下文中,特定特征可以以单独的方式或与其他特征组合来实施。本发明不限于示例性实施例。示例性实施例在附图中示意性地示出。各个附图中相同的附图标记指的是相同的元件或具有相同功能的元件,或者在其功能方面彼此对应的元件。
具体来说,在附图中:
图1示出了用于认证移动设备的用户的方法的实施例;以及
图2示出了根据本发明的移动设备的实施例。
具体实施方式
图1示出了用于认证移动设备110的用户的方法的实施例的流程图。移动设备110可以是移动电子设备,更具体地是诸如蜂窝电话或智能电话等移动通信设备。另外地或可替代地,移动设备110还可以指平板计算机或其他类型的便携式计算机。
用户可以是使用移动设备110的人。图2高度示意性地示出了移动设备110的实施例。用户可以是移动设备110的所有者和/或以其他方式被授权的人。认证可以包括区分用户与其他人或对象、特别是区分授权访问与非授权访问。认证可以包括验证相应用户的身份和/或向用户指派身份。认证可以包括生成和/或提供身份信息,例如提供给其他设备或单元(比如,提供给至少一个授权单元)用于授权执行支付过程。身份信息可以通过认证来证明。例如,身份信息可以是和/或可以包括至少一个身份令牌。如果成功认证,则由移动设备110的相机112记录的面部图像可以被验证为用户面部的图像,和/或用户的身份通过验证。
该方法包括以下步骤:
a)(用附图标记114表示)通过使用移动设备110的至少一个相机112来成像面部的至少一个第一图像116;
b)(用附图标记118表示)将第一图像116提供给移动设备110的处理器122的常规执行环境120,并将第一图像116提供给处理器122的可信执行环境124;
c)(用附图标记126表示)使用常规执行环境120中的至少一个经训练模型来分析第一图像116,从而确定包括图像信息的多维向量;
d)(用附图标记128表示)面部验证步骤,包括:
di)(在图2中用箭头130表示)向可信执行环境124提供多维向量,
dii)在可信执行环境124中通过使用至少一个解码器132根据多维向量来确定第二图像,以及
diii)将第一图像116与第二图像进行比较,其中,如果第一图像116和第二图像相同,则多维向量通过验证;
div)如果多维向量通过验证,则将验证后的多维向量与可信执行环境124中存储的用户面部的多维向量进行比较,其中,如果多维向量和存储的用户面部的多维向量相同,则用户通过认证。
相机112可以具有至少一个成像元件,该成像元件被配置用于记录或捕获空间解析的一维、二维或甚至三维光学数据或信息。作为示例,相机112可以包括至少一个相机芯片,比如被配置用于记录图像的至少一个CCD芯片和/或至少一个CMOS芯片。例如,相机112可以是彩色相机,如下文将详细描述的,其包括至少三种颜色的像素。相机112可以是彩色CMOS相机。例如,相机112可以包括黑白像素和彩色像素。彩色像素和黑白像素可以在相机内部组合。相机可以包括至少一个彩色相机和至少一个黑白相机,比如黑白CMOS。相机112可以包括至少一个黑白CMOS芯片。相机112通常可以包括图像传感器(比如像素)的一维或二维阵列。
第一图像116可以是通过使用相机112成像的初始图像。第一图像116可以包括原始图像数据或者可以是预处理的图像。例如,预处理可以包括对原始图像数据应用至少一个滤波器和/或至少一个背景校正和/或至少一个背景减除。第一图像可以包括包含面部的场景。预处理可以包括执行面部检测和/或选择关注区域中的一项或多项。关注区域可以是手动确定的或者可以是比如通过识别第一图像内的特征来自动确定的。第一图像116的预处理可以由移动设备110的相机112和/或处理器122来执行。
常规执行环境120可以如以下文献中描述的那样进行设计:GlobalPlatform技术,TEE系统架构,版本1.2,2018年11月公开发布,文档引用:GPD_SPE_009,或www.qualcomm.com/media/documents/files/guard-your-data-with-the-qualcomm-snapdragon-mobile-platform.pdf,或www.arm.com/why-arm/technologies/trustzone-for-cortex-a/tee-reference-documentation。常规执行环境120可以是处理器的执行环境,其包括至少一个设备操作系统(OS)和/或富操作系统(Rich OS)以及处理器122的所有其他部件,特别是至少一个片上系统(SoC)、其他分立部件、固件和软件,这些被配置用于执行、托管和支持OS和/或Rich OS。SoC可以是其所有部件都包括在单个集成电路中的电子系统。常规执行环境122可以排除移动设备中包括的任何可信执行环境和安全元件(SE)。具体地,常规执行环境122可以是可信执行环境之外的任何东西。特别是由于OS和/或Rich OS的大小和需要,常规执行环境122可以在可信执行环境的硬件之外的执行环境中运行。常规执行环境122的物理安全性边界可能比可信执行环境的物理安全性边界低得多。因此,常规执行环境122可以被认为是不可信的。然而,常规执行环境122中可能会存在内部信任结构。
可信执行环境124可以如以下文献中描述的那样进行设计:GlobalPlatform技术,TEE系统架构,版本1.2,2018年11月公开发布,文档引用:GPD_SPE_009,或www.qualcomm.com/media/documents/files/guard-your-data-with-the-qualcomm-snapdragon-mobile-platform.pdf,或www.arm.com/why-arm/technologies/trustzone-for-cortex-a/tee-reference-documentation。可信执行环境124可以是包括至少一种安全能力并且满足至少一种安全要求的执行环境。可信执行环境124可以被配置用于保护可信执行环境124内的资产免受一般软件攻击。可信执行环境124可以被配置用于定义关于程序可以访问的数据和功能的严格保护措施。可信执行环境124可以被配置用于抵抗一组定义的威胁。已知有多种技术用于实施可信执行环境,并且所实现的安全性级别可以相应地变化。具体地,可信执行环境124可以满足如source.android.com/compatibility/11/android-11-cdd#7_3_10_biometric_sensors中所描述的安全要求。TEE 124可以以防止相机帧在TEE 124之外或具有到TEE 124的安全通道的芯片之外被读取或更改的模式来操作相机112,特别是当基于生物特征的认证或登记正在发生时。对于RGB单相机解决方案,相机帧可以在TEE 124之外可读,以支持诸如登记预览等操作,但可能仍然不可更改。TEE 124可能不允许对可识别的生物特征数据或由该生物特征数据导出到TEE 124的背景之外的处理器部分的任何数据(比如嵌入)进行未加密的访问。TEE 124可以具有安全的处理流水线,使得在操作系统或内核被破解时也无法直接注入数据以错误地认证为用户。TEE 124可以具有硬件支持的密钥库实施方式。TEE 124可以对所有可识别数据进行加密和密码认证,使得这些数据无法在TEE 124之外或具有到TEE 124的安全通道的芯片之外被获取、读取或更改。TEE 124可以通过让用户确认由TEE 124保护的现有设备凭证或添加新的设备凭证(例如,PIN和/或图案和/或密码)来防止在没有首先建立信任链的情况下添加新的生物特征。
可信执行环境124可以是与常规执行环境120隔离的执行环境。可信执行环境124可以通过物理隔离方法、基于硬件逻辑的隔离方法或密码隔离方法中的一种或多种与常规执行环境120隔离。具体地,可信执行环境124可以通过TEE系统硬件通过电子访问控制与常规执行环境120隔离,该TEE系统硬件可以由TEE常驻引导或运行时软件来配置。
第一图像116可以经由常规路径134提供给常规执行环境120。常规路径134可以是不可信路径。常规路径134可以被配置用于允许由常规执行环境120和/或可信执行环境124内的软件进行访问。第一图像116可以经由安全路径136被提供给可信执行环境124,其中,安全路径136可以被配置用于防止第一图像116被常规执行环境120内的任何软件导出和/或修改。
第一图像116的分析在常规执行环境120中执行。因此,高计算能力和存储器容量可以用于分析第一图像116。
步骤c)中的分析可以包括对第一图像116进行滤波和卷积中的一项或多项。经训练模型可以包括至少一个面部识别模型。可以通过使用诸如FaceNet等面部识别系统来执行对第一图像的分析。因此,面部识别系统可以如以下文献中描述的那样进行设计:Florian Schroff、Dmitry Kalenichenko、James Philbin的“FaceNet:A UnifiedEmbedding for Face Recognition and Clustering[FaceNet:用于面部识别和聚类的统一嵌入]”,arXiv:1503.03832。
经训练模型可以包括至少一个卷积神经网络。例如,卷积神经网络可以如以下文献中描述的那样进行设计:M.D.Zeiler和R.Fergus,“Visualizing and understandingconvolutional networks[可视化和理解卷积网络]”,CoRR,abs/1311.2901,2013;或C.Szegedy等人,“Going deeper with convolutions[深入理解卷积]”,CoRR,abs/1409.4842,2014。有关面部识别系统的卷积神经网络的更多细节,请参考:FlorianSchroff、Dmitry Kalenichenko、James Philbin,“FaceNet:A Unified Embedding forFace Recognition and Clustering[FaceNet:用于面部识别和聚类的统一嵌入]”,arXiv:1503.03832。
可以使用来自图像数据库的带标记的图像数据作为训练数据。具体地,可以使用来自以下一个或多个文献中的经标记的面部:G.B.Huang、M.Ramesh、T.Berg和E.Learned-Miller,“Labeled faces in the wild:Adatabase for studying face recognition inunconstrained environments[人脸数据库:用于研究无约束环境中的面部识别的数据库]”,技术报告07-49,马萨诸塞大学阿默斯特分校,2007年10月;如以下文献中描述的Faces数据库,L.Wolf、T.Hassner和I.Maoz的“Face recognition inunconstrained videos with matched background similarity[利用匹配背景相似度在无约束视频中进行面部识别]”,IEEE国际计算机视觉与模式识别会议,2011;或/>面部表情比较数据集。卷积神经网络的训练可以如以下文献中描述的那样来执行:FlorianSchroff、Dmitry Kalenichenko、James Philbin,“FaceNet:A Unified Embedding forFace Recognition and Clustering[FaceNet:用于面部识别和聚类的统一嵌入]”,arXiv:1503.03832。
步骤c)中使用经训练模型进行分析的输出可以是多维向量。多维向量可以是嵌入,具体地是第一图像的低维表示。从第一图像确定作为经训练模型的输入的多维向量可以如以下文献中描述的那样来执行:Florian Schroff、Dmitry Kalenichenko、JamesPhilbin,“FaceNet:A Unified Embedding for Face Recognition and Clustering[FaceNet:用于面部识别和聚类的统一嵌入]”,arXiv:1503.03832。具体地,经训练模型可以从第一图像确定128个数字的向量。多维向量的条目可以是成像面部的特征。图像信息可以被嵌入和/或映射到多维向量中。图像信息可以是表征和/或定义第一图像116的第一图像116的任何参数。图像信息可以是允许与另一图像信息进行比较以验证人脸的相似度的信息。图像信息可以是允许使用嵌入来重构第一图像116的信息。
多维向量被提供给可信执行环境124。多维向量的提供可以通过使用常规执行环境120与可信执行环境124之间的至少一个接口来执行,特别是通过可信执行环境124对常规执行环境120的访问来执行。
在可信执行环境124中,通过使用至少一个解码器132根据多维向量来确定第二图像。第二图像可以是根据多维向量重构的图像。第二图像的确定可以包括解码器132根据多维向量来重构用户面部的图像。解码器132可以是可信执行环境124的至少一个元件,其被配置用于根据嵌入、特别是根据多维向量来重构图像。这样的解码器132及其工作原理对于本领域技术人员来说是公知的,例如,如papers.nips.cc/paper/2014/file/a14ac55a4f27472c5d894ec1c3c743d2-Paper.pdf中描述的。
该方法包括将第一图像116与第二图像进行比较。该比较可以由处理器120在可信执行环境中执行。该比较可以包括比较第一图像116和第二图像的至少一个特征、特别是多个特征。用于比较的特征可以是预定义的。第一图像116的特征和第二图像的特征基于相同的图像数据,但是这些特征是通过使用不同的算法而生成的。特别地,包含在多维向量中的特征由如上所述的面部识别算法确定。多维向量是根据第一图像116确定的,该第一图像也保存在TEE中。另外地或可替代地,可以以相似度量度(例如逐像素地)将第一图像116与第二图像进行比较。如果第一图像和第二图像相同,则多维向量通过验证。
如果多维向量通过验证,则将验证后的多维向量与可信执行环境124中存储的用户面部的多维向量进行比较。否则,该过程可能会中止和/或重新启动。如果多维向量和存储的用户面部的多维向量相同,则用户通过认证。用户面部的多维向量可以存储在TEE 124的至少一个存储器中。如上所述,嵌入描述了可以相互比较的面部特征的数学表示,例如通过使用标量积。
如果多维向量通过验证,则将验证后的多维向量与可信执行环境中存储的用户面部的多维向量进行比较。否则,该过程可能会中止和/或重新启动。如果多维向量和存储的用户面部的多维向量相同,则用户通过认证。用户面部的多维向量可以存储在TEE的至少一个存储器中。如上所述,嵌入描述了可以相互比较的面部特征的数学表示,例如通过使用标量积。
如图1进一步所示,在执行用于认证的方法之后,可以执行授权步骤。可信执行环境124可以输出用于授权过程步骤(用附图标记138表示)的信号。该过程步骤包括支付、签署文档、访问移动设备110、启用诸如BiometricPrompt和/或FIDO2 API等应用程序中的一项或多项,参见source.android.com/security/biometric/measure。
在不安全的常规执行环境120中执行图像分析可以允许使用常规执行环境120的全部计算能力和存储器容量。通过与存储在可信执行环境124中的第一图像116进行比较来证明在常规执行环境120中得到的图像分析的结果允许以增强的安全性对用户进行认证。
附图标记清单
110 移动设备
112 相机
114 成像
116 第一图像
118 提供第一图像
120 常规执行环境
122 处理器
124 可信执行环境
126 分析第一图像
128 步骤d)
130 提供多维向量
132 解码器
134 常规路径
136 安全路径
138 输出用于授权过程步骤的信号

Claims (16)

1.一种用于认证移动设备(110)的用户的方法,该方法包括以下步骤:
a)(114)通过使用该移动设备(110)的至少一个相机(112)来成像面部的至少一个第一图像(116);
b)(118)将该第一图像(116)提供给该移动设备(110)的处理器(122)的常规执行环境(120),并将该第一图像(116)提供给该处理器(122)的可信执行环境(124);
c)(126)使用该常规执行环境(120)中的至少一个经训练模型来分析该第一图像(116),从而确定包括图像信息的多维向量;
d)(128)面部验证步骤,包括,
di)(130)向该可信执行环境(124)提供该多维向量,
dii)在该可信执行环境(124)中通过使用至少一个解码器(132)根据该多维向量来确定第二图像,以及
diii)将该第一图像(116)与该第二图像进行比较,其中,如果该第一图像和该第二图像相同,则该多维向量通过验证;
div)如果该多维向量通过验证,则将该验证后的多维向量与该可信执行环境(124)中存储的该用户面部的多维向量进行比较,其中,如果该多维向量和所存储的该用户面部的多维向量相同,则该用户通过认证。
2.根据前一项权利要求所述的方法,其中,该可信执行环境(124)是与该常规执行环境(120)隔离的执行环境。
3.根据前一项权利要求所述的方法,其中,该可信执行环境(124)通过物理隔离方法、基于硬件逻辑的隔离方法或密码隔离方法中的一种或多种与该常规执行环境(120)隔离。
4.根据前述权利要求中任一项所述的方法,其中,该可信执行环境(124)包括至少一种安全能力并且满足至少一种安全要求。
5.根据前述权利要求中任一项所述的方法,其中,该第一图像(116)经由常规路径(134)被提供给该常规执行环境(120),其中,该常规路径(134)被配置用于允许由该常规执行环境(120)和/或该可信执行环境(124)内的软件进行访问。
6.根据前述权利要求中任一项所述的方法,其中,该第一图像(116)经由安全路径(136)被提供给该可信执行环境(124),其中,该安全路径(136)被配置用于防止该第一图像(116)被该常规执行环境(120)内的任何软件导出和/或修改。
7.根据前述权利要求中任一项所述的方法,其中,该第二图像的确定包括该解码器(132)根据该多维向量来重构该用户面部的图像。
8.根据前述权利要求中任一项所述的方法,其中,该经训练模型包括至少一个面部识别模型。
9.根据前述权利要求中任一项所述的方法,其中,该经训练模型包括至少一个卷积神经网络。
10.根据前述权利要求所述的方法,其中,步骤c)中的分析(126)包括对该第一图像(116)进行滤波和卷积中的一项或多项。
11.一种用于授权用户的方法,其中,该方法包括执行根据前述权利要求中任一项所述的用于认证移动设备(110)的用户的方法,其中,该方法进一步包括该可信执行环境(124)输出用于授权过程步骤的信号,其中,该过程步骤包括支付、签署文档、访问该移动设备(110)、启用应用程序中的一项或多项。
12.一种用于认证移动设备(110)的用户的计算机程序,该计算机程序被配置用于当在计算机或计算机网络上执行时,使得该计算机或该计算机网络完全或部分地执行根据与用于认证的方法相关的前述权利要求中任一项所述的用于认证用户的方法,其中,该计算机程序被配置用于至少进行和/或执行根据与用于认证的方法相关的前述权利要求中任一项所述的用于认证的方法的步骤a)至d)。
13.一种用于授权移动设备(110)的用户的计算机程序,该计算机程序被配置用于当在计算机或计算机网络上执行时,使得该计算机或该计算机网络完全或部分地执行根据权利要求11所述的用于授权用户的方法。
14.一种包括指令的计算机可读存储介质,这些指令当由计算机或计算机网络执行时,使得至少执行根据涉及与认证相关的方法的前述权利要求中任一项所述的方法的步骤a)至d),和/或执行根据权利要求11所述的用于授权用户的方法。
15.一种移动设备(110),该移动设备包括至少一个相机(112)和至少一个处理器(122),该移动设备(110)被配置用于至少执行根据涉及用于认证的方法的前述权利要求中任一项所述的用于认证的方法的步骤a)至d)和/或用于执行根据权利要求11所述的用于授权的方法。
16.根据前一项权利要求所述的移动设备(110)用于支付、签署文档中的一项或多项的用途。
CN202280042478.3A 2021-06-15 2022-06-14 用于认证移动设备的用户的方法 Pending CN117501265A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP21179598.4 2021-06-15
EP21179598 2021-06-15
PCT/EP2022/066188 WO2022263452A1 (en) 2021-06-15 2022-06-14 Method for authenticating a user of a mobile device

Publications (1)

Publication Number Publication Date
CN117501265A true CN117501265A (zh) 2024-02-02

Family

ID=76483146

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280042478.3A Pending CN117501265A (zh) 2021-06-15 2022-06-14 用于认证移动设备的用户的方法

Country Status (4)

Country Link
EP (1) EP4356272A1 (zh)
KR (1) KR20240022487A (zh)
CN (1) CN117501265A (zh)
WO (1) WO2022263452A1 (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101214732B1 (ko) * 2010-03-09 2012-12-21 삼성전자주식회사 복수의 얼굴 영상을 이용한 얼굴 인식 장치 및 방법
CN105138973B (zh) 2015-08-11 2018-11-09 北京天诚盛业科技有限公司 人脸认证的方法和装置
US11361058B2 (en) 2017-12-29 2022-06-14 KeyLemon S.A. Method used in a mobile equipment with a trusted execution environment for authenticating a user based on his face
US11429712B2 (en) 2018-07-24 2022-08-30 Royal Bank Of Canada Systems and methods for dynamic passphrases

Also Published As

Publication number Publication date
WO2022263452A1 (en) 2022-12-22
KR20240022487A (ko) 2024-02-20
EP4356272A1 (en) 2024-04-24

Similar Documents

Publication Publication Date Title
JP6651565B2 (ja) バイオメトリックテンプレートセキュリティおよびキー生成
US11651623B2 (en) Methods and apparatus for outdoor access control using biometric verification
Kraetzer et al. Modeling attacks on photo-ID documents and applying media forensics for the detection of facial morphing
US10061910B2 (en) Secure biometric data capture, processing and management for selectively prohibiting access to a data storage component from an application execution environment
KR102294574B1 (ko) 딥러닝 기반의 얼굴인식모델을 이용하여 실물이미지를 판단할 수 있는 안면인식시스템
US11869272B2 (en) Liveness test method and apparatus and biometric authentication method and apparatus
US9245178B2 (en) Biological information obtaining apparatus and biological information collating apparatus
US11163984B2 (en) Methods and apparatus for constructing biometrical templates using facial profiles of users
US20100097177A1 (en) Electronic device and access controlling method thereof
US11163983B2 (en) Methods and apparatus for aligning sampling points of facial profiles of users
WO2020036710A1 (en) Methods and apparatus for facial recognition
US11017212B2 (en) Methods and apparatus for biometric verification
CN117501265A (zh) 用于认证移动设备的用户的方法
EP4085372A1 (en) Methods and apparatus for facial recognition
US11594072B1 (en) Methods and apparatus for access control using biometric verification
US11017214B1 (en) Methods and apparatus for biometric verification
US11017213B1 (en) Methods and apparatus for biometric verification
US20230037263A1 (en) Method and apparatus with access authority management
US20220294626A1 (en) Biometric credentials revocation or cancellable biometrics
Oke et al. Image Forgery Detection Using Cryptography and Deep Learning
KR101860227B1 (ko) 숨김 정보 및 사용자 인증 정보를 결합하여 사용자 인증을 수행하는 방법 및 장치
Siciarek et al. For your eyes only–biometric protection of pdf documents
AU2020233874A1 (en) Methods and apparatus for facial recognition
CN117238009A (zh) 一种人脸图像处理方法及装置
Bajaj A FLC based Fingerprint Matching Algorithm for Images Captured with Android Camera for enhanced Security of Online Transaction

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication