CN112738051B - 数据信息加密方法、系统及计算机可读存储介质 - Google Patents
数据信息加密方法、系统及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112738051B CN112738051B CN202011548600.3A CN202011548600A CN112738051B CN 112738051 B CN112738051 B CN 112738051B CN 202011548600 A CN202011548600 A CN 202011548600A CN 112738051 B CN112738051 B CN 112738051B
- Authority
- CN
- China
- Prior art keywords
- information
- key
- client
- negotiation
- encryption
- 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
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000012795 verification Methods 0.000 claims abstract description 64
- 230000005540 biological transmission Effects 0.000 claims abstract description 40
- 238000004590 computer program Methods 0.000 claims description 23
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 72
- 230000008569 process Effects 0.000 description 20
- 238000004364 calculation method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 8
- 230000009466 transformation Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- 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
本发明公开了数据信息加密方法、系统及计算机可读存储介质。方法包括:管理服务器对客户端的传输请求信息进行验证,若验证通过根据秘钥生成规则生成第一秘钥信息;客户端对应生成第二秘钥信息;管理服务器获取第二秘钥信息的第二公钥生成服务器协商秘钥;客户端获取第一秘钥信息的第一公钥生成客户端协商秘钥并根据信息加密规则对待发送信息进行加密生成第一加密信息;管理服务器根据服务器协商秘钥对第一加密信息进行解密得到第一解密信息。本发明基于信息加密技术,属于密码技术领域,由于未对第一秘钥信息的第一私钥及第二秘钥信息的第二私钥进行传输,可确保生成的客户端协商秘钥及服务器协商秘钥安全可靠,大幅增加了进行加解密的安全性。
Description
技术领域
本发明涉及信息加密技术领域,属于智慧城市中数据信息加密的应用场景,尤其涉及一种数据信息加密方法、系统及计算机可读存储介质。
背景技术
随着网络技术的发展,电子卡片得到了越来越广泛的应用,如电子健康卡、电子银行卡等电子卡片,电子卡片可设置于手机、移动穿戴设备等客户端内,方便客户的使用。然而电子卡片中均包含有客户的大量隐私信息,如客户的身份信息等隐私信息,在客户使用电子证件过程中需通过客户端与服务器端之间进行信息交互以完成业务的处理过程,而在进行信息交互过程中的业务信息及支付信息等敏感信息需通过互联网进行传输,在敏感信息经互联网传输的过程中易造成信息泄露、被拦截、被篡改等问题。为加强信息传输过程中的安全性,避免客户信息泄露、篡改,需对信息进行加密以后再经互联网传输,而传统的对称加密方式存在易被破解的风险,因此加密的安全系数较低,易给企业和客户带来信息泄露的风险。因而现有的数据信息加密方法存在安全系数不高的问题。
发明内容
本发明实施例提供了一种数据信息加密方法、系统及计算机可读存储介质,旨在解决现有数据信息加密方法所存在的安全系数不高的问题。
第一方面,本发明实施例提供了一种数据信息加密方法,其包括:
所述管理服务器接收来自客户端的传输请求信息,根据预置的验证规则对所述传输请求信息进行验证得到是否验证通过的验证结果;
若所述验证结果为验证通过,所述管理服务器根据预置的秘钥生成规则生成第一秘钥信息,并发送所述第一秘钥信息中的第一公钥至所述客户端;
所述客户端接收所述第一公钥,根据所述秘钥生成规则生成第二秘钥信息;
所述客户端发送所述第二公钥至所述管理服务器,并根据预置的协商秘钥生成规则、所述第一公钥及所述第二秘钥信息生成对应的客户端协商秘钥;
所述管理服务器接收来自所述客户端的第二公钥,根据所述协商秘钥生成规则、所述第二公钥及所述第一秘钥信息生成对应的服务器协商秘钥;
所述客户端根据预置的信息加密规则及所述客户端协商秘钥对所输入的待发送信息进行加密后生成第一加密信息并发送至所述管理服务器;
若所述管理服务器接收到所述第一加密信息,根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息。
第二方面,本发明实施例提供了一种数据信息加密系统,其包括:
所述请求验证单元,用于接收来自客户端的传输请求信息,根据预置的验证规则对所述传输请求信息进行验证得到是否验证通过的验证结果;
所述第一秘钥信息生成单元,用于若所述验证结果为验证通过,根据预置的秘钥生成规则生成第一秘钥信息,并发送所述第一秘钥信息中的第一公钥至所述客户端;
所述第二秘钥信息生成单元,用于接收所述第一公钥,根据所述秘钥生成规则生成第二秘钥信息;
所述第一协商秘钥生成单元,用于发送所述第二公钥至所述管理服务器,并根据预置的协商秘钥生成规则、所述第一公钥及所述第二秘钥信息生成对应的客户端协商秘钥;
所述第二协商秘钥生成单元,用于接收来自所述客户端的第二公钥,根据所述协商秘钥生成规则、所述第二公钥及所述第一秘钥信息生成对应的服务器协商秘钥;
所述信息加密单元,用于根据预置的信息加密规则及所述客户端协商秘钥对所输入的待发送信息进行加密后生成第一加密信息并发送至所述管理服务器;
所述信息解密单元,用于若接收到所述第一加密信息,根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息。
第三方面,本发明实施例又提供了一种数据信息加密系统,其包括客户端及管理服务器,所述客户端包括第一存储器、第一处理器及存储在所述第一存储器上并可在所述第一处理器上运行的第一计算机程序,所述管理服务器包括第二存储器、第二处理器及存储在所述第二存储器上并可在所述第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序且所述第二处理器执行所述第二计算机程序以共同实现上述第一方面所述的数据信息加密方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有第一计算机程序和/或第二计算机程序,当所述第一计算机程序被第一处理器执行且所述第二计算机程序被第二处理器执行时共同实现上述第一方面所述的数据信息加密方法。
本发明实施例提供了一种数据信息加密方法、系统及计算机可读存储介质。管理服务器对客户端的传输请求信息进行验证,若验证通过管理服务器根据秘钥生成规则生成第一秘钥信息,客户端生成第二秘钥信息,管理服务器获取第二秘钥信息中的第二公钥生成服务器协商秘钥,客户端获取第一秘钥信息中的第一公钥生成客户端协商秘钥并根据信息加密规则对待发送信息进行加密,生成第一加密信息后发送至管理服务器,管理服务器接收第一加密信息并根据服务器协商秘钥进行解密得到第一解密信息。通过上述方法,客户端与管理服务器之间仅对第一公钥及第二公钥进行传输,而第一秘钥信息中的第一私钥及第二秘钥信息中的第二私钥均未通过互联网进行传输,可确保生成的客户端协商秘钥及服务器协商秘钥安全可靠,基于客户端协商秘钥及服务器协商秘钥对数据信息进行加密及解密不易被破解,大幅增加了对数据信息进行加解密的安全性。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据信息加密方法的流程示意图;
图2为本发明实施例提供的数据信息加密方法的应用场景示意图;
图3为本发明实施例提供的数据信息加密方法的子流程示意图;
图4为本发明实施例提供的数据信息加密方法的另一子流程示意图;
图5为本发明实施例提供的数据信息加密方法的另一子流程示意图;
图6为本发明实施例提供的数据信息加密方法的另一子流程示意图;
图7为本发明实施例提供的数据信息加密方法的另一子流程示意图;
图8为本发明实施例提供的数据信息加密方法的另一流程示意图;
图9为本发明实施例提供的数据信息加密系统的示意性框图;
图10为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1及图2,图1是本发明实施例提供的数据信息加密方法的流程示意图,图2为本发明实施例提供的数据信息加密方法的应用场景示意图;该数据信息加密方法应用于数据信息加密系统中,系统包括客户端10及管理服务器20,该方法通过安装于客户端10及管理服务器20中的应用软件进行执行,客户端10通过与管理服务器20建立网络连接以实现数据信息的传输,客户端10即是用于对数据信息进行加密并传输至管理服务器20的用户终端,例如台式电脑、笔记本电脑、平板电脑或手机等,客户端10也可对来自管理服务器20的加密数据信息进行解密;管理服务器20即是用于接收客户端10所加密的数据信息并进行解密的企业终端,管理服务器20也可对数据信息进行加密并传输至客户端10。图2中仅仅示意出一台客户端10与管理服务器20进行信息传输,在实际应用中,该管理服务器20也可与多台客户端10同时进行信息传输。如图1所示,该方法包括步骤S110~S170。
S110、所述管理服务器接收来自客户端的传输请求信息,根据预置的验证规则对所述传输请求信息进行验证得到是否验证通过的验证结果。
所述管理服务器接收来自客户端的传输请求信息,根据预置的验证规则对所述传输请求信息进行验证,以得到是否验证通过的验证结果。所述验证规则包括客户信息表及有效时间;其中,所述传输请求信息包括客户编码、卡片编码及时间戳。客户在正常使用客户端中的电子卡片之前,首先需要发送传输请求信息至管理服务器以建立数据传输通道,使用电子卡片的过程中即涉及与管理服务器之间进行数据信息交互,则在使用电子卡片时可基于所建立的数据传输通道对数据信息进行加密传输,确保电子卡片在使用时不会给客户和企业带来信息泄露的风险。验证规则即为对来自任一客户端的传输请求信息进行验证的规则信息,客户信息表即为管理服务器中用于对客户的具体信息进行存储的数据表,客户信息表中包含每一客户的姓名、客户编码、个人信息、卡片编码等,每一客户与客户信息表中的一条客户数据相对应。传输请求信息至少包括客户编码、卡片编码及时间戳,客户编码可以是与该客户唯一对应的编码信息,卡片编码即是与该客户当前所使用的电子卡片唯一对应的编码信息,时间戳即为该客户端将传输请求信息发送给管理服务器的具体时间信息。可通过客户信息表对传输请求信息中的客户编码及卡片编码进行验证,通过有效时间对时间戳是否位于有效时间段内进行验证,若均验证通过,则得到传输请求信息为验证通过的验证结果;否则得到传输请求信息为验证不通过的验证结果。
在一实施例中,如图3所示,步骤S110包括子步骤S111和S112。
S111、对所述客户编码及所述卡片编码是否均对应所述客户信息表内的同一条客户数据进行判断。
对所述客户编码及所述卡片编码是否对应所述客户信息表内的同一条客户数据进行判断。具体的,对客户编码及卡片编码进行验证的过程即为判断客户编码及卡片编码是否均包含于客户信息表内,若客户编码及卡片编码均位于客户信息表内,则进一步判断该客户编码与该卡片编码是否对应同一条客户数据,若客户编码与卡片编码对应同一条客户数据,则进行下一步对时间戳进行验证的过程。若客户编码或卡片编码不均位于客户信息表内,或客户编码与卡片编码均位于客户信息表内但不对应同一条客户数据,则反馈验证失败的提示信息至所述客户端。
S112、若所述客户编码及所述卡片编码均对应同一条客户数据,根据所述有效时间验证所述时间戳是否位于对应的有效时间段内,以得到是否验证通过的验证信息。
若所述客户编码及所述卡片编码均对应同一条客户数据,根据所述有效时间验证所述时间戳是否位于对应的有效时间段内,以得到是否验证通过的验证信息。具体的,根据当前时间及有效时间计算得到对应的有效时间段,有效时间段的最大值为当前时间,有效时间段的最小值为当前时间减去有效时间,判断该时间戳是否位于该有效时间段内,若时间戳位于该有效时间段内,则得到传输请求信息为验证通过的验证结果;否则得到传输请求信息为验证不通过的验证结果。
例如,有效时间为3分钟,来自客户端的传输请求信息中时间戳为15:31:40,当前时间为15:32:05,则计算得到对应的有效时间段为15:29:05-15:32:05,验证得到该时间戳位于有效时间段内。
S120、若所述验证结果为验证通过,所述管理服务器根据预置的秘钥生成规则生成第一秘钥信息,并发送所述第一秘钥信息中的第一公钥至所述客户端。
秘钥信息,并发送所述第一秘钥信息中的第一公钥至所述客户端。秘钥生成规则即是用于生成第一秘钥信息的规则,第一秘钥信息中包括第一公钥及第一私钥,公钥与私钥成对出现,生成的公钥可发送给其他终端进行使用,生成的私钥则需进行存储以防止泄露。具体的,秘钥生成规则包括曲线方程、基点坐标及阶阈值,曲线方程可以是椭圆曲线方程:y2=x3+ax+b,其中,a和b为该椭圆曲线方程中的参数值,基点坐标即为曲线方程上的任意一个点的坐标值,基点坐标可表示为G=(Gx,Gy);阶阈值即为对阶数的取值范围进行限定的阈值,阶阈值可以表示为n-2,n为素数。
在一实施例中,如图4所示,步骤S120包括子步骤S121、S122和S123。
S121、随机生成一个小于所述阶阈值的阶数;S122、根据所述阶数及所述基点坐标计算得到目标点坐标;S123、将所述阶数作为所述秘钥信息中的私钥,将所述目标点坐标作为所述秘钥信息中的公钥。
随机生成一个小于阶阈值的阶数k,阶数k为正整数且阶数k的取值范围为k∈(0,n-2],具体的,目标点坐标可表示为P=[k]×G,P点为曲线方程上的一个点,可沿G点作切线,得到一条切点为G点的切线,过G点作一条与该切线垂直的垂线,垂线与第k阶的椭圆曲线方程的交点即为P点。将阶数k转换为以十六进制表示的字符串即可得到第一私钥,将目标点坐标转换为以十六进制表示的字符串即可得到第一公钥,第一公钥及第一私钥的字符串长度均可采用字节进行表示,1字节=8bit,1bit为由二进制数表示的一个数据。
例如,第一私钥可以是32字节,第一公钥可以是65或33字节。
S130、所述客户端接收所述第一公钥,根据所述秘钥生成规则生成第二秘钥信息。
所述客户端若接收到所述第一公钥,根据所述秘钥生成规则生成第二秘钥信息。若客户端接收到第一公钥,则根据生成第一秘钥信息的秘钥生成规则生成第二秘钥信息,所生成的第二秘钥信息中包括第二公钥及第二私钥。
在一实施例中,如图5所示,步骤S130包括子步骤S131、S132、S133和S134。
S131、随机生成一个小于所述阶阈值的客户端阶数;S132、根据所述客户端阶数及所述基点坐标计算得到客户端目标点坐标;S133、判断所述客户端目标点坐标是否与所述第一公钥相等;S134、若所述客户端目标点坐标与所述第一公钥不相等,将所述客户端阶数作为所述第二秘钥信息中的第二私钥,将所述客户端目标点坐标作为所述第二秘钥信息中的第二公钥。
随机生成一个小于阶阈值的客户端阶数k’,客户端阶数k’为正整数且客户端阶数k’的取值范围为k’∈(0,n-2],则客户端目标点坐标可表示为P’=[k’]×G,P’点为曲线方程上的一个点,可沿G点作切线,得到一条切点为G点的切线,过G点作一条与该切线垂直的垂线,垂线与第k’阶的椭圆曲线方程的交点即为P’点。将客户端目标点坐标转换为以十六进制表示的字符串,判断该字符串是否与第一公钥相等,若相等,则再次随机生成一个小于所述阶阈值的客户端阶数,直至所生成的客户端目标点坐标所对应的字符串不与第一公钥相等;若不相等,则将该字符串作为第二公钥,将客户端阶数k’转换为以十六进制表示的字符串作为第二私钥,第二公钥及第二私钥的字符串长度均可采用字节进行表示。
S140、所述客户端发送所述第二公钥至所述管理服务器,并根据预置的协商秘钥生成规则、所述第一公钥及所述第二秘钥信息生成对应的客户端协商秘钥。
所述客户端发送所述第二公钥至所述管理服务器,并根据预置的协商秘钥生成规则、所述第一公钥及所述第二秘钥信息生成对应的客户端协商秘钥。客户端将所生成的第二公钥发送至管理服务器,并根据协商秘钥生成规则生成对应的客户端协商秘钥,第二秘钥信息中包含第二公钥及第二私钥,具体的,协商秘钥生成规则即为生成协商秘钥的规则信息,可根据协商秘钥生成规则生成与第一公钥及第二私钥生成客户端协商秘钥,所生成的客户端协商秘钥为32字节。
协商秘钥生成规则可以是基于第一公钥及第二私钥的计算公式,例如,S1=k’Pmod r,r为该计算公式中预设的参数值,S1为所生成的客户端协商秘钥。
S150、所述管理服务器接收来自所述客户端的第二公钥,根据所述协商秘钥生成规则、所述第二公钥及所述第一秘钥信息生成对应的服务器协商秘钥。
所述管理服务器若接收来自所述客户端的第二公钥,根据所述协商秘钥生成规则、所述第二公钥及所述第一秘钥信息生成对应的服务器协商秘钥。管理服务器接收来自客户端的第二公钥,则根据协商秘钥生成规则生成对应的服务器协商秘钥,第一秘钥信息中包含第一公钥及第一私钥,具体的,协商秘钥生成规则即为生成协商秘钥的规则信息,可根据协商秘钥生成规则生成与第二公钥及第一私钥生成服务器协商秘钥。所得到的服务器协商秘钥与客户端协商秘钥相等,也即是所生成的服务器协商秘钥也为32字节。
例如,根据上述计算公式可对应计算得到服务器协商秘钥S2=k P’mod r,r为该计算公式中预设的参数值。
由于在生成客户端协商秘钥及服务器协商秘钥的过程中,客户端与管理服务器之间仅对第一公钥及第二公钥进行传输,而第一私钥及第二私钥均未通过互联网进行传输,因此第一私钥及第二私钥未被公开,大幅增加了对数据信息进行加密的安全性。
S160、所述客户端根据预置的信息加密规则及所述客户端协商秘钥对所输入的待发送信息进行加密后生成第一加密信息并发送至所述管理服务器。
所述客户端根据预置的信息加密规则及所述客户端协商秘钥对所输入的待发送信息进行加密后生成第一加密信息并发送至所述管理服务器。其中,待发送信息可以是客户端的使用者所输入的信息,具体的,信息加密规则可以是SM4.0加密算法,信息加密规则中包括系统参数、固定参数及运算公式。
在一实施例中,如图6所示,步骤S160包括子步骤S161、S162和S163。
S161、对所述客户端协商秘钥进行拆分以得到对应的秘钥数组。
客户端协商秘钥为32字节,截取客户端协商秘钥的前16个字节并拆分为四个子秘钥,每个子秘钥为4字节,则所得到的秘钥数组中包含四个子秘钥。例如,秘钥数组可表示为MK=(Mk0,Mk1,Mk2,Mk3)。
S162、根据所述秘钥数组、所述系统参数、所述固定参数及所述运算公式计算得到对应的轮秘钥数组。
运算公式为信息加密规则中的自定义计算公式,可采用⊕表示,例如计算A⊕B则可定义为A⊕B=A+B-5。系统参数可表示为FK=(Fk0,Fk1,Fk2,Fk3),Fki(i=0,1,2,3)均为4字节,则可计算得到(K0,K1,K2,K3)=(Mk0⊕Fk0,Mk1⊕Fk1,Mk2⊕Fk2,Mk3⊕Fk3),其中,Ki(i=0,1,2,3)均为4字节;固定参数CK=(Ck0,Ck1,Ck2,……,Ck31),其中Cki(i=0,1,2,……,31)均为4字节,则可计算得到轮秘钥数组,轮秘钥数组包含多个轮秘钥,每一轮秘钥可通过公式rki=Ki+4=Ki⊕T’(Ki+1⊕Ki+2⊕Ki+3⊕Cki)计算得到,其中,i=0,1,2,……,31。其中,T’为可逆变换T的逆运算过程,可逆变换T:Z2 32(32bit的字符串)→Z2 32(32bit的字符串),其由非线性变换τ和线性变换L复合而成,即T(x)=L(τ(x)),非线性变换τ由4个并行的S盒组成,S盒的数据均采用16进制,设输入为A=(a0,a1,a2,a3)∈(Z2 8)4,输出为B=(b0,b1,b2,b3)∈(Z2 8)4,计算过程可表示为(b0,b1,b2,b3)=τ(A)=(Sbox(a0),Sbox(a1),Sbox(a2),Sbox(a3));非线性变换τ的输出结果作为线性变换L的输入,设输入为B∈Z2 32,输出为C∈Z2 32,则C=L(B)=B⊕(B<<<2)⊕(B<<<10)⊕(B<<<18)⊕(B<<<24)。
S163、根据所述轮秘钥数组对所述待发送信息进行加密,以生成对应的第一加密信息。
根据所得到的轮秘钥数组对待发送信息进行加密,即可生成对应的第一加密信息。待发送信息可以是以16进制表示的字符串,具体的,待发送信息可以是由多个信息段组成,每一信息段均为一个16字节长度的字符串,第一加密信息也由多个加密信息段组成,每一加密信息段均为一个16字节长度的字符串。可将需发送至管理服务器的隐私信息进行编码(例如可通过utf-8或ASCII进行编码)以得到以16进制进行表示的字符串,并对该字符串进行按16字节长度进行拆分为多个信息段(若最后一个信息段不足16字节,则采用“0”进行补齐),并对所得到的多个信息段进行加密,隐私信息包括但不限于客户的身份信息、进行信息交互过程中的业务信息及支付信息。
例如,对第一加密信息中任意一个信息段进行加密的过程如下所示。原始明文输入为(X0,X1,X2,X3),X0、X1、X2及X3均为4个字节,加密过程可表示为:
Xi+4=Xi⊕T(Xi+1⊕Xi+2⊕Xi+3⊕rki),其中,i=0,1,2,……,31,输出的密文为(Y0,Y1,Y2,Y3)=(X35,X34,X33,X32)。
S170、若所述管理服务器接收到所述第一加密信息,根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息。
所述管理服务器若接收到所述第一加密信息,根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息。具体的,对第一加密信息进行解密也是基于SM4.0加密算法,对第一加密信息进行解密过程中需运用信息加密规则,信息加密规则中包括系统参数、固定参数及运算公式,所得到的第一解密信息也即是与待发送信息相同的一字符串。
在一实施例中,如图7所示,步骤S170包括子步骤S171、S172和S173。
S171、对所述服务器协商秘钥进行拆分以得到所述秘钥数组;S172、根据所述秘钥数组、所述系统参数、所述固定参数及所述运算公式计算得到对应的轮秘钥数组。
由于服务器协商秘钥与客户端协商秘钥相同,则对服务器协商秘钥进行拆分所得到的秘钥数组与对客户端协商秘钥进行拆分所得到的秘钥数组完全相同,则根据服务器协商秘钥生成得到的轮秘钥数组与客户端协商秘钥所生成的轮秘钥数组相同。
S173、根据所述轮秘钥数组对所述第一加密信息进行解密,以得到与所述第一加密信息对应的第一解密信息。
根据所述轮秘钥数组对所述第一加密信息进行解密,以得到与所述第一加密信息对应的第一解密信息。第一解密信息可以是以16进制表示的字符串,具体的,第一加密信息由多个加密信息段组成,每一加密信息段均为一个16字节长度的字符串,第一解密信息也即是与待发送信息相同的字符串。获取到第一解密信息后,管理服务器可对以16进制进行表示的第一解密信息进行还原,重新得到原始的隐私信息。
例如,对第一加密信息中任意一个加密信息段进行解密的过程如下所示。所输入的加密信息段输入为(X0,X1,X2,X3),X0、X1、X2及X3均为4个字节,解密过程可表示为:
Xi+4=Xi⊕T(Xi+1⊕Xi+2⊕Xi+3⊕rk31-i),其中,i=0,1,2,……,31,也即是对信息进行解密过程中轮秘钥的使用顺序与加密过程中轮秘钥的使用顺序正好相反,输出的明文为(Y0,Y1,Y2,Y3)=(X35,X34,X33,X32)。
步骤七之后,还包括:所述管理服务器对所述第一解密信息进行处理得到处理信息,根据所述信息加密规则及所述服务器协商秘钥对所述处理信息进行加密后生成第二加密信息并反馈至所述客户端;所述客户端若接收来自所述管理服务器的第二加密信息,根据所述信息加密规则及所述客户端协商秘钥对第二加密信息进行解密以得到第二解密信息。生成第二加密信息与上述生成第一加密信息的步骤相同,对第二加密信息进行解密得到第二解密信息的过程与对第一加密信息进行加密得到第一解密信息的过程相同。
在一实施例中,如图8所示,步骤S170之后还包括步骤S180。
S180、所述管理服务器根据所述客户端的互联网协议地址及所述第一解密信息生成对应的账本信息并添加至预置的分布式数据库中进行存储。
根据所述客户端的互联网协议地址及所述第一解密信息生成对应的账本信息,账本信息即是根据客户端的互联网协议地址及第一解密信息所生成的用于存储至区块链中的信息。分布式数据库即为可与管理服务器进行数据信息传输的数据库,管理服务器可将数据信息存储至分布式数据库中,也可从分布式数据库中读取相应数据信息,多个分布式数据库组成数据库集群,每一个分布式数据库存储一个卡片编码对应的数据,因此可先确定第一解密信息的卡片编码,并根据卡片编码获取与待第一解密信息相对应的一个分布式数据库作为目标分布式数据库。分布式数据库中的数据信息存储于多个分散配置的节点中,节点与节点之间通过哈希指针链接,也即是后一节点中所包含的哈希指针指向前一节点,一个分布式数据库中包含一个头部节点,分布式数据库中头部节点中的数据信息不可更改,可通过生成新增节点并添加至分布式数据库尾部以对分布式数据库所存储的内容进行扩充。
在一实施例中,步骤S180还包括子步骤:根据所述第一解密信息的卡片编码获取多个分布式数据库中与所述卡片编码相匹配的目标分布式数据库;获取所述目标分布式数据库的尾部节点,根据所述尾部节点在所述目标分布式数据库中新建一个节点;根据所述第一解密信息对应生成账本信息并写入所述新建节点;将所述新建节点链接存储至所述尾部节点之后以将所述账本信息添加至所述目标分布式数据库中。
根据所述第一解密信息的卡片编码获取多个分布式数据库中与所述卡片编码相匹配的一个分布式数据库作为目标分布式数据库。所述第一解密信息包含卡片编码、数据名称、数据类型等信息,卡片编码即于传输请求信息中的卡片编码对应,数据名称即为第一解密信息中数据信息的具体名称,例如A业务数据、B业务数据等,数据类型即为第一解密信息中所包含数据信息的类型信息,例如,个人信息、业务信息、支付信息等。
获取所述目标分布式数据库的尾部节点,根据所述尾部节点在所述目标分布式数据库中新建一个节点。其中,所新建的节点包括节点头和节点体,节点头用于存储有当前节点的基本信息,包括哈希版本号、上一节点的哈希指针值、数据存储地址、时间戳、简略信息及随机数等信息;节点体用于存储完整的第一解密信息。具体的,获取目标分布式数据库中尾部节点的哈希指针值,根据该哈希指针值生成包含哈希版本号、上一节点的哈希指针值、数据存储地址、时间戳及随机数的节点头,并生成不包含任何信息的节点体,数据存储地址中的信息即为节点体在该分布式数据库中所对应的物理存储地址。
根据所述第一解密信息对应生成账本信息并写入所述新建节点。其中,账本信息中包括用于对第一解密信息进行简要描述的简略信息、完整的第一解密信息及与所述第一解密信息对应的哈希指针值,将简略信息添加至新建节点的节点头中进行存储,第一解密信息及对应的哈希指针值则存储于新建节点的节点体中,该节点体中所存储的哈希指针值可用于下一节点的创建。
具体的,将所述第一解密信息进行哈希运算,得到与所述第一解密信息对应的哈希指针值;其中,所述哈希运算为安全散列算法256。
在本实施例中,即Hash(第一解密信息)=哈希指针值,例如Hash(卡片编码:S100101,数据名称:A业务数据,数据类型:业务信息)=0x35A246B51352F1542188F74B56A26C5456D2354D15263D528FB84B59A4524F35,即对账本信息进行哈希运算后会得到一个哈希指针值,也即是摘要信息。对于任意长度(按bit计算)的消息,SHA256(安全散列算法256)都会产生一个32个字节长度数据,SHA256始终把消息当成一个位(bit)字符串来处理。当接收到消息的时候,这个消息摘要可以用来验证数据是否发生改变,即验证其完整性。本文中,一个“字”(Word)是32位,而一个“字节”(Byte)是8位。比如,字符串“ABC”可以被转换成一个位字符串:011000010110001001100011,它也可以被表示成16进制字符串:0x616263,所有转换得到的16进制字符串必须进行补位,以使其长度在对512取模以后的余数是448,也即是Q(S)=448,Q(S)即为对16进制字符串S进行取模的结果。此外,即使长度已经满足对512取模后余数是448,补位也必须要进行。
将所述新建节点链接存储至所述尾部节点之后以将所述账本信息添加至所述目标分布式数据库中。具体的,节点与节点之间通过哈希指针链接,因此通过哈希指针值将新建节点与尾部节点进行链接即可实现将新建节点链接存储至所述尾部节点之后,则所生成的账本信息以新建节点为载体添加至目标分布式数据库中。此外,为实现对第一解密信息进行分散存储,可新建多个相同节点并将一份账本信息同时存储于多个新建节点中,每一新建节点均与该目标分布式数据库中的尾部节点通过哈希指针链接,多个新建节点可同时作为新的尾部节点进行使用。
管理服务器发送至客户端的处理信息同样可以采用与隐私信息相同方式进行加密,并得到第二加密信息后反馈至客户端,则客户端可通过如上述的解密方法对第二加密信息进行解密得到第二解密信息,第二解密信息即为与处理信息相同的一字符串。
本申请中的技术方法可应用于智慧政务/智慧城管/智慧社区/智慧安防/智慧物流/智慧医疗/智慧教育/智慧环保/智慧交通等包含对数据信息进行加密的应用场景中,从而推动智慧城市的建设。
在本发明实施例所提供的数据信息加密方法中,管理服务器对客户端的传输请求信息进行验证,若验证通过管理服务器根据秘钥生成规则生成第一秘钥信息,客户端生成第二秘钥信息,管理服务器获取第二秘钥信息中的第二公钥生成服务器协商秘钥,客户端获取第一秘钥信息中的第一公钥生成客户端协商秘钥并根据信息加密规则对待发送信息进行加密,生成第一加密信息后发送至管理服务器,管理服务器接收第一加密信息并根据服务器协商秘钥进行解密得到第一解密信息。通过上述方法,客户端与管理服务器之间仅对第一公钥及第二公钥进行传输,而第一秘钥信息中的第一私钥及第二秘钥信息中的第二私钥均未通过互联网进行传输,可确保生成的客户端协商秘钥及服务器协商秘钥安全可靠,基于客户端协商秘钥及服务器协商秘钥对数据信息进行加密及解密不易被破解,大幅增加了对数据信息进行加解密的安全性。
本发明实施例还提供一种数据信息加密系统100,该数据信息加密系统100用于执行前述数据信息加密方法的任一实施例。具体地,请参阅图9,图9是本发明实施例提供的数据信息加密系统的示意性框图。该数据信息加密系统100包括客户端10及管理服务器20。
如图9所示,所述客户端10包括第二秘钥信息生成单元101、第一协商秘钥生成单元102及信息加密单元103,所述管理服务器20包括请求验证单元201、第一秘钥信息生成单元202、第二协商秘钥生成单元203及信息解密单元204。
所述请求验证单元201,用于接收来自客户端的传输请求信息,根据预置的验证规则对所述传输请求信息进行验证得到是否验证通过的验证结果。
在一实施例中,所述请求验证单元201包括子单元:判断单元和验证单元。
判断单元,用于对所述客户编码及所述卡片编码是否均对应所述客户信息表内的同一条客户数据进行判断;验证单元,用于若所述客户编码及所述卡片编码均对应同一条客户数据,根据所述有效时间验证所述时间戳是否位于对应的有效时间段内,以得到是否验证通过的验证信息。
所述第一秘钥信息生成单元202,用于若所述验证结果为验证通过,根据预置的秘钥生成规则生成第一秘钥信息,并发送所述第一秘钥信息中的第一公钥至所述客户端。
在一实施例中,所述第一秘钥信息生成单元202包括子单元:第一阶数生成单元、第一计算单元和第一秘钥信息获取单元。
第一阶数生成单元,用于随机生成一个小于所述阶阈值的阶数;第一计算单元,用于根据所述阶数及所述基点坐标计算得到目标点坐标;第一秘钥信息获取单元,用于将所述阶数作为所述秘钥信息中的私钥,将所述目标点坐标作为所述秘钥信息中的公钥。
所述第二秘钥信息生成单元101,用于接收所述第一公钥,根据所述秘钥生成规则生成第二秘钥信息。
在一实施例中,所述第二秘钥信息生成单元101包括子单元:第二阶数生成单元、第二计算单元、坐标判断单元和第二秘钥信息获取单元。
第二阶数生成单元,用于随机生成一个小于所述阶阈值的客户端阶数;第二计算单元,用于根据所述客户端阶数及所述基点坐标计算得到客户端目标点坐标;坐标判断单元,用于判断所述客户端目标点坐标是否与所述第一公钥相等;第二秘钥信息获取单元,用于若所述客户端目标点坐标与所述第一公钥不相等,将所述客户端阶数作为所述第二秘钥信息中的第二私钥,将所述客户端目标点坐标作为所述第二秘钥信息中的第二公钥。
所述第一协商秘钥生成单元102,用于发送所述第二公钥至所述管理服务器,并根据预置的协商秘钥生成规则、所述第一公钥及所述第二秘钥信息生成对应的客户端协商秘钥。
所述第二协商秘钥生成单元203,用于接收来自所述客户端的第二公钥,根据所述协商秘钥生成规则、所述第二公钥及所述第一秘钥信息生成对应的服务器协商秘钥。
所述信息加密单元103,用于根据预置的信息加密规则及所述客户端协商秘钥对所输入的待发送信息进行加密后生成第一加密信息并发送至所述管理服务器。
所述信息解密单元204,用于若接收到所述第一加密信息,根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息。
在一实施例中,所述信息加密单元103包括子单元:第一拆分单元、第一轮秘钥数组获取单元和加密单元。
第一拆分单元,用于对所述客户端协商秘钥进行拆分以得到对应的秘钥数组;第一轮秘钥数组获取单元,用于根据所述秘钥数组、所述系统参数、所述固定参数及所述运算公式计算得到对应的轮秘钥数组;加密单元,用于根据所述轮秘钥数组对所述待发送信息进行加密,以生成对应的第一加密信息。
信息解密单元204,用于若所述管理服务器接收到所述第一加密信息,根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息。
在一实施例中,所述信息解密单元204包括子单元:第二拆分单元、第二轮秘钥数组获取单元和解密单元。
第二拆分单元,用于对所述服务器协商秘钥进行拆分以得到所述秘钥数组;第二轮秘钥数组获取单元,用于根据所述秘钥数组、所述系统参数、所述固定参数及所述运算公式计算得到对应的轮秘钥数组;解密单元,用于根据所述轮秘钥数组对所述第一加密信息进行解密,以得到与所述第一加密信息对应的第一解密信息。
在一实施例中,所述管理服务器还包括子单元:分布式存储单元。
分布式存储单元,用于根据所述客户端的互联网协议地址及所述第一解密信息生成对应的账本信息并添加至预置的分布式数据库中进行存储。
在本发明实施例所提供的数据信息加密系统应用上述数据信息加密方法,管理服务器对客户端的传输请求信息进行验证,若验证通过管理服务器根据秘钥生成规则生成第一秘钥信息,客户端生成第二秘钥信息,管理服务器获取第二秘钥信息中的第二公钥生成服务器协商秘钥,客户端获取第一秘钥信息中的第一公钥生成客户端协商秘钥并根据信息加密规则对待发送信息进行加密,生成第一加密信息后发送至管理服务器,管理服务器接收第一加密信息并根据服务器协商秘钥进行解密得到第一解密信息。通过上述方法,客户端与管理服务器之间仅对第一公钥及第二公钥进行传输,而第一秘钥信息中的第一私钥及第二秘钥信息中的第二私钥均未通过互联网进行传输,可确保生成的客户端协商秘钥及服务器协商秘钥安全可靠,基于客户端协商秘钥及服务器协商秘钥对数据信息进行加密及解密不易被破解,大幅增加了对数据信息进行加解密的安全性。
上述数据信息加密系统可以实现为计算机程序的形式,该计算机程序可以在如图10所示的计算机设备上运行。
请参阅图10,图10是本发明实施例提供的计算机设备的示意性框图。该计算机设备可以是用于执行数据信息加密方法以对数据信息进行加解密的客户端10,也可以是用于执行数据信息加密方法以对数据信息进行加解密的管理服务器20。
参阅图10,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行数据信息加密方法。
该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行数据信息加密方法。
该网络接口505用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图10中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现上述的数据信息加密方法中对应的功能。
本领域技术人员可以理解,图10中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图10所示实施例一致,在此不再赘述。
应当理解,在本发明实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有第一计算机程序和/或第二计算机程序,当所述第一计算机程序被第一处理器执行且所述第二计算机程序被第二处理器执行时共同实现上述第一方面所述的数据信息加密方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的计算机可读存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种数据信息加密方法,应用于数据信息加密系统中,所述数据信息加密系统包括客户端及管理服务器,所述客户端与所述管理服务器之间通过网络连接实现数据信息的传输,其特征在于,所述方法包括:
所述管理服务器接收来自客户端的传输请求信息,根据预置的验证规则对所述传输请求信息进行验证得到是否验证通过的验证结果;
若所述验证结果为验证通过,所述管理服务器根据预置的秘钥生成规则生成第一秘钥信息,并发送所述第一秘钥信息中的第一公钥至所述客户端;
所述客户端接收所述第一公钥,根据所述秘钥生成规则生成第二秘钥信息;
所述客户端发送所述第二秘钥信息中的第二公钥至所述管理服务器,并根据预置的协商秘钥生成规则、所述第一公钥及所述第二秘钥信息生成对应的客户端协商秘钥;其中,协商秘钥生成规则为生成协商秘钥的规则信息,根据协商秘钥生成规则与第一公钥及第二私钥生成客户端协商秘钥;
所述管理服务器接收来自所述客户端的第二公钥,根据所述协商秘钥生成规则、所述第二公钥及所述第一秘钥信息生成对应的服务器协商秘钥;
所述客户端根据预置的信息加密规则及所述客户端协商秘钥对所输入的待发送信息进行加密后生成第一加密信息并发送至所述管理服务器;
若所述管理服务器接收到所述第一加密信息,根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息;
所述管理服务器根据所述客户端的互联网协议地址及所述第一解密信息生成对应的账本信息并添加至预置的分布式数据库中进行存储;
所述根据所述客户端的互联网协议地址及所述第一解密信息生成对应的账本信息并添加至预置的分布式数据库中进行存储,包括:根据所述第一解密信息的卡片编码获取多个分布式数据库中与所述卡片编码相匹配的目标分布式数据库;获取所述目标分布式数据库的尾部节点,根据所述尾部节点在所述目标分布式数据库中新建一个节点;根据所述第一解密信息对应生成账本信息并写入所述新建节点;将所述新建节点链接存储至所述尾部节点之后以将所述账本信息添加至所述目标分布式数据库中;
所述信息加密规则中包括系统参数、固定参数及运算公式,所述根据预置的信息加密规则及所述客户端协商秘钥对待发送信息进行加密后生成第一加密信息并发送至所述管理服务器,包括:
对所述客户端协商秘钥进行拆分以得到对应的秘钥数组;
根据所述秘钥数组、所述系统参数、所述固定参数及所述运算公式计算得到对应的轮秘钥数组;
根据所述轮秘钥数组对所述待发送信息进行加密,以生成对应的第一加密信息。
2.根据权利要求1所述的数据信息加密方法,其特征在于,所述传输请求信息包括客户编码、卡片编码及时间戳,所述根据预置的验证规则对所述传输请求信息进行验证得到是否验证通过的验证结果,包括:
对所述客户编码及所述卡片编码是否均对应所述客户信息表内的同一条客户数据进行判断;
若所述客户编码及所述卡片编码均对应同一条客户数据,根据有效时间验证所述时间戳是否位于对应的有效时间段内,以得到是否验证通过的验证信息。
3.根据权利要求1所述的数据信息加密方法,其特征在于,所述秘钥生成规则包括曲线方程、基点坐标及阶阈值,所述根据预置的秘钥生成规则生成第一秘钥信息包括:
随机生成一个小于所述阶阈值的阶数;
根据所述阶数及所述基点坐标计算得到目标点坐标;
将所述阶数作为所述第一秘钥信息中的第一私钥,将所述目标点坐标作为所述第一秘钥信息中的第一公钥。
4.根据权利要求3所述的数据信息加密方法,其特征在于,所述根据所述秘钥生成规则生成第二秘钥信息,还包括:
随机生成一个小于所述阶阈值的客户端阶数;
根据所述客户端阶数及所述基点坐标计算得到客户端目标点坐标;
判断所述客户端目标点坐标是否与所述第一公钥相等;
若所述客户端目标点坐标与所述第一公钥不相等,将所述客户端阶数作为所述第二秘钥信息中的第二私钥,将所述客户端目标点坐标作为所述第二秘钥信息中的第二公钥。
5.根据权利要求1所述的数据信息加密方法,其特征在于,所述根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息,包括:
对所述服务器协商秘钥进行拆分以得到所述秘钥数组;
根据所述秘钥数组、所述系统参数、所述固定参数及所述运算公式计算得到对应的轮秘钥数组;
根据所述轮秘钥数组对所述第一加密信息进行解密,以得到与所述第一加密信息对应的第一解密信息。
6.一种数据信息加密系统,其特征在于,所述数据信息加密系统包括客户端及管理服务器,所述客户端包括第二秘钥信息生成单元、第一协商秘钥生成单元及信息加密单元,所述管理服务器包括请求验证单元、第一秘钥信息生成单元、第二协商秘钥生成单元及信息解密单元,包括:
所述请求验证单元,用于接收来自客户端的传输请求信息,根据预置的验证规则对所述传输请求信息进行验证得到是否验证通过的验证结果;
所述第一秘钥信息生成单元,用于若所述验证结果为验证通过,根据预置的秘钥生成规则生成第一秘钥信息,并发送所述第一秘钥信息中的第一公钥至所述客户端;
所述第二秘钥信息生成单元,用于接收所述第一公钥,根据所述秘钥生成规则生成第二秘钥信息;
所述第一协商秘钥生成单元,用于发送所述第二秘钥信息中的第二公钥至所述管理服务器,并根据预置的协商秘钥生成规则、所述第一公钥及所述第二秘钥信息生成对应的客户端协商秘钥;其中,协商秘钥生成规则为生成协商秘钥的规则信息,根据协商秘钥生成规则生成与第一公钥及第二私钥生成客户端协商秘钥;
所述第二协商秘钥生成单元,用于接收来自所述客户端的第二公钥,根据所述协商秘钥生成规则、所述第二公钥及所述第一秘钥信息生成对应的服务器协商秘钥;
所述信息加密单元,用于根据预置的信息加密规则及所述客户端协商秘钥对所输入的待发送信息进行加密后生成第一加密信息并发送至所述管理服务器;
所述信息解密单元,用于若接收到所述第一加密信息,根据所述信息加密规则及所述服务器协商秘钥对所述第一加密信息进行解密以得到对应的第一解密信息;
所述管理服务器还包括子单元:分布式存储单元;
分布式存储单元,用于根据所述客户端的互联网协议地址及所述第一解密信息生成对应的账本信息并添加至预置的分布式数据库中进行存储;
所述根据所述客户端的互联网协议地址及所述第一解密信息生成对应的账本信息并添加至预置的分布式数据库中进行存储,包括:根据所述第一解密信息的卡片编码获取多个分布式数据库中与所述卡片编码相匹配的目标分布式数据库;获取所述目标分布式数据库的尾部节点,根据所述尾部节点在所述目标分布式数据库中新建一个节点;根据所述第一解密信息对应生成账本信息并写入所述新建节点;将所述新建节点链接存储至所述尾部节点之后以将所述账本信息添加至所述目标分布式数据库中;
所述信息加密规则中包括系统参数、固定参数及运算公式,所述信息加密单元包括子单元:第一拆分单元、第一轮秘钥数组获取单元和加密单元;
第一拆分单元,用于对所述客户端协商秘钥进行拆分以得到对应的秘钥数组;第一轮秘钥数组获取单元,用于根据所述秘钥数组、所述系统参数、所述固定参数及所述运算公式计算得到对应的轮秘钥数组;加密单元,用于根据所述轮秘钥数组对所述待发送信息进行加密,以生成对应的第一加密信息。
7.一种数据信息加密系统,其特征在于,所述数据信息加密系统包括客户端及管理服务器,所述客户端包括第一存储器、第一处理器及存储在所述第一存储器上并可在所述第一处理器上运行的第一计算机程序,所述管理服务器包括第二存储器、第二处理器及存储在所述第二存储器上并可在所述第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序且所述第二处理器执行所述第二计算机程序以共同实现如权利要求1至5中任一项所述的数据信息加密方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有第一计算机程序和/或第二计算机程序,当所述第一计算机程序被第一处理器执行且所述第二计算机程序被第二处理器执行时共同实现如权利要求1至5任一项所述的数据信息加密方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011548600.3A CN112738051B (zh) | 2020-12-24 | 2020-12-24 | 数据信息加密方法、系统及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011548600.3A CN112738051B (zh) | 2020-12-24 | 2020-12-24 | 数据信息加密方法、系统及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112738051A CN112738051A (zh) | 2021-04-30 |
CN112738051B true CN112738051B (zh) | 2023-12-01 |
Family
ID=75605917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011548600.3A Active CN112738051B (zh) | 2020-12-24 | 2020-12-24 | 数据信息加密方法、系统及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112738051B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113449338A (zh) * | 2021-06-29 | 2021-09-28 | 未鲲(上海)科技服务有限公司 | 基于区块链的信息加密存储方法及系统 |
CN115033914A (zh) * | 2022-05-30 | 2022-09-09 | 佳缘科技股份有限公司 | 一种分布式动态脱敏方法、系统及存储介质 |
CN115426111A (zh) * | 2022-06-13 | 2022-12-02 | 中国第一汽车股份有限公司 | 一种数据加密方法、装置、电子设备及存储介质 |
CN114785528B (zh) * | 2022-06-20 | 2022-10-14 | 深圳市乐凡信息科技有限公司 | 数据传输的加密方法、系统、设备及存储介质 |
CN115550916B (zh) * | 2022-10-08 | 2023-09-19 | 中移互联网有限公司 | 信息传输方法、装置、计算机设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006333210A (ja) * | 2005-05-27 | 2006-12-07 | Zyxel Communication Corp | エスアイピー構造をモバイル仮想専用線網エージェントとなす方法 |
CN102833253A (zh) * | 2012-08-29 | 2012-12-19 | 五八同城信息技术有限公司 | 建立客户端与服务器安全连接的方法及服务器 |
CN107483419A (zh) * | 2017-07-28 | 2017-12-15 | 深圳市优克联新技术有限公司 | 服务器认证接入终端的方法、装置、系统、服务器及计算机可读存储介质 |
CN110138739A (zh) * | 2019-04-15 | 2019-08-16 | 平安科技(深圳)有限公司 | 数据信息加密方法、装置、计算机设备及存储介质 |
CN110781511A (zh) * | 2019-09-10 | 2020-02-11 | 深圳壹账通智能科技有限公司 | 交易信息存储方法、装置、计算机设备及存储介质 |
CN111866018A (zh) * | 2020-07-30 | 2020-10-30 | 平安国际智慧城市科技股份有限公司 | 数据信息加密发送方法、装置、计算机设备及存储介质 |
-
2020
- 2020-12-24 CN CN202011548600.3A patent/CN112738051B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006333210A (ja) * | 2005-05-27 | 2006-12-07 | Zyxel Communication Corp | エスアイピー構造をモバイル仮想専用線網エージェントとなす方法 |
CN102833253A (zh) * | 2012-08-29 | 2012-12-19 | 五八同城信息技术有限公司 | 建立客户端与服务器安全连接的方法及服务器 |
CN107483419A (zh) * | 2017-07-28 | 2017-12-15 | 深圳市优克联新技术有限公司 | 服务器认证接入终端的方法、装置、系统、服务器及计算机可读存储介质 |
CN110138739A (zh) * | 2019-04-15 | 2019-08-16 | 平安科技(深圳)有限公司 | 数据信息加密方法、装置、计算机设备及存储介质 |
CN110781511A (zh) * | 2019-09-10 | 2020-02-11 | 深圳壹账通智能科技有限公司 | 交易信息存储方法、装置、计算机设备及存储介质 |
CN111866018A (zh) * | 2020-07-30 | 2020-10-30 | 平安国际智慧城市科技股份有限公司 | 数据信息加密发送方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112738051A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112738051B (zh) | 数据信息加密方法、系统及计算机可读存储介质 | |
US9704159B2 (en) | Purchase transaction system with encrypted transaction information | |
CN100432889C (zh) | 提供断开鉴别的系统和方法 | |
CA2197915C (en) | Cryptographic key recovery system | |
CN109194466A (zh) | 一种基于区块链的云端数据完整性检测方法及系统 | |
CN108352015A (zh) | 用于基于区块链的系统结合钱包管理系统的安全多方防遗失存储和加密密钥转移 | |
EP2361462B1 (en) | Method for generating an encryption/decryption key | |
CN109543434B (zh) | 区块链信息加密方法、解密方法、存储方法及装置 | |
HU225077B1 (en) | Method and apparatus for providing for the recovery of a cryptographic key | |
CN110138739B (zh) | 数据信息加密方法、装置、计算机设备及存储介质 | |
US6640303B1 (en) | System and method for encryption using transparent keys | |
US7894608B2 (en) | Secure approach to send data from one system to another | |
CN104243149A (zh) | 加、解密方法,装置和服务器 | |
JP2022521525A (ja) | データを検証するための暗号方法 | |
CN112491549A (zh) | 数据信息加密校验方法、系统及计算机可读存储介质 | |
CN108549824A (zh) | 一种数据脱敏方法及装置 | |
TW202232913A (zh) | 共享金鑰產生技術 | |
CN113449338A (zh) | 基于区块链的信息加密存储方法及系统 | |
CN108965279A (zh) | 数据处理方法、装置、终端设备及计算机可读存储介质 | |
JP2011523103A (ja) | 対称暗号を実行するための技法 | |
CN113784342B (zh) | 一种基于物联网终端的加密通讯方法及系统 | |
CN114143098B (zh) | 数据存储方法和数据存储装置 | |
CN115102768A (zh) | 一种数据处理方法、装置及计算机设备 | |
CN115118416A (zh) | 一种基于隐私保护的分布式数据库系统以及保密方法 | |
CN114186998A (zh) | 一种基于区块链隐私通讯方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |