一种终端的接入处理方法和装置与流程

文档序号:15743921发布日期:2018-10-23 22:45阅读:161来源:国知局

本发明涉及通信技术领域,特别是涉及一种终端的接入处理方法和装置。



背景技术:

互联网技术革命把人类带入虚拟世界,而物联网革命将虚拟世界带回现实,无论生活、工作,还是商业、工业场景中,虚拟世界和现实世界之间的界限将越来越模糊,不同的终端组织的网络系统越来越庞大。

在一个网络系统中,终端在接入网络系统时,通常先认证合法性,检验其身份是否与所宣称的一致,然后再上报数据,期间进行了至少两次通信交互,接入处理较为繁琐,使得网络系统的处理压力大。

尤其是对于物联网等网络系统,接入的物联网终端数量十分庞大,可达上百万,为物联网终端提供服务的物联网服务器的处理压力将会十分之巨大。



技术实现要素:

本发明实施例提出了一种终端的接入处理方法和装置,以解决终端的接入处理较为繁琐,导致网络系统压力的问题。

依据本发明的一个方面,提供了一种终端的接入处理方法,应用在终端中,所述终端接入服务器,所述方法包括:

接收所述服务器发送的保活挑战消息;

针对所述保活挑战消息生成保活响应消息;

根据所述保活挑战消息生成终端令牌;

根据所述保活挑战消息与所述保活响应消息生成终端校验码;

将所述保活响应消息、所述终端令牌与所述终端校验码封装至目标消息中;

将所述目标消息发送至所述服务器,以在所述终端令牌通过实体认证且所述终端校验码通过数据认证时,基于所述保活响应消息进行接入处理。

可选地,所述针对所述保活挑战消息生成保活响应消息,包括:

判断所述保活挑战消息中是否具有订阅消息;

若是,则生成指定格式的保活响应消息,查询所述订阅消息对应的终端数据,将所述采用所述终端数据写入所述保活响应消息;

若否,则生成指定格式的保活响应消息。

可选地,所述根据所述保活挑战消息生成终端令牌,包括:

提取预置的密钥;

将所述密钥与所述保活挑战消息按照预设的第一组合方式组合成第一终端候选数据;

按照预设的第一生成方式对所述第一终端候选数据生成第二终端候选数据;

从所述第二终端候选数据中提取第一指定位置的数据,作为终端令牌。

可选地,所述根据所述保活挑战消息与所述保活响应消息生成终端校验码,包括:

提取预置的密钥;

将所述密钥、所述保活挑战消息与所述保活响应消息按照预设的第二组合方式组合成第三终端候选数据;

按照预设的第二生成方式对所述第三终端候选数据生成第四终端候选数据;

从所述第四终端候选数据中提取第二指定位置的数据,作为终端校验码。

根据本发明的另一方面,提供了一种终端的接入处理方法,应用在服务器中,多个终端接入所述服务器,所述方法包括:

向所述终端发送保活挑战消息;

接收所述终端针对所述保活挑战消息发送的目标消息,所述目标消息中具有保活响应消息、终端令牌与终端校验码;

根据所述保活挑战消息对所述终端令牌进行实体认证;

根据所述保活挑战消息与所述保活响应消息对所述终端校验码进行数据认证;

当所述终端令牌通过所述实体认证且所述终端通过所述数据认证时,基于所述保活响应消息进行接入处理。

可选地,所述根据所述保活挑战消息对所述终端令牌进行实体认证,包括:

查找所述终端对应的密钥;

将所述密钥与所述保活挑战消息按照预设的第一组合方式组合成第一云端候选数据;

按照预设的第一生成方式对所述第一云端候选数据生成第二云端候选数据;

从所述第二云端候选数据中提取第一指定位置的数据,作为云端令牌;

判断所述云端令牌与所述终端令牌是否相同;

若是,则确定所述终端令牌通过实体认证;

若否,则确定所述终端令牌未通过实体认证。

可选地,所述根据所述保活挑战消息与所述保活响应消息对所述终端校验码进行数据认证,包括:

查找所述终端对应的密钥;

将所述密钥、所述保活挑战消息与所述保活响应消息按照预设的第二组合方式组合成第三云端候选数据;

按照预设的第二生成方式对所述第三云端候选数据生成第四云端候选数据;

从所述第四云端候选数据中提取第二指定位置的数据,作为云端校验码;

判断所述云端校验码与所述终端校验码是否相同;

若是,则确定所述终端校验码通过数据认证;

若否,则确定所述终端校验码未通过数据认证。

可选地,所述基于所述保活响应消息进行接入处理,包括:

判断所述保活响应消息中是否具有终端数据;

若是,则确定所述终端处于在线状态,对所述终端数据进行业务处理;

若否,则确定所述终端处于在线状态。

根据本发明的另一方面,提供了一种终端的接入处理装置,应用在终端中,所述终端接入服务器,所述装置包括:

保活挑战消息接收模块,用于接收所述服务器发送的保活挑战消息;

保活响应消息生成模块,用于针对所述保活挑战消息生成保活响应消息;

终端令牌生成模块,用于根据所述保活挑战消息生成终端令牌;

终端校验码生成模块,用于根据所述保活挑战消息与所述保活响应消息生成终端校验码;

目标消息封装模块,用于将所述保活响应消息、所述终端令牌与所述终端校验码封装至目标消息中;

目标消息发送模块,用于将所述目标消息发送至所述服务器,以在所述终端令牌通过实体认证且所述终端校验码通过数据认证时,基于所述保活响应消息进行接入处理。

可选地,所述保活响应消息生成模块包括:

订阅消息判断子模块,用于判断所述保活挑战消息中是否具有订阅消息;若是,则调用第一生成子模块,若否,则调用第二生成子模块;

第一生成子模块,用于生成指定格式的保活响应消息,查询所述订阅消息对应的终端数据,将所述采用所述终端数据写入所述保活响应消息;

第二生成子模块,用于生成指定格式的保活响应消息。

可选地,所述终端令牌生成模块包括:

第一密钥提取子模块,用于提取预置的密钥;

第一终端候选数据组成子模块,用于将所述密钥与所述保活挑战消息按照预设的第一组合方式组合成第一终端候选数据;

第二终端候选数据生成子模块,用于按照预设的第一生成方式对所述第一终端候选数据生成第二终端候选数据;

终端令牌设置子模块,用于从所述第二终端候选数据中提取第一指定位置的数据,作为终端令牌。

可选地,所述终端校验码生成模块包括:

第二密钥提取子模块,用于提取预置的密钥;

第三终端候选数据组成子模块,用于将所述密钥、所述保活挑战消息与所述保活响应消息按照预设的第二组合方式组合成第三终端候选数据;

第四终端候选数据生成子模块,用于按照预设的第二生成方式对所述第三终端候选数据生成第四终端候选数据;

终端校验码设置提取子模块,用于从所述第四终端候选数据中提取第二指定位置的数据,作为终端校验码。

根据本发明的另一方面,提供了一种终端的接入处理装置,应用在服务器中,多个终端接入所述服务器,所述装置包括:

保活挑战消息发送模块,用于向所述终端发送保活挑战消息;

目标消息接收模块,用于接收所述终端针对所述保活挑战消息发送的目标消息,所述目标消息中具有保活响应消息、终端令牌与终端校验码;

实体认证模块,用于根据所述保活挑战消息对所述终端令牌进行实体认证;

数据认证模块,用于根据所述保活挑战消息与所述保活响应消息对所述终端校验码进行数据认证;

接入处理模块,用于当所述终端令牌通过所述实体认证且所述终端通过所述数据认证时,基于所述保活响应消息进行接入处理。

可选地,所述实体认证模块包括:

第一密钥查找子模块,用于查找所述终端对应的密钥;

第一云端候选数据组成子模块,用于将所述密钥与所述保活挑战消息按照预设的第一组合方式组合成第一云端候选数据;

第二云端候选数据生成子模块,用于按照预设的第一生成方式对所述第一云端候选数据生成第二云端候选数据;

云端令牌设置子模块,用于从所述第二云端候选数据中提取第一指定位置的数据,作为云端令牌;

令牌判断子模块,用于判断所述云端令牌与所述终端令牌是否相同;若是,则调用第一确定子模块,若否,则调用第二确定子模块;

第一确定子模块,用于确定所述终端令牌通过实体认证;

第二确定子模块,用于确定所述终端令牌未通过实体认证。

可选地,所述数据认证模块包括:

第二密钥查找子模块,用于查找所述终端对应的密钥;

第三云端候选数据组成子模块,用于将所述密钥、所述保活挑战消息与所述保活响应消息按照预设的第二组合方式组合成第三云端候选数据;

第四云端候选数据生成子模块,用于按照预设的第二生成方式对所述第三云端候选数据生成第四云端候选数据;

云端校验码设置子模块,用于从所述第四云端候选数据中提取第二指定位置的数据,作为云端校验码;

校验码判断子模块,用于判断所述云端校验码与所述终端校验码是否相同;若是,则调用第三确定子模块,若否,则调用第四确定子模块;

第三确定子模块,用于确定所述终端校验码通过数据认证;

第四确定子模块,用于确定所述终端校验码未通过数据认证。

可选地,所述接入处理模块包括:

终端数据判断子模块,用于判断所述保活响应消息中是否具有终端数据;若是,则调用第一处理子模块,若否,则调用第二处理子模块;

第一处理子模块,用于确定所述终端处于在线状态,对所述终端数据进行业务处理;

第二处理子模块,用于确定所述终端处于在线状态。

本发明实施例包括以下优点:

在本发明实施例中,服务器向接入的终端发送保活挑战消息,一方面,终端根据保活挑战消息生成终端令牌,另一方面,终端针对保活挑战消息生成保活响应消息,根据保活挑战消息与保活响应消息生成终端校验码,将保活响应消息、终端令牌与终端校验码封装至目标消息中并发送至服务器,服务器根据保活挑战消息对终端令牌进行实体认证,根据保活挑战消息与保活响应消息对终端校验码进行数据认证,若通过实体认证与数据认证时,则基于保活响应消息进行接入处理,接入处理的过程中,服务器发送保活挑战消息,终端反馈目标消息,通信双方仅交互一次消息,仅进行一次通信交互,在此通信交互中,不仅结合了实体认证与数据认证,而且结合了存活认证与实体认证,保证了接入处理的正常运行,针对物联网等网络系统,大大减少了通信交互的次数,从而实现增大网络带宽的利用率,在一定程度上降低服务器的处理压力。

附图说明

图1是本发明一个实施例的一种终端的接入处理方法的步骤流程图;

图2是本发明一个实施例的另一种终端的接入处理方法的步骤流程图;

图3是本发明一个实施例的一种终端与服务器之间的通信交互示例图;

图4是本发明一个实施例的一种终端的接入处理装置的结构框图;

图5是本发明一个实施例的另一种终端的接入处理装置的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

参照图1,示出了本发明一个实施例的一种终端的接入处理方法的步骤流程图,具体可以包括如下步骤:

步骤101,接收所述服务器发送的保活挑战消息。

在具体实现中,本发明实施例可以应用在终端中,该终端接入服务器,获取相应的服务。

其中,该终端可以为物联网终端,如水表、电表、天气检测仪,等等,则该服务器可以为物联网服务器,对该物联网终端提供物联网服务。

在本发明实施例中,服务器可以每间隔固定的时间,向接入该服务器的终端发送保活挑战消息,则接入该服务器的终端可以每间隔固定的时间,接收该服务器发送的保活挑战消息。

步骤102,针对所述保活挑战消息生成保活响应消息。

若终端接收到服务器的保活挑战消息,则可以相应地生成保活响应消息。

在本发明的一个实施例中,步骤102可以包括如下子步骤:

子步骤S11,判断所述保活挑战消息中是否具有订阅消息;若是,则执行子步骤S12,若否,则子步骤S13。

子步骤S12,生成指定格式的保活响应消息,查询所述订阅消息对应的终端数据,将所述采用所述终端数据写入所述保活响应消息。

子步骤S13,生成指定格式的保活响应消息。

在本发明实施例中,服务器可以根据业务的需求,对终端订阅相关的数据。

例如,若终端为电表,则可以订阅用户的用电量,终端自身的耗电量、温度,等等。

又例如,若终端为天气检测仪,则可以订阅温度、湿度,等等。

针对此种情况,则服务器可以在保活挑战消息中添加订阅消息。

终端接收到保活挑战消息之后,可以对其进行解析。

如果解析出订阅消息,则一方面,查询订阅消息对应的终端数据,另一方面,按照预先协商的协议,生成指定格式的保活响应消息,将该终端数据嵌入到保活响应消息中的指定位置。

如果没有解析出订阅消息,则按照预先协商的协议,生成指定格式的保活响应消息。

步骤103,根据所述保活挑战消息生成终端令牌。

对于保活挑战消息,终端可以按照预先与服务器协商的协议,生成终端令牌token,以在服务器处进行实体认证。

在本发明的一个实施例中,步骤103可以包括如下子步骤:

子步骤S21,提取预置的密钥。

子步骤S22,将所述密钥与所述保活挑战消息按照预设的第一组合方式组合成第一终端候选数据。

子步骤S23,按照预设的第一生成方式对所述第一终端候选数据生成第二终端候选数据。

子步骤S24,从所述第二终端候选数据中提取第一指定位置的数据,作为终端令牌。

在本发明实施例中,在终端中可以预置密钥,密钥具有唯一性,不同的终端预置不同的密钥。

将密钥与保活挑战消息按照第一组合方式进行组合,例如,将密钥拼接在保活挑战消息之后、将密钥拼接在保活挑战消息之前、将密钥间或插入保活挑战消息中,等等,组合之后的数据即为第一终端候选数据。

此后,按照第一生成方式对第一终端候选数据进行处理,如计算Hash(哈希算法)、计算SHA1(Secure Hash Algorithm,安全哈希算法)值,等等,处理之后的数据即为第二终端候选数据。

从第二终端候选数据中提取第一指定位置的数据,如排序最前的m(m为正整数)位比特、排序最后的m位比特、排序中间的m位比特,等等,作为终端令牌token。

步骤104,根据所述保活挑战消息与所述保活响应消息生成终端校验码;

对于保活挑战消息,终端可以按照预先与服务器协商的协议,结合保活响应消息,生成终端校验码check,以在服务器处进行数据认证。

在本发明的一个实施例中,步骤104可以包括如下子步骤:

子步骤S31,提取预置的密钥。

子步骤S32,将所述密钥、所述保活挑战消息与所述保活响应消息按照预设的第二组合方式组合成第三终端候选数据。

子步骤S33,按照预设的第二生成方式对所述第三终端候选数据生成第四终端候选数据。

子步骤S34,从所述第四终端候选数据中提取第二指定位置的数据,作为终端校验码。

在本发明实施例中,在终端中可以预置密钥,密钥具有唯一性,不同的终端预置不同的密钥。

将密钥、保活挑战消息与保活挑战响应按照第二组合方式进行组合,例如,按照密钥、保活挑战消息、保活挑战响应的顺序进行拼接,按照密钥、保活挑战响应、保活挑战消息的顺序进行拼接,将密钥间或插入保活挑战消息、保活响应消息中,等等,组合之后的数据即为第三终端候选数据。

此后,按照第二生成方式对第三终端候选数据进行处理,如计算Hash、计算SHA1值,等等,处理之后的数据即为第四终端候选数据。

从第四终端候选数据中提取第二指定位置的数据,如排序最前的n(n为正整数)位比特、排序最后的n位比特、排序中间的n位比特,等等,作为终端校验码check。

步骤105,将所述保活响应消息、所述终端令牌与所述终端校验码封装至目标消息中。

若终端生成了保活响应消息、终端令牌token与终端校验码check,则可以基于保活响应消息、终端令牌token与终端校验码check生成目标消息。

步骤106,将所述目标消息发送至所述服务器,以在所述终端令牌通过实体认证且所述终端校验码通过数据认证时,基于所述保活响应消息进行接入处理。

终端将目标消息发送至服务器,服务器则可以针对终端令牌token进行实体认证,针对终端校验码check进行数据认证,在同时通过实体认证与数据认证时,对保活响应消息进行接入处理。

在本发明实施例中,服务器向接入的终端发送保活挑战消息,一方面,终端根据保活挑战消息生成终端令牌,另一方面,终端针对保活挑战消息生成保活响应消息,根据保活挑战消息与保活响应消息生成终端校验码,将保活响应消息、终端令牌与终端校验码封装至目标消息中并发送至服务器,服务器根据保活挑战消息对终端令牌进行实体认证,根据保活挑战消息与保活响应消息对终端校验码进行数据认证,若通过实体认证与数据认证时,则基于保活响应消息进行接入处理,接入处理的过程中,服务器发送保活挑战消息,终端反馈目标消息,通信双方仅交互一次消息,仅进行一次通信交互,在此通信交互中,不仅结合了实体认证与数据认证,而且结合了存活认证与实体认证,保证了接入处理的正常运行,针对物联网等网络系统,大大减少了通信交互的次数,从而实现增大网络带宽的利用率,在一定程度上降低服务器的处理压力。

此外,服务器与终端维持现有的硬件即可实现通信,无需额外部署其他硬件设备,保证了运营成本处于可控的状态。

再者,目标消息中包括保活响应消息、终端令牌与终端校验码,消息长度段,发送延时低,使得网络带宽占用低。

参照图2,示出了本发明一个实施例的另一种终端的接入处理方法的步骤流程图,具体可以包括如下步骤:

步骤201,向所述终端发送保活挑战消息。

在具体实现中,本发明实施例可以应用在服务器中,多个终端接入该服务器,提供相应的服务。

其中,该终端可以为物联网终端,如水表、电表、天气检测仪,等等,则该服务器可以为物联网服务器,对该物联网终端提供物联网服务。

在本发明实施例中,服务器可以每间隔固定的时间,向接入该服务器的终端发送保活挑战消息。

在一种情况中,服务器可以根据业务的需求,对终端订阅相关的数据,将相应的订阅消息封装至该保活挑战消息中。

当然,若服务器没有订阅终端的数据,则无需将订阅消息封装至该保活挑战消息中。

步骤202,接收所述终端针对所述保活挑战消息发送的目标消息。

若终端接收到服务器的保活挑战消息,则针对保活挑战消息生成保活响应消息,并且,根据保活挑战消息生成终端令牌token,根据保活挑战消息与保活响应消息生成终端校验码check,将保活响应消息、终端令牌与终端校验码封装至目标消息中,并发送至服务器。

因此,目标消息中具有保活响应消息、终端令牌token与终端校验码check。

服务器若接收到终端的目标消息,则可以对其进行解析,获取保活响应消息、终端令牌token与终端校验码check。

当然,服务器若一段时间内未接收到终端的目标消息,则可以确认该终端处于离线状态。

步骤203,根据所述保活挑战消息对所述终端令牌进行实体认证。

对于保活挑战消息,终端按照预先与服务器协商的协议,生成终端令牌token,则服务器可以按照预先协商的协议,以同样的方式生成云端令牌token。

在进行实体认证时,判断终端令牌token与云端令牌token是否相同,如果相同,则可以确认通过实体认证,如果不相同,则可以确认未通过实体认证。

在本发明的一个实施例中,步骤203可以包括如下子步骤:

子步骤S41,查找所述终端对应的密钥。

子步骤S42,将所述密钥与所述保活挑战消息按照预设的第一组合方式组合成第一云端候选数据。

子步骤S43,按照预设的第一生成方式对所述第一云端候选数据生成第二云端候选数据。

子步骤S44,从所述第二云端候选数据中提取第一指定位置的数据,作为云端令牌。

子步骤S45,判断所述云端令牌与所述终端令牌是否相同;若是,则执行子步骤S46,若否,则执行子步骤S47。

子步骤S46,确定所述终端令牌通过实体认证。

子步骤S47,确定所述终端令牌未通过实体认证。

在本发明实施例中,在终端中可以预置密钥,密钥具有唯一性,不同的终端预置不同的密钥,同时,不同终端的密钥可以预先存储在服务器中,建立了终端标识(如终端ID等)与密钥之间的映射关系。

因此,在进行实体认证时,服务器可以通过该映射关系查询该终端(以终端标识进行表征)对应的密钥。

将密钥与保活挑战消息按照第一组合方式进行组合,例如,将密钥拼接在保活挑战消息之后、将密钥拼接在保活挑战消息之前、将密钥间或插入保活挑战消息中,等等,组合之后的数据即为第一云端候选数据。

此后,按照第一生成方式对第一云端候选数据进行处理,如计算Hash、计算SHA1值,等等,处理之后的数据即为第二云端候选数据。

从第二云端候选数据中提取第一指定位置的数据,如排序最前的m(m为正整数)位比特、排序最后的m位比特、排序中间的m位比特,等等,作为云端令牌token。

将终端令牌token与云端令牌token进行比较,若两者相同,则可以确定通过实体认证,若两者不相同,则可以确定未通过实体认证。

步骤204,根据所述保活挑战消息与所述保活响应消息对所述终端校验码进行数据认证。

对于保活挑战消息,终端按照预先与服务器协商的协议,结合保活响应消息,生成终端校验码check,则服务器可以按照预先协商的协议,以同样的方式生成云端校验码check。

在进行数据认证时,判断终端校验码check与云端校验码check是否相同,如果相同,则可以确认通过数据认证,如果不相同,则可以确认未通过数据认证。

在本发明的一个实施例中,步骤204可以包括如下子步骤:

子步骤S51,查找所述终端对应的密钥。

子步骤S52,将所述密钥、所述保活挑战消息与所述保活响应消息按照预设的第二组合方式组合成第三云端候选数据。

子步骤S53,按照预设的第二生成方式对所述第三云端候选数据生成第四云端候选数据。

子步骤S54,从所述第四云端候选数据中提取第二指定位置的数据,作为云端校验码。

子步骤S55,判断所述云端校验码与所述终端校验码是否相同;若是,则执行子步骤S56,若否,则执行子步骤S57。

子步骤S56,确定所述终端校验码通过数据认证。

子步骤S57,确定所述终端校验码未通过数据认证。

在本发明实施例中,在终端中可以预置密钥,密钥具有唯一性,不同的终端预置不同的密钥,同时,不同终端的密钥可以预先存储在服务器中,建立了终端标识(如终端ID等)与密钥之间的映射关系。

因此,在进行数据认证时,服务器可以通过该映射关系查询该终端(以终端标识进行表征)对应的密钥。

将密钥、保活挑战消息与保活挑战响应按照第二组合方式进行组合,例如,按照密钥、保活挑战消息、保活挑战响应的顺序进行拼接,按照密钥、保活挑战响应、保活挑战消息的顺序进行拼接,将密钥间或插入保活挑战消息、保活响应消息中,等等,组合之后的数据即为第三云端候选数据。

此后,按照第二生成方式对第三云端候选数据进行处理,如计算Hash、计算SHA1值,等等,处理之后的数据即为第四云端候选数据。

从第四云端候选数据中提取第二指定位置的数据,如排序最前的n(n为正整数)位比特、排序最后的n位比特、排序中间的n位比特,等等,作为云端校验码check。

将终端校验码check与云端校验码check进行比较,若两者相同,则可以确定通过数据认证,若两者不相同,则可以确定未通过数据认证。

需要说明的是,服务器可以先进行实体认证(步骤203)、通过实体认证之后再进行数据认证(步骤204),也可以先进行数据认证(步骤204)、通过数据认证之后再进行实体认证(步骤203),还可以同时进行实体认证(步骤203)与数据认证(步骤204),等等,本发明实施例对此不加以限制。

步骤205,当所述终端令牌通过所述实体认证且所述终端通过所述数据认证时,基于所述保活响应消息进行接入处理。

如果终端同时通过了实体认证与数据认证,则可以基于保活响应消息对该终端进行相应的接入处理。

在本发明的一个实施例中,步骤205可以包括如下子步骤:

子步骤S61,判断所述保活响应消息中是否具有终端数据;若是,则执行子步骤S62,若否,则执行子步骤S63。

子步骤S62,确定所述终端处于在线状态,对所述终端数据进行业务处理。

子步骤S63,确定所述终端处于在线状态。

在本发明实施例中,由于终端正常反馈了保活响应消息,则可以确定该终端处于在线状态,同时,解析保活响应消息中是否具有订阅的终端数据。

如果存在终端数据,则可以按照终端数据所属的类型进行相应的业务处理。

例如,对于用户的用电量、温度、湿度等数据,可以存储在数据库中,待用户进行其他处理。

又例如,对于终端自身的耗电量、温度,则可以判断耗电量是否低于预设的电量阈值、判断温度是否高于预设的温度阈值,如果耗电量低于电量阈值、温度高于温度阈值,则可以生成相应的电量警报信息、温度警报信息。

在本发明实施例中,服务器向接入的终端发送保活挑战消息,一方面,终端根据保活挑战消息生成终端令牌,另一方面,终端针对保活挑战消息生成保活响应消息,根据保活挑战消息与保活响应消息生成终端校验码,将保活响应消息、终端令牌与终端校验码封装至目标消息中并发送至服务器,服务器根据保活挑战消息对终端令牌进行实体认证,根据保活挑战消息与保活响应消息对终端校验码进行数据认证,若通过实体认证与数据认证时,则基于保活响应消息进行接入处理,接入处理的过程中,服务器发送保活挑战消息,终端反馈目标消息,通信双方仅交互一次消息,仅进行一次通信交互,在此通信交互中,不仅结合了实体认证与数据认证,而且结合了存活认证与实体认证,保证了接入处理的正常运行,针对物联网等网络系统,大大减少了通信交互的次数,从而实现增大网络带宽的利用率,在一定程度上降低服务器的处理压力。

此外,服务器与终端维持现有的硬件即可实现通信,无需额外部署其他硬件设备,保证了运营成本处于可控的状态。

再者,目标消息中包括保活响应消息、终端令牌与终端校验码,消息长度段,发送延时低,使得网络带宽占用低。

为使本领域技术人员更好地理解本发明实施例,如图3所示,以下通过具体的示例来说明本发明实施例中终端的接入处理方法。

1、服务器B每间隔1天向部分或全部接入的电表T发送保活挑战消息C,该保活挑战消息C其中包含订阅用电量的订阅消息。

2、电表T接收到保活挑战消息C时,进行如下操作:

2.1、电表T解析保活挑战C,由于包含订阅消息,则获取当前的用电量,生成保活响应消息D,并将用户的用电量写入保活响应消息D中。

2.2、电表T使用秘钥K与保活挑战消息C计算Token_T=Hash(C,K)。

2.3、电表T取Token_T的前m个比特,表示为Token_T(m),作为终端令牌。

2.4、电表T使用秘钥K,保活挑战消息C及保活响应消息D计算Check_T=Hash(D,C,K)。

2.5、电表T取Check_T的前n个比特,表示为Check_T(n),作为终端校验码。

2.6.电表T将组合成目标消息M=<Token_T(m),D,Check_T(n)>,并发送到服务器B。

3、服务器B接收到目标消息M=<Token_T(m),D,Check_T(n)>后,进行如下操作:

3.1、服务器B使用终端T的秘钥K,与保活挑战消息C计算Token_B=Hash(C,K)。

3.2、服务器B取Token_B的前m个比特,表示为Token_B(m),作为云端令牌。

3.3、服务器B判断Token_T(m)与Token_B(m)是否相同,如果相同,则转向3.4,如果不相同,则丢弃目标消息M,结束接入处理。

3.4、服务器B使用终端T的秘钥K,保活挑战消息C及保活响应消息D计算Check_B=Hash(D,C,K)。

3.5、服务器B取Check_B的前n个比特,表示为Check_B(n),作为云端校验码。

3.6、服务器B判断Check_T(n)与Check_B(n)是否相同,如果相同,则转向3.7,如果不相同,则丢弃目标消息M,结束接入处理。

3.7、记录电表T为在线状态,将用户的用电量记录在数据库中。

在物联网中,诸如电表等物联网终端的接入数量,可达一百万,按照传统的接入处理方式,至少进行了两百万次通信交互,而本示例中,进行一百万次即可,减少了至少一百万次的通信交互。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

参照图4,示出了本发明一个实施例的一种终端的接入处理装置的结构框图,应用在终端中,所述终端接入服务器,所述装置具体可以包括如下模块:

保活挑战消息接收模块401,用于接收所述服务器发送的保活挑战消息;

保活响应消息生成模块402,用于针对所述保活挑战消息生成保活响应消息;

终端令牌生成模块403,用于根据所述保活挑战消息生成终端令牌;

终端校验码生成模块404,用于根据所述保活挑战消息与所述保活响应消息生成终端校验码;

目标消息封装模块405,用于将所述保活响应消息、所述终端令牌与所述终端校验码封装至目标消息中;

目标消息发送模块406,用于将所述目标消息发送至所述服务器,以在所述终端令牌通过实体认证且所述终端校验码通过数据认证时,基于所述保活响应消息进行接入处理。

在本发明的一个实施例中,所述保活响应消息生成模块402包括:

订阅消息判断子模块,用于判断所述保活挑战消息中是否具有订阅消息;若是,则调用第一生成子模块,若否,则调用第二生成子模块;

第一生成子模块,用于生成指定格式的保活响应消息,查询所述订阅消息对应的终端数据,将所述采用所述终端数据写入所述保活响应消息;

第二生成子模块,用于生成指定格式的保活响应消息。

在本发明的一个实施例中,所述终端令牌生成模块403包括:

第一密钥提取子模块,用于提取预置的密钥;

第一终端候选数据组成子模块,用于将所述密钥与所述保活挑战消息按照预设的第一组合方式组合成第一终端候选数据;

第二终端候选数据生成子模块,用于按照预设的第一生成方式对所述第一终端候选数据生成第二终端候选数据;

终端令牌设置子模块,用于从所述第二终端候选数据中提取第一指定位置的数据,作为终端令牌。

在本发明的一个实施例中,所述终端校验码生成模块404包括:

第二密钥提取子模块,用于提取预置的密钥;

第三终端候选数据组成子模块,用于将所述密钥、所述保活挑战消息与所述保活响应消息按照预设的第二组合方式组合成第三终端候选数据;

第四终端候选数据生成子模块,用于按照预设的第二生成方式对所述第三终端候选数据生成第四终端候选数据;

终端校验码设置提取子模块,用于从所述第四终端候选数据中提取第二指定位置的数据,作为终端校验码。

参照图5,示出了本发明一个实施例的另一种终端的接入处理装置的结构框图,应用在服务器中,多个终端接入所述服务器,所述装置具体可以包括如下模块:

保活挑战消息发送模块501,用于向所述终端发送保活挑战消息;

目标消息接收模块502,用于接收所述终端针对所述保活挑战消息发送的目标消息,所述目标消息中具有保活响应消息、终端令牌与终端校验码;

实体认证模块503,用于根据所述保活挑战消息对所述终端令牌进行实体认证;

数据认证模块504,用于根据所述保活挑战消息与所述保活响应消息对所述终端校验码进行数据认证;

接入处理模块505,用于当所述终端令牌通过所述实体认证且所述终端通过所述数据认证时,基于所述保活响应消息进行接入处理。

在本发明的一个实施例中,所述实体认证模块503包括:

第一密钥查找子模块,用于查找所述终端对应的密钥;

第一云端候选数据组成子模块,用于将所述密钥与所述保活挑战消息按照预设的第一组合方式组合成第一云端候选数据;

第二云端候选数据生成子模块,用于按照预设的第一生成方式对所述第一云端候选数据生成第二云端候选数据;

云端令牌设置子模块,用于从所述第二云端候选数据中提取第一指定位置的数据,作为云端令牌;

令牌判断子模块,用于判断所述云端令牌与所述终端令牌是否相同;若是,则调用第一确定子模块,若否,则调用第二确定子模块;

第一确定子模块,用于确定所述终端令牌通过实体认证;

第二确定子模块,用于确定所述终端令牌未通过实体认证。

在本发明的一个实施例中,所述数据认证模块504包括:

第二密钥查找子模块,用于查找所述终端对应的密钥;

第三云端候选数据组成子模块,用于将所述密钥、所述保活挑战消息与所述保活响应消息按照预设的第二组合方式组合成第三云端候选数据;

第四云端候选数据生成子模块,用于按照预设的第二生成方式对所述第三云端候选数据生成第四云端候选数据;

云端校验码设置子模块,用于从所述第四云端候选数据中提取第二指定位置的数据,作为云端校验码;

校验码判断子模块,用于判断所述云端校验码与所述终端校验码是否相同;若是,则调用第三确定子模块,若否,则调用第四确定子模块;

第三确定子模块,用于确定所述终端校验码通过数据认证;

第四确定子模块,用于确定所述终端校验码未通过数据认证。

在本发明的一个实施例中,所述接入处理模块505包括:

终端数据判断子模块,用于判断所述保活响应消息中是否具有终端数据;若是,则调用第一处理子模块,若否,则调用第二处理子模块;

第一处理子模块,用于确定所述终端处于在线状态,对所述终端数据进行业务处理;

第二处理子模块,用于确定所述终端处于在线状态。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种终端的接入处理方法和一种终端的接入处理装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1