CN109347835B - 信息传输方法、客户端、服务器以及计算机可读存储介质 - Google Patents

信息传输方法、客户端、服务器以及计算机可读存储介质 Download PDF

Info

Publication number
CN109347835B
CN109347835B CN201811247548.0A CN201811247548A CN109347835B CN 109347835 B CN109347835 B CN 109347835B CN 201811247548 A CN201811247548 A CN 201811247548A CN 109347835 B CN109347835 B CN 109347835B
Authority
CN
China
Prior art keywords
information
encryption
server
random number
password
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
Application number
CN201811247548.0A
Other languages
English (en)
Other versions
CN109347835A (zh
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.)
Suzhou Keda Technology Co Ltd
Original Assignee
Suzhou Keda Technology 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 Suzhou Keda Technology Co Ltd filed Critical Suzhou Keda Technology Co Ltd
Priority to CN201811247548.0A priority Critical patent/CN109347835B/zh
Publication of CN109347835A publication Critical patent/CN109347835A/zh
Application granted granted Critical
Publication of CN109347835B publication Critical patent/CN109347835B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及通信技术领域,公开了一种信息传输方法、客户端、服务器以及计算机可读存储介质,方法包括:接收用户输入的用户信息;发送第一登录请求信息至服务器;接收服务器返回的响应信息,响应信息中携带有第一加密信息,第一加密信息为对服务器生成的随机数利用加密密钥加密后得到的信息;通过加密密钥解密第一加密信息,获得随机数,加密密钥由客户端和服务器分别从各自本地端获得;对随机数和密码进行加密处理,得到第二加密信息;发送第二登录请求信息至服务器,第二登录请求信息中携带有用户名和第二加密信息。每次登录时的验证信息均不相同,可以防止重放攻击,且加密密钥无需在客户端和服务器之间进行网络交换,保证了加密密钥的安全性。

Description

信息传输方法、客户端、服务器以及计算机可读存储介质
技术领域
本发明涉及通信技术领域,具体涉及一种信息传输方法、客户端、服务器以及计算机可读存储介质。
背景技术
在视频会议领域中,身份认证过程中经常会存在安全性的问题,为了提高账号密码的安全性,传统的方法是对密码通过摘要算法进行加密之后再传输。但是,在网络窃取技术泛滥的今天,攻击者可以通过轻易地抓包获取加密后的密码,再根据彩虹表进行破解,或者不用破解,直接重放一次,即可成功绕过认证。
针对上述问题,现有技术公开号CN106533677A公开了一种用户登录方法,具体包括:首先获取用户输入的用户账号和用户密码;然后生成用户终端随机数,并对用户终端随机数进行加密;再获取服务器的服务器随机数,基于用户终端随机数、服务器随机数对用户密码进行加密后发送至服务器,同时将加密后的用户终端随机数也发送给服务器;服务器基于用户终端随机数和服务器随机数对加密后的用户密码进行解密,获得用户密码;将获得的用户密码与存储的密码进行比较,完成验证。
该现有技术虽然在一定程度上避免了用户密码被窃取,提高了安全性。但是,在信息传输过程中,需要在用户终端和服务器之间对双方随机数进行交换。具体地,为了保证随机数的安全性,其方案中引入了随机数和随机数查询号,用户终端可以将获取到的与服务器随机数对应的随机数查询号发送给服务器,服务器根据随机数查询号确定服务器随机数。但是,用户终端需要预先从CA服务器中获得服务器随机数和随机数查询号,当用户终端将随机数查询号发送给服务器后,服务器需要从CA服务器中获得与该随机数查询号对应的服务器随机数,在该信息传递的过程中依然会存在随机数以及随机数查询号被窃取的风险,身份认证的安全性依然无法得到保障。并且,上述方案中随机数的获取方式较为复杂,且需要依赖CA服务器,增加了实施难度和成本。
发明内容
有鉴于此,本发明实施例提供了一种信息传输方法、客户端、服务器以及计算机可读存储介质,以解决现有技术中身份认证过程中安全性无法得到保障的问题。
根据第一方面,本发明实施例提供了一种信息传输方法,由客户端执行,包括:
接收用户输入的用户信息,所述用户信息包括用户名和密码;
发送第一登录请求信息至服务器,所述第一登录请求信息中携带有所述用户名,其中,所述服务器在确定出所述第一登录请求信息中未携带有所述密码的情况下,返回响应信息;
接收所述服务器返回的所述响应信息,所述响应信息中携带有第一加密信息,所述第一加密信息为对所述服务器生成的随机数利用加密密钥加密后得到的信息;
通过所述加密密钥解密所述第一加密信息,获得所述随机数,所述加密密钥由所述客户端和所述服务器分别从各自本地端获得;
对所述随机数和所述密码进行加密处理,得到第二加密信息;
发送第二登录请求信息至所述服务器以供所述服务器验证,所述第二登录请求信息中携带有所述用户名和所述第二加密信息。
可选地,所述加密密钥是通过对所述密码进行加密处理后得到的;通过所述加密密钥解密所述第一加密信息,获得所述随机数的步骤之前,还包括:
通过与所述服务器相同的加密处理方式对接收到的所述密码进行加密处理,以获得所述加密密钥。
可选地,对所述随机数和密码进行加密处理,得到第二加密信息的步骤包括:
对所述密码进行加密处理,得到第一密钥信息;
对所述第一密钥信息和所述随机数的组合进行加密处理,得到第二密钥信息,将所述第二密钥信息作为所述第二加密信息。
可选地,当发送的第二登录请求信息验证通过后,还包括:
通过所述加密密钥对待发消息进行加密处理;
将加密处理后的所述待发消息发送至所述服务器。
根据第二方面,本发明实施例还提供了一种信息传输方法,由服务器执行,包括:
接收客户端发送的第一登录请求信息,所述第一登录请求信息中携带有用户名;
当确定出所述第一登录请求信息中未携带密码时,生成随机数;
通过加密密钥对所述随机数进行加密后,得到第一加密信息;
发送响应信息至所述客户端,所述响应信息中携带有所述第一加密信息;
接收所述客户端发送的第二登录请求信息,所述第二登录请求信息中携带有所述用户名和第二加密信息,所述第二加密信息为所述客户端对所述随机数和密码加密后得到的信息;
通过与所述客户端相同的加密处理方式对所述服务器生成的所述随机数,以及所述服务器存储的与所述用户名对应的密码进行加密处理,得到第三加密信息;
根据所述第二加密信息和所述第三加密信息是否一致,来判断是否通过验证。
根据第三方面,本发明实施例提供了一种信息传输客户端,包括:
第一接收单元,用于接收用户输入的用户信息,所述用户信息包括用户名和密码;
第一发送单元,用于发送第一登录请求信息至服务器,所述第一登录请求信息中携带有所述用户名,其中,所述服务器在确定出所述第一登录请求信息中未携带有所述密码的情况下,返回响应信息;
第二接收单元,用于接收所述服务器返回的所述响应信息,所述响应信息中携带有第一加密信息,所述第一加密信息为对所述服务器生成的随机数利用加密密钥加密后得到的信息;
第一解密单元,用于通过所述加密密钥解密所述第一加密信息,获得所述随机数,所述加密密钥由所述客户端和所述服务器分别从各自本地端获得;
第一加密单元,用于对所述随机数和密码进行加密处理,得到第二加密信息;
第二发送单元,用于发送第二登录请求信息至所述服务器以供所述服务器验证,所述第二登录请求信息中携带有所述用户名和所述第二加密信息。
根据第四方面,本发明实施例提供了一种服务器,包括:
第三接收单元,用于接收客户端发送的第一登录请求信息,所述第一登录请求信息中携带有用户名;
随机数生成单元,用于当确定出所述第一登录请求信息中未携带密码时,生成随机数;
第二加密单元,用于通过加密密钥对所述随机数进行加密后,得到第一加密信息;
第三发送单元,用于发送响应信息至所述客户端,所述响应信息中携带有所述第一加密信息;
第四接收单元,用于接收所述客户端发送的第二登录请求信息,所述第二登录请求信息中携带有所述用户名和第二加密信息,所述第二加密信息为所述客户端对所述随机数和密码加密后得到的信息;
第三加密单元,用于通过与所述客户端相同的加密处理方式对所述服务器生成的所述随机数,以及所述服务器存储的与所述用户名对应的密码进行加密处理,得到第三加密信息;
验证单元,用于根据所述第二加密信息和所述第三加密信息是否一致,来判断是否通过验证。
根据第五方面,本发明实施例提供了一种终端,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行第一方面所提供的信息传输方法。
根据第六方面,本发明实施例提供了一种服务器,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行第二方面所提供的信息传输方法。
根据第七方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行第一方面所提供的信息传输方法或者执行第二方面所提供的信息传输方法。
本发明实施例提供的技术方案,具有以下优点:
本发明实施例提供的信息传输方法,首先接收用户输入的用户信息,其中,用户信息包括用户名和密码;然后发送登录请求信息至服务器,其中,登录请求信息中携带用户名;接收服务器返回的第一次响应信息,其中,第一次响应信息中携带第一加密信息,第一加密信息是经加密密钥加密后的服务器生成的随机数;通过加密密钥解密第一加密信息,获得随机数,其中,加密密钥由终端和服务器分别从各自本地端获得;对随机数和密码进行加密处理,得到第二加密信息;再次发送登录请求信息至服务器以供服务器验证,登录请求信息中携带有用户名和第二加密信息。
上述信息传输方法中,发送第一次登录请求信息时,仅携带用户名,当后续获取到服务器发送的随机数后,再携带随机数和密码的加密信息以及用户名发送第二次登录请求信息,以供服务器验证。由此保证了每次登录时的验证信息均不相同,可以防止重放攻击。同时,由于第一次登录请求信息中不携带密码,因此第一次登录时不存在密码被窃取的风险。
对比文件中存在两种随机数(即客户端随机数和服务器随机数),在登录之前终端需要生成终端随机数,并且从CA服务器获取服务器随机数,之后需要将终端随机数的加密信息发送给服务器,同时服务器需要从CA服务器获取到与终端相同的服务器随机数。整个过程相当复杂,并且需要引入CA服务器,成本较高。CA服务器在将服务器随机数发送给服务器或终端的过程中,存在较高的被窃取风险。而本申请中是在发送不携带密码的第一次登录请求之后,由服务器侧直接生成随机数,并经加密后发送给客户端,无需在网络上对随机数进行其他的传输,降低了随机数网络传输的次数,降低了其被窃取的风险,并且易实施。
另外,用于对随机数加解密的加密密钥是由客户端和服务器分别从各自本地端获得的,即,客户端可以从客户端侧获得该加密密钥,服务器可以从服务器侧获得该加密密钥。由此使得加密密钥无需在终端和服务器之间进行网络交换,保证了加密密钥的安全性,进而防止随机数被窃取,为登录信息的安全性进一步提供了保障。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明第一方面提供的信息传输方法的流程框图;
图2是根据本发明第一方面提供的信息传输方法中的步骤S15的流程框图;
图3是根据本发明第一方面提供的信息传输方法的流程框图;
图4是根据本发明第二方面提供的信息传输方法的流程框图;
图5是根据本发明第三方面提供的信息传输客户端的结构示意图;
图6是根据本发明第四方面提供的服务器的结构示意图;
图7是根据本发明第五方面提供的终端的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
根据第一方面,本发明实施例提供了一种信息传输方法,用于服务器和客户端之间的信息传输,其中客户端可以是软件客户端,也可以是终端。本实施例中以客户端为执行主体,如图1所示,包括以下步骤:
步骤S11、接收用户输入的用户信息,用户信息包括用户名和密码。
登录之前,用户首先需要在客户端的输入端输入登录信息即用户信息,包括用户名和密码,客户端获取到用户名和密码后,存储在本地,以备后续登录时调用。
步骤S12、发送第一登录请求信息至服务器,第一登录请求信息中携带有用户名,其中,服务器在确定出第一登录请求信息中未携带有密码的情况下,返回响应信息。
当客户端在发送第一次登录请求信息时,实际是不携带密码的,仅携带用户名。在后续登录请求信息时,才会携带密码相关的信息。当登录请求信息中携带有密码相关信息时,服务器无需返回响应信息。因此,当服务器接收到登录请求信息时,首先需要对登录请求信息中是否携带有密码进行判断,只有在确定出登录请求信息中不携带有密码相关信息时,才会返回响应信息。
另外,在执行步骤S12之前,客户端首先需要与服务器建立TCP连接。
步骤S13、接收服务器返回的响应信息,响应信息中携带有第一加密信息,第一加密信息为对服务器生成的随机数利用加密密钥加密后得到的信息。
当服务器接收到客户端第一次发送的登录请求信息之后,且确定该登录请求信息中不含有密码时,服务器会生成一随机数,并且通过加密密钥对该随机数进行加密处理,以形成第一加密信息。第一加密信息被携带于服务器的响应信息中,传递给客户端。
需要说明的是,服务器生成随机数之后,会建立该生成的随机数与当前接收到的用户名之间的对应关系并存储于服务器侧,这样在后续的认证过程中,服务器侧可以依据用户名迅速找到与之对应的随机数,便于认证。
本实施例中,可以采用AES加密算法或DES加密算法对随机数进行加密处理。也可以采用其他能够实现相同功能的加密算法对随机数进行加密处理,在此不做具体限制。
步骤S14、通过加密密钥解密第一加密信息,获得随机数,加密密钥由客户端和服务器分别从各自本地端获得。
当客户端接收到服务器发送过来的第一加密信息之后,首先从终端侧获取得到加密密钥,然后通过与服务器对应的加密算法对第一加密信息进行解密,获取得到随机数。例如,服务器采用AES256加密算法对随机数进行加密处理,得到第一加密信息,则客户端也采用AES256加密算法对第一加密信息进行解密处理,得到随机数。
需要说明的是,服务器和客户端所用到的加密密钥一致,且均是从各自本地端获取得到。即,服务器从服务器侧获取得到该加密密钥,客户端从客户端侧获取得到该加密密钥。由此使得加密密钥无需在客户端和服务器之间进行网络交换,保证了加密密钥的安全性,进而防止随机数被窃取,为登录信息的安全性进一步提供了保障。
作为一种可选实施方式,本实施例中,加密密钥是通过对密码进行加密处理之后得到的。在此需要说明的是,用户在登录之前需要先注册,服务器会将用户名、密码等注册信息存储在侧,对密码进行加密之后再进行存储,加密后的密码即可作为本实施例中服务器用于加密随机数时的加密密钥。
优选地,本实施例中采用哈希算法对密码进行加密,服务器侧存储的为密码的摘要值。其中,哈希算法可以为MD5算法,也可以为SHA算法。在实际应用时,可以直接以服务器存储的密码摘要值作为加密密钥,也可以对已有的密码摘要值进行二次哈希运算,以二次哈希运算的结果作为加密密钥。
服务器接收到客户端发送的第一次登录请求信息时,首先根据接收到的用户名,确定数据库中存储的与之对应的密码摘要值,以该密码摘要值,或者以对该加密摘要值进行二次摘要运算后的结果作为加密密钥,并结合加密算法对生成的随机数进行加密。
相应的,本实施例中,在执行步骤S14之前,还包括:通过与服务器相同的加密处理方式对接收到的密码进行加密处理,以获得加密密钥。
对于客户端而言,由于步骤S11中已经接收到了用户输入的密码,因此可以直接通过与服务器相同的加密处理方式对密码进行加密处理,进而获得与服务器相同的加密密钥。例如,服务器是采用哈希算法对密码进行加密的,并以运算得到的密码的摘要值作为加密密钥,那么终端则也采用哈希算法对密码进行加密运算,进而获得密码的摘要值,并以此作为加密密钥对随机数进行解密。
步骤S15、对随机数和密码进行加密处理,得到第二加密信息。
步骤S16、发送第二登录请求信息至服务器以供服务器验证,第二登录请求信息中携带有用户名和第二加密信息。
当客户端获取到随机数明文之后,首先对随机数和密码进行加密处理,以形成第二加密信息,再将第二加密信息携带于第二次登录请求信息中传输至服务器,以供服务器验证。由此可避免密码泄露,提高验证信息的安全性。
其中,对随机数和密码的加密处理方式可以有多种,可以首先对随机数和密码进行分别加密,再对两者加密后的信息进行整体加密,;也可以首先对密码进行加密,再对随机数以及加密后的密码进行整体加密,还可以通过其他的加密处理方式进行加密,在此不做具体限定。
作为一种优选实施方式,本实施例中,如图2所示,步骤S15包括以下步骤:
步骤S151、对密码进行加密处理,得到第一密钥信息。
步骤S152、对第一密钥信息和随机数的组合进行加密处理,得到第二密钥信息,将第二密钥信息作为第二加密信息。
由于服务器侧存储的是密码的摘要值,因此,为了便于后续服务器验证,步骤S151中是对密码进行哈希运算,得到密码的摘要值,以密码的摘要值作为第一密钥信息。步骤S152则是对密码的摘要值以及随机数的组合进行再次加密,得到第二密钥信息,以第二密钥信息作为第二加密信息。由此对密码进行了多种加密保护,有效提高其安全性。其中,步骤S152中采用的加密算法优选为哈希算法。
当客户端将第二加密信息和用户名携带于第二次登录请求信息中,传输至服务器后,服务器根据用户名确定数据库中与之对应的密码摘要,由于服务器侧预先存储有随机数与用户名之间的对应关系,因此,服务器可以根据用户名确定与之对应的随机数,进而对密码摘要以及随机数的组合进行加密处理,加密处理方式与步骤S152中的加密处理方式相同,将加密后得到的结果与接收到的第二加密信息进行比对,若一致,则验证通过,若不一致,则验证失败。由于终端和服务器均可以在各自端分别获得密码摘要,无需进行网络交换,因此提高了信息安全性。
上述信息传输方法中,发送第一次登录请求信息时,仅携带用户名,当后续获取到服务器发送的随机数后,再携带随机数和密码的加密信息以及用户名发送第二次登录请求信息,以供服务器验证。由此,保证了每次登录时的验证信息均不相同,可以防止重放攻击。
服务器端生成的随机数经过加密密钥加密之后,形成第一加密信息后,再被携带于第一响应信息中发送至客户端,保证了随机数的传输安全性,防止客户端接收到的随机数被窃取。
另外,用于对随机数加解密的加密密钥是由客户端和服务器分别从各自本地端获得的,即,客户端可以从客户端侧获得该加密密钥,服务器可以从服务器侧获得该加密密钥。由此使得加密密钥无需在客户端和服务器之间进行网络交换,保证了加密密钥的安全性,进而防止随机数被窃取,为登录信息的安全性进一步提供了保障。
本实施例中,当发送的第二登录请求信息验证通过之后,如图3所示,还包括:
步骤S17、通过所述加密密钥对待发消息进行加密处理。
步骤S18、将加密处理后的所述待发消息发送至所述服务器。
以密码的二次摘要值作为加密密钥为例,客户端结合加密密钥以及加密算法对待发消息进行加密处理后,再发送给服务器。其中,加密算法可以为AES算法或DEA算法,对密码的摘要运算可以采用MD5或SHA算法。
当服务器收到客户端发送的加密消息后,对存储的密码摘要值进行二次摘要运算,进而获得加密密钥,服务器结合该加密密钥以及与客户端相同的加密算法对接收到的加密消息进行解密,进而得到消息明文。
同样地,服务器向客户端发送消息时,也可以采用上述加密方法对消息进行事先加密,以保证信息安全。由于加密密钥无需网络交换,因此减小了被窃取的可能。
根据第二方面,本发明实施例还提供了一种信息传输方法,用于服务器和客户端之间的信息传输,本实施例中以服务器为执行主体,如图4所示,包括以下步骤:
步骤S21、接收客户端发送的第一登录请求信息,第一登录请求信息中携带有用户名。
步骤S22、当确定出所述第一登录请求信息中未携带密码时,生成随机数。具体描述请参见上一实施例,在此不再赘述。
当确定出第一登录请求信息中携带有密码时,则直接进行验证。
步骤S23、通过加密密钥对随机数进行加密后,得到第一加密信息。
作为一种优选实施方式,本实施例中,加密密钥是通过对密码进行加密处理之后得到的。在此需要说明的是,用户在登录之前需要先注册,服务器会将用户名、密码等注册信息存储在侧,对密码进行加密之后再进行存储,加密后的密码即可作为本实施例中服务器用于加密随机数的加密密钥。
优选地,本实施例中采用哈希算法对密码进行加密,服务器存储的为密码的摘要值。其中,哈希算法可以为MD5算法,也可以为SHA算法。在实际应用时,首先根据接收到的用户名确定服务器中存储的密码摘要值,可以直接以存储的密码摘要值作为加密密钥,也可以对已有的密码摘要值进行二次哈希运算,以二次哈希运算的结果作为加密密钥。
步骤S24、发送响应信息至客户端,响应信息中携带有第一加密信息。
由于用户在登录时,会在客户端输入密码,因此当客户端收到第一加密信息后,以与服务器侧同样的加密处理方式对密码进行加密处理,进而得到加密密钥,通过加密密钥对第一加密信息进行解密,得到随机数明文。
步骤S25、接收客户端发送的第二登录请求信息,第二登录请求信息中携带有用户名和第二加密信息,第二加密信息为客户端对随机数和密码加密后得到的信息。此处请参见第一方面提供的信息传输方法中的步骤S15的描述,在此不再赘述。
步骤S26、通过与客户端相同的加密处理方式对服务器生成的随机数,以及服务器存储的与用户名对应的密码进行加密处理,得到第三加密信息。
需要说明的是,服务器中存储的是密码的摘要值,而非密码明文。当服务器接收到客户端发送的第二登录请求信息时,首先根据用户名确定数据库中与之对应的密码摘要以及随机数,然后对该密码摘要以及随机数的组合,进行加密处理,加密处理方式与客户端的加密处理方式相同,进而得到第三加密信息。
步骤S27、根据第二加密信息和第三加密信息是否一致,来判断是否通过验证。
当第二加密信息和第三加密信息一致,则验证通过,否则验证失败。
根据第三方面,本发明实施例还提供了一种信息传输客户端,如图5所示,包括第一接收单元31、第一发送单元32、第二接收单元33、第一解密单元34、第一加密单元35以及第二发送单元36。其中,
第一接收单元31用于接收用户输入的用户信息,用户信息包括用户名和密码;
第一发送单元32用于发送第一登录请求信息至服务器,第一登录请求信息中携带有用户名,其中,服务器在确定出第一登录请求信息中未携带有密码的情况下,返回响应信息;
第二接收单元33用于接收服务器返回的响应信息,响应信息中携带有第一加密信息,第一加密信息为对服务器生成的随机数利用加密密钥加密后得到的信息;
第一解密单元34用于通过加密密钥解密第一加密信息,获得随机数,所述加密密钥由客户端和服务器分别从各自本地端获得;
第一加密单元35用于对所述随机数和密码进行加密处理,得到第二加密信息;
第二发送单元36用于发送第二登录请求信息至服务器以供服务器验证,第二登录请求信息中携带有用户名和第二加密信息。
具体内容可参见第一方面所提供的信息传输方法中的相关描述,在此不再赘述。
根据第四方面,本发明实施例还提供了一种服务器,如图6所示,包括第三接收单元41、随机数生成单元42、第二加密单元43、第三发送单元44、第四接收单元45、第三加密单元46以及验证单元47。其中,
第三接收单元41用于接收客户端发送的第一登录请求信息,第一登录请求信息中携带有用户名;
随机数生成单元42用于当确定出第一登录请求信息中未携带密码时,生成随机数;
第二加密单元43用于通过加密密钥对随机数进行加密后,得到第一加密信息;
第三发送单元44用于发送响应信息至客户端,响应信息中携带有第一加密信息;
第四接收单元45用于接收客户端发送的第二登录请求信息,登录请求信息中携带有用户名和第二加密信息,第二加密信息为客户端对随机数和密码加密后得到的信息;
第三加密单元46用于通过与客户端相同的加密处理方式对服务器生成的随机数,以及服务器存储的与用户名对应的密码进行加密处理,得到第三加密信息;
验证单元47用于根据第二加密信息和第三加密信息是否一致,来判断是否验证通过。
具体内容可参见第二方面所提供的信息传输方法中的相关描述,在此不再赘述。
根据第五方面,本发明实施例还提供了一种终端,如图7所示,包括处理器51和存储器52,其中处理器51和存储器52可以通过总线或者其他方式连接,图7中以通过总线连接为例。
处理器51可以为中央处理器(Central Processing Unit,CPU)。处理器51还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器52作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的信息传输方法对应的程序指令/模块。处理器51通过运行存储在存储器52中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的信息传输方法。
存储器52可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器51所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器52可选包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至处理器51。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器52中,当被所述处理器51执行时,执行如图1-3所示实施例中的信息传输方法。
上述终端具体细节可以对应参阅图1至图3所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
根据第六方面,本发明实施例还提供了一种服务器,包括存储器和处理器,相关描述请参见本发明第五方面所提供的终端的描述。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random AccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

Claims (9)

1.一种信息传输方法,其特征在于,由客户端执行,包括:
接收用户输入的用户信息,所述用户信息包括用户名和密码;
发送第一登录请求信息至服务器,所述第一登录请求信息中携带有所述用户名,其中,所述服务器在确定出所述第一登录请求信息中未携带有所述密码的情况下,返回响应信息;
接收所述服务器返回的所述响应信息,所述响应信息中携带有第一加密信息,所述第一加密信息为对所述服务器生成的随机数利用加密密钥加密后得到的信息;
通过所述加密密钥解密所述第一加密信息,获得所述随机数,所述加密密钥由所述客户端和所述服务器分别从各自本地端获得;
对所述随机数和所述密码进行加密处理,得到第二加密信息;
发送第二登录请求信息至所述服务器以供所述服务器验证,所述第二登录请求信息中携带有所述用户名和所述第二加密信息;
所述加密密钥是通过对所述密码进行加密处理后得到的;通过所述加密密钥解密所述第一加密信息,获得所述随机数的步骤之前,还包括:
通过与所述服务器相同的加密处理方式对接收到的所述密码进行加密处理,以获得所述加密密钥。
2.根据权利要求1所述的信息传输方法,其特征在于,对所述随机数和密码进行加密处理,得到第二加密信息的步骤包括:
对所述密码进行加密处理,得到第一密钥信息;
对所述第一密钥信息和所述随机数的组合进行加密处理,得到第二密钥信息,将所述第二密钥信息作为所述第二加密信息。
3.根据权利要求1所述的信息传输方法,其特征在于,当发送的第二登录请求信息验证通过后,还包括:
通过所述加密密钥对待发消息进行加密处理;
将加密处理后的所述待发消息发送至所述服务器。
4.一种信息传输方法,其特征在于,由服务器执行,包括:
接收客户端发送的第一登录请求信息,所述第一登录请求信息中携带有用户名;
当确定出所述第一登录请求信息中未携带密码时,生成随机数;
通过加密密钥对所述随机数进行加密后,得到第一加密信息;
发送响应信息至所述客户端,所述响应信息中携带有所述第一加密信息;
接收所述客户端发送的第二登录请求信息,所述第二登录请求信息中携带有所述用户名和第二加密信息,所述第二加密信息为所述客户端对所述随机数和密码加密后得到的信息;其中,所述随机数是由客户端通过所述加密密钥对第一加密信息进行解密得到的,所述加密密钥是客户端通过与所述服务器相同的加密处理方式对所述密码进行加密处理得到的,所述加密密钥由所述客户端和所述服务器分别从各自本地端获得;
通过与所述客户端相同的加密处理方式对所述服务器生成的所述随机数,以及所述服务器存储的与所述用户名对应的密码进行加密处理,得到第三加密信息;
根据所述第二加密信息和所述第三加密信息是否一致,来判断是否通过验证。
5.一种信息传输客户端,其特征在于,包括:
第一接收单元,用于接收用户输入的用户信息,所述用户信息包括用户名和密码;
第一发送单元,用于发送第一登录请求信息至服务器,所述第一登录请求信息中携带有所述用户名,其中,所述服务器在确定出所述第一登录请求信息中未携带有所述密码的情况下,返回响应信息;
第二接收单元,用于接收所述服务器返回的所述响应信息,所述响应信息中携带有第一加密信息,所述第一加密信息为对所述服务器生成的随机数利用加密密钥加密后得到的信息;
第一解密单元,用于通过所述加密密钥解密所述第一加密信息,获得所述随机数,所述加密密钥由客户端和所述服务器分别从各自本地端获得;
第一加密单元,用于对所述随机数和密码进行加密处理,得到第二加密信息;
第二发送单元,用于发送第二登录请求信息至所述服务器以供所述服务器验证,所述第二登录请求信息中携带有所述用户名和所述第二加密信息;
所述信息传输客户端,还用于:
所述加密密钥是通过对所述密码进行加密处理后得到的;通过所述加密密钥解密所述第一加密信息,获得所述随机数的步骤之前,还包括:
通过与所述服务器相同的加密处理方式对接收到的所述密码进行加密处理,以获得所述加密密钥。
6.一种服务器,其特征在于,包括:
第三接收单元,用于接收客户端发送的第一登录请求信息,所述第一登录请求信息中携带有用户名;
随机数生成单元,用于当确定出所述第一登录请求信息中未携带密码时,生成随机数;
第二加密单元,用于通过加密密钥对所述随机数进行加密后,得到第一加密信息;
第三发送单元,用于发送响应信息至所述客户端,所述响应信息中携带有所述第一加密信息;
第四接收单元,用于接收所述客户端发送的第二登录请求信息,所述第二登录请求信息中携带有所述用户名和第二加密信息,所述第二加密信息为所述客户端对所述随机数和密码加密后得到的信息;其中,所述随机数是由客户端通过所述加密密钥对第一加密信息进行解密得到的,所述加密密钥是客户端通过与所述服务器相同的加密处理方式对所述密码进行加密处理得到的,所述加密密钥由所述客户端和所述服务器分别从各自本地端获得;
第三加密单元,用于通过与所述客户端相同的加密处理方式对所述服务器生成的所述随机数,以及所述服务器存储的与所述用户名对应的密码进行加密处理,得到第三加密信息;
验证单元,用于根据所述第二加密信息和所述第三加密信息是否一致,来判断是否通过验证。
7.一种终端,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1-3任一项所述的信息传输方法。
8.一种服务器,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求4所述的信息传输方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行权利要求1-3任一项所述的信息传输方法或者执行权利要求4所述的信息传输方法。
CN201811247548.0A 2018-10-24 2018-10-24 信息传输方法、客户端、服务器以及计算机可读存储介质 Active CN109347835B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811247548.0A CN109347835B (zh) 2018-10-24 2018-10-24 信息传输方法、客户端、服务器以及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811247548.0A CN109347835B (zh) 2018-10-24 2018-10-24 信息传输方法、客户端、服务器以及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN109347835A CN109347835A (zh) 2019-02-15
CN109347835B true CN109347835B (zh) 2021-09-07

Family

ID=65311658

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811247548.0A Active CN109347835B (zh) 2018-10-24 2018-10-24 信息传输方法、客户端、服务器以及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN109347835B (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110224999B (zh) * 2019-05-20 2022-02-18 深圳壹账通智能科技有限公司 信息交互方法、装置及存储介质
CN110266480B (zh) * 2019-06-13 2022-05-20 腾讯科技(深圳)有限公司 数据传输方法、装置及存储介质
US20200403978A1 (en) * 2019-06-19 2020-12-24 Amazon Technologies, Inc. Hybrid key exchanges for double-hulled encryption
CN110276000B (zh) * 2019-06-19 2023-09-26 腾讯科技(深圳)有限公司 媒体资源的获取方法和装置、存储介质及电子装置
CN110336666B (zh) * 2019-07-17 2022-08-05 武汉信安珞珈科技有限公司 一种增强ssl/tls协议中随机数随机性的方法
CN110535856B (zh) * 2019-08-28 2022-04-26 视联动力信息技术股份有限公司 一种用户的认证方法、装置和存储介质
CN110545543A (zh) * 2019-09-03 2019-12-06 南瑞集团有限公司 一种无线设备的认证方法、装置及系统
CN111901287B (zh) * 2019-10-22 2022-12-23 刘高峰 一种为轻应用提供加密信息的方法、装置和智能设备
CN110912689A (zh) * 2019-10-30 2020-03-24 苏州科达科技股份有限公司 一种唯一值的生成、验证方法及系统
CN110958249B (zh) * 2019-12-03 2022-07-19 望海康信(北京)科技股份公司 信息处理方法、装置、电子设备及存储介质
CN111163164B (zh) * 2019-12-27 2022-09-13 山东乾云启创信息科技股份有限公司 一种基于鲲鹏芯片的云桌面安全传输方法及装置
CN114238906A (zh) * 2020-06-19 2022-03-25 支付宝(杭州)信息技术有限公司 活体认证方法、系统及计算机设备
CN114221774A (zh) * 2020-09-04 2022-03-22 中兴通讯股份有限公司 鉴权方法、服务器、终端设备及存储介质
CN112230889A (zh) * 2020-10-16 2021-01-15 湖南皖湘科技有限公司 一种制作软件开发编码规范的方法
CN112333199B (zh) * 2020-11-17 2023-04-21 珠海大横琴科技发展有限公司 一种数据处理的方法和装置
CN112784250B (zh) * 2021-01-27 2024-04-23 深圳融安网络科技有限公司 身份认证方法、客户端、服务器及存储介质
CN112966286B (zh) * 2021-03-30 2023-01-24 中国建设银行股份有限公司 用户登录的方法、系统、设备和计算机可读介质
CN113434865A (zh) * 2021-06-29 2021-09-24 平安普惠企业管理有限公司 一种用于移动端的安全检测方法、装置、设备及存储介质
CN113411347B (zh) * 2021-06-30 2023-02-28 中国农业银行股份有限公司 交易报文的处理方法及处理装置
CN114745173B (zh) * 2022-04-08 2023-04-25 湖南长银五八消费金融股份有限公司 登陆验证方法、装置、计算机设备和存储介质
CN115086062B (zh) * 2022-06-30 2023-08-11 三一电动车科技有限公司 远程安全控制方法及系统、装置、车辆
CN115622794B (zh) * 2022-11-15 2023-04-07 北京密码云芯科技有限公司 一种加解密方法、装置、设备以及存储介质
CN115941204B (zh) * 2022-12-06 2024-04-12 镁佳(北京)科技有限公司 一种基于hse的数据防重放方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1567294A (zh) * 2003-06-14 2005-01-19 华为技术有限公司 一种对用户进行认证的方法
CN101771540A (zh) * 2008-12-29 2010-07-07 中国移动通信集团公司 一种用户认证方法及装置和系统
CN102316120A (zh) * 2011-10-17 2012-01-11 北京信息科技大学 基于网络隐私保护的动态密码锁
CN102611597A (zh) * 2012-04-10 2012-07-25 中山爱科数字家庭产业孵化基地有限公司 一种在不同家庭环境中免输入账号和密码的宽带上网方法
CN103716334A (zh) * 2014-01-13 2014-04-09 深圳市共进电子股份有限公司 基于802.1x协议的认证方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9106426B2 (en) * 2008-11-26 2015-08-11 Red Hat, Inc. Username based authentication and key generation
CN103701787A (zh) * 2013-12-19 2014-04-02 上海格尔软件股份有限公司 一种基于公开密钥算法实现的用户名口令认证方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1567294A (zh) * 2003-06-14 2005-01-19 华为技术有限公司 一种对用户进行认证的方法
CN101771540A (zh) * 2008-12-29 2010-07-07 中国移动通信集团公司 一种用户认证方法及装置和系统
CN102316120A (zh) * 2011-10-17 2012-01-11 北京信息科技大学 基于网络隐私保护的动态密码锁
CN102611597A (zh) * 2012-04-10 2012-07-25 中山爱科数字家庭产业孵化基地有限公司 一种在不同家庭环境中免输入账号和密码的宽带上网方法
CN103716334A (zh) * 2014-01-13 2014-04-09 深圳市共进电子股份有限公司 基于802.1x协议的认证方法及系统

Also Published As

Publication number Publication date
CN109347835A (zh) 2019-02-15

Similar Documents

Publication Publication Date Title
CN109347835B (zh) 信息传输方法、客户端、服务器以及计算机可读存储介质
US11757662B2 (en) Confidential authentication and provisioning
CN109088889B (zh) 一种ssl加解密方法、系统及计算机可读存储介质
CN110380852B (zh) 双向认证方法及通信系统
US9887838B2 (en) Method and device for secure communications over a network using a hardware security engine
CN113225352B (zh) 一种数据传输方法、装置、电子设备及存储介质
CN108809633B (zh) 一种身份认证的方法、装置及系统
CN110958209B (zh) 基于共享密钥的双向认证方法及系统、终端
CN110868291B (zh) 一种数据加密传输方法、装置、系统及存储介质
CN107920052B (zh) 一种加密方法及智能装置
US9942042B1 (en) Key containers for securely asserting user authentication
US20190268145A1 (en) Systems and Methods for Authenticating Communications Using a Single Message Exchange and Symmetric Key
CN109347813B (zh) 物联网设备登录方法、系统、计算机设备和存储介质
WO2022213760A1 (zh) 一种信息传输方法、存储介质及电子设备
US20210392004A1 (en) Apparatus and method for authenticating device based on certificate using physical unclonable function
CN113411187A (zh) 身份认证方法和系统、存储介质及处理器
CN114244508A (zh) 数据加密方法、装置、设备及存储介质
CN110690969A (zh) 一种多方协同完成双向ssl/tls认证的方法和系统
CN110839240B (zh) 一种建立连接的方法及装置
CN117081736A (zh) 密钥分发方法、密钥分发装置、通信方法及通信装置
CN110912857B (zh) 移动应用间共享登录的方法、存储介质
CN116743372A (zh) 基于ssl协议的量子安全协议实现方法及系统
CN114785527B (zh) 数据传输方法、装置、设备及存储介质
CN107682380B (zh) 一种交叉认证的方法及装置
CN114553557B (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