一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于安全校验的数据传输方法、系统、计算机设备、介质与流程

2022-02-20 05:23:41 来源:中国专利 TAG:


1.本发明属于数据处理技术领域,尤其涉及一种基于安全校验的数据传输方法、系统、计算机设备、介质。


背景技术:

2.目前,http是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。随着web应用领域的发展,http协议的安全性要求也达到了前所未有的高度。
3.网络传输中,经常遇到一些服务之间数据同步的问题,需要通过调用第三方系统的接口服务,传输的安全就变得尤为重要。
4.常见的保障传输安全的五种方式:
5.token授权认证,防止未授权用户获取数据;
6.时间戳超时机制;
7.url签名,防止请求参数被篡改;
8.防重放,防止接口被第二次请求,防采集;
9.采用https通信协议,防止数据明文传输。
10.在实际的工作中有两种校验方式:
11.(1)公司内部的接口,包括:
12.公司内部的接口,当然是涉及到比较隐秘信息的时候,调用方需要持有一个私钥,调用的时候将传入的参数通过私钥进行的加密,若加密后的内容能够被公钥解密,那么则能够通过。
13.(2)调用第三方的接口,包括:
14.通信使用https;
15.请求签名,防止参数被篡改;
16.身份确认机制,每次请求都要验证是否合法;
17.对所有请求和响应都进行加解密操作。
18.现有技术一,一种数据传输方法,包括:
19.在当前的数据传输场景为预设数据传输场景时,为无线个域网中的各目标邻居设备分配对应的ofdma子通道;
20.通过所述子通道向各目标邻居设备传输所述预设数据传输场景下的数据。
21.现有技术二,一种分布式数据加解密方法,应用于分布式数据加解密系统,该系统包括:加密引擎、文件系统以及分布式文件存储集群,其特征在于,所述分布式数据加解密方法包括以下步骤:
22.所述加密引擎依据第一加密协议对文件系统进行写操作时,对经过的数据流进行加密,形成数据密文存储于所述分布式文件存储集群;
23.所述加密引擎依据第二加密协议对文件系统进行读操作时,获取所述数据密文并
进行解密,形成数据明文。
24.现有技术三,一种数据解密方法,应用于智能终端,所述智能终端包括设置在边框的压力触控感应模块,其特征在于,所述方法包括:
25.接收用户通过所述压力触控感应模块录入的按压事件;
26.判断所述按压事件是否与预设的数据解密事件匹配;
27.当所述按压事件与所述预设的数据解密事件相匹配时,对数据进行解密。
28.通过上述分析,现有技术存在的问题及缺陷为:
29.(1)现有技术中,数据加密不能防止窃密行为,而且窃密的成本高。
30.(2)现有技术中的数据传输模式不支持手机端访问;在网络传输的过程中,性能差。
31.(3)现有技术中,加密和解密过程容易信息暴露,安全性差。
32.(4)现有技术中,加密传输方式不能独立用于不同的服务端连接,实用性差。
33.解决以上问题及缺陷的难度为:
34.秘钥的生成,在长度和复杂度上需要考虑,长度越长复杂度越高,但网络传输会变慢,需要在长度和复杂度上做个平衡考虑;
35.访问主机的限制需要考虑绑定和解绑。
36.解决以上问题及缺陷的意义为:
37.本发明将秘钥由时间戳 加密内容 特殊符号多种信息组成来增加复杂度;
38.本发明利用redis和过滤器来限制特定主机访问以及访问峰值。这样可以提高访问的安全性,也减少数据丢包的情况。避免dos攻击,增加系统安全性。


技术实现要素:

39.针对现有技术存在的问题,本发明提供了一种基于安全校验的数据传输方法、系统、计算机设备、介质。本发明提供了一种解密过程是利用秘钥再次加密,对比明文内容判断是否通过校验。
40.本发明提供了一种随机种子秘钥和动态盐值的生成,随机种子位数32,提高了秘钥的安全性。本发明提供了一种访问的ip限制,提前限定访问的主机。
41.本发明是这样实现的,一种基于安全校验的数据传输方法,包括:基于安全访问校验,限制主机访问以及访问峰值,并基于aes算法和动态盐值双重加密的数据加密方式,与第三方系统进行安全数据的传输。
42.进一步,所述基于安全校验的数据传输方法具体包括:
43.步骤一,当客户端对接口请求数据,先对请求的参数param,利用pig和dog加密字符与运算作为动态盐值salt、access_token、时间戳计算签名得到sign放到请求的header中;
44.步骤二,服务端获取restful请求中的header参数;
45.步骤三,filter过滤器获取authorization携带的签名并判读是否一致;同时服务端对请求时的签名进行加解密和校验;
46.步骤四,当签名值一致,则允许访问;不一致,则不允许访问。
47.进一步,所述步骤三中服务端对请求时的签名进行加密包括:
48.初始化生成四个根秘钥文件(pig,cat,bird,dog),输入加密的key和描述内容生成秘钥key,秘钥存到服务端中的json文件中;
49.再输入加密内容,利用aes对秘钥和加密内容进行加密得到密文。
50.进一步,在数据加密过程中,先读取四个根秘钥文件,对秘钥文件进行逐个异或运算获得密码段,再通过dog与pig密码文件进行与运算获得加密盐值,然后对秘钥内容进行aes加密得到最终的秘钥值。
51.进一步,对用户密码进行加密时,对相同的密码或弱密码,使用随机种子秘钥和动态盐值的生成方式保存为不同的密文。
52.进一步,所述步骤三中服务端对请求时的签名进行解密包括:
53.在发送请求时,发送当前时间戳和随机数以及明文的请求参数,利用秘钥与时间戳和随机数、请求地址以及参数,请求计算签名秘钥,当签名与authorization中的签名一致时,则通过校验允许访问,否则拒绝访问。
54.本发明的另一目的在于提供一种基于安全校验的数据传输系统包括:
55.客户端,对请求使用的动态盐值、access_token、时间戳、请求参数计算签名;
56.请求发送模块,用于并发送restful请求;
57.过滤器,用于获取authorization携带的签名并判读是否一致;
58.服务端,用于对请求时的签名进行加解密和校验;校验后,一致,则允许访问;不一致,则不允许访问。
59.本发明的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述基于安全校验的数据传输方法。
60.本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述基于安全校验的数据传输方法。
61.本发明的另一目的在于提供一种分布式超媒体信息系统,所述分布式超媒体信息系统执行所述基于安全校验的数据传输方法。
62.结合上述的所有技术方案,本发明所具备的优点及积极效果为:
63.本发明数据加密可以防止大部分的窃密行为,提高窃密的成本,从而提高数据的完全;
64.更适用于移动应用:cookie不支持手机端访问的;
65.在网络传输的过程中,性能更好;
66.加密和解密过程都在服务端,避免了暴露加解密的过程。
67.本发明利用了随机种子和动态盐值和aes(advancedencryption standard,意思是高级加密标准)加密,比des算法对密钥长度设计更加灵活,用穷举法是不可能破解的,大大提高了秘钥的安全性。
68.本发明这种加密传输方式可以用第三方接口的调用,动态秘钥可以独立用于不同的服务。
附图说明
69.图1是本发明实施例提供的基于安全校验的数据传输方法流程图。
70.其中:将请求参数,当前时间戳以及access_token和动客盐值—起进行计算签名:sign=md5(请求参数 timestamp access_token 动态盐值)。
71.图2是本发明实施例提供的加密过程、解密过程示意图。
72.图3是本发明实施例提供的加解密算法原理图。
73.图4是本发明实施例提供的基于安全校验的数据传输方法应用实例原理图。
具体实施方式
74.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
75.针对现有技术存在的问题,本发明提供了一种于安全校验的数据传输方法、系统、计算机设备、介质,下面结合附图对本发明作详细的描述。
76.本发明主要针对公司内部的安全传输方式,在身份校验方向做了扩展加强,涉及身份验证的系统都需要存储用户的认证信息,常用的用户认证方式主要为用户名和密码的方式,为了安全起见,用户输入的密码需要保存为密文形式,可采用已公开的不可逆的hash加密算法,比如安全散列算法sha256,sha512,sha3等,对于同一密码,同一加密算法会产生相同的hash值,这样,当用户进行身份验证时,也可对用户输入的明文密码应用相同的hash加密算法,得出一个hash值,然后使用该hash值和之前存储好的密文值进行对照,如果两个值相同,则密码认证成功,否则密码认证失败。
77.由于密码是由用户设定的,在实际应用中,用户设置的密码复杂度可能不够高,同时不同的用户极有可能会使用相同的密码,那么这些用户对应的密文也会相同,这样,当存储用户密码的数据库泄露后,攻击者会很容易便能找到相同密码的用户,从而也降低了破解密码的难度,因此,在对用户密码进行加密时,需要考虑对密码进行掩饰,即使是相同的密码,也应该要保存为不同的密文,即使用户输入的是弱密码,也需要考虑进行增强,从而增加密码被攻破的难度,使用盐值加密的方式和ip限制便能满足该需求。
78.如图1所示,本发明提供一种基于安全校验的数据传输方法基于安全访问校验,限制主机访问以及访问峰值,并基于aes算法和动态盐值双重加密的数据加密方式,与第三方系统进行安全数据的传输,具体包括:
79.客户端通过对请求使用动态盐值 access_token 时间戳 请求参数计算签名,保证数据的加密性,限定服务端的访问ip,提高访问的可靠性,通过请求时签名的校验,判断是否拥有访问权限,继而进行服务响应。
80.本发明提供的基于安全校验的数据传输方法业内的普通技术人员还可以采用其他的步骤实施,图1的本发明提供的基于安全校验的数据传输方法仅仅是一个具体实施例而已。
81.在本发明一优选实施例中,基于安全校验的数据传输方法具体包括:
82.步骤一,客户端对请求使用的动态盐值、access_token、时间戳、请求参数计算签名;
83.步骤二,发送restful请求;
84.步骤三,filter过滤器获取authorization携带的签名并判读是否一致;同时服务
端对请求时的签名进行加解密和校验;
85.步骤四,校验后,一致,则允许访问;不一致,则不允许访问。
86.在本发明一优选实施例中,所述步骤三中服务端对请求时的签名进行加密包括:
87.初始化生成四个根秘钥文件(pig,cat,bird,dog),输入加密的key和描述内容生成秘钥key,秘钥存到服务端中的json文件中;
88.再输入加密内容,利用aes对秘钥和加密内容进行加密得到密文。
89.在本发明一优选实施例中,在数据加密过程中,先读取四个根秘钥文件,对秘钥文件进行逐个异或运算获得密码段,再通过dog与pig密码文件进行与运算获得加密盐值,然后对秘钥内容进行aes加密得到最终的秘钥值。
90.在本发明一优选实施例中,对用户密码进行加密时,对相同的密码或弱密码,使用随机种子秘钥和动态盐值的生成方式保存为不同的密文。
91.在本发明一优选实施例中,所述步骤三中服务端对请求时的签名进行解密包括:
92.在发送请求时,发送当前时间戳和随机数以及明文的请求参数,利用秘钥与时间戳和随机数、请求地址以及参数,请求计算签名秘钥,当签名与authorization中的签名一致时,则通过校验允许访问,否则拒绝访问。
93.在本发明一优选实施例中,本发明环提供一种基于安全校验的数据传输系统包括:
94.客户端,对请求使用的动态盐值、access_token、时间戳、请求参数计算签名;
95.请求发送模块,用于并发送restful请求;
96.过滤器,用于获取authorization携带的签名并判读是否一致;
97.服务端,用于对请求时的签名进行加解密和校验;校验后,一致,则允许访问;不一致,则不允许访问。
98.下面结合具体实施例对本发明的技术方案作进一步描述。
99.实施例
100.在本发明一实施例中,如图2所示((a)加密过程;(b)解密过程),本发明提供的加解密过程,在加密时首选需要初始化生成四个根秘钥文件(pig,cat,bird,dog),输入加密的key和描述内容生成秘钥key,秘钥存到服务端中的json文件中,然后再输入加密内容,最终利用aes对秘钥和加密内容进行加密得密文。
101.在请求过程中,需要进行解密,在发送请求时,会发送当前时间戳和随机数以及明文的请求参数,此时本发明利用秘钥与时间戳和随机数、请求地址以及参数,请求计算签名秘钥,当签名与authorization中的签名一致时,则通过校验允许访问,否则拒绝访问。
102.如图3所示,本发明提供的加解密算法,包括:
103.在数据加密过程中,先读取四个根秘钥文件(bird,cat,dog,pig),对秘钥文件进行逐个异或运算获得密码段,在通过dog与pig密码文件进行与运算获得加密盐值,然后对秘钥内容进行aes加密得到最终的秘钥值,这样的方式大大加强了秘钥的安全性。
104.在本发明一优选实施例中,其中,读取四个加密文件(bird,cat,dog,pig)步骤中,利用securerandom随机生成32位加密key存入文件中。
105.在本发明一优选实施例中,获取密码段步骤中,获取dog和cat的字节数组,并将dog与cat进行异或结果赋予—个新数组。然后再依次与另外两个文件进行异或,最后转为
16进制字符串。
106.在本发明一优选实施例中,获取加密盐值步骤中,利用dog和pig进行字节且运算,再转为16进制字符串。
107.在本发明一优选实施例中,获取密码加密字节步骤中,将密码段与固定字节进行。
108.下面结合传统session与本发明方案对比对本发明作进一步描述。
109.传统session登录校验方式,步骤如下:
110.1)用户输入其登录信息。
111.2)服务器验证信息是否正确,并创建一个session,然后将其存储在数据库中。
112.3)服务器为用户生成一个sessionid,将具有sesssionid的cookie将放置在用户浏览器中。
113.4)在后续请求中,会根据数据库验证sessionid,如果有效,则接受请求。
114.5)一旦用户注销应用程序,会话将在客户端和服务器端都被销毁。
115.本发明提供的基于安全校验的数据传输方法,如图4所示;包括:
116.1.用户输入其登录信息。
117.2.服务器验证信息是否正确,并返回已签名的token。
118.3.token储在客户端,例如存在localstorage或cookie中。
119.4.之后的http请求都将token添加到请求头里。
120.5.服务器解码jwt,并且如果令牌有效,则接受请求。
121.6.一旦用户注销,令牌将在客户端被销毁,不需要与服务器进行交互一个关键是,令牌是无状态的。后端服务器不需要保存令牌或当前session的记录。
122.通过上述技术对比:
123.传统是根据session 过滤器来校验用户登录状态,session生命周期是一个会话(从打开浏览器到关闭浏览器)本发明的方式是采用jwt方式,密钥在有效期内是可以无状态访问的,不受浏览器约束,当密钥失效后需要重新获取密钥,这样增加密钥被破解的难度。
124.应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd-rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
125.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献