密码学

2019-07-03  本文已影响0人  S大偉

原则:
1、不允许在网络上传递明文的用户隐私信息
2、在本地不允许明文的保存用户隐私信息

起初应用于军事领域,然后凯撒大帝,后面密码本加密
a-c,b-e,c-zz 持续到了上世纪50年代

RSA(三个人名)

AF

哈希(散列)函数

MD5
SHA1
SHA256

对称加密算法

DES
3DES
AES(高级密码标准,美国国家安全局使用的) iOS操作系统内部使用的 破解需要几千万年

散列函数特点

用途

破解

MD5的基础安全

1、加“盐”-- 早期解决方案, 足够长/复杂的字符串
缺点:盐是固定的,写死在程序里面的

2、HMAC -- 近几年在国内开始增多
给定一个密钥!对明文进行加密,并且做了“两次散列”。32位字符
密钥一般从服务器获取

服务器
a、账号、密钥、加密后的密码
b、(加密之后的密码+“201701112205”).MD5 时间限制

HMAC客户端登录思路
a、用户输入账号、密码
b、本地查找密钥:如果没有密钥,向服务器获取(账号对应的密钥)

本地:
账号:NSUserDefault
密码:钥匙串访问keyChain

参数:
1、密码明文
2、forService服务:就是APP的唯一标识,一般使用BoundID或加密后的BoundID
3、账号

1、苹果的“原生态圈”,从iOS7.0.3版本,开放给开发者
2、钥匙串加密方式就是AES加密,可以将保存的密码以明文的方式反算给你
3、苹果原生的接口都是C语言,但有三方库,很方便

上一篇下一篇

猜你喜欢

热点阅读