安全机制
苹果的安全机制有哪些
- 没经过用户同意,你不能随便获取用户信息。
- 所有的程序都在沙盒里运行,B程序不能进入A程序的运行范围。
- 如果跟钱有关,比如说支付宝,这些底层的实现都是保密的,只提供接口供开发者调用,这样的话安全性得到保障。
- 如果要防止代码被反编译,可以将自己的代码中的.m文件封装成静态库(.a文件)或者是framework文件,只提供给其它人.h文件。这样就保证了个人代码的安全性。
- 网络登录的话跟用户名跟密码相关要发送POST请求,如果是GET请求的话密码会直接在URL中显示。然后同时要对帐号密码采用加密技术,加一句:我们公司用的是MD5,但是现在MD5有一个专门的网站来破解,为了防止这个,可以采用加盐技术。
iOS 的签名机制大概是怎样的?
- 假设,我们有一个APP需要发布,为了防止中途篡改APP内容,保证APP的完整性,以及APP是由指定的私钥发的。首先,先将APP内容通过摘要算法,得到摘要,再用私钥对摘要进行加密得到密文,将源文本、密文、和私钥对应的公钥一并发布即可。
- 那么如何验证呢?
验证方首先查看公钥是否是私钥方的,然后用公钥对密文进行解密得到摘要,将APP用同样的摘要算法得到摘要,两个摘要进行比对,如果相等那么一切正常。这个过程只要有一步出问题就视为无效。
客户端安全性处理方式?
1> 网络数据传输(敏感数据[账号\密码\消费数据\银行卡账号], 不能明文发送)
2> 协议的问题(自定义协议, 游戏代练)
3> 本地文件存储(游戏的存档)
4> 源代码(混淆)
如何进行数据加密?
常见的加密算法:MD5 \ SHA \ DES \ 3DES \ RC2和RC4 \ RSA \ IDEA \ DSA \ AES
加密算法的选择:一般公司都会有一套自己的加密方案,按照公司接口文档的规定去加密
MD5的特点:
(1)输入两个不同的明文不会得到相同的输出值
(2)根据输出值,不能得到原始的明文,即其过程不可逆
现在的MD5已不再是绝对安全,对此,可以对MD5稍作改进,以增加解密的难度
加盐(Salt):在明文的固定位置插入随机串,然后再进行MD5
先加密,后乱序:先对明文进行MD5,然后对加密得到的MD5串的字符进行乱序
总之宗旨就是:黑客就算攻破了数据库,也无法解密出正确的明文
文章如有问题,请留言,我将及时更正。
满地打滚卖萌求赞,如果本文帮助到你,轻点下方的红心,给作者君增加更新的动力。
网友评论