CN107948213A - 一种加密认证方法、系统、装置及计算机可读存储介质 - Google Patents

一种加密认证方法、系统、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN107948213A
CN107948213A CN201810043252.0A CN201810043252A CN107948213A CN 107948213 A CN107948213 A CN 107948213A CN 201810043252 A CN201810043252 A CN 201810043252A CN 107948213 A CN107948213 A CN 107948213A
Authority
CN
China
Prior art keywords
hashed value
terminal
server
facility information
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.)
Pending
Application number
CN201810043252.0A
Other languages
English (en)
Inventor
钟英梅
王海元
邓莹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zhongdian International Information Technology Co Ltd
Original Assignee
Shenzhen Zhongdian International Information 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 Shenzhen Zhongdian International Information Technology Co Ltd filed Critical Shenzhen Zhongdian International Information Technology Co Ltd
Priority to CN201810043252.0A priority Critical patent/CN107948213A/zh
Publication of CN107948213A publication Critical patent/CN107948213A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种加密认证方法、系统、装置及计算机可读存储介质,其中所述方法包括:所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数;所述终端整合散列所述设备信息和所述随机数,生成第一散列值;所述服务端整合散列所述设备信息和所述随机数,生成第二散列值;所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证。本发明所提供方法实现了对终端或服务端的合法性进行验证,避免了设备被其他人非法访问,进而避免出现利用非法访问进一步的进行窃取、篡改和攻击等情况,对设备的安全认证极大地提高了设备的稳定性和在使用过程中数据的安全性。

Description

一种加密认证方法、系统、装置及计算机可读存储介质
技术领域
本发明涉及数据加密认证技术领域,更具体地说,涉及一种加密认证方法、系统、装置及计算机可读存储介质。
背景技术
物联网是新一代信息技术的重要组成部分,也是“信息化”时代的重要发展阶段。顾名思义,物联网就是物物相连的互联网。这有两层意思:其一,物联网的核心和基础仍然是互联网,是在互联网基础上的延伸和扩展的网络;其二,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信,也就是物物相息。
在物联网的数据传输的主体中,一般包括“服务端”及“终端”这两个角色,在双方或多方进行的数据交互过程中,设备终端与服务器之间的数据通讯过程及数据本身都是会进行加密处理的,但不会对终端或服务端的一端或多端进行合法性验证。
总之,目前在物联网数据交互过程中,不会对终端或服务端的合法性进行验证,导致设备极易被其他人非法访问,进而利用非法访问进一步的进行窃取、篡改和攻击等,无法确保源头设备的安全认证极大的降低了设备的稳定性和在使用过程中的数据的安全性。
发明内容
有鉴于此,本发明提供一种加密认证方法、系统、装置及计算机可读存储介质以解决现有技术的不足。
为实现上述目的,本发明提供一种加密认证方法,应用于终端与服务端之间,包括:
所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数;
所述终端整合散列所述设备信息和所述随机数,生成第一散列值;所述服务端整合散列所述设备信息和所述随机数,生成第二散列值;
所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证。
优选地,所述“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
基于预设加密算法,所述终端将所述第一散列值加密后发送至所述服务端;其中,所述服务端对所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行对比;
若所述第一散列值与所述第二散列值相同,则对所述终端的认证成功;
若所述第一散列值与所述第二散列值不同,则对所述终端的认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
优选地,所述“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
基于预设加密算法,所述服务端将所述第二散列值加密后发送至所述终端;其中,所述终端对所述第二散列值解密,并将解密后的所述第一散列值与所述第二散列值进行比对;
若所述第一散列值与所述第二散列值相同,则对所述服务端的认证成功;
若所述第一散列值与所述第二散列值不同,则对所述服务端的认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
优选地,所述“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
基于预设加密算法,所述终端将所述第一散列值加密后发送至所述服务端;所述服务端将所述第二散列值加密后发送至所述终端;
所述服务端对所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行对比,生成第一比对结果;所述终端将所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行比对,生成第二比对结果;
若所述第一比对结果和所述第二比对结果均为比对相同,则对所述终端和所述服务端的交叉认证成功;
若所述第一比对结果和所述第二比对结果中出现比对不相同,则对所述终端和所述服务端的交叉认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
优选地,所述预设加密算法为椭圆加密算法。
优选地,所述设备信息包括固化ID和厂商信息。
优选地,所述随机数为16字节、128位的随机数。
此外,为解决上述问题,本发明还提供一种加密认证系统,包括终端和服务端,所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数;
所述终端整合散列所述设备信息和所述随机数,生成第一散列值;所述服务端整合散列所述设备信息和所述随机数,生成第二散列值;
所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证。
此外,为解决上述问题,本发明还提供一种加密认证装置,包括终端和服务端,其中所述终端包括第一存储器及第一处理器,所述服务端包括第二存储器和第二处理器,所述第一存储器和所述第二存储器均用于存储加密认证程序,所述第一处理器和所述第二处理器均运行所述加密认证程序以使所述加密认证系统执行如上述所述加密认证方法。
此外,为解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有加密认证程序,所述加密认证程序被处理器执行时实现如上述所述加密认证方法。
本发明提供的一种加密认证方法、系统、装置及计算机可读存储介质。其中,所述方法通过终端和服务端分别将随机数和设备信息进行散列后,生成的第一散列值和第二散列值,继而根据第一散列值和第二散列值进行终端和服务端之间的认证,从而实现对终端或服务端的合法性进行验证,避免了设备被其他人非法访问,进而避免出现利用非法访问进一步的进行窃取、篡改和攻击等情况,对设备的安全认证极大地提高了设备的稳定性和在使用过程中数据的安全性。
附图说明
图1为本发明加密认证方法实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明加密认证方法第一实施例的流程示意图;
图3为本发明加密认证方法第二实施例的流程示意图;
图4为本发明加密认证方法第三实施例的流程示意图;
图5为本发明加密认证方法第四实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面详细描述本发明的实施例,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的系统的硬件运行环境的结构示意图。
本发明实施例系统可以是PC,也可以是智能手机、平板电脑、电子书阅读器、MP3播放器、MP4播放器、便携计算机等具有显示功能的可移动式终端设备。
如图1所示,该系统可以包括服务端和终端,其中任一端或多端均可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏、输入单元比如键盘、遥控器,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器,例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,所述系统的任一端或多端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。此外,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的所述装置并不构成对所述系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、数据接口控制程序、网络连接程序以及加密认证程序。
本发明提供的一种加密认证方法、装置、系统和计算机可读存储介质,其中所述方法实现了对终端或服务端的合法性进行验证,避免了设备被其他人非法访问,进而避免出现利用非法访问进一步的进行窃取、篡改和攻击等情况,对设备的安全认证极大地提高了设备的稳定性和在使用过程中数据的安全性。
实施例1:
参照图2,本发明第一实施例提供一种加密认证方法,包括:
步骤S10,所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数;
上述,本实施例中所提供的一种加密认证方法,应用于终端与服务端之间,其中,可以为服务端与终端一对一的认证,也可以为一服务端与多终端、多服务端与多终端、多服务端分别对一终端进行认证。
上述,所述设备信息可以为终端的本身硬件信息,例如可以包括但不限于可获取的硬件的型号、规格、频率、MAC地址、编号等。设备信息科代表终端本身的唯一性,即区别于其他可接入服务端的终端设备的信息。
上述,需要理解的是,随机数是专门的随机试验的结果。在统计学的不同技术中需要使用随机数,比如在从统计总体中抽取有代表性的样本的时候,或者在将实验动物分配到不同的试验组的过程中,或者在进行蒙特卡罗模拟法计算的时候等等。产生随机数有多种不同的方法。这些方法被称为随机数发生器。随机数最重要的特性是:它所产生的后面的那个数与前面的那个数毫无关系。随机数用于服务端对于终端的进一步认证。
上述,终端获取终端本身的设备信息,服务端生成与终端对应的随机数,进而终端获取到该随机数。此外,终端设备信息是可获取的,服务端同时可获取该设备信息并储存,做为进一步认证需要的信息。
步骤S20,所述终端整合散列所述设备信息和所述随机数,生成第一散列值;所述服务端整合散列所述设备信息和所述随机数,生成第二散列值;
上述,需要理解的是,Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
上述,终端将设备信息和所接受到的服务端生成的随机数进行散列处理,进而生成与设备信息和随机数对应的第一散列值。此外,服务端生成与终端对应的随机数后,保存并发送至终端,进而将保存的改随机数与服务端获取到的终端的设备信息进行整合散列处理,生成第二散列值。
步骤S30,所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证。
上述,根据第一散列值和第二散列值,进行对终端和/或服务端的认证,其中可以为对上述两个散列值进行交叉比对,或者通过进一步计算生成其他函数并进行匹配,或者将其中一个散列值进行与相关数据库的匹配等方法进行进一步的认证。
本实施例所提供的认证方法通过终端和服务端分别将随机数和设备信息进行散列后,生成的第一散列值和第二散列值,继而根据第一散列值和第二散列值进行终端和服务端之间的认证,从而实现对终端或服务端的合法性进行验证,避免了设备被其他人非法访问,进而避免了利用非法访问进一步的进行窃取、篡改和攻击等,确保源头设备的安全认证极大地提高了设备的稳定性和在使用过程中数据的安全性。
实施例2:
参照图3,本发明第二实施例提供一种加密认证方法,基于上述第一实施例,所述步骤S30“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
步骤S31,基于预设加密算法,所述终端将所述第一散列值加密后发送至所述服务端;其中,所述服务端对所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行对比;
上述,在传输过程中,可通过对传输数据的加密和解密从而实现数据交互双方或多方的信息安全。其中,加密和解密可以为对应的预设方式进行,也可以为分别以终端或服务端的固有方式进行。
上述,基于预设加密算法,终端加密第一散列值,并发送至服务端,进而服务端收到该加密信息后,对加密信息进行解密,从而得到解密的第一散列值,并可进一步对该第一散列值进行解读,该散列值包括终端的设备信息和服务端生成并发送到终端的随机数。服务端本身通过散列处理生成的第二散列值为服务端生成的没有发送到终端的随机数和从终端获取到的设备信息,进而将第一散列值与第二散列值进行对比。
若所述第一散列值与所述第二散列值相同,则对所述终端的认证成功;
上述,对第一散列值和第二散列值进行比对,如果两者的数据信息相同,则代表服务端对终端的认证通过。上述,第一散列值和第二散列值的比对结果也可以通过其他方式进行,例如建立评价机制,利用评价机制对该对比结果进行评估,若评估结果达到一定程度,则认证通过;如果评估结果达不到或为另一个不符合的值,则判定认证不通过。
若所述第一散列值与所述第二散列值不同,则对所述终端的认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
上述,如果比较后,第一散列值与第二散列值不同,则代表数据信息不对等或其他情况,即为对终端的认证失败。进一步的,返回步骤“所述终端所述终端获取设备信息并接收所述服务端生成的随机数”,重新进行认证步骤。通过在服务端对第一散列值和第二散列值的对比,从而实现对终端的认证,确定终端的唯一性和对应性,从而防止其他非法设备接入。
实施例3:
参照图4,本发明第三实施例提供一种加密认证方法,基于上述第一实施例,所述步骤S30“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
步骤S32,基于预设加密算法,所述服务端将所述第二散列值加密后发送至所述终端;其中,所述终端对所述第二散列值解密,并将解密后的所述第一散列值与所述第二散列值进行比对;
上述,服务端加密第一散列值,并发送至服务端,进而终端收到该加密信息后,对加密信息进行解密,从而得到解密的第二散列值,并可进一步对该第二散列值进行解读,该散列值包括服务端获取的设备信息和服务端生成的随机数。终端本身通过散列处理生成的第一散列值为服务端生成的发送到终端的随机数和终端的设备信息,进而将第一散列值与第二散列值进行对比。
若所述第一散列值与所述第二散列值相同,则对所述服务端的认证成功;
上述,服务端第二散列值发送到终端,从而使终端具有第一散列值和服务端发送的第二散列值,进而将第一散列值与第二散列值在终端进行对比,进行认证。在服务端对第一散列值和第二散列值进行比对,如果两者的数据信息相同,则代表终端对服务端的认证通过。
若所述第一散列值与所述第二散列值不同,则对所述服务端的认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
上述,如果在终端进行比对后,出现第一散列值和第二散列值不相同,则判定比对不通过,进而判定终端对服务端的认证不同过。本实施例通过在终端对第一散列值和第二散列值的对比,从而实现对服务单的认证,确定服务端的合法性,从而防止其他非法设备接入终端。
实施例4:
参照图5,本发明第四实施例提供一种加密认证方法,基于上述第一实施例,所述步骤S30“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
步骤S33,基于预设加密算法,所述终端将所述第一散列值加密后发送至所述服务端;所述服务端将所述第二散列值加密后发送至所述终端;
步骤S34,所述服务端对所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行对比,生成第一比对结果;所述终端将所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行比对,生成第二比对结果;
上述,在本实施例中,终端生成第一散列值,服务端生成第二散列值后,分别进行交叉认证,从而提高认证双方的进行数据交互的安全性。
上述,终端发送第一散列值至服务端,服务端将第一散列值发送至终端;此时终端和服务端分别包括本身生成的散列值和认证方生成的散列值。再发送之前,可进行针对将要发送的散列值进行加密,并通过对方以预设的方式或其他方式进行解密,以保证数据传输的安全性。
上述,终端和服务端分别对本身生成的散列值和对方发送的散列值进行比对,分别生成第一比对结果和第二比对结果。
若所述第一比对结果和所述第二比对结果均为比对相同,则对所述终端和所述服务端的交叉认证成功;
若所述第一比对结果和所述第二比对结果中出现比对不相同,则对所述终端和所述服务端的交叉认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
上述,在进行终端和服务端进行交叉认证中,如果第一比对结果和第二比对结果中,有任何一个或多个比对结果出现不相同的结果,则代表终端或服务端的数据出现不正确的情况,则终端和服务端之间的交叉认证失败。如果终端和服务端的比对结果均为相同,则证明终端与服务端的安全性通过交叉认证通过认证。
所述预设加密算法为椭圆加密算法。
所述设备信息包括固化ID和厂商信息。
所述随机数为16字节、128位的随机数。
上述,需要理解的是,椭圆加密算法(ECC)是一种公钥加密体制,最初由Koblitz和Miller两人于1985年提出,其数学基础是利用椭圆曲线上的有理点构成Abel加法群上椭圆离散对数的计算困难性。公钥密码体制根据其所依据的难题一般分为三类:大整数分解问题类、离散对数问题类、椭圆曲线类。有时也把椭圆曲线类归为离散对数类。
基于椭圆加密算法,所述终端对所述第一散列值进行加密并生成第一公钥和第一私钥;其中,所述第一公钥用于对所述第一散列值进行加密,所述第一私钥用于所述服务端接收到通过所述第一公钥加密后的所述第一散列值的解密;所述服务端对所述第二散列值进行加密,并生成第二公钥和第二私钥;其中,所述第二公钥用于对所述第二散列值进行加密,所述第二私钥用于所述终端接收到通过所述第二公钥加密后的所述第二散列值的解密。
上述,需要理解的是,设备标签芯片出厂的时候就会固化,例如RFID卡的ID号码一般都是用十六进制数字表示的,比如1A AE 80 03;每位就是4bit,总大小因协议类型,芯片厂家的不同而不同。
上述,随机数的长度为为16字节、128位的随机数。
上述,本实施例中,基于椭圆加密算法(ECC算法)对散列值进行加密和解密。在加密过程中,ECC算法会生成两个秘钥,一个为公钥一个为私钥,其中公钥用于对需要加密发送的数据进行加密,私钥用于和将该加密数据一起发送至另一端后,该端对该加密数据进行解密的秘钥。
在本发明中,认证方式可以包括以下三种,分别为:
1、服务端单独对终端进行认证;
2、终端单独对服务端进行认证;
3、服务端与终端进行交叉认证,即分别进行服务端对终端认证和终端对服务端认证,两次认证均通过后即可通过交叉认证。
例如,终端接入服务端之前,服务端单独对终端进行认证时,可以包括如下步骤:
1、终端获得终端本身的设备信息,服务端生成随机数并发至终端,终端将随机数和设备信息进行散列生成第一散列值;而服务端获取到终端的设备信息,再将生成的随机数与该设备信息进行散列生成第二散列值;
2、终端基于ECC算法,生成公钥和私钥,终端利用公钥对该第一散列值进行加密,进而将加密的第一散列值和私钥一起发送至服务端,进而服务端利用私钥对该加密的第一散列值进行解密;
3、再将解密后的第一散列值和服务端生成的第二散列值进行对比,如果二者相同,则通过认证。
再例如,终端接入服务端之前,终端单独对服务端进行认证时,可以包括如下步骤:
1、终端获得终端本身的设备信息,服务端生成随机数并发至终端,终端将随机数和设备信息进行散列生成第一散列值;而服务端获取到终端的设备信息,再将生成的随机数与该设备信息进行散列生成第二散列值;
2、服务端基于ECC算法,生成公钥和私钥,服务端利用公钥对该第二散列值进行加密,进而将加密的第二散列值和私钥一起发送至终端,进而终端利用私钥对该加密的第二散列值进行解密;
3、再将解密后的第二散列值和终端生成的第一散列值进行对比,如果二者相同,则通过认证。
再例如,终端接入服务端之前,服务端与终端进行交叉认证时,可以包括如下步骤:
1、终端获得终端本身的设备信息,服务端生成随机数并发至终端,终端将随机数和设备信息进行散列生成第一散列值;而服务端获取到终端的设备信息,再将生成的随机数与该设备信息进行散列生成第二散列值;
2、终端基于ECC算法,生成公钥和私钥,终端利用公钥对该第一散列值进行加密,进而将加密的第一散列值和私钥一起发送至服务端,进而服务端利用私钥对该加密的第一散列值进行解密;再将解密后的第一散列值和服务端生成的第二散列值进行对比,得出第一比对结果;
3、服务端基于ECC算法,生成公钥和私钥,服务端利用公钥对该第二散列值进行加密,进而将加密的第二散列值和私钥一起发送至终端,进而终端利用私钥对该加密的第二散列值进行解密;再将解密后的第二散列值和终端生成的第一散列值进行对比,得出第二比对结果;
4、如果第一比对结果和第二比对结果均为比对双方相同,则通过交叉认证。
此外,为解决上述问题,本发明还提供一种加密认证系统,包括终端和服务端,所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数;
所述终端整合散列所述设备信息和所述随机数,生成第一散列值;所述服务端整合散列所述设备信息和所述随机数,生成第二散列值;
所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证。
此外,为解决上述问题,本发明还提供一种加密认证装置,包括终端和服务端,其中所述终端包括第一存储器及第一处理器,所述服务端包括第二存储器和第二处理器,所述第一存储器和所述第二存储器均用于存储加密认证程序,所述第一处理器和所述第二处理器均运行所述加密认证程序以使所述加密认证系统执行如上述所述加密认证方法。
此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有加密认证程序,所述加密认证程序被处理器执行时实现如上述所述加密认证方法。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种加密认证方法,应用于终端与服务端之间,其特征在于,包括:
所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数;
所述终端整合散列所述设备信息和所述随机数,生成第一散列值;所述服务端整合散列所述设备信息和所述随机数,生成第二散列值;
所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证。
2.如权利要求1所述加密认证方法,其特征在于,所述“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
基于预设加密算法,所述终端将所述第一散列值加密后发送至所述服务端;其中,所述服务端对所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行对比;
若所述第一散列值与所述第二散列值相同,则对所述终端的认证成功;
若所述第一散列值与所述第二散列值不同,则对所述终端的认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
3.如权利要求1所述加密认证方法,其特征在于,所述“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
基于预设加密算法,所述服务端将所述第二散列值加密后发送至所述终端;其中,所述终端对所述第二散列值解密,并将解密后的所述第一散列值与所述第二散列值进行比对;
若所述第一散列值与所述第二散列值相同,则对所述服务端的认证成功;
若所述第一散列值与所述第二散列值不同,则对所述服务端的认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
4.如权利要求1所述加密认证方法,其特征在于,所述“所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证”,包括:
基于预设加密算法,所述终端将所述第一散列值加密后发送至所述服务端;所述服务端将所述第二散列值加密后发送至所述终端;
所述服务端对所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行对比,生成第一比对结果;所述终端将所述第一散列值解密,并将解密后的所述第一散列值与所述第二散列值进行比对,生成第二比对结果;
若所述第一比对结果和所述第二比对结果均为比对相同,则对所述终端和所述服务端的交叉认证成功;
若所述第一比对结果和所述第二比对结果中出现比对不相同,则对所述终端和所述服务端的交叉认证失败,并返回“所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数”。
5.如权利要求2-4任一项所述加密认证方法,其特征在于,所述预设加密算法为椭圆加密算法。
6.如权利要求1-4任一项所述加密认证方法,其特征在于,所述设备信息包括固化ID和厂商信息。
7.如权利要求1-4任一项所述加密认证方法,其特征在于,所述随机数为16字节、128位的随机数。
8.一种加密认证系统,包括终端和服务端,其特征在于,
所述终端获取其设备信息;所述服务端根据所述终端的所述设备信息生成随机数;
所述终端整合散列所述设备信息和所述随机数,生成第一散列值;所述服务端整合散列所述设备信息和所述随机数,生成第二散列值;
所述终端和/或所述服务端根据所述第二散列值与所述第一散列值进行加密认证。
9.一种加密认证装置,其特征在于,包括终端和服务端,其中所述终端包括第一存储器及第一处理器,所述服务端包括第二存储器和第二处理器,所述第一存储器和所述第二存储器均用于存储加密认证程序,所述第一处理器和所述第二处理器均运行所述加密认证程序以使所述加密认证系统执行如权利要求1-7中任一项所述加密认证方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有加密认证程序,所述加密认证程序被处理器执行时实现如权利要求1-7中任一项所述加密认证方法。
CN201810043252.0A 2018-01-17 2018-01-17 一种加密认证方法、系统、装置及计算机可读存储介质 Pending CN107948213A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810043252.0A CN107948213A (zh) 2018-01-17 2018-01-17 一种加密认证方法、系统、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810043252.0A CN107948213A (zh) 2018-01-17 2018-01-17 一种加密认证方法、系统、装置及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN107948213A true CN107948213A (zh) 2018-04-20

Family

ID=61937674

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810043252.0A Pending CN107948213A (zh) 2018-01-17 2018-01-17 一种加密认证方法、系统、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN107948213A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111143896A (zh) * 2019-12-19 2020-05-12 武汉瑞纳捷电子技术有限公司 一种物联网终端节点物理安全防护方法、装置及电路
CN112073421A (zh) * 2020-09-14 2020-12-11 深圳市腾讯计算机系统有限公司 通信处理方法、装置、终端及存储介质
CN112673600A (zh) * 2018-09-03 2021-04-16 爱森卡斯特株式会社 基于区块链的手机终端以及IoT设备之间的多重安全认证系统以及方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140075202A1 (en) * 2012-09-12 2014-03-13 Infosys Limited Method and system for securely accessing different services based on single sign on
CN103731756A (zh) * 2014-01-02 2014-04-16 中国科学院信息工程研究所 一种基于智能云电视网关的智能家居远程安全访问控制实现方法
CN104702408A (zh) * 2014-04-11 2015-06-10 上海智向信息科技有限公司 基于iBeacon的连接认证方法及其系统
CN104780177A (zh) * 2015-04-29 2015-07-15 西安电子科技大学 物联网感知设备云端仿真系统的信息安全保障方法
CN104796265A (zh) * 2015-05-06 2015-07-22 厦门大学 一种基于蓝牙通信接入的物联网身份认证方法
CN105184931A (zh) * 2015-09-30 2015-12-23 上海艾迅士建筑科技有限公司 一种基于蓝牙的开锁方法、系统、手持终端以及电子锁
CN105791272A (zh) * 2016-02-23 2016-07-20 青岛海尔智能家电科技有限公司 一种物联网中的安全通信方法及装置
CN106603234A (zh) * 2015-10-14 2017-04-26 阿里巴巴集团控股有限公司 一种设备身份认证的方法、装置和系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140075202A1 (en) * 2012-09-12 2014-03-13 Infosys Limited Method and system for securely accessing different services based on single sign on
CN103731756A (zh) * 2014-01-02 2014-04-16 中国科学院信息工程研究所 一种基于智能云电视网关的智能家居远程安全访问控制实现方法
CN104702408A (zh) * 2014-04-11 2015-06-10 上海智向信息科技有限公司 基于iBeacon的连接认证方法及其系统
CN104780177A (zh) * 2015-04-29 2015-07-15 西安电子科技大学 物联网感知设备云端仿真系统的信息安全保障方法
CN104796265A (zh) * 2015-05-06 2015-07-22 厦门大学 一种基于蓝牙通信接入的物联网身份认证方法
CN105184931A (zh) * 2015-09-30 2015-12-23 上海艾迅士建筑科技有限公司 一种基于蓝牙的开锁方法、系统、手持终端以及电子锁
CN106603234A (zh) * 2015-10-14 2017-04-26 阿里巴巴集团控股有限公司 一种设备身份认证的方法、装置和系统
CN105791272A (zh) * 2016-02-23 2016-07-20 青岛海尔智能家电科技有限公司 一种物联网中的安全通信方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112673600A (zh) * 2018-09-03 2021-04-16 爱森卡斯特株式会社 基于区块链的手机终端以及IoT设备之间的多重安全认证系统以及方法
CN112673600B (zh) * 2018-09-03 2023-10-03 爱森卡斯特株式会社 基于区块链的手机终端以及IoT设备之间的多重安全认证系统以及方法
CN111143896A (zh) * 2019-12-19 2020-05-12 武汉瑞纳捷电子技术有限公司 一种物联网终端节点物理安全防护方法、装置及电路
CN112073421A (zh) * 2020-09-14 2020-12-11 深圳市腾讯计算机系统有限公司 通信处理方法、装置、终端及存储介质
CN112073421B (zh) * 2020-09-14 2022-07-08 深圳市腾讯计算机系统有限公司 通信处理方法、装置、终端及存储介质

Similar Documents

Publication Publication Date Title
CN109862041B (zh) 一种数字身份认证方法、设备、装置、系统及存储介质
EP3318003B1 (en) Confidential authentication and provisioning
WO2018046009A1 (zh) 一种区块链身份系统
CN103763315B (zh) 一种应用于移动设备云存储的可信数据存取控制方法
US8984295B2 (en) Secure access to electronic devices
CN109150910A (zh) 登录令牌生成及验证方法、装置及存储介质
CN113691502B (zh) 通信方法、装置、网关服务器、客户端及存储介质
US20210051024A1 (en) Two-dimensional code generation method, apparatus, data processing method, apparatus, and server
CN109714176B (zh) 口令认证方法、装置及存储介质
Xiao et al. A lightweight authentication scheme for telecare medical information system
KR101753859B1 (ko) 서버 및 이에 의한 스마트홈 환경의 관리 방법, 스마트홈 환경의 가입 방법 및 스마트 기기와의 통신 세션 연결 방법
CN106130716A (zh) 基于认证信息的密钥交换系统及方法
CN111884811B (zh) 一种基于区块链的数据存证方法和数据存证平台
KR20150059347A (ko) 휴대 단말기, 단말기 및 보안쿠키를 이용한 인증 방법
CN101964789A (zh) 安全访问受保护资源的方法及系统
CN105450420A (zh) 基于二维码实现一次性密码验证的方法和系统
CN111695097A (zh) 登录检验方法、装置及计算机可读存储介质
CN107948213A (zh) 一种加密认证方法、系统、装置及计算机可读存储介质
CN109510711B (zh) 一种网络通信方法、服务器、客户端及系统
CN114553590A (zh) 数据传输方法及相关设备
CN114168922B (zh) 一种基于数字证书的用户ca证书生成方法和系统
CN113709115B (zh) 认证方法及装置
CN114844688A (zh) 数据传输方法、装置、设备及计算机存储介质
CN111127020B (zh) 基于区块链的交易数据混淆方法及相关设备
CN116866333A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180420

RJ01 Rejection of invention patent application after publication