CN108718233B - 一种加密方法、计算机设备及存储介质 - Google Patents
一种加密方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN108718233B CN108718233B CN201810258878.3A CN201810258878A CN108718233B CN 108718233 B CN108718233 B CN 108718233B CN 201810258878 A CN201810258878 A CN 201810258878A CN 108718233 B CN108718233 B CN 108718233B
- Authority
- CN
- China
- Prior art keywords
- key
- random number
- mobile terminal
- application system
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0822—Key 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
Abstract
本发明公开了一种加密方法、计算机设备及存储介质,包括:在移动终端产生随机数R1;使用移动应用系统后台提供的公钥加密随机数R1后,上传移动应用系统后台;接收移动应用系统后台返回的密文和随机数R2;使用随机数R1和随机数R2异或产生会话主密钥R后,使用会话主密钥R解密密文得到工作密钥WK;使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1;使用加密密钥WK1加密用户私钥和/或需要加密传输的信息。本发明实现了用户的一户一密,实现了用户手机的一机一密,使得加密存储的内容外部用户无法解密,加密文件拷贝到其它手机上也无法解密。从而保护了移动智能终端的信息安全。
Description
技术领域
本发明涉及通信保密技术领域,特别涉及一种加密方法、计算机设备及存储介质。
背景技术
随着移动智能设备的快速普及,移动应用全方位地改变着网民的生活习惯,对人们的通信、社交、娱乐和购物等各方面产生重要影响。近年来,各类移动应用的用户规模和使用率均保持快速增长,电子商务类应用和娱乐类应用表现尤为突出,移动应用逐渐从碎片化的沟通、信息类应用向时长较长的娱乐、商务类应用发展,并通过打车、共享单车、地图和支付等应用加大对社会生活服务的渗透。
用户在享受移动支付、移动办公、移动娱乐等带来的巨大便利的同时,也面临着信息泄露、信息破坏、非法访问、窃听假冒、木马病毒等日益严重的安全威胁。日常生活中,由于移动智能设备安全问题导致信息泄露、财产受损的事例比比皆是。
纵观这些问题的根源,是密钥运行环境和密钥的安全问题。现代密码体系是唯密钥安全的安全架构,身份认证的基础依赖于传统PKI(Public Key Infrastructure,公钥基础设施)体系的私钥安全,存储在移动终端上的密钥就成为攻击者攻击整个安全系统的最主要的手段。其手段主要有:
一、基于安全元件(Secure Element)密钥保护技术
在传统的PC上,密钥通常都直接存储在硬盘上。随着移动支付的普及,这种密钥裸奔的方式逐渐的暴露出了各种问题,导致支付等应用屡屡出现问题,根本原因是:密钥需要存储在可信的安全的环境中。由于操作系统的复杂性,导致这杂种假设根本不成立,所以产生了第一代U盾产品,也就是国内比较早的安全元件的概念产品,既然操作系统很复杂,可以找个低复杂度的系统来完成运算,保证密钥不出U盾,从而保证了密钥的安全。但随着时间的推移,发现运行在Slave状态下的U盾非常容易受到欺骗,病毒程序可以随意欺骗U盾完成密码运算,所以,一代U盾就自然地过渡到了可显示、可确认的第二代U盾,即用户必须通过不能被操作系统软件控制的显示器和物理按键来完成密码计算,从而确保密码设备正确接受了真实的用户意愿。安全元件的安全不仅仅在于隔离,还需要考虑正确执行真实的用户意图问题。
随着移动互联网的发展,在移动终端上使用额外的安全元件会导致成本的提高,外置安全元件时会导致用户体验下降。迫切需要一种更为便捷易用和价格低廉的密钥保护技术。TEE的概念,正逐渐地重视起来。
二、基于TEE(Trusted Execution Environment,可信执行环境)的密钥保护技术
为了解决纯硬件安全防护在移动终端上部署不便的弊端,开放移动终端组织提出了TEE的概念和方案,即纯软件的环境和安全元件之间的折中方案。TEE旨在构建一个资源丰富的执行环境,从设备自身来提高安全性,能够进行各种各样的应用扩展,为用户使用和服务提供商的开发提供了更大的空间与自由度。
REE(Rich Execution Environment,普通执行环境)包括运行在通用的嵌入式处理器上的Rich OS(Rich Operating System,普通操作系统)及其上的客户端应用程序。尽管在REE中采取了很多诸如设备访问控制、设备数据加密机制、应用运行时的隔离机制、基于权限的访问控制等安全措施,但仍无法保证敏感数据的安全性。TEE是运行于普通操作系统之外的独立运行环境,其向一般操作系统提供安全服务并且与Rich OS隔离。Rich OS及其上的应用程序无法直接访问TEE的硬件和软件资源。
TEE的目标是在移动设备的主芯片中建立一个可信执行环境,它是硬件可信的。TEE为可信应用(通过TEE授权的、可信的软件)提供可信赖的运行环境,再通过对机密性、完整性的保护和数据访问权限的控制,确保端到端的安全。可信执行环境与终端原有操作系统并行,通过安全的API与原有系统进行交互。
TEE提供了介于典型操作系统和安全元件(SE)之间的一种适度安全性。它提供了一个比Rich OS更高安全等级的运行环境,但无法提供硬件隔离级别的安全的密钥存储和密钥运行环境由于TEE中的密码单元仍旧通过API供REE调用,简单采用TEE编制的密码模块仍旧会工作在被动被调用的Slave模式下,在Slave模式下的SE的安全弱点它也都有。人们也正在设计更好的工作方法,确保具备更好的安全性。
三、基于TEE+SE的密钥保护技术
在认识到TEE存在的这些问题后,金融界发力、厂商配合,华为等公司推出了板载SE的手机。尤其随着生物识别技术的爆发式发展,FIDO等协议的推广,板载SE的支撑也逐步成了目前移动终端的标配。
TEE+SE的方案下,业界一般希望通过TEE来构建可信的显示,打通领会真实用户意图的通道,SE来构建可信的安全的密钥存储和密钥运算环境,试图终结移动安全方面针对密钥安全问题的讨论。
尽管当前业界采用SE或者TEE的方式去保护移动终端的密钥,取得了不错的成绩,但是其不足在于:这两种模式都需要SE和TEE厂商的支持,只能在特定的移动智能终端上使用,并不具备普遍性。
发明内容
本发明提供了一种加密方法、计算机设备及存储介质,用以解决采用SE或者TEE的方式去保护移动终端的密钥时需要SE和TEE厂商支持的问题。
本发明实施例中提供了一种加密方法,包括:
在移动终端产生随机数R1;
使用移动应用系统后台提供的公钥加密随机数R1后,上传移动应用系统后台;
接收移动应用系统后台返回的密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用随机数R1与随机数R2产生的会话主密钥R加密的;
使用随机数R1和随机数R2异或产生会话主密钥R后,使用会话主密钥R解密密文得到工作密钥WK;
使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1;
使用加密密钥WK1加密用户私钥和/或需要加密传输的信息。
较佳地,传输需要加密传输的信息时,进一步包括:
向移动应用系统后台提交用户的唯一标识、移动终端的设备唯一标识,用以供移动应用系统后台解密需要加密传输的信息。
较佳地,进一步包括:
使用加密密钥WK1加密存储在移动终端上的信息。
较佳地,在需要解密使用加密密钥WK1加密存储在移动终端上的信息时,进一步包括:
生成加密密钥WK1后,解密该存储在移动终端上的信息。
较佳地,在产生随机数R1前,进一步包括:
在移动终端对用户身份进行认证,在认证通过后产生随机数R1。
较佳地,在使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1时,是离散产生用户的加密密钥WK1的。
较佳地,所述移动应用系统后台提供的公钥是预置于移动终端上的。
本发明实施例中提供了一种加密方法,包括:
在移动应用系统后台接收移动终端上传的随机数R1,所述随机数R1是移动终端在产生随机数R1后使用移动应用系统后台提供的公钥进行加密后的随机数R1;
移动应用系统后台使用私钥解密出随机数R1,并产生随机数R2;
移动应用系统后台使用随机数R1与随机数R2合成会话主密钥R;
向移动终端返回密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用会话主密钥R加密的。
较佳地,在接收到移动终端加密传输的信息时,进一步包括:
使用移动终端提交的用户的唯一标识产生WK;
使用移动终端提交的移动终端的设备唯一标识和WK产生WK1;
使用加密密钥WK1解密该加密传输的信息。
较佳地,在使用移动终端提交的用户的唯一标识产生WK时,是调用加密机接口离散产生的;
在使用移动终端提交的移动终端的设备唯一标识和WK产生WK1时,是使用设备唯一标识和WK离散产生的。
较佳地,在移动应用系统后台产生随机数R2时,是调用加密机产生的。
较佳地,在移动应用系统后台使用随机数R1与随机数R2合成会话主密钥R时,是将R1和R2同时上送给加密机,使用加密机合成会话主密钥R的。
较佳地,在移动应用系统后台使用会话主密钥R加密工作密钥WK时,是调用加密机进行加密的。
较佳地,所述移动应用系统后台使用私钥解密出随机数R1时使用的私钥是存储在加密机中的。
较佳地,产生用户的工作密钥WK的主密钥是存储在加密机中的,其中,主密钥是移动应用系统后台上线时,在加密机中初始化产生的。
本发明实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
在移动终端产生随机数R1;
使用移动应用系统后台提供的公钥加密随机数R1后,上传移动应用系统后台;
接收移动应用系统后台返回的密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用随机数R1与随机数R2产生的会话主密钥R加密的;
使用随机数R1和随机数R2异或产生会话主密钥R后,使用会话主密钥R解密密文得到工作密钥WK;
使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1;
使用加密密钥WK1加密用户私钥和/或需要加密传输的信息。
较佳地,传输需要加密传输的信息时,进一步包括:
向移动应用系统后台提交用户的唯一标识、移动终端的设备唯一标识,用以供移动应用系统后台解密需要加密传输的信息。
较佳地,进一步包括:
使用加密密钥WK1加密存储在移动终端上的信息。
较佳地,在需要解密使用加密密钥WK1加密存储在移动终端上的信息时,进一步包括:
生成加密密钥WK1后,解密该存储在移动终端上的信息。
较佳地,在产生随机数R1前,进一步包括:
在移动终端对用户身份进行认证,在认证通过后产生随机数R1。
较佳地,在使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1时,是离散产生用户的加密密钥WK1的。
较佳地,所述移动应用系统后台提供的公钥是预置于移动终端上的。
本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述加密方法的计算机程序。
本发明实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
在移动应用系统后台接收移动终端上传的随机数R1,所述随机数R1是移动终端在产生随机数R1后使用移动应用系统后台提供的公钥进行加密后的随机数R1;
移动应用系统后台使用私钥解密出随机数R1,并产生随机数R2;
移动应用系统后台使用随机数R1与随机数R2合成会话主密钥R;
向移动终端返回密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用会话主密钥R加密的。
较佳地,在接收到移动终端加密传输的信息时,进一步包括:
使用移动终端提交的用户的唯一标识产生WK;
使用移动终端提交的移动终端的设备唯一标识和WK产生WK1;
使用加密密钥WK1解密该加密传输的信息。
较佳地,在使用移动终端提交的用户的唯一标识产生WK时,是调用加密机接口离散产生的;
在使用移动终端提交的移动终端的设备唯一标识和WK产生WK1时,是使用设备唯一标识和WK离散产生的。
较佳地,在移动应用系统后台产生随机数R2时,是调用加密机产生的。
较佳地,在移动应用系统后台使用随机数R1与随机数R2合成会话主密钥R时,是将R1和R2同时上送给加密机,使用加密机合成会话主密钥R的。
较佳地,在移动应用系统后台使用会话主密钥R加密工作密钥WK时,是调用加密机进行加密的。
较佳地,所述移动应用系统后台使用私钥解密出随机数R1时使用的私钥是存储在加密机中的。
较佳地,产生用户的工作密钥WK的主密钥是存储在加密机中的,其中,主密钥是移动应用系统后台上线时,在加密机中初始化产生的。
本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述加密方法的计算机程序。
本发明有益效果如下:
在本发明实施例提供的技术方案中,根据用户唯一标识产生每个用户的工作密钥WK,根据设备唯一标识产生最终加密密钥WK1,采用非对称加密机制和随机数协商的方式,实现了用户的一户一密,实现了用户手机的一机一密,使得加密存储的内容外部用户无法解密,加密文件拷贝到其它手机上也无法解密。从而保护了移动智能终端的信息安全。
同时,由于采用软件方式,解决了手机密钥安全存储的问题,因而可以适用于所有具备运算能力的智能手机,扩大了移动应用系统的安全应用范围。
进一步的,还可以将工作密钥主密钥存储在加密机中、根据用户唯一标识离散产生每个用户的工作密钥WK、根据设备唯一标识离散产生最终加密密钥WK1,进一步增强移动智能终端的信息安全。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中移动终端侧上的加密方法实施流程示意图;
图2为本发明实施例中移动应用系统上的加密方法实施流程示意图;
图3为本发明实施例中加密方法实施流程示意图。
具体实施方式
发明人在发明过程中注意到,当前业界通用的做法是采用SE或者TEE的方式去保护移动终端的密钥,虽然取得了不错的成绩,但是这两种模式都需要SE和TEE厂商的支持,只能在特定的移动智能终端上使用,并不具备普遍性。基于此,本发明实施例提供的技术方案,从密码学的角度,结合公钥体系机制和硬件加密机的工作原理,实现一种移动终端密钥安全存储、信息加密传输的方式,用以保护移动智能终端的信息安全。
下面结合附图对本发明的具体实施方式进行说明。
在说明过程中,将分别从移动终端侧与移动应用系统侧的实施进行说明,然后还将给出二者配合实施的实例以更好地理解本发明实施例中给出的方案的实施。这样的说明方式并不意味着二者必须配合实施、或者必须单独实施,实际上,当移动终端与移动应用系统分开实施时,其也各自解决移动终端侧、移动应用系统侧的问题,而二者结合使用时,会获得更好的技术效果。
图1为移动终端侧上的加密方法实施流程示意图,如图所示,可以包括:
步骤101、在移动终端产生随机数R1;
步骤102、使用移动应用系统后台提供的公钥加密随机数R1后,上传移动应用系统后台;
步骤103、接收移动应用系统后台返回的密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用随机数R1与随机数R2产生的会话主密钥R加密的;
步骤104、使用随机数R1和随机数R2异或产生会话主密钥R后,使用会话主密钥R解密密文得到工作密钥WK;
步骤105、使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1;
步骤106、使用加密密钥WK1加密用户私钥和/或需要加密传输的信息。
实施中,传输需要加密传输的信息时,还可以进一步包括:
向移动应用系统后台提交用户的唯一标识、移动终端的设备唯一标识,用以供移动应用系统后台解密需要加密传输的信息。
具体的,如果是加密传输敏感信息,移动客户端在提交密文的时候,还需要提交用户的唯一标识、设备唯一标识;移动应用系统根据用户唯一标识调用加密机接口离散产生WK,使用设备唯一标识和WK离散产生WK1,使用WK1解密加密信息,获得加密原文。
实施中,还可以进一步包括:
使用加密密钥WK1加密存储在移动终端上的信息。
实施中,在需要解密使用加密密钥WK1加密存储在移动终端上的信息时,还可以进一步包括:
生成加密密钥WK1后,解密该存储在移动终端上的信息。
具体的,如果移动客户端使用WK1加密存储敏感信息并存储在移动客户端,每次解密的时候,需要执行上述步骤101-步骤106,然后使用WK1解密敏感信息。
实施中,在产生随机数R1前,还可以进一步包括:
在移动终端对用户身份进行认证,在认证通过后产生随机数R1。
实施中,在使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1时,是离散产生用户的加密密钥WK1的。
实施中,所述移动应用系统后台提供的公钥是预置于移动终端上的。
具体的,可以是用户App在开发时预置移动应用系统的公钥证书。
图2为移动应用系统上的加密方法实施流程示意图,如图所示,可以包括:
步骤201、在移动应用系统后台接收移动终端上传的随机数R1,所述随机数R1是移动终端在产生随机数R1后使用移动应用系统后台提供的公钥进行加密后的随机数R1;
步骤202、移动应用系统后台使用私钥解密出随机数R1,并产生随机数R2;
步骤203、移动应用系统后台使用随机数R1与随机数R2合成会话主密钥R;
步骤204、向移动终端返回密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用会话主密钥R加密的。
实施中,在接收到移动终端加密传输的信息时,还可以进一步包括:
使用移动终端提交的用户的唯一标识产生WK;
使用移动终端提交的移动终端的设备唯一标识和WK产生WK1;
使用加密密钥WK1解密该加密传输的信息。
具体的,如果是加密传输敏感信息,移动客户端在提交密文的时候,还需要提交用户的唯一标识、设备唯一标识;移动应用系统根据用户唯一标识调用加密机接口离散产生WK,使用设备唯一标识和WK离散产生WK1,使用WK1解密加密信息,获得加密原文。
实施中,在使用移动终端提交的用户的唯一标识产生WK时,是调用加密机接口离散产生的;和/或,
在使用移动终端提交的移动终端的设备唯一标识和WK产生WK1时,是使用设备唯一标识和WK离散产生的。
实施中,在移动应用系统后台产生随机数R2时,是调用加密机产生的。
实施中,在移动应用系统后台使用随机数R1与随机数R2合成会话主密钥R时,是将R1和R2同时上送给加密机,使用加密机合成会话主密钥R的。
实施中,在移动应用系统后台使用会话主密钥R加密工作密钥WK时,是调用加密机进行加密的。
实施中,所述移动应用系统后台使用私钥解密出随机数R1时使用的私钥是存储在加密机中的。
具体的,移动应用系统的私钥可以存储在加密机中。
实施中,产生用户的工作密钥WK的主密钥是存储在加密机中的,其中,主密钥是移动应用系统后台上线时,在加密机中初始化产生的。
具体的,加密机存储用户工作密钥的主密钥(主密钥是移动应用系统上线时,在加密机中初始化产生的),然后根据每个用户的唯一标识,离散产生每个用户的工作密钥WK,工作密钥每次都从后台获取,不在移动终端中存取,从而保证密钥的安全。
下面以移动应用系统与移动终端结合实施的实例进行说明。
实施中,包括移动终端,以及连有加密机的移动应用系统,在该系统中可先满足如下前置条件:
1、用户App在开发时预置移动应用系统的公钥证书,移动应用系统的私钥存储在加密机中;
2、加密机存储用户工作密钥的主密钥(主密钥是移动应用系统上线时,在加密机中初始化产生的),然后根据每个用户的唯一标识,离散产生每个用户的工作密钥WK,工作密钥每次都从后台获取,不在移动终端中存取,从而保证密钥的安全。
图3为加密方法实施流程示意图,如图所示,具体工作流程可以如下:
步骤301、用户输入PIN码并验证通过,在移动终端本地产生随机数R1,并使用移动应用系统后台的公钥加密R1后上送移动应用系统后台。
步骤302、移动应用系统后台使用私钥解密R1,并调用加密机产生R2。
步骤303、移动应用系统后台将R1和R2同时上送给加密机,使用加密机合成会话主密钥R。
此为加密机产品特有的功能,此处不再赘述。
步骤304、移动应用系统后台调用加密机接口,使用会话主密钥R加密工作密钥WK后,将加密后的密文和R2返回移动端。
步骤305、移动客户端接收密文和R2,使用R1和R2异或产生R;然后使用R解密密文得到工作密钥WK。
步骤306、移动客户端使用工作密钥WK根据设备唯一标识离散产生用户的加密密钥WK1。
步骤307、移动客户端使用加密密钥WK1加密用户私钥或者需要加密传输的信息。
步骤308、如果是加密传输敏感信息,移动客户端在提交密文的时候,还需要提交用户的唯一标识、设备唯一标识;移动应用系统根据用户唯一标识调用加密机接口离散产生WK,使用设备唯一标识和WK离散产生WK1,使用WK1解密加密信息,获得加密原文。
步骤309、如果移动客户端使用WK1加密存储敏感信息并存储在移动客户端,每次解密的时候,需要执行上述步骤101-106,或步骤301-306的步骤,然后使用WK1解密敏感信息。
基于同一发明构思,本发明实施例中还提供了计算机设备及存储介质,由于这些设备解决问题的原理与一种加密方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。
本发明实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
在移动终端产生随机数R1;
使用移动应用系统后台提供的公钥加密随机数R1后,上传移动应用系统后台;
接收移动应用系统后台返回的密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用随机数R1与随机数R2产生的会话主密钥R加密的;
使用随机数R1和随机数R2异或产生会话主密钥R后,使用会话主密钥R解密密文得到工作密钥WK;
使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1;
使用加密密钥WK1加密用户私钥和/或需要加密传输的信息。
实施中,传输需要加密传输的信息时,进一步包括:
向移动应用系统后台提交用户的唯一标识、移动终端的设备唯一标识,用以供移动应用系统后台解密需要加密传输的信息。
实施中,进一步包括:
使用加密密钥WK1加密存储在移动终端上的信息。
实施中,在需要解密使用加密密钥WK1加密存储在移动终端上的信息时,进一步包括:
生成加密密钥WK1后,解密该存储在移动终端上的信息。
实施中,在产生随机数R1前,进一步包括:
在移动终端对用户身份进行认证,在认证通过后产生随机数R1。
实施中,在使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1时,是离散产生用户的加密密钥WK1的。
实施中,所述移动应用系统后台提供的公钥是预置于移动终端上的。
本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述加密方法的计算机程序。
本发明实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
在移动应用系统后台接收移动终端上传的随机数R1,所述随机数R1是移动终端在产生随机数R1后使用移动应用系统后台提供的公钥进行加密后的随机数R1;
移动应用系统后台使用私钥解密出随机数R1,并产生随机数R2;
移动应用系统后台使用随机数R1与随机数R2合成会话主密钥R;
向移动终端返回密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用会话主密钥R加密的。
实施中,在接收到移动终端加密传输的信息时,进一步包括:
使用移动终端提交的用户的唯一标识产生WK;
使用移动终端提交的移动终端的设备唯一标识和WK产生WK1;
使用加密密钥WK1解密该加密传输的信息。
实施中,在使用移动终端提交的用户的唯一标识产生WK时,是调用加密机接口离散产生的;
在使用移动终端提交的移动终端的设备唯一标识和WK产生WK1时,是使用设备唯一标识和WK离散产生的。
实施中,在移动应用系统后台产生随机数R2时,是调用加密机产生的。
实施中,在移动应用系统后台使用随机数R1与随机数R2合成会话主密钥R时,是将R1和R2同时上送给加密机,使用加密机合成会话主密钥R的。
实施中,在移动应用系统后台使用会话主密钥R加密工作密钥WK时,是调用加密机进行加密的。
实施中,所述移动应用系统后台使用私钥解密出随机数R1时使用的私钥是存储在加密机中的。
实施中,产生用户的工作密钥WK的主密钥是存储在加密机中的,其中,主密钥是移动应用系统后台上线时,在加密机中初始化产生的。
本发明实施例中还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述加密方法的计算机程序。
综上所述,在本发明实施例提供的技术方案中,根据用户唯一标识离散产生每个用户的工作密钥WK,根据设备唯一标识离散产生最终加密密钥WK1,实现了用户的一户一密,实现了用户手机的一机一密。从而使得加密存储的内容外部用户无法解密,加密文件拷贝到其它手机上也无法解密。从而保护了移动智能终端的信息安全。
进一步的,还可以将工作密钥主密钥存储在加密机中,进一步增强了移动智能终端的信息安全。
采用软件方式,解决了手机密钥安全存储的问题,适用于所有具备运算能力的智能手机,扩大了移动应用系统的安全应用范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (9)
1.一种加密方法,其特征在于,包括:
在移动终端产生随机数R1;
使用移动应用系统后台提供的公钥加密随机数R1后,上传移动应用系统后台;
接收移动应用系统后台返回的密文和随机数R2,其中,所述密文中包含有工作密钥WK,工作密钥WK是移动应用系统后台使用随机数R1与随机数R2产生的会话主密钥R加密的;
使用随机数R1和随机数R2异或产生会话主密钥R后,使用会话主密钥R解密密文得到工作密钥WK;
使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1;
使用加密密钥WK1加密用户私钥和/或需要加密传输的信息。
2.如权利要求1所述的方法,其特征在于,传输需要加密传输的信息时,进一步包括:
向移动应用系统后台提交用户的唯一标识、移动终端的设备唯一标识,用以供移动应用系统后台解密需要加密传输的信息。
3.如权利要求1所述的方法,其特征在于,进一步包括:
使用加密密钥WK1加密存储在移动终端上的信息。
4.如权利要求3所述的方法,其特征在于,在需要解密使用加密密钥WK1加密存储在移动终端上的信息时,进一步包括:
生成加密密钥WK1后,解密该存储在移动终端上的信息。
5.如权利要求1至4任一所述的方法,其特征在于,在产生随机数R1前,进一步包括:
在移动终端对用户身份进行认证,在认证通过后产生随机数R1。
6.如权利要求5所述的方法,其特征在于,在使用工作密钥WK根据移动终端的设备唯一标识产生用户的加密密钥WK1时,是离散产生用户的加密密钥WK1的。
7.如权利要求6所述的方法,其特征在于,所述移动应用系统后台提供的公钥是预置于移动终端上的。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一所述方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至7任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810258878.3A CN108718233B (zh) | 2018-03-27 | 2018-03-27 | 一种加密方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810258878.3A CN108718233B (zh) | 2018-03-27 | 2018-03-27 | 一种加密方法、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108718233A CN108718233A (zh) | 2018-10-30 |
CN108718233B true CN108718233B (zh) | 2021-04-13 |
Family
ID=63898901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810258878.3A Active CN108718233B (zh) | 2018-03-27 | 2018-03-27 | 一种加密方法、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108718233B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110475095A (zh) * | 2019-08-21 | 2019-11-19 | 苏州科达科技股份有限公司 | 一种会议控制方法、装置、设备及可读存储介质 |
CN111787517A (zh) * | 2020-02-21 | 2020-10-16 | 北京沃东天骏信息技术有限公司 | 智能设备激活绑定的方法和装置 |
CN112373431A (zh) * | 2020-10-22 | 2021-02-19 | 上汽通用五菱汽车股份有限公司 | 一种云数字密钥生成及授权方法 |
CN112989377A (zh) * | 2021-03-12 | 2021-06-18 | 深圳供电局有限公司 | 一种对加密文档进行权限处理的方法以及系统 |
CN113326518B (zh) * | 2021-06-09 | 2024-02-02 | 深圳前海微众银行股份有限公司 | 一种数据处理方法及装置 |
CN113821835B (zh) * | 2021-11-24 | 2022-02-08 | 飞腾信息技术有限公司 | 密钥管理方法、密钥管理装置和计算设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013150333A1 (es) * | 2012-04-03 | 2013-10-10 | Orand S.A. | Sistema y metodo para firmar y autentificar transacciones seguras a traves de una red de comunicaciones |
CN105743654A (zh) * | 2016-02-02 | 2016-07-06 | 上海动联信息技术股份有限公司 | 一种pos机密钥远程下载的服务系统以及密钥下载方法 |
CN105956843A (zh) * | 2015-12-04 | 2016-09-21 | 中国银联股份有限公司 | 一种pos机交易处理方法及系统 |
CN107431924A (zh) * | 2015-03-30 | 2017-12-01 | 微软技术许可有限责任公司 | 将设备标识符和用户标识符相关联的设备盗窃防护 |
CN107682307A (zh) * | 2017-08-16 | 2018-02-09 | 福建联迪商用设备有限公司 | 一种终端授权方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6187251B2 (ja) * | 2013-12-27 | 2017-08-30 | 富士通株式会社 | データ通信方法、およびデータ通信装置 |
-
2018
- 2018-03-27 CN CN201810258878.3A patent/CN108718233B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013150333A1 (es) * | 2012-04-03 | 2013-10-10 | Orand S.A. | Sistema y metodo para firmar y autentificar transacciones seguras a traves de una red de comunicaciones |
CN107431924A (zh) * | 2015-03-30 | 2017-12-01 | 微软技术许可有限责任公司 | 将设备标识符和用户标识符相关联的设备盗窃防护 |
CN105956843A (zh) * | 2015-12-04 | 2016-09-21 | 中国银联股份有限公司 | 一种pos机交易处理方法及系统 |
CN105743654A (zh) * | 2016-02-02 | 2016-07-06 | 上海动联信息技术股份有限公司 | 一种pos机密钥远程下载的服务系统以及密钥下载方法 |
CN107682307A (zh) * | 2017-08-16 | 2018-02-09 | 福建联迪商用设备有限公司 | 一种终端授权方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108718233A (zh) | 2018-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108718233B (zh) | 一种加密方法、计算机设备及存储介质 | |
CN107743133B (zh) | 移动终端及其基于可信安全环境的访问控制方法和系统 | |
KR101878149B1 (ko) | 패스워드의 보안 입력 및 처리 장치, 시스템 및 방법 | |
WO2017097041A1 (zh) | 数据传输方法和装置 | |
CN106878245B (zh) | 图形码信息提供、获取方法、装置及终端 | |
CN108566381A (zh) | 一种安全升级方法、装置、服务器、设备和介质 | |
WO2015180691A1 (zh) | 验证信息的密钥协商方法及装置 | |
CN101051904B (zh) | 一种保护网络应用程序使用账号密码进行登录的方法 | |
US8495383B2 (en) | Method for the secure storing of program state data in an electronic device | |
CN106603487B (zh) | 一种基于cpu时空隔离机制对tls协议处理进行安全改进的方法 | |
CN110868291B (zh) | 一种数据加密传输方法、装置、系统及存储介质 | |
WO2015158172A1 (zh) | 一种用户身份识别卡 | |
WO2015180689A1 (zh) | 验证信息的获取方法及装置 | |
CN106897631A (zh) | 数据处理方法、装置及系统 | |
CN106452771A (zh) | Jce调用密码卡实现内置rsa密钥运算的方法及装置 | |
CN107920060A (zh) | 基于账号的数据访问方法和装置 | |
CN113726733B (zh) | 一种基于可信执行环境的加密智能合约隐私保护方法 | |
TWI827906B (zh) | 訊息傳輸系統以及應用其中之使用者裝置與資訊安全硬體模組 | |
CN102902903B (zh) | 一种带按键的电子商务智能密码钥匙及其实现方法 | |
CN117081736A (zh) | 密钥分发方法、密钥分发装置、通信方法及通信装置 | |
KR20140071775A (ko) | 암호키 관리 시스템 및 방법 | |
CN108154037B (zh) | 进程间的数据传输方法和装置 | |
CN113672973B (zh) | 基于可信执行环境的risc-v架构的嵌入式设备的数据库系统 | |
CN106330877A (zh) | 一种授权对终端状态进行转换的方法和系统 | |
CN111542050A (zh) | 一种基于tee的保障虚拟sim卡远程初始化安全的方法 |
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 |