- 密码学教程
- 密码学 - 首页
- 密码学 - 起源
- 密码学 - 历史
- 密码学 - 原理
- 密码学 - 应用
- 密码学 - 优点与缺点
- 密码学 - 现代密码学
- 密码学 - 传统密码
- 密码学 - 加密的需求
- 密码学 - 双重强度加密
- 密码系统
- 密码系统
- 密码系统 - 组成部分
- 密码系统攻击
- 密码系统 - 彩虹表攻击
- 密码系统 - 字典攻击
- 密码系统 - 暴力破解攻击
- 密码系统 - 密码分析技术
- 密码学类型
- 密码系统 - 类型
- 公钥加密
- 现代对称密钥加密
- 密码学哈希函数
- 密钥管理
- 密码系统 - 密钥生成
- 密码系统 - 密钥存储
- 密码系统 - 密钥分发
- 密码系统 - 密钥撤销
- 分组密码
- 密码系统 - 流密码
- 密码学 - 分组密码
- 密码学 - Feistel分组密码
- 分组密码的工作模式
- 分组密码的工作模式
- 电子密码本 (ECB) 模式
- 密码分组链接 (CBC) 模式
- 密码反馈 (CFB) 模式
- 输出反馈 (OFB) 模式
- 计数器 (CTR) 模式
- 古典密码
- 密码学 - 反向密码
- 密码学 - 凯撒密码
- 密码学 - ROT13算法
- 密码学 - 置换密码
- 密码学 - 加密置换密码
- 密码学 - 解密置换密码
- 密码学 - 乘法密码
- 密码学 - 仿射密码
- 密码学 - 简单替换密码
- 密码学 - 简单替换密码的加密
- 密码学 - 简单替换密码的解密
- 密码学 - 维吉尼亚密码
- 密码学 - 维吉尼亚密码的实现
- 现代密码
- Base64编码与解码
- 密码学 - XOR加密
- 替换技术
- 密码学 - 单表代换密码
- 密码学 - 单表代换密码的破解
- 密码学 - 多表代换密码
- 密码学 - Playfair密码
- 密码学 - Hill密码
- 多表代换密码
- 密码学 - 一次性密码本
- 一次性密码本的实现
- 密码学 - 置换技术
- 密码学 - 栅栏密码
- 密码学 - 列置换密码
- 密码学 - 密码隐写术
- 对称算法
- 密码学 - 数据加密
- 密码学 - 加密算法
- 密码学 - 数据加密标准 (DES)
- 密码学 - 三重DES
- 密码学 - 双重DES
- 高级加密标准 (AES)
- 密码学 - AES结构
- 密码学 - AES变换函数
- 密码学 - 字节替换变换
- 密码学 - 行移位变换
- 密码学 - 列混淆变换
- 密码学 - 轮密钥加变换
- 密码学 - AES密钥扩展算法
- 密码学 - Blowfish算法
- 密码学 - SHA算法
- 密码学 - RC4算法
- 密码学 - Camellia加密算法
- 密码学 - ChaCha20加密算法
- 密码学 - CAST5加密算法
- 密码学 - SEED加密算法
- 密码学 - SM4加密算法
- IDEA - 国际数据加密算法
- 公钥(非对称)密码算法
- 密码学 - RSA算法
- 密码学 - RSA加密
- 密码学 - RSA解密
- 密码学 - 创建RSA密钥
- 密码学 - 破解RSA密码
- 密码学 - ECDSA算法
- 密码学 - DSA算法
- 密码学 - Diffie-Hellman算法
- 密码学中的数据完整性
- 密码学中的数据完整性
- 消息认证
- 密码学数字签名
- 公钥基础设施 (PKI)
- 哈希算法
- MD5 (消息摘要算法5)
- SHA-1 (安全哈希算法1)
- SHA-256 (安全哈希算法256位)
- SHA-512 (安全哈希算法512位)
- SHA-3 (安全哈希算法3)
- 密码哈希
- Bcrypt哈希模块
- 现代密码学
- 量子密码学
- 后量子密码学
- 密码协议
- 密码学 - SSL/TLS协议
- 密码学 - SSH协议
- 密码学 - IPsec协议
- 密码学 - PGP协议
- 图像与文件加密
- 密码学 - 图像
- 密码学 - 文件
- 密码隐写术 - 图像
- 文件加密和解密
- 密码学 - 文件加密
- 密码学 - 文件解密
- 物联网中的密码学
- 物联网安全挑战、威胁和攻击
- 物联网安全的密码技术
- 物联网设备的通信协议
- 常用密码技术
- 自定义构建密码算法(混合密码学)
- 云密码学
- 量子密码学
- 密码学中的图像隐写术
- DNA密码学
- 密码学中的一次性密码 (OTP) 算法
- 区别
- 密码学 - MD5 vs SHA1
- 密码学 - RSA vs DSA
- 密码学 - RSA vs Diffie-Hellman
- 密码学 vs 密码学
- 密码学 - 密码学 vs 密码分析
- 密码学 - 古典密码学 vs 量子密码学
- 密码学 vs 密码隐写术
- 密码学 vs 加密
- 密码学 vs 网络安全
- 密码学 - 流密码 vs 分组密码
- 密码学 - AES vs DES密码
- 密码学 - 对称 vs 非对称
- 密码学有用资源
- 密码学 - 快速指南
- 密码学 - 讨论
密码学 - 维吉尼亚密码
维吉尼亚密码是一种用于文本加密和解密的算法。维吉尼亚密码是一种使用多个链接的凯撒密码来加密字母文本的算法。它基于关键字的字母表。该密码是多表代换的一种表现形式。这种算法易于理解和使用。
历史和发展
1553年,Giovan Battista Bellaso首次撰写了关于维吉尼亚密码(一种多表代换密码)的文章。然而,在19世纪,该密码被错误地归功于Blaise de Vigenere;因此,维吉尼亚密码变得广为人知。Blaise de Vigenere发明的自动密钥密码是一种与维吉尼亚密码相似的不同密码。
它的法语名称是“le chiffre indechiffrable”,翻译过来是“不可破译的密码”。它保持完整了三个世纪,直到Friedrich Kasiski在1863年发表了一种通用的破译技术。
Al-Qalqashandi在14世纪和15世纪首次撰写了关于多表代换密码的文章。尽管如此,Lean Battista Alberti的Alberti密码是第一个被恰当描述的多表代换密码。第一个多表代换或Alberti密码是为了以一种可以隐藏字母频率分布的方式加密消息而开发的。这一创新彻底改变了密码学领域。由于当时破译密码的唯一已知方法是频率分析,因此它有效地阻止了任何人破译该系统。
最著名的多表代换密码是维吉尼亚密码,尽管它存在了很长一段时间,但已经被破解。维吉尼亚密码仍然适用于不太重要的用途,尽管如今它没有用于任何严肃的密码学环境。
维吉尼亚密码的方法
基本上有两种不同的方法可以执行维吉尼亚密码。让我们在下面的部分中一一查看这些方法:
方法1
在这种方法中,一旦给出维吉尼亚表(26 X 26矩阵),则使用它进行加密和解密。
示例:明文是“TUTORIALSPOINT”,密钥是“KEY”。
只要明文的长度小于新密钥,就会以循环的方式重复使用给定的密钥来生成新密钥。
加密过程
明文和密钥的初始字母连接起来。维吉尼亚表中“D”的字母与明文列“T”和密钥行“K”相交,使“C”成为密文的第一个字母。
以类似的方式,密钥和明文的第二个字母合并。密文的第二个字母是“Y”,因为维吉尼亚表中“Y”的字母与明文列“U”和密钥行“E”相交。
此过程持续进行,直到提取明文。
密文 = DYRYVGKPQZSGXX
解密
维吉尼亚表中的密钥行用于解密。首先选择包含密钥字母的行,然后确定密文字母在该行中的位置。最后,选择匹配密文的列标签作为明文。
例如,如果密钥是“K”,密文是“D”,则第一个明文字母是“T”,此密文字母出现在“T”列。
下一个字母在密钥行中是“E”,在密文中是“Y”,此密文字母出现在“U”列,表明“U”是第二个明文字母。
此过程一直持续到密文完成。
明文 = TUTORIALSPOINT
方法2
如果维吉尼亚表不可用,则使用维吉尼亚代数公式进行加密和解密过程,该公式将字母(A-Z)转换为数字(0-25)。
加密公式
Ea = (Pa + Ka) mod 26
解密公式
Da = (Ea - Ka) mod 26
在这种情况下,如果 (Da) 值变为负数 (-ve),我们将向负数添加 26。
其中,
E 代表加密。
D 代表解密。
P 代表明文。
K 代表密钥。
请注意,如下表所示,“a”代表第 a 个字母的偏移量。
例如,明文是“TUTORIALSPOINT”,密钥是“KEY”。
加密:Ea = (Pa + Ka) mod 26
解密:Da = (Ea - Ka) mod 26
在这种情况下,如果 (Da) 值变为负数 (-ve),我们将向负数添加 26。例如,密文的第三个字母;
密码分析
与所有多表代换密码一样,维吉尼亚密码的基本原理是掩盖明文中的字母频率,以阻止简单的频率分析。例如,如果P是英文明文密文中出现频率最高的字母,则可以猜测P对应于e,因为e是英语中最常用的字母。然而,维吉尼亚密码能够克服基本的频率分析,它可以在传输的不同位置将e加密成不同的密文字母。
维吉尼亚密码密钥的重复性是其主要缺点。如果密码分析员能够准确确定密钥的长度,则密文可以被解释为n个交错的凯撒密码,每个凯撒密码都可以很容易地被破解。密钥长度可以通过暴力破解每个n的值来找到。或者,可以使用弗里德曼检验和卡西斯基检验来估计密钥长度。
维吉尼亚密码的优点
该密码掩盖了明文中的字母频率。
与大多数之前的多表代换密码一样,该密码的基本目标是掩盖字母频率,使得频率分析技术受到相当大的限制。
在没有方法知识的情况下,基本上无法破解。
如果不熟悉弗里德曼检验或卡西斯基检验,则除了暴力破解技术之外,要找到密钥相当困难。
真正地安全无虞长达三个世纪。
密钥空间广阔
密钥长度用k表示,密钥空间为26k。
维吉尼亚密码的缺点
导致其他缺陷的主要缺陷是密钥的重复性。
由于密钥的重复性,估计密钥长度要容易得多。
与暴力破解方法相比,使用弗里德曼检验和卡西斯基检验可以更快地发现密钥长度。
可以使用运行密钥密码,这本质上是一种维吉尼亚密码,但其密钥长度比消息长——通常是书中的一段文字或类似的东西——或者可以使用一次性密码本。