Python实现的维尼吉亚密码算法示例


Posted in Python onApril 12, 2018

本文实例讲述了Python实现的维尼吉亚密码算法。分享给大家供大家参考,具体如下:

一 代码

# -*- coding:utf-8 -*-
#key='relations'
#plaintext='tomorrowiwillhaveagood'
print("三水点靠木测试结果:")
key='helloworld'
plaintext=raw_input('请输入明文:')
ascii='abcdefghijklmnopqrstuvwxyz'
keylen=len(key)
ptlen=len(plaintext)
ciphertext =''
i =0
while i < ptlen:
 j = i % keylen
 k = ascii.index(key[j])
 m = ascii.index(plaintext[i])
 ciphertext += ascii[(m+k)%26]
 i +=1
print(ciphertext)
#维吉尼亚加密算法 解密
key='helloworld'
ciphertext=raw_input('请输入密文:')
ascii='abcdefghijklmnopqrstuvwxyz'
keylen=len(key)
ctlen=len(ciphertext)
plaintext =''
i =0
while i < ctlen:
 j = i % keylen
 k = ascii.index(key[j])
 m = ascii.index(ciphertext[i])
 if m < k:
  m +=26
 plaintext += ascii[m-k]
 i +=1
print(plaintext)

二 运行结果:

Python实现的维尼吉亚密码算法示例

Python 相关文章推荐
python基础教程之简单入门说明(变量和控制语言使用方法)
Mar 25 Python
在Python中操作文件之seek()方法的使用教程
May 24 Python
python使用paramiko实现远程拷贝文件的方法
Apr 18 Python
Python如何为图片添加水印
Nov 25 Python
深入解答关于Python的11道基本面试题
Apr 01 Python
Python实现的远程登录windows系统功能示例
Jun 21 Python
[原创]Python入门教程2. 字符串基本操作【运算、格式化输出、常用函数】
Oct 29 Python
python 列表递归求和、计数、求最大元素的实例
Nov 28 Python
python 图像平移和旋转的实例
Jan 10 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
May 13 Python
如何使用python自带IDLE的几种方法
Oct 10 Python
Python 带星号(* 或 **)的函数参数详解
Feb 23 Python
python pandas dataframe 按列或者按行合并的方法
Apr 12 #Python
python监控进程脚本
Apr 12 #Python
使用Eclipse如何开发python脚本
Apr 11 #Python
一份python入门应该看的学习资料
Apr 11 #Python
Python实现时钟显示效果思路详解
Apr 11 #Python
pandas数据分组和聚合操作方法
Apr 11 #Python
使用pandas对矢量化数据进行替换处理的方法
Apr 11 #Python
You might like
php预定义常量
2006/12/25 PHP
CodeIgniter采用config控制的多语言实现根据浏览器语言自动转换功能
2014/07/18 PHP
PHP实现微信退款的方法示例
2019/03/26 PHP
nodejs中exports与module.exports的区别详细介绍
2013/01/14 NodeJs
jquery 选取方法都有哪些
2014/05/18 Javascript
jQuery中clone()方法用法实例
2015/01/16 Javascript
JS实现让网页背景图片斜向移动的方法
2015/02/25 Javascript
js判断浏览器是否支持严格模式的方法
2016/10/04 Javascript
深入浅析javascript继承体系
2017/10/23 Javascript
微信小程序实现多选框全选与取消全选功能示例
2019/05/14 Javascript
[01:47]2018年度DOTA2最佳教练-完美盛典
2018/12/16 DOTA
python使用rabbitmq实现网络爬虫示例
2014/02/20 Python
Python实现向QQ群成员自动发邮件的方法
2014/11/19 Python
Python中模拟enum枚举类型的5种方法分享
2014/11/22 Python
python动态性强类型用法实例
2015/05/09 Python
利用Python的Django框架生成PDF文件的教程
2015/07/22 Python
Python 含参构造函数实例详解
2017/05/25 Python
Python3 操作符重载方法示例
2017/11/23 Python
python如何实现内容写在图片上
2018/03/23 Python
python函数式编程学习之yield表达式形式详解
2018/03/25 Python
基于python代码实现简易滤除数字的方法
2018/07/17 Python
使用Django简单编写一个XSS平台的方法步骤
2019/03/25 Python
Django logging配置及使用详解
2019/07/23 Python
Python 脚本拉取 Docker 镜像问题
2019/11/10 Python
html5使用Drag事件编辑器拖拽上传图片的示例代码
2017/08/22 HTML / CSS
canvas实现手机的手势解锁的步骤详细
2020/03/16 HTML / CSS
施工资料员的岗位职责
2013/12/22 职场文书
幼儿园美术教学反思
2014/01/31 职场文书
情侣吵架检讨书
2014/02/05 职场文书
大专学生求职信
2014/07/04 职场文书
微笑面对生活演讲稿
2014/09/23 职场文书
2015年库房工作总结
2015/04/30 职场文书
法人身份证明书
2015/06/18 职场文书
2016教师廉洁教育心得体会
2016/01/13 职场文书
2016大学生国家助学贷款承诺书
2016/03/25 职场文书
基于PyTorch实现一个简单的CNN图像分类器
2021/05/29 Python