CN114969767A - 敏感数据加密安全传输方法、装置和设备 - Google Patents

敏感数据加密安全传输方法、装置和设备 Download PDF

Info

Publication number
CN114969767A
CN114969767A CN202110204604.8A CN202110204604A CN114969767A CN 114969767 A CN114969767 A CN 114969767A CN 202110204604 A CN202110204604 A CN 202110204604A CN 114969767 A CN114969767 A CN 114969767A
Authority
CN
China
Prior art keywords
key
encryption
salt
pool
sensitive data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110204604.8A
Other languages
English (en)
Inventor
董琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Unicompay Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Unicompay 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 China United Network Communications Group Co Ltd, Unicompay Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202110204604.8A priority Critical patent/CN114969767A/zh
Publication of CN114969767A publication Critical patent/CN114969767A/zh
Pending legal-status Critical Current

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/606Protecting data by securing the transmission between two devices or processes
    • 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
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Abstract

本申请提供一种敏感数据加密安全传输方法、装置和设备。该方法包括:服务器获取第二密钥和加密规则。终端根据加密规则中的密钥长度条件和盐值初始条件生成第一密钥和盐值初始值。终端使用公钥对第一密钥和盐值初始值进行加密,得到第一密文。终端将该盐值初始值输入到盐值生成算法中,计算得到盐值。终端使用盐值和第一密钥对敏感数据进行加密,得到目标密文。服务器根据第一密文、第二密钥中的私钥和加密规则,解密目标密文,得到敏感数据。本申请的方法,实现一次一密,提高加密的安全性。

Description

敏感数据加密安全传输方法、装置和设备
技术领域
本申请涉及通信技术,尤其涉及一种敏感数据加密安全传输方法、装置和设备。
背景技术
随着互联网的发展,越来越多的信息可以通过互联网实现交互。在信息交互过程中,大部分数据属于公开数据,只需保证数据传输的稳定即可。在信息交互过程中,通常还会包括一些敏感数据,例如,个人隐私数据、金融信息数据、医疗信息数据等。
对于这些敏感数据,在保证数据传输稳定的基础上,通常还需要保证其安全性。目前,敏感数据的安全性通常通过加密传输来保证。现有技术中,敏感数据的加密传输可以包括在服务器侧预置密钥和加密算法、在服务器侧安装加密控件、在终端侧预置密钥和加密算法、在终端侧安装加密控件等。
然而,上述敏感数据加密方式中,密钥和/或加密算法通常被存储在代码片段里,为提前预置的密钥和/或加密。因此,现有技术存在加密安全性低的问题。
发明内容
本申请提供一种敏感数据加密安全传输方法、装置和设备,用以解决现有技术存在加密安全性低的问题。
第一方面,本申请提供一种敏感数据加密安全传输方法,应用于终端,包括:
获取加密规则,所述加密规则通过服务器从数据加密规则池中获取,所述数据加密规则池中包括多种加密规则,所述加密规则中包括盐值生成算法、密钥长度条件和盐值初始条件;
根据所述密钥长度条件和所述盐值初始条件,生成第一密钥和盐值初始值,所述第一密钥为根据所述密钥长度条件随机生成的对称密钥,所述盐值初始值为根据所述盐值初始条件随机生成的数值;
根据所述盐值初始值和所述盐值生成算法生成盐值,所述盐值为所述盐值初始值通过所述盐值生成算法计算得到的数值;
使用所述盐值和所述第一密钥对敏感数据进行加密,得到目标密文。
可选地,所述方法,还包括:
获取公钥,所述公钥为服务器从密钥对池中获取的第二密钥中的公钥,所述密钥对池中包括多个密钥,所述第二密钥为非对称密钥;
根据所述公钥,对第一密钥和盐值初始值进行加密,得到第一密文。
第二方面,本申请提供一种敏感数据加密安全传输方法,应用于服务器,包括:
获取第二密钥和加密规则,所述第二密钥从密钥对池中获取,所述密钥对池中包括多个密钥,所述加密规则从加密规则池中获取,所述数据加密规则池中包括多种加密规则;
获取第一密文和目标密文,所述第一密文和所述目标密文从终端中获取;
根据所述第一密文、所述第二密钥中的私钥和所述加密规则,解密所述目标密文,得到敏感数据。
可选地,所述根据所述第一密文、所述第二密钥中的私钥和所述加密规则,解密所述目标密文,得到敏感数据,包括:
根据所述第一密文和所述私钥,解密得到第一密钥和盐值初始值;
根据所述加密规则中的盐值生成算法和所述盐值初始值,生成盐值;
根据所述目标密文、所述盐值和所述第一密钥,解密得到敏感数据。
可选地,所述方法,还包括:
预生成多个密钥对和多种加密规则,所述密钥对为非对称密钥对;
将所述密钥对存储到所述密钥对池;
将所述加密规则存储到所述加密规则池。
可选地,所述密钥对池包括主密钥对池和备密钥对池,所述方法,包括:
当所述主密钥对池触发更新时,服务器使用所述备密钥对池获取密钥对,所述触发更新的条件包括所述主密钥对池的使用时长超过预设时长和/或所述主密钥对池的使用次数超过预设次数。
第三方面,本申请提供一种敏感数据加密安全传输装置,应用于终端,包括:
获取模块,用于获取加密规则,所述加密规则通过服务器从数据加密规则池中获取,所述数据加密规则池中包括多种加密规则,所述加密规则中包括盐值生成算法、密钥长度条件和盐值初始条件;
第一生成模块,用于根据所述密钥长度条件和所述盐值初始条件,生成第一密钥和盐值初始值,所述第一密钥为根据所述密钥长度条件随机生成的对称密钥,所述盐值初始值为根据所述盐值初始条件随机生成的数值;
第二生成模块,用于根据所述盐值初始值和所述盐值生成算法生成盐值,所述盐值为所述盐值初始值通过所述盐值生成算法计算得到的数值;
加密模块,用于使用所述盐值和所述第一密钥对敏感数据进行加密,得到目标密文。
可选地,所述装置,还包括:
获取模块,还用于获取公钥,所述公钥为服务器从密钥对池中获取的第二密钥中的公钥,所述密钥对池中包括多个密钥,所述第二密钥为非对称密钥;
加密模块,还用于根据所述公钥,对第一密钥和盐值初始值进行加密,得到第一密文。
第四方面,本申请提供一种敏感数据加密安全传输装置,应用于服务器,包括:
第一获取模块,用于获取第二密钥和加密规则,所述第二密钥从密钥对池中获取,所述密钥对池中包括多个密钥,所述加密规则从加密规则池中获取,所述数据加密规则池中包括多种加密规则;
第二获取模块,用于获取第一密文和目标密文,所述第一密文和所述目标密文从终端中获取;
解密模块,用于根据所述第一密文、所述第二密钥中的私钥和所述加密规则,解密所述目标密文,得到敏感数据。
可选地,所述解密模块,具体包括根据所述第一密文和所述私钥,解密得到第一密钥和盐值初始值;根据所述加密规则中的盐值生成算法和所述盐值初始值,生成盐值;根据所述目标密文、所述盐值和所述第一密钥,解密得到敏感数据。
可选地,所述装置,还包括:
预生成模块,用于预生成多个密钥对和多种加密规则,所述密钥对为非对称密钥对;
存储模块,用于将所述密钥对存储到所述密钥对池;
存储模块,还用于将所述加密规则存储到所述加密规则池。
可选地,所述密钥对池包括主密钥对池和备密钥对池,所述装置,包括:
当所述主密钥对池触发更新时,服务器使用所述备密钥对池获取密钥对,所述触发更新的条件包括所述主密钥对池的使用时长超过预设时长和/或所述主密钥对池的使用次数超过预设次数。
第五方面,本申请提供一种敏感数据加密安全传输系统,包括:终端和服务器;
所述终端用于实现如第一方面及第一方面任一种可能的设计中的敏感数据加密安全传输方法。
所述服务器用于实现如第二方面及第二方面任一种可能的设计中的敏感数据加密安全传输方法。
第六方面,本申请提供一种可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现如第一方面及第一方面任一种可能的设计中的敏感数据加密安全传输方法和第二方面及第二方面任一种可能的设计中的敏感数据加密安全传输方法。
第七方面,本申请提供一种计算机程序产品,所述计算机程序产品包括计算机程序,,该计算机程序被处理器执行时实现第一方面及第一方面任一种可能的设计中的敏感数据加密安全传输方法和第二方面及第二方面任一种可能的设计中的敏感数据加密安全传输方法。
本申请提供的敏感数据加密安全传输方法、装置和设备,服务器通过从密钥对池中获取第二密钥,从加密规则池中获取加密规则;将第二密钥中的公钥和加密规则发送到终端;根据第一密文、第二密钥中的私钥和加密规则,解密目标密文,得到敏感数据的手段,实现第二密钥和加密规则的随机获取,实现一次一密,提高加密的安全性。终端通过根据加密规则中的密钥长度条件随机生成第一密钥,该第一密钥为对称密钥;根据加密规则中的盐值初始条件生成盐值初始值;使用接收到的公钥对第一密钥和盐值初始值进行加密,得到第一密文;将使用公钥加密得到的第一密文发送到服务器;将该盐值初始值输入到盐值生成算法中,计算得到盐值;使用盐值和第一密钥对敏感数据进行加密,得到目标密文;将该目标密文上传到服务器的手段,实现使用第二密钥和加密规则对敏感数据的加密,实现一次一密,提高加密的安全性。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的一种敏感数据加密安全传输的场景示意图;
图2为本申请一实施例提供的一种敏感数据加密安全传输方法的信令交互图;
图3为本申请一实施例提供的另一种敏感数据加密安全传输方法的信令交互图;
图4为本申请一实施例提供的一种敏感数据加密安全传输装置的结构示意图;
图5为本申请一实施例提供的另一种敏感数据加密安全传输装置的结构示意图;
图6为本申请一实施例提供的一种敏感数据加密安全传输系统的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本文范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在……时"或"当……时"或"响应于确定"。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
应该理解的是,虽然上述实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
随着互联网的发展,越来越多的信息可以通过互联网实现交互。例如,用户可以通过终端上传数据、在终端上查看数据、通过终端下载数据等。在该信息交互过程中,大部分数据属于公开数据。例如,用户可以直接在终端上检索得到的数据。针对该数据,通常只需保证数据传输的稳定即可。除了这些数据以外,信息交互过程中还可能包括一些敏感数据,例如,个人隐私数据、金融信息数据、医疗信息数据等。针对这些敏感数据,在保证数据传输稳定的基础上,通常还需要保证其安全性。例如,在终端上填写的个人隐私数据需要在加密后上传到服务器。或者,从服务器上读取的金融信息数据需要在加密后发送到终端,进而实现该金融信息数据的显示。
目前,敏感数据的安全性通常通过加密传输来保证。现有技术中,敏感数据的加密传输可以包括以下几种:
1)服务器中可以预置有密钥和加密算法。其中,密钥可以存放在非可执行文件中。在终端提交带有敏感信息的报文之前,服务器可以使用预置的密钥和加密算法对该敏感信息进行加密。当密钥和/或加密算法需要更新时,服务器通过重新发布程序,实现密钥和/或加密算法的更新。
2)终端可以安装有加密控件。当终端需要提交带有敏感信息的报文之时,该终端可以通过加密控件对该敏感信息进行加密。当该加密算法需要更新时,通常需要重新下载该加密控件。
3)当该终端为APP中的终端时,终端还可以借助该APP的加密计算能力,通过桥技术实现终端和APP的通信,进而完成敏感数据的加密。当APP的加密计算能力需要更新时,终端需要获取新的APP程序并安装,实现密钥和/或加密算法的更新。
然而,上述敏感数据加密方式中,密钥和/或加密算法通常需要提前预置。例如,当密钥和加密算法被存储在服务器中时,该密钥和加密算法可以提前预置在该服务器中。当终端借助APP或者加密控件实现加密时,该密钥和/或加密算法通常被存储在APP或者加密控件的代码中。该被预置的代码存在密钥和/或加密算法固定的问题,其破解概率高,存在安全性低的问题。此外,如果需要更新该密钥和/或加密算法,则通常需要重新安装程序或者重新安装APP,十分不便,存在灵活性低的问题。
针对上述问题,本申请提出了一种敏感数据加密安全传输方法、装置和设备。本申请通过在服务器端配置加密规则池和密钥对池,使服务器在获取密钥和加密规则的时候,可以实现一次一密,提高加密的安全性。本申请中终端获取用户在浏览器中输入的敏感数据。当用户在终端提交该敏感数据时,终端对敏感数据进行加密。终端请求服务器从密钥对池中获取第二密钥,从加密规则池中获取加密规则。终端获取服务器反馈的加密规则和第二密钥中的公钥。终端根据加密规则生成第一密钥和盐值初始值。终端使用公钥对第一密钥和盐值初始值加密后上传到服务器。服务器使用第二密钥中的私钥进行解密,得到该第一密钥和盐值初始值。当用户在终端提交该敏感数据时,终端根据该敏感数据生成对应的报文。终端使用第一密钥和盐值对该报文进行加密,得到目标密文。终端将该目标密文上报到服务器。服务器使用第一密钥和盐值对该目标密文进行解密,得到敏感数据。
下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1示出了本申请一实施例提供的一种敏感数据加密安全传输的场景示意图。包括终端和服务器。其中,终端包括电脑、平板、手机等。该终端提交敏感数据的场景可以包括:用户通过终端上的应用或者APP打开网页,用户在该网页上输入敏感数据。用户在该网页上提交该敏感数据。或者,用户在终端上的应用或者APP的交互界面上输入敏感数据。用户在该交互界面上提交该敏感数据。或者,本申请所使用的敏感数据加密安全传输方法还可以应用于数据从服务器敏感下载到终端。终端上的应用或者APP在网页或者交互界面上展示该敏感数据。
本申请中,以终端和服务器为执行主体,执行如下实施例的敏感数据加密安全传输方法。
图2示出了本申请一实施例提供的一种敏感数据加密安全传输方法的信令交互图。在图1所示实施例的基础上,如图2所示,本实施例的方法可以包括如下步骤:
S101、服务器获取第二密钥和加密规则,第二密钥从密钥对池中获取,密钥对池中包括多个密钥,加密规则从加密规则池中获取,数据加密规则池中包括多种加密规则。
本实施例中,当服务器接收到终端发送的加密请求后,服务器从密钥对池中获取第二密钥,从加密规则池中获取加密规则。
其中,密钥对池中包括多对密钥。服务器从该多对密钥中随机获取一对密钥作为第二密钥。当服务器从该密钥对池中获取第二密钥后,密钥对池将该第二密钥从密钥对池中删除,从而避免该第二密钥被重复选择。该第二密钥为非对称密钥,其中包括一个公钥和一个私钥。
其中,加密规则池中包括多种加密规则。服务器从该多种加密规则中随机获取一种加密规则作为敏感数据的加密规则。当服务器从加密规则池中获取该加密规则后,该加密规则将从该加密规则池中删除,避免该加密规则被重复选择。该加密规则中可以包括盐值生成算法、密钥长度条件和盐值初始条件。
S102、服务器将第二密钥的公钥加密规则发送到终端,加密规则中包括盐值生成算法、密钥长度条件和盐值初始条件。
本实施例中,服务器将第二密钥中的公钥和加密规则发送到终端。
S103、终端根据密钥长度条件和盐值初始条件,生成第一密钥和盐值初始值,第一密钥为根据密钥长度条件随机生成的对称密钥,盐值初始值为根据盐值初始条件随机生成的数值。
本实施例中,终端在接收到服务器发送的加密规则后,获取该加密规则中的密钥长度条件和盐值初始条件。
终端根据密钥长度条件随机生成第一密钥。该第一密钥的长度符合密钥长度条件。该第一密钥为对称密钥。
终端根据盐值初始条件生成盐值初始值。例如,当该盐值初始条件中包括盐值初始值时,终端可以直接获取该盐值初始值。当该盐值初始条件中不包括盐值初始值时,终端可以根据该盐值初始条件随机生成盐值初始值。
S104、终端根据公钥,对第一密钥和盐值初始值进行加密,得到第一密文。
本实施例中,终端可以使用接收到的公钥对第一密钥和盐值初始值进行加密。该加密方法可以为现有的加密方法,或者改进后的加密方法,本申请对此不做限制。终端在加密后得到第一密文。
S105、终端将第一密文发送到服务器。
本实施例中,终端将使用公钥加密得到的第一密文发送到服务器。
S106、终端根据盐值初始值和盐值生成算法生成盐值,盐值为盐值初始值通过盐值生成算法计算得到的数值。
本实施例中,终端在计算得到盐值初始值后,将该盐值初始值输入到盐值生成算法中,计算得到盐值。
S107、终端使用盐值和第一密钥对敏感数据进行加密,得到目标密文。
本实施例中,当用户点击网页或者交互界面上的提交或者上传按钮时,终端根据网页或者交互界面上的内容生成报文。该报文中包括敏感数据。终端使用该盐值和第一密钥对该敏感数据进行加密。其中,加密方法可以为现有的加密方法,或者改进后的加密方法,本申请对此不做限制。终端在加密后得到目标密文。
S108、终端发送目标密文到服务器。
本实施例中,终端将该目标密文上传到服务器。
S109、服务器根据第一密文、第二密钥中的私钥和加密规则,解密目标密文,得到敏感数据。
本实施例中,服务器在接收到第一密文后,服务器可以根据第二密钥中的私钥对该第一密文进行解密。服务器对该第一密文解密得到第一密钥和盐值初始值。服务器使用加密规则中的盐值生成算法,对盐值初始值进行计算,得到盐值。服务器使用解密得到的第一密钥和盐值,对目标密文进行解密,得到包含敏感数据的报文。服务器对该报文进行解析的得到敏感数据。
服务器将该敏感数据存储在对应的存储设备中。
本申请提供的敏感数据加密安全传输方法,服务器从密钥对池中获取第二密钥,从加密规则池中获取加密规则。服务器将第二密钥中的公钥和加密规则发送到终端。终端根据加密规则中的密钥长度条件随机生成第一密钥。该第一密钥为对称密钥。终端根据加密规则中的盐值初始条件生成盐值初始值。终端使用接收到的公钥对第一密钥和盐值初始值进行加密,得到第一密文。终端将使用公钥加密得到的第一密文发送到服务器。终端将该盐值初始值输入到盐值生成算法中,计算得到盐值。终端使用盐值和第一密钥对敏感数据进行加密,得到目标密文。终端将该目标密文上传到服务器。服务器根据第一密文、第二密钥中的私钥和加密规则,解密目标密文,得到敏感数据。本申请中,通过随机获取第二密钥和加密规则,实现一次一密,提高加密的安全性。
图3示出了本申请一实施例提供的另一种敏感数据加密安全传输方法的信令交互图。在图2实施例的基础上,本实施例还包括密钥对池和加密规则池。如图3所示,本实施例的方法可以包括如下步骤:
S201、服务器预生成多个密钥对和多种加密规则,密钥对为非对称密钥对。
本实施例中,服务器预生成多个密钥对和加密规则。服务器可以根据预设的更新周期定期预生成该密钥对和加密规则。或者服务器还可以在密钥对池或者加密规则池需要更新时,预生成多个密钥对和加密规则池。
S202、服务器将密钥对存储到密钥对池。
本实施例中,服务器在预生成多个密钥对后,将该密钥对添加到密钥对池中。
一种示例中,服务器中可以包括主密钥对池和备密钥对池。当主密钥对池触发更新时,服务器使用备密钥对池获取密钥对。在服务器切换到从备密钥对池中获取密钥对后,服务器将预生成的多个密钥对添加到主密钥对池中,实现该主密钥对池的更新。当该主密钥对池完成更新后,服务器切换回主密钥对池获取密钥对。服务器根据在更新期间备密钥对池的使用情况,更新备密钥对池中的密钥对,保持该备密钥对池的稳定。
其中,触发主密钥对池更新的条件可以包括主密钥对池的使用时长超过预设时长和/或主密钥对池的使用次数超过预设次数。
S203、服务器将加密规则存储到加密规则池。
本实施例中,服务器在预生成多种加密规则后,将该加密规则添加到加密规则池中。
一种示例中,服务器中可以包括主加密规则池和备加密规则池。当主加密规则池触发更新时,服务器使用备加密规则池获取加密规则。当服务器切换到备加密规则池后,服务器将预生成的多种加密规则添加到主加密规则池中,实现该主加密规则池的更新。当完成更新后,服务器切换回主加密规则池。并且,服务器根据在更新期间备加密规则池的使用情况,更新备加密规则池中的加密规则,保持该备密钥对池的稳定。
S204、终端获取终端敏感信息。
本实施例中,当终端的网页或者交互界面中包括敏感信息时,终端向服务器发起加密请求。当用户在该网页或者交互界面上点击上传或者提交时,终端获取其中的敏感信息。终端根据该网页或者交互界面生成对应的报文。该报文中包括敏感信息。
S205、服务器获取第二密钥和加密规则,第二密钥从密钥对池中获取,密钥对池中包括多个密钥,加密规则从加密规则池中获取,数据加密规则池中包括多种加密规则。
S206、服务器将第二密钥的公钥加密规则发送到终端,加密规则中包括盐值生成算法、密钥长度条件和盐值初始条件。
S207、终端根据密钥长度条件和盐值初始条件,生成第一密钥和盐值初始值,第一密钥为根据密钥长度条件随机生成的对称密钥,盐值初始值为根据盐值初始条件随机生成的数值。
S208、终端根据公钥,对第一密钥和盐值初始值进行加密,得到第一密文。
S209、终端将第一密文发送到服务器。
S210、终端根据盐值初始值和盐值生成算法生成盐值,盐值为盐值初始值通过盐值生成算法计算得到的数值。
S211、终端使用盐值和第一密钥对敏感数据进行加密,得到目标密文。
S212、终端发送目标密文到服务器。
其中,步骤S205至S212与图2实施例中的步骤S101至S108的实现方式类似,本实施例此处不再赘述。
S213、服务器根据第一密文和私钥,解密得到第一密钥和盐值初始值。
本实施例中,该步骤可以在S209后执行。当服务器接收到终端发送的第一密文后,服务器即可使用第二密钥中的私钥对该第一密文进行解密。服务器使用私钥对该第一密文进行解密得到第一密钥和盐值初始值。
S214、服务器根据加密规则中的盐值生成算法和盐值初始值,生成盐值。
本实施例中,服务器在对第一密文进行解密得到盐值初始值后,服务器可以根据加密规则中的盐值生成算法和盐值初始值,生成盐值。具体地,服务器将该盐值初始值输入到该盐值生成算法中,计算得到盐值。
S215、服务器根据目标密文、盐值和第一密钥,解密得到敏感数据。
本实施例中,该步骤可以在S212后执行。当服务器从终端中获取目标密文后,服务器可以使用S213解密得到第一密文和S214计算得到的盐值,对该目标密文进行解密。服务器可以解密得到包含敏感数据的报文。服务器对该报文进行解析的得到敏感数据。服务器将该敏感数据存储在对应的存储设备中。
本申请提供的敏感数据加密安全传输方法,服务器预生成多个密钥对和加密规则。服务器将密钥对存储到密钥对池。服务器将加密规则存储到加密规则池。服务器从密钥对池中获取第二密钥,从加密规则池中获取加密规则。服务器将第二密钥中的公钥和加密规则发送到终端。终端根据加密规则中的密钥长度条件随机生成第一密钥。该第一密钥为对称密钥。终端根据加密规则中的盐值初始条件生成盐值初始值。终端使用接收到的公钥对第一密钥和盐值初始值进行加密,得到第一密文。终端将使用公钥加密得到的第一密文发送到服务器。终端将该盐值初始值输入到盐值生成算法中,计算得到盐值。终端使用盐值和第一密钥对敏感数据进行加密,得到目标密文。终端将该目标密文上传到服务器。服务器根据第一密文、第二密钥中的私钥和加密规则,解密目标密文,得到敏感数据。本申请中,通过随机获取第二密钥和加密规则,实现一次一密,提高加密的安全性。同时,本申请还可以通过使用主密钥对池和备密钥对池的切换,使服务器可以在在保证密钥对获取效率的基础上,实现了密钥对池的更新,提高了密钥更新的灵活性。
图4示出了本申请一实施例提供的一种敏感数据加密安全传输装置的结构示意图,如图4所示,本实施例的敏感数据加密安全传输装置10用于实现上述任一方法实施例中对应于终端的操作,本实施例的敏感数据加密安全传输装置10包括:
获取模块11,用于获取加密规则,加密规则通过服务器从数据加密规则池中获取,数据加密规则池中包括多种加密规则,加密规则中包括盐值生成算法、密钥长度条件和盐值初始条件;
第一生成模块12,用于根据密钥长度条件和盐值初始条件,生成第一密钥和盐值初始值,第一密钥为根据密钥长度条件随机生成的对称密钥,盐值初始值为根据盐值初始条件随机生成的数值;
第二生成模块13,用于根据盐值初始值和盐值生成算法生成盐值,盐值为盐值初始值通过盐值生成算法计算得到的数值;
加密模块14,用于使用盐值和第一密钥对敏感数据进行加密,得到目标密文。
一种示例中,获取模块11,还用于获取公钥,公钥为服务器从密钥对池中获取的第二密钥中的公钥,密钥对池中包括多个密钥,第二密钥为非对称密钥;
加密模块14,还用于根据公钥,对第一密钥和盐值初始值进行加密,得到第一密文。
本申请实施例提供的敏感数据加密安全传输装置10,可执行上述方法实施例,其具体实现原理和技术效果,可参见上述方法实施例,本实施例此处不再赘述。
图5示出了本申请一实施例提供的另一种敏感数据加密安全传输装置的结构示意图,在图4所示实施例的基础上,如图5所示,本实施例的敏感数据加密安全传输装置20用于实现上述任一方法实施例中对应于服务器的操作,本实施例的敏感数据加密安全传输装置20包括:
第一获取模块21,用于获取第二密钥和加密规则,第二密钥从密钥对池中获取,密钥对池中包括多个密钥,加密规则从加密规则池中获取,数据加密规则池中包括多种加密规则;
第二获取模块22,用于获取第一密文和目标密文,第一密文和目标密文从终端中获取;
解密模块23,用于根据第一密文、第二密钥中的私钥和加密规则,解密目标密文,得到敏感数据。
一种示例中,解密模块23具体用于根据第一密文和私钥,解密得到第一密钥和盐值初始值;根据加密规则中的盐值生成算法和盐值初始值,生成盐值;根据目标密文、盐值和第一密钥,解密得到敏感数据。
一种示例中,敏感数据加密安全传输装置20还包括:
预生成模块24,用于预生成多个密钥对和多种加密规则,密钥对为非对称密钥对;
存储模块25,用于将密钥对存储到密钥对池;
存储模块25,还用于将加密规则存储到加密规则池。
一种示例中,密钥对池包括主密钥对池和备密钥对池,当主密钥对池触发更新时,服务器使用备密钥对池获取密钥对,触发更新的条件包括主密钥对池的使用时长超过预设时长和/或主密钥对池的使用次数超过预设次数。
图6示出了本申请实施例提供的一种敏感数据加密安全传输系统的结构示意图。如图6所示,该敏感数据加密安全传输系统30,可以包括:终端31和服务器32;
终端31包括用于实现与用户交互的网页。该网页可以为终端直接打开的网页、终端通过APP打开的网页等。终端用于实现上述实施例中的敏感数据加密安全传输方法。具体可以参见前述方法实施例中的相关描述。
服务器用于实现用于实现上述实施例中的敏感数据加密安全传输方法。具体可以参见前述方法实施例中的相关描述。
本实施例提供的电子设备可用于执行上述的敏感数据加密安全传输方法,其实现方式和技术效果类似,本实施例此处不再赘述。
本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时用于实现上述的各种实施方式提供的方法。
本申请还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在计算机可读存储介质中。设备的至少一个处理器可以从计算机可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得设备实施上述的各种实施方式提供的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例方法的部分步骤。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制。尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换。而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (11)

1.一种敏感数据加密安全传输方法,其特征在于,应用于终端,所述方法包括:
获取加密规则,所述加密规则通过服务器从数据加密规则池中获取,所述数据加密规则池中包括多种加密规则,所述加密规则中包括盐值生成算法、密钥长度条件和盐值初始条件;
根据所述密钥长度条件和所述盐值初始条件,生成第一密钥和盐值初始值,所述第一密钥为根据所述密钥长度条件随机生成的对称密钥,所述盐值初始值为根据所述盐值初始条件随机生成的数值;
根据所述盐值初始值和所述盐值生成算法生成盐值,所述盐值为所述盐值初始值通过所述盐值生成算法计算得到的数值;
使用所述盐值和所述第一密钥对敏感数据进行加密,得到目标密文。
2.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
获取公钥,所述公钥为服务器从密钥对池中获取的第二密钥中的公钥,所述密钥对池中包括多个密钥,所述第二密钥为非对称密钥;
根据所述公钥,对第一密钥和盐值初始值进行加密,得到第一密文。
3.一种敏感数据加密安全传输方法,其特征在于,应用于服务器,所述方法,包括:
获取第二密钥和加密规则,所述第二密钥从密钥对池中获取,所述密钥对池中包括多个密钥,所述加密规则从加密规则池中获取,所述数据加密规则池中包括多种加密规则;
获取第一密文和目标密文,所述第一密文和所述目标密文从终端中获取;
根据所述第一密文、所述第二密钥中的私钥和所述加密规则,解密所述目标密文,得到敏感数据。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一密文、所述第二密钥中的私钥和所述加密规则,解密所述目标密文,得到敏感数据,包括:
根据所述第一密文和所述私钥,解密得到第一密钥和盐值初始值;
根据所述加密规则中的盐值生成算法和所述盐值初始值,生成盐值;
根据所述目标密文、所述盐值和所述第一密钥,解密得到敏感数据。
5.根据权利要求3所述的方法,其特征在于,所述方法,还包括:
预生成多个密钥对和多种加密规则,所述密钥对为非对称密钥对;
将所述密钥对存储到所述密钥对池;
将所述加密规则存储到所述加密规则池。
6.根据权利要求5所述的方法,其特征在于,所述密钥对池包括主密钥对池和备密钥对池,所述方法,包括:
当所述主密钥对池触发更新时,服务器使用所述备密钥对池获取密钥对,所述触发更新的条件包括所述主密钥对池的使用时长超过预设时长和/或所述主密钥对池的使用次数超过预设次数。
7.一种敏感数据加密安全传输装置,其特征在于,应用于终端,所述装置,包括:
获取模块,用于获取加密规则,所述加密规则通过服务器从数据加密规则池中获取,所述数据加密规则池中包括多种加密规则,所述加密规则中包括盐值生成算法、密钥长度条件和盐值初始条件;
第一生成模块,用于根据所述密钥长度条件和所述盐值初始条件,生成第一密钥和盐值初始值,所述第一密钥为根据所述密钥长度条件随机生成的对称密钥,所述盐值初始值为根据所述盐值初始条件随机生成的数值;
第二生成模块,用于根据所述盐值初始值和所述盐值生成算法生成盐值,所述盐值为所述盐值初始值通过所述盐值生成算法计算得到的数值;
加密模块,用于使用所述盐值和所述第一密钥对敏感数据进行加密,得到目标密文。
8.一种敏感数据加密安全传输装置,其特征在于,应用于服务器,所述装置,包括:
第一获取模块,用于获取第二密钥和加密规则,所述第二密钥从密钥对池中获取,所述密钥对池中包括多个密钥,所述加密规则从加密规则池中获取,所述数据加密规则池中包括多种加密规则;
第二获取模块,用于获取第一密文和目标密文,所述第一密文和所述目标密文从终端中获取;
解密模块,用于根据所述第一密文、所述第二密钥中的私钥和所述加密规则,解密所述目标密文,得到敏感数据。
9.一种敏感数据加密安全传输系统,其特征在于,所述系统,包括:终端和服务器;
所述终端用于实现如权利要求1-2中任意一项所述的敏感数据加密安全传输方法;
所述服务器用于实现如权利要求3-6中任意一项所述的敏感数据加密安全传输方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-6中任意一项所述的敏感数据加密安全传输方法。
11.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-6中任意一项所述的敏感数据加密安全传输方法。
CN202110204604.8A 2021-02-24 2021-02-24 敏感数据加密安全传输方法、装置和设备 Pending CN114969767A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110204604.8A CN114969767A (zh) 2021-02-24 2021-02-24 敏感数据加密安全传输方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110204604.8A CN114969767A (zh) 2021-02-24 2021-02-24 敏感数据加密安全传输方法、装置和设备

Publications (1)

Publication Number Publication Date
CN114969767A true CN114969767A (zh) 2022-08-30

Family

ID=82974295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110204604.8A Pending CN114969767A (zh) 2021-02-24 2021-02-24 敏感数据加密安全传输方法、装置和设备

Country Status (1)

Country Link
CN (1) CN114969767A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116055037A (zh) * 2022-12-21 2023-05-02 华能信息技术有限公司 一种密钥管理方法及系统
CN116155497A (zh) * 2023-01-06 2023-05-23 南京通力峰达软件科技有限公司 一种车联网用户应用程序中的敏感数据加密和保存方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116055037A (zh) * 2022-12-21 2023-05-02 华能信息技术有限公司 一种密钥管理方法及系统
CN116155497A (zh) * 2023-01-06 2023-05-23 南京通力峰达软件科技有限公司 一种车联网用户应用程序中的敏感数据加密和保存方法
CN116155497B (zh) * 2023-01-06 2023-09-29 南京通力峰达软件科技有限公司 一种车联网用户应用程序中的敏感数据加密和保存方法

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
EP2831803B1 (en) Systems and methods for secure third-party data storage
US9647984B2 (en) System and method for securely using multiple subscriber profiles with a security component and a mobile telecommunications device
CN107038383B (zh) 一种数据处理的方法和设备
CN102377564B (zh) 私钥的加密方法及装置
CN109922084B (zh) 密钥管理方法、装置以及电子设备
US10735186B2 (en) Revocable stream ciphers for upgrading encryption in a shared resource environment
CN113489585A (zh) 终端设备的身份认证方法、系统、存储介质、电子设备
EP2676452B1 (en) Quarantine method for sellable virtual goods
CN105580311A (zh) 使用请求供应的密钥的数据安全性
CN109672521B (zh) 基于国密加密引擎实现的安全存储系统和方法
CN114969767A (zh) 敏感数据加密安全传输方法、装置和设备
US9479330B2 (en) Method, information service system and program for information encryption/decryption
CN112671733A (zh) 数据通信方法、密钥管理系统、设备及存储介质
CN104917748A (zh) 一种用于对密码信息进行换算和处理的方法和装置
EP3605379A1 (en) Method and device for processing user information
CN109802827B (zh) 密钥更新方法及密钥更新系统
CN112966287B (zh) 获取用户数据的方法、系统、设备和计算机可读介质
CN114338179A (zh) 页面加密方法、页面解密方法、装置、终端和服务器
US9473471B2 (en) Method, apparatus and system for performing proxy transformation
CN113259100A (zh) 基于tee的联邦推荐方法、装置、设备及介质
CN110598427B (zh) 数据的处理方法、系统和存储介质
CN113452513B (zh) 密钥分发方法、装置和系统
WO2018043466A1 (ja) データ抽出システム、データ抽出方法、登録装置及びプログラム
KR101595056B1 (ko) 인터클라우드 환경에서의 데이터 공유 시스템 및 공유 방법

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