abcde ----> klmno
转置换加密(原始数据的信息不变,是数据顺序打乱变化)
例如:
123456789 ----> 253698174
乘积密码(置换密码和转置换密码的混合使用)
例如:
abcde ----> poklm ----> mlkpo
3、DES(Data Encryption Standard)数据加密标准
每取64bit (8byte)作为加密单元,经过19次的反复置换和转置换加密。秘钥其实是56bit。
后面出现的3重DES,就是DES经过了三次转换。
4、AES(Advanced Encryption Standard)高级加密标准
运用了复杂的数学书法,内部构造还是沉积密码。它的输入是128bit,以128bit为单元加密。秘钥是可选的,可以以128bit长度加密单,也可以以192bit长度加密,也可以用256bit长度加密,比较灵活。
四、安全机制之非对称加密
非对称加密模型
加密秘钥 K 称为公钥(public),解密秘钥 K ’ 称为私钥(private)
加密秘钥可以任何人知道,解密秘钥需要保密(解密者保管)。
数学是科学基础,基础学科研究之物,虚虚实实,先虚后实。
公开秘钥算法的最重要两大数学基础。
1、建立在分解大数的困难度
2、建立在以大素数为模来计算离散对数的困难度。
RSA算法(非对称加密算法)
建立在分解大数的困难度
公钥/私钥长度 至少1024bit
五、安全机制之密钥交换
1、对称加密优缺点:
高效(相对于非对称加密来说,传输速度快)
秘钥交换问题(会话秘钥实时产生且周期性变化)
不如RSA的加密安全程度高,但是当选择256bit的AES,仍然能胜任绝大多数的安全领域。
2、非对称加密优缺点:
安全性足够高
没有秘钥交换的问题
效率低,对于大数据加密很慢(加密算法复杂)
3、其他秘钥交换方式:
Diffie-Hellman 秘钥交换协议
基于以大素数为模计算离散对数的困难度
对方各自选定key,然后以一定算法交换(使得key不以明文传输)后传输给对方
双方利用对方交换来的数据和自己选定的key做交换,获得一个一致的结果,作为会话秘钥
六、安全机制之消息摘要
1、HASH与散列函数的定义与特点
HASH翻译成散列或者哈希
HASH(散列)函数(算法)的定义是:变长的输入变换成定长的输出
常见的HASH算法:MD5(128bit)、SHA1(160bit)
HASH的特点:
易变性:即便原始信息发生1bit的变化,HASH的输出将会有不可预知的巨大变化。
不可逆:通过HASH结果构造出满足的输入信息是不可能的或者及其困难的。
2、消息摘要与数字指纹
人的指纹的特点:双胞胎的指纹不同;通过指纹猜不出它的主人。
与Hash的对应关系:易变性、不可逆
数字指纹由此而来
消息摘要:摘要窥/定全体
名字真多:HASH、哈希、散列、MD、消息摘要、数字指纹
3、HASH的应用场景:放篡改
基于易变性特性
可保完整性
示例:文件下载时的MD5、消息传送时尾部额外传MD
4、HASH的应用场景:防损坏
基于易变性特性
可保完整性
示例:
CRC校验的作用和不足
MD校验消息恶劣环境传输的完整性和未受损坏
应用程序中对于核心文件/数据库读写的鲁棒性保护、防止掉电和Crash
5、HASH的应用场景:认证
基于不可逆向性
可认证对端
示例:
HTTP的Basic和Diges认证(明文传输)
PPP的PAP和CHAP认证(明文传输)
手机登录密码和隐藏MMI的设计
6、HMAC:Hash-based Message Authentication Code
遇到的问题:
直接尾部附带消息摘要的问题(篡改内容的同时篡改摘要)
直接对密码做HASH传输的认证的问题(重放攻击)
HMAC怎么解决的
HMAC就是使用Key对原始消息变换后再近些HASH
七、安全机制之电子签名
1、签名要解决什么问题:
签什么:签的内容的完整性包含
谁在签:签名人的不可否认性
2、公钥密码术的两面性:
3、HASH+公钥密码术:成就电子签名
八、安全机制之证书与PKI
1、证书的作用:公钥的存储和交换
公钥作为一个字段存储于数字证书中
证书的交换和传输即可传输/交换公钥
2、证书的作用:现代信任基石
证书只是存储和交换公钥的吗?那我不可以把公钥直接作为一个文件来存储和交换吗?
另外,我不可以篡改证书吗?我作为第三者,篡改小李发给小王的证书,把里面的公钥改成我的,以此来HACK别人发给小李的信息。
利用签名来保护数字证书本身
人的信任关系:一个信任人的列表
数字时代的信任关系:一个受信任者的证书列表
3、证书链和PKI
人的信任链:孔子 -> 孔子的徒弟 -> 孔子的徒弟的徒弟
数字时代的信任链:证书链
证书签名的不同点:根证书的自签名,非根证书的父签名
证书的限制:约束、用途、有效期
PKI的概念
4、基于证书的认证
基于可信任证书的认证方式可被广泛的应用在现代安全领域,比如:wifi、https
在https中,典型的Client对Server的认证和鉴别基于可信任列表
最后
我一直以来都有整理练习大厂面试题的习惯,有随时跳出舒服圈的准备,也许求职者已经很满意现在的工作,薪酬,觉得习惯而且安逸。
不过如果公司突然倒闭,或者部门被裁减,还能找到这样或者更好的工作吗?
我建议各位,多刷刷面试题,知道最新的技术,每三个月可以去面试一两家公司,因为你已经有不错的工作了,所以可以带着轻松的心态去面试,同时也可以增加面试的经验。
我可以将最近整理的一线互联网公司面试真题+解析分享给大家,大概花了三个月的时间整理2246页,帮助大家学习进步。
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!以下是部分内容截图:
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可获取!
如果公司突然倒闭,或者部门被裁减,还能找到这样或者更好的工作吗?
我建议各位,多刷刷面试题,知道最新的技术,每三个月可以去面试一两家公司,因为你已经有不错的工作了,所以可以带着轻松的心态去面试,同时也可以增加面试的经验。
我可以将最近整理的一线互联网公司面试真题+解析分享给大家,大概花了三个月的时间整理2246页,帮助大家学习进步。
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!以下是部分内容截图:
[外链图片转存中…(img-bFroThzC-1715254390196)]
[外链图片转存中…(img-ZSDDLLOL-1715254390196)]
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可获取!