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中的Null模式与桥接模式编程
Feb 02 Python
Python选课系统开发程序
Sep 02 Python
python中reduce()函数的使用方法示例
Sep 29 Python
Python基于pycrypto实现的AES加密和解密算法示例
Apr 10 Python
TensorFlow 模型载入方法汇总(小结)
Jun 19 Python
Python解析json代码实例解析
Nov 25 Python
python 经典数字滤波实例
Dec 16 Python
Python sublime安装及配置过程详解
Jun 29 Python
详解Selenium 元素定位和WebDriver常用方法
Dec 04 Python
教你怎么用Python实现多路径迷宫
Apr 29 Python
利用python Pandas实现批量拆分Excel与合并Excel
May 23 Python
pytorch中的torch.nn.Conv2d()函数图文详解
Feb 28 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 数组遍历顺序理解
2009/09/09 PHP
php 接口类与抽象类的实际作用
2009/11/26 PHP
linux系统上支持php的 iconv()函数的方法
2011/10/01 PHP
浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
2013/01/11 PHP
php的POSIX 函数以及进程测试的深入分析
2013/06/03 PHP
event.srcElement 用法笔记e.target
2009/12/18 Javascript
BOM与DOM的区别分析
2010/10/26 Javascript
Vue.js学习笔记之 helloworld
2016/08/14 Javascript
微信小程序 倒计时组件实现代码
2016/10/24 Javascript
Javascript数组中push方法用法分析
2016/10/31 Javascript
网络传输协议(http协议)
2016/11/18 Javascript
ES6中Math对象新增的方法实例详解
2017/04/25 Javascript
详解AngularJS ng-class样式切换
2017/06/27 Javascript
jQuery实现的简单前端搜索功能示例
2017/10/28 jQuery
vue.js 获取select中的value实例
2018/03/01 Javascript
js捆绑TypeScript声明文件的方法教程
2018/04/13 Javascript
解决select2在bootstrap modal中不能正常使用的问题
2018/08/09 Javascript
H5+css3+js搭建带验证码的登录页面
2020/10/11 Javascript
400多行Python代码实现了一个FTP服务器
2012/05/10 Python
Python简单计算文件夹大小的方法
2015/07/14 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
2019/06/27 Python
linux下安装python3和对应的pip环境教程详解
2019/07/01 Python
Tensorflow限制CPU个数实例
2020/02/06 Python
Python集合操作方法详解
2020/02/09 Python
python中使用you-get库批量在线下载bilibili视频的教程
2020/03/10 Python
python利用platform模块获取系统信息
2020/10/09 Python
CSS3 media queries + jQuery实现响应式导航
2016/09/30 HTML / CSS
澳大利亚当地最大的时装生产商:Cue
2018/08/06 全球购物
澳大利亚玩具剧场:Toy Playhouse
2019/03/03 全球购物
高中班长自我鉴定
2013/12/20 职场文书
求职信模板标准格式范文
2014/02/23 职场文书
社区党务工作总结2015
2015/05/19 职场文书
飞越疯人院观后感
2015/06/09 职场文书
2016年优秀共青团员事迹材料
2016/02/25 职场文书
考教师资格证不要错过的4个最佳时机
2019/07/17 职场文书
有关花店创业的计划书模板
2019/08/27 职场文书