Vigenere密码

Vigenere密码是一种由Blaise de Vigenère在16世纪设计的多表加密算法,因其高安全性在历史上被广泛应用。该密码通过秘钥与明文对应字母进行替换,秘钥重复使用时从头开始映射。加密过程涉及字母编号和ASCII码运算,如N=(M+K)mod(26),其中M、K分别代表明文和秘钥字母的编号。博客详细介绍了Vigenere密码的工作原理和实现方式。
摘要由CSDN通过智能技术生成

一、Vigenere密码

16世纪法国外交家Blaise de Vigenère设计了一种多表密码加密算法——Vigenère密码。Vigenère密码的加密解密算法简单易用,且破译难度比较高,曾在美国南北战争中为南军所广泛使用。
单一字母替换通过字母频率分析很容易被破解,Vigenère使用的方法是,有秘钥和明文,明文字符的替换是根据秘钥对应字母来替代。假设现在有秘钥TIG,明文ABB。那么对ABB进行加密的过程如下。

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
T U V W X Y Z A B C D E F G H I J K L M N O P Q R S

如上表所示,第一行位固定字母表,第二行位秘钥替换后的表。这一步是对A进行加密,查找第一行A对应第二行的 T那么我们就将明文中的A替换为T(A->T)
对第二个字母加密时,对应关系如下表所示:

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
I J K L M N O P Q R S T U V W X Y Z A B C D E F G H

同样查表 将B->J
一次类推,当秘钥比明文短时,将重新从秘钥的第一个字母开始映射,然后再进行加密。
这就是Vigenère密码的实现过程了。将26个字母编号0~25 。明文字母为M,秘钥字母为K,密文字母为N
用过

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

__不想写代码__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值