收起
密码
一个密码当它能经得起已知明文攻击时才是安全的
选择明文攻击可得到任何明文的密文
Kerberos进行密钥分配时使用AES、DES等对称密钥加密,用户先向认证服务器AS申请原始票据,然后从票据授予服务器TGS获取会话密钥,使用一次性密钥和时间戳,来阻止重放攻击。
密码体制由以下五个部分构成 明文空间M 密文空间C 加密算法E 解密算法D 密钥空间K,非对称密码通常包括基于因子分解、基于离散对数、基于椭圆离散对数
秘钥管理遵循的原则有:全程安全原则、最小权利原则、责任分离原则、密钥分级原则、密钥设定与更换原则
对称算法分为俩类:
(1)分组算法(分组密码),常见分组密码算法:DES、IDEA、AES,
(2)序列算法(序列密码、流密码),公开的序列密码算法主要有RC4、SEAL等
公钥密码体制主要有RSA、DSA、ECC
DES分组长度为64bit,使用56bit对64bit的明文串进行16轮加密,得到64比特的密文串,子秘钥长度为48位
中国人民银行的智能卡规范支持3DES,其中3DES有俩种加密方法:
(1)第一三次加密使用同一密钥,这种密钥长度为128位(112位有效)
(2)三次加密使用不同密钥,这种方式密钥长度192位(168位有效)
SHA所产生的摘要长度为160位,信息摘要算法MD5的摘要长度为128位
RSA算法选取的模至少有1024位,椭圆曲线密码,选取的参数p的规模不少于160位
WEP采用RC4算法,使用40位(出口)或64位密钥,有些厂商将密钥位数扩展到128位(WEP2),标准64位标准流使用的密钥和初始向量长度分别为40位和24位
ECC规定用户的私钥d为一个随机数,取值范围为0~n-1。公钥Q通过dG进行计算。ECC签名后的内容中包括原文,而RSA不包括
S盒变换是一种(字节代换)压缩替换,通过S盒将48位输入变为32位输出,共有8个S盒,并行作用。每个S盒有6个输入、4个输出,是非线性压缩变换
ECB模式:又称电子密码本模式:Electronic codebook,是最简单的块密码加密模式,加密前根据加密块大小(如AES为128位)分成若干块,之后将每块使用相同的密钥单独加密,解密同理。
在这里插入图片描述
在这里插入图片描述
CBC模式:密码分组链接(CBC,Cipher-block chaining)模式,由IBM于1976年发明,每个明文块先与前一个密文块进行异或后,再进行加密。在这种方法中,每个密文块都依赖于它前面的所有明文块。同时,为了保证每条消息的唯一性,在第一个块中需要使用初始化向量IV,缺点是加密会引发错误传播无界,解密引发错误传播有界,CBC不利于并行运算
在这里插入图片描述
在这里插入图片描述
CFB模式:密文反馈(CFB,Cipher feedback)模式与ECB和CBC模式只能够加密块数据不同,可以将块密码变为自同步的流密码;CFB的解密过程几乎就是颠倒的CBC的加密过程。
在这里插入图片描述
在这里插入图片描述
OFB模式(输出反馈:Output feedback):OFB是先用块加密器生成密钥流(Keystream),然后再将密钥流与明文流异或得到密文流,解密是先用块加密器生成密钥流,再将密钥流与密文流异或得到明文,由于异或操作的对称性所以加密和解密的流程是完全一样的。
在这里插入图片描述
在这里插入图片描述
PCBC模式(PCBC,Propagating cipher-block chaining)
或称为明文密码块链接(Plaintext cipher-block chaining)是一种可以使密文中的微小更改在解密时导致明文大部分错误的模式,并在加密的时候也具有同样的特性。缺点:加解密错误传播无界性,不合适磁盘文件加密2.要求数据长度是密码分组长度的整数倍,否则最后一个块需要特殊处理