古典密码
caesar(凯撒)
用字母对应数字的方式加密
a~z 26个字母对应 0~25个数字
映射函数:y=x+k(mod 26) 根据k的取值有不同的加密方式
uVigenere(维吉尼亚)

加密算法:ci=pi+ki(mod 26)
解密算法:pi=ci-ki(mod 26)
其中ci,ki,pi 分别表示第i个 明文、密文和密钥字母编码
例:p=data security, k=best 时 密文是多少
答案:EELTTIUNSMLR
Playfair
利用字母矩阵的方式加密
矩阵构造方法:从左至右、从上至下依次填入关键词的字母 (若关键词中有重复字母,则第二次出现是略过)。如果没填满, 然后再以字母表顺序依次填入其他字母,字母I和J被算为同一个 字符。
加密方式:
(1)若同行,则对应的密文分别是紧靠其右端的字母(解密反向)。
(2)若同列,则对应的密文分别是紧靠其下方的字母(解密反向)。
(3)若不同行、不同列,则对应的密文分别是由明文字母确定的对 角线的其他两角的字母,且按其同行对应(解密方法相同)。
(4)若两字母相同,则在重复字母之间插入一个事先约定好的字母 (如:Q)。再按上述方法执行。
(5)若明文字母数为奇数,则在末尾添加一个约定好的字母(如:Q)
参考博客:https://www.cnblogs.com/huangming-zzz/p/10577490.html
案例分析:
Hill密码
希尔密码(Hill Password)是运用基本矩阵论原理的替换密码,由Lester S. Hill在1929年发明。每个字母当作26进制数字:A=0, B=1, C=2… 一串字母当成n维向量,跟一个n×n的矩阵相乘,再将得出的结果模26。注意用作加密的矩阵(即密匙)在\mathbb_^n必须是可逆的,否则就不可能译码。只有矩阵的行列式和26互质,才是可逆的。
加密公式C=K*P(mod26)
案例分析:
数据安全基于密钥而不是算法的保密
加密算法可以公开 但是密钥 即加密算法中各个变量的取值不一 也能保护密码
按密钥的使用方式分类
对称密码体制
非对称密码体制
加密解密的密钥不相同
