一种数据安全防护方法和系统技术方案

技术编号:30162193 阅读:27 留言:0更新日期:2021-09-25 15:16
本申请实施例提出了一种数据安全防护方法和系统,该方法应用于客户端设备,该方法包括:在用户进行登录操作时,生成对称密钥和非对称密钥;非对称密钥包括第一私钥;通过ReactNative框架的原生层实现使用内置公钥对对称密钥进行加密,得到第一密文,将第一密文发送给服务端设备;服务端设备用于通过内置私钥对第一密文进行解密,得到对称密钥;在接收到服务端设备发送的用户的登录成功信息后,接收用户的请求报文;通过ReactNative框架的原生层实现使用对称密钥加密用户的请求报文,得到加密后的请求报文,以及使用第一私钥对用户的请求报文进行签名,得到第一签名;将加密后的请求报文和第一签名发送至服务端设备。的请求报文和第一签名发送至服务端设备。的请求报文和第一签名发送至服务端设备。

【技术实现步骤摘要】
一种数据安全防护方法和系统


[0001]本申请涉及金融科技(Fintech)的云计算
,尤其涉及一种数据安全防护方法和系统。

技术介绍

[0002]随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。
[0003]相关技术中,参见图1A,客户端/服务器(Client/Server,C/S)架构之下的应用软件(Application,APP)和服务器之间的接口通信,基本都是使用超文本传输协议/超文本传输安全协议(Hypertext Transfer Protocol/Hyper Text Transfer Protocol over SecureSocket Layer)进行数据传输。HTTP协议的报文内容是明文的,因此,如果在网络传输过程中,如果报文被恶意攻击者劫持,攻击者就可以读取到报文里面所携带的信息甚至对报文信息作出修改然后重新发送,存在信息泄露和被篡改等风险。如果关键交易接口的信息被篡改,可能造成系统异常、资金损失等更加重大的风险。为了提高安全性,大部分应用都会迁移到使用HTTPS协议进行传输。HTTPS协议在HTTP的基础上增加了证书认证和数据加密机制。在网络传输过程中,报文的内容是经过特定机制加密的,攻击者截取到报文后无法直接读取报文内容。HTTPS加密的安全性依赖于它的证书认证机制,客户端的操作系统环境会有预置的根证书可以校验服务端的HTTPS证书的合法性。虽然HTTPS协议号称是一种安全的传输协议,但它依然存在被攻击的漏洞。HTTPS的证书验证机制需要依赖操作系统内预置的根证书来对服务器的证书进行验证。如果攻击者突破了客户端的安全防护,向用户的操作系统内添加攻击者自己的证书。或者用户安装了一些其他的恶意软件,并在使用过程中无意授权他们向操作系统添加了攻击者的证书。只要操作系统的根证书里面多了攻击者的证书,操作系统在处理HTTPS证书校验时,就可以使用攻击者的证书来对服务器下发的证书进行校验,从而给中间人攻击创造了条件。攻击者通过实施中间人攻击,即可获取到通过HTTPS协议传输的报文的明文内容。可见,在客户端与服务器进行数据传输时,无论采用HTTP协议还是HTTPS协议,均存在信息泄露、被篡改等风险,无法确保数据在传输过程中的安全性。

技术实现思路

[0004]本申请提供一种数据安全防护方法和系统,可以解决相关技术中在客户端设备与服务端设备进行数据传输时,数据安全性低的问题。
[0005]本申请的技术方案是这样实现的:
[0006]本申请实施例提供了一种数据安全防护方法,应用于客户端设备,所述方法包括:
[0007]在用户进行登录操作时,生成对称密钥和非对称密钥;所述非对称密钥包括第一私钥;
[0008]通过ReactNative框架的原生层实现使用内置公钥对所述对称密钥进行加密,得
到第一密文,将所述第一密文发送给服务端设备;所述服务端设备用于通过内置私钥对所述第一密文进行解密,得到所述对称密钥;
[0009]在接收到所述服务端设备发送的用户的登录成功信息后,接收所述用户的请求报文;
[0010]通过所述ReactNative框架的原生层实现使用所述对称密钥加密所述用户的请求报文,得到加密后的请求报文,以及使用所述第一私钥对所述用户的请求报文进行签名,得到第一签名;将所述加密后的请求报文和所述第一签名发送至所述服务端设备。
[0011]在一些实施例中,所述方法还包括:
[0012]接收所述服务端设备发送的加密后的响应报文;所述加密后的响应报文是所述服务端设备在验证所述用户的登录成功信息有效时,使用所述对称密钥对所述服务端设备的响应报文进行加密得到的;所述响应报文是所述服务端设备对所述加密后的请求报文进行解密得到的请求报文执行后生成的;
[0013]使用所述对称密钥对所述加密后的响应报文进行解密。
[0014]在一些实施例中,所述请求报文包括报文头,所述方法还包括:
[0015]在接收所述用户的请求报文后,对所述请求报文的报文头进行解析,得到所述报文头的标识位;
[0016]基于所述报文头的标识位,确定是否使用所述对称密钥加密所述用户的请求报文。
[0017]在一些实施例中,所述非对称密钥还包括第一公钥,所述方法还包括:
[0018]使用所述内置公钥对所述第一公钥进行加密,得到第二密文,将所述第二密文发送给服务端设备;所述服务端设备用于通过所述内置私钥对所述第二密文进行解密,得到所述第一公钥。
[0019]在一些实施例中,所述方法还包括:
[0020]接收所述服务端设备发送的签名后的响应报文;所述签名后的响应报文是所述服务端设备在验证所述用户的登录成功信息有效,且使用所述第一公钥对所述请求报文验签通过后,使用所述第一公钥对所述服务端设备的响应报文进行签名得到的;所述响应报文是所述服务端设备对所述加密后的请求报文进行解密得到的请求报文执行后生成的;
[0021]使用所述第一私钥对所述签名后的响应报文进行验签。
[0022]在一些实施例中,所述方法还包括:
[0023]在所述用户进行每次登录操作时,重新生成所述非对称密钥。
[0024]本申请实施例提供了一种数据安全防护方法,应用于服务端设备,所述方法包括:
[0025]接收所述客户端设备发送的第一密文;所述第一密文是所述客户端设备使用内置公钥对用户进行登录操作时生成的对称密钥进行加密得到的;
[0026]使用内置私钥对所述第一密文进行解密,得到所述对称密钥;对所述用户的登录操作进行验证,生成所述用户的登录成功信息;
[0027]向所述客户端设备发送所述用户的登录成功信息,使得所述客户端设备在在接收到所述服务端设备发送的用户的登录成功信息后,接收所述用户的请求报文,并使用所述对称密钥加密所述用户的请求报文,得到加密后的请求报文,以及使用用户进行登录操作时生成的第一私钥对所述用户的请求报文进行签名,得到第一签名;
[0028]接收所述客户端设备发送的所述加密后的请求报文和所述第一签名。
[0029]在一些实施例中,所述方法还包括:
[0030]在生成所述用户的登录成功信息后,保存所述对称密钥与所述用户的登录成功信息的第一映射关系;
[0031]在验证所述用户的登录成功信息有效时,通过所述第一映射关系获取与所述用户的登录成功信息对应的对称密钥,使用所述对称密钥对所述加密后的请求报文进行解密,得到所述用户的请求报文;
[0032]在基于所述用户的请求报文生成响应报文时,使用所述对称密钥对所述响应报文进行加密,得到加密后的响应报文;
[0033]向所述客户端设备发送所述加密后的响应报文。
[0034]在一些实施例中,所述方法还包括:
[0035]接收所述客户端设备发送的第二密文;所述第二密文是所述客户端设备使用所述内置公钥本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据安全防护方法,其特征在于,应用于客户端设备,所述方法包括:在用户进行登录操作时,生成对称密钥和非对称密钥;所述非对称密钥包括第一私钥;通过ReactNative框架的原生层实现使用内置公钥对所述对称密钥进行加密,得到第一密文,将所述第一密文发送给服务端设备;所述服务端设备用于通过内置私钥对所述第一密文进行解密,得到所述对称密钥;在接收到所述服务端设备发送的用户的登录成功信息后,接收所述用户的请求报文;通过所述ReactNative框架的原生层实现使用所述对称密钥加密所述用户的请求报文,得到加密后的请求报文,以及使用所述第一私钥对所述用户的请求报文进行签名,得到第一签名;将所述加密后的请求报文和所述第一签名发送至所述服务端设备。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收所述服务端设备发送的加密后的响应报文;所述加密后的响应报文是所述服务端设备在验证所述用户的登录成功信息有效时,使用所述对称密钥对所述服务端设备的响应报文进行加密得到的;所述响应报文是所述服务端设备对所述加密后的请求报文进行解密得到的请求报文执行后生成的;使用所述对称密钥对所述加密后的响应报文进行解密。3.根据权利要求1所述的方法,其特征在于,所述请求报文包括报文头,所述方法还包括:在接收所述用户的请求报文后,对所述请求报文的报文头进行解析,得到所述报文头的标识位;基于所述报文头的标识位,确定是否使用所述对称密钥加密所述用户的请求报文。4.根据权利要求1所述的方法,其特征在于,所述非对称密钥还包括第一公钥,所述方法还包括:使用所述内置公钥对所述第一公钥进行加密,得到第二密文,将所述第二密文发送给服务端设备;所述服务端设备用于通过所述内置私钥对所述第二密文进行解密,得到所述第一公钥。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:接收所述服务端设备发送的签名后的响应报文;所述签名后的响应报文是所述服务端设备在验证所述用户的登录成功信息有效,且使用所述第一公钥对所述请求报文验签通过后,使用所述第一公钥对所述服务端设备的响应报文进行签名得到的;所述响应报文是所述服务端设备对所述加密后的请求报文进行解密得到的请求报文执行后生成的;使用所述第一私钥对所述签名后的响应报文进行验签。6.根据权利要求1至5任一项所述的方法,其特征在于,所述方法还包括:在所述用户进行每次登录操作时,重新生成所述非对称密钥。7.一种数据安全防护方法,其特征在于,应用于服务端设备,所述方法包括:接收所述客户端设备发送的第一密文;所述第一密文是所述客户端设备使用内置公钥对用户进行登录操作时生成的对称密钥进行加密得到的;使用内置私钥对所述第一密文进行解密,得到所述对称密钥;对所述用户的登录操作进行验证,生成所述用户的登录成...

【专利技术属性】
技术研发人员:洪创煌
申请(专利权)人:深圳前海微众银行股份有限公司
类型:发明
国别省市:

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

1