CN117749376A - 用户密钥生成方法、装置、设备、介质和产品 - Google Patents

用户密钥生成方法、装置、设备、介质和产品 Download PDF

Info

Publication number
CN117749376A
CN117749376A CN202311841419.5A CN202311841419A CN117749376A CN 117749376 A CN117749376 A CN 117749376A CN 202311841419 A CN202311841419 A CN 202311841419A CN 117749376 A CN117749376 A CN 117749376A
Authority
CN
China
Prior art keywords
key
user
target user
local
target
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
CN202311841419.5A
Other languages
English (en)
Inventor
赵飞华
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202311841419.5A priority Critical patent/CN117749376A/zh
Publication of CN117749376A publication Critical patent/CN117749376A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Collating Specific Patterns (AREA)

Abstract

本申请涉及一种用户密钥生成方法、装置、设备、介质和产品。所述方法包括:获取目标用户的脸部特征信息和目标用户对应的账户信息,然后根据脸部特征信息和账户信息生成目标用户对应的用户密钥。采用本方法能够降低密钥被暴力破解的风险,提升密钥安全性。

Description

用户密钥生成方法、装置、设备、介质和产品
技术领域
本申请涉及数据安全技术领域,特别是涉及一种用户密钥生成方法、装置、设备、介质和产品。
背景技术
随着硬件虚拟化技术的发展,终端设备可以将越来越多用户的业务数据上传至云端,以供用户实时上传和下载数据。在此情况下,保障用户隐私数据安全显得尤为重要,即除用户自身以外的其他任何第三方,例如包括云服务提供商,无法查看用户的隐私数据。
相关技术中,在对业务数据传输和存储时,通常依赖密钥对业务数据进行加解密,以避免业务数据被泄露,进而保障业务数据的安全性。一旦密钥被暴力破解,仍然会存在业务数据泄露风险。
基于此,如何提升密钥的安全性为亟待解决的技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种用户密钥生成方法、装置、设备、介质和产品,降低密钥被暴力破解的风险,提升密钥安全性。
第一方面,本申请提供了一种用户密钥生成方法,应用于终端设备,该方法包括:
获取目标用户的脸部特征信息;
获取目标用户对应的账户信息;
根据脸部特征信息和账户信息生成目标用户对应的用户密钥。
第二方面,本申请还提供了一种用户密钥生成装置,包括:
特征获取模块,用于获取目标用户的脸部特征信息;
账户获取模块,用于获取目标用户对应的账户信息;
密钥生成模块,用于根据脸部特征信息和账户信息生成目标用户对应的用户密钥。
第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述第一方面中任一项实施例中的方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面中任一项实施例中的方法的步骤。
第五方面,本申请还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面中任一项实施例中的方法的步骤。
上述用户密钥生成方法、装置、设备、介质和产品,终端设备首先获取目标用户的脸部特征信息和目标用户对应的账户信息,然后根据脸部特征信息和账户信息生成目标用户对应的用户密钥。该方法中,考虑到不同用户脸部特征信息之间的不可重复性和隐私性,将目标用户的脸部特征信息作为用户密钥的生成依据,以提升用户密钥的独特性和唯一性;将目标用户对应的账户信息作为用户密钥的生成依据,以提升用户密钥的复杂性。那么,根据脸部特征信息和账户信息生成的用户密钥,相当于同时兼备了独特性和复杂性,与传统技术中直接根据用户密码得到用户密钥的方式相比,本申请实施例中参与用户密钥生成的因素更多维也更隐私,生成的用户密钥也更复杂,被暴力破解的风险也就更低,在一定程度上提升了用户密钥的安全性。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中终端设备的内部结构图;
图2为一个实施例中用户密钥生成方法的流程示意图;
图3为另一个实施例中用户密钥生成方法的流程示意图;
图4为另一个实施例中用户密钥生成方法的流程示意图;
图5为另一个实施例中用户密钥生成方法的流程示意图;
图6为另一个实施例中用户密钥生成方法的流程示意图;
图7为另一个实施例中用户密钥生成方法的流程示意图;
图8为另一个实施例中用户密钥生成方法的流程示意图;
图9为另一个实施例中用户密钥生成方法的流程示意图;
图10为一个实施例中用户密钥装置的结构框图;
图11为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的用户密钥生成方法,可以应用于如图1所示的应用环境中。其中,服务器102通过网络与终端设备104进行通信,终端设备104与云端106进行数据传输。终端设备104可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。
随着硬件虚拟化技术的发展,终端设备可以将越来越多的用户业务数据上传至云端,以供用户实时上传和下载数据。在终端设备与云端进行数据传输的过程中,为保障用户的业务数据的安全性,通常是在业务数据传输至云端之前,对业务数据进行加密,以避免业务数据被泄露。
以端对端加密为例,端到端加密作为给用户业务数据上云,比如相册数据、通信录数据,并保障安全性和秘密性而使用的一种加密方案,具有以下特点:(1)基于用户密码,并结合用户其他信息进行派生得到用户密钥;(2)在对上云的业务数据密文进行解密时,需要用户提供用户密码,以便派生成一样用户密钥,并根据该用户密钥对业务数据密文进行解密,由于其他人没有用户密码,也就无法解密出业务数据密文对应的业务数据;(3)用户密码不上云,也就意味着,提供云服务的供应商也无法解密业务数据密文。
在终端设备不发生变化的情况下,终端设备随机生成业务密钥,并通过业务密钥对业务数据进行加密,得到业务数据密文并上传到云端,以供用户从云端下载业务数据密文,并基于业务密钥进行解密,得到业务数据。
在另一种场景中,考虑到用户的终端设备可能会发生变更,为保障用户可以在更换终端设备的场景下,还可以支持用户通过业务密钥对业务数据密文进行解密。终端设备还会根据用户密码派生得到的用户密钥,得到业务密钥密文,并将业务密钥密文上传至云端。这样一来,在终端设备发生变更的情况下,用户若需要在新的终端设备上对云端的业务数据密文进行解密,则需要找回初始的终端设备上生成的用户密钥,并根据该用户密钥对业务密钥密文进行解密,再利用解密得到的业务密钥对业务数据密文进行解密,得到业务数据。需要说明的是,用户密钥和业务密钥密文之间还可以包括多级中间密钥。
换言之,在新的终端设备上,如果不知道用户密码,则无法获取用户密钥,也就无法解密得到业务密钥,自然也就无法解密出业务数据。因此,业务数据的安全性需要由用户密钥进行保障,用户密钥的安全性通常取决于用户密钥的生成方式。
相关技术中,通常使用6位数密码或者锁屏密码作为用户密码,同时将派生逻辑和加密逻辑都下沉到可信执行环境(Trusted Execution Environment,TEE)侧,通过可信执行环境下的终端设备基于派生逻辑和加密逻辑,根据6位数的用户密钥生成用户密钥,以提高用户密钥的安全性。
然而,相关技术中用户常用的6位数密码,有100万种组合,容易被暴力破解,无法很好保障用户密钥的安全性。另外,即使将派生逻辑和加密逻辑下沉到TEE侧,受限于当前可信应用程序(Trusted Application,TA)没有加固措施,仍然无法保障算法安全性,导致用户密钥的安全性较低。
基于此,本申请实施例提供了一种用户密钥生成方法,通过目标用户的脸部特征信息和账户信息等多重因子,生成目标用户对应的用户密钥,利用目标用户脸部特征信息的唯一性和独特性,提升用户密钥的复杂度,降低用户密钥被暴力破解的风险,进而提升用户密钥的安全性。
下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
在一个示例性的实施例中,如图2所示,提供了一种用户密钥生成方法,本申请实施例以该方法应用于终端设备进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端设备和服务器的系统,并通过终端设备和服务器的交互实现。本申请实施例中,该方法包括以下步骤:
步骤201,获取目标用户的脸部特征信息。
其中,目标用户是指终端设备所服务的用户,目标用户的脸部特征信息是基于目标用户的脸部特征确定的,可以用字符串、数字、文本、图像等形式进行表征。
在实际应用中,终端设备与目标用户的关系为多对多的映射关系,即一个终端设备可以为一个或多个用户提供服务,一个用户也可以拥有一个或多个终端设备。为清楚简洁对用户密钥生成方法的技术方案进行说明,本申请实施例以一个终端设备对应一个目标用户为例进行说明。
终端设备可以具备拍摄功能,以采集目标用户的脸部图像。可选的,在可信执行环境中,响应于目标用户触发的终端设备启动指令或数据传输指令,终端设备采集目标用户的脸部图像,并基于脸部图像得到脸部特征信息。
终端设备除了实时拍摄得到目标用户的脸部特征信息以外,还可以在拍摄场景受限,比如光线较差、目标用户面部被遮挡等的情况下,从自身存储单元中提取目标用户的脸部特征信息。
则在一种场景中,终端设备具备存储单元,该存储单元保存有目标用户的脸部特征信息。在可信执行环境下,响应于目标用户触发的信息选择指令,终端设备从存储单元中提取目标用户的脸部特征信息。
步骤202,获取目标用户对应的账户信息。
其中,账户信息包括目标用户对应的账户的账户标识、账户注册地、账户认证名称、用户身份标识等信息。需要说明的是,本申请实施例中的账户信息是不可修改的,也就是说,目标用户在注册了账户之后,目标用户在该账户对应的账户信息固定不变。
实际场景中,终端设备上可以部署多个应用程序,比如相机相册、浏览器、备忘录等,不同应用程序承载目标用户不同类型的业务数据,且每个应用程序可以分别对应目标用户的一组账户信息。
可选的,响应于目标用户触发的目标应用程序登录指令,展示可视化操作界面,接着将用户在可视化操作界面上输入的信息作为目标用户对应的账户信息。
步骤203,根据脸部特征信息和账户信息生成目标用户对应的用户密钥。
在获取目标用户的脸部特征信息和账户信息的情况下,终端设备按照预设的派生逻辑,将脸部特征信息和账户信息进行融合,派生得到目标用户对应的用户密钥。
本申请实施例中,终端设备首先获取目标用户的脸部特征信息和目标用户对应的账户信息,然后根据脸部特征信息和账户信息生成目标用户对应的用户密钥。该方法中,考虑到不同用户脸部特征信息之间的不可重复性和隐私性,将目标用户的脸部特征信息作为用户密钥的生成依据,以提升用户密钥的独特性和唯一性;将目标用户对应的账户信息作为用户密钥的生成依据,以提升用户密钥的复杂性。那么,根据脸部特征信息和账户信息生成的用户密钥,相当于同时兼备了独特性和复杂性,与传统技术中直接根据用户密码得到用户密钥的方式相比,本申请实施例中参与用户密钥生成的因素更多维也更隐私,生成的用户密钥也更复杂,被暴力破解的风险也就更低,在一定程度上提升了用户密钥的安全性。
目标用户的脸部特征信息作为生物信息,具有独特性和唯一性。本申请实施例中,在能够准确表征目标用户身份的情况下,可以将目标用户的全脸特征信息或定位置的局部特征信息,确定为脸部特征信息。下面则通过一个实施例,对脸部特征信息的一种可实现获取方式进行说明。
在一个示例性的实施例中,如图3所示,获取目标用户的脸部特征信息,包括:
步骤301,分别获取目标用户脸部的不同局部区域的局部特征信息。
目标用户脸部包括多个局部区域,比如眼睛、眉毛、鼻子、嘴巴、脸型等。对于任一局部区域,又可以细分为多种类型,比如眼睛有杏眼、丹凤眼、细长眼等类型;鼻子有翘头鼻、鹰钩鼻、蒜头鼻等类型。
对于目标用户脸部的每一局部区域,根据局部区域的类型,确定局部特征值,并将局部特征值作为该局部区域的局部特征信息。本申请实施例,对局部特征信息的获取方式不作限制。
例如,将目标用户的脸部图像输入至特征识别模型中,通过特征识别模型对脸部图像上不同局部区域依次进行分类识别,获取不同局部区域的局部特征信息。
步骤302,根据各局部特征信息确定脸部特征信息。
按照预设的排序规则,将各局部特征信息进行组合,得到脸部特征信息。
示例性的,目标用户的眼睛的局部特征信息为11、眉毛的局部特征信息为21、鼻子的局部特征信息为32、嘴巴的局部特征信息为45、脸型的局部特征信息为64,那么按照“眼睛、眉毛、鼻子、嘴巴、脸型”的排序规则,得到的脸部特征信息为“1121324564”。
本申请实施例中,以目标用户脸部的不同局部区域的局部特征信息为依据,确定脸部特征信息,相当于将目标用户脸部特征进行细分,得到不同局部区域的局部特征信息,以更精细化的脸部特征信息表征目标用户,提升脸部特征信息的独特性。
前述实施例中对局部特征信息的获取方式不作限制,意味着终端设备可以采用不同的特征采集方式来获取局部特征信息。基于此,下面通过一个实施例,对局部特征信息的一种获取方式进行说明。
在一个示例性的实施例中,如图4所示,分别获取目标用户脸部的不同局部区域的局部特征信息,包括:
步骤401,获取目标用户脸部的各个局部区域的局部区域图像。
终端设备可以部署有区域识别模型,在采集到目标用户的全脸图像之后,将全脸图像输入至区域识别模型,通过区域识别模型对全脸图像上不同区域进行识别并划分,输出目标用户脸部的各个局部区域的局部区域图像。
步骤402,根据各局部区域图像对各局部区域进行特征分类处理,得到各局部区域对应的脸部特征类型。
终端设备还可以部署有不同局部区域的局部特征分类模型,用于对局部区域进行特征分类,每一类局部区域对应一个局部特征分类模型。
例如眼睛特征分类模型,用于对眼部区域图像进行分类,输出杏眼,或丹凤眼,或细长眼等眼部特征类型;鼻子特征分类模型,用于对鼻部区域图像进行分类,输出翘头鼻,或鹰钩鼻,或蒜头鼻等鼻部特征类型。
终端设备将各局部区域图像输入至对应的局部特征分类模型,由于各局部特征分类模型的处理过程互相独立,终端设备可以同时得到各局部区域对应的各脸部特征类型。
请参见图5,图5为终端设备在可信执行环境下,获取脸部特征类型的流程示意图,包括:
步骤501,利用安全相机采集目标用户的脸部图像。
步骤502,对脸部图像进行特征计算。
步骤503,根据脸部图像的计算结果,得到人脸特征模板。
步骤504,保存人脸特征模板。
步骤505,对脸部图像进行区域识别,获取各个局部区域的局部区域图像。
步骤506,根据各局部区域图像对各局部区域进行特征分类处理,得到各局部区域对应的脸部特征类型。
步骤507,保存各局部区域对应的脸部特征类型。
步骤508,结束。
本申请实施例中,人脸特征模板用于对目标用户进行人脸认证,以保证用户合法性和一致性,各局部区域对应的脸部特征类型,用于生成目标用户的脸部特征值,也就是目标用户的脸部特征信息。
步骤403,根据各局部区域对应的脸部特征类型确定各局部区域的局部特征信息。
其中,各局部区域对应的脸部特征类型为文本信息,各局部区域的局部特征信息为数据信息。
对于任一局部区域,终端设备可以按照预设的转换逻辑,将脸部特征类型转换为对应的局部特征信息,也可以基于脸部特征类型随机生成一个对应的局部特征信息。
本申请实施例中,首先对脸部进行识别,得到局部区域图像,接着对各局部区域图像中的局部区域进行特征分类处理,得到脸部特征类型,进而确定各脸部特征类型的局部特征信息,相当于是对目标用户的脸部区域依次进行区域划分、类型判断和量化评估处理,这样的处理过程逻辑分明,易于实现,在提升局部特征信息多样性有效性的同时,适用于部署在各种轻量化终端设备上。
下面通过一个实施例,对前述实施例步骤403中终端设备确定局部特征信息的另一种实现方式进行说明。则在一个示例性的实施例中,根据各局部区域对应的脸部特征类型确定各局部区域的局部特征信息,包括:
对于各局部区域,根据局部区域对应的脸部特征类型以及目标对应关系确定局部区域的目标特征值,并将目标特征值作为局部区域的局部特征信息。
其中,目标对应关系包括不同局部区域的脸部特征类型对应的特征值。
以一个局部区域为例,对确定局部特征信息的方式进行说明:在获取局部区域的脸部特征类型的情况下,终端设备从目标对应关系中查询与该脸部特征类型对应的特征值,并将该特征值确定为目标特征值,即局部区域的局部特征信息。
由于目标对应关系包括不同局部区域的脸部特征类型对应的特征值,终端设备可以遍历目标对应关系,一次性同时获取各局部区域的局部特征信息。
本申请实施例中,考虑到人脸识别无法输出稳定特征值的问题,终端设备以目标对应关系为依据,将脸部特征类型转换成稳定的目标特征值。并且,目标对应关系包括不同局部区域地脸部特征类型对应的特征值,可以适应对不同目标用户进行识别的场景,以快速确定出各局部区域的脸部特征类型对应的局部特征信息。
在实际应用中,目标对应关系可以预先存储在终端设备的存储单元中,利于终端设备快速获取局部特征信息,提升用户密钥的生成速度;也可以通过终端设备与服务器之间的交互,实时获取局部特征信息,以减轻终端设备的存储负担。则在一个示例性的实施例中,该方法还包括:
接收服务器发送的目标对应关系,其中,目标对应关系中的特征值是服务器随机生成的。
终端设备可以在获取目标用户的脸部特征信息之前,向服务器发送目标对应关系的请求指令,以指示服务器随机生成包括不同特征值的目标对应关系,并将目标对应关系发送至终端设备。
需要说明的是,为最大程度区分不同目标用户的局部特征信息,对于不同的目标用户,即使目标用户同一局部区域的脸部特征类型相同,服务器生成的特征值也是不同的。
本申请实施例中,通过终端设备与服务器之间进行交互,获取目标对应关系,以减轻终端设备的计算和存储负担。并且,由服务器随机生成目标对应关系的特征值,以最大程度区分不同目标用户的局部特征信息。
在用户密钥的生成过程中,需要脸部特征信息和账户信息两类信息作为依据,以提升用户密钥的多样性和复杂度。前述实施例对脸部特征信息的具体内容和获取方式进行了说明,下面对账户信息的具体内容和获取方式作进一步说明。
在一个示例性的实施例中,获取目标用户对应的账户信息,包括:
获取所述目标用户对应的账户的账户标识和注册地;和/或,获取所述目标用户对应的账户的认证名称和身份标识。
其中,账户标识和注册地是目标用户在账户注册过程中生成的,换言之,上述信息为固定账户信息,每一目标用户的账户均对应有账户标识和注册地。
认证姓名和身份标识是目标用户在账户注册过程中,进行身份实名认证得到的。在实际应用场景中,身份实名认证过程通常是作为一种辅助账户注册的方式,也就是说,目标用户对应的账户的认证名称和身份标识存在与否,取决于目标用户是否进行身份实名认证。
在目标用户执行身份实名认证步骤的情况下,目标用户对应的账户信息中包括账户的账户标识、注册地、认证名称和身份标识。
在目标用户未执行身份实名认证步骤的情况下,目标用户对应的账户信息中包括账户的账户标识和注册地。
本申请实施例中,终端设备在生成用户密钥之前,判断目标用户是否执行身份实名认证,若是,则获取目标用户对应的账户的账户标识、注册地、认证名称和身份标识,并将上述四种信息作为账户信息;若否,则获取目标用户对应的账户的账户标识和注册地,并将上述两种信息作为账户信息。
本申请实施例中,考虑到目标用户在实际场景中可能进行身份实名验证,也可能不需要进行身份实名验证的情况,将账户信息划分为两类,分别是账户标识和注册地这一类固定账户信息,以及认证名称和身份标识这一类附属账户信息,以保障终端设备在不同场景下均能够获取账户信息,且在用户执行身份实名验证的场景下,尽可能提升账户信息的丰富性和多样性,进而提升根据账户信息确定用户密钥的复杂性。
在确定脸部特征信息和账户信息的基础上,可以利用多种派生逻辑,将上述信息进行编码得到用户密钥。基于此,下面通过一个实施例,对用户密钥的一种可实现生成方式进行说明。
在一个示例性的实施例中,根据脸部特征信息和账户信息生成目标用户对应的用户密钥,包括:
利用慢速哈希算法对脸部特征信息和账户信息进行密钥生成运算,以得到用户密钥。
通过慢速哈希算法,设置脸部特征信息和账户信息进行密钥生成运算的次数,并将最后一次运算的结果确定为用户密钥,在不影响用户体验的条件下,尽可能延长密钥生成时间,有效增加暴力破解的耗时。
以用户密钥有10万种不同的值为例,在每次计算用户密钥耗时1秒的条件下,由于正常使用时只计算一次,基本不影响用户体验,但如果进行暴力破解,穷举所有可能值需要超过3000年,远超攻击者可以接受的时间。
在另一种场景中,终端设备除了获取脸部特征信息和账户信息之外,还可以获取用户密码,然后再基于慢速哈希算法设置迭代次数,并按照迭代次数对脸部特征信息、账户信息和用户密码执行多轮密钥生成运算,并将最后一次运算的结果确定为用户密钥。其中,用户密码是目标用户的专用密码,具有可复用,比如目标用户登录终端设备时设置的锁屏密码。
本申请实施例中,在进行用户密钥计算时,引入慢速哈希算法,延长会话密钥的生成时间,在保证目标用户正常登录的同时,增加用户密钥被暴力破解的耗时,提升用户密钥的安全性。
在实际应用场景中,为了提升业务数据的安全性,还可以在用户密钥和业务密钥密文之间设置包括多级中间密钥,比如主密钥,以避免用户在其他设备上登录的场景下,业务密钥密文被用户密钥轻易破解。则在一个示例性的实施例中,如图6所示,该方法还包括:
步骤601,生成目标用户对应的主密钥。
终端设备按照预设的字节长度,随机生成固定长度的字符串,作为目标用户对应的主密钥。以字节长度为32字节为例,生成32字节的主密钥。
步骤602,利用用户密钥对主密钥进行加密,以得到主密钥密文。
按照预设的加密算法,基于用户密钥对主密钥进行加密,得到主密钥对应的主密钥密文。其中,用户密钥为对称密钥,也就意味着,用户密钥还可以用于对主密钥密文进行解密得到主密钥。
步骤603,将主密钥密文发送至密钥存储服务器进行存储,其中,密钥存储服务器中存储的主密钥密文用于供目标用户登录的其他设备基于主密钥密文恢复得到主密钥。
终端设备将主密钥密文发送至云端的密钥存储服务器中进行存储,以供目标用户登录的其他设备基于主密钥密文恢复得到主密钥。
在一个示例性的实施例中,基于主密钥密文恢复得到主密钥的过程包括:
在目标用户脸部验证通过的情况下,获取目标用户对应的用户密钥,并根据用户密钥对主密钥密文进行解密,恢复得到主密钥。
目标用户在登录其他设备的情况下,其他设备首先对目标用户的脸部进行验证,并在验证通过的情况下,获取目标用户的脸部特征信息和账户信息,并根据脸部特征信息和账户信息生成用户密钥,接着从密钥存储服务器中获取主密钥密文,并根据用户密钥对主密钥密文进行解密,恢复得到主密钥。
本申请实施例中,将基于用户密钥对主密钥进行加密得到的主密钥密文存储至云端的密钥存储服务器上,以支持目标用户在登录其他设备的情况下,仍然可以通过用户密钥对主密钥密文进行解密,恢复得到主密钥,实现同一目标用户跨设备登录终端设备。
请参见图7,图7为终端设备在可信执行环境下,生成主密钥的流程示意图。
步骤701,对目标用户的脸部进行认证。
步骤702,在人脸认证通过的情况下,获取不同局部区域的脸部特征类型。
步骤703,根据脸部特征类型和服务器发送的目标对应关系,确定目标用户的局部特征信息。
步骤704,采用慢速哈希算法,根据局部特征信息、账户密码和账户标识,生成目标用户对应的用户密钥。
步骤705,利用随机数生成目标用户的主密钥。
步骤706,根据用户密钥对主密钥进行加密,得到主密钥密文。
步骤707,将主密钥密文存储至云端的密钥存储服务器进行存储。
对应的,图8为其他设备在可信执行环境下,恢复主密钥的流程示意图。
步骤801,对目标用户的脸部进行认证。
步骤802,在人脸认证通过的情况下,获取不同局部区域的脸部特征类型。
步骤803,根据脸部特征类型和服务器发送的目标对应关系,确定目标用户的局部特征信息。
步骤804,采用慢速哈希算法,根据局部特征信息、账户密码和账户标识,生成目标用户对应的用户密钥。
步骤805,根据用户密钥对主密钥密文进行解密,得到主密钥。
本申请实施例中,其他终端设备恢复主密钥的流程同样需要先进行人脸注册,注册过程和上述主密钥创建过程一致。然后向服务器查询用户是否曾经开通过,如果已经开通,执行人脸验证,保证操作合法性和一致性。然后服务器取回为用户分配的人脸特征类型对应的值,并根据特征分类结果计算出人脸特征值。最后,根据人脸特征值、用户密码和用户其他固定信息进行慢速哈希计算,得到用户密钥,将密钥管理服务器返回的主密钥密文进行解密得到主密钥。
下面通过一个实施例,对主密钥和业务密钥的关系进行说明。则在一个示例性的实施例中,如图9所示,该方法还包括:
步骤901,生成业务数据的业务密钥。
终端设备按照业务数据的标识,随机生成固定长度的字符串,作为业务数据的业务密钥。
步骤902,基于主密钥对业务密钥进行加密,得到业务密钥密文。
按照预设的加密算法,基于主密钥对业务密钥进行加密,得到业务密钥对应的业务密钥密文。其中,主密钥为对称密钥,也就意味着,主密钥还可以用于对业务密钥密文进行解密得到业务密钥。
步骤903,将业务密钥密文发送至密钥存储服务器进行存储,其中,密钥存储服务器中存储的业务密钥密文用于供目标用户登录的其他设备基于业务密钥密文恢复得到业务密钥。
在一个示例性的实施例中,基于业务密钥密文恢复得到业务密钥的过程包括:
根据主密钥对业务密钥密文进行解密,恢复得到业务密钥。
根据用户密钥对主密钥密文进行解密,恢复得到主密钥,然后根据主密钥对业务密钥密文进行解密,恢复得到业务密钥。进一步,其他设备就可以基于恢复得到的业务密钥对业务数据密文进行解密,得到业务数据。
本申请实施例中,将基于主密钥对业务密钥进行加密得到的业务密钥密文存储至云端的密钥存储服务器上,以支持目标用户在登录其他设备的情况下,仍然可以通过用户密钥恢复主密钥,并通过主密钥恢复业务密钥,最后通过业务密钥恢复业务数据,实现同一目标用户跨设备获取业务数据。
在一个示例性的实施例中,提供了一种用户密钥生成方法,应用于终端设备,该方法包括:
(1)获取目标用户脸部的各个局部区域的局部区域图像。
(2)根据各局部区域图像对各局部区域进行特征分类处理,得到各局部区域对应的脸部特征类型。
(3)接收服务器发送的目标对应关系。
其中,目标对应关系中的特征值是服务器随机生成的。
(4)对于各局部区域,根据局部区域对应的脸部特征类型以及目标对应关系确定局部区域的目标特征值,并将目标特征值作为局部区域的局部特征信息。
其中,目标对应关系包括不同局部区域的脸部特征类型对应的特征值。
(5)根据各局部特征信息确定脸部特征信息。
(6)获取目标用户对应的账户的账户标识、注册地、认证名称和身份标识。。
(7)利用慢速哈希算法,对脸部特征信息、账户标识、注册地、认证名称和身份标识进行密钥生成运算,以得到用户密钥。
(8)生成目标用户对应的主密钥。
(9)利用用户密钥对主密钥进行加密,以得到主密钥密文。
(10)将主密钥密文发送至密钥存储服务器进行存储。
其中,密钥存储服务器中存储的主密钥密文用于供目标用户登录的其他设备基于主密钥密文恢复得到主密钥。
其他设备在目标用户脸部验证通过的情况下,获取目标用户对应的用户密钥,并根据用户密钥对主密钥密文进行解密,恢复得到主密钥。
(11)生成业务数据的业务密钥。
(12)基于主密钥对业务密钥进行加密,得到业务密钥密文。
(13)将业务密钥密文发送至密钥存储服务器进行存储。
其中,密钥存储服务器中存储的业务密钥密文用于供目标用户登录的其他设备基于业务密钥密文恢复得到业务密钥。
其中,其他设备基于业务密钥密文恢复得到业务密钥的过程包括:
根据主密钥对业务密钥密文进行解密,恢复得到业务密钥。
本申请实施例中,终端设备首先获取目标用户的脸部特征信息和目标用户对应的账户信息,然后根据脸部特征信息和账户信息生成目标用户对应的用户密钥。该方法中,考虑到不同用户脸部特征信息之间的不可重复性和隐私性,将目标用户的脸部特征信息作为用户密钥的生成依据,以提升用户密钥的独特性和唯一性;将目标用户对应的账户信息作为用户密钥的生成依据,以提升用户密钥的复杂性。那么,根据脸部特征信息和账户信息生成的用户密钥,相当于同时兼备了独特性和复杂性,与传统技术中直接根据用户密码得到用户密钥的方式相比,本申请实施例中参与用户密钥生成的因素更多维也更隐私,生成的用户密钥也更复杂,被暴力破解的风险也就更低,在一定程度上提升了用户密钥的安全性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的用户密钥生成方法的用户密钥生成装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个用户密钥生成装置实施例中的具体限定可以参见上文中对于用户密钥生成方法的限定,在此不再赘述。
在一个示例性的实施例中,如图10所示,提供了一种用户密钥生成装置1000,包括:特征获取模块1001、账户获取模块1002和密钥生成模块1003,其中:
特征获取模块1001,用于获取目标用户的脸部特征信息;
账户获取模块1002,用于获取目标用户对应的账户信息;
密钥生成模块1003,用于根据脸部特征信息和账户信息生成目标用户对应的用户密钥。
在一个示例性的实施例中,特征获取模块1001,包括:局部获取单元和信息确定单元,其中:
局部获取单元,用于分别获取目标用户脸部的不同局部区域的局部特征信息;
信息确定单元,用于根据各局部特征信息确定脸部特征信息。
在一个示例性的实施例中,局部获取单元,包括:第一获取子单元、第二获取子单元和第三获取子单元,其中:
第一获取子单元,用于获取目标用户脸部的各个局部区域的局部区域图像;
第二获取子单元,用于根据各局部区域图像对各局部区域进行特征分类处理,得到各局部区域对应的脸部特征类型;
第三获取子单元,用于根据各局部区域对应的脸部特征类型确定各局部区域的局部特征信息。
在一个示例性的实施例中,第三获取子单元,还用于对于各局部区域,根据局部区域对应的脸部特征类型以及目标对应关系确定局部区域的目标特征值,并将目标特征值作为局部区域的局部特征信息。
在一个示例性的实施例中,用户密钥生成装置1000,还包括:关系接收模块,该模块用于接收服务器发送的目标对应关系,其中,目标对应关系中的特征值是服务器随机生成的。
在一个示例性的实施例中,账户获取模块1002,包括注册信息获取单元和认证信息获取单元,其中:
注册信息获取单元,用于获取目标用户对应的账户的账户标识和注册地;
认证信息获取单元,用于获取目标用户对应的账户的认证名称和身份标识。
在一个示例性的实施例中,密钥生成模块1003,还用于利用慢速哈希算法对脸部特征信息和账户信息进行密钥生成运算,以得到用户密钥。
在一个示例性的实施例中,用户密钥生成装置1000,还包括:主密钥生成模块、主密钥加密模块和主密钥存储模块,其中:
主密钥生成模块,用于生成目标用户对应的主密钥;
主密钥加密模块,用于利用用户密钥对主密钥进行加密,以得到主密钥密文;
主密钥存储模块,用于将主密钥密文发送至密钥存储服务器进行存储,其中,密钥存储服务器中存储的主密钥密文用于供目标用户登录的其他设备基于主密钥密文恢复得到主密钥。
在一个示例性的实施例中,主密钥存储模块,还用于在目标用户脸部验证通过的情况下,获取目标用户对应的用户密钥,并根据用户密钥对主密钥密文进行解密,恢复得到主密钥。
在一个示例性的实施例中,用户密钥生成装置1000,还包括:业务密钥生成模块、业务密钥加密模块和业务密钥存储模块,其中:
业务密钥生成模块,用于生成业务数据的业务密钥;
业务密钥加密模块,用于基于主密钥对业务密钥进行加密,得到业务密钥密文;
业务密钥存储模块,用于将业务密钥密文发送至密钥存储服务器进行存储,其中,密钥存储服务器中存储的业务密钥密文用于供目标用户登录的其他设备基于业务密钥密文恢复得到业务密钥。
在一个示例性的实施例中,业务密钥存储模块,还用于根据主密钥对业务密钥密文进行解密,恢复得到业务密钥。
上述用户密钥生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个示例性的实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图11所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种用户密钥生成方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个示例性的实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
本申请实施例中处理器实现的各步骤,其实现原理和技术效果与上述信号检测方法的原理类似,在此不再赘述。
在一个示例性的实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本申请实施例中计算机程序被处理器执行时实现的各步骤,其实现原理和技术效果与上述信号检测方法的原理类似,在此不再赘述。
在一个示例性的实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
本申请实施例中计算机程序被处理器执行时实现的各步骤,其实现原理和技术效果与上述信号检测方法的原理类似,在此不再赘述。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要符合相关规定。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (15)

1.一种用户密钥生成方法,其特征在于,应用于终端设备,所述方法包括:
获取目标用户的脸部特征信息;
获取所述目标用户对应的账户信息;
根据所述脸部特征信息和所述账户信息生成所述目标用户对应的用户密钥。
2.根据权利要求1所述的方法,其特征在于,所述获取目标用户的脸部特征信息,包括:
分别获取所述目标用户脸部的不同局部区域的局部特征信息;
根据各所述局部特征信息确定所述脸部特征信息。
3.根据权利要求2所述的方法,其特征在于,所述分别获取所述目标用户脸部的不同局部区域的局部特征信息,包括:
获取所述目标用户脸部的各个局部区域的局部区域图像;
根据各所述局部区域图像对各所述局部区域进行特征分类处理,得到各所述局部区域对应的脸部特征类型;
根据各所述局部区域对应的脸部特征类型确定各所述局部区域的局部特征信息。
4.根据权利要求3所述的方法,其特征在于,所述根据各所述局部区域对应的脸部特征类型确定各所述局部区域的局部特征信息,包括:
对于各所述局部区域,根据所述局部区域对应的脸部特征类型以及目标对应关系确定所述局部区域的目标特征值,并将所述目标特征值作为所述局部区域的局部特征信息;
其中,所述目标对应关系包括不同局部区域的脸部特征类型对应的特征值。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
接收服务器发送的所述目标对应关系,其中,所述目标对应关系中的特征值是所述服务器随机生成的。
6.根据权利要求1所述的方法,其特征在于,所述获取所述目标用户对应的账户信息,包括:
获取所述目标用户对应的账户的账户标识和注册地;和/或,
获取所述目标用户对应的账户的认证名称和身份标识。
7.根据权利要求1所述的方法,其特征在于,所述根据所述脸部特征信息和所述账户信息生成所述目标用户对应的用户密钥,包括:
利用慢速哈希算法对所述脸部特征信息和所述账户信息进行密钥生成运算,以得到所述用户密钥。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
生成所述目标用户对应的主密钥;
利用所述用户密钥对所述主密钥进行加密,以得到主密钥密文;
将所述主密钥密文发送至密钥存储服务器进行存储,其中,所述密钥存储服务器中存储的主密钥密文用于供所述目标用户登录的其他设备基于所述主密钥密文恢复得到所述主密钥。
9.根据权利要求8所述的方法,其特征在于,所述基于所述主密钥密文恢复得到所述主密钥的过程包括:
在所述目标用户脸部验证通过的情况下,获取所述目标用户对应的用户密钥,并根据所述用户密钥对所述主密钥密文进行解密,恢复得到所述主密钥。
10.根据权利要求8所述的方法,其特征在于,所述方法还包括:
生成业务数据的业务密钥;
基于所述主密钥对所述业务密钥进行加密,得到业务密钥密文;
将所述业务密钥密文发送至所述密钥存储服务器进行存储,其中,所述密钥存储服务器中存储的业务密钥密文用于供所述目标用户登录的其他设备基于所述业务密钥密文恢复得到所述业务密钥。
11.根据权利要求10所述的方法,其特征在于,所述基于所述业务密钥密文恢复得到所述业务密钥的过程包括:
根据所述主密钥对所述业务密钥密文进行解密,恢复得到所述业务密钥。
12.一种用户密钥生成装置,其特征在于,所述装置包括:
特征获取模块,用于获取目标用户的脸部特征信息;
账户获取模块,用于获取所述目标用户对应的账户信息;
密钥生成模块,用于根据所述脸部特征信息和所述账户信息生成所述目标用户对应的用户密钥。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11中任一项所述的方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
15.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
CN202311841419.5A 2023-12-28 2023-12-28 用户密钥生成方法、装置、设备、介质和产品 Pending CN117749376A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311841419.5A CN117749376A (zh) 2023-12-28 2023-12-28 用户密钥生成方法、装置、设备、介质和产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311841419.5A CN117749376A (zh) 2023-12-28 2023-12-28 用户密钥生成方法、装置、设备、介质和产品

Publications (1)

Publication Number Publication Date
CN117749376A true CN117749376A (zh) 2024-03-22

Family

ID=90283266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311841419.5A Pending CN117749376A (zh) 2023-12-28 2023-12-28 用户密钥生成方法、装置、设备、介质和产品

Country Status (1)

Country Link
CN (1) CN117749376A (zh)

Similar Documents

Publication Publication Date Title
US11310058B2 (en) Methods for digitally signing an electronic file and authentication method
US11323272B2 (en) Electronic identification verification methods and systems with storage of certification records to a side chain
US10411907B2 (en) Secure remote user authentication leveraging public key cryptography and key splitting
WO2020177392A1 (zh) 基于联邦学习的模型参数训练方法、装置、设备及介质
US9600686B2 (en) Augmented reality based privacy and decryption
US10467427B2 (en) Method and apparatus for providing secure image encryption and decryption
US9286466B2 (en) Registration and authentication of computing devices using a digital skeleton key
US20170090750A1 (en) Secure interaction with input devices
US11190344B2 (en) Secure user authentication based on multiple asymmetric cryptography key pairs
WO2018145127A1 (en) Electronic identification verification methods and systems with storage of certification records to a side chain
CN109829269A (zh) 基于电子印章验证电子文档的方法、装置及系统
KR20230157929A (ko) 원격 액세스 제한 지갑으로부터 암호화폐 이체
US20180212762A1 (en) Secure internal user authencation leveraging public key cryptography and key splitting
CN109495252A (zh) 数据加密方法、装置、计算机设备及存储介质
CN117240625B (zh) 一种涉及防篡改的数据处理方法、装置及电子设备
KR102068041B1 (ko) 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법
CN109409111A (zh) 一种面向加密图像的模糊搜索方法
CN109344636A (zh) 用户文件的加密方法及装置
CN117749376A (zh) 用户密钥生成方法、装置、设备、介质和产品
JP7375918B2 (ja) 認証サーバ、認証システム、認証サーバの制御方法及びプログラム
Bhardwaj et al. Biometric Authentication-Based Data Encryption Using ECG Analysis and Diffie–Hellman Algorithm
JP6518378B1 (ja) 認証システム、認証方法、及び、認証プログラム
Halvi et al. A robust and secured cloud based distributed biometric system using symmetric key cryptography and microsoft cognitive API
US20240121098A1 (en) Scalable Authentication System with Synthesized Signed Challenge
JP7375917B2 (ja) 認証サーバ、認証システム、認証サーバの制御方法及びプログラム

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