CN111343611B - 一种信息同步的方法和装置 - Google Patents
一种信息同步的方法和装置 Download PDFInfo
- Publication number
- CN111343611B CN111343611B CN201910108050.4A CN201910108050A CN111343611B CN 111343611 B CN111343611 B CN 111343611B CN 201910108050 A CN201910108050 A CN 201910108050A CN 111343611 B CN111343611 B CN 111343611B
- Authority
- CN
- China
- Prior art keywords
- terminal
- message
- count value
- server
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例提供了一种信息同步的方法和装置,所述信息同步的方法包括:终端向服务器发送第一消息,所述第一消息包括第一计数值;所述终端接收所述服务器发送的第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一消息包括第一计数值后生成的,所述第二计数值用于同步所述终端的目标计数值;所述终端向所述服务器发送第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。本申请实施例中,服务器可以及时地向终端设备同步数据帧的计数值,使得终端可以在数据帧传输中使用正确的计数值,提高了终端和服务器之间的交互效率。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种信息同步的方法以及装置。
背景技术
物联网技术是继计算机和互联网之后的第三次信息技术革命,具有实时性和交互性等优点,已经被广泛应用于城市管理、数字家庭、定位导航、物流管理、安保系统等多个领域。其中,LoRa是物联网中一种基于扩频技术的超远距离传输方案,具有传输距离远、低功耗、多节点和低成本等特性。LoRaWAN(LoRa Wide Area Network,LoRa广域网)是基于LoRa物理层技术的一种广域网。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种信息同步的方法以及装置。
为了解决上述问题,本申请实施例公开了一种信息同步的方法,包括:
终端向服务器发送第一消息,所述第一消息包括第一计数值;
所述终端接收所述服务器发送的第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
所述终端向所述服务器发送第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
优选的,在终端向服务器发送第一消息之前,还包括:
所述终端进行重置。
优选的,还包括:
所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
优选的,还包括:
所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
优选的,还包括:
所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
优选的,还包括:
所述第一命令信息可以包括在数据帧开销中。
优选的,还包括:
所述第一命令信息可包括在数据帧可选字段中。
优选的,还包括:
所述第一命令信息可以是不加密的。
本申请实施例还公开了一种信息同步的方法,包括:
服务器接收终端发送的第一消息,所述第一消息包括第一计数值;
所述服务器向终端发送第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
所述服务器接收所述终端发送的第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
优选的,还包括:
所述第一消息还包括第一标识,所述服务器根据所述第一标识获取所述第二计数值;
所述服务器判断所述第二计数值大于所述第一计数值,生成所述第二消息;
优选的,还包括:
所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
优选的,还包括:
所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
优选的,还包括:
所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
优选的,还包括:
所述第一命令信息可以包括在数据帧开销中。
优选的,还包括:
所述第一命令信息可包括在数据帧可选字段中。
优选的,还包括:
所述第一命令信息可以是不加密的。
本申请实施例还公开了一种信息同步的通信装置,包括:
位于终端的发送模块,用于向服务器发送第一消息,所述第一消息包括第一计数值;
位于终端的接收模块,用于接收所述服务器发送的第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
位于终端的发送模块,用于向所述服务器发送第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
优选的,还包括:
所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
优选的,还包括:
所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
优选的,还包括:
所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
优选的,还包括:
所述第一命令信息可以包括在数据帧开销中。
优选的,还包括:
所述第一命令信息可包括在数据帧可选字段中。
优选的,还包括:
所述第一命令信息可以是不加密的。
本申请实施例还公开了一种终端与基站的通信装置,包括:
位于服务器的接收模块,用于接收终端发送的第一消息,所述第一消息包括第一计数值;
位于服务器的发送模块,用于向终端发送第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一消息包括第一计数值后生成的,所述第二计数值用于同步所述终端的目标计数值;
位于服务器的接收模块,用于接收所述终端发送的第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
优选的,还包括:
所述第一消息还包括第一标识,所述服务器根据所述第一标识获取所述第二计数值;
所述服务器判断所述第二计数值大于所述第一计数值,生成所述第二消息;
优选的,还包括:
所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
优选的,还包括:
所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
优选的,还包括:
所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
优选的,还包括:
所述第一命令信息可以包括在数据帧开销中。
优选的,还包括:
所述第一命令信息可包括在数据帧可选字段中。
优选的,还包括:
所述第一命令信息可以是不加密的。
本申请实施例还公开了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如上所述的一个或多个的方法。
本申请实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如权上所述的一个或多个的方法。
本申请实施例包括以下优点:
本申请实施例中,服务器可以及时地向终端设备同步数据帧的计数值,使得终端可以在数据帧传输中使用正确的计数值,避免服务器由于计数值不匹配而拒绝接收终端设备发送的数据帧,提高了终端和服务器之间的交互效率。
附图说明
图1是本申请的一种信息同步的方法实施例1的流程图;
图2是本申请的一种信息同步的方法实施例2的流程图;
图3是本申请的一种信息同步的装置实施例3的结构框图;
图4是本申请的一种信息同步的装置实施例4的结构框图;
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
LoRa网络由终端节点、基站节点和服务器组成。终端具有LoRa网络连接能力,并接入该LoRa网络。根据该LoRa网络所部署的应用场景的不同,该终端可以包括不同的电子设备,比如,在该LoRa网络应用于城市管理中时,该终端可以包括智能电表;在该LoRa网络应用于数字家庭中时,该终端可以包括各种智能家电等等。
基站,在LoRa网络中又称为网关或者集中器,具有无线连接汇聚功能,包括终端提供接入LoRa网络的入口,对来自服务器或终端的数据进行转发,实现该终端与该服务器之间的数据交互。当然,基站也能够与处于该基站的信号覆盖范围内的其它基站通过传输无线帧的方式进行数据交互。
服务器可以包括一个服务器或者服务器集群,用于根据从基站或终端获取到的数据进行业务处理,以及对该基站或该终端的工作模式和工作状态进行控制。
本申请实施例的核心构思之一在于,服务器通过MAC命令信息或者其它形式的下行通知信息告知终端正确的计数值,并且检验终端接下来发送的数据帧是否是正确的计数值,如果正确,则接收接下来的数据帧。
以下,首先从终端的角度介绍信息同步的流程。
参照图1,示出了本申请的一种信息同步的方法实施例1的流程图,具体可以包括如下:
步骤101,终端向服务器发送第一消息,所述第一消息包括第一计数值;
具体地,终端为LoRaWAN终端。服务器为LoRaWAN服务器。第一消息为任意上行数据帧。第一计数值为上行计数值(FCntUp)。
在LoRa网络中,终端是通过至少一个网关向服务器发送第一消息的。网关也可以叫做基站。终端发送的第一消息可以由多个网关接受,并且由所述多个网关转发给网络服务器。
在本申请实施例中,所述步骤101之前可以包括如下子步骤:
子步骤S1011,所述终端进行重置;
具体地,终端重置可以是由于电路逻辑问题、软件故障等原因。可选的,终端也有可能进行重启或者恢复出厂设置。
步骤102,所述终端接收所述服务器发送的第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一消息包括第一计数值后生成的,所述第二计数值用于同步所述终端的目标计数值;
具体地,第二消息可以是介质访问控制(MediaAccessControl,MAC)指令。第一命令信息可以是计数值同步请求命令。第二计数值可以是服务器记录的终端最新的上行计数值。目标计数值可以是终端记录的最新的上行计数值。服务器在接收到终端发送的上行数据帧后,读取数据帧上的终端扩展唯一标识符(Device Extended Unique Identifier,DevEUI)、终端地址(DevAddr)或者入网扩展唯一标识符(JoinExtendedUniqueIdentifier,JoinEUI)。服务器根据上述标识中的任意一种获取终端对应的上行计数值,并且判断该记录的上行计数值和收到的上行数据帧中的上行计数值不匹配。不匹配指服务器侧记录的上行计数值大于上行数据帧中的上行计数值。随后,服务器向终端发送MAC指令,MAC指令中携带服务器记录的终端最新的上行计数值,即第二计数值。
在LoRa网络中,终端是通过网关接收服务器发送第二消息。网关也可以叫做基站。服务器根据终端上行数据帧的接收信号强度或者是其他参数确定一个用于传输第二消息的网关,并且通过该网关将第二消息发送给终端。
在本申请实施例中,所述步骤102可以包括如下子步骤:
子步骤S1021,所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
具体地,第三计数值可以是下行计数值(FCntDown)。终端可以根据MAC指令中的下行计数值来更新自身记录的下行计数值。当接收到服务器发送的下行数据帧后,终端可以根据更新后的下行计数值来判断是否可以正常接收下行数据帧。判断的原则可以是,如果接收到的下行数据帧中的下行计数值不小于终端更新后的下行计数值,则可以继续处理该下行数据帧,否则丢弃该数据帧。
在本申请实施例中,所述步骤102可以包括如下子步骤:
子步骤S1022,所述第一命令信息可以包括在数据帧开销中。
具体地,MAC指令可以包含在下行数据帧的开销(payload)中,终端可以从下行数据帧的开销中读取MAC指令中包含的上行计数值。可选的,MAC指令中也可以包括至少一个下行计数值。
在本申请实施例中,所述步骤102可以包括如下子步骤:
子步骤S1023,所述第一命令信息可包括在数据帧可选字段中。
具体地,MAC指令可以包含在下行数据帧的可选字段中,终端可以从下行数据帧的可选字段中读取MAC指令中包含的上行计数值。可选的,MAC指令中也可以包括至少一个下行计数值。
在本申请实施例中,所述步骤102可以包括如下子步骤:
子步骤S1024,所述第一命令信息可以是不加密的。
具体地,当MAC指令包括在数据帧的可选字段(FOpts)中时,可以是不加密的。
在本申请实施例中,所述步骤102可以包括如下子步骤:
子步骤S1025,所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
具体地,第一随机值可以是一个服务器生成的计数值随机数。由于计数值同步请求命令以及计数值同步响应消息本身没有通过任何计数值来防止重放攻击。在服务器多次和终端进行计数值同步的情况下,攻击者可以截获终端向服务器发送的计数值同步响应消息。攻击者可以在此后接收到服务器发送的计数值同步请求命令后,用之前捕获的终端发送的计数值同步响应消息来进行重放攻击。为了防止这个问题,可以在第二消息中增加一个计数值随机数。终端收到第二消息后,获取计数值随机数,并且在发送的第三消息中携带此计数值随机数。服务器在收到终端对于计数值同步请求命令的响应消息后,获取响应消息中的计数值随机数。服务器判断是否和之前发送的计数值随机数相同,如果相同的话,则可以接收次响应消息。如果不相同,则认定同步响应消息为重放攻击,并且拒绝结束和处理。
可选的,计数值随机数也可以用来衍生密钥。例如,终端在接收到计数值同步请求命令后,用其中包括的计数值随机数生成一个密钥。终端用生成的密钥加密计数值同步响应消息,并且发送给服务器。服务器根据计数值随机数生成密钥,并且用密钥解密计数值同步响应消息。上述两种技术值随机数的使用都可以起到在同步技术值过程中,服务器和终端之间的双向鉴权。
步骤103,所述终端向所述服务器发送第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
具体地,第三消息为终端接收到服务器发送的携带有第二计数值的MAC指令后,向服务器发送的上行数据帧。第三消息可以是计数值同步响应消息。第四计数值为终端接收到MAC指令中携带的第二计数值后,重新生成的上行计数值。第四计数值可以是比第二计数值大的任意数值。例如,如果第二计数值的值为5。则第四计数值可以为6,7,8或者更大的数值。
在本申请实施例中,所述步骤103可以包括如下子步骤:
子步骤S1031,所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
具体地,第一随机值可以是一个服务器生成的计数值随机数。由于计数值同步请求命令以及计数值同步响应消息本身没有通过任何计数值来防止重放攻击。在服务器多次和终端进行计数值同步的情况下,攻击者可以截获终端向服务器发送的计数值同步响应消息。攻击者可以在此后接收到服务器发送的计数值同步请求命令后,用之前捕获的终端发送的计数值同步响应消息来进行重放攻击。为了防止这个问题,可以在第二消息中增加一个计数值随机数。终端收到第二消息后,获取计数值随机数,并且在发送的第三消息中携带此计数值随机数。服务器在收到终端对于计数值同步请求命令的响应消息后,获取响应消息中的计数值随机数。服务器判断是否和之前发送的计数值随机数相同,如果相同的话,则可以接收次响应消息。如果不相同,则认定同步响应消息为重放攻击,并且拒绝结束和处理。
可选的,计数值随机数也可以用来衍生密钥。例如,终端在接收到计数值同步请求命令后,用其中包括的计数值随机数生成一个密钥。终端用生成的密钥加密计数值同步响应消息,并且发送给服务器。服务器根据计数值随机数生成密钥,并且用密钥解密计数值同步响应消息。上述两种技术值随机数的使用都可以起到在同步技术值过程中,服务器和终端之间的双向鉴权。
通过本实施例,服务器可以及时地向终端设备同步数据帧的计数值,使得终端可以在数据帧传输中使用正确的计数值,避免服务器由于计数值不匹配而拒绝接收终端设备发送的数据帧,提高了终端和服务器之间的交互效率。
参照图2,示出了本申请的一种信息同步的方法实施例2的流程图,具体可以包括如下:
步骤201,服务器接收终端发送的第一消息,所述第一消息包括第一计数值;
具体地,终端为LoRaWAN终端。服务器为LoRaWAN服务器。第一消息为任意上行数据帧。第一计数值为上行计数值(FCntUp)。
在LoRa网络中,服务器是通过至少一个网关接收终端发送的第一消息的。网关也可以叫做基站。终端发送的第一消息可以由多个网关接受,并且由所述多个网关转发给网络服务器。
在本申请实施例中,所述步骤201可以包括如下子步骤:
子步骤S2011,所述第一消息还包括第一标识,所述服务器根据所述第一标识获取所述第二计数值;
具体地,第一标识可以是终端扩展唯一标识符(Device Extended UniqueIdentifier,DevEUI)终端地址(DevAddr)或者入网扩展唯一标识符(JoinExtendedUniqueIdentifier,JoinEUI)中的任意一个。服务器可以根据第一标识来找到对应终端最新的上行计数值。
子步骤S2012,所述服务器判断所述第二计数值大于所述第一计数值,生成所述第二消息;
具体地,如果第二计数值大于所述第一计数值,则服务器为终端生成一个用来同步计数值的MAC指令。
步骤202,所述服务器向终端发送第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
具体地,第二消息可以是介质访问控制(MediaAccessControl,MAC)指令。第二计数值可以是服务器记录的终端最新的上行计数值。目标计数值可以是终端记录的最新的上行计数值。服务器在接收到终端发送的上行数据帧后,读取数据帧上的终端扩展唯一标识符(Device Extended Unique Identifier,DevEUI)终端地址(DevAddr)或者入网扩展唯一标识符(JoinExtendedUniqueIdentifier,JoinEUI)。服务器根据上述标识中的任意一种获取终端对应的上行计数值,并且判断该记录的上行计数值和收到的上行数据帧中的上行计数值不匹配。不匹配指服务器侧记录的上行计数值大于上行数据帧中的上行计数值。随后,服务器向终端发送MAC指令,MAC指令中携带服务器记录的终端最新的上行计数值,即第二计数值。
在LoRa网络中,服务器是通过网关向终端发送第二消息。网关也可以叫做基站。服务器根据终端上行数据帧的接收信号强度或者是其他参数确定一个用于传输第二消息的网关,并且通过该网关将第二消息发送给终端。
在本申请实施例中,所述步骤202可以包括如下子步骤:
子步骤S2021,所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
具体地,第三计数值可以是下行计数值(FCntDown)。终端可以根据MAC指令中的下行计数值来更新自身记录的下行计数值。当接收到服务器发送的下行数据帧后,终端可以根据更新后的下行计数值来判断是否可以正常接收下行数据帧。判断的原则可以是,如果接收到的下行数据帧中的下行计数值不小于终端更新后的下行计数值,则可以继续处理该下行数据帧,否则丢弃该数据帧。
在本申请实施例中,所述步骤202可以包括如下子步骤:
子步骤S2022,所述第一命令信息可以包括在数据帧开销中。
具体地,MAC指令可以包含在下行数据帧的开销(payload)中,终端可以从下行数据帧的开销中读取MAC指令中包含的上行计数值。可选的,MAC指令中也可以包括至少一个下行计数值。
在本申请实施例中,所述步骤202可以包括如下子步骤:
子步骤S2023,所述第一命令信息可包括在数据帧可选字段中。
具体地,MAC指令可以包含在下行数据帧的可选字段中,终端可以从下行数据帧的可选字段中读取MAC指令中包含的上行计数值。可选的,MAC指令中也可以包括至少一个下行计数值。
在本申请实施例中,所述步骤202可以包括如下子步骤:
子步骤S2024,所述第一命令信息可以是不加密的。
具体地,当MAC指令包括在数据帧的可选字段(FOpts)中时,可以是不加密的。
在本申请实施例中,所述步骤202可以包括如下子步骤:
子步骤S2025,所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
具体地,第一随机值可以是一个服务器生成的计数值随机数。由于计数值同步请求命令以及计数值同步响应消息本身没有通过任何计数值来防止重放攻击。在服务器多次和终端进行计数值同步的情况下,攻击者可以截获终端向服务器发送的计数值同步响应消息。攻击者可以在此后接收到服务器发送的计数值同步请求命令后,用之前捕获的终端发送的计数值同步响应消息来进行重放攻击。为了防止这个问题,可以在第二消息中增加一个计数值随机数。终端收到第二消息后,获取计数值随机数,并且在发送的第三消息中携带此计数值随机数。服务器在收到终端对于计数值同步请求命令的响应消息后,获取响应消息中的计数值随机数。服务器判断是否和之前发送的计数值随机数相同,如果相同的话,则可以接收次响应消息。如果不相同,则认定同步响应消息为重放攻击,并且拒绝结束和处理。
可选的,计数值随机数也可以用来衍生密钥。例如,终端在接收到计数值同步请求命令后,用其中包括的计数值随机数生成一个密钥。终端用生成的密钥加密计数值同步响应消息,并且发送给服务器。服务器根据计数值随机数生成密钥,并且用密钥解密计数值同步响应消息。上述两种技术值随机数的使用都可以起到在同步技术值过程中,服务器和终端之间的双向鉴权。
步骤203,所述服务器接收所述终端发送的第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
具体地,第三消息为终端接收到服务器发送的携带有第二计数值的MAC指令后,向服务器发送的上行数据帧。第四计数值为终端接收到MAC指令中携带的第二计数值后,重新生成的上行计数值。第四计数值可以是比第二计数值大的任意数值。例如,如果第二计数值的值为5。则第四计数值可以为6,7,8或者更大的数值。
在本申请实施例中,所述步骤103可以包括如下子步骤:
子步骤S1031,所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
具体地,第一随机值可以是一个服务器生成的计数值随机数。由于计数值同步请求命令以及计数值同步响应消息本身没有通过任何计数值来防止重放攻击。在服务器多次和终端进行计数值同步的情况下,攻击者可以截获终端向服务器发送的计数值同步响应消息。攻击者可以在此后接收到服务器发送的计数值同步请求命令后,用之前捕获的终端发送的计数值同步响应消息来进行重放攻击。为了防止这个问题,可以在第二消息中增加一个计数值随机数。终端收到第二消息后,获取计数值随机数,并且在发送的第三消息中携带此计数值随机数。服务器在收到终端对于计数值同步请求命令的响应消息后,获取响应消息中的计数值随机数。服务器判断是否和之前发送的计数值随机数相同,如果相同的话,则可以接收次响应消息。如果不相同,则认定同步响应消息为重放攻击,并且拒绝结束和处理。
可选的,计数值随机数也可以用来衍生密钥。例如,终端在接收到计数值同步请求命令后,用其中包括的计数值随机数生成一个密钥。终端用生成的密钥加密计数值同步响应消息,并且发送给服务器。服务器根据计数值随机数生成密钥,并且用密钥解密计数值同步响应消息。上述两种技术值随机数的使用都可以起到在同步技术值过程中,服务器和终端之间的双向鉴权。
通过本实施例,服务器可以及时地向终端设备同步数据帧的计数值,使得终端可以在数据帧传输中使用正确的计数值,避免服务器由于计数值不匹配而拒绝接收终端设备发送的数据帧,提高了终端和服务器之间的交互效率。
参照图3,示出了本申请的一种信息同步的通信装置实施例3的结构框图,具体可以包括如下步骤:
位于终端的发送模块1001,用于向服务器发送第一消息,所述第一消息包括第一计数值;
具体地,终端为LoRaWAN终端。服务器为LoRaWAN服务器。第一消息为任意上行数据帧。第一计数值为上行计数值(FCntUp)。
在LoRa网络中,终端是通过至少一个网关向服务器发送第一消息的。网关也可以叫做基站。终端发送的第一消息可以由多个网关接受,并且由所述多个网关转发给网络服务器。
位于终端的接收模块1002,用于接收所述服务器发送的第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
具体地,第二消息可以是介质访问控制(MediaAccessControl,MAC)指令。第二计数值可以是服务器记录的终端最新的上行计数值。目标计数值可以是终端记录的最新的上行计数值。服务器在接收到终端发送的上行数据帧后,读取数据帧上的终端扩展唯一标识符(Device Extended Unique Identifier,DevEUI)、终端地址(DevAddr)或者入网扩展唯一标识符(JoinExtendedUniqueIdentifier,JoinEUI)。服务器根据上述标识中的任意一种获取终端对应的上行计数值,并且判断该记录的上行计数值和收到的上行数据帧中的上行计数值不匹配。不匹配指服务器侧记录的上行计数值大于上行数据帧中的上行计数值。随后,服务器向终端发送MAC指令,MAC指令中携带服务器记录的终端最新的上行计数值,即第二计数值。
在LoRa网络中,终端是通过网关接收服务器发送第二消息。网关也可以叫做基站。服务器根据终端上行数据帧的接收信号强度或者是其他参数确定一个用于传输第二消息的网关,并且通过该网关将第二消息发送给终端。
位于终端的发送模块1001,用于向所述服务器发送第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
具体地,第三消息为终端接收到服务器发送的携带有第二计数值的MAC指令后,向服务器发送的上行数据帧。第四计数值为终端接收到MAC指令中携带的第二计数值后,重新生成的上行计数值。第四计数值可以是比第二计数值大的任意数值。例如,如果第二计数值的值为5。则第四计数值可以为6,7,8或者更大的数值。
通过本实施例,服务器可以及时地向终端设备同步数据帧的计数值,使得终端可以在数据帧传输中使用正确的计数值,避免服务器由于计数值不匹配而拒绝接收终端设备发送的数据帧,提高了终端和服务器之间的交互效率。
参照图4,示出了本申请的一种信息同步的通信装置实施例4的结构框图,具体可以包括如下步骤:
位于服务器的接收模块1101,用于接收终端发送的第一消息,所述第一消息包括第一计数值;
具体地,终端为LoRaWAN终端。服务器为LoRaWAN服务器。第一消息为任意上行数据帧。第一计数值为上行计数值(FCntUp)。
在LoRa网络中,服务器是通过至少一个网关接收终端发送的第一消息的。网关也可以叫做基站。终端发送的第一消息可以由多个网关接受,并且由所述多个网关转发给网络服务器。
位于服务器的发送模块1102,用于向终端发送第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
具体地,第二消息可以是介质访问控制(MediaAccessControl,MAC)指令。第二计数值可以是服务器记录的终端最新的上行计数值。目标计数值可以是终端记录的最新的上行计数值。服务器在接收到终端发送的上行数据帧后,读取数据帧上的终端扩展唯一标识符(Device Extended Unique Identifier,DevEUI)终端地址(DevAddr)或者入网扩展唯一标识符(JoinExtendedUniqueIdentifier,JoinEUI)。服务器根据上述标识中的任意一种获取终端对应的上行计数值,并且判断该记录的上行计数值和收到的上行数据帧中的上行计数值不匹配。不匹配指服务器侧记录的上行计数值大于上行数据帧中的上行计数值。随后,服务器向终端发送MAC指令,MAC指令中携带服务器记录的终端最新的上行计数值,即第二计数值。
在LoRa网络中,服务器是通过网关向终端发送第二消息。网关也可以叫做基站。服务器根据终端上行数据帧的接收信号强度或者是其他参数确定一个用于传输第二消息的网关,并且通过该网关将第二消息发送给终端。
位于服务器的接收模块1101,用于接收所述终端发送的第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
具体地,第三消息为终端接收到服务器发送的携带有第二计数值的MAC指令后,向服务器发送的上行数据帧。第四计数值为终端接收到MAC指令中携带的第二计数值后,重新生成的上行计数值。第四计数值可以是比第二计数值大的任意数值。例如,如果第二计数值的值为5。则第四计数值可以为6,7,8或者更大的数值。
通过本实施例,服务器可以及时地向终端设备同步数据帧的计数值,使得终端可以在数据帧传输中使用正确的计数值,避免服务器由于计数值不匹配而拒绝接收终端设备发送的数据帧,提高了终端和服务器之间的交互效率。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例还提供了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行本申请实施例所述的方法。
本申请实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行本申请实施例所述的方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种信息同步的方法、一种信息同步的装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (33)
1.一种信息同步的方法,其特征在于,包括:
终端向服务器发送第一消息,所述第一消息包括第一计数值;
所述终端接收所述服务器发送的第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
所述终端向所述服务器发送第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
2.根据权利要求1所述的方法,其特征在于,在终端向服务器发送第一消息之前,该方法还包括:
所述终端进行重置。
3.根据权利要求1所述的方法,其特征在于,还包括:
所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
4.根据权利要求1所述的方法,其特征在于,还包括:
所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
5.根据权利要求1所述的方法,其特征在于,还包括:
所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
6.根据权利要求1所述的方法,其特征在于,还包括:
所述第一命令信息包括在数据帧开销中。
7.根据权利要求1所述的方法,其特征在于,还包括:
所述第一命令信息包括在数据帧可选字段中。
8.根据权利要求1所述的方法,其特征在于,还包括:
所述第一命令信息是不加密的。
9.一种信息同步的方法,其特征在于,包括:
服务器接收终端发送的第一消息,所述第一消息包括第一计数值;
所述服务器向终端发送第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
所述服务器接收所述终端发送的第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
10.根据权利要求9所述的方法,其特征在于,还包括:
所述第一消息还包括第一标识,所述服务器根据所述第一标识获取所述第二计数值;
所述服务器判断所述第二计数值大于所述第一计数值,生成所述第二消息。
11.根据权利要求9所述的方法,其特征在于,还包括:
所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
12.根据权利要求9所述的方法,其特征在于,还包括:
所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
13.根据权利要求9所述的方法,其特征在于,还包括:
所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
14.根据权利要求9所述的方法,其特征在于,还包括:
所述第一命令信息包括在数据帧开销中。
15.根据权利要求9所述的方法,其特征在于,还包括:
所述第一命令信息包括在数据帧可选字段中。
16.根据权利要求9所述的方法,其特征在于,还包括:
所述第一命令信息是不加密的。
17.一种信息同步的通信装置,其特征在于,包括:
位于终端的发送模块,用于向服务器发送第一消息,所述第一消息包括第一计数值;
位于终端的接收模块,用于接收所述服务器发送的第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
位于终端的发送模块,用于向所述服务器发送第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
18.根据权利要求17所述的装置,其特征在于,还包括位于终端的处理模块,用于在终端向服务器发送第一消息之前,对所述终端进行重置。
19.根据权利要求17所述的装置,其特征在于,还包括:
所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
20.根据权利要求17所述的装置,其特征在于,还包括:
所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
21.根据权利要求17所述的装置,其特征在于,还包括:
所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
22.根据权利要求17所述的装置,其特征在于,还包括:
所述第一命令信息包括在数据帧开销中。
23.根据权利要求17所述的装置,其特征在于,还包括:
所述第一命令信息包括在数据帧可选字段中。
24.根据权利要求17所述的装置,其特征在于,还包括:
所述第一命令信息是不加密的。
25.一种信息同步的通信装置,其特征在于,包括:
位于服务器的接收模块,用于接收终端发送的第一消息,所述第一消息包括第一计数值;
位于服务器的发送模块,用于向终端发送第二消息,所述第二消息包括第一命令信息,所述第一命令信息包括第二计数值,所述第一命令信息为所述服务器判断所述第一计数值不满足预设条件后生成的,所述第二计数值用于同步所述终端的目标计数值,所述预设条件为所述第一计数值不大于第二计数值;
位于服务器的接收模块,用于接收所述终端发送的第三消息,所述第三消息包括第四计数值,所述第四计数值不小于目标计数值。
26.根据权利要求25所述的装置,其特征在于,还包括:
所述第一消息还包括第一标识,所述服务器根据所述第一标识获取所述第二计数值;
所述服务器判断所述第二计数值大于所述第一计数值,生成所述第二消息。
27.根据权利要求25所述的装置,其特征在于,还包括:
所述第一命令信息包括至少一个第三计数值,所述第三计数值用于同步终端收到的下行数据帧的计数值。
28.根据权利要求25所述的装置,其特征在于,还包括:
所述第二消息包括第一随机值,所述第一随机值用于使得所述终端验证所述第二消息。
29.根据权利要求25所述的装置,其特征在于,还包括:
所述第三消息包括第一随机值,所述第一随机值用于使得所述服务器验证所述第三消息。
30.根据权利要求25所述的装置,其特征在于,还包括:
所述第一命令信息包括在数据帧开销中。
31.根据权利要求25所述的装置,其特征在于,还包括:
所述第一命令信息包括在数据帧可选字段中。
32.根据权利要求25所述的装置,其特征在于,还包括:
所述第一命令信息是不加密的。
33.一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如权利要求1-16中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018115536293 | 2018-12-18 | ||
CN201811553629 | 2018-12-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111343611A CN111343611A (zh) | 2020-06-26 |
CN111343611B true CN111343611B (zh) | 2022-11-22 |
Family
ID=71186733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910108050.4A Active CN111343611B (zh) | 2018-12-18 | 2019-02-02 | 一种信息同步的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111343611B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111917617B (zh) * | 2020-07-31 | 2022-03-29 | 宁波奥克斯电气股份有限公司 | 智能家电设备控制方法、装置、服务器及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106302218A (zh) * | 2015-05-29 | 2017-01-04 | 中兴通讯股份有限公司 | 网络负荷的分担方法和装置 |
CN106464499A (zh) * | 2014-06-05 | 2017-02-22 | Kddi株式会社 | 通信网络系统、发送节点、接收节点、消息检查方法及计算机程序 |
CN107360000A (zh) * | 2012-07-24 | 2017-11-17 | 华为技术有限公司 | 计数器检查方法和装置 |
JP2018029352A (ja) * | 2017-09-25 | 2018-02-22 | Kddi株式会社 | 通信ネットワークシステム、車両、カウンタ値通知ノード、カウンタ値共有方法、及びコンピュータプログラム |
CN113132074A (zh) * | 2019-12-31 | 2021-07-16 | 华为技术有限公司 | 信息传输方法、通信设备与系统、计算机可读存储介质 |
-
2019
- 2019-02-02 CN CN201910108050.4A patent/CN111343611B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107360000A (zh) * | 2012-07-24 | 2017-11-17 | 华为技术有限公司 | 计数器检查方法和装置 |
CN106464499A (zh) * | 2014-06-05 | 2017-02-22 | Kddi株式会社 | 通信网络系统、发送节点、接收节点、消息检查方法及计算机程序 |
CN106302218A (zh) * | 2015-05-29 | 2017-01-04 | 中兴通讯股份有限公司 | 网络负荷的分担方法和装置 |
JP2018029352A (ja) * | 2017-09-25 | 2018-02-22 | Kddi株式会社 | 通信ネットワークシステム、車両、カウンタ値通知ノード、カウンタ値共有方法、及びコンピュータプログラム |
CN113132074A (zh) * | 2019-12-31 | 2021-07-16 | 华为技术有限公司 | 信息传输方法、通信设备与系统、计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111343611A (zh) | 2020-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10708248B2 (en) | Vehicle and method for controlling same | |
EP3281436B1 (en) | Method and apparatus for downloading a profile in a wireless communication system | |
EP3605995A1 (en) | Method and apparatus for discussing digital certificate by esim terminal and server | |
US20140010108A1 (en) | Relay assisted peer discovery | |
CN108683690B (zh) | 鉴权方法、用户设备、鉴权装置、鉴权服务器和存储介质 | |
CN110637442B (zh) | 终端信息的传递方法及相关产品 | |
JP2019509698A (ja) | 無線アクセス制御方法、装置およびシステム | |
CN107683596B (zh) | 用于末端装置发现另一个末端装置的方法和设备 | |
CN110535808B (zh) | 一种设备监控、去注册方法及装置 | |
CN107820246B (zh) | 用户认证的方法、装置和系统 | |
CN110086839B (zh) | 一种远端设备的动态接入方法及装置 | |
KR20070026869A (ko) | 네트워크들의 안전한 배치를 달성하기 위한 시스템 및 방법 | |
CN111405549B (zh) | 一种终端与基站的通信方法和装置 | |
CN111263361A (zh) | 基于区块链网络的连接认证方法、装置及微基站 | |
WO2021026763A1 (en) | Data security for network slice management | |
CN111343611B (zh) | 一种信息同步的方法和装置 | |
CN110087338B (zh) | 一种窄带物联网进行鉴权的方法及设备 | |
CN113302895B (zh) | 用于认证无线通信设备群组的方法和装置 | |
CN110278597B (zh) | 一种终端与基站的通信、终端的入网方法和装置 | |
US11916923B2 (en) | Method for restricting memory write access in IoT devices | |
CN102143494A (zh) | 数据上报方法、数据上报装置和m2m设备 | |
CN108370369B (zh) | 使用重定向促进客户端设备和应用服务器之间安全通信的网关、客户端设备和方法 | |
US11381562B2 (en) | Detection of a user equipment type related to access, services authorization and/or authentication | |
CN111050401B (zh) | 一种终端与基站的通信方法和装置 | |
CN115866597B (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 |