总字符数: 2.10K
代码: 无, 文本: 1.02K
预计阅读时间: 4 分钟
密码学
一种隐藏信息的科学,最常用的方式就是对用于发送消息的秘密代码进行编码和解码
- 基于数学和计算机科学
- 保护传输中和静止中的数据
加密和解密
加密:数据从明文形式转化为编码或密文形式的一种安全技术、以便只有拥有必要解密信息的授权方才能解码并读取数据
明文:在传输数据之间打算进行加密的未加密数据,或指被加密数据的加密结果
密文:经过编码,不可阅读的数据
解密:将密文转化回明文的密码技术
明文:未打算进行加密的未加密可读取数据
- 只有拥有解密信息的授权方才能读取被加密文件
- 单向加密表示不能进行解密
- 双向加密表示可以进行解密
加密和安全目标
- 机密性
- 完整性
- 不可否认性
- 认证
- 访问控制
编码
编码:一种用于加密或解密数据的算法
译成密码:将明文转换成密文的过程
破译密码:将密文转换成明文的过程
- 编码:通过修改每个字母或字节来打乱消息
- 代码:修改词或词组,或仿照一种秘密语言
- 破解代码和编码的学科叫做密码分析
密钥
与算法一起使用来执行加解密的特定信息段
- 不同的密钥产生不同的密文
- 对每种算法来说,较长的密钥提供了较强的加密
- 静态密钥和暂时密钥
对称加密
一种双向加密,其中加解密都使用相同的密钥(共享密钥加密)
- 硬件密钥和软件密钥
- 在加密通讯开始之前,密钥必须进行安全的共享
- 快速,但如果密钥丢失或被破解,就会变得不堪一击
常见的替换名称
- 保密密钥
- 共享密钥
- 私钥
非对称加密
- 非对称加密:使用成对的公钥和私钥的一种双向加密机制
- 私钥:非对称加密的组成部分,在双向加密的过程中由一方保密
- 公钥:非对称加密的组成部分,可被任何人访问
- 密钥生成:使用特定应用程序产生一个公钥和私钥对的过程
散列
散列算法:将明文转换为无法直接解密的密文的过程或函数
散列,散列值、消息摘要:从散列加密中产生的值
- 在几种密码认证机制中使用
- 在数字签名中使用
- 用于验证文件完整性
信息隐藏
一种可选的加密技巧,通过将秘密消息封装入一条普通信息中进行隐藏
- 隐藏内容及其存在性
- 信息被嵌入到文本或图像中