CN112989370B - 密钥灌装方法、系统、装置、设备以及存储介质 - Google Patents

密钥灌装方法、系统、装置、设备以及存储介质 Download PDF

Info

Publication number
CN112989370B
CN112989370B CN202110181982.9A CN202110181982A CN112989370B CN 112989370 B CN112989370 B CN 112989370B CN 202110181982 A CN202110181982 A CN 202110181982A CN 112989370 B CN112989370 B CN 112989370B
Authority
CN
China
Prior art keywords
information
verification
filling
chip
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110181982.9A
Other languages
English (en)
Other versions
CN112989370A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110181982.9A priority Critical patent/CN112989370B/zh
Publication of CN112989370A publication Critical patent/CN112989370A/zh
Priority to PCT/CN2022/073859 priority patent/WO2022170973A1/zh
Priority to EP22752134.1A priority patent/EP4216091A4/en
Priority to JP2023537408A priority patent/JP2024500822A/ja
Priority to US17/987,778 priority patent/US20230090351A1/en
Application granted granted Critical
Publication of CN112989370B publication Critical patent/CN112989370B/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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information

Abstract

本申请公开了一种密钥灌装方法、系统、装置、设备以及存储介质,属于数据安全领域。方法包括:向服务器发送第一灌装信息,所述第一灌装信息用于指示所述电子设备对安全芯片的灌装权限;获取所述服务器发送的第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,所述第二灌装信息为所述服务器基于所述第一灌装信息,确定所述电子设备具有对所述安全芯片的灌装权限后发送的灌装信息;将所述验证公钥灌装到所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密。在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。

Description

密钥灌装方法、系统、装置、设备以及存储介质
技术领域
本申请涉及数据安全领域,特别涉及一种密钥灌装方法、系统、装置、设备以及存储介质。
背景技术
随着网络技术的发展,信息传输的频率也越来越高。在很多场景下传输的信息为机密信息,在信息传输前需要对信息进行加密,才能保证信息的安全。
相关技术中,用户往往会使用安全芯片来进行信息加密,安全芯片在信息加密的过程中,会采用芯片私钥对信息进行加密,信息接收方通过芯片公钥就能够对加密后的信息进行解密,从而完成信息的传输。在生产安全芯片时,往往是由服务器生成芯片私钥和芯片公钥,再将芯片私钥下发至电子设备,由电子设备将芯片私钥灌装到安全芯片中。
但是,上述芯片灌装过程涉及芯片私钥的传输,存在芯片私钥泄露的风险,导致信息安全性降低。
发明内容
本申请实施例提供了一种密钥灌装方法、系统、装置、设备以及存储介质,可以提升数据传输的安全性。所述技术方案如下:
一方面,提供了一种密钥灌装方法,应用于电子设备,所述方法包括:
向服务器发送第一灌装信息,所述第一灌装信息用于指示所述电子设备对安全芯片的灌装权限;
获取所述服务器发送的第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,所述第二灌装信息为所述服务器基于所述第一灌装信息,确定所述电子设备具有对所述安全芯片的灌装权限后发送的灌装信息;
将所述验证公钥灌装到所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密。
一方面,提供了一种密钥灌装方法,应用于服务器,所述方法包括:
获取电子设备发送的第一灌装信息,所述第一灌装信息用于指示所述电子设备对所述安全芯片的灌装权限;
响应于所述电子设备具有对所述安全芯片的灌装权限,向所述电子设备发送第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,以使所述电子设备将所述验证公钥灌装至安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密。
在一种可能的实施方式中,所述采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密,得到第一认证码包括:
采用所述芯片公钥对所述验证信息进行加密,得到第一验证码;
采用所述验证私钥对所述第一验证码进行加密,得到所述第一认证码。
在一种可能的实施方式中,所述获取第二认证码包括:
接收所述第三加密信息,所述第三加密信息为所述电子设备采用电子设备的电子设备私钥对所述第二认证码进行加密,得到加密信息;
采用所述电子设备私钥对应的电子设备公钥对所述第三加密信息进行解密,得到所述第二认证码。
在一种可能的实施方式中,所述响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息之前,所述方法还包括:
采用所述芯片公钥对所述第二认证码进行解密,得到第三验证码;
采用所述验证私钥对所述第三验证码进行解密,得到所述第一信息。
在一种可能的实施方式中,所述方法还包括:
响应于所述第二认证码中的所述第一信息与所述验证信息不同,向所述电子设备发送所述安全芯片的验证未通过信息,以使所述电子设备对所述安全芯片重新进行密钥灌装。
在一种可能的实施方式中,所述向所述电子设备发送第二灌装信息包括:
采用所述服务器的服务器私钥对所述第二灌装信息进行加密,得到第二加密信息;
向所述电子设备发送所述第二加密信息。
在一种可能的实施方式中,所述采用所述服务器的服务器私钥对所述第二灌装信息进行加密,得到第二加密信息包括:
将所述第二灌装信息映射为所述第二灌装信息对应的第四信息摘要;
采用所述服务器私钥对所述第四信息摘要和所述第二灌装信息进行加密,得到所述第二加密信息。
一方面,提供了一种密钥灌装方法,应用于安全芯片,所述方法包括:
获取电子设备灌装到所述安全芯片中的验证公钥,所述验证公钥由服务器生成,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密
采用所述验证公钥对传输信息进行加密。
在一种可能的实施方式中,所述第二灌装信息还包括所述服务器采用所述安全芯片的芯片公钥以及与所述验证公钥对应的验证私钥对验证信息进行加密后得到的第一认证码,所述方法还包括:
采用所述芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息;
采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密,得到第二认证码;
将所述第二认证码发送给所述服务器,以使所述服务器基于所述第二认证码中的第一信息和所述验证信息对所述安全芯片进行验证。
在一种可能的实施方式中,所述获取服务器生成的第二灌装信息之前,所述方法还包括:
随机生成芯片密钥对,所述芯片密钥对包括所述芯片公钥和所述芯片私钥。
在一种可能的实施方式中,所述采用所述芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息包括:
采用所述验证公钥对所述第一认证码进行解密,得到第二验证码;
采用所述芯片私钥对所述第二验证码进行解密,得到所述第一信息。
在一种可能的实施方式中,所述采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密,得到第二认证码包括:
采用所述验证公钥对所述第一信息进行加密,得到第三验证码;
采用所述芯片私钥对所述第三验证码进行加密,得到所述第二认证码。
一方面,提供了一种密钥灌装装置,所述装置包括:
第一发送模块,用于向服务器发送第一灌装信息,所述第一灌装信息用于指示所述电子设备对安全芯片的灌装权限;
第一获取模块,用于获取所述服务器发送的第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,所述第二灌装信息为所述服务器基于所述第一灌装信息,确定所述电子设备具有对所述安全芯片的灌装权限后发送的灌装信息;
灌装模块,用于将所述验证公钥灌装到所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密。
在一种可能的实施方式中,所述第一发送模块,用于采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密,得到第一加密信息;向所述服务器发送所述第一加密信息。
在一种可能的实施方式中,所述第一发送模块,用于将所述第一灌装信息映射为所述第一灌装信息对应的第一信息摘要;采用所述电子设备私钥对所述第一信息摘要和所述第一灌装信息进行加密,得到所述第一加密信息。
在一种可能的实施方式中,所述第一获取模块,用于获取所述服务器发送的第二加密信息,所述第二加密信息由所述服务器采用所述服务器的服务器私钥对所述第二灌装信息进行加密后得到;采用所述服务器私钥对应的服务器公钥对所述第二加密信息进行解密,得到所述第二灌装信息。
一方面,提供了一种密钥灌装装置,所述装置包括:
第二获取模块,用于获取电子设备发送的第一灌装信息,所述第一灌装信息用于指示所述电子设备对所述安全芯片的灌装权限;
第二发送模块,用于响应于所述电子设备具有对所述安全芯片的灌装权限,向所述电子设备发送第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,以使所述电子设备将所述验证公钥灌装至安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密。
在一种可能的实施方式中,所述第二获取模块,用于获取所述电子设备发送的第一加密信息,所述第一加密信息由所述电子设备采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密后得到;采用所述电子设备私钥对应的电子设备公钥,对所述第一加密信息进行解密,得到所述第一灌装信息。
在一种可能的实施方式中,所述第一灌装信息包括所述安全芯片的芯片公钥,所述装置还包括:
第一加密模块,用于采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密,得到第一认证码;
所述第二发送模块,还用于向所述安全芯片发送所述第一认证码,以使所述安全芯片采用所述安全芯片的芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息;
所述第二获取模块,还用于获取第二认证码,所述第二认证码为所述安全芯片采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密得到的认证码;
第四发送模块,用于响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
在一种可能的实施方式中,所述第一加密模块,用于采用所述芯片公钥对所述验证信息进行加密,得到第一验证码;采用所述验证私钥对所述第一验证码进行加密,得到所述第一认证码。
在一种可能的实施方式中,所述第三获取模块,用于接收所述第三加密信息,所述第三加密信息为所述电子设备采用电子设备的电子设备私钥对所述第二认证码进行加密,得到加密信息;采用所述电子设备私钥对应的电子设备公钥对所述第三加密信息进行解密,得到所述第二认证码。
在一种可能的实施方式中,所述装置还包括:
第一解密模块,用于采用所述芯片公钥对所述第二认证码进行解密,得到第三验证码;
第二解密模块,用于采用所述验证私钥对所述第三验证码进行解密,得到所述第一信息。
在一种可能的实施方式中,所述装置还包括:
所述第四发送模块,还用于响应于所述第二认证码中的所述第一信息与所述验证信息不同,向所述电子设备发送所述安全芯片的验证未通过信息,以使所述电子设备对所述安全芯片重新进行密钥灌装。
在一种可能的实施方式中,所述第二发送模块,用于采用所述服务器的服务器私钥对所述第二灌装信息进行加密,得到第二加密信息;向所述电子设备发送所述第二加密信息。
在一种可能的实施方式中,所述第二发送模块,用于将所述第二灌装信息映射为所述第二灌装信息对应的第四信息摘要;采用所述服务器私钥对所述第四信息摘要和所述第二灌装信息进行加密,得到所述第二加密信息。
一方面,提供了一种密钥灌装装置,所述装置包括:
第三获取模块,用于获取电子设备灌装到所述安全芯片中的验证公钥,所述验证公钥由服务器生成,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密;
传输信息加密模块,用于采用所述验证公钥对传输信息进行加密。
在一种可能的实施方式中,所述第二灌装信息还包括所述服务器采用所述安全芯片的芯片公钥以及与所述验证公钥对应的验证私钥对验证信息进行加密后得到的第一认证码,所述装置还包括:
第三解密模块,用于采用所述芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息;
第二加密模块,用于采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密,得到第二认证码;
第三发送模块,用于将所述第二认证码发送给所述服务器,以使所述服务器基于所述第二认证码中的第一信息和所述验证信息对所述安全芯片进行验证。
在一种可能的实施方式中,所述装置还包括:
生成模块,用于随机生成芯片密钥对,所述芯片密钥对包括所述芯片公钥和所述芯片私钥。
在一种可能的实施方式中,所述第三解密模块,用于采用所述验证公钥对所述第一认证码进行解密,得到第二验证码;采用所述芯片私钥对所述第二验证码进行解密,得到所述第一信息。
在一种可能的实施方式中,所述第二加密模块,用于采用所述验证公钥对所述第一信息进行加密,得到第三验证码;采用所述芯片私钥对所述第三验证码进行加密,得到所述第二认证码。
在一种可能的实施方式中,所述传输信息加密模块,用于采用所述安全芯片的芯片私钥对传输信息进行加密,得到第一加密传输信息;采用所述验证公钥对所述第一加密传输信息进行加密,得到第二加密传输信息;向所述服务器传输所述第二加密传输信息。
一方面,提供了一种密钥灌装系统,所述系统包括:安全芯片、电子设备以及服务器;
所述电子设备用于向所述服务器发送第一灌装信息,所述第一灌装信息用于指示所述电子设备对所述安全芯片的灌装权限;
所述服务器用于接收所述第一灌装信息,响应于所述电子设备具有对所述安全芯片的灌装权限,向所述电子设备发送第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥;
所述电子设备还用于接收所述第二灌装信息,将所述验证公钥灌装至所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密。
在一种可能的实施方式中,所述电子设备还用于采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密,得到第一加密信息,将所述第一加密信息发送给所述服务器;
所述服务器还用于接收所述第一加密信息,采用所述电子设备私钥对应的电子设备公钥,对所述第一加密信息进行解密,得到所述第一灌装信息。
在一种可能的实施方式中,所述电子设备还用于将所述第一灌装信息映射为所述第一灌装信息对应的第一信息摘要;
所述电子设备还用于采用所述电子设备私钥对所述第一信息摘要和所述第一灌装信息进行加密,得到所述第一加密信息;
所述服务器还用于接收所述第一加密信息,采用所述电子设备公钥,对所述第一加密信息进行解密,得到第二信息摘要和第三灌装信息;
所述服务器还用于将所述第三灌装信息映射为所述第三灌装信息对应的第三信息摘要;
所述服务器还用于响应于所述第三信息摘要与所述第二信息摘要相同,确定所述第三灌装信息为所述电子设备获取的所述第一灌装信息。
在一种可能的实施方式中,所述第一灌装信息包括所述安全芯片的芯片公钥,所述第二灌装信息包括所述服务器生成的第一认证码;
所述服务器还用于采用所述芯片公钥以及与所述验证私钥对生成的验证信息进行加密,得到所述第一认证码;
所述电子设备还用于向所述安全芯片发送所述第一认证码以及所述验证公钥;
所述安全芯片用于接收所述第一认证码以及所述验证公钥;
所述安全芯片还用于采用所述安全芯片的芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息;
所述安全芯片还用于采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密,得到第二认证码;
所述服务器还用于获取所述第二认证码,采用所述验证私钥以及所述芯片公钥对所述第二认证码进行解密,得到所述第一信息;
所述服务器还用于响应于所述第二认证码中的第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
在一种可能的实施方式中,所述服务器还用于:
采用所述芯片公钥对所述验证信息进行加密,得到第一验证码;
采用所述验证私钥对所述第一验证码进行加密,得到所述第一认证码。
在一种可能的实施方式中,所述安全芯片还用于:
采用所述验证公钥对所述第一认证码进行解密,得到第二验证码;
采用所述芯片私钥对所述第二验证码进行解密,得到所述第一信息。
在一种可能的实施方式中,所述安全芯片还用于随机生成芯片密钥对,所述芯片密钥对包括所述芯片公钥和所述芯片私钥。
在一种可能的实施方式中,所述安全芯片还用于:
采用所述验证公钥对所述第一信息进行加密,得到第三验证码;
采用所述芯片私钥对所述第三验证码进行加密,得到所述第二认证码。
在一种可能的实施方式中,所述电子设备还用于:
采用所述电子设备的电子设备私钥对所述第二认证码进行加密,得到第三加密信息;
将所述第三加密信息发送给所述服务器;
所述服务器还用于:
接收所述第三加密信息;
采用所述电子设备公钥对所述第三加密信息进行解密,得到所述第二认证码;
采用所述芯片公钥对所述第二认证码进行解密,得到第三验证码;
采用所述验证私钥对所述第三验证码进行解密,得到所述第一信息。
在一种可能的实施方式中,所述服务器还用于采用所述服务器的服务器私钥对第二灌装信息进行加密,得到第二加密信息;
所述电子设备还用于采用与所述服务器私钥对应的服务器公钥对所述第二加密信息进行解密,得到所述第二灌装信息。
在一种可能的实施方式中,所述服务器还用于将所述第二灌装信息映射为所述第二灌装信息的第四信息摘要;
所述服务器还用于采用所述服务器私钥对所述第四信息摘要和所述第二灌装信息进行加密,得到所述第二加密信息;
所述电子设备还用于接收所述第二加密信息,采用所述服务器公钥,对所述第二加密信息进行解密,得到第五信息摘要和第四灌装信息;
所述电子设备还用于将所述第四灌装信息映射为所述第四灌装信息对应的第六信息摘要;
所述电子设备还用于响应于所述第六信息摘要与所述第四信息摘要相同,确定所述第四灌装信息为所述服务器发送的所述第二灌装信息。
在一种可能的实施方式中,所述安全芯片还用于采用所述安全芯片的芯片私钥对传输信息进行加密,得到第一加密传输信息;采用所述验证公钥对所述第一加密传输信息进行加密,得到第二加密传输信息;向所述服务器传输所述第二加密传输信息。
一方面,提供了一种计算机设备,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条计算机程序,所述计算机程序由所述一个或多个处理器加载并执行以实现所述密钥灌装方法。
一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述计算机程序由处理器加载并执行以实现所述密钥灌装方法。
一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,该程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该程序代码,处理器执行该程序代码,使得该计算机设备执行上述密钥灌装方法。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
附图说明
为例更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种密钥灌装方法的实施环境的示意图;
图2是本申请实施例提供的一种密钥灌装方法的流程图;
图3是本申请实施例提供的一种密钥灌装方法的流程图;
图4是本申请实施例提供的一种密钥灌装方法的流程图;
图5是本申请实施例提供的一种密钥灌装方法的交互流程图;
图6是本申请实施例提供的一种密钥灌装系统的结构示意图;
图7是本申请实施例提供的一种密钥灌装装置的结构示意图;
图8是本申请实施例提供的一种密钥灌装装置的结构示意图;
图9是本申请实施例提供的一种密钥灌装装置的结构示意图;
图10是本申请实施例提供的一种电子设备的结构示意图;
图11是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
本申请中术语“至少一个”是指一个或多个,“多个”的含义是指两个或两个以上,例如,多个人脸图像是指两个或两个以上的人脸图像。
为了对本申请实施例提供的技术方案进行说明,下面对本申请实施例涉及的一些名词进行介绍:
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
对称加密算法:加密和解密都使用同样规则(密钥)的算法。也即是,A选择某一种规则对信息进行加密,B使用同一规则(逆规则)对信息进行解密;
非对称加密算法:加密和解密可以使用不同的规则,只要这两种规则之间存在某种对应关系即可。也即是,B根据算法生成两把密钥(公钥和私钥),其中私钥是保密的,公钥是公开的,供要与B通信的其它人使用,A从B处获取公钥,并用它来加密,B得到A加密后的信息,用私钥进行解密,完成通信。
互质关系:互质又称为互素,如果两个或两个以上的整数的最大公约数是 1,则称它们为互质。比如7和10,他们最大的公约数是1,所以他们互质。8和10最大的公约数是2,所以他们不是互质。
欧拉函数:欧拉函数知道是对正整数n,求小于或等于n的正整数中与n互质的数的数目,记作φ(n)。比如1至10中,与10形成互质关系的有1、3、7和9,所以φ(10)=4。
欧拉定理:也称费马-欧拉定理,指的是:如果两个正整数a和n互质,则n的欧拉函数 φ(n) 可以让下面的等式(1)成立。
aφ(n)=1(mod n)(1)
其中,mod为取余,即a的φ(n)次方被n除的余数为1,或者说a的φ(n)次方减1,能被n整除。比如7和5互质,那么7φ(5)−1=74−1=2401−1=2400,可以被5整除。
RSA算法:一种非对称加密算法,基于上述欧拉函数和欧拉定理。
安全芯片:安全芯片是可信任平台模块,是一个可独立进行密钥生成、加解密的装置,内部拥有独立的处理器和存储单元,可存储密钥和特征数据,提供加密和安全认证服务。用安全芯片进行加密,密钥被存储在硬件中,被窃的数据无法解密,从而保护隐私和数据安全。
图1是本申请实施例提供的一种密钥灌装方法的实施环境示意图,参见图1,该实施环境中可以包括安全芯片110、电子设备120和服务器140。
电子设备120通过无线网络或有线网络与安全芯片110相连,可选地,电子设备120是智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。可选地,电子设备120为安全芯片110的制造厂商所使用的设备,电子设备120通过安全芯片读卡器来对安全芯片110进行读写。
电子设备120通过无线网络或有线网络与服务器140相连。电子设备120安装和运行有支持密钥灌装的应用程序。
可选地,服务器140是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统,或者是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
可选地,电子设备120泛指多个电子设备中的一个,本申请实施例仅以电子设备120来举例说明。
本领域技术人员可以知晓,上述电子设备的数量可以更多或更少。比如上述电子设备仅为一个,或者上述电子设备为几十个或几百个,或者更多数量,此时上述实施环境中还包括其他电子设备。本申请实施例对电子设备的数量和设备类型不加以限定。
在介绍完本申请实施例的实施环境之后,下面对本申请实施例提供的技术方案的应用场景进行说明。
本申请实施例提供的技术方案能够应用在商家定制安全芯片的场景下,比如,一个商家想要定制一种储值卡,该储值卡上携带有安全芯片,安全芯片用于对储值卡中携带的信息进行加密,从而防止储值卡中的信息被篡改,避免出现储值卡被盗刷或者储值卡中被写入额外的信息的情况。该商家能够向安全芯片的生产厂商发布需求,该安全芯片的生产厂商能够基于商家的需求来进行安全芯片的定制。该安全芯片的生产厂商就能够采用本申请实施例提供的技术方案,对安全芯片进行密钥灌装,将密钥灌装后的安全芯片放置在商家的储值卡上,在密钥灌装的过程中,该商家用于读取储值卡的服务器也就为上述实施环境中的服务器140,该安全芯片的生成厂商对安全芯片进行密钥灌装的设备也就为上述电子设备120。当用户购买该商家端储值卡后,就能够通过携带有安全芯片的储蓄卡在该商家进行消费,消费过程中储值卡额度的变化由安全芯片加密后存储在储值卡中,这样就能够避免储值卡被盗刷或者携带的信息被改写。
本申请实施例提供的技术方案能够应用在数据加密的场景下,比如,一个通讯应用的制作者想要定制一种安全芯片,该安全芯片用于对通讯应用中传递的消息进行加密,从而防止通讯应用中传递的消息被窃取。该通讯应用制作者能够向安全芯片的生产厂商发布需求,该安全芯片的生产厂商能够基于通讯应用制作者的需求来进行安全芯片的定制。该安全芯片的生产厂商就能够采用本申请实施例提供的技术方案,对安全芯片进行密钥灌装,将密钥灌装后的安全芯片放置在安装有该通讯应用的设备上,在密钥灌装的过程中,该通讯应用的服务器也就为上述实施环境中的服务器140,该安全芯片的生成厂商对安全芯片进行密钥灌装的设备也就为上述电子设备120。用户能够使用安装有安全芯片的设备来使用该通讯应用,从而防止消息被窃取。
又如,本申请实施例能够应用在区块链系统中,由于区块链系统中包括多个节点,节点之间数据传输的模式为加密传输,在此基础上,区块链系统中的各个节点上能够采用本申请实施例提供的安全芯片来对数据进行加密和解密,从而保证数据的安全。可选地,区块链系统中的各个节点为上述实施环境中的电子设备。
需要说明的是,上述应用场景的介绍仅仅是以商家定制储值卡和通讯应用定制安全芯片为例进行说明的,在其他可能的实施方式中,本申请实施例提供的密钥灌装方法也能够应用在其他的安全芯片制作场景,本申请实施例对此不做限定。
为了对本申请实施例提供的技术方案进行更加清楚的说明,下面将分别以上述实施环境中的安全芯片、电子设备以及服务器为执行主体进行说明。
图2是本申请实施例提供的一种密钥灌装方法的流程图,参见图2,以执行主体为安全芯片为例,方法包括:
201、安全芯片获取电子设备灌装到安全芯片中的验证公钥,验证公钥由服务器生成,验证公钥用于对信息进行加密,验证公钥对应的验证私钥用于对加密后的信息进行解密。
其中,验证公钥和验证私钥为服务器生成的一对非对称加密的密钥对。
在一种可能的实施方式中,服务器能够将第二灌装信息发送给电子设备,由电子设备将第二灌装信息中的验证公钥发送给安全芯片。其中,服务器为待使用该安全芯片的服务器,比如为商家的服务器,电子设备为制作安全芯片的厂家使用的设备。
202、安全芯片采用验证公钥对传输信息进行加密。
在一种可能的实施方式中,安全芯片采用安全芯片的芯片私钥对传输信息进行加密,得到第一加密传输信息。安全芯片采用验证公钥对第一加密传输信息进行加密,得到第二加密传输信息,向服务器传输第二加密传输信息。
通过步骤202,在加密信息传输过程中,安全芯片能够采用验证公钥对需要传输的信息进行加密,服务器能够通过该验证公钥对应的验证私钥对加密后的信息进行解密,从而实现传输信息的保密发送。
可选地,第二灌装信息除了包括验证公钥之外,还包括服务器采用安全芯片的芯片公钥以及与验证公钥对应的验证私钥对验证信息进行加密后得到的第一认证码,在步骤201之后,安全芯片除了能够执行上述步骤202,也能够直接执行下述步骤203-205来对灌装的验证公钥进行验证。
203、安全芯片采用芯片私钥以及验证公钥对第一认证码进行解密,得到第一信息。
在一种可能的实施方式中,安全芯片采用验证公钥对第一认证码进行解密,得到第二验证码。安全芯片采用芯片私钥对第二验证码进行解密,得到第一信息。
由于加密和解密过程是对应的两个过程,为了对上述实施方式进行更加清楚的说明,下面先对服务器采用芯片公钥以及验证私钥对验证信息进行加密的过程进行说明:
在一种可能的实施方式中,服务器能够采用芯片公钥对验证信息进行加密,得到第一验证码,采用验证私钥对第一验证码进行加密,得到第一认证码。
举例来说,若芯片公钥为(n1,d1),那么对于验证信息z1来说,服务器能够采用芯片公钥(n1,d1),通过加密公式z1 d1=c1(mod n1)来对验证信息进行加密,其中,c1为对验证信息z1进行加密后的第一验证码。对公式z1 d1= c1(mod n1)进行形式变换,能够得到c1= z1 d1% n1。若验证信息z1为3,n1=12,d1=7,那么c1=37%12=3,也即是第一验证码c1为3。若验证私钥为(n2,e1),那么对于第一验证码c1来说,服务器能够采用验证私钥(n2,e1),对第一验证码c1进行加密,加密公式为c1 e1=k1(mod n2),其中k1为第一认证码。对公式为c1 e1= k1(mod n2)进行形式变换,能够得到k1= c1 e1% n2。若n2=55,e1=17,那么k1= 317% 55=53,也即是第一认证码为53。
接着对安全芯片获取第一信息的方式进行说明:
举例来说,若验证公钥为(n2,d2),那么对于第一认证码k1来说,安全芯片能够采用验证公钥(n2,d2),通过解密公式k1 d2=c2(mod n2)来对第一认证码k1进行解密,对公式c2 d2=k(mod n2)进行形式变换,能够得到c2= k1 d2% n2。若第一认证码k1=53,n2=55,d2=33,那么c1=5333% 55=3,也就能够得到第二验证码c2为3。经过与之前举例的对比,若验证公钥(n2,d2)与芯片公钥(n1,d1)相对应,那么得到的第二验证码c2与服务器生成第一验证码c1相同。若芯片私钥为(n1,e2),安全芯片能够通过解密公式c2 e2= z2(mod n1)来对第一验证码c2进行解密,得到第一信息z2。当然,若芯片私钥(n1,e2)与验证私钥(n1,d1)相对应,那么解密得到的第一信息z2与服务器生成的验证信息z1也相同。
下面对安全芯片生成芯片私钥和芯片公钥的方法进行说明:
在一种可能的实施方式中,安全芯片能够通过非对称加密算法,生成芯片公钥和芯片私钥。
举例来说,安全芯片随机生成两个质数a和b,获取a和b的乘积n。将乘积n转换为二进制,该二进制数的位数也就表示非对称加密算法的位数。确定该乘积n的欧拉函数m=φ(n)。随机生成一个整数e,1<e<m,且e和m互质。获取一个整数d,使得e*d-1=y*m。最终,生成的芯片公钥为(n,e),芯片私钥为(n,d)。需要说明的是,在安全芯片生成e和d的过程中,e的取值可能有多个,那么根据多个e生成的多个d也就能构成多个密钥对。
比如,安全芯片生成的a=5,b =11,获取他们的乘积 n = 5 * 11 =55 。安全芯片将乘积55转化为二进制数 110111,在一些实施例中,二进制数的位数是加密算法的位数,在上述举例中,也即是该加密算法的位数为6位。安全芯片将该乘积带入欧拉函数,根据公式m=φ(55)=φ(5) φ(11)=(5-1)(11-1)=40。安全芯片随机生成一个整数e,比如为17,17与55互质且1<17<55。安全芯片基于公式e*d-1=y*m,将e=17,m=40带入,得到二元一次方程,17*d-1=y*40,安全芯片获取该二元一次方程的一组整数解为d=33,y=14。那么安全芯片生成的芯片公钥为(55,17),芯片私钥为(55,33)。
需要说明的是,上述是以安全芯片基于欧拉函数来生成密钥对为例进行说明的,在其他可能的实施方式中,安全芯片也能够采用其他方式来生成密钥对,本申请实施例对此不做限定。
204、安全芯片采用验证公钥以及芯片私钥对第一信息进行加密,得到第二认证码。
在一种可能的实施方式中,安全芯片采用验证公钥对第一信息进行加密,得到第三验证码。安全芯片采用芯片私钥对第三验证码进行加密,得到第二认证码。
举例来说,若验证公钥为(n2,d2),那么对于第一信息z2来说,安全芯片能够采用验证公钥为(n2,d2),通过加密公式z2 d2=c3(mod n2)来对验证信息进行加密,其中,c3为对第一信息z2进行加密后的第三验证码。对公式z2 d2=c3(mod n2)进行形式变换,能够得到c3= z2 d2%n2。若第一信息z2为4,n2=15,d2=11,那么c3=411%15=4,也即是第三验证码c3为4。若芯片私钥为(n1,e2),那么对于第三验证码c3来说,安全芯片能够采用芯片私钥(n1,e2),对第三验证码c3进行加密,加密公式为c3 e2=k2(mod n1),其中k2为第二认证码。对公式为c3 e2=k2(mod n1)进行形式变换,能够得到k2= c3 e2% n1。若n1=55,e2=33,那么k2= 433% 55=9,也即是第二认证码为9。
205、安全芯片将第二认证码发送给服务器,以使服务器基于第二认证码中的第一信息和验证信息对安全芯片进行验证。
在一种可能的实施方式中,安全芯片能够将第二认证码发送给电子设备,由电子设备将第二认证码发送给服务器。服务器接收到第二认证码之后,能够对第二认证码进行解密,获取第二认证码中的第一信息。服务器将第一信息与验证信息进行比较,响应于第一信息与验证信息相同,服务器确定安全芯片的密钥灌装完成,安全芯片可以出厂使用。响应于第一信息与验证信息不同,服务器确定安全芯片的密钥灌装出现异常,安全芯片无法正常使用。
通过上述步骤203-205,安全芯片能够在密钥灌装之后,通过服务器来进行进一步验证,从而保证各个密钥相互配合,正确实现信息的加密和解密,保证信息传输的准确性。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
图3是本申请实施例提供的一种密钥灌装方法的流程图,参见图3,以执行主体为电子设备为例,方法包括:
301、电子设备向服务器发送第一灌装信息,第一灌装信息用于指示电子设备对安全芯片的灌装权限。
可选地,第一灌装信息包括安全芯片的芯片标识以及电子设备的设备标识,服务器能够基于芯片标识和设备标识来确定电子设备是否具有对安全芯片的灌装权项。
在一种可能的实施方式中,电子设备采用电子设备的电子设备私钥对第一灌装信息进行加密,得到第一加密信息。电子设备向服务器发送第一加密信息。
举例来说,电子设备将第一灌装信息映射为第一灌装信息对应的第一信息摘要。电子设备采用电子设备私钥对第一信息摘要和第一灌装信息进行加密,得到第一加密信息。电子设备将第一加密信息发送给服务器,由服务器基于第一加密信息来对电子设备对安全芯片的灌装权限进行验证。在服务器基于第一加密信息来对电子设备对安全芯片的灌装权限进行验证的过程中,服务器能够基于第一信息摘要来验证第一灌装信息是否被篡改,也即是采用第一关系数据将第一灌装信息映射为第二信息摘要,比较第一信息摘要和第二信息摘要,当第一信息摘要和第二信息摘要相同时,服务器能够确定第一灌装信息未被篡改。
比如,电子设备采用第一关系数据,将第一灌装信息映射为第一信息摘要,第一关系数据为非对称加密函数,第一关系数据能够将不同长度的信息映射为固定长度的散列。在一些实施例中,第一关系数据为MD5算法(Message-Digest Algorithm,信息摘要算法5)以及SHA-2(Secure Hash Algorithm 2,安全加密算法2),或者为其他算法,本申请实施例对此不做限定。电子设备采用电子设备私钥对第一信息摘要和第一灌装信息分别进行加密,得到第一信息摘要对应的电子设备签名以及第一灌装信息对应的加密信息。电子设备将电子设备签名和第一灌装信息对应的加密信息进行拼接,得到第一加密信息。电子设备将第一加密信息发送给服务器。
302、电子设备获取服务器发送的第二灌装信息,第二灌装信息包括服务器生成的验证公钥,第二灌装信息为服务器基于第一灌装信息,确定电子设备具有对安全芯片的灌装权限后发送的灌装信息。
在一种可能的实施方式中,电子设备获取服务器发送的第二加密信息,第二加密信息由服务器采用服务器的服务器私钥对第二灌装信息进行加密后得到。电子设备采用服务器私钥对应的服务器公钥对第二加密信息进行解密,得到第二灌装信息。
举例来说,服务器基于第一灌装信息,确定电子设备具有对安全芯片的灌装权限后,能够采用服务器私钥对生成的第二灌装信息进行加密,得到第二加密信息,服务器向电子设备发送第二加密信息。电子设备接收到第二加密信息之后,能够采用服务器公钥对第二加密信息进行解密,得到第二灌装信息。需要说明的是,服务器既能够在第二灌装信息中携带服务器公钥,也能够提前将服务器公钥发送给电子设备,本申请实施例对此不做限定。
比如,若服务器的服务器私钥为(n3,e3),那么对于第二灌装信息z3来说,服务器能够采用服务器私钥为(n3,e3),通过加密公式z3 e3=c4(mod n3)来对第二灌装信息z3进行加密,其中,c4为对第二灌装信息z3进行加密后的第二加密信息。对公式z3 e3=c4(mod n3)进行形式变换,能够得到c4= z3 e3% n3。若第二灌装信息z3为2,n3=21,e3=16,那么c1=216%21=16,也即是第二加密信息c4为16,服务器将第二加密信息c4发送给电子设备。电子设备接收第二加密信息c4,采用服务器公钥对第二加密信息c4进行解密,得到第二灌装信息z3
303、电子设备将验证公钥灌装到安全芯片中,验证公钥用于对信息进行加密,验证公钥对应的验证私钥用于对加密后的信息进行解密。
电子设备对安全芯片进行灌装之后,安全芯片能够对验证公钥进行存储,在后续的加密信息传输过程中,安全芯片能够采用验证公钥对需要传输的信息进行加密,服务器能够通过该验证公钥对应的验证私钥对加密后的信息进行解密。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
图4是本申请实施例提供的一种密钥灌装方法的流程图,参见图4,以执行主体为服务器为例,方法包括:
401、服务器获取电子设备发送的第一灌装信息,第一灌装信息用于指示电子设备对安全芯片的灌装权限。
在一种可能的实施方式中,服务器获取电子设备发送的第一加密信息,第一加密信息由电子设备采用电子设备的电子设备私钥对第一灌装信息进行加密后得到。服务器采用电子设备私钥对应的电子设备公钥,对第一加密信息进行解密,得到第一灌装信息。
402、响应于电子设备具有对安全芯片的灌装权限,服务器向电子设备发送第二灌装信息,第二灌装信息包括服务器生成的验证公钥,以使电子设备将验证公钥灌装至安全芯片中,验证公钥用于对信息进行加密,验证公钥对应的验证私钥用于对加密后的信息进行解密。
在一种可能的实施方式中,服务器采用服务器的服务器私钥对第二灌装信息进行加密,得到第二加密信息。服务器向电子设备发送第二加密信息。
举例来说,服务器将第二灌装信息映射为第二灌装信息对应的第四信息摘要。服务器采用服务器私钥对第四信息摘要和第二灌装信息进行加密,得到第二加密信息。
比如,服务器采用第二关系数据,将第二灌装信息映射为第四信息摘要,第二关系数据为非对称加密函数,第二关系数据能够将不同长度的信息映射为固定长度的散列。在一些实施例中,第一关系数据为MD5算法(Message-Digest Algorithm,信息摘要算法5)以及SHA-2(Secure Hash Algorithm 2,安全加密算法2),或者为其他算法,本申请实施例对此不做限定。服务器采用服务器私钥对第四信息摘要和第二灌装信息分别进行加密,得到第四信息摘要对应的服务器签名以及第二灌装信息对应的加密信息。服务器将服务器签名和第二灌装信息对应的加密信息进行拼接,得到第二加密信息。服务器将第二加密信息发送给电子设备。电子设备接收到第二加密信息之后,能够采用服务器公钥对第二加密信息进行解密,得到第四信息摘要和第二灌装信息。可选地,在电子设备获取第二灌装信息,将验证公钥灌装到安全芯片之前,电子设备能够基于第四信息摘要来验证第二灌装信息是否被篡改,也即是采用第二关系数据将第二灌装信息映射为第五信息摘要,比较第五信息摘要和第四信息摘要,当第五信息摘要和第四信息摘要相同时,电子设备能够确定第二灌装信息未被篡改,第二灌装信息为服务器发送的灌装信息,将第二灌装信息中的验证公钥灌装到安全芯片,以使安全芯片能够采用验证公钥对信息进行加密。
可选地,第一灌装信息包括安全芯片的芯片公钥,在步骤402之后,服务器还能够执行以下步骤:
403、服务器采用芯片公钥以及验证私钥对生成的验证信息进行加密,得到第一认证码。
在一种可能的实施方式中,服务器采用芯片公钥对验证信息进行加密,得到第一验证码。服务器采用验证私钥对第一验证码进行加密,得到第一认证码。
举例来说,若芯片公钥为(n1,d1),那么对于验证信息z1来说,服务器能够采用芯片公钥(n1,d1),通过加密公式z1 d1=c1(mod n1)来对验证信息进行加密,其中,c1为对验证信息z1进行加密后的第一验证码。对公式z1 d1= c1(mod n1)进行形式变换,能够得到c1= z1 d1% n1。若验证信息z1为3,n1=12,d1=7,那么c1=37%12=3,也即是第一验证码c1为3。若验证私钥为(n2,e1),那么对于第一验证码c1来说,服务器能够采用验证私钥(n2,e1),对第一验证码c1进行加密,加密公式为c1 e1=k1(mod n2),其中k1为第一认证码。对公式为c1 e1= k1(mod n2)进行形式变换,能够得到k1= c1 e1% n2。若n2=55,e1=17,那么k1= 317% 55=53,也即是第一认证码为53。
404、服务器向安全芯片发送第一认证码,以使安全芯片采用安全芯片的芯片私钥以及验证公钥对第一认证码进行解密,得到第一信息。
405、服务器获取第二认证码,第二认证码为安全芯片采用验证公钥以及芯片私钥对第一信息进行加密得到的认证码。
在一种可能的实施方式中,服务器接收第三加密信息,第三加密信息为电子设备采用电子设备的电子设备私钥对第二认证码进行加密,得到加密信息。服务器采用电子设备私钥对应的电子设备公钥对第三加密信息进行解密,得到第二认证码。
406、服务器采用芯片公钥对第二认证码进行解密,得到第三验证码。
举例来说,若芯片公钥为(n1,d1),那么对于第二认证码k2来说,服务器能够采用芯片公钥(n1,d1),通过解密公式k2 d1=c3(mod n1)来对第二认证码k2进行解密,对公式k2 d1=c3(mod n1)进行形式变换,能够得到c3= k2 d1% n1。若第二认证码k2=9,n2=13,d2=11,那么c1=911%13=3,也就能够得到第三验证码c3为3。
407、服务器采用验证私钥对第三验证码进行解密,得到第一信息。
举例来说,若验证私钥为(n2,e1),那么对于第三验证码c3来说,服务器能够采用验证私钥为(n2,e1),通过解密公式z2 e1=c3(mod n2)来对第三验证码c3进行解密,对公式z2 e1=c3(mod n2)进行形式变换,能够得到c3= z2 e1% n2。若第三验证码c3=3,n2=11,d2=9,那么c1=39%11=4,也就能够得到第一信息z2为4。
408、响应于第二认证码中的第一信息与验证信息相同,服务器向电子设备发送安全芯片的验证通过信息。
其中,验证通过信息表示服务器确定安全芯片的密钥灌装完成,安全芯片可以出厂使用。
除了步骤408之外,响应于第二认证码中的第一信息与验证信息不同,服务器向电子设备发送安全芯片的验证未通过信息,以使电子设备对安全芯片重新进行密钥灌装。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
为了对本申请实施例提供的技术方案进行更加清楚的说明,下面将结合上述各个步骤,对安全芯片、电子设备以及服务器之间的交互过程进行说明。图5是本申请实施例提供的一种密钥灌装方法的交互流程图,参见图5,方法包括:
501、安全芯片随机生成芯片密钥对,芯片密钥对包括芯片公钥和芯片私钥。
其中,安全芯片生成芯片密钥对的数量可以为多个。
在一种可能的实施方式中,安全芯片能够通过非对称加密算法,生成芯片公钥和芯片私钥。
举例来说,安全芯片随机生成两个质数a和b,获取a和b的乘积n。将乘积n转换为二进制,该二进制数的位数也就表示非对称加密算法的位数。确定该乘积n的欧拉函数m=φ(n)。随机生成一个整数e,1<e<m,且e和m互质。获取一个整数d,使得e*d-1=y*m。最终,生成的芯片公钥为(n,e),芯片私钥为(n,d)。需要说明的是,在安全芯片生成e和d的过程中,e的取值可能有多个,那么根据多个e生成的多个d也就能构成多个密钥对。
比如,安全芯片生成的a=5,b =11,获取他们的乘积 n = 5 * 11 =55 。安全芯片将乘积55转化为二进制数 110111,在一些实施例中,二进制数的位数是加密算法的位数,在上述举例中,也即是该加密算法即为6位。安全芯片将该乘积带入欧拉函数,根据公式m=φ(55)=φ(5) φ(11)=(5-1)(11-1)=40。安全芯片随机生成一个整数e,比如为17,17与55互质且1<17<55。安全芯片基于公式e*d-1=y*m,将e=17,m=40带入,得到二元一次方程,17*d-1=y*40,安全芯片获取该二元一次方程的一组整数解为d=33,y=14。那么安全芯片生成的芯片公钥为(55,17),芯片私钥为(55,33)。
需要说明的是,上述是以安全芯片基于欧拉函数来生成密钥对为例进行说明的,在其他可能的实施方式中,安全芯片也能够采用其他方式来生成密钥对,本申请实施例对此不做限定。
502、电子设备获取安全芯片的芯片公钥。
503、电子设备将第一灌装信息映射为第一灌装信息对应的第一信息摘要。
在一种可能的实施方式中,电子设备采用第一关系数据,将第一灌装信息映射为第一信息摘要,第一关系数据为非对称加密函数,第一关系数据能够将不同长度的信息映射为固定长度的散列。在一些实施例中,第一关系数据为MD5算法(Message-DigestAlgorithm,信息摘要算法5)以及SHA-2(Secure Hash Algorithm 2,安全加密算法2),或者为其他算法,本申请实施例对此不做限定。
举例来说,若第一灌装信息为6,那么电子设备能够采用MD5算法对6进行处理,得到第一信息摘要5a880faf6fb5e608。
504、电子设备采用电子设备私钥对第一信息摘要和第一灌装信息进行加密,得到第一加密信息。
可选地,第一加密信息也可以被称为安全芯片的登记请求。
在一种可能的实施方式中,电子设备采用电子设备私钥对第一信息摘要和第一灌装信息分别进行加密,得到第一信息摘要对应的电子设备签名以及第一灌装信息对应的加密信息,在一些实施例中,电子设备签名也被称为厂商签名。电子设备将电子设备签名和第一灌装信息对应的加密信息进行拼接,得到第一加密信息。电子设备将第一加密信息发送给服务器。
举例来说,若电子设备私钥为(n4,e4),那么对于第一灌装信息z4来说,电子设备能够采用电子设备私钥(n4,e4),通过加密公式z4 e4=c5(mod n4)来对第二灌装信息z3进行加密,其中,c5为对第一灌装信息z4进行加密后对应的加密信息。对公式z4 e4=c5(mod n4)进行形式变换,能够得到c5= z4 e4% n4。若第一灌装信息z4为4,n4=25,e4=21,那么c1=421%25=4,也即是第一灌装信息z4对应的加密信息为4。电子设备能够采用电子设备私钥(n4,e4),通过加密公式l1 e4=c6(mod n4)来对第一信息摘要l1进行加密,其中,c6为电子设备签名。对公式l1 e4=c6(mod n4)进行形式变换,能够得到c6= l1 e4% n4。若第一灌装信息l1为6,n4=25,e4=21,那么c1=621%25=6,也即是电子设备签名c6为6。电子设备能够将第一灌装信息z4对应的加密信息和电子设备签名进行拼接,得到第一加密信息(4,6),将第一加密信息(4,6)发送给服务器。
505、电子设备将第一加密信息发送给服务器。
506、服务器接收第一加密信息,采用电子设备私钥对应的电子设备公钥,对第一加密信息进行解密,得到第一灌装信息。
在一种可能的实施方式中,服务器还用于接收第一加密信息,采用电子设备公钥,对第一加密信息进行解密,得到第二信息摘要和第三灌装信息。服务器还用于将第三灌装信息映射为第三灌装信息对应的第三信息摘要。服务器还用于响应于第三信息摘要与第二信息摘要相同,确定第三灌装信息为电子设备获取的第一灌装信息。
可选地,服务器能够将第一灌装信息中携带的芯片公钥进行存储,便于后续信息传递过程中进行解密。
507、服务器生成验证密钥对以及用于对安全芯片进行验证的验证信息,验证密钥对包括验证公钥和验证私钥。
在一种可能的实施方式中,服务器能够通过非对称加密算法,生成验证密钥对。服务器随机生成验证信息,比如服务器随机生成一个字符串来作为验证信息,在一些实施例中,验证信息也被成为会话密钥。
下面对服务器生成验证密钥对的方法进行说明:
举例来说,服务器随机生成两个质数c和d,获取c和d的乘积o。服务器确定该乘积o的欧拉函数m=φ(o)。随机生成一个整数f,1<f<m,且f和m互质。获取一个整数d,使得f*d-1=y*m。最终,生成的验证公钥为(o,f),验证私钥为(o,d)。需要说明的是,在服务器生成f和d的过程中,f的取值可能有多个,那么根据多个f生成的多个d也就能构成多个密钥对。
比如,服务器生成的c=5,d =11,获取他们的乘积 o = 5 * 11 =55 。服务器将乘积55转化为二进制数 110111,在一些实施例中,二进制数的位数是加密算法的位数,在上述举例中,也即是该加密算法的位数为6位。服务器将该乘积带入欧拉函数,根据公式m=φ(55)=φ(5) φ(11)=(5-1)(11-1)=40。服务器随机生成一个整数f,比如为17,17与55互质且1<17<55。服务器基于公式f*d-1=y*m,将f=17,m=40带入,得到二元一次方程,17*d-1=y*40,服务器获取该二元一次方程的一组整数解为d=33,y=14。那么服务器生成的验证公钥为(55,17),验证私钥为(55,33)。
需要说明的是,上述是以服务器基于欧拉函数来生成密钥对为例进行说明的,在其他可能的实施方式中,服务器也能够采用其他方式来生成密钥对,本申请实施例对此不做限定。
508、服务器采用芯片公钥以及与验证私钥对生成的验证信息进行加密,得到第一认证码。
在一种可能的实施方式中,服务器采用芯片公钥对验证信息进行加密,得到第一验证码。服务器采用验证私钥对第一验证码进行加密,得到第一认证码。
举例来说,若芯片公钥为(n1,d1),那么对于验证信息z1来说,服务器能够采用芯片公钥(n1,d1),通过加密公式z1 d1=c1(mod n1)来对验证信息进行加密,其中,c1为对验证信息z1进行加密后的第一验证码。对公式z1 d1= c1(mod n1)进行形式变换,能够得到c1= z1 d1% n1。若验证信息z1为3,n1=12,d1=7,那么c1=37%12=3,也即是第一验证码c1为3。若验证私钥为(n2,e1),那么对于第一验证码c1来说,服务器能够采用验证私钥(n2,e1),对第一验证码c1进行加密,加密公式为c1 e1=k1(mod n2),其中k1为第一认证码。对公式为c1 e1= k1(mod n2)进行形式变换,能够得到k1= c1 e1% n2。若n2=55,e1=17,那么k1= 317% 55=53,也即是第一认证码为53。
509、服务器向电子设备发送第二灌装信息,第二灌装信息包括服务器生成的第一认证码。
在一种可能的实施方式中,服务器采用服务器的服务器私钥对第二灌装信息进行加密,得到第二加密信息,在一些实施例中,第二加密信息也被成为服务器签名。
举例来说,服务器将第二灌装信息映射为第二灌装信息的第四信息摘要。服务器采用服务器私钥对第四信息摘要和第二灌装信息进行加密,得到第二加密信息。
510、电子设备获取第二灌装信息。
在一种可能的实施方式中,电子设备采用与服务器私钥对应的服务器公钥对第二加密信息进行解密,得到第二灌装信息。
举例来说,电子设备接收第二加密信息,采用服务器公钥,对第二加密信息进行解密,得到第五信息摘要和第四灌装信息。电子设备将第四灌装信息映射为第四灌装信息对应的第六信息摘要。电子设备响应于第六信息摘要与第四信息摘要相同,确定第四灌装信息为服务器发送的第二灌装信息。
511、电子设备将验证公钥灌装至安全芯片中,验证公钥用于对信息进行加密,验证公钥对应的验证私钥用于对加密后的信息进行解密。
其中,电子设备将验证公钥灌装至安全芯片,也可以被称为将验证公钥烧录至安全芯片。
512、电子设备向安全芯片发送第一认证码。
可选地,电子设备也能够在灌装验证公钥的同时,向安全芯片发送第一认证码,本申请实施例对此不做限定。
513、安全芯片接收第一认证码以及验证公钥。
514、安全芯片采用安全芯片的芯片私钥以及验证公钥对第一认证码进行解密,得到第一信息。
在一种可能的实施方式中,安全芯片采用验证公钥对第一认证码进行解密,得到第二验证码。安全芯片采用芯片私钥对第二验证码进行解密,得到第一信息。
举例来说,若验证公钥为(n2,d2),那么对于第一认证码k1来说,安全芯片能够采用验证公钥(n2,d2),通过解密公式k1 d2=c2(mod n2)来对第一认证码k1进行解密,对公式c2 d2=k(mod n2)进行形式变换,能够得到c2= k1 d2% n2。若第一认证码k1=53,n2=55,d2=33,那么c1=5333% 55=3,也就能够得到第二验证码c2为3。经过与之前举例的对比,若验证公钥(n2,d2)与芯片公钥(n2,e1)相对应,那么得到的第二验证码c2与服务器生成第一验证码c1相同。若芯片私钥为(n1,e2),安全芯片能够通过解密公式c2 e2= z2(mod n1)来对第一验证码c2进行解密,得到第一信息z2。当然,若芯片私钥(n1,e2)与验证私钥(n1,d1)相对应,那么解密得到的第一信息z2与服务器生成的验证信息z1也相同。
515、安全芯片采用验证公钥以及芯片私钥对第一信息进行加密,得到第二认证码。
在一种可能的实施方式中,安全芯片采用验证公钥对第一信息进行加密,得到第三验证码。安全芯片采用芯片私钥对第三验证码进行加密,得到第二认证码。
举例来说,若验证公钥为(n2,d2),那么对于第一信息z2来说,安全芯片能够采用验证公钥为(n2,d2),通过加密公式z2 d2=c3(mod n2)来对验证信息进行加密,其中,c3为对第一信息z2进行加密后的第三验证码。对公式z2 d2=c3(mod n2)进行形式变换,能够得到c3= z2 d2%n2。若第一信息z2为4,n2=15,d2=11,那么c3=411%15=4,也即是第三验证码c3为4。若芯片私钥为(n1,e2),那么对于第三验证码c3来说,安全芯片能够采用芯片私钥(n1,e2),对第三验证码c3进行加密,加密公式为c3 e2=k2(mod n1),其中k2为第二认证码。对公式为c3 e2=k2(mod n1)进行形式变换,能够得到k2= c3 e2% n1。若n1=55,e2=33,那么k2= 433% 55=9,也即是第二认证码为9。
516、安全芯片将第二认证码发送给电子设备。
517、电子设备采用电子设备的电子设备私钥对第二认证码进行加密,得到第三加密信息。
举例来说,若电子设备私钥为(n4,e4),那么对于第二认证码k2来说,电子设备能够采用电子设备私钥(n4,e4),通过加密公式z5 e4= k2(mod n4)来对第二认证码k2进行加密,其中,z5为第三加密信息。对公式z5 e4= k2(mod n4)进行形式变换,能够得到k2= z5 e4% n4。若第一灌装信息k2为9,n4=25,e4=21,那么c1=921%25=4,也即是第三加密信息为9。
518、电子设备将第三加密信息发送给服务器。
可选地,第三加密信息也被成为安全芯片启用请求,用于请求服务器启用安全芯片。
519、服务器接收第三加密信息。
520、服务器采用电子设备公钥对第三加密信息进行解密,得到第二认证码。
举例来说,若电子设备公钥为(n4,d4),那么对于第三加密信息z5来说,服务器能够采用电子设备公钥为(n4,d4),通过解密公式k2 d4= z5(mod n4)来对第三加密信息z5进行解密,对公式k2 d4= z5(mod n4)进行形式变换,能够得到z5= k2 d4% n4。若第三加密信息z5=9,n2=55,d2=21,那么z5=921%55=9,也就能够得到第二认证码z5为9。
521、服务器采用芯片公钥对第二认证码进行解密,得到第三验证码。
举例来说,若芯片公钥为(n1,d1),那么对于第二认证码k2来说,服务器能够采用芯片公钥(n1,d1),通过解密公式k2 d1=c3(mod n1)来对第二认证码k2进行解密,对公式k2 d1=c3(mod n1)进行形式变换,能够得到c3= k2 d1% n1。若第二认证码k2=9,n2=13,d2=11,那么c1=911%13=3,也就能够得到第三验证码c3为3。
522、服务器采用验证私钥对第三验证码进行解密,得到第一信息。
举例来说,若验证私钥为(n2,e1),那么对于第三验证码c3来说,服务器能够采用验证私钥为(n2,e1),通过解密公式z2 e1=c3(mod n2)来对第三验证码c3进行解密,对公式z2 e1=c3(mod n2)进行形式变换,能够得到c3= z2 e1% n2。若第三验证码c3=3,n2=11,d2=9,那么c1=39%11=4,也就能够得到第一信息z2为4。
523、服务器响应于第二认证码中的第一信息与验证信息相同,向电子设备发送安全芯片的验证通过信息。
电子设备接收到安全芯片验证通过信息之后,完成对安全芯片的灌装流程,安全芯片能够正常使用。
也即是,在储值卡定制的场景下,电子设备接收到安全芯片验证通过信息之后,安全芯片厂商也就能够将灌装完成的安全芯片进行出厂,比如将安全芯片发送给储值卡制作的厂商,由储值卡制作的厂商将安全芯片安装到储值卡上。在用户使用储值卡的过程中,当有设备读取储值卡中的信息时,安全芯片能够将信息进行加密,从而避免储值卡中信息的泄漏。在服务器向储值卡中写入信息时,写入的信息也需要通过安全芯片进行解密,从而保证写入信息的安全性。
在数据加密的场景下,电子设备接收到安全芯片验证通过信息之后,安全芯片厂商也就能够将灌装完成的安全芯片进行出厂,比如将安全芯片发送给设备制作厂商,由备制作将安全芯片安装到设备上。在用户使用特定通讯应用与外界进行沟通时,安全芯片能够将用户发送信息进行加密,从而避免信息的泄漏。在获取服务器发送的回复信息时,回复信息也需要通过安全芯片进行解密,从而保证写入信息的安全性。
除了步骤523之外,响应于第二认证码中的第一信息与验证信息不同,服务器向电子设备发送安全芯片的验证未通过信息,以使电子设备对安全芯片重新进行密钥灌装。
在一种可能的实施方式中,响应于第二认证码中的第一信息与验证信息不同,电子设备能够对安全芯片进行初始化,抹除安全芯片中存储的数据。重复执行上述步骤501-511,以完成对安全芯片的重新灌装。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
除此之外,本申请实施例还提供的一种密钥灌装系统,参见图6,系统包括:安全芯片601、电子设备602以及服务器603。
电子设备602用于向服务器603发送第一灌装信息,第一灌装信息用于指示电子设备602对安全芯片601的灌装权限。
服务器603用于接收第一灌装信息,响应于电子设备602具有对安全芯片601的灌装权限,向电子设备602发送第二灌装信息,第二灌装信息包括服务器603生成的验证公钥。
电子设备602还用于接收第二灌装信息,将验证公钥灌装至安全芯片601中,验证公钥用于对信息进行加密,验证公钥对应的验证私钥用于对加密后的信息进行解密。
在一种可能的实施方式中,电子设备602还用于采用电子设备602的电子设备602私钥对第一灌装信息进行加密,得到第一加密信息,将第一加密信息发送给服务器603。
服务器603还用于接收第一加密信息,采用电子设备602私钥对应的电子设备602公钥,对第一加密信息进行解密,得到第一灌装信息。
在一种可能的实施方式中,电子设备602还用于将第一灌装信息映射为第一灌装信息对应的第一信息摘要。
电子设备602还用于采用电子设备602私钥对第一信息摘要和第一灌装信息进行加密,得到第一加密信息。
服务器603还用于接收第一加密信息,采用电子设备602公钥,对第一加密信息进行解密,得到第二信息摘要和第三灌装信息。
服务器603还用于将第三灌装信息映射为第三灌装信息对应的第三信息摘要。
服务器603还用于响应于第三信息摘要与第二信息摘要相同,确定第三灌装信息为电子设备602获取的第一灌装信息。
在一种可能的实施方式中,第一灌装信息包括安全芯片601的芯片公钥,第二灌装信息包括服务器603生成的第一认证码。
服务器603还用于采用芯片公钥以及与验证私钥对生成的验证信息进行加密,得到第一认证码。
电子设备602还用于向安全芯片601发送第一认证码以及验证公钥。
安全芯片601用于接收第一认证码以及验证公钥。
安全芯片601还用于采用安全芯片601的芯片私钥以及验证公钥对第一认证码进行解密,得到第一信息。
安全芯片601还用于采用验证公钥以及芯片私钥对第一信息进行加密,得到第二认证码。
服务器603还用于获取第二认证码,采用验证私钥以及芯片公钥对第二认证码进行解密,得到第一信息。
服务器603还用于响应于第二认证码中的第一信息与验证信息相同,向电子设备602发送安全芯片601的验证通过信息。
在一种可能的实施方式中,服务器603还用于:
采用芯片公钥对验证信息进行加密,得到第一验证码。
采用验证私钥对第一验证码进行加密,得到第一认证码。
在一种可能的实施方式中,安全芯片601还用于:
采用验证公钥对第一认证码进行解密,得到第二验证码。
采用芯片私钥对第二验证码进行解密,得到第一信息。
在一种可能的实施方式中,安全芯片601还用于随机生成芯片密钥对,芯片密钥对包括芯片公钥和芯片私钥。
在一种可能的实施方式中,安全芯片601还用于:
采用验证公钥对第一信息进行加密,得到第三验证码。
采用芯片私钥对第三验证码进行加密,得到第二认证码。
在一种可能的实施方式中,电子设备602还用于:
采用电子设备602的电子设备602私钥对第二认证码进行加密,得到第三加密信息。
将第三加密信息发送给服务器603。
服务器603还用于:
接收第三加密信息。
采用电子设备602公钥对第三加密信息进行解密,得到第二认证码。
采用芯片公钥对第二认证码进行解密,得到第三验证码。
采用验证私钥对第三验证码进行解密,得到第一信息。
在一种可能的实施方式中,服务器603还用于采用服务器603的服务器603私钥对第二灌装信息进行加密,得到第二加密信息。
电子设备602还用于采用与服务器603私钥对应的服务器603公钥对第二加密信息进行解密,得到第二灌装信息。
在一种可能的实施方式中,服务器603还用于将第二灌装信息映射为第二灌装信息的第四信息摘要。
服务器603还用于采用服务器603私钥对第四信息摘要和第二灌装信息进行加密,得到第二加密信息。
电子设备602还用于接收第二加密信息,采用服务器603公钥,对第二加密信息进行解密,得到第五信息摘要和第四灌装信息。
电子设备602还用于将第四灌装信息映射为第四灌装信息对应的第六信息摘要。
电子设备602还用于响应于第六信息摘要与第四信息摘要相同,确定第四灌装信息为服务器603发送的第二灌装信息。
在一种可能的实施方式中,安全芯片601还用于采用安全芯片的芯片私钥对传输信息进行加密,得到第一加密传输信息。采用验证公钥对第一加密传输信息进行加密,得到第二加密传输信息。向服务器传输第二加密传输信息。
需要说明的是:上述实施例提供的密钥灌装系统与密钥灌装方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
图7是本申请实施例提供的一种密钥灌装装置结构示意图,参见图7,装置包括:第一发送模块701、第一获取模块702以及灌装模块703。
第一发送模块701,用于向服务器发送第一灌装信息,第一灌装信息用于指示电子设备对安全芯片的灌装权限。
第一获取模块702,用于获取服务器发送的第二灌装信息,第二灌装信息包括服务器生成的验证公钥,第二灌装信息为服务器基于第一灌装信息,确定电子设备具有对安全芯片的灌装权限后发送的灌装信息。
灌装模块703,用于将验证公钥灌装到安全芯片中,验证公钥用于对信息进行加密,验证公钥对应的验证私钥用于对加密后的信息进行解密。
在一种可能的实施方式中,第一发送模块,用于采用电子设备的电子设备私钥对第一灌装信息进行加密,得到第一加密信息。向服务器发送第一加密信息。
在一种可能的实施方式中,第一发送模块,用于将第一灌装信息映射为第一灌装信息对应的第一信息摘要。采用电子设备私钥对第一信息摘要和第一灌装信息进行加密,得到第一加密信息。
在一种可能的实施方式中,第一获取模块,用于获取服务器发送的第二加密信息,第二加密信息由服务器采用服务器的服务器私钥对第二灌装信息进行加密后得到。采用服务器私钥对应的服务器公钥对第二加密信息进行解密,得到第二灌装信息。
需要说明的是:上述实施例提供的密钥灌装装置在灌装密钥时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将电子设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的密钥灌装装置与密钥灌装方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
图8是本申请实施例提供的一种密钥灌装装置结构示意图,参见图8,装置包括:第二获取模块801以及第二发送模块802。
第二获取模块801,用于获取电子设备发送的第一灌装信息,第一灌装信息用于指示电子设备对安全芯片的灌装权限。
第二发送模块802,用于响应于电子设备具有对安全芯片的灌装权限,向电子设备发送第二灌装信息,第二灌装信息包括服务器生成的验证公钥,以使电子设备将验证公钥灌装至安全芯片中,验证公钥用于对信息进行加密,验证公钥对应的验证私钥用于对加密后的信息进行解密。
在一种可能的实施方式中,第二获取模块,用于获取电子设备发送的第一加密信息,第一加密信息由电子设备采用电子设备的电子设备私钥对第一灌装信息进行加密后得到。采用电子设备私钥对应的电子设备公钥,对第一加密信息进行解密,得到第一灌装信息。
在一种可能的实施方式中,第一灌装信息包括安全芯片的芯片公钥,装置还包括:
第一加密模块,用于采用芯片公钥以及验证私钥对生成的验证信息进行加密,得到第一认证码。
第二发送模块,还用于向安全芯片发送第一认证码,以使安全芯片采用安全芯片的芯片私钥以及验证公钥对第一认证码进行解密,得到第一信息。
第二获取模块,还用于获取第二认证码,第二认证码为安全芯片采用验证公钥以及芯片私钥对第一信息进行加密得到的认证码。
第四发送模块,用于响应于第二认证码中的第一信息与验证信息相同,向电子设备发送安全芯片的验证通过信息。
在一种可能的实施方式中,第一加密模块,用于采用芯片公钥对验证信息进行加密,得到第一验证码。采用验证私钥对第一验证码进行加密,得到第一认证码。
在一种可能的实施方式中,第三获取模块,用于接收第三加密信息,第三加密信息为电子设备采用电子设备的电子设备私钥对第二认证码进行加密,得到加密信息。采用电子设备私钥对应的电子设备公钥对第三加密信息进行解密,得到第二认证码。
在一种可能的实施方式中,装置还包括:
第一解密模块,用于采用芯片公钥对第二认证码进行解密,得到第三验证码。
第二解密模块,用于采用验证私钥对第三验证码进行解密,得到第一信息。
在一种可能的实施方式中,装置还包括:
第四发送模块,还用于响应于第二认证码中的第一信息与验证信息不同,向电子设备发送安全芯片的验证未通过信息,以使电子设备对安全芯片重新进行密钥灌装。
在一种可能的实施方式中,第二发送模块,用于采用服务器的服务器私钥对第二灌装信息进行加密,得到第二加密信息。向电子设备发送第二加密信息。
在一种可能的实施方式中,第二发送模块,用于将第二灌装信息映射为第二灌装信息对应的第四信息摘要。采用服务器私钥对第四信息摘要和第二灌装信息进行加密,得到第二加密信息。
需要说明的是:上述实施例提供的密钥灌装装置在灌装密钥时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的密钥灌装装置与密钥灌装方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
图9是本申请实施例提供的一种密钥灌装装置结构示意图,参见图9,装置包括:第三获取模块901以及传输信息加密模块902。
第三获取模块901,用于获取电子设备灌装到安全芯片中的验证公钥,验证公钥由服务器生成,验证公钥用于对信息进行加密,验证公钥对应的验证私钥用于对加密后的信息进行解密。
传输信息加密模块902,用于采用验证公钥对传输信息进行加密。
在一种可能的实施方式中,第二灌装信息还包括服务器采用安全芯片的芯片公钥以及与验证公钥对应的验证私钥对验证信息进行加密后得到的第一认证码,装置还包括:
第三解密模块,用于采用芯片私钥以及验证公钥对第一认证码进行解密,得到第一信息。
第二加密模块,用于采用验证公钥以及芯片私钥对第一信息进行加密,得到第二认证码。
第三发送模块,用于将第二认证码发送给服务器,以使服务器基于第二认证码中的第一信息和验证信息对安全芯片进行验证。
在一种可能的实施方式中,装置还包括:
生成模块,用于随机生成芯片密钥对,芯片密钥对包括芯片公钥和芯片私钥。
在一种可能的实施方式中,第三解密模块,用于采用验证公钥对第一认证码进行解密,得到第二验证码。采用芯片私钥对第二验证码进行解密,得到第一信息。
在一种可能的实施方式中,第二加密模块,用于采用验证公钥对第一信息进行加密,得到第三验证码。采用芯片私钥对第三验证码进行加密,得到第二认证码。
在一种可能的实施方式中,传输信息加密模块,用于采用安全芯片的芯片私钥对传输信息进行加密,得到第一加密传输信息。采用验证公钥对第一加密传输信息进行加密,得到第二加密传输信息。向服务器传输第二加密传输信息。
需要说明的是:上述实施例提供的密钥灌装装置在灌装密钥时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将安全芯片的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的密钥灌装装置与密钥灌装方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
通过本申请实施例提供的技术方案,能够将服务器生成的验证公钥灌装到安全芯片中,使得安全芯片使用验证公钥来对信息进行加密,在密钥灌装的过程中,完全不涉及私钥的传输,减小了私钥泄露的风险,提高信息的安全性。
图10是本申请实施例提供的一种电子设备的结构示意图。该电子设备1000可以是:智能手机、平板电脑、笔记本电脑或台式电脑。电子设备1000还可能被称为用户设备、便携式电子设备、膝上型电子设备、台式电子设备等其他名称。
通常,电子设备1000包括有:一个或多个处理器1001和一个或多个存储器1002。
处理器1001可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1001可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1002还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1002中的非暂态的计算机可读存储介质用于存储至少一个计算机程序,该至少一个计算机程序用于被处理器1001所执行以实现本申请中方法实施例提供的密钥灌装方法。
在一些实施例中,电子设备1000还可选包括有:外围设备接口1003和至少一个外围设备。处理器1001、存储器1002和外围设备接口1003之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1003相连。具体地,外围设备包括:射频电路1004、显示屏1005、摄像头组件1006、音频电路1007和电源1009中的至少一种。
外围设备接口1003可被用于将I/O(Input /Output,输入/输出)相关的至少一个外围设备连接到处理器1001和存储器1002。在一些实施例中,处理器1001、存储器1002和外围设备接口1003被集成在同一芯片或电路板上;在一些其他实施例中,处理器1001、存储器1002和外围设备接口1003中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1004通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1004将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1004包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。
显示屏1005用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1005是触摸显示屏时,显示屏1005还具有采集在显示屏1005的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1001进行处理。此时,显示屏1005还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。
摄像头组件1006用于采集图像或视频。可选地,摄像头组件1006包括前置摄像头和后置摄像头。通常,前置摄像头设置在电子设备的前面板,后置摄像头设置在电子设备的背面。
音频电路1007可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1001进行处理,或者输入至射频电路1004以实现语音通信。
电源1009用于为电子设备1000中的各个组件进行供电。电源1009可以是交流电、直流电、一次性电池或可充电电池。
在一些实施例中,电子设备1000还包括有一个或多个传感器1010。该一个或多个传感器1010包括但不限于:加速度传感器1011、陀螺仪传感器1012、压力传感器1013、光学传感器1015以及接近传感器1016。
加速度传感器1011可以检测以电子设备1000建立的坐标系的三个坐标轴上的加速度大小。
陀螺仪传感器1012可以电子设备1000的机体方向及转动角度,陀螺仪传感器1012可以与加速度传感器1011协同采集用户对电子设备1000的3D动作。
压力传感器1013可以设置在电子设备1000的侧边框和/或显示屏1005的下层。当压力传感器1013设置在电子设备1000的侧边框时,可以检测用户对电子设备1000的握持信号,由处理器1001根据压力传感器1013采集的握持信号进行左右手识别或快捷操作。当压力传感器1013设置在显示屏1005的下层时,由处理器1001根据用户对显示屏1005的压力操作,实现对UI界面上的可操作性控件进行控制。
光学传感器1015用于采集环境光强度。在一个实施例中,处理器1001可以根据光学传感器1015采集的环境光强度,控制显示屏1005的显示亮度。
接近传感器1016用于采集用户与电子设备1000的正面之间的距离。
本领域技术人员可以理解,图10中示出的结构并不构成对电子设备1000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图11是本申请实施例提供的一种服务器的结构示意图,该服务器1100可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1101和一个或多个的存储器1102,其中,所述一个或多个存储器1102中存储有至少一条计算机程序,所述至少一条计算机程序由所述一个或多个处理器1101加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器1100还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器1100还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括计算机程序的存储器,上述计算机程序可由处理器执行以完成上述实施例中的密钥灌装方法。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory, ROM)、随机存取存储器(RandomAccess Memory,RAM)、只读光盘 (Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,该程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该程序代码,处理器执行该程序代码,使得该计算机设备执行上述密钥灌装方法方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
上述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (48)

1.一种密钥灌装方法,其特征在于,应用于电子设备,所述方法包括:
向服务器发送第一灌装信息,所述第一灌装信息用于指示所述电子设备对安全芯片的灌装权限,所述第一灌装信息包括所述安全芯片的芯片公钥;
获取所述服务器发送的第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,所述第二灌装信息为所述服务器基于所述第一灌装信息,确定所述电子设备具有对所述安全芯片的灌装权限后发送的灌装信息;
将所述验证公钥灌装到所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密;
所述服务器用于采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密,得到第一认证码;向所述安全芯片发送所述第一认证码,以使所述安全芯片采用所述安全芯片的芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息,所述芯片私钥由所述安全芯片生成;获取第二认证码,所述第二认证码为所述安全芯片采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密得到的认证码;响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
2.根据权利要求1所述的方法,其特征在于,所述向服务器发送第一灌装信息包括:
采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密,得到第一加密信息;
向所述服务器发送所述第一加密信息。
3.根据权利要求2所述的方法,其特征在于,所述采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密,得到第一加密信息包括:
将所述第一灌装信息映射为所述第一灌装信息对应的第一信息摘要;
采用所述电子设备私钥对所述第一信息摘要和所述第一灌装信息进行加密,得到所述第一加密信息。
4.根据权利要求1所述的方法,其特征在于,所述获取所述服务器发送的第二灌装信息包括:
获取所述服务器发送的第二加密信息,所述第二加密信息由所述服务器采用所述服务器的服务器私钥对所述第二灌装信息进行加密后得到;
采用所述服务器私钥对应的服务器公钥对所述第二加密信息进行解密,得到所述第二灌装信息。
5.一种密钥灌装方法,其特征在于,应用于服务器,所述方法包括:
获取电子设备发送的第一灌装信息,所述第一灌装信息用于指示所述电子设备对安全芯片的灌装权限,所述第一灌装信息包括所述安全芯片的芯片公钥;
响应于所述电子设备具有对所述安全芯片的灌装权限,向所述电子设备发送第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,以使所述电子设备将所述验证公钥灌装至所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密;
所述方法还包括:
采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密,得到第一认证码;
向所述安全芯片发送所述第一认证码,以使所述安全芯片采用所述安全芯片的芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息,所述芯片私钥由所述安全芯片生成;
获取第二认证码,所述第二认证码为所述安全芯片采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密得到的认证码;
响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
6.根据权利要求5所述的方法,其特征在于,所述获取电子设备发送的第一灌装信息包括:
获取所述电子设备发送的第一加密信息,所述第一加密信息由所述电子设备采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密后得到;
采用所述电子设备私钥对应的电子设备公钥,对所述第一加密信息进行解密,得到所述第一灌装信息。
7.根据权利要求5所述的方法,其特征在于,所述采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密,得到第一认证码包括:
采用所述芯片公钥对所述验证信息进行加密,得到第一验证码;
采用所述验证私钥对所述第一验证码进行加密,得到所述第一认证码。
8.根据权利要求5所述的方法,其特征在于,所述获取第二认证码包括:
接收第三加密信息,所述第三加密信息为所述电子设备采用所述电子设备的电子设备私钥对所述第二认证码进行加密,得到加密信息;
采用所述电子设备私钥对应的电子设备公钥对所述第三加密信息进行解密,得到所述第二认证码。
9.根据权利要求5所述的方法,其特征在于,所述响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息之前,所述方法还包括:
采用所述芯片公钥对所述第二认证码进行解密,得到第三验证码;
采用所述验证私钥对所述第三验证码进行解密,得到所述第一信息。
10.根据权利要求5所述的方法,其特征在于,所述方法还包括:
响应于所述第二认证码中的所述第一信息与所述验证信息不同,向所述电子设备发送所述安全芯片的验证未通过信息,以使所述电子设备对所述安全芯片重新进行密钥灌装。
11.根据权利要求5所述的方法,其特征在于,所述向所述电子设备发送第二灌装信息包括:
采用所述服务器的服务器私钥对所述第二灌装信息进行加密,得到第二加密信息;
向所述电子设备发送所述第二加密信息。
12.根据权利要求11所述的方法,其特征在于,所述采用所述服务器的服务器私钥对所述第二灌装信息进行加密,得到第二加密信息包括:
将所述第二灌装信息映射为所述第二灌装信息对应的第四信息摘要;
采用所述服务器私钥对所述第四信息摘要和所述第二灌装信息进行加密,得到所述第二加密信息。
13.一种密钥灌装方法,其特征在于,应用于安全芯片,所述方法包括:
获取电子设备灌装到所述安全芯片中的验证公钥,所述验证公钥由服务器生成,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密,所述服务器用于接收所述电子设备发送的所述安全芯片的芯片公钥;
采用所述验证公钥对传输信息进行加密;
所述方法还包括:
采用所述安全芯片的芯片私钥以及所述验证公钥对第一认证码进行解密,得到第一信息,所述第一认证码是所述服务器采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密得到的,所述芯片私钥由所述安全芯片生成;
采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密,得到第二认证码;
将所述第二认证码发送给所述服务器,以使所述服务器基于所述第二认证码中的第一信息和所述验证信息对所述安全芯片进行验证,所述服务器还用于响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
随机生成芯片密钥对,所述芯片密钥对包括所述芯片公钥和所述芯片私钥。
15.根据权利要求13所述的方法,其特征在于,所述采用所述安全芯片的芯片私钥以及所述验证公钥对第一认证码进行解密,得到第一信息包括:
采用所述验证公钥对所述第一认证码进行解密,得到第二验证码;
采用所述芯片私钥对所述第二验证码进行解密,得到所述第一信息。
16.根据权利要求13所述的方法,其特征在于,所述采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密,得到第二认证码包括:
采用所述验证公钥对所述第一信息进行加密,得到第三验证码;
采用所述芯片私钥对所述第三验证码进行加密,得到所述第二认证码。
17.根据权利要求13所述的方法,其特征在于,所述采用所述验证公钥对传输信息进行加密包括:
采用所述安全芯片的芯片私钥对传输信息进行加密,得到第一加密传输信息;
采用所述验证公钥对所述第一加密传输信息进行加密,得到第二加密传输信息;
向所述服务器传输所述第二加密传输信息。
18.一种密钥灌装系统,其特征在于,所述系统包括:安全芯片、电子设备以及服务器;
所述电子设备用于向所述服务器发送第一灌装信息,所述第一灌装信息用于指示所述电子设备对所述安全芯片的灌装权限,所述第一灌装信息包括所述安全芯片的芯片公钥;
所述服务器用于接收所述第一灌装信息,响应于所述电子设备具有对所述安全芯片的灌装权限,向所述电子设备发送第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥;
所述电子设备还用于接收所述第二灌装信息,将所述验证公钥灌装至所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密;
所述服务器还用于采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密,得到第一认证码;
所述电子设备还用于向所述安全芯片发送所述第一认证码;
所述安全芯片用于接收所述第一认证码;
所述安全芯片还用于采用所述安全芯片的芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息,所述芯片私钥由所述安全芯片生成;
所述安全芯片还用于采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密,得到第二认证码;
所述服务器还用于获取所述第二认证码;
所述服务器还用于响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
19.根据权利要求18所述的系统,其特征在于,所述电子设备还用于采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密,得到第一加密信息,将所述第一加密信息发送给所述服务器;
所述服务器还用于接收所述第一加密信息,采用所述电子设备私钥对应的电子设备公钥,对所述第一加密信息进行解密,得到所述第一灌装信息。
20.根据权利要求19所述的系统,其特征在于,所述电子设备还用于将所述第一灌装信息映射为所述第一灌装信息对应的第一信息摘要;
所述电子设备还用于采用所述电子设备私钥对所述第一信息摘要和所述第一灌装信息进行加密,得到所述第一加密信息;
所述服务器还用于接收所述第一加密信息,采用所述电子设备公钥,对所述第一加密信息进行解密,得到第二信息摘要和第三灌装信息;
所述服务器还用于将所述第三灌装信息映射为所述第三灌装信息对应的第三信息摘要;
所述服务器还用于响应于所述第三信息摘要与所述第二信息摘要相同,确定所述第三灌装信息为所述电子设备获取的所述第一灌装信息。
21.根据权利要求18所述的系统,其特征在于,所述第二灌装信息包括所述服务器生成的第一认证码;
所述电子设备还用于向所述安全芯片发送所述验证公钥;
所述安全芯片还用于接收所述验证公钥。
22.根据权利要求18所述的系统,其特征在于,所述服务器还用于:
采用所述芯片公钥对所述验证信息进行加密,得到第一验证码;
采用所述验证私钥对所述第一验证码进行加密,得到所述第一认证码。
23.根据权利要求18所述的系统,其特征在于,所述安全芯片还用于:
采用所述验证公钥对所述第一认证码进行解密,得到第二验证码;
采用所述芯片私钥对所述第二验证码进行解密,得到所述第一信息。
24.根据权利要求18所述的系统,其特征在于,所述安全芯片还用于随机生成芯片密钥对,所述芯片密钥对包括所述芯片公钥和所述芯片私钥。
25.根据权利要求18所述的系统,其特征在于,所述安全芯片还用于:
采用所述验证公钥对所述第一信息进行加密,得到第三验证码;
采用所述芯片私钥对所述第三验证码进行加密,得到所述第二认证码。
26.根据权利要求18所述的系统,其特征在于,所述电子设备还用于:
采用所述电子设备的电子设备私钥对所述第二认证码进行加密,得到第三加密信息;
将所述第三加密信息发送给所述服务器;
所述服务器还用于:
接收所述第三加密信息;
采用所述电子设备私钥对应的电子设备公钥对所述第三加密信息进行解密,得到所述第二认证码;
采用所述芯片公钥对所述第二认证码进行解密,得到第三验证码;
采用所述验证私钥对所述第三验证码进行解密,得到所述第一信息。
27.根据权利要求18所述的系统,其特征在于,所述服务器还用于采用所述服务器的服务器私钥对所述第二灌装信息进行加密,得到第二加密信息;
所述电子设备还用于采用与所述服务器私钥对应的服务器公钥对所述第二加密信息进行解密,得到所述第二灌装信息。
28.根据权利要求27所述的系统,其特征在于,所述服务器还用于将所述第二灌装信息映射为所述第二灌装信息的第四信息摘要;
所述服务器还用于采用所述服务器私钥对所述第四信息摘要和所述第二灌装信息进行加密,得到所述第二加密信息;
所述电子设备还用于接收所述第二加密信息,采用所述服务器公钥,对所述第二加密信息进行解密,得到第五信息摘要和第四灌装信息;
所述电子设备还用于将所述第四灌装信息映射为所述第四灌装信息对应的第六信息摘要;
所述电子设备还用于响应于所述第六信息摘要与所述第四信息摘要相同,确定所述第四灌装信息为所述服务器发送的所述第二灌装信息。
29.根据权利要求18所述的系统,其特征在于,所述安全芯片还用于采用所述安全芯片的芯片私钥对传输信息进行加密,得到第一加密传输信息;采用所述验证公钥对所述第一加密传输信息进行加密,得到第二加密传输信息;向所述服务器传输所述第二加密传输信息。
30.一种密钥灌装装置,其特征在于,应用于电子设备,所述装置包括:
第一发送模块,用于向服务器发送第一灌装信息,所述第一灌装信息用于指示所述电子设备对安全芯片的灌装权限,所述第一灌装信息包括所述安全芯片的芯片公钥;
第一获取模块,用于获取所述服务器发送的第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,所述第二灌装信息为所述服务器基于所述第一灌装信息,确定所述电子设备具有对所述安全芯片的灌装权限后发送的灌装信息;
灌装模块,用于将所述验证公钥灌装到所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密;
所述服务器用于采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密,得到第一认证码;向所述安全芯片发送所述第一认证码,以使所述安全芯片采用所述安全芯片的芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息,所述芯片私钥由所述安全芯片生成;获取第二认证码,所述第二认证码为所述安全芯片采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密得到的认证码;响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
31.根据权利要求30所述的装置,其特征在于,所述第一发送模块,用于采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密,得到第一加密信息;向所述服务器发送所述第一加密信息。
32.根据权利要求31所述的装置,其特征在于,所述第一发送模块,用于:
将所述第一灌装信息映射为所述第一灌装信息对应的第一信息摘要;
采用所述电子设备私钥对所述第一信息摘要和所述第一灌装信息进行加密,得到所述第一加密信息。
33.根据权利要求30所述的装置,其特征在于,所述第一获取模块,用于:
获取所述服务器发送的第二加密信息,所述第二加密信息由所述服务器采用所述服务器的服务器私钥对所述第二灌装信息进行加密后得到;
采用所述服务器私钥对应的服务器公钥对所述第二加密信息进行解密,得到所述第二灌装信息。
34.一种密钥灌装装置,其特征在于,应用于服务器,所述装置包括:
第二获取模块,用于获取电子设备发送的第一灌装信息,所述第一灌装信息用于指示所述电子设备对安全芯片的灌装权限,所述第一灌装信息包括所述安全芯片的芯片公钥;
第二发送模块,用于响应于所述电子设备具有对所述安全芯片的灌装权限,向所述电子设备发送第二灌装信息,所述第二灌装信息包括所述服务器生成的验证公钥,以使所述电子设备将所述验证公钥灌装至所述安全芯片中,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密;
第一加密模块,用于采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密,得到第一认证码;
所述第二发送模块,还用于向所述安全芯片发送所述第一认证码,以使所述安全芯片采用所述安全芯片的芯片私钥以及所述验证公钥对所述第一认证码进行解密,得到第一信息,所述芯片私钥由所述安全芯片生成;
所述第二获取模块,还用于获取第二认证码,所述第二认证码为所述安全芯片采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密得到的认证码;
第四发送模块,用于响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
35.根据权利要求34所述的装置,其特征在于,所述第二获取模块,用于:
获取所述电子设备发送的第一加密信息,所述第一加密信息由所述电子设备采用所述电子设备的电子设备私钥对所述第一灌装信息进行加密后得到;
采用所述电子设备私钥对应的电子设备公钥,对所述第一加密信息进行解密,得到所述第一灌装信息。
36.根据权利要求34所述的装置,其特征在于,所述第一加密模块,用于:
采用所述芯片公钥对所述验证信息进行加密,得到第一验证码;
采用所述验证私钥对所述第一验证码进行加密,得到所述第一认证码。
37.根据权利要求34所述的装置,其特征在于,所述第二获取模块,用于:
接收第三加密信息,所述第三加密信息为所述电子设备采用所述电子设备的电子设备私钥对所述第二认证码进行加密,得到加密信息;
采用所述电子设备私钥对应的电子设备公钥对所述第三加密信息进行解密,得到所述第二认证码。
38.根据权利要求34所述的装置,其特征在于,所述装置还包括:
第一解密模块,用于采用所述芯片公钥对所述第二认证码进行解密,得到第三验证码;
第二解密模块,用于采用所述验证私钥对所述第三验证码进行解密,得到所述第一信息。
39.根据权利要求34所述的装置,其特征在于,所述第四发送模块,还用于:
响应于所述第二认证码中的所述第一信息与所述验证信息不同,向所述电子设备发送所述安全芯片的验证未通过信息,以使所述电子设备对所述安全芯片重新进行密钥灌装。
40.根据权利要求34所述的装置,其特征在于,所述第二发送模块,用于:
采用所述服务器的服务器私钥对所述第二灌装信息进行加密,得到第二加密信息;
向所述电子设备发送所述第二加密信息。
41.根据权利要求40所述的装置,其特征在于,所述第二发送模块,用于:
将所述第二灌装信息映射为所述第二灌装信息对应的第四信息摘要;
采用所述服务器私钥对所述第四信息摘要和所述第二灌装信息进行加密,得到所述第二加密信息。
42.一种密钥灌装装置,其特征在于,应用于安全芯片,所述装置包括:
第三获取模块,用于获取电子设备灌装到所述安全芯片中的验证公钥,所述验证公钥由服务器生成,所述验证公钥用于对信息进行加密,所述验证公钥对应的验证私钥用于对加密后的所述信息进行解密,所述服务器用于接收所述电子设备发送的所述安全芯片的芯片公钥;
传输信息加密模块,用于采用所述验证公钥对传输信息进行加密;
第三解密模块,用于采用所述安全芯片的芯片私钥以及所述验证公钥对第一认证码进行解密,得到第一信息,所述第一认证码是所述服务器采用所述芯片公钥以及所述验证私钥对生成的验证信息进行加密得到的,所述芯片私钥由所述安全芯片生成;
第二加密模块,用于采用所述验证公钥以及所述芯片私钥对所述第一信息进行加密,得到第二认证码;
第三发送模块,用于将所述第二认证码发送给所述服务器,以使所述服务器基于所述第二认证码中的第一信息和所述验证信息对所述安全芯片进行验证,所述服务器还用于响应于所述第二认证码中的所述第一信息与所述验证信息相同,向所述电子设备发送所述安全芯片的验证通过信息。
43.根据权利要求42所述的装置,其特征在于,所述装置还包括:
生成模块,用于随机生成芯片密钥对,所述芯片密钥对包括所述芯片公钥和所述芯片私钥。
44.根据权利要求42所述的装置,其特征在于,所述第三解密模块,用于:
采用所述验证公钥对所述第一认证码进行解密,得到第二验证码;
采用所述芯片私钥对所述第二验证码进行解密,得到所述第一信息。
45.根据权利要求42所述的装置,其特征在于,所述第二加密模块,用于:
采用所述验证公钥对所述第一信息进行加密,得到第三验证码;
采用所述芯片私钥对所述第三验证码进行加密,得到所述第二认证码。
46.根据权利要求42所述的装置,其特征在于,所述传输信息加密模块,用于:
采用所述安全芯片的芯片私钥对传输信息进行加密,得到第一加密传输信息;
采用所述验证公钥对所述第一加密传输信息进行加密,得到第二加密传输信息;
向所述服务器传输所述第二加密传输信息。
47.一种计算机设备,其特征在于,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条计算机程序,所述计算机程序由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求4任一项所述的密钥灌装方法,或实现如权利要求5至权利要求12任一项所述的密钥灌装方法,或实现如权利要求13至权利要求17任一项所述的密钥灌装方法。
48.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1至权利要求4任一项所述的密钥灌装方法,或实现如权利要求5至权利要求12任一项所述的密钥灌装方法,或实现如权利要求13至权利要求17任一项所述的密钥灌装方法。
CN202110181982.9A 2021-02-09 2021-02-09 密钥灌装方法、系统、装置、设备以及存储介质 Active CN112989370B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202110181982.9A CN112989370B (zh) 2021-02-09 2021-02-09 密钥灌装方法、系统、装置、设备以及存储介质
PCT/CN2022/073859 WO2022170973A1 (zh) 2021-02-09 2022-01-25 密钥灌装方法、系统、装置、设备以及存储介质
EP22752134.1A EP4216091A4 (en) 2021-02-09 2022-01-25 KEY INSTALLATION METHOD, SYSTEM, APPARATUS, DEVICE AND STORAGE MEDIUM
JP2023537408A JP2024500822A (ja) 2021-02-09 2022-01-25 鍵インストール方法、システム、装置、機器及びコンピュータプログラム
US17/987,778 US20230090351A1 (en) 2021-02-09 2022-11-15 Key filling method, system, and apparatus, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110181982.9A CN112989370B (zh) 2021-02-09 2021-02-09 密钥灌装方法、系统、装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN112989370A CN112989370A (zh) 2021-06-18
CN112989370B true CN112989370B (zh) 2023-06-30

Family

ID=76392921

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110181982.9A Active CN112989370B (zh) 2021-02-09 2021-02-09 密钥灌装方法、系统、装置、设备以及存储介质

Country Status (5)

Country Link
US (1) US20230090351A1 (zh)
EP (1) EP4216091A4 (zh)
JP (1) JP2024500822A (zh)
CN (1) CN112989370B (zh)
WO (1) WO2022170973A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112989370B (zh) * 2021-02-09 2023-06-30 腾讯科技(深圳)有限公司 密钥灌装方法、系统、装置、设备以及存储介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006129143A (ja) * 2004-10-29 2006-05-18 Toppan Printing Co Ltd 秘密情報送受信システム及び方法、サーバー装置及びプログラム、並びに鍵情報保持装置
US8719952B1 (en) * 2011-03-25 2014-05-06 Secsign Technologies Inc. Systems and methods using passwords for secure storage of private keys on mobile devices
CN106535184A (zh) * 2016-10-18 2017-03-22 深圳市金立通信设备有限公司 一种密钥管理的方法和系统
CN107276756A (zh) * 2017-07-27 2017-10-20 深圳市金立通信设备有限公司 一种获取根密钥的方法及服务器
CN108880791A (zh) * 2018-05-30 2018-11-23 招商银行股份有限公司 密钥保护方法、终端及计算机可读存储介质
CN109861817A (zh) * 2019-02-26 2019-06-07 数安时代科技股份有限公司 生成密钥的方法、装置、系统、设备和介质
CN110266474A (zh) * 2019-05-15 2019-09-20 亚信科技(成都)有限公司 密钥发送方法、装置及系统
CN110401648A (zh) * 2019-07-16 2019-11-01 宇龙计算机通信科技(深圳)有限公司 获取云服务的方法、装置、电子设备及介质
KR20190133972A (ko) * 2017-12-28 2019-12-04 (주)드림시큐리티 IoT 환경에서 기기 인증키를 활용한 메시지 암호키 운용을 위한 단말 기기, 서버, 시스템 및 방법
CN111031047A (zh) * 2019-12-16 2020-04-17 中国南方电网有限责任公司 设备通信方法、装置、计算机设备及存储介质
CN111814132A (zh) * 2020-09-14 2020-10-23 浙江地芯引力科技有限公司 安全认证方法及装置、安全认证芯片、存储介质
CN112187450A (zh) * 2020-08-19 2021-01-05 如般量子科技有限公司 密钥管理通信的方法、装置、设备及存储介质
CN112202556A (zh) * 2020-10-30 2021-01-08 联通物联网有限责任公司 安全认证方法、装置和系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2514771B (en) * 2013-06-03 2015-10-21 Broadcom Corp Methods of securely changing the root key of a chip, and related electronic devices and chips
US10333903B1 (en) * 2015-06-16 2019-06-25 Amazon Technologies, Inc. Provisioning network keys to devices to allow them to provide their identity
US10762221B2 (en) * 2016-11-14 2020-09-01 Paymentus Corporation Method and apparatus for multi-channel secure communication and data transfer
US10833859B2 (en) * 2017-12-07 2020-11-10 International Business Machines Corporation Automating verification using secure encrypted phone verification
CN108388152B (zh) * 2018-01-05 2019-07-16 郑州信大捷安信息技术股份有限公司 一种实现芯片灌装的自动化生产设备控制系统及控制方法
WO2020073314A1 (zh) * 2018-10-12 2020-04-16 深圳市汇顶科技股份有限公司 密钥生成方法、获取方法、私钥更新方法、芯片和服务器
AU2019204723C1 (en) * 2019-03-29 2021-10-28 Advanced New Technologies Co., Ltd. Cryptographic key management based on identity information
CN110874296B (zh) * 2019-11-12 2023-05-16 成都三零嘉微电子有限公司 一种安全芯片或密码卡程序下载、测试和密钥注入的系统
CN112989370B (zh) * 2021-02-09 2023-06-30 腾讯科技(深圳)有限公司 密钥灌装方法、系统、装置、设备以及存储介质

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006129143A (ja) * 2004-10-29 2006-05-18 Toppan Printing Co Ltd 秘密情報送受信システム及び方法、サーバー装置及びプログラム、並びに鍵情報保持装置
US8719952B1 (en) * 2011-03-25 2014-05-06 Secsign Technologies Inc. Systems and methods using passwords for secure storage of private keys on mobile devices
CN106535184A (zh) * 2016-10-18 2017-03-22 深圳市金立通信设备有限公司 一种密钥管理的方法和系统
CN107276756A (zh) * 2017-07-27 2017-10-20 深圳市金立通信设备有限公司 一种获取根密钥的方法及服务器
KR20190133972A (ko) * 2017-12-28 2019-12-04 (주)드림시큐리티 IoT 환경에서 기기 인증키를 활용한 메시지 암호키 운용을 위한 단말 기기, 서버, 시스템 및 방법
CN108880791A (zh) * 2018-05-30 2018-11-23 招商银行股份有限公司 密钥保护方法、终端及计算机可读存储介质
CN109861817A (zh) * 2019-02-26 2019-06-07 数安时代科技股份有限公司 生成密钥的方法、装置、系统、设备和介质
CN110266474A (zh) * 2019-05-15 2019-09-20 亚信科技(成都)有限公司 密钥发送方法、装置及系统
CN110401648A (zh) * 2019-07-16 2019-11-01 宇龙计算机通信科技(深圳)有限公司 获取云服务的方法、装置、电子设备及介质
CN111031047A (zh) * 2019-12-16 2020-04-17 中国南方电网有限责任公司 设备通信方法、装置、计算机设备及存储介质
CN112187450A (zh) * 2020-08-19 2021-01-05 如般量子科技有限公司 密钥管理通信的方法、装置、设备及存储介质
CN111814132A (zh) * 2020-09-14 2020-10-23 浙江地芯引力科技有限公司 安全认证方法及装置、安全认证芯片、存储介质
CN112202556A (zh) * 2020-10-30 2021-01-08 联通物联网有限责任公司 安全认证方法、装置和系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
imKey 硬件钱包的安全机制;imKeyBing;《https://imtoken.fans/t/topic/8803》;全文 *
一种密钥的设计和管理方法;焦占亚,胡予濮;微电子学与计算机(10);全文 *

Also Published As

Publication number Publication date
US20230090351A1 (en) 2023-03-23
EP4216091A4 (en) 2024-04-10
WO2022170973A1 (zh) 2022-08-18
CN112989370A (zh) 2021-06-18
JP2024500822A (ja) 2024-01-10
EP4216091A1 (en) 2023-07-26

Similar Documents

Publication Publication Date Title
US11621855B2 (en) Electronic device and method for managing blockchain address using the same
CN112711774B (zh) 数据处理方法、装置、设备及存储介质
CN110245144B (zh) 协议数据管理方法、装置、存储介质及系统
KR101608510B1 (ko) 글로벌 플랫폼 규격을 사용하는 발행자 보안 도메인에 대한 키 관리 시스템 및 방법
CA3058240C (en) Cryptographic key management based on identity information
US10992481B2 (en) Two-dimensional code generation method, apparatus, data processing method, apparatus, and server
CN110383759B (zh) 管理共识节点和客户端节点之间的通信的方法和系统
US20160253519A1 (en) Apparatus and method for trusted execution environment file protection
CN103621128B (zh) 基于上下文的安全计算
CN110826103B (zh) 基于区块链的文档权限处理方法、装置、设备及存储介质
CN111506884A (zh) 用户邀请方法、装置、计算机设备及计算机可读存储介质
KR20210017083A (ko) 퓨즈된 키에 기반하여 증명 인증서를 생성하는 전자 장치 및 방법
CN102177678A (zh) 可信和机密的远程tpm初始化
CN111538479B (zh) 开标过程中的随机参数生成方法及装置
US20200366471A1 (en) Electronic device and method for receiving push message stored in blockchain
CN114270777A (zh) 提供区块链账户信息的电子装置及其操作方法
CN109844748A (zh) 托管在虚拟安全环境中的安全服务
KR20210046357A (ko) 블록체인 기반 시스템을 위한 키의 저장 및 복구 방법과 그 장치
CN111212074B (zh) 基于区块链的资格认定方法、装置、设备及存储介质
CN112989370B (zh) 密钥灌装方法、系统、装置、设备以及存储介质
EP3857426B1 (en) Fpga hardware-based secure computing method and apparatus
CN111147248A (zh) 人脸特征库的加密传输方法、装置、系统和存储介质
CN109743289B (zh) 一种基于神经网络的数据验证方法、装置及电子设备
CN114244565B (zh) 密钥分发方法、装置、设备及存储介质
CN116095671B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40046410

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant