当前位置:   article > 正文

数据传输安全(为支付宝第三方做铺垫)

数据传输安全(为支付宝第三方做铺垫)

加解密:防止被拦截看到敏感信息

身份认证:防止伪造 签名

不可逆的加密技术

不可逆加密技术不能用于传输数据,一般用于用户注册,对用户的密码加密

只能加密不能解密,常见算法md5,用户注册加密不能解密,使用场景对密码比对。

明文+MD5+盐值

只能加密不能解密

可逆的加密技术

既可以加密也可以解密

对称的可逆加密技术

加密和解密的秘钥都是同一个

典型代表 AES        DES  一个秘钥加解密,双方先交换秘钥,交换完之后知道是哪一个。这个适合自己系统,比如自己用户密码进行加密。比如配置选项,yml,数据库账户密码加密。

但是都已经是自己的系统,那为什么要给自己加密,莫名其妙。

这个不安全,因为秘钥拦截怎么办

不能用于外部系统之间远程调用

如何对自己yml中mysql 账号和密码加密,网上一搜就搜得到。

导包

导工具类

自己把明文密码转成加密后的

放到yml中就可以了

配置秘钥和加解密算法

解密后的密码重新设置给datasourse

修改数据库的配置文件内容信息

非对称的可逆加密技术

一个公钥,一个私要

典型RsA

加密和解密分开,公钥加密,私钥解密。

加密和解密秘钥不是同一个

比如自己的服务,有自己的公钥和私钥

支付宝有它的公钥和私钥

双方交换对方的公钥,私钥不会交换,都自己保存。

自己服务拥有了支付宝的公钥

支付宝有了自己服务的公钥

自己服务使用对方的公钥进行加密,有加密字符串

加密后的字符串传过去,支付宝使用支付宝私钥解密。

支付宝返数据加密也是用自己服务的公钥进行加密,我们用自己的私钥进行解密。

假如中途拦截的话,又没有私钥,所以是无法解密的。

如果有人伪造自己的服务向支付宝发起请求。

解决方案:在自己的服务对自己的私钥进行加签,再使用对方的公钥进行加密。沃日,双层加密。

支付宝就要:利用对方公钥验签,解密成功,是对方发过来的,所谓验签,使用对方公钥进行解密,没报错,是对方发过来的请求。使用自己的私钥对参数进行解密。

就是双层加密,双层解密。

如果有人问你,你的数据在各个服务如何保障安全。

内部调用无所谓,外部请求,在网关进行出去,如果敏感信息就非对称加密算法

外部请求通过https,保障安全

https底层就是对称加密或者非对称加密

客户端 HTTPS的服务器必须要有一套数字证书,花点钱申请,或者自己制作,证书就是公钥

这是比较简单,详细的可以网上搜一搜

证书就是公钥

双方传输证书

客户端解析证书,用公钥加密随机值

传输加密信息

服务端解析加密信息

百度安全验证

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/737991
推荐阅读
相关标签
  

闽ICP备14008679号