?密码学是主要有密码编码(密码编码学研究信息的变换处理以实现信息的安全保护)和密码分析(密码分析学研究通过密文获取对应明文信息)两部分组成。
????? 密码分析攻击类型分为五种:
唯密文攻击:密码分析者只拥有一个或多个用同一秘钥加密的密文,没有其他可利用信息;
已知明文攻击:密码分析者紧知道当前密钥下的一些明文及对应的密文;
选择明文攻击;密码分析者能够得到当前密钥下自己选定的明文所对应的密文;
选择密文攻击:处理挑战密文外,密码分析者能够得到任何选定的密文所对应的明文;
验证密文攻击:密码分析者对于任何选定的密文,能得到该密文是否“合法”的判断。
- 私钥密码体制:加密解密使用相同的密钥,又称对称密码体制,典型私钥算法有:DES、IDEA、AES
- 缺点:密钥分配问题、密钥管理问题及无法认证来源;
- 优点;算法处理速度快,常用于数据加密。
- 公钥密码体制:加密和解密使用不同的密钥,又称非对称密码体制,被证明安全有效的有:RSA体制、ELGamal体制以及椭圆曲线密码体制
- 优点:密钥分发方便
- 密钥保管量少
- 支持数字签名
- 混合密码体制:利用公钥密码体制分配私钥密码体制的密钥,消息的收发双方共用这个密钥,然后按照私钥密码体制的方式,进行加密解密的运算。
- 第一步,消息发送者A用对称密钥对要发送的信息加密;
- 第二部,A使用B的公开密钥将对称密钥加密,形成数字信封;然后把加密信息和数字信封一起发给B;
- B使用自己的私钥对数字信封解密得到对称密钥,
- 再使用对称密钥将加密信息解密。
- DES:是一个分组加密算法,能支持64比特的明文块加密,其密钥长度唯56比特。TDEA算法的工作机制是使用DES对明文进行“加密 —>解密—>加密”操作。
- IEDA:分组加密算法,其明文密文分组都是64比特,密钥长度128比特,同一算法可用于加密又可用于解密。
- AES
- RSA:非对称算法,公钥私钥都可以用来加密信息,用于加密信息的密钥和解密信息的密钥相反,RSA算法提供了一种保护网络通信和数据存储的机密性、完整性、真实性和不可否认性的方法,目前SSH、OpenPGP、S/MIME和SSL/TLS都依赖于RSA进行加密和数字签名功能。
- 第一步生成两个大素数p、q。
- 计算乘积n=p*q
- 计算?(n)=(p-1)(q-1)
- 取一个随机数e满足1<n< ?(n),且e与?(n)互素
- 计算d= e^{-1}? mod?(n),即:de mod?(n)=1
明文M、密文C,则:M=C^{-d} mod n、C=M^{-1}? mod n
- 国产密码算法
算法名称 | 特征描述 | 备注 | SM1 | 对称加密,分组长度和密钥长度都是128比特 | | SM2 | 非对称加密,用于公钥加密算法、密钥交换协议、数字签名算法 | 国家标准推荐使用素数域256位椭圆曲线 | SM3 | 杂凑算法,杂凑值长度256比特 | | Sm4 | 对称加密,分组长度和密钥长度都是128比特 | | SM9 | 标识密码算法 | |
- ?Hash算法:杂凑函数简称Hash函数,常见的有MD5(以512位数据块为单位来处理,输出128位信息摘要)、SHA(SHA-1同样以512位数据块为单位,输出160位信息摘要,安全性比MD5高)和SM3(消息分组长度512比特,输出杂凑值长度256比特),能将任意长度的信息转换成固定长度的哈希值,h表示Hash函数,则
- h的输入可以是任意长度的信息或文件
- h的输出长度是固定的
- 给定h和M,计算h(M)是容易的
- 不同信息M1、M2,使得h(M1)=h(M2)是计算上不可行的
- 数字签名:是指签名者使用私钥对待签名数据的杂凑值做密码运算得到的结果,用于确认待签名数据的完整性、签名者身份的真实性和签名行为的抗抵赖性。典型的数字签名方案有RSA 签名体制、Rabin签名体制、ElGamal 签名体制和DSS (Data Signature Standard) 标准。
- 特点:是可信的、不可伪造的、不可重用的、不可抵赖的以及不可修改的。
- 数字签名的三个条件:非否认、真实性、可鉴别性
- 签名步骤:
第一步,Alice 使用 Hash 函数将电子合同文件生成一个个消息摘要;
第二步,Alice 使用自己的私钥,把消息摘要加密处理,形成一个数字签名;
第三步,Alice 把电子合同文件和数字签名一同发送给 Bob。
- 验证步骤:
第一步,Bob 使用与 Alice 相同的Hash 算法,计算所收到的电子合同文件的消息摘要;
第二步,Bob 使用 Alice 的公钥,解密来自 Alice 的加密消息摘要,恢复 Alice 原来的消息摘要;
第三步,Bob 比较自己产生的消息摘要和恢复出来的消息摘要之间的异同。若两个消息摘要相同,则表明电子合同文件来自 Alice。 如果两个消息摘要的比较结果不一致,则表明电子合同文件已被篡改。
- 密码管理:分为三个方面的内容:密钥管理、密码管理政策、密码测评
- 密钥管理:密钥生成、存储、分发、使用、更新、撤销、备份、恢复、销毁、审计
- 数字证书:也称公钥证书,由证书认证机构CA签名的包含公开密钥拥有者信息、公开密钥、签发者信息、有效期以及一些扩展信息的一种数据结构,CA提供数字证书的申请、签发、查询、发布以及证书吊销等全生命周期的管理服务。
- 签名证书:用于证明签名公钥的数字证书;、
- 加密证书:用于证明加密公钥的数字证书
- SSH:基于公钥的安全应用协议,由SSH 传输层协议、SSH 用户认证协议和SSH 连接协议三个子协议组成。
- SSH 传输层协议提供算法协商和密钥交换,并实现服务器的认证,最终形成一个加密的安全连接,该安全连接提供完整性、保密性和压缩选项服务。
- SSH 用户认证协议则利用传输层的服务来建立连接,使用传统的口令认证、公钥认证、主机认证等多种机制认证用户。
- SSH 连接协议在前面两个协议的基础上,利用已建立的认证连接,并将其分解为多种不同的并发逻辑通道,支持注册会话隧道和TCP 转发(TCP-forwarding) ,而且能为这些通道提供流控服务以及通道参数协商机制。
- ?密码技术常见应用场景类型
- 网络用户安全
- 物理和环境安全
- 网络和通信安全
- 设备和计算安全
- 应用和数据安全
- 业务应用创新
|