服务端与客户端加密解密思路

服务端与客户端加密解密思路

  • 我的参考
  • 我的理解

我的参考

我的理解

  • AES
    • 对称加密,即加密解密使用共同的key
    • AES是DES的升级版
  • RSA
    • 非对称加密,即加密解密使用一对不同的key,分为公钥和秘钥
    • 公钥加密,私钥解密;私钥加密,公钥解密

之前在公司遇到UC中心的token信息,而token信息里面带有用户数据,而我这边PHP要做解密,要做解密必须了解加密方式

注:我们公司主要是通过token实现单点登录,各自应用根据token判断用户是否已经登录

token的生成规则

  1. 加密方式

    (明文+AES) 连接符 (AES+RSA)

  2. 解密方式

    1. 切割连接符,得到(明文+AES) (AES+RSA)
    2. (AES+RSA),使用公钥或者私钥,解密RSA,得到AES秘钥
    3. (明文+AES),通过上一步得到的AES秘钥解密,得到明文

上述,只有RSA是固定不变的,但是AES是可变,根据不同的客户端使用不同的AES,这样可以做到只有拥有自己的AES才能解密明文

这是一种加密思路,客户端只能唯一性加密解密,主要应用场景在于服务端与客户端(app)的通信

###总结:

最后个人理解,目前基本都采用OAUTH2授权方式,采用https+token, 虽然需要通过二次请求,但是可以解决后续所有的请求

基本来说,也没有必要把明文信息放入token里面,像这种可逆转得到明文信息的方式,基本来说性能是一个问题,加密解密计算耗时,但对于走http协议来说,不失为一个好办法


@author 詹巨章 zhanjuzhang@gmail.com

@date 2015-7-20 10:23:47

转载于:https://my.oschina.net/juzhang/blog/482872

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值