CN110768784A - 密码传输方法、装置、计算机设备和存储介质 - Google Patents
密码传输方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN110768784A CN110768784A CN201911004732.7A CN201911004732A CN110768784A CN 110768784 A CN110768784 A CN 110768784A CN 201911004732 A CN201911004732 A CN 201911004732A CN 110768784 A CN110768784 A CN 110768784A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- password
- character string
- account
- length
- 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.)
- Granted
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/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
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
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)
- Storage Device Security (AREA)
- Document Processing Apparatus (AREA)
Abstract
本申请涉及一种密码传输方法、装置、计算机设备和存储介质。所述方法包括:接收用户的登陆请求,登陆请求中携带有用户输入的账号和密码;利用第一加密函数对密码进行加密,得到密码对应的第一密文;基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文;利用第二加密函数对账号和第二密文进行加密后传输至服务器。采用本方法能够提高安全性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种密码传输方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展和业务的迅速扩展,面向用户的线上业务系统增多。为了安全性,业务系统都是通过用户注册过的账号和密码进行登陆验证。但是,登陆验证是需要接收用户账号和密码的终端将账号和密码传输至业务系统对应的服务端才能进行验证。
然而,目前的传输方式都是通过明文传输。在明文传输过程中若遭遇拦截就会直接暴露用户的密码,而通过用户的密码就能够轻易获取的用户的个人信息。因此现有的传输方式降低了安全性。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高安全性的密码传输方法、装置、计算机设备和存储介质。
一种密码传输方法,所述方法包括:
接收用户的登陆请求,所述登陆请求中携带有用户输入的账号和密码;
利用第一加密函数对所述密码进行加密,得到所述密码对应的第一密文;
基于所述账号的长度,对所述第一密文中的字符进行移位组合,得到所述密码对应的第二密文;
利用第二加密函数对所述账号和所述第二密文进行加密后传输至服务器。
在其中一个实施例中,所述基于所述账号的长度,对所述第一密文中的字符进行移位组合,得到所述密码对应的第二密文,包括:
确定所述账号的长度,获取所述第一密文中对应所述长度的位置的字符;
根据所述账号的长度,分别随机从所述第一密文中获取对应所述长度的两个字符串,得到第一字符串和第二字符串;
基于获取的所述字符、所述第一字符串和所述第二字符串对所述第一密文进行移位组合,得到所述密码对应的第二密文。
在其中一个实施例中,所述基于获取的所述字符、所述第一字符串和所述第二字符串对所述第一密文进行移位组合,得到所述密码对应的第二密文,包括:
将从所述第一密文中获取的所述字符移位至预设位置,得到移位字符串;
组合所述第一字符串、所述第二字符串和所述移位字符串,得到所述密码对应的第二密文。
在其中一个实施例中,所述基于所述账号的长度,对所述第一密文中的字符进行移位组合,得到所述密码对应的第二密文,包括:
确定所述账号的长度,获取所述第一密文中对应所述长度的位置的字符;
将从所述第一密文中获取的所述字符移位至预设位置,得到移位字符串;
根据所述账号的长度,分别随机从所述移位字符串中获取对应所述长度的两个字符串,得到第三字符串和第四字符串;
组合所述第三字符串、所述第四字符串和所述移位字符串,得到所述密码对应的第二密文。
在其中一个实施例中,所述利用第一加密函数对所述密码进行加密,得到所述密码对应的第一密文,包括:
获取所述密码的字节数组;
调用信息摘要对象,基于所述信息摘要对象对所述字节数据进行摘要,得到摘要字节数组;
将所述摘要字节数组中的各字节进行进制转换,得到第一密文。
在其中一个实施例中,所述利用第二加密函数对所述账号和所述第二密文进行加密后传输至服务器,包括:
获取加密密钥;
将所述加密密钥、所述第二密文以及所述账号作为参数输入至调用的第二加密函数中;
利用所述第二加密函数,根据所述加密密钥对所述第二密文以及所述账号进行加密,得到第三密文;
将所述第三密文传输至服务器。
一种密码传输装置,所述装置包括:
接收模块,用于接收用户的登陆请求,所述登陆请求中携带有用户输入的账号和密码;
加密模块,用于利用第一加密函数对所述密码进行加密,得到所述密码对应的第一密文;
组合模块,用于基于所述账号的长度,对所述第一密文中的字符进行移位组合,得到所述密码对应的第二密文;
传输模块,用于利用第二加密函数对所述账号和所述第二密文进行加密后传输至服务器。
在其中一个实施例中,所述移位组合模块还用于确定所述账号的长度,获取所述第一密文中对应所述长度的位置的字符;
根据所述账号的长度,分别随机从所述第一密文中获取两个对应所述长度的字符串,得到第一字符串和第二字符串;
基于获取的所述字符、所述第一字符串和所述第二字符串对所述第一密文进行移位组合,得到所述密码对应的第二密文。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述密码传输方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述密码传输方法的步骤。
上述密码传输方法、装置、计算机设备和存储介质,当利用第一加密函数对用户的密码进行加密得到第一密文后,进一步基于账号的长度对第一密文进行移动组合进行二次加密得到第二密文,进而再将第二密文和账号进行加密传输。该方法通过多次加密,并且第二次加密利用移位组合的方式保证每次生成的密文不一致,加强了密码在传输过程中的安全性。
附图说明
图1为一个实施例中密码传输方法的应用环境图;
图2为一个实施例中密码传输方法的流程示意图;
图3为一个实施例中基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文步骤的流程示意图;
图4为一个实施例中密码传输装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的密码传输方法,可以应用于如图1所示的应用环境中。其中,终端102与服务器104通过网络进行通信。当终端102接收到用户发送的携带有用户输入的账号和密码的登陆请求之后,终端102利用第一加密函数对密码进行加密,得到密码对应的第一密文;终端102基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文;终端102利用第二加密函数对账号和第二密文进行加密后传输至服务器104。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种密码传输方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
步骤S202,接收用户的登陆请求,登陆请求中携带有用户输入的账号和密码。
其中,登陆请求是用于请求登陆的指令,例如登陆请求可以是请求登陆业务系统的指令、登陆应用程序的指令等。账号是进行登陆的账户名,可以理解为是识别码,用于验证登陆的用户的身份。密码即是进入该账号的密钥,用于保证账号安全。
具体地,当用户在终端完成登陆操作时,终端即可同步获取到用户的登陆请求,并且登陆请求中携带有用户进行登陆操作时输入的账号和密码。例如,当用户有登陆需求时,首先通过终端的输出装置(键盘、鼠标和触屏等)进行相应点击操作进入登陆页面。然后用户在该登陆页面所提供的账户输入框和密码输入框中输入对应的账户和密码。最后点击登陆页面提供的相关控件,相关控件可以是标有“确认”或“登陆”等名称的控件,具体以实际的业务系统的登陆页面为准。而当用户点击相关控件之后,终端即可获取到携带账号和密码的登陆请求。
步骤S204,利用第一加密函数对密码进行加密,得到密码对应的第一密文。
其中,加密是指通过加密算法、加密密钥等将需要加密的明文转换为密文的过程。第一密文是利用第一加密函数进行加密后的密码。
具体地,当获取到用户输入的账号和密码之后,调用第一加密函数获取到的密码进行加密,从而得到密码对应的第一密文。在本实施例中,第一加密函数为MD5信息摘要算法,即通过调用MD5信息摘要算法将用户输入的密码转变得到第一密文。
在一个实施例中,利用第一加密函数对密码进行加密,得到密码对应的第一密文,包括:获取密码的字节数组;调用信息摘要对象,基于信息摘要对象对字节数据进行摘要,得到摘要字节数组;将摘要字节数组中的各字节进行进制转换,得到第一密文。
其中,信息摘要对象即为MD5信息摘要算法。字节是通过网络传输信息的单位,数组是程序设计中为了方便处理,把具有相同的若干变量按有序的形式组织起来的一种形式。因此,字节数组即是用于存储字节的数组。摘要是指数字摘要,数字摘要是将任意长度的消息变成固定长度的短消息的技术。MD5信息摘要算法摘要后的固定长度为32bit。
具体地,由于信息摘要对象是对字节数组进行摘要,则在进行摘要之前,首先获取密码的字节数组。可以通过字符集将密码编码为字节并存储至一个字节数组中。然后,调用第二加密函数,即调用信息摘要对象MD5。通过MD5对密码对应的字节数组进行数字摘要,得到摘要字节数组。最后,将摘要字节数据中每个字节的进制转换为16进制,得到第一密文。
步骤S206,基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文。
其中,账号的长度是指账号所包括的字符的数量。例如,账号包括9个字符,账号的长度即为9。第二密文则是对第一密文进行加密后的密文。
在一个实施例中,如图3所示,基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文,具体包括以下步骤:
步骤S2061,确定账号的长度,获取第一密文中对应长度的位置的字符。
具体地,当通过第一加密函数对密码进行加密得到第一密文之后,首先确定该密码对应的账号的长度。然后,在第一密文中获取与该长度对应的位置的字符。例如,账号的长度为9,则获取第一密文中位置为9的字符。假设第一密文为:12sgh345a8b9cd,由于在计算机中字符串序号从位置0开始,则位置为9的字符是8。
步骤S2062,根据账号的长度,分别随机从第一密文中获取对应长度的两个字符串,得到第一字符串和第二字符串。
其中,第一字符串和第二字符串是随机中第一密文中获取的字符串,且第一字符串和第二字符串中字符的数量与账号的长度相同。
具体地,在得到第一密文之后,同样根据账号的长度随机从第一密文中获取与长度相同的两个字符串。例如,账号的长度为9,假设第一密文为:12sgh345a8b9cd。则随机从第一密文12sgh345a8b9cd中获取9位字符作为第一字符串,同样随机从第一密文12sgh345a8b9cd中获取9位字符作为第二字符串。应当理解的是,由于都是随机从第一密文中随机获取与长度相同的字符,所以是可能存在获取的第一字符串等于第二字符串情况。另外,随机获取到9位字符之后,当组成字符串时可以按照9位字符原本在第一密文中的顺序排序,也可以随机对9位字符进行排序。
此外,本实施例中的随机机制可以是在字符串中的任意位置获取9个字符,也可以是随机选定起始位置之后,从起始位置开始按顺序获取9个字符。当选定的起始位置之后的字符的数量不满足9,则可以从字符串的开头获取。例如起始位置之后的字符只有6个,剩下3个字符从第一密文的开头按顺序获取3个。
步骤S2063,基于获取的字符、第一字符串和第二字符串对第一密文进行移位组合,得到密码对应的第二密文。
其中,移位是指对获取的字符进行移动,组合是指将获取的字符串进行拼接组合成一个字符串。
在一个实施例中,基于获取的字符、第一字符串和第二字符串对第一密文进行移位组合,得到密码对应的第二密文具体包括:将从第一密文中获取的字符移位至预设位置,得到移位字符串;组合第一字符串、第二字符串和所述移位字符串,得到密码对应的第二密文。
具体地,当基于账号的长度获取到对应的字符,第一字符串以及第二字符串之后,将从第一密文获取的字符移动至预设位置,从而得到移位字符串。其中,移位字符串是指对字符进行移位后的第一密文。预设位置可以是第一密文的末尾、开头或者中间任意一个位置。例如,假设第一密文为:12sgh345a8b9cd,然后获取的字符是8。进行末尾移位时便是将8移动至末尾,得到的移位字符串即为12sgh345ab9cd8。当得到移位字符串之后,即可将移位字符串、第一字符串、第二字符串进行拼接组合,得到的字符串即为第二密文。
应当理解的是,将三个字符串进行拼接时,三个字符串的位置不做限定,可以随意组合排列。例如,移位字符串b、第一字符串c、第二字符串d,拼接组合方式可以为b+c+d、c+b+d、d+b+c等等。
步骤S208,利用第二加密函数对账号和第二密文进行加密后传输至服务器。
其中,第二加密函数是用于对账号和第二密文进行加密的函数。在本实施例中,第二加密函数优选AES(Advanced Encryption Standard,高级加密标准)加密函数。
在一个实施例中,利用第二加密函数对账号和第二密文进行加密后传输至服务器具体包括:获取加密密钥;将加密密钥、第二密文以及账号作为参数输入至调用的第二加密函数中;利用第二加密函数,根据加密密钥对第二密文以及账号进行加密,得到第三密文;将第三密文传输至服务器。
其中,第三密文即是通过AES加密函数加密后的第二密文和账号。加密密钥是用于进行加密时输入的参数。
具体地,当得到第二密文之后,获取预先设置的加密密钥。然后,将加密密钥、第二密文以及账号作为AES加密函数的参数输入。AES加密函数通过加密密钥对账号和第二密文加密,得到第三密文。例如,假设AES加密函数为E、K为加密密钥、P为第二密文和账号、C为第三密文,则它们之间的关系为:C=E(K,P)。
当得到第三密文之后,将加密得到的第三密文传输至服务器端进行验证。当服务器进行验证时,通过上述加密的逆向操作解密得到第一密文。例如,服务器通过AES解密函数D,利用解密密钥L对第三密文C进行解密,得到第二密文和账号P,关系式为:P=D(L,C)。应当理解的是,当使用的算法为对称加密算法时,加密密钥K即与解密密钥L相同,K=L。然后,若移动的预设位置为末尾,且加密得到的第二密文是c+b+d,也就是第一字符串+移位字符串+第二字符串。服务器进行逆向操作即根据账号的长度,从第二密文的头部和尾部分别去除第一字符串和第二字符串,得到移位字符串。然后移位字符串的末尾获取被移动的字符串,根据账号的长度将其移动至原本的位置,从而得到第一密文。
应当理解的是,由于MD5具有不可逆性,因此服务器只能通过逆向操作的到第一密文。服务器最后通过与数据库中的第一密文进行对比确定与解密得到的第一密文是否一致确定密码是否正确。
上述密码传输方法,当利用第一加密函数对用户的密码进行加密得到第一密文后,进一步基于账号的长度对第一密文进行移动组合进行二次加密得到第二密文,进而再将第二密文和账号进行加密传输。该方法通过多次加密,并且第二次加密利用移位组合的方式保证每次生成的密文不一致,加强了密码在传输过程中的安全性。
在另一个实施例中,基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文,具体包括:确定账号的长度,获取第一密文中对应长度的位置的字符;将从第一密文中获取的字符移位至预设位置,得到移位字符串;根据账号的长度,分别随机从移位字符串中获取对应长度的两个字符串,得到第三字符串和第四字符串;组合第三字符串、第四字符串和所述移位字符串,得到密码对应的第二密文。
具体地,当将根据长度获取的字符移位至预设位置,得到移位字符串之后,可以根据账号的长度,随机从移位字符串中获取对应长度的两个字符串,即第三字符串和第四字符串。也就是说,第三字符串和第四字符串是从移位字符中随机获取的。然后,再将移位字符串、第三字符串和第四字符串进行拼接组合得到第二密文。在本实施例中,当随机机制是选定起始位置,从起始位置开始按顺序获取时,则可以通过从移位字符串中获取字符串。通过在已经移位后的第一密文中获取字符串,能够进一步加强密码的安全性。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种密码传输装置,包括:接收模块402、加密模块404、组合模块406和传输模块408,其中:
接收模块402,用于接收用户的登陆请求,登陆请求中携带有用户输入的账号和密码。
加密模块404,用于利用第一加密函数对密码进行加密,得到密码对应的第一密文。
组合模块406,用于基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文。
传输模块408,用于利用第二加密函数对账号和第二密文进行加密后传输至服务器。
在一个实施例中,组合模块406还用于确定账号的长度,获取第一密文中对应长度的位置的字符;根据账号的长度,分别随机从第一密文中获取对应长度的两个字符串,得到第一字符串和第二字符串;基于获取的字符、第一字符串和第二字符串对第一密文进行移位组合,得到密码对应的第二密文。
在一个实施例中,组合模块406还用于将从第一密文中获取的字符移位至预设位置,得到移位字符串;组合第一字符串、第二字符串和移位字符串,得到密码对应的第二密文。
在一个实施例中,组合模块406还用于确定账号的长度,获取第一密文中对应长度的位置的字符;将从第一密文中获取的字符移位至预设位置,得到移位字符串;根据账号的长度,分别随机从移位字符串中获取对应长度的两个字符串,得到第三字符串和第四字符串;组合第三字符串、第四字符串和移位字符串,得到密码对应的第二密文。
在一个实施例中,加密模块404还用于获取密码的字节数组;调用信息摘要对象,基于信息摘要对象对字节数据进行摘要,得到摘要字节数组;将摘要字节数组中的各字节进行进制转换,得到第一密文。
在一个实施例中,传输模块408还用于获取加密密钥;将加密密钥、第二密文以及账号作为参数输入至调用的第二加密函数中;利用第二加密函数,根据加密密钥对第二密文以及账号进行加密,得到第三密文;将第三密文传输至服务器。
关于密码传输装置的具体限定可以参见上文中对于密码传输方法的限定,在此不再赘述。上述密码传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种密码传输方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收用户的登陆请求,登陆请求中携带有用户输入的账号和密码;
利用第一加密函数对密码进行加密,得到密码对应的第一密文;
基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文;
利用第二加密函数对账号和第二密文进行加密后传输至服务器。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
确定账号的长度,获取第一密文中对应长度的位置的字符;根据账号的长度,分别随机从第一密文中获取对应长度的两个字符串,得到第一字符串和第二字符串;基于获取的字符、第一字符串和第二字符串对第一密文进行移位组合,得到密码对应的第二密文。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将从第一密文中获取的字符移位至预设位置,得到移位字符串;组合第一字符串、第二字符串和移位字符串,得到密码对应的第二密文。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
确定账号的长度,获取第一密文中对应长度的位置的字符;将从第一密文中获取的字符移位至预设位置,得到移位字符串;根据账号的长度,分别随机从移位字符串中获取对应长度的两个字符串,得到第三字符串和第四字符串;组合第三字符串、第四字符串和移位字符串,得到密码对应的第二密文。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取密码的字节数组;调用信息摘要对象,基于信息摘要对象对字节数据进行摘要,得到摘要字节数组;将摘要字节数组中的各字节进行进制转换,得到第一密文。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取加密密钥;将加密密钥、第二密文以及账号作为参数输入至调用的第二加密函数中;利用第二加密函数,根据加密密钥对第二密文以及账号进行加密,得到第三密文;将第三密文传输至服务器。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收用户的登陆请求,登陆请求中携带有用户输入的账号和密码;
利用第一加密函数对密码进行加密,得到密码对应的第一密文;
基于账号的长度,对第一密文中的字符进行移位组合,得到密码对应的第二密文;
利用第二加密函数对账号和第二密文进行加密后传输至服务器。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
确定账号的长度,获取第一密文中对应长度的位置的字符;根据账号的长度,分别随机从第一密文中获取对应长度的两个字符串,得到第一字符串和第二字符串;基于获取的字符、第一字符串和第二字符串对第一密文进行移位组合,得到密码对应的第二密文。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将从第一密文中获取的字符移位至预设位置,得到移位字符串;组合第一字符串、第二字符串和移位字符串,得到密码对应的第二密文。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
确定账号的长度,获取第一密文中对应长度的位置的字符;将从第一密文中获取的字符移位至预设位置,得到移位字符串;根据账号的长度,分别随机从移位字符串中获取对应长度的两个字符串,得到第三字符串和第四字符串;组合第三字符串、第四字符串和移位字符串,得到密码对应的第二密文。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取密码的字节数组;调用信息摘要对象,基于信息摘要对象对字节数据进行摘要,得到摘要字节数组;将摘要字节数组中的各字节进行进制转换,得到第一密文。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取加密密钥;将加密密钥、第二密文以及账号作为参数输入至调用的第二加密函数中;利用第二加密函数,根据加密密钥对第二密文以及账号进行加密,得到第三密文;将第三密文传输至服务器。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种密码传输方法,所述方法包括:
接收用户的登陆请求,所述登陆请求中携带有用户输入的账号和密码;
利用第一加密函数对所述密码进行加密,得到所述密码对应的第一密文;
基于所述账号的长度,对所述第一密文中的字符进行移位组合,得到所述密码对应的第二密文;
利用第二加密函数对所述账号和所述第二密文进行加密后传输至服务器。
2.根据权利要求1所述的方法,其特征在于,所述基于所述账号的长度,对所述第一密文中的字符进行移位组合,得到所述密码对应的第二密文,包括:
确定所述账号的长度,获取所述第一密文中对应所述长度的位置的字符;
根据所述账号的长度,分别随机从所述第一密文中获取对应所述长度的两个字符串,得到第一字符串和第二字符串;
基于获取的所述字符、所述第一字符串和所述第二字符串对所述第一密文进行移位组合,得到所述密码对应的第二密文。
3.根据权利要求2所述的方法,其特征在于,所述基于获取的所述字符、所述第一字符串和所述第二字符串对所述第一密文进行移位组合,得到所述密码对应的第二密文,包括:
将从所述第一密文中获取的所述字符移位至预设位置,得到移位字符串;
组合所述第一字符串、所述第二字符串和所述移位字符串,得到所述密码对应的第二密文。
4.根据权利要求1所述的方法,其特征在于,所述基于所述账号的长度,对所述第一密文中的字符进行移位组合,得到所述密码对应的第二密文,包括:
确定所述账号的长度,获取所述第一密文中对应所述长度的位置的字符;
将从所述第一密文中获取的所述字符移位至预设位置,得到移位字符串;
根据所述账号的长度,分别随机从所述移位字符串中获取对应所述长度的两个字符串,得到第三字符串和第四字符串;
组合所述第三字符串、所述第四字符串和所述移位字符串,得到所述密码对应的第二密文。
5.根据权利要求1所述的方法,其特征在于,所述利用第一加密函数对所述密码进行加密,得到所述密码对应的第一密文,包括:
获取所述密码的字节数组;
调用信息摘要对象,基于所述信息摘要对象对所述字节数据进行摘要,得到摘要字节数组;
将所述摘要字节数组中的各字节进行进制转换,得到第一密文。
6.根据权利要求1所述的方法,其特征在于,所述利用第二加密函数对所述账号和所述第二密文进行加密后传输至服务器,包括:
获取加密密钥;
将所述加密密钥、所述第二密文以及所述账号作为参数输入至调用的第二加密函数中;
利用所述第二加密函数,根据所述加密密钥对所述第二密文以及所述账号进行加密,得到第三密文;
将所述第三密文传输至服务器。
7.一种密码传输装置,其特征在于,所述装置包括:
接收模块,用于接收用户的登陆请求,所述登陆请求中携带有用户输入的账号和密码;
加密模块,用于利用第一加密函数对所述密码进行加密,得到所述密码对应的第一密文;
组合模块,用于基于所述账号的长度,对所述第一密文中的字符进行移位组合,得到所述密码对应的第二密文;
传输模块,用于利用第二加密函数对所述账号和所述第二密文进行加密后传输至服务器。
8.根据权利要求7所述的装置,其特征在于,所述移位组合模块还用于确定所述账号的长度,获取所述第一密文中对应所述长度的位置的字符;
根据所述账号的长度,分别随机从所述第一密文中获取两个对应所述长度的字符串,得到第一字符串和第二字符串;
基于获取的所述字符、所述第一字符串和所述第二字符串对所述第一密文进行移位组合,得到所述密码对应的第二密文。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911004732.7A CN110768784B (zh) | 2019-10-22 | 2019-10-22 | 密码传输方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911004732.7A CN110768784B (zh) | 2019-10-22 | 2019-10-22 | 密码传输方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110768784A true CN110768784A (zh) | 2020-02-07 |
CN110768784B CN110768784B (zh) | 2023-07-18 |
Family
ID=69332580
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911004732.7A Active CN110768784B (zh) | 2019-10-22 | 2019-10-22 | 密码传输方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110768784B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835734A (zh) * | 2020-06-24 | 2020-10-27 | 北京达佳互联信息技术有限公司 | 信息处理方法、装置、电子设备、服务器及存储介质 |
CN111857756A (zh) * | 2020-07-23 | 2020-10-30 | 上海世麦智能科技有限公司 | 一种基于硬件加密的安全刷机方法及系统 |
CN112055217A (zh) * | 2020-07-27 | 2020-12-08 | 西安空间无线电技术研究所 | 任意字节数据中无损搭载信息的方法 |
CN113961888A (zh) * | 2021-09-23 | 2022-01-21 | 统信软件技术有限公司 | 登录请求的生成方法及用于校验登录请求的信息验证方法 |
CN114978727A (zh) * | 2022-05-27 | 2022-08-30 | 中国银行股份有限公司 | 基于密码变换的业务处理方法、装置、介质及程序产品 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6240183B1 (en) * | 1997-06-19 | 2001-05-29 | Brian E. Marchant | Security apparatus for data transmission with dynamic random encryption |
CN1086260C (zh) * | 1994-03-14 | 2002-06-12 | 威廉·Y·肖 | 密钥可变的加密系统 |
US20050156585A1 (en) * | 2004-01-15 | 2005-07-21 | Niedzwiecki Joshua D. | Reduced complexity transmission line and waveguide fault tester |
US20110311054A1 (en) * | 2010-06-18 | 2011-12-22 | Empire Technology Development Llc | Asymmetrical Chaotic Encryption |
US8345876B1 (en) * | 2012-03-06 | 2013-01-01 | Robert Samuel Sinn | Encryption/decryption system and method |
CN103684758A (zh) * | 2013-11-05 | 2014-03-26 | 广东全通教育股份有限公司 | 一种用户密码混合加密的方法及系统 |
CN104811298A (zh) * | 2015-05-14 | 2015-07-29 | 中国联合网络通信集团有限公司 | 一种实现加密的方法及装置 |
CN105553647A (zh) * | 2016-02-26 | 2016-05-04 | 南京航空航天大学 | 基于非线性循环移位寄存器的轻量级流密码技术lsnr2 |
CN105825401A (zh) * | 2016-03-16 | 2016-08-03 | 广州酷旅旅行社有限公司 | 分布式多渠道团购券自动验券系统 |
CN106656471A (zh) * | 2016-12-22 | 2017-05-10 | 武汉信安珞珈科技有限公司 | 一种用户敏感信息的保护方法和系统 |
CN104092683B (zh) * | 2014-07-04 | 2017-05-10 | 飞天诚信科技股份有限公司 | 一种pin码保护方法及系统 |
CN108053213A (zh) * | 2017-12-29 | 2018-05-18 | 飞天诚信科技股份有限公司 | 一种增强无卡支付交易安全性的方法和信用卡 |
CN108737442A (zh) * | 2018-06-12 | 2018-11-02 | 北京多采多宜网络科技有限公司 | 一种加密校验处理方法 |
US20190123897A1 (en) * | 2017-10-19 | 2019-04-25 | Bank Of America Corporation | Method and apparatus for perfect forward secrecy using deterministic hierarchy |
CN110110163A (zh) * | 2018-01-18 | 2019-08-09 | Sap欧洲公司 | 安全子字符串搜索以过滤加密数据 |
-
2019
- 2019-10-22 CN CN201911004732.7A patent/CN110768784B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1086260C (zh) * | 1994-03-14 | 2002-06-12 | 威廉·Y·肖 | 密钥可变的加密系统 |
US6240183B1 (en) * | 1997-06-19 | 2001-05-29 | Brian E. Marchant | Security apparatus for data transmission with dynamic random encryption |
US20050156585A1 (en) * | 2004-01-15 | 2005-07-21 | Niedzwiecki Joshua D. | Reduced complexity transmission line and waveguide fault tester |
US20110311054A1 (en) * | 2010-06-18 | 2011-12-22 | Empire Technology Development Llc | Asymmetrical Chaotic Encryption |
US8345876B1 (en) * | 2012-03-06 | 2013-01-01 | Robert Samuel Sinn | Encryption/decryption system and method |
CN103684758A (zh) * | 2013-11-05 | 2014-03-26 | 广东全通教育股份有限公司 | 一种用户密码混合加密的方法及系统 |
CN104092683B (zh) * | 2014-07-04 | 2017-05-10 | 飞天诚信科技股份有限公司 | 一种pin码保护方法及系统 |
CN104811298A (zh) * | 2015-05-14 | 2015-07-29 | 中国联合网络通信集团有限公司 | 一种实现加密的方法及装置 |
CN105553647A (zh) * | 2016-02-26 | 2016-05-04 | 南京航空航天大学 | 基于非线性循环移位寄存器的轻量级流密码技术lsnr2 |
CN105825401A (zh) * | 2016-03-16 | 2016-08-03 | 广州酷旅旅行社有限公司 | 分布式多渠道团购券自动验券系统 |
CN106656471A (zh) * | 2016-12-22 | 2017-05-10 | 武汉信安珞珈科技有限公司 | 一种用户敏感信息的保护方法和系统 |
US20190123897A1 (en) * | 2017-10-19 | 2019-04-25 | Bank Of America Corporation | Method and apparatus for perfect forward secrecy using deterministic hierarchy |
CN108053213A (zh) * | 2017-12-29 | 2018-05-18 | 飞天诚信科技股份有限公司 | 一种增强无卡支付交易安全性的方法和信用卡 |
CN110110163A (zh) * | 2018-01-18 | 2019-08-09 | Sap欧洲公司 | 安全子字符串搜索以过滤加密数据 |
CN108737442A (zh) * | 2018-06-12 | 2018-11-02 | 北京多采多宜网络科技有限公司 | 一种加密校验处理方法 |
Non-Patent Citations (4)
Title |
---|
STEFAN JENISCH AND ANDREAS UHL: "A detailed evaluation of format-compliant encryption methods for JPEG XR-compressed images", 《EURASIP JOURNAL ON INFORMATION SECURITY VOLUME 2014》 * |
崔杰;张庆阳;程珂;崔仁杰;: "一种基于AES的智能手机门禁系统方案", 信息网络安全 * |
祝彦斌等: "一种Hash特征隐藏的加盐信息摘要模型", 《计算机技术与发展》 * |
谢林光: "AES算法的分析与研究", 《中国科技信息》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835734A (zh) * | 2020-06-24 | 2020-10-27 | 北京达佳互联信息技术有限公司 | 信息处理方法、装置、电子设备、服务器及存储介质 |
CN111857756A (zh) * | 2020-07-23 | 2020-10-30 | 上海世麦智能科技有限公司 | 一种基于硬件加密的安全刷机方法及系统 |
CN112055217A (zh) * | 2020-07-27 | 2020-12-08 | 西安空间无线电技术研究所 | 任意字节数据中无损搭载信息的方法 |
CN112055217B (zh) * | 2020-07-27 | 2022-05-24 | 西安空间无线电技术研究所 | 任意字节数据中无损搭载信息的方法 |
CN113961888A (zh) * | 2021-09-23 | 2022-01-21 | 统信软件技术有限公司 | 登录请求的生成方法及用于校验登录请求的信息验证方法 |
CN113961888B (zh) * | 2021-09-23 | 2022-04-01 | 统信软件技术有限公司 | 登录请求的生成方法及用于校验登录请求的信息验证方法 |
CN114978727A (zh) * | 2022-05-27 | 2022-08-30 | 中国银行股份有限公司 | 基于密码变换的业务处理方法、装置、介质及程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN110768784B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11650955B2 (en) | Systems and methods for distributed data storage and delivery using blockchain | |
CN110365670B (zh) | 黑名单共享方法、装置、计算机设备和存储介质 | |
CN110768784B (zh) | 密码传输方法、装置、计算机设备和存储介质 | |
CN109150499B (zh) | 动态加密数据的方法、装置、计算机设备和存储介质 | |
CN113364760A (zh) | 一种数据加密处理方法、装置、计算机设备及存储介质 | |
CN108512830B (zh) | 信息加密处理方法、装置、计算机设备和存储介质 | |
CN110781509B (zh) | 数据验证方法、装置、存储介质和计算机设备 | |
CN111475824B (zh) | 数据访问方法、装置、设备和存储介质 | |
CN113572743B (zh) | 数据加密、解密方法、装置、计算机设备和存储介质 | |
CN112511514A (zh) | 一种http加密传输方法、装置、计算机设备及存储介质 | |
CN113691502A (zh) | 通信方法、装置、网关服务器、客户端及存储介质 | |
CN110727949A (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN113553572A (zh) | 资源信息获取方法、装置、计算机设备和存储介质 | |
WO2017006118A1 (en) | Secure distributed encryption system and method | |
CN109871698B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111628985A (zh) | 安全访问控制方法、装置、计算机设备和存储介质 | |
CN114448722B (zh) | 跨浏览器登录方法、装置、计算机设备和存储介质 | |
US20220216999A1 (en) | Blockchain system for supporting change of plain text data included in transaction | |
CN113645183B (zh) | 数据加密传输方法、系统、计算机设备及存储介质 | |
CN110071908B (zh) | 终端绑定方法、装置、计算机设备和存储介质 | |
CN110995437B (zh) | 基于etc系统的用户信息录入方法、装置、设备和存储介质 | |
CN111294359B (zh) | 压力测试方法、装置、计算机设备和存储介质 | |
CN113158218A (zh) | 数据加密方法、装置及数据解密方法、装置 | |
CN110401535B (zh) | 数字证书生成、安全通信、身份认证方法及装置 | |
CN113343269B (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 |