加密-----我的简单理解

来源:互联网 发布:巨人网络纪学锋 编辑:程序博客网 时间:2024/06/14 22:45

登陆注册使用的加密流程:

login前,先通过RSA获取公钥;

login时,对password密码进行公钥加密,加密后,直接提交服务器,利用服务器进行解密,解密用到私钥;

解密后返回数据,这里有一个数据Tokens,在项目中,一般这个数据都是永久性有效的,当然有时候返回的数据是整体加密的,Token被服务器AES加密了,约定的是转码格式是32位加密,密码不够32位,使用一个for循环进行拼接32位,以此达到对永久的token解密;

这时候接着将token数据进行保存到本地;

获取临时的Token,当然临时的token是有有限时间限制的比如说有3个小时的限制,为了防止频繁的请求临时数据token,这里可以设置使用单例模式在这里或者调用Service后台启动线程,在线程中获取数据token,供别的借口使用;
若请求临时数据token的方法是在单例模式下的话,则每次请求前都要调用该方法访问服务器端数据是否过期;
若过期,返回新的数据token,返回后执行网络请求方法,若临时token不过期,则继续请求网络数据;
若是使用Service,不需要判断token是不是过去,我们只需要在Service里开启线程,判断token是否过期,若是过期则请求新的token,若是不过期,则将token加入到sp中,负责不请求;
基本的逻辑我的理解就是这样的。。。


1 0
原创粉丝点击