System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据加密,尤其涉及一种基于多认证的水文数据加密方法及系统。
技术介绍
1、在水利监测中,水文数据是关于地球表面水循环的各种信息,包括降雨、径流、蒸发、地下水位等,该数据对于水资源管理、洪水预警、农业灌溉、生态保护等领域具有重要意义。随着全球气候变化和人类活动的影响,水文数据的获取和分析变得越来越重要。然而,水文数据的安全性和隐私保护问题也日益凸显。
2、虽然在过去一段时间内,水文数据的收集和处理技术得到了很大发展,例如,视频测流技术的应用使得水文数据的采集更加高效和精确,基于视频测流的频次较高,监测的水文数据量更大,这些技术的发展也带来不少安全问题,由于水文数据大都涉及基础民生等方面,其安全性和隐私问题不容忽视。现有的水文数据通常都是采用直接打包上传的方式,从移动设备或者固定设备传输到服务器端,中间没有任何保护措施,容易受到非注册用户或者非指定途径的信息入侵,被盗取数据或被篡改数据。
3、因此,针对水文数据的传输,需要提出一种有效的加密方法,以提高水文数据传输的安全性。
技术实现思路
1、本专利技术提供一种基于多认证的水文数据加密方法及系统,用以解决现有技术中未有针对水文数据传输加密有效加密方法的缺陷。
2、第一方面,本专利技术提供一种基于多认证的水文数据加密方法,包括:
3、待移动终端启用时,向服务器发送终端设备地址,所述服务器根据所述终端设备地址生成第一密钥;
4、当用户登录时,所述服务器根据用户信息和时
5、所述服务器根据所述第二密钥将原始数据进行加密,获得加密数据;
6、若所述服务器向所述移动终端成功发送所述加密数据,则所述移动终端根据解密算法对所述加密数据进行解密,返回解密结果;
7、若所述服务器向所述移动终端发送所述加密数据失败,则重新生成密钥后进行数据加密传输。
8、根据本专利技术提供的一种基于多认证的水文数据加密方法,待移动终端启用时,向服务器发送终端设备地址,所述服务器根据所述终端设备地址生成第一密钥之前,还包括:
9、待所述移动终端出厂时,随机生成初始密钥key0;
10、将key0存放为数组key0[3]={k0,k1,k2}。
11、根据本专利技术提供的一种基于多认证的水文数据加密方法,待移动终端启用时,向服务器发送终端设备地址,所述服务器根据所述终端设备地址生成第一密钥,包括:
12、所述服务器获取所述移动终端的mac地址;
13、利用所述mac地址的前4字节,将key0对应的数组key0[3]={k0,k1,k2}更新为key1对应的数组key1[3]={k10,k11,k12}。
14、根据本专利技术提供的一种基于多认证的水文数据加密方法,当用户登录时,所述服务器根据用户信息和时间信息将所述第一密钥更新为第二密钥,包括:
15、所述服务器获取用户的id信息与用户登录的当前时间戳time;
16、根据所述id信息和所述当前时间戳time,将key1更新为key2:
17、
18、
19、
20、其中,当前时间戳time为4字节unix时间戳,为异或运算符,mod为求余运算。
21、根据本专利技术提供的一种基于多认证的水文数据加密方法,所述服务器根据所述第二密钥将原始数据进行加密,获得加密数据,包括:
22、采用key2对原始数据d[n]进行加密,得到加密数据m[n]:
23、
24、
25、
26、……
27、
28、
29、
30、其中,an、bn和cn,n=1,2,3,分别表示unix时间戳发送时刻的时、分和秒数据,<<表示左移符号。
31、根据本专利技术提供的一种基于多认证的水文数据加密方法,若所述服务器向所述移动终端成功发送所述加密数据,则所述移动终端根据解密算法对所述加密数据进行解密,返回解密结果,包括:
32、返回解密后的加密数据,具体包括:d[0]=(d1b2c3+d2b3c1+d3b1c2-d1b3c2-d2b1c3-d3b2c1)/(a1b2c3+a2b3c1+a3b1c2-a1b3c2-a2b1c3-a3b2c1)
33、d[1]=(a1d2c3+a2d3c1+a3d1c2-a1d3c2-a2d1c3-a3d2c1)/(a1b2c3+a2b3c1+a3b1c2-a1b3c2-a2b1c3-a3b2c1)
34、d[2]=(a1b2d3+a2b3d1+a3b1d2-a1b3d2-a2b1d3-a3b2d1)/(a1b2c3+a2b3c1+a3b1c2-a1b3c2-a2b1c3-a3b2c1)
35、……
36、d[n-3]=(d'1b2c3+d'2b3c1+d'3b1c2-d'1b3c2-d'2b1c3-d'3b2c1)/(a1b2c3+a2b3c1+a3b1c2-a1b3c2-a2b1c3-a3b2c1)
37、d[n-2]=(a1d'2c3+a2d'3c1+a3d'1c2-a1d'3c2-a2d'1c3-a3d'2c1)/(a1b2c3+a2b3c1+a3b1c2-a1b3c2-a2b1c3-a3b2c1)
38、d[n-1]=(a1b2d'3+a2b3d'1+a3b1d'2-a1b3d'2-a2b1d'3-a3b2d'1)/(a1b2c3+a2b3c1+a3b1c2-a1b3c2-a2b1c3-a3b2c1)
39、其中,
40、
41、
42、……
43、
44、
45、其中,>>表示右移符号。
46、根据本专利技术提供的一种基于多认证的水文数据加密方法,若所述服务器向所述移动终端成功发送所述加密数据,则所述移动终端根据解密算法对所述加密数据进行解密,返回解密结果,还包括:
47、返回解密错误信息。
48、根据本专利技术提供的一种基于多认证的水文数据加密方法,若所述服务器向所述移动终端发送所述加密数据失败,则重新生成密钥后进行数据加密传输,包括:
49、若在预设重试次数范围内,则所述服务器依次重新生成第一密钥和第二密钥,完成数据加密后向所述移动终端发送加密数据;
50、若超过预设重试次数范围,则所述服务器基于指数退避策略,按照指数级增加的等待时间依次重新生成第一密钥和第二密钥,完成数据加密后向所述移动终端发送加密数据。
51、第二方面,本专利技术还提供一种基于多认证的水文数据加密系统,包括:
52、第一加密模块,用于待移动终端启用时,向服务器发送终端设备地址,所述服务器根据所述终端设备地址生成第一密钥本文档来自技高网...
【技术保护点】
1.一种基于多认证的水文数据加密方法,其特征在于,包括:
2.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于,待移动终端启用时,向服务器发送终端设备地址,所述服务器根据所述终端设备地址生成第一密钥之前,还包括:
3.根据权利要求2所述的基于多认证的水文数据加密方法,其特征在于,待移动终端启用时,向服务器发送终端设备地址,所述服务器根据所述终端设备地址生成第一密钥,包括:
4.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于,当用户登录时,所述服务器根据用户信息和时间信息将所述第一密钥更新为第二密钥,包括:
5.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于,所述服务器根据所述第二密钥将原始数据进行加密,获得加密数据,包括:
6.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于,若所述服务器向所述移动终端成功发送所述加密数据,则所述移动终端根据解密算法对所述加密数据进行解密,返回解密结果,包括:
7.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于
8.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于,若所述服务器向所述移动终端发送所述加密数据失败,则重新生成密钥后进行数据加密传输,包括:
9.一种基于多认证的水文数据加密系统,其特征在于,包括:
10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述基于多认证的水文数据加密方法。
...【技术特征摘要】
1.一种基于多认证的水文数据加密方法,其特征在于,包括:
2.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于,待移动终端启用时,向服务器发送终端设备地址,所述服务器根据所述终端设备地址生成第一密钥之前,还包括:
3.根据权利要求2所述的基于多认证的水文数据加密方法,其特征在于,待移动终端启用时,向服务器发送终端设备地址,所述服务器根据所述终端设备地址生成第一密钥,包括:
4.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于,当用户登录时,所述服务器根据用户信息和时间信息将所述第一密钥更新为第二密钥,包括:
5.根据权利要求1所述的基于多认证的水文数据加密方法,其特征在于,所述服务器根据所述第二密钥将原始数据进行加密,获得加密数据,包括:
6.根据权利要求1所述的基于多认证的水文数据加密...
【专利技术属性】
技术研发人员:刘炳义,刘维高,郭圣逸,陆超,万朕华,
申请(专利权)人:武汉大水云科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。