CN110166231B - 用户数据加密方法、装置、计算机设备及存储介质 - Google Patents
用户数据加密方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110166231B CN110166231B CN201910305179.4A CN201910305179A CN110166231B CN 110166231 B CN110166231 B CN 110166231B CN 201910305179 A CN201910305179 A CN 201910305179A CN 110166231 B CN110166231 B CN 110166231B
- Authority
- CN
- China
- Prior art keywords
- user
- ciphertext
- password
- negotiation
- user side
- 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
- 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/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
-
- 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
-
- 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/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供了一种基于数据迁移的用户数据加密方法、装置、计算机设备及存储介质,包括检测到用户端登入后,接收数据获取请求,并根据数据获取请求查找到用户数据;生成预协商密码,将预协商密码发送至用户端;获取用户端的反馈,若反馈为确认,则确认预协商密码为协商密码;将协商密码导入至第一密文生成算法中,以生成第一密文和第一密钥,以第一密文对用户数据进行加密;打包第一密文和第一密钥形成数据包,通过协商密码加密数据包形成第一加密数据包;将第一加密数据包发送至用户端,从而解决当非法者盗取随机的字符串后,直接将随机字符串发送至服务器,存在盗取用户资料的危险,且用户端与服务器的交互次数多,处理速度慢的技术问题。
Description
技术领域
本发明涉及服务器账户安全领域,特别涉及一种用户数据加密方法、装置、计算机设备及存储介质。
背景技术
在目前的技术中,用户端获取用户输入账号密码,在用户成功通过账号密码登入服务器后,用户端获取用户输入的指令,并生成与指令对应的字符串发送至服务器,服务器搜索与字符串预关联的数据反馈至用户端,以使用户通过查看用户端能够了解到数据。
存在弊端(1),用户端将字符串发送至服务器进行对应数据的搜索,服务器将搜索到的与字符串对应的数据发送至用户端,用户每一次输入的指令都需要生成对应的字符串发送至服务器进行搜索,用户端与服务器的交互过多,处理速度慢。
存在弊端(2),非法者盗取字符串,直接将随机字符串发送至服务器,存在盗取用户资料的危险。
发明内容
本发明的目的是提供一种用户数据加密方法、装置、计算机设备及存储介质,旨在解决当非法者盗取随机的字符串后,直接将随机字符串发送至服务器,存在盗取用户资料的危险,且用户端与服务器的交互次数多,处理速度慢的技术问题。
为实现上述目的,本发明提供如下技术方案:
本发明提供一种用户数据加密方法,包括:
当服务器检测到用户操作用户端登入后,接收所述用户端发出的数据获取请求,并根据所述数据获取请求查找到用户数据,其中,所述用户数据为用户注册时向所述服务器输入的数据,所述用户数据包括敏感信息;
根据所述敏感信息生成预协商密码,并将所述预协商密码发送至所述用户端;
获取所述用户端的反馈信息,若所述反馈信息为确认指令,则确认所述预协商密码作为所述协商密码;
将所述协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,以及生成解密所述第一密文的第一密钥,通过所述第一密文对所述用户数据进行加密;
打包所述第一密文和所述第一密钥,形成数据包,并采用所述协商密码加密所述数据包,以形成第一加密数据包;
将所述第一加密数据包发送至所述用户端,所述用户端接收到所述第一加密数据包后,通过所述用户向所述用户端输入所述协商密码以解密所述第一加密数据包,使所述用户端得到所述第一密文和所述第一密钥。
进一步地,所述敏感信息包括用户姓名、用户证件号和用户预设终端号码;所述根据所述敏感信息生成预协商密码的步骤包括:
随机整合排列所述用户姓名、用户证件号和用户预设终端号码生成所述预协商密码。
进一步地,所述获取所述用户端的反馈信息的步骤之后还包括:
若所述反馈信息为更改密码,则以所述更改密码作为所述协商密码。
进一步地,所述将所述协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文的步骤,所述第一密文生成算法为:
其中,A0至AN为第一密文,a0至an为协商密码,结合第一随机矩阵x与所述协商密码得到第一密文。
进一步地,所述生成解密所述第一密文的第一密钥的步骤包括:
采用第一密钥生成算法生成解密所述第一密文的第一密钥,所述第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段。
进一步地,所述打包所述第一密文和所述第一密钥,形成数据包的步骤之后,还包括:
获取所述用户端的MAC地址;
将所述MAC地址作为第二密码源导入至所述第二密文生成算法中,以生成第二密文;
采用所述第二密文加密所述数据包,形成第二加密数据包;将所述第二加密数据包发送至所述用户端后,所述用户端自动验证本机的MAC地址与所述MAC地址是否一致,若一致,则自动解密所述第二加密数据包,以使所述用户端得到所述第一密文和所述第一密钥。
进一步地,所述第二密文生成算法为:
其中,B0至BN为第二密文,b0至b0为所述用户端的MAC地址;通过结合所述MAC地址与第二随机矩阵X得到第二密文。
本申请提供一种用户数据加密装置包括:
数据查找单元,用于当服务器检测到用户操作用户端登入后,接收所述用户端发出的数据获取请求,并根据所述数据获取请求查找到用户数据,其中,所述用户数据为用户注册时向所述服务器输入的数据,所述用户数据包括敏感信息;
协商密码生成单元,用于根据所述敏感信息生成预协商密码,并将所述预协商密码发送至所述用户端;
协商密码确定单元,用于获取所述用户端的反馈信息,若所述反馈信息为确认指令,则确认所述预协商密码作为所述协商密码;
第一密文单元,用于将所述协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,以及生成解密所述第一密文的第一密钥,通过所述第一密文对所述用户数据进行加密;
打包单元,用于打包所述第一密文和所述第一密钥,形成数据包,并采用所述协商密码加密所述数据包,以形成第一加密数据包;
发送单元,用于将所述第一加密数据包发送至所述用户端,所述用户端接收到所述第一加密数据包后,通过所述用户向所述用户端输入所述协商密码以解密所述第一加密数据包,使所述用户端得到所述第一密文和所述第一密钥。
本发明还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述的用户数据加密方法的步骤。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述的用户数据加密方法的步骤。
本发明提供了一种用户数据加密方法、装置、计算机设备及存储介质,具有以下有益效果:
当服务器检测到用户操作用户端登入后,接收用户端发出的数据获取请求,并根据数据获取请求查找到用户数据,其中,用户数据为用户注册时向服务器输入的数据,用户数据包括敏感信息;根据敏感信息生成预协商密码,并将预协商密码发送至用户端;获取用户端的反馈信息,若反馈信息为确认指令,则确认预协商密码作为协商密码;将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,以及生成解密第一密文的第一密钥,通过第一密文对用户数据进行加密;打包第一密文和第一密钥,形成数据包,并采用协商密码加密数据包,以形成第一加密数据包;将第一加密数据包发送至用户端,用户端接收到第一加密数据包后,通过用户向用户端输入协商密码以解密第一加密数据包,使用户端得到第一密文和第一密钥,以解决当非法者盗取随机的字符串后,直接将随机字符串发送至服务器,存在盗取用户资料的危险,且用户端与服务器的交互次数多,处理速度慢的技术问题。
附图说明
图1为本发明用户数据加密方法第一实施例的流程示意图;
图2为本发明用户数据加密方法第二实施例的流程示意图;
图3为本发明用户数据加密装置第一实施例的结构框图;
图4为本发明用户数据加密装置第二实施例的结构框图;
图5为本发明计算机设备一实施例的结构框图。
本发明为目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种服务器,本发明提供的用户加密方法应用于该服务器。
参考附图1,为本发明提出的一种用户数据加密方法一实施例的流程示意图,包括:
S100,当服务器检测到用户操作用户端登入后,接收用户端发出的数据获取请求,并根据数据获取请求查找到用户数据,其中,用户数据为用户注册时向服务器输入的数据,用户数据包括敏感信息,数据获取请求为用户通过用户端发出的请求服务器发送用户数据的请求。
服务器存储有用户预存的用户数据,在用户操作用户端登入服务器的前提下,用户端可请求服务器将用户数据发送至用户端,从而实现服务器可将用户数据发送给多个用户端,例如:用户通过第一用户端登入服务器,服务器在获取第一用户端发出的数据获取请求后,将用户数据发送至第一用户端,同理,第二用户端、第三用户端都可采用此种方式获得用户数据。具体的,用户通过用户端上传登录信息至服务器,服务器验证该登录信息与预设的注册信息是否一致,若一致,则服务器允许用户端登入;服务器根据数据获取请求将用户数据发送至用户端之后,若用户需要获知用户数据,无需通过用户端发出指令至服务器以查找用户数据,只需要在用户端进行本地查找用户数据即可,从而达到减少用户端与服务器之间的交互的效果。
S200,根据敏感信息生成预协商密码,并将预协商密码发送至用户端。
上述敏感信息包括用户姓名、用户证件号和用户预设终端号码。服务器随机组合用户姓名、证件号码和用户预设终端号码生成预协商密码,具体如:服务器识别用户姓名的首字母,例如:张三的首字母为ZS;而证件号码和手机号码即为数字,例如,用户证件号为123456789,用户预设终端号码为00000,故服务器随机组合用户姓名、证件号码和手机号码生成预协商密码,如ZS12345678900000、12345678900000ZS等。
服务器生成预协商密码后,将预协商密码发送至用户端。
S300,获取用户端的反馈信息,若反馈信息为确认指令,则确认预协商密码作为协商密码;
服务器将预协商密码发送至用户端之后,用户端接收预协商密码并显示告知用户,获取用户端的反馈信息,若反馈信息为确认指令,则确认预协商密码作为协商密码;上述确认指令为用户认为预协商密码可行而通过用户端发出的指令。
S400,将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,以及生成解密第一密文的第一密钥,通过第一密文对用户数据进行加密;
在确认协商密码之后,服务器将协商密码作为第一密码源导入至预设的第一密文生成算法中,从而经过计算能够得到第一密文,以及解密第一密文的第一密钥。通过第一密文将用户数据进行加密,可以理解,第一密文可以比喻成密码箱,第一密钥可以比喻成解开密码箱的钥匙,而用户数据在存储在密码箱内,以达到保护用户数据的效果。
具体的,第一密文生成算法为:
其中,A0至AN为第一密文,a0至an为协商密码,结合随机矩阵x与协商密码得到第一密文。
举例示明,例如上述协商密码为ZS12346578900000,随机矩阵x的行数与协商密码的位数一致,即上述协商密码的位数为16位,故随机矩阵x的行数存在16行,所得到的第一密文也为16位,第一密文为无规则、无特征的密文。
采用第一密钥对第一密文进行解密,第一密钥的生成通过第一密钥生成算法进行计算而得到,通过第一密钥生成算法生成第一密钥,由上述可知第一密钥为解密第一密文的密钥,第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段。
举例示明,例如第一密文为12345678910,A为从A0至AN中随机截取的密段,如A:234567891;又例如a0至an为ZS123465789,故服务器从中截取,如a为S12346578。第一密钥k1=234567891[(234567891)2x+S12346578(S12346578+234567891)]-1。通过第一密钥解密第一密文的方式:服务器根据第一密钥生成算法得到K1,K1为具体的数值,用户端保留该数值,并且用户端在第一密文生成算法中进行推导运算,判断是否能运算出与K1相同的数值,若是,则解密第一密文,以使用户端得到用户数据。
例如:A为从第一密文中截取的一端密段,a为从协商密码中截取的一端密段,A与a截取的位置一致,根据截取位置在随机矩阵中截取对应的矩阵数据Xx,结合A、a、Xx经过第一密钥生成算法得到K1,K1数值如为123;用户端的第一密文中具有A0至AN、a0至an、随机矩阵x全部的数据信息,用户端根据第一密钥生成算法,结合A0至AN、a0至an、随机矩阵x判断是否能推算出K1相同的数值“123”,若能,则用户端解开第一密文,从而得到用户数据。
S500,打包第一密文和第二密钥,形成数据包,并采用协商密码加密数据包,以形成第一加密数据包;
服务器通过第一密文生成算法计算得到第一密文和第一密钥后,采用协商密码对第一密文和第一密钥进行加密并打包,从而服务器得到第一加密数据包。
S600,将第一加密数据包发送至用户端,用户端接收到第一加密数据包后,通过用户输入协商密码以解密第一加密数据包,使用户端得到第一密文和第一密钥。
通过服务器将第一加密数据包发送至用户端,由协商密码保护第一加密数据包以防止在数据传输的过程中第一密文与第一密钥泄露。当第一加密数据包发送至用户端后,用户输入协商密码以解密第一加密数据包,从而用户端得到第一密文和第一密钥,用户端通过第一密钥解密第一密文,以得到用户数据,最终,用户端将用户数据存储于本地,从而实现解决当非法者盗取随机的字符串后,直接将随机字符串发送至服务器,存在盗取用户资料的危险,且用户端与服务器的交互次数多,处理速度慢的技术问题。
在一个实施例中,敏感信息包括用户姓名、用户证件号和用户预设终端号码;根据敏感信息生成预协商密码的步骤包括:
S201,随机整合排列用户姓名、用户证件号和用户预设终端号码生成预协商密码;
具体例如,服务器随机组合用户姓名、证件号码和用户预设终端号码生成预协商密码,具体如:服务器识别用户姓名的首字母,例如:张三的首字母为ZS;而证件号码和手机号码即为数字,例如,用户证件号为123456789,用户预设终端号码为00000,故服务器随机组合用户姓名、证件号码和手机号码生成预协商密码,如ZS12345678900000、12345678900000ZS等。
在另一个实施例中,获取用户端的反馈信息的步骤之后还包括:
S231,若反馈信息为更改密码,则以更改密码作为协商密码。
若服务器发送预协商密码至用户端,用户认为该预协商密码不理想,则通过用户端输入更改密码至服务器,当服务器接收到更改密码后,以该更改密码作为协商密码。
在一个实施例中,将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文的步骤,第一密文生成算法为:
其中,A0至AN为第一密文,a0至an为协商密码,结合第一随机矩阵x与协商密码得到第一密文。
进一步地,生成解密第一密文的第一密钥的步骤包括:
采用第一密钥生成算法生成解密第一密文的第一密钥,第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段。
参考附图2,为在另一个实施例中用户数据加密方法的流程示意图,打包第一密文和第一密钥,形成数据包的步骤之后,还包括:
S510,获取用户端的MAC地址;
S520,将MAC地址作为第二密码源导入至第二密文生成算法中,以生成第二密文;
S530,采用第二密文加密数据包,形成第二加密数据包;将第二加密数据包发送至用户端后,用户端自动验证本机的MAC地址与MAC地址是否一致,若一致,则自动解密第二加密数据包,以使用户端得到第一密文和第一密钥。
当服务器打包第一密文和第一密钥以形成数据包之后,服务器可以生成第二密文对数据包进行加密,从而得到第二加密数据包,由上述可以理解,第一加密数据包的加密条件是采用协商密码加密,而第二加密数据包的加密条件是采用第二密文进行加密。采用服务器发送第一加密数据包是本申请的优选项。
具体的,服务器获取用户端的MAC地址,将MAC地址作为第二密码源导入至第二密文生成算法中,以生成第二密文,采用第二密文加密数据包,形成第二加密数据包。
进一步地,第二密文生成算法为:
其中,B0至BN为第二密文,b0至b0为用户端的MAC地址;通过结合MAC地址与第二随机矩阵X得到第二密文。
参考附图3,为本发明提出的一种用户数据加密装置的结构框图,包括:
数据查找单元10,用于当服务器检测到用户操作用户端登入后,接收用户端发出的数据获取请求,并根据数据获取请求查找到用户数据,其中,用户数据为用户注册时向服务器输入的数据,用户数据包括敏感信息,数据获取请求为用户通过用户端发出的请求服务器发送用户数据的请求。
服务器存储有用户预存的用户数据,在用户操作用户端登入服务器的前提下,用户端可请求服务器将用户数据发送至用户端,从而实现服务器可将用户数据发送给多个用户端,例如:用户通过第一用户端登入服务器,服务器在获取第一用户端发出的数据获取请求后,将用户数据发送至第一用户端,同理,第二用户端、第三用户端都可采用此种方式获得用户数据。具体的,用户通过用户端上传登录信息至服务器,服务器验证该登录信息与预设的注册信息是否一致,若一致,则服务器允许用户端登入;服务器根据数据获取请求将用户数据发送至用户端之后,若用户需要获知用户数据,无需通过用户端发出指令至服务器以查找用户数据,只需要在用户端进行本地查找用户数据即可,从而达到减少用户端与服务器之间的交互的效果。
协商密码生成单元20,用于根据敏感信息生成预协商密码,并将预协商密码发送至用户端。
上述敏感信息包括用户姓名、用户证件号和用户预设终端号码。服务器随机组合用户姓名、证件号码和用户预设终端号码生成预协商密码,具体如:服务器识别用户姓名的首字母,例如:张三的首字母为ZS;而证件号码和手机号码即为数字,例如,用户证件号为123456789,用户预设终端号码为00000,故服务器随机组合用户姓名、证件号码和手机号码生成预协商密码,如ZS12345678900000、12345678900000ZS等。
服务器生成预协商密码后,将预协商密码发送至用户端。
协商密码确定单元30,用于获取用户端的反馈信息,若反馈信息为确认指令,则确认预协商密码作为协商密码;
服务器将预协商密码发送至用户端之后,用户端接收预协商密码并显示告知用户,获取用户端的反馈信息,若反馈信息为确认指令,则确认预协商密码作为协商密码;上述确认指令为用户认为预协商密码可行而通过用户端发出的指令。
第一密文单元40,用于将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,以及生成解密第一密文的第一密钥,通过第一密文对用户数据进行加密;
在确认协商密码之后,服务器将协商密码作为第一密码源导入至预设的第一密文生成算法中,从而经过计算能够得到第一密文,以及解密第一密文的第一密钥。通过第一密文将用户数据进行加密,可以理解,第一密文可以比喻成密码箱,第一密钥可以比喻成解开密码箱的钥匙,而用户数据在存储在密码箱内,以达到保护用户数据的效果。
具体的,第一密文生成算法为:
其中,A0至AN为第一密文,a0至an为协商密码,结合随机矩阵x与协商密码得到第一密文。
举例示明,例如上述协商密码为ZS12346578900000,随机矩阵x的行数与协商密码的位数一致,即上述协商密码的位数为16位,故随机矩阵x的行数存在16行,所得到的第一密文也为16位,第一密文为无规则、无特征的密文。
采用第一密钥对第一密文进行解密,第一密钥的生成通过第一密钥生成算法进行计算而得到,通过第一密钥生成算法生成第一密钥,由上述可知第一密钥为解密第一密文的密钥,第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段。
举例示明,例如第一密文为12345678910,A为从A0至AN中随机截取的密段,如A:234567891;又例如a0至an为ZS123465789,故服务器从中截取,如a为S12346578。第一密钥k1=234567891[(234567891)2x+S12346578(S12346578+234567891)]-1。通过第一密钥解密第一密文的方式:服务器根据第一密钥生成算法得到K1,K1为具体的数值,用户端保留该数值,并且用户端在第一密文生成算法中进行推导运算,判断是否能运算出与K1相同的数值,若是,则解密第一密文,以使用户端得到用户数据。
例如:A为从第一密文中截取的一端密段,a为从协商密码中截取的一端密段,A与a截取的位置一致,根据截取位置在随机矩阵中截取对应的矩阵数据Xx,结合A、a、Xx经过第一密钥生成算法得到K1,K1数值如为123;用户端的第一密文中具有A0至AN、a0至an、随机矩阵x全部的数据信息,用户端根据第一密钥生成算法,结合A0至AN、a0至an、随机矩阵x判断是否能推算出K1相同的数值“123”,若能,则用户端解开第一密文,从而得到用户数据。
打包单元50,用于打包第一密文和第二密钥,形成数据包,并采用协商密码加密数据包,以形成第一加密数据包;
服务器通过第一密文生成算法计算得到第一密文和第一密钥后,采用协商密码对第一密文和第一密钥进行加密并打包,从而服务器得到第一加密数据包。
发送单元60,用于将第一加密数据包发送至用户端,用户端接收到第一加密数据包后,通过用户输入协商密码以解密第一加密数据包,使用户端得到第一密文和第一密钥。
通过服务器将第一加密数据包发送至用户端,由协商密码保护第一加密数据包以防止在数据传输的过程中第一密文与第一密钥泄露。当第一加密数据包发送至用户端后,用户输入协商密码以解密第一加密数据包,从而用户端得到第一密文和第一密钥,用户端通过第一密钥解密第一密文,以得到用户数据,最终,用户端将用户数据存储于本地,从而实现解决当非法者盗取随机的字符串后,直接将随机字符串发送至服务器,存在盗取用户资料的危险,且用户端与服务器的交互次数多,处理速度慢的技术问题。
在一个实施例中,敏感信息包括用户姓名、用户证件号和用户预设终端号码,其中,密码协商单元20包括:
随机整合模块,用于随机整合用户姓名、用户证件号和用户预设终端号码生成预协商密码;
具体例如,服务器随机组合用户姓名、证件号码和用户预设终端号码生成预协商密码,具体如:服务器识别用户姓名的首字母,例如:张三的首字母为ZS;而证件号码和手机号码即为数字,例如,用户证件号为123456789,用户预设终端号码为00000,故服务器随机组合用户姓名、证件号码和手机号码生成预协商密码,如ZS12345678900000、12345678900000ZS等。
在另一个实施例中,密码协商单元还包括:
第二协商密码确认模块,若反馈信息为更改密码,则以更改密码作为协商密码。
若服务器发送预协商密码至用户端,用户认为该预协商密码不理想,则通过用户端输入更改密码至服务器,当服务器接收到更改密码后,以该更改密码作为协商密码。
在一个实施例中,第一密文单元40采用第一密文生成算法进行计算:
其中,A0至AN为第一密文,a0至an为协商密码,结合第一随机矩阵x与协商密码得到第一密文。
进一步地,第一密文单元40采用第一密钥生成算法生成解密第一密文的第一密钥,第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段。
参考附图4,为用户数据加密装置在一个实施例中的结构框图,用户数据加密装置还包括:
MAC地址获取单元51,用于获取用户端的MAC地址;
第二密文单元52,用于将MAC地址作为第二密码源导入至第二密文生成算法中,以生成第二密文;
第二加密数据包生成单元53,用于采用第二密文加密数据包,形成第二加密数据包;将第二加密数据包发送至用户端后,用户端自动验证本机的MAC地址与MAC地址是否一致,若一致,则自动解密第二加密数据包,以使用户端得到第一密文和第一密钥。
当服务器打包第一密文和第一密钥以形成数据包之后,服务器可以生成第二密文对数据包进行加密,从而得到第二加密数据包,由上述可以理解,第一加密数据包的加密条件是采用协商密码加密,而第二加密数据包的加密条件是采用第二密文进行加密。采用服务器发送第一加密数据包是本申请的优选项。
具体的,服务器获取用户端的MAC地址,将MAC地址作为第二密码源导入至第二密文生成算法中,以生成第二密文,采用第二密文加密数据包,形成第二加密数据包。
进一步地,第二密文生成算法为:
其中,B0至BN为第二密文,b0至b0为用户端的MAC地址;通过结合MAC地址与第二随机矩阵X得到第二密文。
参照图5,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于用户数据、数据文件夹等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种用户数据加密方法。
上述处理器执行用户数据加密方法,包括:
当服务器检测到用户操作用户端登入后,接收用户端发出的数据获取请求,并根据数据获取请求查找到用户数据,其中,用户数据为用户注册时向服务器输入的数据,用户数据包括敏感信息;
根据敏感信息生成预协商密码,并将预协商密码发送至用户端;
获取用户端的反馈信息,若反馈信息为确认指令,则确认预协商密码作为协商密码;
将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,以及生成解密第一密文的第一密钥,通过第一密文对用户数据进行加密;
打包第一密文和第一密钥,形成数据包,并采用协商密码加密数据包,以形成第一加密数据包;
将第一加密数据包发送至用户端,用户端接收到第一加密数据包后,通过用户向用户端输入协商密码以解密第一加密数据包,使用户端得到第一密文和第一密钥。
在一个实施例中,上述处理器执行敏感信息包括用户姓名、用户证件号和用户预设终端号码;根据敏感信息生成预协商密码的步骤包括:
随机整合排列用户姓名、用户证件号和用户预设终端号码生成预协商密码。
在一个实施例中,上述处理器执行获取用户端的反馈信息的步骤之后还包括:
若反馈信息为更改密码,则以更改密码作为协商密码。
在一个实施例中,上述处理器执行将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文的步骤,第一密文生成算法为:
其中,A0至AN为第一密文,a0至an为协商密码,结合第一随机矩阵x与协商密码得到第一密文。
在一个实施例中,上述处理器执行生成解密第一密文的第一密钥的步骤包括:
采用第一密钥生成算法生成解密第一密文的第一密钥,第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段。
在一个实施例中,上述处理器执行打包第一密文和第一密钥,形成数据包的步骤之后,还包括:
获取用户端的MAC地址;
将MAC地址作为第二密码源导入至第二密文生成算法中,以生成第二密文;
采用第二密文加密数据包,形成第二加密数据包;将第二加密数据包发送至用户端后,用户端自动验证本机的MAC地址与MAC地址是否一致,若一致,则自动解密第二加密数据包,以使用户端得到第一密文和第一密钥。
在一个实施例中,上述处理器执行第二密文生成算法为:
其中,B0至BN为第二密文,b0至b0为用户端的MAC地址;通过结合MAC地址与第二随机矩阵X得到第二密文。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种用户数据加密方法的步骤,具体为:
上述处理器执行用户数据加密方法,包括:
当服务器检测到用户操作用户端登入后,接收用户端发出的数据获取请求,并根据数据获取请求查找到用户数据,其中,用户数据为用户注册时向服务器输入的数据,用户数据包括敏感信息;
根据敏感信息生成预协商密码,并将预协商密码发送至用户端;
获取用户端的反馈信息,若反馈信息为确认指令,则确认预协商密码作为协商密码;
将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,以及生成解密第一密文的第一密钥,通过第一密文对用户数据进行加密;
打包第一密文和第一密钥,形成数据包,并采用协商密码加密数据包,以形成第一加密数据包;
将第一加密数据包发送至用户端,用户端接收到第一加密数据包后,通过用户向用户端输入协商密码以解密第一加密数据包,使用户端得到第一密文和第一密钥。
在一个实施例中,上述处理器执行敏感信息包括用户姓名、用户证件号和用户预设终端号码;根据敏感信息生成预协商密码的步骤包括:
随机整合排列用户姓名、用户证件号和用户预设终端号码生成预协商密码。
在一个实施例中,上述处理器执行获取用户端的反馈信息的步骤之后还包括:
若反馈信息为更改密码,则以更改密码作为协商密码。
在一个实施例中,上述处理器执行将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文的步骤,第一密文生成算法为:
其中,A0至AN为第一密文,a0至an为协商密码,结合第一随机矩阵x与协商密码得到第一密文。
在一个实施例中,上述处理器执行生成解密第一密文的第一密钥的步骤包括:
采用第一密钥生成算法生成解密第一密文的第一密钥,第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段。
在一个实施例中,上述处理器执行打包第一密文和第一密钥,形成数据包的步骤之后,还包括:
获取用户端的MAC地址;
将MAC地址作为第二密码源导入至第二密文生成算法中,以生成第二密文;
采用第二密文加密数据包,形成第二加密数据包;将第二加密数据包发送至用户端后,用户端自动验证本机的MAC地址与MAC地址是否一致,若一致,则自动解密第二加密数据包,以使用户端得到第一密文和第一密钥。
在一个实施例中,上述处理器执行第二密文生成算法为:
其中,B0至BN为第二密文,b0至b0为用户端的MAC地址;通过结合MAC地址与第二随机矩阵X得到第二密文。
综上所述,当服务器检测到用户操作用户端登入后,接收用户端发出的数据获取请求,并根据数据获取请求查找到用户数据,其中,用户数据为用户注册时向服务器输入的数据,用户数据包括敏感信息;根据敏感信息生成预协商密码,并将预协商密码发送至用户端;获取用户端的反馈信息,若反馈信息为确认指令,则确认预协商密码作为协商密码;将协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,以及生成解密第一密文的第一密钥,通过第一密文对用户数据进行加密;打包第一密文和第一密钥,形成数据包,并采用协商密码加密数据包,以形成第一加密数据包;将第一加密数据包发送至用户端,用户端接收到第一加密数据包后,通过用户向用户端输入协商密码以解密第一加密数据包,使用户端得到第一密文和第一密钥,以解决当非法者盗取随机的字符串后,直接将随机字符串发送至服务器,存在盗取用户资料的危险,且用户端与服务器的交互次数多,处理速度慢的技术问题。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (8)
1.一种用户数据加密方法,其特征在于,包括:
当服务器检测到用户操作用户端登入后,接收所述用户端发出的数据获取请求,并根据所述数据获取请求查找到用户数据,其中,所述用户数据为用户注册时向所述服务器输入的数据,所述用户数据包括敏感信息;
根据所述敏感信息生成预协商密码,并将所述预协商密码发送至所述用户端;
获取所述用户端的反馈信息,若所述反馈信息为确认指令,则确认所述预协商密码作为协商密码;
将所述协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,其中,所述第一密文生成算法为:
其中,A0至AN为第一密文,N表示第一密文的数量,N为大于0的正整数;a0至an为协商密码,n表示协商密码的数量,n为大于0的正整数,结合第一随机矩阵x与所述协商密码得到所述第一密文;以及,
采用第一密钥生成算法生成解密所述第一密文的第一密钥,所述第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段,通过所述第一密文对所述用户数据进行加密;
打包所述第一密文和所述第一密钥,形成数据包,并采用所述协商密码加密所述数据包,以形成第一加密数据包;
将所述第一加密数据包发送至所述用户端,所述用户端接收到所述第一加密数据包后,通过所述用户向所述用户端输入所述协商密码以解密所述第一加密数据包,使所述用户端得到所述第一密文和所述第一密钥。
2.根据权利要求1所述的用户数据加密方法,其特征在于,所述敏感信息包括用户姓名、用户证件号和用户预设终端号码;所述根据所述敏感信息生成预协商密码的步骤包括:
随机整合排列所述用户姓名、用户证件号和用户预设终端号码生成所述预协商密码。
3.根据权利要求1所述的用户数据加密方法,其特征在于,所述获取所述用户端的反馈信息的步骤之后还包括:
若所述反馈信息为更改密码,则以所述更改密码作为所述协商密码。
4.根据权利要求1所述的用户数据加密方法,其特征在于,所述打包所述第一密文和所述第一密钥,形成数据包的步骤之后,还包括:
获取所述用户端的MAC地址;
将所述MAC地址作为第二密码源导入至所述第二密文生成算法中,以生成第二密文;
采用所述第二密文加密所述数据包,形成第二加密数据包;将所述第二加密数据包发送至所述用户端后,所述用户端自动验证本机的MAC地址与所述MAC地址是否一致,若一致,则自动解密所述第二加密数据包,以使所述用户端得到所述第一密文和所述第一密钥。
5.根据权利要求4所述的用户数据加密方法,其特征在于,所述第二密文生成算法为:
其中,B0至BN为第二密文,N表示第二密文的数量,N为大于0的正整数;b0至bn为所述用户端的MAC地址,n表示MAC地址的数量,n为大于0的正整数;通过结合所述MAC地址与第二随机矩阵X得到第二密文。
6.一种用户数据加密装置,其特征在于,包括:
数据查找单元,用于当服务器检测到用户操作用户端登入后,接收所述用户端发出的数据获取请求,并根据所述数据获取请求查找到用户数据,其中,所述用户数据为用户注册时向所述服务器输入的数据,所述用户数据包括敏感信息;
协商密码生成单元,用于根据所述敏感信息生成预协商密码,并将所述预协商密码发送至所述用户端;
协商密码确定单元,用于获取所述用户端的反馈信息,若所述反馈信息为确认指令,则确认所述预协商密码作为协商密码;
第一密文单元,用于将所述协商密码作为第一密码源导入至预设的第一密文生成算法中,生成第一密文,其中,所述第一密文生成算法为:
其中,A0至AN为第一密文,N表示第一密文的数量,N为大于0的正整数;a0至an为协商密码,n表示协商密码的数量,n为大于0的正整数,结合第一随机矩阵x与所述协商密码得到所述第一密文;以及,
采用第一密钥生成算法生成解密所述第一密文的第一密钥,所述第一密钥生成算法为:
K1=A[A2x+a(A+a)]-1
其中,K1为第一密钥,A为从A0至AN中随机截取的密段,a为从a0至an中截取与A相对应的密段,通过所述第一密文对所述用户数据进行加密;
打包单元,用于打包所述第一密文和所述第一密钥,形成数据包,并采用所述协商密码加密所述数据包,以形成第一加密数据包;
发送单元,用于将所述第一加密数据包发送至所述用户端,所述用户端接收到所述第一加密数据包后,通过所述用户向所述用户端输入所述协商密码以解密所述第一加密数据包,使所述用户端得到所述第一密文和所述第一密钥。
7.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述的用户数据加密方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的用户数据加密方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910305179.4A CN110166231B (zh) | 2019-04-16 | 2019-04-16 | 用户数据加密方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910305179.4A CN110166231B (zh) | 2019-04-16 | 2019-04-16 | 用户数据加密方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110166231A CN110166231A (zh) | 2019-08-23 |
CN110166231B true CN110166231B (zh) | 2023-04-18 |
Family
ID=67639606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910305179.4A Active CN110166231B (zh) | 2019-04-16 | 2019-04-16 | 用户数据加密方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110166231B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113139203A (zh) * | 2020-01-19 | 2021-07-20 | 上海臻客信息技术服务有限公司 | 一种用户信息防泄露方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102246455A (zh) * | 2008-12-11 | 2011-11-16 | 三菱电机株式会社 | 自我认证通信设备以及设备认证系统 |
CN106302449A (zh) * | 2016-08-15 | 2017-01-04 | 中国科学院信息工程研究所 | 一种密文存储与密文检索开放云服务方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9992017B2 (en) * | 2013-06-28 | 2018-06-05 | Telefonaktiebolaget L M Ericsson (Publ) | Encrypting and storing data |
US9639710B2 (en) * | 2013-12-23 | 2017-05-02 | Symantec Corporation | Device-based PIN authentication process to protect encrypted data |
-
2019
- 2019-04-16 CN CN201910305179.4A patent/CN110166231B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102246455A (zh) * | 2008-12-11 | 2011-11-16 | 三菱电机株式会社 | 自我认证通信设备以及设备认证系统 |
CN106302449A (zh) * | 2016-08-15 | 2017-01-04 | 中国科学院信息工程研究所 | 一种密文存储与密文检索开放云服务方法和系统 |
Non-Patent Citations (3)
Title |
---|
ClouDedup Secure Deduplication with Encrypted Data for Cloud Storage;Pasquale Puzio SecludIT etal.;《2013 IEEE 5th International Conference on Cloud Computing Technology and Science》;20140306;全文 * |
云存储数据的安全审计技术研究;李晨;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20190228(第02期);第4章 * |
大数据环境下用户隐私数据存储方法的研究;马蕾等;《计算机仿真》;20160215(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110166231A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10652015B2 (en) | Confidential communication management | |
CN110855671B (zh) | 一种可信计算方法和系统 | |
KR101010040B1 (ko) | 파일의 암호화·복호화 방법, 장치, 프로그램 및 이프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 | |
CN112737779B (zh) | 一种密码机服务方法、装置、密码机及存储介质 | |
US11729002B2 (en) | Code signing method and system | |
CN111031047B (zh) | 设备通信方法、装置、计算机设备及存储介质 | |
CN109274716B (zh) | 文件处理的方法、装置、计算机设备和存储介质 | |
US11606202B2 (en) | Methods and systems for secure data transmission | |
CN114024710A (zh) | 一种数据传输方法、装置、系统及设备 | |
CN110677382A (zh) | 数据安全处理方法、装置、计算机系统及存储介质 | |
CN111294203B (zh) | 信息传输方法 | |
CN103116730A (zh) | 一种dpapi加密数据的解密方法和系统 | |
CN114637987A (zh) | 基于平台验证的安全芯片固件下载方法及系统 | |
CN113703911B (zh) | 一种虚拟机迁移方法、装置、设备、存储介质 | |
CN110166231B (zh) | 用户数据加密方法、装置、计算机设备及存储介质 | |
CN106789008A (zh) | 对可共享的加密数据进行解密的方法、装置及系统 | |
CN106257859A (zh) | 一种密码使用方法 | |
CN114785527B (zh) | 数据传输方法、装置、设备及存储介质 | |
CN110941861B (zh) | 文件防护方法、装置、计算机设备及介质 | |
CN112995096B (zh) | 数据加密、解密方法、装置及设备 | |
CN114745192B (zh) | 通讯方法、系统、设备及介质 | |
CN115348066B (zh) | 数据加密传输方法、装置及电子设备、存储介质 | |
US11568070B2 (en) | Secure access control processes | |
CN109711181B (zh) | 一种基于可信格式数据的文件内容细粒度保护方法 | |
EP3869730B1 (en) | Confidential communication management |
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 |