CN115037451A - 数据保护方法及电子设备 - Google Patents

数据保护方法及电子设备 Download PDF

Info

Publication number
CN115037451A
CN115037451A CN202111400200.2A CN202111400200A CN115037451A CN 115037451 A CN115037451 A CN 115037451A CN 202111400200 A CN202111400200 A CN 202111400200A CN 115037451 A CN115037451 A CN 115037451A
Authority
CN
China
Prior art keywords
ring
key
trust ring
account
trust
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.)
Granted
Application number
CN202111400200.2A
Other languages
English (en)
Other versions
CN115037451B (zh
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.)
Honor Device Co Ltd
Original Assignee
Honor Device Co 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202310382895.9A priority Critical patent/CN116527246A/zh
Priority to CN202111400200.2A priority patent/CN115037451B/zh
Publication of CN115037451A publication Critical patent/CN115037451A/zh
Application granted granted Critical
Publication of CN115037451B publication Critical patent/CN115037451B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3226Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

本申请实施例提供了一种数据保护方法及电子设备,该方法包括:在当前业务为白名单中的预设业务的情况下,提取第一电子设备的可信执行环境中保存的第一派生密钥并生成主密钥,基于第一派生密钥加密主密钥得到第一主密钥密文;基于第一派生密钥生成第一认证参数;将第一认证参数和第一主密钥密文上传云端,以使云端为第一电子设备所登录的第一账号创建信任环,并添加第一设备入环。该数据保护方法,基于用户秘密例如设备锁屏码对账号级主密钥MK进行保护,由于用户秘密对于云侧来说是未知的,因此云侧不能对托管的主密钥密文进行解密,这样,降低了主密钥泄露的风险,提高了主密钥MK的安全性,同时使得云侧能够自证清白。

Description

数据保护方法及电子设备
技术领域
本申请实施例涉及终端设备领域,尤其涉及一种数据保护方法及电子设备。
背景技术
目前,终端设备可以将用户的数据保存在云端以便用户实时上传和下载该数据。用户的数据通常对应着某个特定的用户账号。然而,用户数据的安全完全依赖于账号安全,只要设备能够通过账号验证,就可以从云侧获得该数据。如果账号和云侧服务器中的任一个被攻击,用户数据就会发生泄露。并且,云侧服务器也存在解密用户数据的可能,云侧无法自证清白。因而,已知的方案安全性较低,无法为具有更高安全性要求的用户数据保护提供支撑。
发明内容
本申请提供一种数据保护方法及电子设备,在当前业务为白名单中的预设业务的情况下,提取第一电子设备的可信执行环境中保存的第一派生密钥并生成主密钥,基于第一派生密钥加密主密钥得到第一主密钥密文;基于第一派生密钥生成第一认证参数;将第一认证参数和第一主密钥密文上传云端,以使第一服务器为第一电子设备所登录的第一账号创建信任环,并添加第一设备入环。该数据保护方法,基于用户秘密例如设备锁屏码对账号级主密钥MK进行保护,由于用户秘密对于云侧来说是未知的,因此云侧不能对托管的主密钥密文进行解密,这样,降低了主密钥泄露的风险,提高了主密钥MK的安全性,同时使得云侧能够自证清白。
第一方面,本申请实施例提供一种数据保护方法,应用于第一电子设备,包括:在当前业务为白名单中的预设业务的情况下,提取第一电子设备的可信执行环境中保存的第一派生密钥,第一派生密钥是根据第一电子设备的第一锁屏码生成的,其中,第一电子设备已登录第一账号;在第一电子设备的可信执行环境中生成主密钥;基于第一派生密钥对主密钥进行加密,生成第一电子设备的第一主密钥密文;基于第一派生密钥生成第一认证参数;向第一服务器发送创环请求,以使第一服务器创建第一账号对应的第一信任环,并将第一主密钥密文和第一认证参数添加至第一信任环的信任环数据中,其中,创环请求中携带第一主密钥密文和第一认证参数。该种创建信任环的方法,基于用户秘密例如设备锁屏码对账号级主密钥MK进行保护,由于用户秘密对于云侧来说是未知的,因此云侧不能对托管的主密钥密文进行解密,这样,降低了主密钥泄露的风险,提高了主密钥MK的安全性,同时使得云侧能够自证清白。此外,该创建信任环的方法无需用户在请求加环后手动输入第二电子设备的锁屏码,操作便捷。
其中,本申请中的锁屏码也可以替换为其他用户信息,例如,用户信息可以是用户生日、用户姓名、父母或朋友的生日、姓名等等。这些信息是用户独有的信息,仅该用户自己知道,且该信息因用户的不同而不同。这些用户信息是用户容易记忆的,并且是云侧所不知道的。当基于用户信息对主密钥加密时,云侧无法解密,因此云侧可自证清白。除了用户自己,别人很难知道用户使用哪一个用户信息来加密主密钥,这样大大增加了主密钥密文的破解难度,提高了主密钥的安全性,进而能够提高使用主密钥的派生密钥保护的用户数据的安全性。同时,在信任环中的第2个设备及第2个以后的设备注册时,可以基于用户信息对已注册设备的身份进行验证,不需要与已注册设备进行交互,为用户提供了便利。
根据第一方面,第一电子设备基于第一派生密钥对所述主密钥进行加密,生成第一电子设备的第一主密钥密文,包括:第一电子设备根据第一派生密钥生成第二派生密钥;根据第二派生密钥对主密钥进行加密,得到第一电子设备的第一主密钥密文。这样,根据锁屏码这样的用户个性化信息对主密钥加密,使得不知道用户个性化信息的云侧无法解密主密钥,保护使用主密钥的派生密钥加密的用户数据,提高用户数据的安全性。
根据第一方面,或者以上第一方面的任意一种实现方式,第一电子设备基于第一派生密钥生成第一认证参数包括:第一电子设备根据第一派生密钥生成第一共享值;根据第一服务器侧生成的HSM公钥加密第一共享值,得到第一认证参数。这样,根据锁屏码这样的用户个性化信息生成认证参数,使得认证参数无法被伪造,保证认证的安全性。
根据第一方面,或者以上第一方面的任意一种实现方式,该方法还包括:响应于修改第一电子设备的锁屏码的操作,基于修改后的新锁屏码生成哈希值;基于哈希值生成第一派生密钥;将第一派生密钥保存到第一电子设备的可信执行环境中。这样预先基于锁屏码生成第一派生密钥,在加环过程中需要使用第一派生密钥时直接从可信执行环境中提取即可,无需再引导用户输入锁屏码,可减少用户输入锁屏码的次数,能够提升用户体验。
根据第一方面,或者以上第一方面的任意一种实现方式,该方法还包括:在接收到注册请求的情况下,检测第一电子设备的注册状态;在第一电子设备未注册的情况下,向第一服务器发送注册状态比对请求,注册状态比对请求中携带第一电子设备的设备标识和第一账号的账号标识;接收第一服务器返回的第一注册状态确认消息,其中,第一注册状态确认消息用于指示第一账号下不存在信任环。该种先在设备端进行注册状态检测,当确定本地未注册时,再到云端进行注册状态比对的方式,相较于直接请求云端进行注册状态比对而言,可以减少对云端的访问次数。
根据第一方面,或者以上第一方面的任意一种实现方式,创环请求中携带第一设备的设备标识和第一账号的账号标识;第一电子设备添加至第一信任环后,第一信任环的信任环数据中包括:第一账号的账号标识、第一设备的设备标识、第一认证参数以及第一主密钥密文之间的对应关系。将设备的相关信任环数据对应存储,便于后续对信任环数据进行管理。
根据第一方面,或者以上第一方面的任意一种实现方式,该方法还包括:基于主密钥派生第一业务密钥,使用第一业务密钥对第一业务数据进行加密,得到第一业务数据密文;将第一业务数据密文发送给第二服务器,以使第二服务器保存第一业务数据密文。该种基于主密钥派生的业务密钥加密业务数据密文后同步上云的方式,由于主密钥云端不可知,因此上云的业务数据密文云端也不可知,能够确保业务数据的安全性,并且云端可自证清白。
根据第一方面,或者以上第一方面的任意一种实现方式,该方法还包括:第一电子设备从第二服务器获取第二业务数据密文;基于主密钥派生第一业务密钥;使用第一业务密钥对第二业务数据密文进行解密,得到第二业务数据。该种从云端获取业务数据密文后在电子设备本地解密的方式,云端与电子设备间传输的业务数据密文即便被截获,由于截获仿无法获知主密钥以及主密钥派生第一业务密钥的规则,因此也无法解密得到的业务数据,能够提升业务数据的安全性。
第二方面,本申请实施例提供一种数据保护方法,应用于第二电子设备,该方法包括:第二电子设备在当前业务为白名单中的预设业务的情况下,提取第二电子设备的可信执行环境中保存的第三派生密钥,第三派生密钥是根据第二电子设备的第二锁屏码生成的,其中,第二电子设备已登录第一账号;接收用户输入的第一电子设备的第一锁屏码,其中,第一电子设备是从第一服务器获取的第一账号对应的第一信任环的在环设备信息中的设备;当基于第一锁屏码对第一电子设备的身份验证通过,接收第一服务器发送的第一电子设备的第一主密钥密文;基于第一锁屏码对所述第一主密钥密文进行解密,得到主密钥;基于第三派生密钥对主密钥进行加密,生成第二电子设备的第二主密钥密文,以及基于第三派生密钥生成第二认证参数;向第一服务器发送加环请求,以使第一服务器第二主密钥密文和第二认证参数添加至第一信任环的信任环数据中。
该种加入信任环的方法,云侧将已注册设备的托管主密钥密文发送给加环设备,加环设备基于已注册设备的用户秘密对已注册设备的主密钥密文进行解密,得到主密钥MK,由于已注册设备的用户秘密对于云侧来说是未知的,并且已注册设备的用户秘密不需要经过云侧的转发,因此,云侧不可解密主密钥密文,可自证清白。此外,该加入信任环的方法无需用户在请求加环后手动输入第二电子设备的锁屏码,操作便捷。
根据第二方面,提取第二电子设备的可信执行环境中保存的第三派生密钥之后,该方法还包括:向第一服务器发送在环设备信息获取请求,其中,在环设备信息获取请求中携带有第一账号的账号标识;接收第一服务器返回的第一账号对应的第一信任环的在环设备信息,其中,在环设备中包括第一电子设备;显示第一电子设备锁屏码输入界面。这样,显示默认设备的锁屏码输入界面,用户直接输入验证设备的锁屏码即可,操作便捷。
根据第二方面,或者以上第二方面的任意一种实现方式,第二电子设备提取第二电子设备的可信执行环境中保存的第三派生密钥之后,该方法还包括:向第一服务器发送在环设备信息获取请求,其中,在环设备信息获取请求中携带有第一账号的账号标识;接收第一服务器返回的所述第一账号对应的第一信任环的在环设备信息,其中,在环设备中包括第一电子设备和第三电子设备;响应于对在环设备信息中的第三电子设备的选中操作,显示第三电子设备锁屏码输入界面。第一服务器返回全部在环设备信息,用户可灵活地选择任意一个在环设备作为验证设备,使得验证更加灵活。
根据第二方面,或者以上第二方面的任意一种实现方式,当基于第一锁屏码对第一电子设备的身份验证通过,接收第一服务器发送的第一电子设备的第一主密钥密文之前,该方法还包括:基于第一锁屏码生成第一认证参数;将第一认证参数发送给第一服务器,以使第一服务器根据第一认证参数对第一电子设备进行身份验证。这样,根据锁屏码这样的用户个性化信息生成认证参数,使得认证参数无法被伪造,保证认证的安全性。
根据第二方面,或者以上第二方面的任意一种实现方式,第二电子设备基于第三派生密钥对主密钥进行加密,生成所述第二电子设备的第二主密钥密文,包括:根据第三派生密钥生成第四派生密钥;根据第四派生密钥对主密钥进行加密,得到第二电子设备的第二主密钥密文。这样,根据锁屏码这样的用户个性化信息对主密钥加密,使得不知道用户个性化信息的云侧无法解密主密钥,保护使用主密钥的派生密钥加密的用户数据,提高用户数据的安全性。
根据第二方面,或者以上第二方面的任意一种实现方式,基于第三派生密钥生成第二认证参数包括:根据第三派生密钥生成第二共享值;根据第一服务器侧生成的HSM 公钥加密第二共享值,得到第二认证参数。这样,根据锁屏码这样的用户个性化信息生成认证参数,使得认证参数无法被伪造,保证认证的安全性。
根据第二方面,或者以上第二方面的任意一种实现方式,该方法还包括:在接收到注册请求的情况下,检测第二电子设备的注册状态;在第二电子设备未注册的情况下,向第一服务器发送注册状态比对请求,注册状态比对请求中携带第二电子设备的设备标识和第一账号的账号标识;接收第一服务器返回的第二注册状态确认消息,其中,第二注册状态确认消息用于指示第一账号下存在第一信任环、但第二电子设备不在第一信任环上。该种先在设备端进行注册状态检测,当确定本地未注册时,再到云端进行注册状态比对的方式,相较于直接请求云端进行注册状态比对而言,可以减少对云端的访问次数。
根据第二方面,或者以上第二方面的任意一种实现方式,该方法还包括:第二电子设备基于主密钥派生第一业务密钥,使用第一业务密钥对第一业务数据进行加密,得到第一业务数据密文;将第一业务数据密文发送给第二服务器,以使第二服务器保存第一业务数据密文。该种基于主密钥派生的业务密钥加密业务数据密文后同步上云的方式,由于主密钥云端不可知,因此上云的业务数据密文云端也不可知,能够确保业务数据的安全性,并且云端可自证清白。
根据第二方面,或者以上第二方面的任意一种实现方式,该方法还包括:从第二服务器获取第二业务数据密文;基于主密钥派生成第一业务密钥;使用第一业务密钥对第二业务数据密文进行解密,得到第二业务数据。该种从云端获取业务数据密文后在电子设备本地解密的方式,云端与电子设备间传输的业务数据密文即便被截获,由于截获仿无法获知主密钥以及主密钥派生第一业务密钥的规则,因此也无法解密得到的业务数据,能够提升业务数据的安全性。
第三方面,本申请实施例提供一种电子设备,作为第一电子设备,包括:信任环模块和信任环服务模块;信任环模块,用于:在当前业务为白名单中的预设业务的情况下,提取第一电子设备的可信执行环境中保存的第一派生密钥,第一派生密钥是根据第一电子设备的第一锁屏码生成的,其中,第一电子设备已登录第一账号;在第一电子设备的可信执行环境中生成主密钥;然后,基于第一派生密钥对所述主密钥进行加密,生成第一电子设备的第一主密钥密文;将第一派生密钥发送给信任环服务模块;信任环服务模块,用于:基于第一派生密钥生成第一认证参数;向第一服务器发送创环请求,以使第一服务器创建第一账号对应的第一信任环,并将第一主密钥密文和第一认证参数添加至第一信任环的信任环数据中,其中,创环请求中携带第一主密钥密文和第一认证参数。
该种创建信任环的方法,基于用户秘密例如设备锁屏码对账号级主密钥MK进行保护,由于用户秘密对于云侧来说是未知的,因此云侧不能对托管的主密钥密文进行解密,这样,降低了主密钥泄露的风险,提高了主密钥MK的安全性,同时使得云侧能够自证清白。
第三方面,本申请实施例提供一种电子设备,作为第二电子设备,包括:信任环模块和信任环服务模块;信任环模块,用于:在当前业务为白名单中的预设业务的情况下,提取第二电子设备的可信执行环境中保存的第三派生密钥,第三派生密钥是根据第二电子设备的第二锁屏码生成的,其中,第二电子设备已登录第一账号;信任环服务模块,用于:接收用户输入的第一电子设备的第一锁屏码,其中,第一电子设备是从第一服务器获取的第一账号对应的第一信任环的在环设备信息中的设备;当基于第一锁屏码对第一电子设备的身份验证通过,接收第一服务器发送的第一电子设备的第一主密钥密文;将第一主密钥密文和第一锁屏码发送给信任环模块;信任环模块,用于:基于第一锁屏码对第一主密钥密文进行解密,得到主密钥;基于第三派生密钥对主密钥进行加密,生成第二电子设备的第二主密钥密文;将第三派生密钥发送给信任环服务模块;信任环服务模块,还用于:基于第三派生密钥生成第二认证参数;向第一服务器发送加环请求,以使第一服务器第二主密钥密文和第二认证参数添加至第一信任环的信任环数据中。
该种加入信任环的方法,云侧将已注册设备的托管主密钥密文发送给加环设备,加环设备基于已注册设备的用户秘密对已注册设备的主密钥密文进行解密,得到主密钥MK,由于已注册设备的用户秘密对于云侧来说是未知的,并且已注册设备的用户秘密不需要经过云侧的转发,因此,云侧不可解密主密钥密文,可自证清白。此外,该加入信任环的方法无需用户在请求加环后手动输入第二电子设备的锁屏码,操作便捷。
第五方面,本申请提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令,或执行第二方面或第二方面的任意可能的实现方式中的方法的指令。
第六方面,本申请提供了一种计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令,执行第二方面或第二方面的任意可能的实现方式中的方法的指令。
附图说明
图1为示例性示出的电子设备100的结构示意图;
图2为示例性示出的本申请实施例的电子设备100的软件结构框图;
图3为示例性示出的创建信任环过程中的信息交互示意图;
图4为示例性示出的创建信任环过程中设备与云侧的交互示意图;
图5A为示例性示出的已登录账号情况下进入“我的设备”应用的界面示意图;
图5B为示例性示出的未登录账号情况下进入“我的设备”应用的界面示意图;
图6为示例性示出的从设备A中“我的设备”应用进入到“密码保险箱同步”应用的界面示意图;
图7A是示例性示出的设备A已设置锁屏码情况下进入“密码保险箱”界面的过程示意图;
图7B是示例性示出的设备A未设置锁屏码情况下进入“密码保险箱”界面的过程示意图;
图8为示例性示出的创建信任环的场景下开启“密码保险箱同步”开关的过程示意图;
图9为示例性示出的创建信任环的场景下开启“同步到荣耀账号”开关的过程示意图;
图10为示例性示出的创建信任环的流程示意图;
图11为示例性示出的创建信任环后设备A同步业务数据密文到账号管理服务器的示意图;
图12为示例性示出的同步业务数据密文的模块交互示意图;
图13为示例性示出的同步业务数据密文到账号管理服务器的界面示意图;
图14为示例性示出的设备B加入信任环过程中的信息交互示意图;
图15为示例性示出的从设备B中“我的设备”应用进入到“密码保险箱同步”应用的界面示意图;
图16A是示例性示出的设备B已设置锁屏码情况下进入“密码保险箱”界面并开启“密码保险箱同步”开关的过程示意图;
图16B是示例性示出的设备B未设置锁屏码情况下进入“密码保险箱”界面并开启“密码保险箱同步”开关的过程示意图;
图17为示例性示出的设备B加入信任环的场景下开启“同步到荣耀账号”开关的过程示意图;
图18为示例性示出的设备B加入信任环的流程示意图;
图19为示例性示出的设备B加入信任环后从账号管理服务器同步业务数据密文的示意图;
图20为示例性示出的从账号管理服务器同步业务数据密文的界面示意图;
图21为示例性示出的在密码保险箱业务下设备A创建信任环过程中的界面示意图;
图22为示例性示出的创建信任环的流程示意图;
图23为示例性示出的在密码保险箱业务下设备B加入信任环过程中的界面示意图;
图24为示例性示出的加入信任环的流程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
图1为示例性示出的电子设备100的结构示意图。应该理解的是,图1所示电子设备100仅是电子设备的一个范例,并且电子设备100可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图1中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
其中,电子设备100可以为手机、平板等。
电子设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器 170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达 191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
电子设备100的软件系统可以采用分层架构、事件驱动架构、微核架构、微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100 的软件结构。
电子设备100的分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为三层,从上至下分别为应用程序层,应用程序框架层,以及内核层。
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括传感器(也可以称为桌面和壁纸)、HMS core、信任环、密码保险箱等应用程序。示例性的,传感器可以监测用户对屏幕的滑动、按压等操作,HMS core提供电子设备端、云开放能力的合集。信任环应用用于为账号创建、管理信任环,其中,对信任环的管理包括但不限于:向信任环中添加设备、从信任环中删除设备、删除信任环、冻结信任环、更新信任环下的主密钥密文等。密码保险箱用于管理用户同步至账号管理服务器的业务数据,例如:某业务的登录账号和密码。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器、视图系统、F接口以及资源管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕,向视图系统发送界面信息显示指令等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
F接口为信任环的对外服务接口。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:二维图形引擎(例如:SGL)、关键资产信任环CA、表面管理器等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。二维图形引擎是二维图像的绘图引擎。
关键资产信任环CA又可称为信任环服务模块,主要用于上层信任环应用与下层关键资产信任环TA之间的消息透传。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,传感器驱动,W-iFi驱动以及关键资产信任环TA。显示驱动用于驱动显示屏194,Wi-Fi驱动用于驱动无线通信模块160,传感器驱动用于驱动传感器模块180。
关键资产信任环TA又可称为信任环模块,用于实现核心安全逻辑,提供可信任执行环境,在可信任执行环境中生成主密钥、对主密钥进行加密生成主密钥密文等。对于关键资产信任环CA、关键资产信任环TA的具体功能,参照下文中创环、加环、删环、防暴、信任环中设备下线、更新主密钥、更新主密钥密文等流程说明中的相关介绍即可。
可以理解的是,图2示出的系统框架层与运行时层包含的部件,并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。
在使用电子设备时,用户通常需要记忆很多密码数据,例如邮箱账号的密码、网盘账号的密码、智能家居控制权的密码等等。当这类密码数据较多时,如果让用户独立记录每种业务的密码数据,会给用户记忆造成较大的困难。因此,用户希望通过数据同步功能,将这类密码数据上传到云侧进行存储,使用时直接从云侧获取,而不必用户自己记忆。
然而,对于这类密码数据,用户具有与一般的待同步数据,例如,对于图片、通讯录、短信息等数据,不同的安全性要求。这类密码数据一旦泄露,将会给用户造成巨大损失。因此,用户对这类密码数据具有较高的安全性要求。此时,云侧不可自证清白的缺点将使得同步到云侧的数据的安全性大大降低,无法满足这类密码数据的高安全性要求。
本申请提供一种使云侧能够自证清白的数据保护方法,能够为密码数据这类高安全性要求的业务数据的数据同步提供支撑。
下面结合附图,对本申请的数据保护方法进行详细说明。
第一种创建信任环
图3为示例性示出的创建信任环过程中的信息交互示意图。图4为示例性示出的创建信任环过程中设备与云侧的交互示意图。图10为示例性示出的创建信任环的流程示意图。
下面结合图3、图4和图10,对本申请实施例的创建信任环过程进行详细说明。
本申请实施例中,假设设备A的荣耀账号为账号1,并以设备A向信任环云首次发起注册,创建账号1的信任环1为例对创建信任环的过程进行说明。其中,可以触发创建信任环流程的应用可以是荣耀账号下的任一个应用,本文中,以通过荣耀账号下的“密码保险箱同步”应用触发创建信任环流程为例进行说明。
其中,本文中的“注册”是指将设备添加到信任环中的过程。其中,首个设备注册时由于账号下还没有信任环,因此需要先创建信任环再将设备添加到信任环中,本文中将首个设备注册的过程称为创建信任环。非首设备注册时只需要将设备添加到已有的信任环,本文中将非首设备注册的过程称为加入信任环。
本文中假设账号1下包括3个设备,分别为荣耀V40(即设备A)、荣耀V30(记为设备B)、荣耀V50(记为设备C)。
需要说明的是,本文中各种云所执行的动作应当理解为相应云中的服务器所执行的动作。例如,账号管理服务器所执行的动作是由账号管理服务器服务器执行的,信任环云所执行的动作是由信任环云服务器执行的。
请参见图3,在创建信任环过程中,设备A向账号管理服务器发送登录账号1的请求,账号管理服务器对登录账号1的请求验证通过后,向设备A返回验证通过消息;设备A在接收到验证通过消息后,生成设备A的主密钥密文EMK11和设备A的认证参数 PAKE11,并将EMK11和PAKE11发送至信任环云,信任环云接收到设备A发送的EMK11 和PAKE11后,为账号1创建信任环1,并将设备A添加到信任环1中。
请参见图10,本申请实施例中,设备A创建信任环的过程可以包括如下步骤:
步骤S1:设备A登录账号1。
本文中以设备A为荣耀V40手机为例进行说明。应当理解的是,设备A可以是已安装本申请中创建信任环功能的任意电子设备,本申请不做限制。
设备A需要在已登录账号的情况下,才能向信任环云发起注册,以创建信任环。如果设备A还没有登录账号,需要先登录账号。
图5A为示例性示出的已登录账号情况下进入“我的设备”应用的界面示意图。图5B为示例性示出的未登录账号情况下进入“我的设备”应用的界面示意图。图6为示例性示出的从设备A中“我的设备”应用进入到“密码保险箱同步”应用的界面示意图。
请参见图5A和图6,在设备A已登录账号1(假设账号1为1581991××××)的情况下,用户可以点击设备A主界面中的“设置”应用图标(如图5A的(a)图所示),进入到图5A的(b)图所示的“设置”界面。在“设置”界面,用户点击账号1(即1581991××××),进入到图5A的(b)图所示的“账号中心”界面。在“账号中心”界面,用户点击“我的设备”,进入到图6的(b)图所示的“我的设备”界面。在“我的设备”界面中找到当前设备,即荣耀V40,点击荣耀V40进入图6的(c)图所示的“设备信息”界面。在“设备信息”界面,用户继续点击该界面中的“密码保险箱同步”应用,可以进入“密码保险箱”界面。在“密码保险箱”界面,开启“密码保险箱同步”开关后,点击“同步到荣耀账号”开关,即触发创建信任环的流程。其中,进入“密码保险箱”界面、开启“密码保险箱同步”开关和开启“同步到荣耀账号”开关的过程在后文进行说明。
需要说明的是,如果账号1下已有信任环,在“我的设备”界面上已加入到信任环中的设备下面会显示“受信任设备”。被标识为“受信任设备”的设备是已经加入到信任环中的设备,即已注册设备,请参见后续图15的(b)图所示界面。如果账号1下无信任环,例如在图6的(b)图所示的设备A的“我的设备”界面上,3个荣耀设备均不是受信任设备,表示当前的账号1下没有信任环。
请参见图5A、图5B和图6,在设备A未登录账号1的情况下,用户点击设备A主界面中的“设置”应用图标(如图5A的(a)图所示)后,进入到图5B的(a)图所示的“设置”界面。在“设置”界面,用户点击“登录荣耀账号”,进入到图5B的(b) 图所示的荣耀账号登录界面。在荣耀账号登录界面,用户输入账号1(1581991××××)和登录密码(假设为key1),设备A向账号管理服务器发送登录账号1的请求,请求中携带账号1(1581991××××)和登录密码key1。
请参见图4,用户可以通过设备A的应用程序层的账号管理模块,向账号管理服务器发送登录账号1的请求,以登录账号1。
设备A成功登录账号1后,按照前述已登录账号情况下的流程触发创建信任环的流程,请参见图5A的(c)图、(d)图和图6所示,此处不再赘述。
步骤S2:账号管理服务器返回验证通过消息。
账号管理服务器中预先保存账号1的信息,该信息包括账号1对应的登录密码,此处假设账号管理服务器保存的账号1的登录密码为key0。账号管理服务器接收到设备A 发送的登录账号1的请求后,根据账号管理服务器本地保存的账号1的信息对登录账号 1的请求进行验证。如果登录账号1的请求中携带的登录账号1的密码key1,与账号管理服务器本地保存的账号1的登录密码key0一致,账号管理服务器确定账号1的登录验证通过。此时,账号管理服务器向设备A返回验证通过消息。
如果登录账号1的请求中携带的登录账号1的密码key1,与账号管理服务器本地保存的账号1的登录密码key0不一致,账号管理服务器确定账号1的登录验证失败。此时,账号管理服务器向设备A返回验证失败消息。此时,用户需要通过图5B的(b)图重新输入账号和登录密码。
请参见图4和图10,设备A通过账号管理模块接收验证通过消息或验证失败消息。
S3:发送注册开启通知。
请参见图4和图10,在设备A的账号管理模块接收到账号管理服务器返回的验证通过消息的情况下,设备A中的账号管理模块向应用程序框架层的信任环服务模块发送注册开启通知。注册开启通知用于指示信任环服务模块开启注册流程。
此处,对设备A在创建信任环过程中进入“密码保险箱”界面、开启“密码保险箱同步”开关的过程进行说明。
图7A是示例性示出的设备A已设置锁屏码情况下进入“密码保险箱”界面的过程示意图。请参见图7A,在设备A的用户已设置设备A的锁屏码(也可称为锁屏密码) 情况下,当用户在“设备信息”界面点击该界面中的“密码保险箱同步”应用(请参见图 7A的(a)图),设备A弹出“输入锁屏密码”界面(请参见图7A的(b)图)。如果用户在“输入锁屏密码”界面输入锁屏码且锁屏密码正确,设备A的屏幕就进入到“密码保险箱”界面(请参见图7A的(c)图)。此时,“密码保险箱”界面上的“密码保险箱同步”开关和“同步到荣耀账号”开关均处于关闭状态。
图7B是示例性示出的设备A未设置锁屏码情况下进入“密码保险箱”界面的过程示意图。请参见图7B,在设备A的用户未设置设备A的锁屏码情况下,当用户在“设备信息”界面点击该界面中的“密码保险箱同步”应用(请参见图7B的(a)图),设备A 弹出“设置数字锁屏密码”界面(请参见图7B的(b)图)。用户在图7B的(b)图所示的“设置数字锁屏密码”界面输入锁屏码后,设备A弹出“设置数字锁屏密码”的确认密码的界面(请参见图7B的(c)图)。用户在图7B的(c)图所示的界面上再次输入锁屏码,如果该再次输入的锁屏码与用户在图7B的(b)图所示的界面输入的锁屏码一致,设备A的屏幕就进入到图7B的(d)图所示的“密码保险箱”界面,该界面与图7A的 (c)图所示界面相同。
图8为示例性示出的创建信任环的场景下开启“密码保险箱同步”开关的过程示意图。请参见图8,当用户点击“密码保险箱”界面上的“密码保险箱同步”开关(请参见图8的(a)图),设备A屏幕上弹出图8的(b)图所示的提醒界面,该提醒界面用于提醒用户是否同意开启密码保险箱同步服务。当用户点击提醒界面上的“同意”按钮(请参见图8的(b)图),“密码保险箱”界面上的“密码保险箱同步”开关开启(请参见图8的 (c)图)。
信任环服务模块在接收到注册开启通知时,并不能确定是开启创建信任环的流程,还是加入信任环的流程,需要通过检测注册状态来确定。
S4:设备A中的信任环服务模块检测设备A的注册状态。
注册状态包括未注册和已注册两种状态。其中,未注册状态用于指示设备当前未注册到信任环,已注册状态用于指示设备当前已注册到信任环。
S5:当检测到设备A的注册状态为未注册,设备A向信任环云发送注册状态对比请求。
其中,注册状态对比请求用于指示获取信任环服务模块检测到的设备A的注册状态与信任环云中存储的设备A的注册状态的比对结果。
注册状态对比请求中包括设备A的UID(设备标识)和设备A所属的账号的UDID (账号标识)。
S6:信任环云向设备A中的信任环服务模块返回第一注册状态确认消息。
其中,第一注册状态确认消息用于指示账号1下不存在信任环。
信任环云在接收到设备A的注册状态对比请求后,首先比对账号1下是否存在信任环,在账号1下存在信任环的情况下,再比对设备A是否在信任环中。当账号1下不存在信任环,信任环云生成第一注册状态确认消息,并发送给设备A。
基于信任环云返回的第一注册状态确认消息,设备A确定本次注册执行创建信任环流程。
S7:设备A中的信任环服务模块接收用户输入的设备A的锁屏码pw11。
此处,对创建信任环过程中开启“同步到荣耀账号”开关的过程进行说明。
图9为示例性示出的创建信任环的场景下开启“同步到荣耀账号”开关的过程示意图。请参见图9,当用户在“密码保险箱同步”开关已开启的“密码保险箱”界面上点击“同步到荣耀账号”开关(请参见图9的(a)图),设备A屏幕上弹出“输入锁屏密码”界面(请参见图9的(b)图)。如果用户在“输入锁屏密码”界面输入设备A的锁屏码,设备A中的信任环服务模块就会接收到用户输入的设备A的锁屏码。如果用户输入的设备A的锁屏密码正确,设备A执行完创建信任环流程后就进入到“密码保险箱同步”开关和“同步到荣耀账号”开关均处于开启状态的“密码保险箱”界面(请参见图9的(c) 图)。
需要说明的是,用户在图9的(a)图所示的界面上点击“同步到荣耀账号”开关的操作(请参见图9的(a)图)触发设备A执行图10中的步骤S3以及步骤S3之后的创建信任环流程步骤。
设备A的锁屏码属于设备A的用户秘密,对于云侧来说,设备A的锁屏码是未知的。
S8:设备A的信任环服务模块验证设备A的锁屏码pw11。
验证设备A的锁屏码的过程可以为:设备A将用户输入的锁屏码与设备A中预先存储的锁屏码进行比对,如果二者一致,验证通过,否则验证失败。
此处,信任环服务模块对用户在图9的(b)图所示的界面上输入的设备A的锁屏码进行再次验证,验证通过后才能继续执行后续的步骤S9。如果验证失败,设备A将退回到图9的(b)图所示的界面,并在该界面提示输入的锁屏码错误。
S9:信任环服务模块基于设备A的锁屏码派生PWUATH11。
假设用户本次输入的锁屏码为pw11,信任环服务模块基于pw11派生PWUATH11。
由于pw11属于设备A的用户秘密,云侧无法获得pw11,从而云侧无法获得基于pw11派生的PWUATH11。
由于PWUATH11是基于云侧未知的用户秘密pw11生成的,因此对云侧来说PWUATH11是未知的。
S10:设备A的信任环服务模块向设备A的可信执行环境中的信任环模块发送PWAUTH11。
后续,信任环模块基于PWAUTH11生成主密钥密文EMK11和参数PAKE11,EMK11 和PAKE11的生成方式详见图10的步骤S11至S14。
S11:信任环模块生成MK。
设备A通过信任环模块生成MK即主密钥,MK保存在设备A的可信执行环境中,即便设备A受攻击MK也不会被窃取,因此安全性很高。
S12:信任环模块基于PWAUTH11对MK进行加密,生成EMK11。
EMK11即第一主密钥密文。信任环模块基于PWAUTH11派生一个秘钥KEK11,再基于该KEK11加密MK,生成EMK11。
S13:设备A的信任环模块向设备A的信任环服务模块发送EMK11。
信任环模块生成EMK11后,将EMK11发送至信任环服务模块,在发送EMK11的同时也将salt_enc11发送至信任环服务模块。
S14:设备A中的信任环服务模块基于PWAUTH11生成参数PAKE11。
S15:设备A通过信任环服务模块向信任环云发送携带EMK11、参数PAKE11的创环请求。
设备A通过信任环服务模块向信任环云发送创环请求,通过该请求即可完成PAKE11 参数注册以及EMK11托管。
为提升EMK11的安全性,信任环服务模块在发送EMK11前,可以基于登录时获得的信任环云HSM的公钥对EMK11进行二次加密,得到主密钥的二层密文。
S16:信任环云响应于创环请求,创建账号1的信任环1,并将设备A添加到信任环 1中。
信任环云响应于设备A发送的创环请求,为账号1创建信任环1,当账号1下的其他设备如设备B、设备C向信任环云发送注册状态比对请求时,信任环云将返回存在信任环1但设备B、设备C不在信任环中的确认消息,设备B、设备C执行加入信任环的流程,加入信任环的具体流程参照后续相关说明即可。
信任环1创建完成后,信任环云中管理的信任环1数据如表1中所示:
表1
UID UDID 参数PAKE 主密钥密文
账号1 设备A PAKE11 EMK11
S17:信任环云向设备A的信任环服务模块返回创环成功消息。
信任环云为账号1创建信任环1,并将设备A添加到信任环1中后,向设备A返回创环成功消息,设备A接收到创环成功消息后,开启密码保险箱界面中的“同步到荣耀账号”开关,如图9的(c)图所示。“同步到荣耀账号”开关开启后用户可感知设备A已成功加入信任环,密码保险箱中的业务数据可同步至账号管理服务器,以使账号1下的其他在信任环1中的设备能够共享该业务数据。
至此,创建信任环过程结束,设备A完成注册。
设备A完成注册后,设备A的信任环服务模块将设备A的注册状态修改为已注册。
通过创建信任环过程可见,本申请实施例基于用户秘密对账号级主密钥MK进行保护,由于用户秘密对于云侧来说是未知的,因此云侧不能对托管的主密钥密文进行解密,这样,降低了主密钥泄露的风险,提高了主密钥MK的安全性,同时使得云侧能够自证清白。
需要说明的是,上述过程应当理解为本申请中创建信任环过程的示意性举例,并不用于对本申请进行限制。
图11为示例性示出的创建信任环后设备A同步业务数据密文到账号管理服务器的示意图。图12为示例性示出的同步业务数据密文的模块交互示意图。图13为示例性示出的同步业务数据密文到账号管理服务器的界面示意图。请参考图11、图12和图13,在已创建账号1的信任环1,并且设备A已添加到信任环1的情况下,设备A可以用MK 对敏感业务数据进行加密,得到业务数据密文,并将业务数据密文上传到账号管理服务器。
其中,创建信任环后设备A同步业务数据密文到账号管理服务器的过程如下:
请参见图12,设备A中应用程序层的密码保险箱读取业务数据明文,然后将业务数据明文存储到应用程序框架层的业务数据存储服务模块中,业务数据存储服务模块将业务数据明文发送给可信执行环境中的密钥管理模块,信任环模块根据MK生成业务密钥 dkey,密钥管理模块从信任环模块读取业务密钥dkey,,使用dkey对业务数据data进行加密,得到业务数据密文Edata。密钥管理模块将业务数据密文Edata返回给业务数据存储服务模块,业务数据存储服务模块通过业务数据同步服务模块和应用程序层的账号管理服务器同步框架,将业务数据密文Edata上传至账号管理服务器。
需要说明的是,不同的业务对应的业务密钥dkey不同,设备A可以根据MK生成不同业务的业务密钥。
例如,请参见图13,用户在设备A上使用业务1时,需要输入业务1的账号和密码,如图13的(a)图所示。在输入完业务1的账号和密码后,设备A弹出提示是否将业务 1的账号和密码同步到密码保险箱的信息,如图13的(b)图所示。如果用户同意,设备 A将业务1的账号和密码作为业务1的业务数据data1,按照上述与业务数据data相同的同步过程,将data1的密文Edata1上传至账号管理服务器。
由上可见,本申请实施例中,账号管理服务器中的业务数据密文不完全依赖账号安全,还依赖MK的安全,即使账号失窃,不影响云上数据的安全。
基于高安全性的主密钥对用户的业务数据进行加密,然后同步业务数据密文到账号管理服务器,降低了业务数据密文泄露的风险,提高了数据同步备份的安全性。
第一种加入信任环
在设备A已经创建了账号1的信任环1的基础上,账号1下的设备B可以根据如下实施例中的加入信任环流程加入到信任环1中。在设备B加入信任环1之前,信任环1 中只有设备A这一个在环设备。
图14为示例性示出的设备B加入信任环过程中的信息交互示意图。图18为示例性示出的设备B加入信任环的流程示意图。
下面结合图14和图18,对本申请实施例的加入信任环过程进行详细说明。
请参见图14,在设备A作为首设备注册后,创建信任环过程完成,设备A已将设备A的主密钥密文EMK11,即第一主密钥密文,和设备A的认证参数PAKE11上传至信任环云,此后,其他设备,例如设备B通过加入信任环流程进行注册。在设备B加入信任环1的过程中,设备B向信任环云发送已在信任环1中的设备A的认证参数PAKE12,信任环云在确认PAKE12与信任环1中已存储的设备A的认证参数PAKE11一致后,将设备A的主密钥密文EMK11返回给设备B。然后,设备B从EMK11中解密出MK,并基于设备B的锁屏码加密MK,生成设备B的主密钥密文EMK21,即第二主密钥密文,和设备B的认证参数PAKE21,并将EMK21和PAKE21发送至信任环云。
请参见图18,本申请实施例中,设备B加入信任环过程可以包括如下步骤:
S1:设备B登录账号1。
同设备A一样,设备B通过向账号管理服务器发送登录账号1的请求来登录账号1。设备B登录账号1的详细过程请参见前述设备A登录账号1的过程说明,此处不再赘述。
S2:账号管理服务器向设备B返回验证通过消息。
账号管理服务器对设备B登录账号1的请求的处理过程请参见前述账号管理服务器对设备A登录账号1的请求的处理过程,此处不再赘述。
设备B成功登录账号1后,用户可以通过图5A的(b)图和(c)图所指示的流程进入“账号中心”界面,找到“我的设备”应用。
S3:发送注册开启通知。
请参见图4和图18,在设备B的账号管理模块接收到账号管理服务器返回的验证通过消息的情况下,设备B中的账号管理模块向应用程序框架层的信任环服务模块发送注册开启通知。注册开启通知用于指示设备B的信任环服务模块开启注册流程。
此处,对设备B在加入信任环过程中进入“密码保险箱”界面、开启“密码保险箱同步”开关的过程进行说明。
图15为示例性示出的从设备B中“我的设备”应用进入到“密码保险箱同步”应用的界面示意图。对比图6可见,在加入信任环过程中,设备B的“我的设备”界面上,有一个受信任设备荣耀V40,即设备A。这说明账号1下已存在信任环。
图16A是示例性示出的设备B已设置锁屏码情况下进入“密码保险箱”界面并开启“密码保险箱同步”开关的过程示意图。请参见图16A,在设备B的用户已设置设备B 的锁屏码情况下,当用户在“设备信息”界面点击该界面中的“密码保险箱同步”应用 (请参见图16A的(a)图),设备B弹出“输入锁屏密码”界面(请参见图16A的(b) 图)。如果用户在“输入锁屏密码”界面输入锁屏码且锁屏密码正确,设备B的屏幕就进入到“密码保险箱”界面(请参见图16A的(c)图)。此时,“密码保险箱”界面上的“密码保险箱同步”开关和“同步到荣耀账号”开关均处于关闭状态。与设备A在创建信任环过程中不同的是,设备B在加入信任环过程中,当用户点击图16A的(c)图所示“密码保险箱”界面上的“密码保险箱同步”开关,设备B的屏幕直接切换到图16A的(d) 图所示的界面,即“密码保险箱同步”开关已开启、而“同步到荣耀账号”未开启的界面。
图16B是示例性示出的设备B未设置锁屏码情况下进入“密码保险箱”界面并开启“密码保险箱同步”开关的过程示意图。请参见图16B,设备B未设置锁屏码情况下进入“密码保险箱”界面并开启“密码保险箱同步”开关的过程,与图16A所示的设备B 已设置锁屏码情况下进入“密码保险箱”界面并开启“密码保险箱同步”开关的过程相比,所不同的是设备B未设置锁屏码情况下需要设置锁屏密码(请参见图16B的(b) 图)和确认锁屏密码(请参见图16B的(c)图),其余过程与已设置锁屏码情况下的过程相同,此处不再赘述。
S4:设备B中的信任环服务模块检测设备B的注册状态。
关于此步骤的说明请参见前述对图10的步骤S4的描述,此处不再赘述。
S5:当检测到设备B的注册状态为未注册,发送注册状态对比请求。
关于此步骤的说明请参见前述对图10的步骤S5的描述,此处不再赘述。
S6:返回第二注册状态确认消息,第二注册状态确认消息。
其中,第二注册状态确认消息用于指示账号1下存在信任环1、但设备B不在信任环1上。
信任环云在接收到设备B的注册状态对比请求后,首先比对账号1下是否存在信任环。此时,由于在设备A注册时信任环已经创建了账号1的信任环1,因此确认账号1 下存在信任环。然后,信任环云根据表1所示的账号1的信任环数据,确认设备B不在信任环中,此时,信任环云生成第二注册状态确认消息,并发送给设备B。
基于信任环云返回的第二注册状态确认消息,设备B确定本次注册执行加入信任环流程。
S7:设备B中的信任环服务模块接收用户输入的设备B的锁屏码pw21。
图17为示例性示出的设备B加入信任环的场景下开启“同步到荣耀账号”开关的过程示意图。请参见图17,当用户在“密码保险箱同步”开关已开启的“密码保险箱”界面上点击“同步到荣耀账号”开关(请参见图17的(a)图),设备B屏幕上弹出“输入锁屏密码”界面(请参见图17的(b)图)。如果用户在“输入锁屏密码”界面输入设备 B的锁屏码,设备B中的信任环服务模块就会接收到用户输入的设备B的锁屏码。
S8:设备B的信任环服务模块验证设备B的锁屏码pw21,基于设备B的锁屏码 pw21派生PWAUTH21。
其中,验证设备B的锁屏码pw21的过程请参见前述验证设备A的锁屏码pw11的过程,此处不再赘述。
S9:设备B的信任环服务模块获取信任环1中的设备列表。
设备B的信任环服务模块可以向信任环云发送信任环1中的设备列表的获取请求,信任环云接收到该请求后,向设备B的信任环服务模块返回信任环1中的设备列表。
S10:信任环云向设备B的信任环服务模块返回信任环1中的设备列表。
信任环1中的设备列表中包括当前已加入到信任环1中的所有设备。本申请实施例中,由于设备A是创建信任环1的设备,而设备B是首个加入信任环1的设备,因此,在设备B加入信任环1的过程中,信任环云返回的信任环1中的设备列表只包括设备A 一个设备。
S11:设备B的信任环服务模块显示设备A锁屏码输入界面,接收用户输入的设备 A的锁屏码pw12,并基于锁屏码pw12生成参数PAKE12。
请继续参见图17,如果用户在图17的(b)图所示界面输入的设备B的锁屏密码正确,设备B屏幕上弹出“输入其他荣耀设备锁屏密码”界面(请参见图17的(c)图),图17的(c)图中的“其他荣耀设备”为荣耀V40,即设备A。用户在“输入其他荣耀设备锁屏密码”界面输入设备A的锁屏码pw12,如果用户输入的设备A的锁屏码pw12正确,设备B执行完加入信任环流程后就进入到“密码保险箱同步”开关和“同步到荣耀账号”开关均处于开启状态的“密码保险箱”界面(请参见图17的(d)图)。其中,“密码保险箱同步”开关开启后可将密码保险箱中的业务数据同步至云端,“同步到荣耀账号”开关开启后可将密码保险箱中的业务数据同步至信任环1下的各设备如设备A。在实际实现过程中,“密码保险箱同步”开关与“同步到荣耀账号”开关可以合并为一个开关。
需要说明的是,用户在图17的(a)图所示的界面上点击“同步到荣耀账号”开关的操作(请参见图17的(a)图)触发设备A执行图18中的步骤S3以及步骤S3之后的加入信任环流程步骤。
设备B的锁屏码属于设备B的用户秘密,对于云侧来说,设备B的锁屏码是未知的。
其中,参数PAKE12与前述的参数PAKE11的生成原理相同,此处不再赘述。
S12:设备B的信任环服务模块向信任环云发送参数PAKE12。
在设备B加入信任环1过程中,信任环云需要对已在信任环1中的设备的身份进行验证,当验证通过,才允许加入到信任环1,否则信任环云禁止设备B加入到信任环1 中。
S13:信任环云基于参数PAKE12对设备A的身份验证通过后,向设备B的信任环服务模块返回设备A的EMK11。
S14:设备B的信任环服务模块向设备B的信任环模块发送EMK11和PWAUTH21。
信任环模块位于设备B的可信执行环境中,设备B需要在可信执行环境中对EMK11进行解密,以取出MK,并且在可信执行环境中基于PWAUTH21对MK进行加密,得到 EMK21。
S15:设备B的信任环模块对EMK11进行解密得到MK,并基于PWAUTH21对MK 进行加密,得到EMK21。
S16:设备B的信任环模块向设备B的信任环服务模块发送EMK21。
S17:设备B基于PWAUTH21生成参数PAKE21。
此过程请参见第一种创建信任环过程中设备A中的信任环服务模块基于PWAUTH11生成参数PAKE11的相关说明即可,在此不再赘述。
S18:设备B的信任环服务模块向信任环云发送携带EMK21和参数PAKE21的加环请求。
S19:信任环云响应于加环请求,将设备B加入信任环1中。
设备B加入信任环1后,信任环云中管理的信任环1数据如表2中所示:
表2
Figure BDA0003365373930000171
Figure BDA0003365373930000181
S20:信任环云向设备B的信任环服务模块返回加环成功消息。
信任环云将设备B添加到信任环1中后,向设备B返回加环成功消息,设备B接收到加环成功消息后,开启密码保险箱界面中的“同步到荣耀账号”开关,如图17的(d) 图所示。“同步到荣耀账号”开关开启后用户可感知设备B已成功加入信任环,密码保险箱中的业务数据可同步至账号管理服务器,以使账号1下的其他在信任环1中的设备能够共享该业务数据。
至此,设备B加入信任环1的过程完成,设备B完成注册。
设备B完成注册后,设备B的信任环服务模块将设备B的注册状态修改为已注册。
通过加入信任环过程可见,本申请实施例中,云侧将已注册设备的托管主密钥密文发送给加环设备,加环设备基于已注册设备的用户秘密对已注册设备的主密钥密文进行解密,得到主密钥MK,由于已注册设备的用户秘密对于云侧来说是未知的,并且已注册设备的用户秘密不需要经过云侧的转发,因此,云侧不可解密主密钥密文,可自证清白。
需要说明的是,上述过程应当理解为本申请中加入信任环过程的示意性举例,并不用于对本申请进行限制。
图19为示例性示出的设备B加入信任环后从账号管理服务器同步业务数据密文的示意图。图20为示例性示出的从账号管理服务器同步业务数据密文的界面示意图。请参考图19、图12和图20,在已创建账号1的信任环1、设备A已添加到信任环1、设备A 已将业务数据密文Edata上传到账号管理服务器的情况下,设备B可以从账号管理服务器同步业务数据密文Edata到设备B,并在设备B本地用MK解密,得到业务数据明文 data。
其中,加入信任环后设备B从账号管理服务器中同步业务数据密文的过程如下:
请参见图12,设备B中的业务数据同步服务模块通过应用程序层的账号管理服务器同步框架,从账号管理服务器获取到业务数据密文Edata。然后,设备B中的业务数据同步服务模块将业务数据密文Edata发送给设备B中的业务数据存储服务模块,业务数据存储服务模块将业务数据密文Edata发送给可设备B中的信执行环境中的密钥管理模块。信任环模块依据主密钥派生业务密钥dkey,密钥管理模块从信任环模块读取业务密钥 dkey使用dkey对业务数据密文Edata进行解密,得到业务数据明文data。接着,密钥管理模块将业务数据明文data返回给业务数据存储服务模块,业务数据存储服务模块存储业务数据明文data。例如,请参见图20,用户在设备B上使用业务1时,需要输入业务 1的账号和密码。在业务1的账号和密码的输入界面,如图20的(a)图所示,设备B弹出提示是否使用密码保险箱已同步的业务1的账号和密码的信息。如果用户同意,设备 B将密码保险箱已同步的业务1的账号和密码自动填充到图20的(a)图所示的界面,填充后如图20的(b)图所示。这样就不需要用户为每种业务独立记录密码,提升了用户体验。
需要说明的是,设备B加入到信任环1后,也可以将设备B中的业务数据用主密钥MK加密后同步到账号管理服务器中,此同步过程请参见前述对设备A同步业务数据到账号管理服务器的说明,此处不再赘述。
第二种创建信任环的方法
图3至图10中提供了一种普适性的设备创建信任环的方法,在实际实现过程中,对于在一些高安业务下请求创建信任环的场景,用户无需在请求注册信任环后输入设备的锁屏码,能够减少用户操作次数,提升用户使用体验。高安业务可以以白名单的形式预先存储在设备中,白名单中包含的高安业务可由本领域技术人员灵活设置,在此不做具体限制。
下面以高安业务为密码保险箱业务为例,结合图21以及图22对第二种创建信任环的方法进行说明。
图21为示例性示出的在密码保险箱业务下设备A创建信任环过程中的界面示意图,如图21的(a)图所示,用户开启“密码保险同步”开关后,手动开启“同步到荣耀账号”开关,设备A接收到用户开启“同步到荣耀账号”开关的操作,在后台执行创建信任环的过程,信任环创建完成后显示如图21的(b)图所示的界面,“同步到荣耀账号”开关开启。
开启密码保险箱同步功能的用户与设备的界面交互示意图参照前述图5A至图8的相关界面即可,在请求进入密码保险箱过程中,用户需输入设备A的锁屏码,设备A对本机的锁屏码进行验证后进入密码保险箱。由于在进入密码保险箱过程中用户已输入了设备A的锁屏码进行了安全验证,因此用户在密码保险箱业务下,开启“同步到荣耀账号”开关触发设备A注册信任环1时,无需用户再次输入设备A的锁屏码,设备A在注册信任环过程中直接调用存储的设备A的锁屏码即可。
图22为示例性示出的创建信任环的流程示意图,下面对比图10对图22中所示的第二种创建信任环的流程进行说明。第二种创建信任环的流程包括如下步骤:
S1:设备A的账号管理模块修改锁屏码时,基于新的锁屏码pw11生成哈希值。
S2:设备A的账号管理模块向信任环服务模块发送哈希值。
S3:设备A的信任环服务模块基于哈希值生成PWAUTH11。
S4:设备A的信任环服务模块向信任环模块发送PWAUTH11存储指令。
S5:设备A的信任环模块存储PWAUTH11。
相较于图10中所示的创建信任环的流程,图22中所示的创建信任环的流程中包含的S1至S5为新增步骤。该部分为设备A存储本机锁屏码的过程。
设备A增删改锁屏码时均会触发设备A执行S1至S5,基于锁屏码pw11生成PWAUTH11的具体算法参照前述第一种创建信任环过程中的相关说明即可,在此不再赘述。
设备A的信任环模块中存储PWAUTH11,当信任环模块需要基于PWAUTH11对MK 进行加密时,直接提取即可,无需用户再输入设备A的锁屏码基于设备A的锁屏码生成PWAUTH11。
S6:设备A的账号管理模块登录账号1。
S7:账号管理服务器向设备A的账号管理模块返回验证通过消息。
S8:设备A的账号管理模块向信任环服务模块发送注册开启通知。
S9:设备A的信任环服务模块检测设备A的注册状态。
S10:当检测到设备A的注册状态为未注册,设备A的信任环服务模块向信任环云发送注册状态对比请求。
S11:信任环云向设备A的信任环服务模块返回第一注册状态确认消息。
其中,第一注册状态确认消息用于指示账号1下不存在信任环。
S6至S10参照对图10中所示的创建信任环流程中相关步骤的详细说明即可,在此不再赘述。
S12:设备A的信任环服务模块判断当前业务是否为白名单中的预设业务。
白名单中的预设业务可以由本领域技术人员灵活设置,本申请中对此不做具体限制,例如:可以为密码保险箱等高安业务。
白名单中预设业务具有共性是在进入预设业务的过程中,设备A已对用户进行了安全验证,在预设业务的场景下再执行其他请求便无需再输入设备A的锁屏码进行安全验证。
S13:若是,设备A的信任环服务模块向信任环模块发送PWAUTH11提取指令。
S12-S13替换图10中的S7-S9,此处无需用户手动输入设备A的锁屏码,能够减少用户的操作次数,提升用户体验。
S14:设备A的信任环模块提取PWAUTH11并生成MK。
设备A的信任环模块接收到信任环服务模块的PWAUTH11提取指令后,提取存储的PWAUTH11。
S15:设备A的信任环模块基于PWAUTH11对MK进行加密,生成EMK11。
S16:设备A的信任环模块向信任环服务模块发送EMK11。
S17:设备A的信任环服务模块基于PWAUTH11生成参数PAKE11。
S18:设备A的信任环服务模块向信任环云发送携带EMK11、参数PAKE11的创环请求。
S19:信任环云响应于创环请求,创建账号1的信任环1,并将设备A添加到信任环 1中。
S20:信任环云向设备A的信任环服务模块返回创环成功消息。
S15至S20参照对图10中所示的创建信任环流程中相关步骤S11至S17的详细说明即可,在此不再赘述。
该种创建信任环的方法与前述创建信任环的方法具有相同的用途和效果,相关之处请参见前述相关说明,在此不再赘述。此外,该种创建信任环的方法无需用户手动输入本机锁屏码,便于用户操作。
第二种加入信任环的方法
图15至图18中提供了一种普适性的设备加入信任环的方法,在实际实现过程中,对于在一些高安业务下请求加入信任环的场景,用户无需在请求注册信任环后输入设备的锁屏码,能够减少用户操作次数,提升用户使用体验。
下面仍以高安业务为密码保险箱业务为例,结合图23以及图24对该种加入信任环的方法进行说明。
图23为示例性示出的在密码保险箱业务下设备B加入信任环过程中的界面示意图,如图23的(a)图所示,用户开启“密码保险同步”开关后,手动开启“同步到荣耀账号”开关,设备B接收到用户开启“同步到荣耀账号”开关的操作,设备B屏幕上弹出“输入其他荣耀设备锁屏密码”界面(请参见图23的(b)图),用户输入设备A的锁屏码,在后台执行加入信任环的过程,加入信任环后显示如图23的(c)图所示的界面,“同步到荣耀账号”开关开启。
开启密码保险箱同步功能的用户与设备的界面交互示意图参照图16中的相关界面即可。图23与图17的区别在于少了输入本机锁屏码的界面,由于在进入密码保险箱过程中用户已输入了设备B的锁屏码进行了安全验证,因此用户在密码保险箱业务下,开启“同步到荣耀账号”开关触发设备B注册信任环1时,无需用户再次输入设备B的锁屏码,因此在图设备B在注册信任环过程中直接调用存储的设备B的锁屏码即可。
图24为示例性示出的加入信任环的流程示意图,下面对比图18对图24中所示的加入信任环的流程进行说明。该加入信任环的流程包括如下步骤:
S1:设备B的账号管理模块修改锁屏码时,基于新的锁屏码pw21生成哈希值。
S2:设备B的账号管理模块向信任环服务模块发送哈希值。
S3:设备B的信任环服务模块基于哈希值生成PWAUTH21。
S4:设备B的信任环服务模块向信任环模块发送PWAUTH21存储指令。
S5:设备B的信任环模块存储PWAUTH21。
相较于图18中所示的加入信任环的流程,图24中所示的加入信任环的流程中所包含的S1至S5为新增步骤。该部分为设备B存储本机锁屏码的过程。
设备B增删改锁屏码时均会触发设备B执行S1至S5,基于锁屏码生成PWAUTH21 的具体算法参照前述相关说明即可,在此不再赘述。
设备B的信任环模块中存储PWAUTH21,当信任环模块需要基于PWAUTH21对 MK进行加密时,直接提取即可,无需用户再输入设备A的锁屏码,基于设备A的锁屏码再生成PWAUTH21。
S6:设备B的账号管理模块登录账号1。
S7:账号管理服务器向设备B的账号管理模块返回验证通过消息。
S8:设备B的账号管理模块向信任环服务模块发送注册开启通知。
S9:设备B的信任环服务模块检测设备A的注册状态。
S10:当检测到设备B的注册状态为未注册,设备B的信任环服务模块向信任环云发送注册状态对比请求。
S11:信任环云向设备B的信任环服务模块返回第二注册状态确认消息。
其中,第二注册状态确认消息用于指示账号1下存在信任环1、但设备B不在信任环1。
S6至S11参照对图18中所示的第一种加入信任环流程中相关步骤S1至S6的详细说明即可,在此不再赘述。
S12:设备B的信任环服务模块判断当前业务是否为白名单中的预设业务。
白名单中的预设业务可以由本领域技术人员灵活设置,本申请中对此不做具体限制,例如:可以为密码保险箱等高安业务。
白名单中预设业务具有共性是在进入预设业务的过程中,设备A已对用户进行了安全验证,在预设业务的场景下再执行其他请求便无需再输入设备A的锁屏码进行安全验证。
S13:若是,设备B的信任环服务模块向信任环模块发送PWAUTH21提取指令。
S12-S13替换图18中的S7-S9,此处无需用户手动输入设备A的锁屏码,能够减少用户的操作次数,提升用户体验。
S14:设备B的信任环服务模块获取信任环1中的环设备列表。
S15:信任环云向设备B的信任环服务模块返回设备列表。
S16:设备B的信任环服务模块显示设备A锁屏码输入界面,接收用户输入的设备 A的锁屏码pw12,并基于锁屏码pw12生成参数PAKE12。
S17:设备B的信任环服务模块向信任环云发送参数PAKE12。
S18:信任环云基于参数PAKE12对设备A的身份验证通过后,返回设备A的EMK11 至设备B的信任环服务模块。
S19:设备B的信任环服务模块向信任环模块发送EMK11。
S20:设备B的信任环模块对EMK11进行解密得到MK,并基于PWAUTH21对MK 进行加密,得到EMK21。
S21:设备B的信任环模块向信任环服务模块发送EMK21。
S22:设备B的信任环服务模块基于PWAUTH21生成参数PAKE21。
S23:设备B的信任环服务模块发送携带EMK21和参数PAKE21的加环请求至信任环云。
S24:信任环云响应于加环请求,将设备B加入信任环1中。
S25:信任环云向设备B的信任环服务模块返回加环成功消息。
S14至S25参照对图18中所示的加入信任环流程中相关步骤S9至S20的详细说明即可,在此不再赘述。
第二种加入信任环的方法与前述第一种加入信任环的方法具有相同的用途和效果,相关之处请参见前述相关说明,在此不再赘述。此外,第二种加入信任环的方法在预设业务中请求加入信任环时,无需用户手动输入本机锁屏码,便于用户操作。
其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本申请各个实施例的任意内容,以及同一实施例的任意内容,均可以自由组合。对上述内容的任意组合均在本申请的范围之内。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (20)

1.一种数据保护方法,其特征在于,应用于第一电子设备,包括:
在当前业务为白名单中的预设业务的情况下,提取第一电子设备的可信执行环境中保存的第一派生密钥,所述第一派生密钥是根据第一电子设备的第一锁屏码生成的,其中,所述第一电子设备已登录第一账号;
在所述第一电子设备的可信执行环境中生成主密钥;
基于所述第一派生密钥对所述主密钥进行加密,生成所述第一电子设备的第一主密钥密文;
基于所述第一派生密钥生成第一认证参数;
向第一服务器发送创环请求,以使所述第一服务器创建所述第一账号对应的第一信任环,并将所述第一主密钥密文和第一认证参数添加至所述第一信任环的信任环数据中,其中,所述创环请求中携带所述第一主密钥密文和第一认证参数。
2.根据权利要求1所述的方法,其特征在于,基于所述第一派生密钥对所述主密钥进行加密,生成所述第一电子设备的第一主密钥密文,包括:
根据所述第一派生密钥生成第二派生密钥;
根据所述第二派生密钥对所述主密钥进行加密,得到所述第一电子设备的第一主密钥密文。
3.根据权利要求1所述的方法,其特征在于,基于所述第一派生密钥生成第一认证参数包括:
根据所述第一派生密钥生成第一共享值;
根据所述第一服务器侧生成的HSM公钥加密所述第一共享值,得到所述第一认证参数。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于修改所述第一电子设备的锁屏码的操作,基于修改后的新锁屏码生成哈希值;
基于所述哈希值生成第一派生密钥;
将所述第一派生密钥保存到所述第一电子设备的可信执行环境中。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到注册请求的情况下,检测所述第一电子设备的注册状态;
在所述第一电子设备未注册的情况下,向第一服务器发送注册状态比对请求,所述注册状态比对请求中携带所述第一电子设备的设备标识和所述第一账号的账号标识;
接收所述第一服务器返回的第一注册状态确认消息,其中,所述第一注册状态确认消息用于指示所述第一账号下不存在信任环。
6.根据权利要求1所述的方法,其特征在于:
所述创环请求中携带所述第一设备的设备标识和所述第一账号的账号标识;
所述第一电子设备添加至所述第一信任环后,所述第一信任环的信任环数据中包括:所述第一账号的账号标识、所述第一设备的设备标识、所述第一认证参数以及所述第一主密钥密文之间的对应关系。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述主密钥派生第一业务密钥,使用所述第一业务密钥对第一业务数据进行加密,得到第一业务数据密文;
将所述第一业务数据密文发送给第二服务器,以使第二服务器保存所述第一业务数据密文。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从第二服务器获取第二业务数据密文;
基于所述主密钥派生第一业务密钥;
使用所述第一业务密钥对第二业务数据密文进行解密,得到第二业务数据。
9.一种数据保护方法,其特征在于,应用于第二电子设备,所述方法包括:
在当前业务为白名单中的预设业务的情况下,提取第二电子设备的可信执行环境中保存的第三派生密钥,所述第三派生密钥是根据第二电子设备的第二锁屏码生成的,其中,所述第二电子设备已登录第一账号;
接收用户输入的第一电子设备的第一锁屏码,其中,所述第一电子设备是从第一服务器获取的所述第一账号对应的第一信任环的在环设备信息中的设备;
当基于所述第一锁屏码对所述第一电子设备的身份验证通过,接收所述第一服务器发送的所述第一电子设备的第一主密钥密文;
基于所述第一锁屏码对所述第一主密钥密文进行解密,得到主密钥;
基于所述第三派生密钥对所述主密钥进行加密,生成所述第二电子设备的第二主密钥密文,以及基于所述第三派生密钥生成第二认证参数;
向第一服务器发送加环请求,以使所述第一服务器所述第二主密钥密文和第二认证参数添加至所述第一信任环的信任环数据中。
10.根据权利要求9所述的方法,其特征在于,提取第二电子设备的可信执行环境中保存的第三派生密钥之后,还包括:
向所述第一服务器发送在环设备信息获取请求,其中,所述在环设备信息获取请求中携带有所述第一账号的账号标识;
接收所述第一服务器返回的所述第一账号对应的第一信任环的在环设备信息,其中,在环设备中包括第一电子设备;
显示所述第一电子设备锁屏码输入界面。
11.根据权利要求9所述的方法,其特征在于,提取第二电子设备的可信执行环境中保存的第三派生密钥之后,还包括:
向所述第一服务器发送在环设备信息获取请求,其中,所述在环设备信息获取请求中携带有所述第一账号的账号标识;
接收所述第一服务器返回的所述第一账号对应的第一信任环的在环设备信息,其中,在环设备中包括第一电子设备和第三电子设备;
响应于对所述在环设备信息中的第三电子设备的选中操作,显示所述第三电子设备锁屏码输入界面。
12.根据权利要求9所述的方法,其特征在于,当基于所述第一锁屏码对所述第一电子设备的身份验证通过,接收所述第一服务器发送的所述第一电子设备的第一主密钥密文之前,还包括:
基于所述第一锁屏码生成第一认证参数;
将所述第一认证参数发送给所述第一服务器,以使所述第一服务器根据所述第一认证参数对所述第一电子设备进行身份验证。
13.根据权利要求9所述的方法,其特征在于,基于所述第三派生密钥对所述主密钥进行加密,生成所述第二电子设备的第二主密钥密文,包括:
根据第三派生密钥生成第四派生密钥;
根据第四派生密钥对所述主密钥进行加密,得到所述第二电子设备的第二主密钥密文。
14.根据权利要求9所述的方法,其特征在于,基于所述第三派生密钥生成第二认证参数包括:
根据所述第三派生密钥生成第二共享值;
根据所述第一服务器侧生成的HSM公钥加密所述第二共享值,得到所述第二认证参数。
15.根据权利要求9所述的方法,其特征在于,还包括:
在接收到注册请求的情况下,检测所述第二电子设备的注册状态;
在所述第二电子设备未注册的情况下,向第一服务器发送注册状态比对请求,所述注册状态比对请求中携带所述第二电子设备的设备标识和所述第一账号的账号标识;
接收所述第一服务器返回的第二注册状态确认消息,其中,所述第二注册状态确认消息用于指示所述第一账号下存在第一信任环、但所述第二电子设备不在所述第一信任环上。
16.根据权利要求9所述的方法,其特征在于,还包括:
基于所述主密钥派生第一业务密钥,使用所述第一业务密钥对第一业务数据进行加密,得到第一业务数据密文;
将所述第一业务数据密文发送给第二服务器,以使第二服务器保存所述第一业务数据密文。
17.根据权利要求9所述的方法,其特征在于,所述方法还包括:
从第二服务器获取第二业务数据密文;
基于所述主密钥派生成第一业务密钥;
使用所述第一业务密钥对第二业务数据密文进行解密,得到第二业务数据。
18.一种电子设备,其特征在于,作为第一电子设备,包括:信任环模块和信任环服务模块;
所述信任环模块,用于:
在当前业务为白名单中的预设业务的情况下,提取第一电子设备的可信执行环境中保存的第一派生密钥,所述第一派生密钥是根据第一电子设备的第一锁屏码生成的,其中,所述第一电子设备已登录第一账号;
在所述第一电子设备的可信执行环境中生成主密钥;
基于所述第一派生密钥对所述主密钥进行加密,生成所述第一电子设备的第一主密钥密文;
将第一派生密钥发送给信任环服务模块;
所述信任环服务模块,用于:
基于所述第一派生密钥生成第一认证参数;
向第一服务器发送创环请求,以使所述第一服务器创建所述第一账号对应的第一信任环,并将所述第一主密钥密文和第一认证参数添加至所述第一信任环的信任环数据中,其中,所述创环请求中携带所述第一主密钥密文和第一认证参数。
19.一种电子设备,其特征在于,作为第二电子设备,包括:信任环模块和信任环服务模块;
所述信任环模块,用于:
在当前业务为白名单中的预设业务的情况下,提取第二电子设备的可信执行环境中保存的第三派生密钥,所述第三派生密钥是根据第二电子设备的第二锁屏码生成的,其中,所述第二电子设备已登录第一账号;
所述信任环服务模块,用于:
接收用户输入的第一电子设备的第一锁屏码,其中,所述第一电子设备是从第一服务器获取的所述第一账号对应的第一信任环的在环设备信息中的设备;
当基于所述第一锁屏码对所述第一电子设备的身份验证通过,接收所述第一服务器发送的所述第一电子设备的第一主密钥密文;
将第一主密钥密文和第一锁屏码发送给信任环模块;
所述信任环模块,用于:
基于所述第一锁屏码对所述第一主密钥密文进行解密,得到主密钥;
基于所述第三派生密钥对所述主密钥进行加密,生成所述第二电子设备的第二主密钥密文;
将所述第三派生密钥发送给信任环服务模块;
所述信任环服务模块,还用于:
基于所述第三派生密钥生成第二认证参数;
向第一服务器发送加环请求,以使所述第一服务器所述第二主密钥密文和第二认证参数添加至所述第一信任环的信任环数据中。
20.一种计算机可读存储介质,包括计算机程序,其特征在于,当所述计算机程序在电子设备上运行时,使得所述电子设备执行如权利要求1-17中任意一项所述的数据保护方法。
CN202111400200.2A 2021-11-19 2021-11-19 数据保护方法及电子设备 Active CN115037451B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202310382895.9A CN116527246A (zh) 2021-11-19 2021-11-19 数据保护方法及电子设备
CN202111400200.2A CN115037451B (zh) 2021-11-19 2021-11-19 数据保护方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111400200.2A CN115037451B (zh) 2021-11-19 2021-11-19 数据保护方法及电子设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202310382895.9A Division CN116527246A (zh) 2021-11-19 2021-11-19 数据保护方法及电子设备

Publications (2)

Publication Number Publication Date
CN115037451A true CN115037451A (zh) 2022-09-09
CN115037451B CN115037451B (zh) 2023-04-14

Family

ID=83118169

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202310382895.9A Pending CN116527246A (zh) 2021-11-19 2021-11-19 数据保护方法及电子设备
CN202111400200.2A Active CN115037451B (zh) 2021-11-19 2021-11-19 数据保护方法及电子设备

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202310382895.9A Pending CN116527246A (zh) 2021-11-19 2021-11-19 数据保护方法及电子设备

Country Status (1)

Country Link
CN (2) CN116527246A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117195276B (zh) * 2023-11-08 2024-04-16 荣耀终端有限公司 一种数据保护方法及电子设备

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104767730A (zh) * 2015-03-10 2015-07-08 四川省宁潮科技有限公司 一种智能设备变为可信任智能设备的方法
CN105210073A (zh) * 2012-11-28 2015-12-30 豪沃克有限公司 经由使用多个单独安全因素的移动设备对接入计算机资源的用户进行认证的方法和系统
CN106326763A (zh) * 2015-06-15 2017-01-11 阿里巴巴集团控股有限公司 获取电子文件的方法及装置
CN106789833A (zh) * 2015-11-20 2017-05-31 北京奇虎科技有限公司 基于移动终端的解锁的账户登录方法和装置
CN107612940A (zh) * 2017-10-31 2018-01-19 飞天诚信科技股份有限公司 一种身份认证方法及认证装置
CN109981677A (zh) * 2019-04-08 2019-07-05 北京深思数盾科技股份有限公司 一种授信管理方法及装置
CN110276177A (zh) * 2019-05-24 2019-09-24 华为技术有限公司 智能终端的登录方法及电子设备
CN111193695A (zh) * 2019-07-26 2020-05-22 腾讯科技(深圳)有限公司 一种第三方账号登录的加密方法、装置及存储介质
CN111475832A (zh) * 2020-06-24 2020-07-31 腾讯科技(深圳)有限公司 一种数据管理的方法以及相关装置
CN112425114A (zh) * 2018-07-17 2021-02-26 维萨国际服务协会 受公钥-私钥对保护的密码管理器
CN113132091A (zh) * 2019-12-31 2021-07-16 华为技术有限公司 一种分享设备的方法及电子设备
WO2021205154A1 (en) * 2020-04-08 2021-10-14 Pqshield Ltd Methods and systems for compressed encryption
CN113609498A (zh) * 2021-07-15 2021-11-05 荣耀终端有限公司 数据保护方法及电子设备

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105210073A (zh) * 2012-11-28 2015-12-30 豪沃克有限公司 经由使用多个单独安全因素的移动设备对接入计算机资源的用户进行认证的方法和系统
CN104767730A (zh) * 2015-03-10 2015-07-08 四川省宁潮科技有限公司 一种智能设备变为可信任智能设备的方法
CN106326763A (zh) * 2015-06-15 2017-01-11 阿里巴巴集团控股有限公司 获取电子文件的方法及装置
CN106789833A (zh) * 2015-11-20 2017-05-31 北京奇虎科技有限公司 基于移动终端的解锁的账户登录方法和装置
CN107612940A (zh) * 2017-10-31 2018-01-19 飞天诚信科技股份有限公司 一种身份认证方法及认证装置
CN112425114A (zh) * 2018-07-17 2021-02-26 维萨国际服务协会 受公钥-私钥对保护的密码管理器
CN109981677A (zh) * 2019-04-08 2019-07-05 北京深思数盾科技股份有限公司 一种授信管理方法及装置
CN110276177A (zh) * 2019-05-24 2019-09-24 华为技术有限公司 智能终端的登录方法及电子设备
CN111193695A (zh) * 2019-07-26 2020-05-22 腾讯科技(深圳)有限公司 一种第三方账号登录的加密方法、装置及存储介质
CN113132091A (zh) * 2019-12-31 2021-07-16 华为技术有限公司 一种分享设备的方法及电子设备
WO2021205154A1 (en) * 2020-04-08 2021-10-14 Pqshield Ltd Methods and systems for compressed encryption
CN111475832A (zh) * 2020-06-24 2020-07-31 腾讯科技(深圳)有限公司 一种数据管理的方法以及相关装置
CN113609498A (zh) * 2021-07-15 2021-11-05 荣耀终端有限公司 数据保护方法及电子设备

Also Published As

Publication number Publication date
CN115037451B (zh) 2023-04-14
CN116527246A (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
US11297055B2 (en) Multifactor contextual authentication and entropy from device or device input or gesture authentication
EP3657370B1 (en) Methods and devices for authenticating smart card
US10826882B2 (en) Network-based key distribution system, method, and apparatus
CN110334498B (zh) 利用一个设备解锁另一个设备的方法
CN107251035B (zh) 账户恢复协议
CN104798083B (zh) 用于验证访问请求的方法和系统
US10659226B2 (en) Data encryption method, decryption method, apparatus, and system
WO2021133494A1 (en) Contactless card personal identification system
US9443069B1 (en) Verification platform having interface adapted for communication with verification agent
JP2017152880A (ja) 認証システム、鍵処理連携方法、および、鍵処理連携プログラム
CN113424161A (zh) 用于使用区块链来认证用户的方法、系统和介质
CN111405016B (zh) 用户信息获取方法及相关设备
CN115037451B (zh) 数据保护方法及电子设备
CN115037453B (zh) 数据保护方法、系统及电子设备
WO2019218328A1 (zh) 一种智能门锁无线通信方法、智能门锁、网关及通信设备
CN115021894B (zh) 数据保护方法、系统及电子设备
CN115037455B (zh) 数据保护方法、系统及电子设备
CN115037450B (zh) 数据保护方法及电子设备
CN115037454B (zh) 数据保护方法及电子设备
CN115021895B (zh) 数据保护方法、系统及电子设备
CN115037456B (zh) 数据保护方法、系统及电子设备
CN117278204B (zh) 数据保护方法及存储介质
CN115037452B (zh) 数据保护方法、系统及电子设备

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