网络安全实践
密码学概述
- 摩斯电码
- Base64
- 栅栏密码
- 培根密码
- 凯撒密码
- 通信中的参与者
- 发送者(Alice,爱丽丝):在双方交互中合法的信息发送实体。
- 接受者(Bob,鲍勃):在双方交互中合法的信息接受实体。
- 分析者(Eve,伊夫):破坏接受和发送双方正常安全通信的其他实体。
- 常见攻击形式:
- 穷举攻击法
- 穷举攻击,亦称“暴力破解”。对密码进行逐个推算,直到找出真正的密码为止的一种攻击方式。
- 应用
- 频度分析
- 通过对各个字母、字母组合进行频度分析,利用统计信息推断和预测密码
- 常见编码
- Unicode \u+4位16进制数
- ASCII
- Base64 将任意二进制数据映射为ASCII
- Base32
- 摩斯电码
- 栅栏密码
- 将明文交替分入N组,然后将每组的字母从左到右连接起来
- CTFisfun => CFsu Tifn => CFsuTifn
- 古典密码学
- 古典密码体制的核心思想:
- 古典密码学的代表密码体制:
- 频度分析
- E的概率大约为0.12
- T, A, O, I, N, S, H, R的概率为0.06-0.09
- D, L的概率大约为0.04
- C, U, M, W, F, G, Y, P, B的概率为0.015-0.023
- V, K, J, X, Q, Z的概率小于0.01
- 常见的两字母组合
- TH, HE, IN, ER, AN, RE, DE, ON, ES, ST, EN, AT, TO, NT, HA, ND, OU, EA, NG, AS, OR, TI, IS, ET, IT, AR, TE, SE, HI, OF
- 常见的三字母组合
- THE, ING, AND, HER, ERE, ENT, THA, NTH, WAS, ETH, FOR, DTH
- 现代密码
- 数据的安全基于密钥,算法公开
- Hash函数(散列函数)
- 优点:
- 散列函数对于源数据的更改具有极高的敏感性——雪崩效应,即使是1bit的更改都会对最终的散列值造成很大的改变。
- 散列函数逆向计算的难度远大于正向计算的难度,具有较高的安全性。
- 缺点:
- Hash函数实质是一种压缩映射(多对一映射),散列值的空间(密文空间)远小于输入的空间(明文空间),不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。(单向算法)
- MD算法(MD5)
- AES算法
- 对称加密,加密和解密使用同一个密钥
- 对称加密的优点
- 加密计算量小、速度快,适合对大量数据进行加密的场景。
- 对称加密的两种常见的应用场景
- 流密码(stream cipher):
- 加密和解密双方使用相同伪随机加密数据流作为密钥,明文数据每次与密钥数据流顺次对应加密,得到密文数据流,主要应用在对链路的实时加密中
- 分组密码(block cipher):
- 将明文数字序列,划分成长度为n的组,每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列,主要应用在网络包交换加密过程中。
- 对称加密的两大不足
- 密钥传输问题:
- 加密者如何把密钥安全的传递给解密者,就成了对称加密面临的关键问题
- 实际中一般都是客户端向服务端请求对称加密的密钥,而且密钥还得用非对称加密加密后再传输。
- 密钥管理问题:
- 随着密钥数量的增多,密钥的管理问题会逐渐显现出来。
- 不可能所有用户都用同一个密钥加密解密,一旦密钥泄漏,就相当于泄露了所有用户的信息。
- 为每一个用户单独的生成一个密钥管理代价会非常大。
- RSA算法(非对称加密)
- 密文=明文^E mod N
- 明文=密文^D mod N
- 具体百度
- 安全性
- RSA的安全性就是源自没办法轻易的对大整数“因式分解”
- 实际应用中,RSA密钥一般是1024位(安全),重要场合则为2048位(极其安全)。
信息隐写,密码爆破
http
« 上一篇:
电分笔记
» 下一篇:
数据结构笔记
posted @
2023-03-07 14:44
bingcm
阅读(
118)
评论()
编辑
收藏
举报
点击右上角即可分享
✽
✽
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】