本文共 2806 字,大约阅读时间需要 9 分钟。
数据加密和解密:
安全实现的目标: 机密性:,保证数据信息不泄露; 完整性:integrety,保证信息不被篡改; 可用性:availability,保证数据信息的内在价值;威胁安全的行为: 威胁机密性的***行为:窃听,网络嗅探,通信量分析; 威胁完整性的***行为:篡改,伪装,重放,否认; 威胁可用性的***行为:拒绝服务(DoS),分布式拒绝服务;(DDoS)安全解决方案: 技术: 加密和解密: 传统的加密方法: 置换加密 替代加密 现代加密方法: 块加密方法 服务: 用于抵御***而提供的为了实现上述安全目标而特别设计的安全服务; 身份认证; 访问控制;
加密方案:
因素:加密算法和协议:加密密钥:加密算法和协议: 对称加密算法:加密和解密使用同一密钥 主流的加密算法: DES:Data Enctryption Standard,数据加密标准; 64bits块,加密密钥长度56bits; 3DES:经过NSA(美国国家信息安全局)重新编译升级; AES:Advanced Encryption Standard,高级加密标准 加密密钥长度:128bits,192bits,256bits Blowfish Twofish IDEA RC4, RC6 CAST5 特性: 1.每对通信主机都需要保有一个唯一的通信密钥,用于加密和揭秘数据; 2.将原始的数据分割成固定大小的块,逐个加密; 3.加密和解密速度非常快; 缺陷: 1.在一台主机上需要保有的密钥数量会比较多; 2.密钥的分发非常困难; 公钥加密算法(非对称加密算法):密钥是由私钥和公钥组成;公钥是在私钥中抽取生成的; 私钥:512bits,1024bits,2048bits,4096bits,8192bits,16384bits; 私钥:通过特定的工具随机创建生成,有使用者自己存留,务必保证其私密性;也被称为 secret key 或 private key ; 公钥:通过特定的工具从私钥中抽取生成,仅仅是私钥的一部分;公开给所有人使用;被称为 public key ; 主流的公钥加密算法: RSA:加密,数字签名; DSA:Digital Signature Algorithm,数字签名算法;有时此算法也被称为DSS,Digital Signature Standard; Elgamal:商业版(收费) 特性: 1.是用密钥进行加密和解密的时候,私钥加密的数据只能由与之对应的公钥才能解密,使用公钥加密的数据只能有与其对应的私钥才能解密; 2.私钥的长度比较长,加密后的数据安全等级较高; 缺陷: 1.加密数据的时候,所消耗的系统资源较多,速度很慢,因此极少用来加密大量数据; 公钥加密算法的用途: 1.密钥交换:发送方使用接收方的公钥加密对称算法的密钥,将加密后的密钥,发送给接收方。接收方使用自己的密钥解密数据; 2.数字签名:确保数据传输过程中发送方的身份的正确性;发送方使用自己的私钥进行加密,接收方使用发送方的公钥进行解密,进行身份确认; 单向加密算法(Hash加密算法,数据指纹算法 ,不可逆):只能加密不能解密,又称为数据指纹提取;数据指纹即数据的特征码; 主流的单项加密算法: md5:Message Digest version5,信息摘要算法; 128bits定长输出; sha系列:Security Hash Algorithm,安全的哈希算法; sha-1:160bits定长输出 sha224:224bits定长输出 sha256:256bits定长输出 sha284:284bits定长输出 sha512:512bits定长输出 特性: 1.定长输出 2.雪崩效应:加密后的数据稍有改动,则解密后输出结果将发生翻天覆地的变化; 认证协议: 密钥交换算法: 1.公钥加密 2.DH算法:Diffie-Hellman 用于在通信双方生成一对用于公钥加密算法的密钥对; A:p, g B:p, g A:x B:y A:p^x%g --> B:(p^x%g)^y == p^xy%g B:p^y%g --> A:(p^y%g)^x == p^xy%g加密算法的应用方式: 1.通信双方要互相交换各自的证书,并到信任的CA进行证书有效性认证; 2.如果证书认证有效,发送方使用某种协商好的对称加密算法进行数据加密;对加密后的数据进行特征值抽取,用自己的私钥加密抽取出的特征值;以证明数据来源可靠性;发送方利用接收方公钥加密对称加密算法的密钥; 3.接收方接受报文之后,先用自己的私钥解密对称加密算法的密钥;然后用发送方的公钥去解密被加密的特征值,证明数据来源的可靠性,再利用相同的单项加密算法计算数据的特征值,将两次特征值进行比较;以证明数据的完整性;再用对称密钥解密加密的数据即可;
转载于:https://blog.51cto.com/holmes975/2094989