iOS 基础知识:数据安全及加密


概念理解

对称加密和非对称加密的区别?

对称加密

对称加密又称公开密钥加密,加密和解密都会用到同一个密钥,如果密钥被攻击者获得,此时加密就失去了意义。常见的对称加密算法有DES、3DES、AES、Blowfish、IDEA、RC5、RC6。

非对称加密

非对称加密又称共享密钥加密,使用一对非对称的密钥,一把叫做私有密钥,另一把叫做公有密钥;公钥加密只能用私钥来解密,私钥加密只能用公钥来解密。常见的公钥加密算法有:RSA、ElGamal、背包算法、Rabin(RSA的特例)、迪菲-赫尔曼密钥交换协议中的公钥加密算法、椭圆曲线加密算法)。

简述 SSL 加密的过程用了哪些加密方法,为何这么作?

SSL 加密,在过程中实际使用了 对称加密非对称加密 的结合。主要的考虑是先使用非对称加密进行连接,这样做是为了避免中间人攻击秘钥被劫持,但是非对称加密的效率比较低。所以一旦建立了安全的连接之后,就可以使用轻量的对称加密。

iOS 的签名机制是怎么样的

签名机制

先将应用内容通过摘要算法,得到摘要,再用私钥对摘要进行加密得到密文,将源文本、密文、和私钥对应的公钥一并发布。

验证流程

查看公钥是否是私钥方的,然后用公钥对密文进行解密得到摘要,将 App 用同样的摘要算法得到摘要,两个摘要进行比对,如果相等那么一切正常。