美文网首页
iOS 数据安全 - 不完全笔记

iOS 数据安全 - 不完全笔记

作者: 居然是村长 | 来源:发表于2016-06-06 21:46 被阅读105次

也不是什么专业的数据安全,简单记录下;
也是看了一些关于安全的文章,简单总结的;写的不对了,尽管喷啊!谢谢了;

没有绝对的数据安全,

  • 对于本地数据:不管存在哪里,对于越狱的设备,都是浮云;
  • 对于网络请求:需要对请求参数加密,明文传输过于随意了,尽管使用了https;
  • 对于网络返回数据:一般对请求有校验的话,不怎么需要返回数据加密;

本地数据处理

  • 虽然苹果提供了钥匙串,对于不越狱设备是最安全的方式了吧,但是越狱设备,依旧浮云;
  • 安全第一,依旧需要对本地敏感信息进行加密处理;
  • 修改顺序,一般倒序,分组排序等;
  • 特定位置插入特定内容,速成“加盐”
  • 使用某种密钥加密方式加密;
  • 对于处理类,方法等使用混淆,防止逆向时,过于暴露(说好的编码规范,反而不好了);
  • 对于核心类的代码,使用纯C编写;

网络请求

  • 注册:本地存RSA 公钥,对userName,password 进行加密上传(也可以MD5之后RSA加密上传,服务器存MD5);
  • 登录:本地RSA 公钥,加密上传,成功之后,返回 AES key,用于其他接口的加解密(AES key,可以后台更改,防止篡改之后的修复);
  • 其他接口:使用登录返回的 AES key 加密上传,并且上传 AES key,用于校验;
  • 返回数据:可以不使用AES 加密,因为校验不通过,不返回数据;
    注:RSA 的加解密比较AES,耗性能,所以考虑使用 AES,作为动态 key,加解密;
    注2:java 的AES 与 iOS的 AES,略有不同,暂确解决方案;sorry;

其他

加密方法太多了。。。
DES
Base64

RSA 密钥生成

// 打开 openssl
openssl

// 生成 1024 的RSA 密钥
genrsa -out rsa_private_key.pem 1024

// 显示:pkcs8 形式的,私钥
pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM –nocrypt

// 对应的 公钥
rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

1

相关文章

网友评论

      本文标题:iOS 数据安全 - 不完全笔记

      本文链接:https://www.haomeiwen.com/subject/hfkddttx.html