CN107959930A - 终端接入方法、装置、Lora服务器及Lora终端 - Google Patents
终端接入方法、装置、Lora服务器及Lora终端 Download PDFInfo
- Publication number
- CN107959930A CN107959930A CN201711157989.7A CN201711157989A CN107959930A CN 107959930 A CN107959930 A CN 107959930A CN 201711157989 A CN201711157989 A CN 201711157989A CN 107959930 A CN107959930 A CN 107959930A
- Authority
- CN
- China
- Prior art keywords
- lora
- key
- message
- terminals
- servers
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/02—Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例提供了一种终端接入方法、装置、Lora服务器及Lora终端,其中,终端接入方法包括:在接收到Lora终端发送的加入请求报文之后,如果允许Lora终端加入,则判断本地记录的Lora终端的应用密钥是否为预设密钥;如果是,则根据加入请求报文中携带的Lora终端的唯一标识生成的密钥,对针对加入请求报文响应的加入确认报文进行加密,得到第一加密报文;将第一加密报文发送至Lora终端,以使Lora终端在确定本地应用密钥是预设密钥时,根据唯一标识生成的密钥,对第一加密报文进行解密,并根据解密后的报文内容接入Lora服务器。通过本方案可以保证Lora终端正常接入Lora服务器。
Description
技术领域
本发明涉及无线通信技术领域,特别是涉及一种终端接入方法、装置、Lora服务器及Lora终端。
背景技术
Lora(Long Range,长距离)通信技术是一种专用于远距离、低功耗的无线通信技术,该技术的调制方式相对于传统的无线通信方式大大增加了通信距离,广泛应用于各种场合的远距离、低速率物联网无线通信领域,例如,自动抄表、楼宇自动化设备、无线安防系统、工业监视与控制等。
在LoraWAN(Lora Wide Area Network,Lora广域网)网络架构中,需要先进行Lora终端的入网操作,为了保证数据交互的安全性,Lora终端入网的方式一般选择OTAA(Over-The-Air Activation,空中激活)方式,Lora终端在上电之后,发送加入请求(JoinRequest)报文至Lora服务器,Lora服务器进行校验,如果校验结果是允许Lora终端加入,使用Lora服务器上配置的Lora终端的初始密钥,对加入确认(Join Accept)报文(针对JoinRequest报文响应的)进行加密后发送至Lora终端;如果校验结果是不允许Lora终端加入,则会丢弃该Join Request报文,Lora终端在经过一段时间后如果仍未收到Join Accept报文,则会向Lora服务器再次发送Join Request报文,以使Lora服务器进行校验。Lora终端使用初始密钥对加密后的Join Accept报文进行解密,根据解密后的报文内容(用于与Lora服务器通信的通信参数)接入Lora服务器。
由于上述网络架构中往往包含有多个Lora终端,而这些Lora终端通常配置有相同的初始密钥,这样一来,Lora服务器发送的加密后的Join Accept报文,会被其他Lora终端接收并解密,导致Lora终端接入异常。
为了防止上述情况的发生,相关技术中提出,在Lora终端出厂时,就随机生成初始密钥,从而保证每个Lora终端的初始密钥都不相同,这样就需要手工在Lora服务器上录入各Lora终端的初始密钥,容易发生密钥录入错误现象,从而影响Lora终端的正常接入。
发明内容
本发明实施例的目的在于提供一种终端接入方法、装置、Lora服务器及Lora终端,以保证Lora终端的正常接入。具体技术方案如下:
第一方面,本发明实施例提供了一种终端接入方法,应用于Lora服务器,所述方法包括:
在接收到Lora终端发送的加入请求报文之后,如果允许所述Lora终端加入,则判断本地记录的所述Lora终端的应用密钥是否为预设密钥,所述预设密钥为针对多个Lora终端配置的同一应用密钥;
如果是,则根据所述加入请求报文中携带的所述Lora终端的唯一标识生成的密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第一加密报文;
将所述第一加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥是所述预设密钥时,根据所述唯一标识生成的密钥,对所述第一加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
第二方面,本发明实施例提供了一种终端接入方法,应用于Lora终端,所述方法包括:
发送加入请求报文至Lora服务器;
在接收到所述Lora服务器发送的对针对所述加入请求报文响应的加入确认报文进行加密得到的加密报文时,如果本地应用密钥为预设密钥,则根据所述Lora终端的唯一标识生成的密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器,所述预设密钥为针对多个Lora终端配置的同一应用密钥。
第三方面,本发明实施例提供了一种终端接入装置,应用于Lora服务器,所述装置包括:
判断模块,用于在接收到Lora终端发送的加入请求报文之后,如果允许所述Lora终端加入,则判断本地记录的所述Lora终端的应用密钥是否为预设密钥,所述预设密钥为针对多个Lora终端配置的同一应用密钥;
加密模块,用于如果所述判断模块的判断结果为是,则根据所述加入请求报文中携带的所述Lora终端的唯一标识生成的密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第一加密报文;
发送模块,用于将所述第一加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥是所述预设密钥时,根据所述唯一标识生成的密钥,对所述第一加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
第四方面,本发明实施例提供了一种终端接入装置,应用于Lora终端,所述装置包括:
发送模块,用于发送加入请求报文至Lora服务器;
解密模块,用于在接收到所述Lora服务器发送的对针对所述加入请求报文响应的加入确认报文进行加密得到的加密报文时,如果本地应用密钥为预设密钥,则根据所述Lora终端的唯一标识生成的密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器,所述预设密钥为针对多个Lora终端配置的同一应用密钥。
第五方面,本发明实施例提供了一种Lora服务器,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现如第一方面所述的方法步骤。
第六方面,本发明实施例提供了一种机器可读存储介质,包含于如第五方面所述的Lora服务器中,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现如第一方面所述的方法步骤。
第七方面,本发明实施例提供了一种Lora终端,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现如第二方面所述的方法步骤。
第八方面,本发明实施例提供了一种机器可读存储介质,包含于如第七方面所述的Lora终端中,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现如第二方面所述的方法步骤。
本发明实施例提供的一种终端接入方法、装置、Lora服务器及Lora终端,Lora服务器在接收到Lora终端发送的加入请求报文之后,针对多个Lora终端配置有相同应用密钥的情况,根据加入请求报文中携带的Lora终端的唯一标识生成的密钥,对针对加入请求报文响应的加入确认报文进行加密,得到第一加密报文,由于标识的唯一性,所生成的密钥与Lora终端具有对应关系,然后将第一加密报文发送至Lora终端,Lora终端可以根据其唯一标识生成的密钥,对第一加密报文进行解密,根据解密后的报文内容即可实现Lora终端接入Lora服务器,由于密钥是根据Lora终端的唯一标识生成的,与Lora终端之间存在对应关系,即保证了密钥的唯一性,在Lora终端接入Lora服务器的过程中,在Lora终端侧和Lora服务器侧均生成与Lora终端对应的唯一的密钥,有效避免了由于数据量大而易引起的密钥配置错误的现象,从而保证了Lora终端的正常接入。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的终端接入方法的交互流程示意图;
图2为本发明实施例应用于Lora服务器的终端接入装置的结构示意图;
图3为本发明实施例应用于Lora终端的终端接入装置的结构示意图;
图4为本发明实施例的Lora服务器的结构示意图;
图5为本发明实施例的Lora终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在现有的Lora网络架构下,OTAA作为一种安全性很高的入网机制,成为Lora终端接入Lora服务器的主流方式。首先,对于Lora终端入网而言,需要明确一个很重要的数据,即应用密钥(APPKey),APPKey是AES-128(Advanced Encryption Standard-128,128位的高级加密标准)的应用密钥,由应用供应商通过应用指定的根密钥衍生并分配给Lora终端,根密钥只有应用供应商知晓和掌握。通常情况下,该APPKey是在Lora终端出厂时默认设置的,往往相同类别的Lora终端具有相同的APPKey,该APPKey是被Lora服务器和Lora终端共享使用的。OTAA的流程具体可以包括如下步骤:
第一步,Lora终端配置APPEUI(Application Extended Unique Identifier,应用扩展唯一标识)和DevEUI(Device Extended Unique Identifier,设备扩展唯一标识),并且通过获取Lora芯片的RSSI(Received Signal Strength Indication,接收的信号强度指示)随机值得到DevNonce;将这3个参数组成加入请求(Join Request)报文,发送给Lora服务器。
Join Request报文格式如表1所示,Header为Join Request报文的包头,用于说明该报文为Join Request报文。APPEUI是IEEE(Institute of Electrical and ElectronicsEngineers,电气和电子工程师协会)定义的64位EUI64,为全球唯一应用ID,用以识别Lora终端的应用服务提供商等,APPEUI是在Lora终端出厂时就录入Lora终端中的。DevEUI是IEEE定义的64为EUI64,用来唯一辨识Lora终端。DevNonce是一个随机值,Lora终端最近使用的一些DevNonce会保存在Lora服务器中,如果Lora终端发送的Join Request报文中的DevNonce在Lora服务器中可以查到,该报文就会被忽略。Join Request报文中还包括一个MIC(Messages Integrity Check,消息一致性校验码),用于判断该Join Request报文是否合法,只有在通过MIC校验合法后,才继续进行入网操作,否则丢弃该Join Request报文。Join Request报文以明文发送,即不加密。
表1
1字节 | 8字节 | 8字节 | 2字节 | 4字节 |
Header | APPEUI | DevEUI | DevNonce | MIC |
第二步,Lora服务器接收到Join Request后,给Lora终端分配DevAddr,连同AppNonce和NetID,组织成加入确认(Join Accept)报文,反馈给Lora终端。
Join Accept报文格式如表2所示,Header为Join Accept报文的包头,用于说明该报文为Join Accept报文。APPNonce是由Lora服务器产生的一个随机数,Lora终端在接收到APPNonce之后,会利用其衍生出Lora终端与Lora服务器之间进行数据通信的数据通信密钥。NetID为Lora网络ID,用于指示Lora服务器所对应的网络的基本信息。DevAddr为Lora服务器给Lora终端分配的短地址,是Lora终端在当前网络中的识别码,为32位编码,NetID与DevAddr之间具有对应关系,说明了哪个Lora终端与哪个Lora服务器之间通信。DLSettings为设置Rx1和Rx2的下行接收窗口的速率。RxDelay为从发送完成到打开Rx1接收窗口的时间。Join Accept报文中也包括有一个MIC位,用于判断该Join Accept报文是否合法。Lora服务器给Lora终端反馈的Join Accept报文为加密后的报文,是基于APPKey加密得到的。
表2
1字节 | 3字节 | 3字节 | 4字节 | 4字节 | 1字节 | 4字节 |
Header | APPNonce | NetID | DevAddr | DLSettings | RxDelay | MIC |
第三步,Lora终端接受到Join Accept报文后,对Join Accept报文进行解密,提取其中的通信参数,实现入网操作。
Lora终端可以基于配置的APPKey,对Join Accept报文进行解密,得到APPNonce和NetID,结合APPKey和DevNonce,使用AES加密标准,与Lora服务器协商生成数据通信密钥APPSKey,用来加解密网络通信的应用数据。
基于上述Lora终端接入Lora服务器的方法,可以知道,Join Accept报文的加解密基于APPKey,如果有多个Lora终端配置有相同的APPKey,则在非发送入网请求的Lora终端接受到Join Accept报文情况下,也可以解密该Join Accept报文,存在安全隐患。
为了避免上述情况的发生,保证Lora终端可以正常接入Lora服务器,本发明实施例提供了一种终端接入方法、装置、Lora服务器及Lora终端。
如图1所示,从Lora服务器与Lora终端交互的角度,对本发明实施例所提供的一种终端接入方法进行介绍,该终端接入方法可以包括如下步骤:
第一步,Lora终端向Lora服务器发送Join Request报文。
Lora终端在上电之后,首先需要向Lora服务器发送Join Request报文,该JoinRequest报文即为加入请求报文,Join Request报文中可以包含有APPEUI、DevEUI、DevNonce、MIC等信息,该Join Request报文为不加密的明文,Lora服务器在接收到JoinRequest报文之后,可以先通过其中的MIC判断Join Request报文是否合法,如果合法则继续进行后续流程,如果不合法则丢弃该Join Request报文。本实施例中,Join Request报文的格式与上述现有的Join Request报文格式相同,这里不再赘述。
第二步,如果允许Lora终端加入,Lora服务器对针对Join Request报文响应的Join Accept报文进行加密,得到加密报文。
具体的加密方式可以包括:判断本地记录的Lora终端的应用密钥是否为预设密钥;是则根据Join Request报文中携带的Lora终端的唯一标识生成的密钥,对针对JoinRequest报文响应的Join Accept报文进行加密,得到第一加密报文;否则基于Lora终端的应用密钥,对针对Join Request报文的Join Accept报文进行加密,得到第二加密报文。
由于在Lora终端出厂时,会默认配置应用密钥,相同类型的Lora终端可能配置相同的密钥,在进行入网操作之前,可以先记针对多个Lora终端配置的同一应用密钥为预设密钥,如果应用密钥为预设密钥,则说明该应用密钥对应有多个Lora终端,如果应用密钥不是预设密钥,则说明该应用密钥对应一个Lora终端。
Lora服务器在确定应用密钥为预设密钥后,确定该应用密钥对应有多个Lora终端,由于各Lora终端发送的Join Request报文中携带的DevEUI表征了Lora终端的唯一标识,根据该唯一标识,可以生成密钥,由于标识的唯一性,生成的密钥与Lora终端具有对应关系,也具有唯一性。可选的,可以采用散列算法,对唯一标识进行运算,生成密钥,示例的,可以采用单向散列MD5算法,生成AES-128的密钥。当然,也可以采用其他散列算法生成密钥,得到的密钥具有唯一性即可,这里不再一一举例。
Lora服务器在响应Join Request报文后,会反馈一个加入确认报文,Join Accept报文即为加入确认报文,Join Accept报文中可以包括APPNonce、NetID、DevAddr等参数,这些参数指明了Lora终端与Lora服务器进行通信的相关参数,即Lora服务器给Lora终端分配的短地址、Lora网络ID等,Lora终端在准确获知到这些参数后,才可以完成入网操作,为了不让其他Lora终端获取到通信参数,Lora服务器在发送Join Accept报文之前需要将JoinAccept报文进行加密处理,并且,根据上述分析,利用根据唯一标识生成的密钥对JoinAccept报文进行加密,保证了与Lora终端的对应关系,有效避免了其他Lora终端获取其中参数的可能性。
Lora服务器在确定应用密钥不是预设密钥后,确定该应用密钥对应只有一个Lora终端,因此,可以直接基于该应用密钥对Join Accept报文进行加密。具体的加密过程为现有技术,这里不再赘述。
Lora服务器在接收到Join Request报文后,可以根据Join Request报文中携带的DevNonce,结合配置的应用密钥及需要给Lora终端分配的APPNonce和NetID,使用AES加密标准,与Lora终端协商生成数据通信密钥,在数据传输的过程中利用该数据通信密钥进行加解密。
第三步,Lora服务器将加密报文发送至Lora终端。
Lora服务器在确定对Join Accept报文完成加密得到加密报文后,将加密报文发送至Lora终端,Lora网络为无线通信环境,有多个Lora终端可能接收到该Join Accept报文,由于密钥与Lora终端具有对应关系,因此,即便其他Lora终端接收到该Join Accept报文,也无法对其进行解密操作。
第四步,Lora终端对加密报文进行解密,并根据解密后的报文内容接入Lora服务器。
具体的解密方式可以包括:如果Lora终端的本地应用密钥为预设密钥,则根据Lora终端的唯一标识生成的密钥,对加密报文进行解密,并根据解密后的报文内容接入Lora服务器;如果Lora终端的本地应用密钥不为预设密钥,则根据本地应用密钥对加密报文进行解密,并根据解密后的报文内容接入Lora服务器。
Lora终端在接收到加密报文后,需要对加密报文进行解密,而如果Lora终端的本地应用密钥为预设密钥,则Lora服务器发送的加密报文为第一加密报文,即根据Lora终端的唯一标识生成的密钥进行加密的报文,因此,Lora终端可以根据其唯一标识生成密钥,对该加密报文进行解密操作,解密后得到的报文内容包括了Lora终端与Lora服务器进行通信的通信参数;如果本地应用密钥不是预设密钥,则Lora服务器发送的加密报文为第二加密报文,即根据应用密钥进行加密的报文,因此,Lora终端可以根据本地应用密钥对加密报文进行解密。
可选的,根据Lora终端的唯一标识生成的密钥,对加密报文进行解密的方式可以为:采用预设散列算法对该唯一标识进行运算,得到密钥,然后根据得到的密钥对加密报文进行解密。示例的,可以采用单向散列MD5算法,得到AES-128的密钥。需要说明的是,Lora终端对加密报文进行解密的方式应与Lora服务器对Join Accept进行加密方式相对应。
Lora终端在对加密报文进行解密之后,得到的报文内容即为Lora终端与Lora服务器之间进行通信的通信参数,根据通信参数Lora终端即可接入Lora服务器,具体的,Lora终端可以根据报文内容中的APPNonce和NetID,结合DevNonce和配置的应用密钥,使用AES加密标准,与Lora服务器协商生成数据通信密钥,在数据传输的过程中利用该数据通信密钥进行加解密。
应用本实施例,Lora服务器在接收到Lora终端发送的加入请求报文之后,针对多个Lora终端配置有相同应用密钥的情况,根据加入请求报文中携带的Lora终端的唯一标识生成的密钥,对针对加入请求报文响应的加入确认报文进行加密,得到第一加密报文,由于标识的唯一性,所生成的密钥与Lora终端具有对应关系,然后将第一加密报文发送至Lora终端,Lora终端可以根据其唯一标识生成的密钥,对第一加密报文进行解密,根据解密后的报文内容即可实现Lora终端接入Lora服务器,由于密钥是根据Lora终端的唯一标识生成的,与Lora终端之间存在对应关系,即保证了密钥的唯一性,在Lora终端接入Lora服务器的过程中,在Lora终端侧和Lora服务器侧均生成与Lora终端对应的唯一的密钥,有效避免了由于数据量大而易引起的密钥配置错误的现象,从而保证了Lora终端的正常接入。同时,可以直接使用出厂默认配置实现Lora终端的快速入网,提高了Lora终端的接入效率,减少了用户配置的负担。
基于上述方法实施例,本发明实施例提供了一种终端接入装置,如图2所示,该终端接入装置应用于Lora服务器,可以包括:
判断模块210,用于在接收到Lora终端发送的加入请求报文之后,如果允许所述Lora终端加入,则判断本地记录的所述Lora终端的应用密钥是否为预设密钥,所述预设密钥为针对多个Lora终端配置的同一应用密钥;
加密模块220,用于如果所述判断模块的判断结果为是,则根据所述加入请求报文中携带的所述Lora终端的唯一标识生成的密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第一加密报文;
发送模块230,用于将所述第一加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥是所述预设密钥时,根据所述唯一标识生成的密钥,对所述第一加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
可选的,所述加密模块220,具体可以用于:
采用预设散列算法对所述加入请求报文中携带的所述Lora终端的唯一标识进行运算,得到密钥;
根据得到的密钥,对针对所述加入请求报文响应的加入确认报文进行加密。
可选的,所述加密模块220,还可以用于:
如果所述判断模块的判断结果为否,则基于所述Lora终端的应用密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第二加密报文;
所述发送模块230,还可以用于:
将所述第二加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥不是所述预设密钥时,根据本地应用密钥,对所述第二加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
应用本实施例,Lora服务器在接收到Lora终端发送的加入请求报文之后,针对多个Lora终端配置有相同应用密钥的情况,根据加入请求报文中携带的Lora终端的唯一标识生成的密钥,对针对加入请求报文响应的加入确认报文进行加密,得到第一加密报文,由于标识的唯一性,所生成的密钥与Lora终端具有对应关系,然后将第一加密报文发送至Lora终端,Lora终端可以根据其唯一标识生成的密钥,对第一加密报文进行解密,根据解密后的报文内容即可实现Lora终端接入Lora服务器,由于密钥是根据Lora终端的唯一标识生成的,与Lora终端之间存在对应关系,即保证了密钥的唯一性,在Lora终端接入Lora服务器的过程中,在Lora终端侧和Lora服务器侧均生成与Lora终端对应的唯一的密钥,有效避免了由于数据量大而易引起的密钥配置错误的现象,从而保证了Lora终端的正常接入。
基于上述方法实施例,本发明实施例提供了一种终端接入装置,如图3所示,该终端接入装置应用于Lora终端,可以包括:
发送模块310,用于发送加入请求报文至Lora服务器;
解密模块320,用于在接收到所述Lora服务器发送的对针对所述加入请求报文响应的加入确认报文进行加密得到的加密报文时,如果本地应用密钥为预设密钥,则根据所述Lora终端的唯一标识生成的密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器,所述预设密钥为针对多个Lora终端配置的同一应用密钥。
可选的,所述解密模块320,具体可以用于:
采用预设散列算法对所述唯一标识进行运算,得到密钥;
根据得到的密钥,对所述加密报文进行解密。
可选的,所述解密模块320,还可以用于:
如果本地应用密钥不为所述预设密钥,则根据所述本地应用密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
应用本实施例,Lora服务器在接收到Lora终端发送的加入请求报文之后,对针对加入请求报文响应的加入确认报文进行加密,得到加密报文,然后将加密报文发送至Lora终端,如果本地应用密钥为预设密钥,Lora终端则根据其唯一标识生成的密钥,对加密报文进行解密,根据解密后的报文内容即可实现Lora终端接入Lora服务器,由于密钥是根据Lora终端的唯一标识生成的,与Lora终端之间存在对应关系,即保证了密钥的唯一性,在Lora终端接入Lora服务器的过程中,在Lora终端侧和Lora服务器侧均生成与Lora终端对应的唯一的密钥,有效避免了由于数据量大而易引起的密钥配置错误的现象,从而保证了Lora终端的正常接入。
本发明实施例还提供了一种Lora服务器,如图4所示,Lora服务器400,包括处理器401和机器可读存储介质402,所述机器可读存储介质402存储有能够被所述处理器401执行的机器可执行指令,所述处理器401被所述机器可执行指令促使实现如下步骤:
在接收到Lora终端发送的加入请求报文之后,如果允许所述Lora终端加入,则判断本地记录的所述Lora终端的应用密钥是否为预设密钥,所述预设密钥为针对多个Lora终端配置的同一应用密钥;
如果是,则根据所述加入请求报文中携带的所述Lora终端的唯一标识生成的密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第一加密报文;
将所述第一加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥是所述预设密钥时,根据所述唯一标识生成的密钥,对所述第一加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
可选的,所述处理器401在实现所述根据所述加入请求报文中携带的所述Lora终端的唯一标识生成的密钥,对针对所述加入请求报文响应的加入确认报文进行加密的步骤中,具体可以实现:
采用预设散列算法对所述加入请求报文中携带的所述Lora终端的唯一标识进行运算,得到密钥;
根据得到的密钥,对针对所述加入请求报文响应的加入确认报文进行加密。
可选的,所述处理器401还可以实现:
如果判断出本地记录的所述Lora终端的应用密钥不为所述预设密钥,则基于所述Lora终端的应用密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第二加密报文;
将所述第二加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥不是所述预设密钥时,根据本地应用密钥,对所述第二加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
本实施例中,Lora服务器400的处理器401通过读取机器可读存储介质中存储的计算机程序,并通过运行该计算机程序,能够实现:Lora服务器在接收到Lora终端发送的加入请求报文之后,针对多个Lora终端配置有相同应用密钥的情况,根据加入请求报文中携带的Lora终端的唯一标识生成的密钥,对针对加入请求报文响应的加入确认报文进行加密,得到第一加密报文,由于标识的唯一性,所生成的密钥与Lora终端具有对应关系,然后将第一加密报文发送至Lora终端,Lora终端可以根据其唯一标识生成的密钥,对第一加密报文进行解密,根据解密后的报文内容即可实现Lora终端接入Lora服务器,由于密钥是根据Lora终端的唯一标识生成的,与Lora终端之间存在对应关系,即保证了密钥的唯一性,在Lora终端接入Lora服务器的过程中,在Lora终端侧和Lora服务器侧均生成与Lora终端对应的唯一的密钥,有效避免了由于数据量大而易引起的密钥配置错误的现象,从而保证了Lora终端的正常接入。
另外,相应于上述实施例所提供的应用于Lora服务器的终端接入方法,本发明实施例提供了一种机器可读存储介质,包含于Lora服务器400中,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现本发明实施例提供的应用于Lora服务器的终端接入方法的步骤。
本实施例中,机器可读存储介质存储有在运行时执行本发明实施例所提供的应用于Lora服务器的终端接入方法的应用程序,因此能够实现:由于密钥是根据Lora终端的唯一标识生成的,与Lora终端之间存在对应关系,即保证了密钥的唯一性,在Lora终端接入Lora服务器的过程中,在Lora终端侧和Lora服务器侧均生成与Lora终端对应的唯一的密钥,有效避免了由于数据量大而易引起的密钥配置错误的现象,从而保证了Lora终端的正常接入。
本发明实施例还提供了一种Lora终端,如图5所示,Lora终端500,包括处理501和机器可读存储介质502,所述机器可读存储介质502存储有能够被所述处理器501执行的机器可执行指令,所述处理器501被所述机器可执行指令促使实现如下步骤:
发送加入请求报文至Lora服务器;
在接收到所述Lora服务器发送的对针对所述加入请求报文响应的加入确认报文进行加密得到的加密报文时,如果本地应用密钥为预设密钥,则根据所述Lora终端的唯一标识生成的密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器,所述预设密钥为针对多个Lora终端配置的同一应用密钥。
可选的,所述处理器501在实现所述根据所述Lora终端的唯一标识生成的密钥,对所述加密报文进行解密的步骤中,具体可以实现:
采用预设散列算法对所述唯一标识进行运算,得到密钥;
根据得到的密钥,对所述加密报文进行解密。
可选的,所述处理器501还可以实现:
如果本地应用密钥不为所述预设密钥,则根据所述本地应用密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
本实施例中,Lora终端500的处理器501通过读取机器可读存储介质中存储的计算机程序,并通过运行该计算机程序,能够实现:Lora服务器在接收到Lora终端发送的加入请求报文之后,对针对加入请求报文响应的加入确认报文进行加密,得到加密报文,然后将加密报文发送至Lora终端,如果本地应用密钥为预设密钥,Lora终端则根据其唯一标识生成的密钥,对加密报文进行解密,根据解密后的报文内容即可实现Lora终端接入Lora服务器,由于密钥是根据Lora终端的唯一标识生成的,与Lora终端之间存在对应关系,即保证了密钥的唯一性,在Lora终端接入Lora服务器的过程中,在Lora终端侧和Lora服务器侧均生成与Lora终端对应的唯一的密钥,有效避免了由于数据量大而易引起的密钥配置错误的现象,从而保证了Lora终端的正常接入。
上述机器可读存储器介质可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,机器可读存储介质还可以是至少一个位于远离上述处理器的存储装置。
上述处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processing,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
另外,相应于上述实施例所提供的应用于Lora终端的终端接入方法,本发明实施例提供了一种机器可读存储介质,包含于Lora终端500中,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现本发明实施例提供的应用于Lora终端的终端接入方法的步骤。
本实施例中,机器可读存储介质存储有在运行时执行本发明实施例所提供的应用于Lora终端的终端接入方法的应用程序,因此能够实现:由于密钥是根据Lora终端的唯一标识生成的,与Lora终端之间存在对应关系,即保证了密钥的唯一性,在Lora终端接入Lora服务器的过程中,在Lora终端侧和Lora服务器侧均生成与Lora终端对应的唯一的密钥,有效避免了由于数据量大而易引起的密钥配置错误的现象,从而保证了Lora终端的正常接入。
对于Lora服务器、Lora终端以及机器可读存储介质实施例而言,由于其所涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (16)
1.一种终端接入方法,其特征在于,应用于Lora服务器,所述方法包括:
在接收到Lora终端发送的加入请求报文之后,如果允许所述Lora终端加入,则判断本地记录的所述Lora终端的应用密钥是否为预设密钥,所述预设密钥为针对多个Lora终端配置的同一应用密钥;
如果是,则根据所述加入请求报文中携带的所述Lora终端的唯一标识生成的密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第一加密报文;
将所述第一加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥是所述预设密钥时,根据所述唯一标识生成的密钥,对所述第一加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
2.根据权利要求1所述的方法,其特征在于,所述根据所述加入请求报文中携带的所述Lora终端的唯一标识生成的密钥,对针对所述加入请求报文响应的加入确认报文进行加密,包括:
采用预设散列算法对所述加入请求报文中携带的所述Lora终端的唯一标识进行运算,得到密钥;
根据得到的密钥,对针对所述加入请求报文响应的加入确认报文进行加密。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果判断出本地记录的所述Lora终端的应用密钥不为所述预设密钥,则基于所述Lora终端的应用密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第二加密报文;
将所述第二加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥不是所述预设密钥时,根据本地应用密钥,对所述第二加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
4.一种终端接入方法,其特征在于,应用于Lora终端,所述方法包括:
发送加入请求报文至Lora服务器;
在接收到所述Lora服务器发送的对针对所述加入请求报文响应的加入确认报文进行加密得到的加密报文时,如果本地应用密钥为预设密钥,则根据所述Lora终端的唯一标识生成的密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器,所述预设密钥为针对多个Lora终端配置的同一应用密钥。
5.根据权利要求4所述的方法,其特征在于,所述根据所述Lora终端的唯一标识生成的密钥,对所述加密报文进行解密,包括:
采用预设散列算法对所述唯一标识进行运算,得到密钥;
根据得到的密钥,对所述加密报文进行解密。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
如果本地应用密钥不为所述预设密钥,则根据所述本地应用密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
7.一种终端接入装置,其特征在于,应用于Lora服务器,所述装置包括:
判断模块,用于在接收到Lora终端发送的加入请求报文之后,如果允许所述Lora终端加入,则判断本地记录的所述Lora终端的应用密钥是否为预设密钥,所述预设密钥为针对多个Lora终端配置的同一应用密钥;
加密模块,用于如果所述判断模块的判断结果为是,则根据所述加入请求报文中携带的所述Lora终端的唯一标识生成的密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第一加密报文;
发送模块,用于将所述第一加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥是所述预设密钥时,根据所述唯一标识生成的密钥,对所述第一加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
8.根据权利要求7所述的装置,其特征在于,所述加密模块,具体用于:
采用预设散列算法对所述加入请求报文中携带的所述Lora终端的唯一标识进行运算,得到密钥;
根据得到的密钥,对针对所述加入请求报文响应的加入确认报文进行加密。
9.根据权利要求7所述的装置,其特征在于,所述加密模块,还用于:
如果所述判断模块的判断结果为否,则基于所述Lora终端的应用密钥,对针对所述加入请求报文响应的加入确认报文进行加密,得到第二加密报文;
所述发送模块,还用于:
将所述第二加密报文发送至所述Lora终端,以使所述Lora终端在确定本地应用密钥不是所述预设密钥时,根据本地应用密钥,对所述第二加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
10.一种终端接入装置,其特征在于,应用于Lora终端,所述装置包括:
发送模块,用于发送加入请求报文至Lora服务器;
解密模块,用于在接收到所述Lora服务器发送的对针对所述加入请求报文响应的加入确认报文进行加密得到的加密报文时,如果本地应用密钥为预设密钥,则根据所述Lora终端的唯一标识生成的密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器,所述预设密钥为针对多个Lora终端配置的同一应用密钥。
11.根据权利要求10所述的装置,其特征在于,所述解密模块,具体用于:
采用预设散列算法对所述唯一标识进行运算,得到密钥;
根据得到的密钥,对所述加密报文进行解密。
12.根据权利要求10所述的装置,其特征在于,所述解密模块,还用于:
如果本地应用密钥不为所述预设密钥,则根据所述本地应用密钥,对所述加密报文进行解密,并根据解密后的报文内容接入所述Lora服务器。
13.一种Lora服务器,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-3任一所述的方法步骤。
14.一种机器可读存储介质,其特征在于,包含于如权利要求13所述的Lora服务器中,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现权利要求1-3任一所述的方法步骤。
15.一种Lora终端,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求4-6任一所述的方法步骤。
16.一种机器可读存储介质,其特征在于,包含于如权利要求15所述的Lora终端中,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现权利要求4-6任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711157989.7A CN107959930B (zh) | 2017-11-20 | 2017-11-20 | 终端接入方法、装置、Lora服务器及Lora终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711157989.7A CN107959930B (zh) | 2017-11-20 | 2017-11-20 | 终端接入方法、装置、Lora服务器及Lora终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107959930A true CN107959930A (zh) | 2018-04-24 |
CN107959930B CN107959930B (zh) | 2020-11-06 |
Family
ID=61965042
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711157989.7A Active CN107959930B (zh) | 2017-11-20 | 2017-11-20 | 终端接入方法、装置、Lora服务器及Lora终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107959930B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108810936A (zh) * | 2018-05-24 | 2018-11-13 | 新华三技术有限公司 | 一种LoRa终端的配置方法及装置 |
CN108965260A (zh) * | 2018-06-22 | 2018-12-07 | 新华三信息安全技术有限公司 | 一种报文处理方法、堡垒机及终端设备 |
CN111371827A (zh) * | 2018-12-26 | 2020-07-03 | 中兴通讯股份有限公司 | 数据传输方法、装置及计算机可读存储介质 |
CN112887178A (zh) * | 2021-01-11 | 2021-06-01 | 厦门四信通信科技有限公司 | LoRaWAN服务器的终端入网方法、装置、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101379795A (zh) * | 2006-01-31 | 2009-03-04 | 卢森特技术有限公司 | 在由认证服务器检查客户机证书的同时由dhcp服务器进行地址分配 |
CN106789259A (zh) * | 2016-12-26 | 2017-05-31 | 中国科学院信息工程研究所 | 一种LoRa核心网系统及实现方法 |
CN106936941A (zh) * | 2017-03-03 | 2017-07-07 | 国动物联网技术(上海)有限公司 | 一种LoRaWAN物联网放号方法 |
CN107071791A (zh) * | 2017-03-31 | 2017-08-18 | 深圳市亿道数码技术有限公司 | 一种基于LoRa的组网方法及系统 |
KR20170115665A (ko) * | 2016-04-08 | 2017-10-18 | 채현철 | Cctv 감시카메라 내부망을 이용한 자치단체 무선자가통신망 시스템 및 구축 방법 |
-
2017
- 2017-11-20 CN CN201711157989.7A patent/CN107959930B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101379795A (zh) * | 2006-01-31 | 2009-03-04 | 卢森特技术有限公司 | 在由认证服务器检查客户机证书的同时由dhcp服务器进行地址分配 |
KR20170115665A (ko) * | 2016-04-08 | 2017-10-18 | 채현철 | Cctv 감시카메라 내부망을 이용한 자치단체 무선자가통신망 시스템 및 구축 방법 |
CN106789259A (zh) * | 2016-12-26 | 2017-05-31 | 中国科学院信息工程研究所 | 一种LoRa核心网系统及实现方法 |
CN106936941A (zh) * | 2017-03-03 | 2017-07-07 | 国动物联网技术(上海)有限公司 | 一种LoRaWAN物联网放号方法 |
CN107071791A (zh) * | 2017-03-31 | 2017-08-18 | 深圳市亿道数码技术有限公司 | 一种基于LoRa的组网方法及系统 |
Non-Patent Citations (3)
Title |
---|
THOMAS CLAUSEN: "A Study of LoRa:Long Range & Low Power Networks for the Internet of Things", 《SENSOR》 * |
赵文妍: "LoRa物理层和MAC层技术综述", 《移动通信》 * |
赵静: "LoRa无线技术分析", 《移动通信》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108810936A (zh) * | 2018-05-24 | 2018-11-13 | 新华三技术有限公司 | 一种LoRa终端的配置方法及装置 |
CN108965260A (zh) * | 2018-06-22 | 2018-12-07 | 新华三信息安全技术有限公司 | 一种报文处理方法、堡垒机及终端设备 |
CN108965260B (zh) * | 2018-06-22 | 2021-05-28 | 新华三信息安全技术有限公司 | 一种报文处理方法、堡垒机及终端设备 |
CN111371827A (zh) * | 2018-12-26 | 2020-07-03 | 中兴通讯股份有限公司 | 数据传输方法、装置及计算机可读存储介质 |
CN112887178A (zh) * | 2021-01-11 | 2021-06-01 | 厦门四信通信科技有限公司 | LoRaWAN服务器的终端入网方法、装置、设备和存储介质 |
CN112887178B (zh) * | 2021-01-11 | 2022-06-14 | 厦门四信通信科技有限公司 | LoRaWAN服务器的终端入网方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107959930B (zh) | 2020-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101508360B1 (ko) | 데이터 전송 장치 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 | |
US9590961B2 (en) | Automated security provisioning protocol for wide area network communication devices in open device environment | |
US9781109B2 (en) | Method, terminal device, and network device for improving information security | |
CN105376216A (zh) | 一种远程访问方法、代理服务器及客户端 | |
CN107959930A (zh) | 终端接入方法、装置、Lora服务器及Lora终端 | |
CN106789834B (zh) | 用于识别用户身份的方法、网关、pcrf网元和系统 | |
US20060236116A1 (en) | Provisioning root keys | |
CN105007577A (zh) | 一种虚拟sim卡参数管理方法、移动终端及服务器 | |
CN105814837B (zh) | 一种定向统计流量的方法、设备及系统 | |
CN105262773B (zh) | 一种物联网系统的验证方法及装置 | |
CN108616521B (zh) | 网络接入方法、装置、设备及可读存储介质 | |
CN104618369A (zh) | 一种基于OAuth的物联网设备唯一授权方法、装置及系统 | |
CN105554760A (zh) | 无线接入点认证方法、装置及系统 | |
EP2843873B1 (en) | Digital certificate automatic application method, device and system | |
CN105637802A (zh) | 密钥装置、密钥云系统、解密方法、以及程序 | |
CN108429820A (zh) | 一种物联网应用层的通信方法、系统及终端设备 | |
CN103309307A (zh) | 一种基于对象访问控制的智能家电控制方法 | |
KR20210061801A (ko) | Mqtt-sn 프로토콜의 보안을 위한 mqtt-sn 보안 관리 방법 및 시스템 | |
CN108353259B (zh) | 对匿名化网络服务利用进行计费记录鉴别的方法和装置 | |
CN106537962B (zh) | 无线网络配置、接入和访问方法、装置及设备 | |
CN109587134B (zh) | 接口总线的安全认证的方法、装置、设备和介质 | |
CN110830421B (zh) | 数据传输方法和设备 | |
CN108123917A (zh) | 一种物联网终端的认证凭证更新的方法及设备 | |
US11461478B2 (en) | Mobile network core component for managing security keys | |
CN115086951A (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 |