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 中导入csv数据的三种方法
Nov 01 Python
python lxml中etree的简单应用
May 10 Python
pytorch 在sequential中使用view来reshape的例子
Aug 20 Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
Aug 28 Python
Python实现PyPDF2处理PDF文件的方法示例
Sep 25 Python
python实现超市商品销售管理系统
Nov 22 Python
python计算无向图节点度的实例代码
Nov 22 Python
Python Pandas 转换unix时间戳方式
Dec 07 Python
python pyqtgraph 保存图片到本地的实例
Mar 14 Python
使用sklearn对多分类的每个类别进行指标评价操作
Jun 11 Python
Python使用Selenium实现淘宝抢单的流程分析
Jun 23 Python
python logging模块的使用
Sep 07 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按指定键值对二维数组进行排序的方法
2015/12/22 PHP
thinkPHP简单调用函数与类库的方法
2017/03/15 PHP
自制PHP框架之模型与数据库
2017/05/07 PHP
如何通过View::first使用Laravel Blade的动态模板详解
2017/09/21 PHP
利用onresize使得div可以随着屏幕大小而自适应的代码
2010/01/15 Javascript
ExtJS实现文件下载的方法实例
2013/11/09 Javascript
JS简单实现元素复制示例附图
2013/11/19 Javascript
JavaScript动态修改背景颜色的方法
2015/04/16 Javascript
浅谈js 闭包引起的内存泄露问题
2015/06/22 Javascript
jQuery插件Validation快速完成表单验证的方式
2016/07/28 Javascript
纯js实现手风琴效果代码
2020/04/17 Javascript
JS弹性运动实现方法分析
2016/12/15 Javascript
vue.js2.0 实现better-scroll的滚动效果实例详解
2018/08/13 Javascript
NVM安装nodejs的方法实用步骤
2019/01/16 NodeJs
微信小程序实现购物页面左右联动
2019/02/15 Javascript
RxJS的入门指引和初步应用
2019/06/15 Javascript
layer.open弹层查看缩略图的原图,自适应大小的实例
2019/09/05 Javascript
jQuery 动态粒子效果示例代码
2020/07/07 jQuery
使用基于Python的Tornado框架的HTTP客户端的教程
2015/04/24 Python
Python设计足球联赛赛程表程序的思路与简单实现示例
2016/06/28 Python
Python 文件操作的详解及实例
2017/09/18 Python
python微信跳一跳系列之自动计算跳一跳距离
2018/02/26 Python
将python2.7添加进64位系统的注册表方式
2019/11/20 Python
python实现跨excel sheet复制代码实例
2020/03/03 Python
CSS3中HSL和HSLA的简单使用示例
2015/07/14 HTML / CSS
世界上最大的在线学习和教学市场:Udemy
2017/11/08 全球购物
婚礼证婚人证婚词
2014/01/13 职场文书
党校培训自我鉴定
2014/02/01 职场文书
十佳党员事迹材料
2014/08/28 职场文书
派出所班子党的群众路线对照检查材料思想汇报
2014/10/01 职场文书
2014教师专业技术工作总结
2014/12/03 职场文书
学校三八妇女节活动总结
2015/02/06 职场文书
七年级作文之英语老师
2019/10/28 职场文书
Python中Cookies导出某站用户数据的方法
2021/05/17 Python
Java 在线考试云平台的实现
2021/11/23 Java/Android
Java Spring Boot 正确读取配置文件中的属性的值
2022/04/20 Java/Android