openssl学习笔记
对称算法
对称算法使用一个密钥。
https://www.openssl.net.cn/docs/1.html
对称算法主要有四种加密模式:
-
电子密码本模式 Electronic Code Book(ECB)
它将加密的数据分成若干组,每组的大小跟加密密钥长度相同,然后每组都用相同的密钥进行加密。 -
加密块链模式 Cipher Block Chaining(CBC)
首先也是将明文分成固定长度的块,然后将前面一个加密块输出的密文与下一个要加密的明文块进行异或操作,将计算结果再用密钥进行加密得到密文。第一明文块加密的时候,因为前面没有加密的密文,所以需要一个初始化向量。 -
加密反馈模式 Cipher Feedback Mode(CFB)
加密步骤是:
a) 使用64位的初始化向量。初始化向量放在移位寄存器中,在第一步加密,产生相应的64位初始化密文;
b) 初始化向量最左边的8位与明文前8位进行异或运算,产生密文第一部分(假设为c),然后将c传输到接收方;
c) 向量的位(即初始化向量所在的移位寄存器内容)左移8位,使移位寄存器最右边的8位为不可预测的数据,在其中填入c的内容;
d) 第1-3步,直到加密所有的明文单元。
解密过程相反