CN115766281A - 防重放攻击方法、系统、电子设备及存储介质 - Google Patents
防重放攻击方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115766281A CN115766281A CN202211583928.8A CN202211583928A CN115766281A CN 115766281 A CN115766281 A CN 115766281A CN 202211583928 A CN202211583928 A CN 202211583928A CN 115766281 A CN115766281 A CN 115766281A
- Authority
- CN
- China
- Prior art keywords
- information
- internet
- replay
- client
- serial number
- 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
Landscapes
- Computer And Data Communications (AREA)
Abstract
本申请提供一种防重放攻击方法、系统、电子设备及存储介质,该方法包括:基于物联网设备的设备信息,向服务端发送用于请求获取防重放序列号的第一请求;设备信息能够被服务端用于确定物联网设备唯一关联的第一策略信息,第一策略信息包含物联网设备的防重放序列号生成策略;获取服务端基于第一策略信息生成的第一序列号;向物联网设备发送第一序列号和操作信息;其中,第一序列号能够被物联网设备用于基于第一策略信息检测重放攻击行为;操作信息能够被物联网设备用于在重放攻击行为检测通过的情况下执行目标操作。系统架构简单,有利于物联网设备和客户端实现数据轻量化,且有益于降低检测错误的出现概率。此外,还具有较高的安全性。
Description
技术领域
本申请涉及数字信息安全技术领域,特别涉及一种防重放攻击方法、装置、电子设备及存储介质。
背景技术
重放攻击(Replay Attacks)又称重播攻击或回放攻击,是指攻击者发送一个目标系统已接收过的包,来达到欺骗目标系统的目的,主要用于身份认证过程,破坏认证的正确性。重放攻击可以由发起者实施,也可以由攻击者利用网络监听或者其他方式盗取认证凭证,之后将相同的认证凭证发送至目标系统,以完成身份认证。重放攻击在任何网络通信过程中都可能发生,是计算机世界黑客常用的攻击方式之一。
常规的防重放攻击方法通常是在客户端和服务端执行防重放验证,但在物联网设备飞速发展的背景下,多种终端设备控制同一台物联网设备已成为常态,如果物联网终端分别与各个终端设备搭建验证体系,不仅系统框架复杂、数据量较大,且容易出现验证错误。
发明内容
有鉴于现有技术中存在的上述问题,本申请提供了一种防重放攻击方法、装置、电子设备及计算机可读存储介质,本申请采用的技术方案如下。
本申请第一方面提供了一种防重放攻击方法,应用于客户端,包括:
基于物联网设备的设备信息,向服务端发送用于请求获取防重放序列号的第一请求;所述设备信息能够被所述服务端用于确定所述物联网设备唯一关联的第一策略信息,所述第一策略信息包含所述物联网设备的防重放序列号生成策略;
获取所述服务端基于所述第一策略信息生成的第一序列号;
向所述物联网设备发送所述第一序列号和操作信息;其中,所述第一序列号能够被所述物联网设备用于基于所述第一策略信息检测重放攻击行为;所述操作信息能够被所述物联网设备用于在重放攻击行为检测通过的情况下执行目标操作。
在一些实施例中,所述向所述物联网设备发送所述第一序列号和操作信息,包括:
基于所述客户端的客户端证书,对所述第一序列号、所述操作信息和能够唯一标识所述客户端的客户端信息签名,以生成第一签名信息;
向所述物联网设备发送所述第一序列号、所述操作信息、所述客户端信息和所述第一签名信息;
其中,所述客户端信息用于所述物联网设备确定所述客户端的客户端证书;所述第一签名信息用于所述物联网设备基于所述客户端证书对所述第一序列号、所述操作信息和所述客户端信息验签;所述操作信息用于所述物联网设备在重放攻击行为检测通过且验签通过的情况下,基于所述操作信息执行所述目标操作。
本申请第二方面提供了一种防重放攻击方法,应用于服务端,包括:
获取客户端发送的用于请求获取防重放序列号的第一请求,所述第一请求包含能够唯一标识物联网设备的设备信息;
基于所述设备信息,获取所述物联网设备唯一关联的第一策略信息;其中,所述第一策略信息包含所述物联网设备的防重放序列号生成策略;
基于所述第一策略信息,生成第一序列号;
将所述第一序列号反馈至所述客户端;所述第一序列号能够被所述客户端发送至所述物联网设备,以供所述物联网设备基于所述第一策略信息和所述第一序列号检测重放攻击行为。
在一些实施例中,所述基于所述设备信息,获取所述物联网设备的第一策略信息,包括:
基于所述设备信息,获取第二策略信息和第二序列号;其中,所述第二序列号为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号;所述第二策略信息包含所述物联网设备的防重放序列号增减策略;
相对应的,所述基于所述第一策略信息,生成第一序列号,包括:
随机生成步长值;
基于所述第二策略信息,在所述第二序列号的基础上递增或递减所述步长值,以生成所述第一序列号。
在一些实施例中,还包括:
获取所述物联网设备发送的用于请求生成所述第一策略信息的第二请求,所述第二请求包含所述设备信息;
生成所述第一策略信息,并关联存储所述第一策略信息和所述设备信息;
将所述第一策略信息反馈至所述物联网设备。
在一些实施例中,所述生成所述第一策略信息,包括:
随机生成初始的防重放序列号;
随机确定所述物联网设备的防重放序列号增减策略,并生成包含所述物联网设备的防重放序列号增减策略的第二策略信息。
本申请第三方面提供了一种防重放攻击方法,应用于物联网设备,包括:
获取客户端发送的第一序列号和操作信息;其中,所述第一序列号由服务端基于与所述物联网终端唯一关联的第一策略信息生成,所述第一策略信息包含所述物联网终端的防重放序列号生成策略;
基于所述第一策略信息和所述第一序列号,检测重放攻击行为;
在重放攻击行为检测通过的情况下,基于所述操作信息执行目标操作。
在一些实施例中,所述获取所述客户端发送的第一序列号和操作信息,包括:
获取所述客户端发送的第一序列号、所述操作信息、客户端信息和第一签名信息,所述客户端信息能够唯一标识所述客户端;
基于所述客户端信息,确定所述客户端的客户端证书;
基于所述客户端证书和所述第一签名信息,对所述第一序列号、所述操作信息和所述客户端信息验签;
在验签通过的情况下,确定所述第一序列号和所述操作信息有效。
在一些实施例中,所述基于所述第一策略信息和所述第一序列号,检测重放攻击行为,包括:
获取第二序列号和第二策略信息;其中,所述第二序列号为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号;
基于所述第二策略信息,确定所述物联网设备的防重放序列号的增减策略;
确定所述第一序列号和所述第二序列号之间的关系是否符合所述增减策略。
在一些实施例中,还包括:
基于所述设备信息,向所述服务端发送用于请求生成所述第一策略信息的第二请求;
获取所述服务端生成的所述第一策略信息。
本申请第四方面提供了一种防重放攻击系统,包括物联网设备、客户端及服务端;
所述客户端配置为:基于所述物联网设备的设备信息,向服务端发送用于请求获取序列号的第一请求;
所述服务端配置为:基于所述设备信息,获取所述物联网设备唯一关联的第一策略信息;其中,所述第一策略信息包含所述物联网设备的防重放序列号生成策略;基于所述第一策略信息,生成第一序列号;将所述第一序列号反馈至所述客户端;
所述客户端还配置为:向所述物联网设备发送所述第一序列号和操作信息;
所述物联网设备配置为:基于所述第一策略信息和所述第一序列号,检测重放攻击行为;在重放攻击行为检测通过的情况下,基于所述操作信息执行目标操作。
本申请第五方面提供了一种电子设备,至少包括存储器和处理器,所述存储器上存储有程序,所述处理器在执行所述存储器上的程序时实现如上所述的方法。
本申请第六方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,在执行所述计算机可读存储介质中的所述计算机可执行指令时实现如上所述的方法。
本申请实施例的防重放攻击方法,物联网设备具有自身专属的防重放序列号生成策略,防重放序列号是由服务端生成,由物联网设备基于防重放序列号检测重放攻击行为。物联网设备只需保存自身专属的防重放序列号生成策略,服务端保存各个物联网设备的防重放序列号生成策略。客户端则无需保存防重放序列号生成策略,也无需生成防重放序列号。当客户端需要控制物联网设备执行目标操作时,只需从服务端请求获取防重放序列号。使得多个客户端能够基于同一防重放检测体系控制同一个物联网设备,系统架构简单,有利于物联网设备和客户端实现数据轻量化,且有益于降低检测错误的出现概率。此外,由于各个物联网设备的防重放序列号各不相同,即使破解一个物联网设备的防重放序列号生成策略,也无法知晓其他物联网设备的防重放序列号生成策略,具有较高的安全性。
附图说明
图1为本申请第一种实施例的防重放攻击方法的流程图;
图2为本申请第二种实施例的防重放攻击方法的流程图;
图3为本申请第三种实施例的防重放攻击方法的流程图;
图4为本申请第四种实施例的防重放攻击方法的流程图;
图5为本申请第五种实施例的防重放攻击系统的系统框架图;
图6为本申请实施例的电子设备的结构框图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
本申请第一种实施例提供了一种防重放攻击方法,应用于客户端,所述客户端可以是硬件,也可以是软件。当客户端为硬件时,可以是各种能够用于操控物联网设备的电子设备,包括但不限于智能手机、平板电脑、智能手表、笔记本电脑及智能汽车等等。当客户端为软件时,可以安装在上述所列举的电子设备中,其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。
图1为本申请第一种实施例的防重放攻击方法的流程图,参见图1所示,本申请第一种实施例的防重放攻击方法具体可包括如下步骤。
S110,基于所述物联网设备的设备信息,向服务端发送用于请求获取防重放序列号的第一请求。其中,所述设备信息能够被所述服务端用于确定所述物联网设备唯一关联的第一策略信息,所述第一策略信息包含所述物联网设备的防重放序列号生成策略。
可选的,所述物联网设备包括但不限于家用物联网设备、工业物联网设备或农用物联网设备等等。以家用物联网设备为例,该物联网设备包括但不限于智能门锁、智能消毒器、智能空调、智能冰箱或智能音箱等等。此处并不限定物联网设备的设备类型。
可选的,所述物联网设备可具有唯一关联的防重放序列号生成策略。也即,各个物联网设备具有为其专属制定的防重放序列号生成策略,各个物联网设备的防重放序列号生成策略可以各不相同。所述防重放序列号生成策略可包括防重放序列号的生成方法或生成方案。所述防重放序列号用于防止重放攻击行为。第一策略信息中可记录有该防重放序列号生成策略,物联网设备和服务端可保存有该第一策略信息。服务端基于该第一策略信息能够生成与所述物联网设备相匹配的防重放序列号,物联网设备基于该第一策略信息和防重放序列号能够检测重放攻击行为。
可选的,所述服务端可在所述物联网设备激活、注册或绑定过程中,为所述物联网设备制定防重放序列号生成策略,并生成包含该防重放序列号生成策略的第一策略信息。可选的,所述物联网设备可基于自身的设备信息,向服务端发送第二请求,请求服务端制定防重放序列号生成策略并生成包含该防重放序列号生成策略的第一策略信息。所述服务端可响应于该第二请求,基于设备信息为所述物联网设备制定防重放序列号生成策略,将包含该防重放序列号生成策略的第一策略信息反馈至所述物联网设备。所述服务端也可关联存储所述设备信息和所述第一策略信息。
可选的,在用户需要通过所述客户端控制所述物联网设备执行目标操作时,可操作所述客户端上的操作部件生成操作指令,所述客户端可响应于所述操作指令获取所述设备信息,向服务端发送第一请求。例如,在用户需要通过智能手机控制智能门锁执行开锁操作时,可操作智能手机的触控屏选取开锁选项以生成开锁指令,所述智能手机可响应于所述开锁指令获取所述智能门锁的门锁信息,基于所述门锁信息向所述服务端发送第一请求。可选的,该设备信息能够唯一标识所述物联网设备,设备信息包括但不限于设备名称、设备序列号、设备证书或设备地址等等。
S120,获取所述服务端基于所述第一策略信息生成的第一序列号。
可选的,所述服务端在获取到第一请求之后,可基于所述第一请求携带的设备信息,查找所述物联网设备的第一策略信息。所述服务端可基于所述第一策略信息中的防重放序列号生成策略,生成与所述物联网设备相匹配的第一序列号。该第一序列号即为针对本次通信的防重放序列号。
可选的,所述防重放序列号生成策略包括但不限于随机序列号生成算法或基于交互次数的序列号生成算法等等。以随机序列号生成算法为例,服务端可为物联网设备随机生成初始的防重放序列号,随机确定物联网设备的防重放序列号增减策略,也即防重放序列号按照生成次序依次递增或依次递减的策略。所述服务端获取到第一请求之后,可基于所述设备信息,获取第二策略信息和第二序列号。所述第二序列号为初始的防重放序列号或上一次生成的防重放序列号;所述第二策略信息可包含所述物联网设备的防重放序列号增减策略。所述服务端可随机生成步长值,基于所述第二策略信息,在所述第二序列号的基础上递增或递减所述步长值,以生成所述第一序列号。继而,所述服务端将所述第一序列号反馈至所述客户端,并且所述服务端保存本次的防重放序列号(也即第一序列号)。可以理解的是,所述服务端也可在制定防重放序列号生成策略时随机确定所述物联网设备的固定步长值。
以基于交互次数的序列号生成算法为例,服务端和物联网设备均可保存该基于交互次数的序列号生成算法,并且服务端和物联网设备均记录当前的有效交互次数。服务端获取到第一请求之后,可确定该物联网设备的当前交互次数,基于该当前交互次数生成第一序列号。相应的,物联网设备也基于当前交互次数验证该第一序列号。
需要说明的是,上述防重放序列号生成策略仅为示例性的,不应理解为仅限于采用上述防重放序列号生成策略生成第一序列号。在具体实施时,只要服务端和物联网设备均保存有包含该防重放序列号生成策略的第一策略信息,服务端能够生成第一序列号,物联网设备能够基于该第一序列号检测重放攻击行为即可。
S130,向所述物联网设备发送所述第一序列号和操作信息。其中,所述第一序列号能够被所述物联网设备用于基于所述第一策略信息检测重放攻击行为;所述操作信息能够被所述物联网设备用于在重放攻击行为检测通过的情况下执行目标操作。
可选的,所述客户端也可响应于所述操作指令获取操作信息。例如,在用于需要通过智能手机控制智能门锁执行开锁操作时,可操作智能手机的触控屏选取开锁选项以生成开锁指令,所述智能手机可响应于所述开锁指令获取开锁信息。
可选的,所述客户端还可通过服务端向所述物联网设备发送所述第一序列号和所述操作信息。例如,所述客户端可向所述服务端发送第一序列号、操作信息和能够标识所述物联网设备的设备信息。所述服务端可基于所述设备信息将所述第一序列号和所述操作信息发送至所述物联网设备,或者所述服务端可将所述设备信息、所述第一序列号和所述操作信息关联存储在缓存空间中,基于所述设备信息通知所述物联网设备到缓存空间获取第一序列号和操作信息。
可选的,所述客户端可与所述物联网设备通信连接,所述客户端可直接将所述第一序列号和所述操作信息发送至所述物联网设备。例如,智能手机可通过网络与智能门锁通信连接,智能手机可通过网络向智能门锁发送第一序列号和开锁信息。还例如,所述智能手机还可通过蓝牙与智能门锁通信连接,通过蓝牙链路可将第一序列号和开锁信息发送至所述智能门锁。
可选的,所述物联网设备获取到第一序列号和所述操作信息,可基于物联网设备本地保存的第一策略信息和所述第一序列号检测是否存在重放攻击行为。如果检测到可能存在重放攻击行为,物联网设备可拒绝执行目标操作,物联网设备还可向客户端和服务端反馈操作失败的通知信息。如果检测到不存在重放攻击行为,物联网设备可基于所述操作信息执行目标操作。例如,智能门锁基于第一策略信息和第一序列号确定不存在重放攻击行为,则可基于开锁信息执行开锁操作。
以防重放序列号生成策略采用随机序列号生成算法为例,所述物联网设备可获取第一策略信息,所述第一策略信息可包括第二策略信息和所述第二序列号,可基于所述第二策略信息确定所述物联网设备的防重放序列号增减策略,确定所述第一序列号和所述第二序列号之间的关系是否符合所述防重放序列号的增减策略。例如,在所述物联网设备的防重放序列号增减策略为递增时,所述第一序列号大于第二序列号,则表明不存在重放攻击行为;在所述物联网设备的防重放序列号增减策略为递减时,所述第一序列号小于所述第二序列号,则表明不存在重放攻击行为。
以防重放序列号生成策略采用基于交互次数的序列号生成算法为例,所述物联网设备可基于第一策略信息生成第三序列号,比较第一序列号和第三序列号是否一致。如果一致,则确定不存在重放攻击行为,如果不一致,则确定存在重放攻击行为。
可选的,在目标操作执行完毕之后,所述物联网设备可将操作结果反馈至所述服务端和/或所述客户端,所述服务端和/或所述客户端可记录所述操作结果。所述客户端还可显示所述操作结果,或者基于所述操作结果显示相应的界面,使用户知晓目标操作的执行情况。
本申请实施例的防重放攻击方法,物联网设备具有自身专属的防重放序列号生成策略,防重放序列号是由服务端生成,由物联网设备基于防重放序列号检测重放攻击行为。物联网设备只需保存自身专属的防重放序列号生成策略,服务端保存各个物联网设备的防重放序列号生成策略。客户端则无需保存防重放序列号生成策略,也无需生成防重放序列号。当客户端需要控制物联网设备执行目标操作时,只需从服务端请求获取防重放序列号。使得多个客户端能够基于同一防重放检测体系控制同一个物联网设备,系统架构简单,有利于物联网设备和客户端实现数据轻量化,且有益于降低检测错误的出现概率。此外,由于各个物联网设备的防重放序列号各不相同,即使破解一个物联网设备的防重放序列号生成策略,也无法知晓其他物联网设备的防重放序列号生成策略,具有较高的安全性。
常规的防重放攻击方法往往由发起验证请求的一方来生成防重放序列号,常见地会以随机数、时间戳等作为防重放序列号,或者采用挑战应答、一次性口令机制。采用随机数的方式,无论是发起验证请求的一方,还是验证的一方,双方都需要额外保存使用过的随机数,若记录的时间段较长,则保存和查询的开销较大。采用时间戳的方式,双方需要准确的时间同步,但当系统比较庞大,涉及的交互方变多,跨越的区域较广时,要做到所有的交互方之间精确的时间同步并不容易。采用挑战应答机制或者一次性口令机制,双方需要进行多次交互才能实现一次操作,如果将这样的方案应用在远程控制物联网设备的场景中则中转方在面临高并发请求的情况下处理压力较大。与之相比,采用本方案,无论在多个客户端控制同一个物联网设备,还是在一个客户端控制多个物联网设备的场景中,客户端、物联网设备和服务器的开销都相对较小,即便服务器面临高并发的请求、高并发的远程控制的请求也能够相对快速地处理,并且也无需多个交互方同步准确的时间。
在一些实施例中,步骤S130,向所述物联网设备发送所述第一序列号和操作信息,可包括如下步骤。
S131,基于所述客户端的客户端证书,对所述第一序列号、所述操作信息和能够唯一标识所述客户端的客户端信息签名,以生成第一签名信息。
S132,向所述物联网设备发送所述第一序列号、所述操作信息、所述客户端信息和所述第一签名信息。
可选的,所述客户端证书可包括用于证明客户端身份的数字证书。所述物联网设备可持有所述客户端的客户端证书。例如,在所述物联网设备与所述客户端构建绑定关系过程中,所述物联网设备可获取所述客户端的客户端证书。所述客户端信息包括但不限于用户名称、用户编号、形成所述客户端的电子设备的设备信息等等。所述客户端在获取到所述第一序列号、所述操作信息和所述客户端信息之后,可利用客户端证书对第一序列号、操作信息和客户端信息签名,以生成第一签名信息。之后,将第一签名信息、第一序列号、操作信息和客户端信息发送至物联网设备。
可选的,所述物联网设备获取到所述第一序列号、所述操作信息、所述客户端信息和所述第一签名信息之后,可基于第一序列号和第一策略信息检测是否存在重放攻击行为。如果可能存在重放攻击行为,物联网设备可丢弃第一序列号、操作信息、客户端信息和第一签名信息,向客户端和服务端反馈操作失败的通知信息。
如果不存在重放攻击行为,物联网设备可基于所述客户端信息确定所述客户端的客户端证书,基于所述客户端证书和所述第一签名信息,对所述第一序列号、所述操作信息和所述客户端信息验签。如果验签不通过,则表明第一序列号、操作信息和客户端信息有被篡改的风险,可放弃执行目标操作,丢弃第一序列号、操作信息、客户端信息和第一签名信息。
如果验签通过,物联网设备可基于操作信息执行目标操作。也即,物联网设备只有在重放攻击行为检测通过且验签通过的情况下,基于所述操作信息执行目标操作,有益于进一步提高系统安全性。采用这样的方式,客户端并不需要从物联网设备获取物联网设备为其颁发的用于操作的凭证token,在保障控制物联网设备的安全性的情况下,还减少了操作步骤,避免了token泄露导致物联网设备被攻击的风险。
本申请第二种实施例提供了一种防重放攻击方法,应用于服务端,图2为本申请第二种实施例的防重放攻击方法的流程图,参见图2所示,本申请第二种实施例的防重放攻击方法具体可包括如下步骤。
S210,获取客户端发送的用于请求获取防重放序列号的第一请求,所述第一请求包含能够唯一标识物联网设备的设备信息。
可选的,所述物联网设备包括但不限于家用物联网设备、工业物联网设备或农用物联网设备等等。以家用物联网设备为例,该物联网设备包括但不限于智能门锁、智能消毒器、智能空调、智能冰箱或智能音箱等等。此处并不限定物联网设备的设备类型。
可选的,在用户需要通过所述客户端控制所述物联网设备执行目标操作时,可操作所述客户端上的操作部件生成操作指令,所述客户端可响应于所述操作指令获取所述设备信息,向服务端发送第一请求。例如,在用户需要通过智能手机控制智能门锁执行开锁操作时,可操作智能手机的触控屏选取开锁选项以生成开锁指令,所述智能手机可响应于所述开锁指令获取所述智能门锁的门锁信息,基于所述门锁信息向所述服务端发送第一请求。可选的,该设备信息能够唯一标识所述物联网设备,设备信息包括但不限于设备名称、设备序列号、设备证书或设备地址等等。
S220,基于所述设备信息,获取所述物联网设备唯一关联的第一策略信息;其中,所述第一策略信息包含所述物联网设备的防重放序列号生成策略。
可选的,所述物联网设备可具有唯一关联的防重放序列号生成策略。也即,各个物联网设备具有为其制定的防重放序列号生成策略,各个物联网设备的防重放序列号生成策略各不相同。所述防重放序列号生成策略可包括防重放序列号的生成方法或生成方案。所述防重放序列号用于对防止重放攻击行为。物联网设备可基于信息中携带的防重放序列号检测重放攻击行为。第一策略信息中可记录有该防重放序列号生成策略,物联网设备和服务端可保存有该第一策略信息。
可选的,所述服务端可在获取到第一请求之后,基于所述第一请求携带的设备信息,从服务端的本地查找该物联网设备的第一策略信息,或者也可从特定的数据库中查找该物联网设备的第一策略信息。
S230,基于所述第一策略信息,生成第一序列号。
也即,所述服务端在获取到第一策略信息的情况下,可基于所述第一策略信息中的防重放序列号生成策略,生成与所述物联网设备相匹配的第一序列号。该第一序列号即为针对本次操作的防重放序列号。
可选的,所述防重放序列号生成策略包括但不限于随机序列号生成算法或基于交互次数的序列号生成算法等等。以基于交互次数的序列号生成算法为例,服务端和物联网设备均可保存该基于交互次数的序列号生成算法,并且服务端和物联网设备均记录当前的有效交互次数。服务端获取到第一请求之后,可确定该物联网设备的当前交互次数,基于该当前交互次数生成第一序列号。相应的,物联网设备也基于当前交互次数验证该第一序列号。
S240,将所述第一序列号反馈至所述客户端;所述第一序列号能够被所述客户端发送至所述物联网设备,以供所述物联网设备基于所述第一策略信息和所述第一序列号检测重放攻击行为。
可选的,所述服务端可直接将所述第一序列号发送至所述客户端,也可将所述第一序列号保存在缓存空间中,通知客户端主动到缓存空间中获取第一序列号。所述客户端获取到所述第一序列号,可将第一序列号和操作信息发送至物联网设备,所述物联网设备可基于第一序列号和所述第一策略信息检测中方攻击行为。如果重放攻击行为检测通过,物联网设备可基于操作信息执行所述客户端指示的目标操作。
可选的,在目标操作执行完毕之后,所述物联网设备可将操作结果反馈至所述服务端和/或所述客户端,所述服务端和/或所述客户端可记录所述操作结果。所述客户端还可显示所述操作结果,或者基于所述操作结果显示相应的界面,使用户知晓目标操作的执行情况。
本申请实施例的防重放攻击方法,物联网设备具有自身专属的防重放序列号生成策略,防重放序列号是由服务端生成,由物联网设备基于防重放序列号检测重放攻击行为。物联网设备只需保存自身专属的防重放序列号生成策略,服务端保存各个物联网设备的防重放序列号生成策略。客户端则无需保存防重放序列号生成策略,也无需生成防重放序列号。当客户端需要控制物联网设备执行目标操作时,只需从服务端请求获取防重放序列号。使得多个客户端能够基于同一防重放检测体系控制同一个物联网设备,系统架构简单,有利于物联网设备和客户端实现数据轻量化,且有益于降低检测错误的出现概率。此外,由于各个物联网设备的防重放序列号各不相同,即使破解一个物联网设备的防重放序列号生成策略,也无法知晓其他物联网设备的防重放序列号生成策略,具有较高的安全性。
在具体实施时,可采用多种类型的防重放序列号生成策略,例如,随机序列号生成算法或基于交互次数的序列号生成算法等等。此处并不限定防重放序列号生成策略的具体类型,但只要该防重放序列号生成策略专属于物联网设备,服务端和物联网设备均保存该防重放序列号生成策略,服务端能够响应于客户端发送的第一请求生成防重放序列号,物联网设备基于防重放序列号生成策略和客户端发送的防重放序列号检测重放攻击行为即可。
在一些实施例中,所述第一策略信息包括第二策略信息和第二序列号,所述第二序列号为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号;所述第二策略信息包含所述物联网设备的防重放序列号增减策略。
步骤S230,基于所述第一策略信息,生成第一序列号,可包括如下步骤。
S231,随机生成步长值。
S232,基于所述第二策略信息,在所述第二序列号的基础上递增或递减所述步长值,以生成所述第一序列号。
也即,所述第一策略信息可包括两部分内容,一部分内容为第二序列号,第二序列号可为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号。在所述服务端尚未基于所述物联网设备的第一策略信息生成防重放序列号的情况下,该第二序列号即为初始的防重放序列号。在所述服务端已经基于所述物联网设备的第一策略信息生成一个或多个防重放序列号的情况下,该第二序列号为上一次生成的防重放序列号。另一部分内容为第二策略信息,所述第二策略信息中记录有防重放序列号增减策略,也即防重放序列号按照生成次序依次递增或依次递减的策略。
所述服务端获取到第一请求之后,可基于所述设备信息,获取第二策略信息和第二序列号。所述服务端可随机生成步长值。基于所述第二策略信息,在所述第二序列号的基础上递增或递减所述步长值,以生成所述第一序列号。继而,所述服务端将所述第一序列号反馈至所述客户端,并且所述服务端保存本次的防重放序列号(也即第一序列号)。可选的,所述服务端可在第一取值范围内随机生成步长值。该防重放序列号生成策略既能够实现防止重放攻击的目的,而且计算量较小,能够降低服务端的负载,有益于提高响应速度。
在一些实施例中,所述防重放攻击方法还可包括如下步骤。
S251,获取所述物联网设备发送的用于请求生成所述第一策略信息的第二请求,所述第二请求包含所述设备信息。
S252,生成所述第一策略信息,并关联存储所述第一策略信息和所述设备信息。
S253,将所述第一策略信息反馈至所述物联网设备。
可选的,所述设备信息可包括但不限于物联网设备的设备序列号、设备型号及设备证书等信息,所述设备证书可为能够证明所述物联网设备身份的数字证书。所述物联网设备可获取自身的设备序列号、设备型号和设备证书,基于设备序列号、设备型号和设备证书向服务端发送第二请求。
所述服务端可响应于该第二请求,基于设备信息为所述物联网设备制定防重放序列号生成策略,将包含该防重放序列号生成策略的第一策略信息反馈至所述物联网设备。所述服务端也可关联存储所述设备信息和所述第一策略信息。
可选的,所述服务端可利用服务端证书对设备信息和所述第一策略信息签名,形成第二签名信息。将设备信息、第一策略信息和所述第二签名信息发送至所述物联网设备。所述物联网设备可基于服务端证书和第二签名信息对设备信息和第一策略信息验签。如果验签通过,物联网设备可保存所述第一策略信息。如果验签失败,物联网设备可向服务端反馈验签失败的通知信息。如此,能够进一步提高系统安全性。
在一些实施例中,步骤S252,生成所述第一策略信息可包括如下步骤。
S2521,随机生成初始的防重放序列号。
S2522,随机确定所述物联网设备的防重放序列号增减策略,并生成包含所述物联网设备的防重放序列号增减策略的第二策略信息。
可选的,所述服务端可在第二取值范围内随机生成初始的防重放序列号。例如,所述服务端可在(0,100)内随机生成初始的防重放序列号。所述服务端还随机确定所述物联网设备的防重放序列号的增减策略,生成能够表征所述物联网设备的防重放序列号增减策略的第二策略信息。例如,所述服务端可通过二进制的0表征递增,可通过二进制的1表征递减。之后,所述服务端将该初始的防重放序列号和第二策略信息发送至物联网设备。所述物联网设备初次获取到第一序列号时,比较第一序列号和初始的防重放序列号之间的关系是否第二策略信息所表征的递增或递减策略。
如此,不仅第一策略信息本身的数据量较小,有益于节省存储空间,而且重放攻击行为的检测过程简单,有益于降低数据处理量,能够提高响应速度。
本申请第三种实施例提供了一种防重放攻击方法,应用于物联网设备,所述物联网设备包括但不限于家用物联网设备、工业物联网设备或农用物联网设备等等。以家用物联网设备为例,该物联网设备包括但不限于智能门锁、智能消毒器、智能空调、智能冰箱或智能音箱等等。此处并不限定物联网设备的设备类型。
图3为本申请第三种实施例的防重放攻击方法的流程图,参见图3所示,本申请第三种实施例的防重放攻击方法具体可包括如下步骤。
S310,获取所述客户端发送的第一序列号和操作信息;其中,所述第一序列号由服务端基于与所述物联网终端唯一关联的第一策略信息生成,所述第一策略信息包含所述物联网终端的防重放序列号生成策略。
可选的,所述物联网设备可具有唯一关联的防重放序列号生成策略。也即,各个物联网设备具有为其制定的防重放序列号生成策略,各个物联网设备的防重放序列号生成策略各不相同。所述防重放序列号生成策略可包括防重放序列号的生成方法或生成方案。所述防重放序列号用于防止重放攻击行为。第一策略信息中可记录有该防重放序列号生成策略,物联网设备和服务端可保存有该第一策略信息。
可选的,在用户需要通过所述客户端控制所述物联网设备执行目标操作时,可操作所述客户端上的操作部件生成操作指令。所述客户端可响应于所述操作指令向服务端发送第一请求,所述客户端也可响应于所述操作指令获取操作信息。例如,在用于需要通过智能手机控制智能门锁执行开锁操作时,可操作智能手机的触控屏选取开锁选项以生成开锁指令,所述智能手机可响应于所述开锁指令获取开锁信息。
所述服务端获取到所述第一请求,可基于所述设备信息获取所述物联网设备的第一策略信息。服务端基于该第一策略信息能够生成与所述物联网设备相匹配的防重放序列号(也即第一序列号),并将所述第一序列号反馈至所述客户端。所述客户端获取到所述第一序列号,可将所述第一序列号和所述操作信息发送至所述物联网设备。
可选的,所述物联网设备可通过服务端获取所述客户端发送的第一序列号和操作信息。例如,所述客户端可向所述服务端发送第一序列号、操作信息和能够标识所述物联网设备的设备信息。所述服务端可基于所述设备信息将所述第一序列号和所述操作信息发送至所述物联网设备,或者所述服务端可将所述设备信息、所述第一序列号和所述操作信息关联存储在缓存空间中,基于所述设备信息通知所述物联网设备到缓存空间获取第一序列号和操作信息。
可选的,所述物联网设备也可与所述客户端通信连接,所述物联网设备可直接从所述客户端获取所述第一序列号和所述操作信息。例如,智能手机可通过网络与智能门锁通信连接,智能手机可通过网络向智能门锁发送第一序列号和开锁信息。还例如,所述智能手机还可通过蓝牙与智能门锁通信连接,通过蓝牙链路可将第一序列号和开锁信息发送至所述智能门锁。
S320,基于所述第一策略信息和所述第一序列号,检测重放攻击行为。
可选的,所述物联网设备获取到所述第一序列号和所述操作信息,可检测所述第一序列号是否符合所述物联网设备本地保存的第一策略信息。如果所述第一序列号符合所述第一策略信息中的防重放序列号生成策略,则确定不存在重放攻击行为,如果所述第一序列号不符合所述第一策略信息中的防重放序列号生成策略,则确定存在重放攻击行为。
S330,在重放攻击行为检测通过的情况下,基于所述操作信息执行目标操作。
如果重放攻击行为检测通过,也即,本次通信不存在重放攻击行为,所述物联网设备可基于操作信息执行所述客户端所请求的目标操作。仍然以用户需要通过智能手机控制智能门锁执行开锁操作为例,所述智能门锁基于所述第一策略信息和所述第一序列号确定不存在重放攻击行为,则所述智能门锁可基于开锁信息执行开锁操作。
可选的,在目标操作执行完毕之后,所述物联网设备可将操作结果反馈至所述服务端和/或所述客户端,所述服务端和/或所述客户端可记录所述操作结果。所述客户端还可显示所述操作结果,或者基于所述操作结果显示相应的界面,使用户知晓目标操作的执行情况。
本申请实施例的防重放攻击方法,物联网设备具有自身专属的防重放序列号生成策略,防重放序列号是由服务端生成,由物联网设备基于防重放序列号检测重放攻击行为。物联网设备只需保存自身专属的防重放序列号生成策略,服务端保存各个物联网设备的防重放序列号生成策略。客户端则无需保存防重放序列号生成策略,也无需生成防重放序列号。当客户端需要控制物联网设备执行目标操作时,只需从服务端请求获取防重放序列号。使得多个客户端能够基于同一防重放检测体系控制同一个物联网设备,系统架构简单,有利于物联网设备和客户端实现数据轻量化,且有益于降低检测错误的出现概率。此外,由于各个物联网设备的防重放序列号各不相同,即使破解一个物联网设备的防重放序列号生成策略,也无法知晓其他物联网设备的防重放序列号生成策略,具有较高的安全性。
在一些实施例中,步骤S310,获取所述客户端发送的第一序列号和操作信息,可包括如下步骤。
S311,获取所述客户端发送的第一序列号、所述操作信息、客户端信息和第一签名信息,所述客户端信息能够唯一标识所述客户端。
S312,基于所述客户端信息,确定所述客户端的客户端证书。
S313,基于所述客户端证书和所述第一签名信息,对所述第一序列号、所述操作信息和所述客户端信息验签。
S314,在验签通过的情况下,确定所述第一序列号和所述操作信息有效。
可选的,所述客户端在获取到所述第一序列号、所述操作信息和所述客户端信息之后,可利用客户端证书对第一序列号、操作信息和客户端信息签名,以生成第一签名信息。之后,将第一签名信息、第一序列号、操作信息和客户端信息发送至物联网设备。所述客户端证书可包括用于证明客户端身份的数字证书。所述物联网设备可持有所述客户端的客户端证书。例如,在所述物联网设备与所述客户端构建绑定关系过程中,所述物联网设备可获取所述客户端的客户端证书。所述客户端信息包括但不限于用户名称、用户编号、形成所述客户端的电子设备的设备信息等等。
可选的,所述物联网设备获取到所述第一序列号、所述操作信息、所述客户端信息和所述第一签名信息之后,可基于第一序列号和第一策略信息检测是否存在重放攻击行为。如果可能存在重放攻击行为,物联网设备可丢弃第一序列号、操作信息、客户端信息和第一签名信息,向客户端和服务端反馈操作失败的通知信息。
如果不存在重放攻击行为,物联网设备可基于所述客户端信息确定所述客户端的客户端证书,基于所述客户端证书和所述第一签名信息,对所述第一序列号、所述操作信息和所述客户端信息验签。如果验签不通过,则表明第一序列号、操作信息和客户端信息有被篡改的风险,可放弃执行目标操作,丢弃第一序列号、操作信息、客户端信息和第一签名信息。
如果验签通过,则表明第一序列号、操作信息和客户端信息未被篡改,物联网设备可基于操作信息执行目标操作。也即,物联网设备只有在重放攻击行为检测通过且验签通过的情况下,基于所述操作信息执行目标操作,有益于进一步提高系统安全性。
在具体实施时,可采用多种类型的防重放序列号生成策略,例如,随机序列号生成算法或基于交互次数的序列号生成算法等等。根据防重放序列号生成策略不同,物联网设备基于所述第一策略信息和所述第一序列号检测是否存在重放攻击性行为的方法不同。
在一些实施例中,步骤S320,基于所述第一策略信息和所述第一序列号,检测重放攻击行为,可包括如下步骤。
S321,获取第二序列号和第二策略信息;其中,所述第二序列号为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号。
S322,基于所述第二策略信息,确定所述物联网设备的防重放序列号的增减策略。
S323,确定所述第一序列号和所述第二序列号之间的关系是否符合所述增减策略。
也即,所述第一策略信息可包括两部分内容,一部分内容为第二序列号,第二序列号可为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号。在所述服务端尚未基于所述物联网设备的第一策略信息生成防重放序列号的情况下,该第二序列号即为初始的防重放序列号。在所述服务端已经基于所述物联网设备的第一策略信息生成一个或多个防重放序列号的情况下,该第二序列号为上一次生成的防重放序列号。另一部分内容为第二策略信息,所述第二策略信息中记录有防重放序列号增减策略,也即防重放序列号按照生成次序依次递增或依次递减的策略。
可选的,所述服务端获取到第一请求之后,可基于所述设备信息,获取第二策略信息和第二序列号。所述服务端可随机生成步长值。基于所述第二策略信息,在所述第二序列号的基础上递增或递减所述步长值,以生成所述第一序列号。继而,所述服务端将所述第一序列号反馈至所述客户端,并且所述服务端保存本次的防重放序列号(也即第一序列号)。可选的,所述服务端可在第一取值范围内随机生成步长值。
可选的,所述物联网设备获取到第一序列号之后,可从所述物联网设备本地获取到第二序列号和所述第二策略信息。所述物联网设备基于所述第二策略信息能够确定所述物联网设备的防重放序列号增减策略。例如,可通过二进制的0表征递增,可通过二进制的1表征递减。所述物联网设备可检测所述第二策略信息的数值,如果所述物联网设备确定所述第二策略信息的数值为0,则可确定该物联网设备的防重放序列号增减策略为递增,如果确定所述第二策略信息的数值为1,则可将确定该物联网设备的防重放序列号增减策略为递减。该防重放序列号生成策略既能够实现防止重放攻击的目的,而且计算量较小,能够降低服务端的负载,有益于提高响应速度。可以理解的是,上述实施例仅为示例性的,在具体实施时也可通过其他符号表征物联网设备的防重放序列号增减策略。
在一些实施例中,以防重放序列号生成策略采用基于交互次数的序列号生成算法为例,所述物联网设备可基于第一策略信息生成第三序列号,比较第一序列号和第三序列号是否一致。如果一致,则确定不存在重放攻击行为,如果不一致,则确定存在重放攻击行为。
在一些实施例中,所述防重放攻击方法还可包括如下步骤。
S340,基于所述设备信息,向所述服务端发送用于请求生成所述第一策略信息的第二请求。
S350,获取所述服务端生成的所述第一策略信息。
可选的,所述设备信息可包括但不限于物联网设备的设备序列号、设备型号及设备证书等信息,所述设备证书可为能够证明所述物联网设备身份的数字证书。所述物联网设备可获取自身的设备序列号、设备型号和设备证书,基于设备序列号、设备型号和设备证书向服务端发送第二请求。
所述服务端可响应于该第二请求,基于设备信息为所述物联网设备制定防重放序列号生成策略,将包含该防重放序列号生成策略的第一策略信息反馈至所述物联网设备。所述服务端也可关联存储所述设备信息和所述第一策略信息。
可选的,所述服务端可利用服务端证书对设备信息和所述第一策略信息签名,形成第二签名信息。将设备信息、第一策略信息和所述第二签名信息发送至所述物联网设备。所述物联网设备可基于服务端证书和第二签名信息对设备信息和第一策略信息验签。如果验签通过,物联网设备可保存所述第一策略信息。如果验签失败,物联网设备可向服务端反馈验签失败的通知信息。如此,能够进一步提高系统安全性。
可选的,所述服务端可在第二取值范围内随机生成初始的防重放序列号。例如,所述服务端可在(0,100)内随机生成初始的防重放序列号。所述服务端还随机确定所述物联网设备的防重放序列号的增减策略,生成能够表征所述物联网设备的防重放序列号增减策略的第二策略信息。例如,所述服务端可通过二进制的0表征递增,可通过二进制的1表征递减。之后,所述服务端将该初始的防重放序列号和第二策略信息发送至物联网设备。
本申请第四种实施例提供了一种防重放攻击方法,应用于客户端、服务端和物联网设备。图4为本申请第四种实施例的防重放攻击方的流程图,参见图4所示,本申请第四种实施例的防重放攻击方法具体可包括如下步骤。
S411,通过所述物联网设备基于所述设备信息,向所述服务端发送用于请求生成所述第一策略信息的第二请求。
S422,通过所述服务端响应于所述第二请求,随机生成初始的防重放序列号。
S423,随机确定所述物联网设备的防重放序列号增减策略,并生成包含所述物联网设备的防重放序列号增减策略的第二策略信息。
S424,关联存储所述第一策略信息和所述设备信息,并将所述第一策略信息反馈至所述物联网设备。
S431,通过所述客户端基于所述物联网设备的设备信息,向服务端发送用于请求获取防重放序列号的第一请求。
S441,通过所述服务端基于所述设备信息,获取第二策略信息和第二序列号;其中,所述第二序列号为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号;所述第二策略信息包含所述物联网设备的防重放序列号增减策略
S442,通过所述服务端随机生成步长值。
S443,基于所述第二策略信息,在所述第二序列号的基础上递增或递减所述步长值,以生成所述第一序列号。
S444,通过所述服务端将第一序列号反馈至所述客户端。
S451,通过所述客户端基于所述客户端的客户端证书,对所述第一序列号、所述操作信息和能够唯一标识所述客户端的客户端信息签名,以生成第一签名信息;
S452,通过所述客户端向所述物联网设备发送所述第一序列号、所述操作信息、所述客户端信息和所述第一签名信息。
S461,通过所述物联网设备基于所述客户端信息,确定所述客户端的客户端证书。
S462,基于所述客户端证书和所述第一签名信息,对所述第一序列号、所述操作信息和所述客户端信息验签。如果验签通过,则执行步骤S463,如果验签未通过,则向客户端和/或服务端反馈验签失败的通知信息。
S463,获取第二序列号和第二策略信息;其中,所述第二序列号为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号。
S464,基于所述第二策略信息,确定所述物联网设备的防重放序列号的增减策略。
S465,确定所述第一序列号和所述第二序列号之间的关系是否符合所述增减策略。如果符合,则执行步骤S466,如果不符合,则向所述客户端和/或所述服务端反馈重放攻击行为未检测通过的通知信息。
S466,基于所述操作信息执行目标操作。
S467,通过所述物联网设备将操作结果反馈至所述服务端和/或所述客户端。
参见图5所示,本申请第五种实施例提供了一种防重放攻击系统,该防重放攻击系统包括物联网设备530、客户端510及服务端520。
所述客户端510配置为:基于所述物联网设备530的设备信息,向服务端520发送用于请求获取序列号的第一请求。
所述服务端520配置为:基于所述设备信息,获取所述物联网设备530唯一关联的第一策略信息;其中,所述第一策略信息包含所述物联网设备530的防重放序列号生成策略;基于所述第一策略信息,生成第一序列号;将所述第一序列号反馈至所述客户端510。
所述客户端510还配置为:向所述物联网设备530发送所述第一序列号和操作信息。
所述物联网设备530配置为:基于所述第一策略信息和所述第一序列号,检测重放攻击行为;在重放攻击行为检测通过的情况下,基于所述操作信息执行目标操作。
在一些实施例中,所述客户端510具体配置为:
基于所述客户端510的客户端510证书,对所述第一序列号、所述操作信息和能够唯一标识所述客户端510的客户端510信息签名,以生成第一签名信息;
向所述物联网设备530发送所述第一序列号、所述操作信息、所述客户端510信息和所述第一签名信息。
在一些实施例中,所述服务端520具体配置为:
基于所述设备信息,获取第二策略信息和第二序列号;其中,所述第二序列号为初始的防重放序列号或所述服务端520上一次基于所述第一策略信息生成的防重放序列号;所述第二策略信息包含所述物联网设备530的防重放序列号增减策略;
随机生成步长值;
基于所述第二策略信息,在所述第二序列号的基础上递增或递减所述步长值,以生成所述第一序列号。
在一些实施例中,所述服务端520还配置为:
获取所述物联网设备530发送的用于请求生成所述第一策略信息的第二请求,所述第二请求包含所述设备信息;
生成所述第一策略信息,并关联存储所述第一策略信息和所述设备信息;
将所述第一策略信息反馈至所述物联网设备530。
在一些实施例中,所述服务端520具体配置为:
随机生成初始的防重放序列号;
随机确定所述物联网设备530的防重放序列号增减策略,并生成包含所述物联网设备530的防重放序列号增减策略的第二策略信息。
在一些实施例中,所述物联网设备530具体配置为:
获取所述客户端510发送的第一序列号、所述操作信息、客户端510信息和第一签名信息,所述客户端510信息能够唯一标识所述客户端510;
基于所述客户端510信息,确定所述客户端510的客户端510证书;
基于所述客户端510证书和所述第一签名信息,对所述第一序列号、所述操作信息和所述客户端510信息验签;
在验签通过的情况下,确定所述第一序列号和所述操作信息有效。
在一些实施例中,所述物联网设备530具体配置为:
获取第二序列号和第二策略信息;其中,所述第二序列号为初始的防重放序列号或所述服务端520上一次基于所述第一策略信息生成的防重放序列号;
基于所述第二策略信息,确定所述物联网设备530的防重放序列号的增减策略;
确定所述第一序列号和所述第二序列号之间的关系是否符合所述增减策略。
在一些实施例中,所述物联网设备530还配置为:
基于所述设备信息,向所述服务端520发送用于请求生成所述第一策略信息的第二请求;
获取所述服务端520生成的所述第一策略信息。
参见图6所示,本申请第六种实施例提供了一种电子设备,至少包括存储器601和处理器602,所述存储器601上存储有程序,所述处理器602在执行所述存储器601上的程序时实现如上任一实施例所述的方法。
本申请第七种实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,在执行所述计算机可读存储介质中的所述计算机可执行指令时实现如上任一实施例所述的方法。
本领域技术人员应明白,本申请的实施例可提供为方法、电子设备、计算机可读存储介质或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。当通过软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
上述处理器可以是通用处理器、数字信号处理器、专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logicdevice,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,简称GAL)或其任意组合。通用处理器可以是微处理器或者任何常规的处理器等。
上述存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
上述可读存储介质可为磁碟、光盘、DVD、USB、只读存储记忆体(ROM)或随机存储记忆体(RAM)等,本申请对具体的存储介质形式不作限定。
以上实施例仅为本申请的示例性实施例,不用于限制本申请,本申请的保护范围由权利要求书限定。本领域技术人员可以在本申请的实质和保护范围内,对本申请做出各种修改或等同替换,这种修改或等同替换也应视为落在本申请的保护范围内。
Claims (13)
1.一种防重放攻击方法,其特征在于,应用于客户端,包括:
基于物联网设备的设备信息,向服务端发送用于请求获取防重放序列号的第一请求;所述设备信息能够被所述服务端用于确定所述物联网设备唯一关联的第一策略信息,所述第一策略信息包含所述物联网设备的防重放序列号生成策略;
获取所述服务端基于所述第一策略信息生成的第一序列号;
向所述物联网设备发送所述第一序列号和操作信息;其中,所述第一序列号能够被所述物联网设备用于基于所述第一策略信息检测重放攻击行为;所述操作信息能够被所述物联网设备用于在重放攻击行为检测通过的情况下执行目标操作。
2.根据权利要求1所述的方法,其特征在于,所述向所述物联网设备发送所述第一序列号和操作信息,包括:
基于所述客户端的客户端证书,对所述第一序列号、所述操作信息和能够唯一标识所述客户端的客户端信息签名,以生成第一签名信息;
向所述物联网设备发送所述第一序列号、所述操作信息、所述客户端信息和所述第一签名信息;
其中,所述客户端信息用于所述物联网设备确定所述客户端的客户端证书;所述第一签名信息用于所述物联网设备基于所述客户端证书对所述第一序列号、所述操作信息和所述客户端信息验签;所述操作信息用于所述物联网设备在重放攻击行为检测通过且验签通过的情况下,基于所述操作信息执行所述目标操作。
3.一种防重放攻击方法,其特征在于,应用于服务端,包括:
获取客户端发送的用于请求获取防重放序列号的第一请求,所述第一请求包含能够唯一标识物联网设备的设备信息;
基于所述设备信息,获取所述物联网设备唯一关联的第一策略信息;其中,所述第一策略信息包含所述物联网设备的防重放序列号生成策略;
基于所述第一策略信息,生成第一序列号;
将所述第一序列号反馈至所述客户端;所述第一序列号能够被所述客户端发送至所述物联网设备,以供所述物联网设备基于所述第一策略信息和所述第一序列号检测重放攻击行为。
4.根据权利要求3所述的方法,其特征在于,所述基于所述设备信息,获取所述物联网设备的第一策略信息,包括:
基于所述设备信息,获取第二策略信息和第二序列号;其中,所述第二序列号为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号;所述第二策略信息包含所述物联网设备的防重放序列号增减策略;
相对应的,所述基于所述第一策略信息,生成第一序列号,包括:
随机生成步长值;
基于所述第二策略信息,在所述第二序列号的基础上递增或递减所述步长值,以生成所述第一序列号。
5.根据权利要求3所述的方法,其特征在于,还包括:
获取所述物联网设备发送的用于请求生成所述第一策略信息的第二请求,所述第二请求包含所述设备信息;
生成所述第一策略信息,并关联存储所述第一策略信息和所述设备信息;
将所述第一策略信息反馈至所述物联网设备。
6.根据权利要求5所述的方法,其特征在于,所述生成所述第一策略信息,包括:
随机生成初始的防重放序列号;
随机确定所述物联网设备的防重放序列号增减策略,并生成包含所述物联网设备的防重放序列号增减策略的第二策略信息。
7.一种防重放攻击方法,其特征在于,应用于物联网设备,包括:
获取客户端发送的第一序列号和操作信息;其中,所述第一序列号由服务端基于与所述物联网终端唯一关联的第一策略信息生成,所述第一策略信息包含所述物联网终端的防重放序列号生成策略;
基于所述第一策略信息和所述第一序列号,检测重放攻击行为;
在重放攻击行为检测通过的情况下,基于所述操作信息执行目标操作。
8.根据权利要求7所述的方法,其特征在于,所述获取所述客户端发送的第一序列号和操作信息,包括:
获取所述客户端发送的第一序列号、所述操作信息、客户端信息和第一签名信息,所述客户端信息能够唯一标识所述客户端;
基于所述客户端信息,确定所述客户端的客户端证书;
基于所述客户端证书和所述第一签名信息,对所述第一序列号、所述操作信息和所述客户端信息验签;
在验签通过的情况下,确定所述第一序列号和所述操作信息有效。
9.根据权利要求7所述的方法,其特征在于,所述基于所述第一策略信息和所述第一序列号,检测重放攻击行为,包括:
获取第二序列号和第二策略信息;其中,所述第二序列号为初始的防重放序列号或所述服务端上一次基于所述第一策略信息生成的防重放序列号;
基于所述第二策略信息,确定所述物联网设备的防重放序列号的增减策略;
确定所述第一序列号和所述第二序列号之间的关系是否符合所述增减策略。
10.根据权利要求7所述的方法,其特征在于,还包括:
基于所述设备信息,向所述服务端发送用于请求生成所述第一策略信息的第二请求;
获取所述服务端生成的所述第一策略信息。
11.一种防重放攻击系统,其特征在于,包括物联网设备、客户端及服务端;
所述客户端配置为:基于所述物联网设备的设备信息,向服务端发送用于请求获取序列号的第一请求;
所述服务端配置为:基于所述设备信息,获取所述物联网设备唯一关联的第一策略信息;其中,所述第一策略信息包含所述物联网设备的防重放序列号生成策略;基于所述第一策略信息,生成第一序列号;将所述第一序列号反馈至所述客户端;
所述客户端还配置为:向所述物联网设备发送所述第一序列号和操作信息;
所述物联网设备配置为:基于所述第一策略信息和所述第一序列号,检测重放攻击行为;在重放攻击行为检测通过的情况下,基于所述操作信息执行目标操作。
12.一种电子设备,至少包括存储器和处理器,所述存储器上存储有程序,其特征在于,所述处理器在执行所述存储器上的程序时实现如权利要求1或2所述的方法、权利要求3-6中任一项所述的方法或者权利要求8-10中任一项所述的方法。
13.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,其特征在于,在执行所述计算机可读存储介质中的所述计算机可执行指令时实现如权利要求1或2所述的方法、权利要求3-6中任一项所述的方法或者权利要求8-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211583928.8A CN115766281B (zh) | 2022-12-09 | 2022-12-09 | 防重放攻击方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211583928.8A CN115766281B (zh) | 2022-12-09 | 2022-12-09 | 防重放攻击方法、系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115766281A true CN115766281A (zh) | 2023-03-07 |
CN115766281B CN115766281B (zh) | 2023-07-18 |
Family
ID=85345197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211583928.8A Active CN115766281B (zh) | 2022-12-09 | 2022-12-09 | 防重放攻击方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115766281B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116543485A (zh) * | 2023-06-15 | 2023-08-04 | 智慧云联信息技术(北京)有限公司 | 紧急求救方法、系统、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106898065A (zh) * | 2017-01-21 | 2017-06-27 | 云丁网络技术(北京)有限公司 | 一种智能门锁的开锁方法 |
WO2018127199A1 (zh) * | 2017-01-09 | 2018-07-12 | 云丁网络技术(北京)有限公司 | 一种基于智能门锁系统的离线验证码的生成方法及其系统 |
CN110473318A (zh) * | 2019-06-28 | 2019-11-19 | 阿里巴巴集团控股有限公司 | 解锁方法、实现解锁的设备及计算机可读介质 |
US10769873B1 (en) * | 2019-06-28 | 2020-09-08 | Alibaba Group Holding Limited | Secure smart unlocking |
CN112087438A (zh) * | 2020-08-28 | 2020-12-15 | 上海军睿信息技术有限公司 | 一种基于otp算法的防重放攻击的鉴别方法 |
WO2021121125A1 (zh) * | 2019-12-16 | 2021-06-24 | 华为技术有限公司 | 用于智能家居设备的控制方法及其介质和终端 |
CN113541967A (zh) * | 2021-09-13 | 2021-10-22 | 北京深思数盾科技股份有限公司 | 信息处理方法、电子设备及物联网终端系统 |
-
2022
- 2022-12-09 CN CN202211583928.8A patent/CN115766281B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018127199A1 (zh) * | 2017-01-09 | 2018-07-12 | 云丁网络技术(北京)有限公司 | 一种基于智能门锁系统的离线验证码的生成方法及其系统 |
CN110192228A (zh) * | 2017-01-09 | 2019-08-30 | 云丁网络技术(北京)有限公司 | 一种基于智能门锁系统的离线验证码的生成方法及其系统 |
CN106898065A (zh) * | 2017-01-21 | 2017-06-27 | 云丁网络技术(北京)有限公司 | 一种智能门锁的开锁方法 |
CN110473318A (zh) * | 2019-06-28 | 2019-11-19 | 阿里巴巴集团控股有限公司 | 解锁方法、实现解锁的设备及计算机可读介质 |
US10769873B1 (en) * | 2019-06-28 | 2020-09-08 | Alibaba Group Holding Limited | Secure smart unlocking |
WO2021121125A1 (zh) * | 2019-12-16 | 2021-06-24 | 华为技术有限公司 | 用于智能家居设备的控制方法及其介质和终端 |
CN112087438A (zh) * | 2020-08-28 | 2020-12-15 | 上海军睿信息技术有限公司 | 一种基于otp算法的防重放攻击的鉴别方法 |
CN113541967A (zh) * | 2021-09-13 | 2021-10-22 | 北京深思数盾科技股份有限公司 | 信息处理方法、电子设备及物联网终端系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116543485A (zh) * | 2023-06-15 | 2023-08-04 | 智慧云联信息技术(北京)有限公司 | 紧急求救方法、系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115766281B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10204241B2 (en) | Theft and tamper resistant data protection | |
US10880306B2 (en) | Verification information update | |
CN110392014B (zh) | 物联网设备之间的通信方法及装置 | |
JP6574168B2 (ja) | 端末識別方法、ならびにマシン識別コードを登録する方法、システム及び装置 | |
US9112828B2 (en) | Method for defending against session hijacking attacks and firewall | |
CN106302308B (zh) | 一种信任登录方法和装置 | |
WO2015062461A1 (en) | Method and system for verifying user identity of an online application | |
US20150113618A1 (en) | Verifying the security of a remote server | |
US20150143545A1 (en) | Function for the Challenge Derivation for Protecting Components in a Challenge-Response Authentication Protocol | |
KR20150036104A (ko) | 로그인 검증의 방법, 클라이언트, 서버 및 시스템 | |
US9490986B2 (en) | Authenticating a node in a communication network | |
CN108965331B (zh) | 登录校验方法、装置和登录系统 | |
US20140157368A1 (en) | Software authentication | |
WO2019134234A1 (zh) | 防刷登录的方法、装置、终端设备及存储介质 | |
US11425165B2 (en) | Methods, systems, articles of manufacture and apparatus to reduce spoofing vulnerabilities | |
KR20200102213A (ko) | 차량 내 네트워크에서 보안을 제공하는 방법 및 시스템 | |
GB2511054A (en) | Protecting multi-factor authentication | |
WO2023174393A1 (zh) | 一种安全评估方法及装置、电子设备和可读存储介质 | |
CN115766281B (zh) | 防重放攻击方法、系统、电子设备及存储介质 | |
US10892901B1 (en) | Facial data collection and verification | |
CN111831974A (zh) | 接口保护方法、装置、电子设备及存储介质 | |
CN110943840A (zh) | 一种签名验证方法及系统 | |
CN110301127B (zh) | 用于预测性令牌验证的装置和方法 | |
CN110034922B (zh) | 请求处理方法、处理装置以及请求验证方法、验证装置 | |
US9129283B1 (en) | Accessing confidential data securely using a trusted network of mobile devices |
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 |