一种基于GPS和时间戳验证的报文传输验证算法制造技术

技术编号:31986197 阅读:54 留言:0更新日期:2022-01-20 02:07
本发明专利技术提供了一种基于GPS和时间戳验证的报文传输验证算法,属于水资源监测技术领域。包括密钥生成模块、监测终端和接收服务端,所述监测终端包括:数据采集模块、数据处理模块、数据加密模块和数据发送模块,接收服务器端包括:数据接收模块和数据验证模块。采用多个管理员分别管理密钥的形式,防止密钥泄露所造成的信息不安全,通过GPS定位和时间戳加密算法,保证了报文数据定位的一致性和数据的完整性,完成了无需人工干预的自校验过程,能够有效防范第三方恶意攻击,保证数据的安全,提高工作效率。效率。效率。

【技术实现步骤摘要】
一种基于GPS和时间戳验证的报文传输验证算法


[0001]本专利技术属于水资源监测
,涉及一种基于GPS和时间戳验证的报文传输验证算法。

技术介绍

[0002]我国中小型水电站众多,部分水电站为了追求经济效益,在水电站在未达到发电水位时便会将水闸完全关闭进行蓄水,如此,因截流导至水电站下游长时间的断流,严重破坏水生动植物与水生态系统,以及下游饮水与灌溉,尤其是在枯水期。
[0003]为保证水资源与水生态可持续发展,国家水利部及各级水利部门相继出台并实行下泄生态流量集中监测的文件,对所有在用水电站按不低于近10年平均流量的10%进行最小下泄流量核定,要求全天候确保河流下泄流量不低于核定流量,以避免断流造成下游水生动植物与水生态系统遭受破坏,同时也保障下游饮水与灌溉的需要。
[0004]具体而言,受到技术层面和监管的实际情况的影响,目前在国家水利部及各级水利部门相继出台并实行下泄生态流量集中监测的文件中,对水电站有如下要求:(1)各监测点每15分钟采集一次水位与流量数据,每小时采集1张实时图片上传各省水利部门监测平台,供省水利厅监管,受国家水利部监督。同时要求,当网络不通、或数据接入平台调试升级期间,无法及时上传的数据和照片,以及个别站点,确实无法解决网络通信问题的,数据和照片需保存在生态流量监测系统本地,要求保存时间不低于3年,经计算,所求存储空间约为5GB。(2)数据通信协议大多省份采用国家标准协议《SZY206

2016水资源监测数据传输规约》或《水文通信协议规范》,个别省份也有采用自定义通信协议的。
[0005]由于上述《SZY206

2016水资源监测数据传输规约》或《水文通信协议规范》协议开放,为询问应答交互模式,无连接认证和设备地理位置信息,攻击者可以任何地理位置轻易伪造格式合法,数据接入平台无法辨别真伪的“合法”报文,使数据接入平台接收的数据因失去真实性而失去监测的意义。
[0006]水资源监测数据报文格式遵从国家水利监测数据通信报文标准,提供的CS校验位并无实际作用,并且国家水利监测数据通信报文标准并不携带时间和地点的验证,这样会导致第三方恶意攻击,发送无效报文,增加服务器负担,第三方甚至可以进行伪造数据报文,有违水利监测的初衷。

技术实现思路

[0007]本专利技术的目的是针对现有的技术存在的上述问题,提供一种基于GPS和时间戳验证的报文传输验证算法,本专利技术所要解决的技术问题是如何确保水资源监测数据的安全性和真实性。
[0008]本专利技术的目的可通过下列技术方案来实现:一种基于GPS和时间戳验证的报文传输验证算法,其特征在于,包括密钥生成模块、监测终端和接收服务端,所述监测终端包括数据采集模块、数据处理模块、数据加密模块和数据发送模块,所述接收服务器端包括数据
接收模块和数据验证模块;
[0009]所述密钥生成模块:由多个管理员共同输入各自密钥key_master,同时获取监测站ID,进行Encrypt函数运算后,得出的结果key_monitor传入不同的监测终端;
[0010]所述密钥生成模块中,Encrypt函数为自定义的加密函数,通过这个函数可以将多个管理员的密钥共同生成同一个监测终端密钥key_monitor;
[0011]所述数据加密模块根据监测站ID、采集数据、监测站经度、监测站纬度、时间戳、随机数RAND和key_monitor进行MD5加密计算;
[0012]所述数据处理模块将数据加密模块返回的校验码、采集数据、监测站ID和时间戳传输给数据发送模块;
[0013]所述数据发送模块将得到的数据封装成数据报文,发送给接收服务器端,数据报文格式遵从国家水利监测数据通信报文标准,将数据加密模块返回的校验码替换掉原本的CS校验码;
[0014]所述数据验证模块根据需要使用Encrypt函数生成监测站密钥key_monitor,根据加密算法进行运算,提取出校验码与报文内的校验码进行比较,判断当前报文是否有效。
[0015]进一步的,所述数据加密模块返回值为一个字节的校验码,校验码高四位为随机数RAND的值,低四位取MD5值中第RAND个字节的高四位的值。
[0016]进一步的,所述密钥生成模块中,管理员提供的密钥可以为任意长度的任意字符。
[0017]进一步的,所述数据采集模块采集的数据包括:当前水位、流量和图片,数据采集模块将采集到的数据传输给数据处理模块。
[0018]进一步的,所述数据处理模块将数据采集模块的数据、监测站ID和时间戳传输给数据加密模块。
[0019]为了解决现有技术存在的问题,同时又不影响国家水利监测数据通信报文标准,提供了一种水资源监测数据的收发系统,能够有效的防范第三方恶意攻击,保证了报文数据的定位一致和数据完整,同时采用多个管理员分别管理密钥的形式,防止密钥泄露所造成的信息不安全,完成了无需人工干预的自校验过程,保证数据的安全,提高工作效率。
附图说明
[0020]图1是基于GPS和时间戳验证的报文传输验证算法的总体示意图。
[0021]图2为监测终端的具体示意图。
[0022]图3为接收服务器端的具体示意图。
[0023]图4为密钥生成过程的具体示意图。
[0024]图5为数据加密过程的具体示意图。
[0025]图6为水位、流量数据报格式的具体示意图。
具体实施方式
[0026]以下是本专利技术的具体实施例并结合附图,对本专利技术的技术方案作进一步的描述,但本专利技术并不限于这些实施例。
[0027]如附图1所示,监测终端和接收服务器端都需要密钥生成模块生成的监测站密钥key_monitor,监测终端会将采集到的数据使用TCP/IP协议发送给接收服务器端,同时报文
格式遵从国家水利监测数据通信报文标准。
[0028]如附图4所示,多个管理员需要根据水利厅分发的密钥key_master,共同运行密钥生成模块,密钥key_master可以为任意长度的任意字符,密钥key_master可以为两个或多个,缺少任意一个key_master,程序将不能运行。
[0029]如附图4所示,密钥生成模块中生成的密钥会分发给多个监测终端。
[0030]如附图4所示,密钥生成模块中所使用的Encrypt函数需要传入的参数包括:监测站ID和多个密钥key_master,Encrypt函数可以为任意加密函数,返回值为加密后的密钥key_monitor传给对应监测站ID的监测终端。
[0031]监测终端执行流程,如附图5所示,数据采集模块将采集到的数据传输给数据处理模块,数据处理模块将当前监测站的监测站ID、采集数据、时间戳传输给数据加密模块,数据加密模块返回加密结果返回给数据处理模块,数据处理模块将监测站ID、采集数据、时间戳、加密结果传输给数据发射模块。
[0032]数据采集模块中,采集数据包括:水位、流量和图片数据。...

【技术保护点】

【技术特征摘要】
1.一种基于GPS和时间戳验证的报文传输验证算法,其特征在于,包括密钥生成模块、监测终端和接收服务端,所述监测终端包括数据采集模块、数据处理模块、数据加密模块和数据发送模块,所述接收服务器端包括数据接收模块和数据验证模块;所述密钥生成模块:由多个管理员共同输入各自密钥key_master,同时获取监测站ID,进行Encrypt函数运算后,得出的结果key_monitor传入不同的监测终端;所述密钥生成模块中,Encrypt函数为自定义的加密函数,通过这个函数可以将多个管理员的密钥共同生成同一个监测终端密钥key_monitor;所述数据加密模块根据监测站ID、采集数据、监测站经度、监测站纬度、时间戳、随机数RAND和key_monitor进行MD5加密计算;所述数据处理模块将数据加密模块返回的校验码、采集数据、监测站ID和时间戳传输给数据发送模块;所述数据发送模块将得到的数据封装成数据报文,发送给接收服务器端,数据报文格式遵从国家水利监测数据通信报文标准,将数据加密模块返回的校...

【专利技术属性】
技术研发人员:卢社阶黄国赞胡四平张文亮杜学生卢伟岸陈先相
申请(专利权)人:湖北科技学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1