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读取word文本操作详解
Jan 22 Python
python调用API实现智能回复机器人
Apr 10 Python
python opencv3实现人脸识别(windows)
May 25 Python
django 实现电子支付功能的示例代码
Jul 25 Python
详解python如何在django中为用户模型添加自定义权限
Oct 15 Python
Python multiprocess pool模块报错pickling error问题解决方法分析
Mar 20 Python
Python Opencv任意形状目标检测并绘制框图
Jul 23 Python
Python如何实现强制数据类型转换
Nov 22 Python
Python中filter与lambda的结合使用详解
Dec 24 Python
利用python对mysql表做全局模糊搜索并分页实例
Jul 12 Python
django restframework serializer 增加自定义字段操作
Jul 15 Python
python中复数的共轭复数知识点总结
Dec 06 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导出EXCEL快速开发指南--PHPEXCEL的使用详解
2013/06/03 PHP
使用php计算排列组合的方法
2013/11/13 PHP
PHP获取一段文本显示点阵宽度和高度的方法
2015/03/12 PHP
Laravel框架中Blade模板的用法示例
2017/08/30 PHP
PHP使用mysqli同时执行多条sql查询语句的实例
2019/03/22 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
2020/02/22 PHP
JS Timing
2007/04/21 Javascript
jQuery AJAX 调用WebService实现代码
2010/03/24 Javascript
小试JQuery的AutoComplete插件
2011/05/04 Javascript
详解jQuery插件开发中的extend方法
2013/11/19 Javascript
js中的getAttribute方法使用示例
2014/08/01 Javascript
JavaScript中的值类型转换介绍
2014/12/31 Javascript
深入理解JavaScript单体内置对象
2016/06/06 Javascript
微信小程序 实例开发总结
2017/04/26 Javascript
30分钟快速实现小程序语音识别功能
2018/11/27 Javascript
关于微信小程序登录的那些事
2019/01/08 Javascript
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
Python 执行字符串表达式函数(eval exec execfile)
2014/08/11 Python
Python制作简易注册登录系统
2016/12/15 Python
Numpy掩码式数组详解
2018/04/17 Python
python 对key为时间的dict排序方法
2018/10/17 Python
Python split() 函数拆分字符串将字符串转化为列的方法
2019/07/16 Python
Django admin model 汉化显示文字的实现方法
2019/08/12 Python
TensorFLow 不同大小图片的TFrecords存取实例
2020/01/20 Python
python3读取autocad图形文件.py实例
2020/06/05 Python
Python3如何使用range函数替代xrange函数
2020/10/05 Python
Ubuntu 20.04安装Pycharm2020.2及锁定到任务栏的问题(小白级操作)
2020/10/29 Python
用python监控服务器的cpu,磁盘空间,内存,超过邮件报警
2021/01/29 Python
Probikekit日本:自行车套件,跑步和铁人三项装备
2017/04/03 全球购物
美国眼镜网站:LensCrafters
2020/01/19 全球购物
什么是JNDI的上下文?如何初始化JNDI上下文
2012/03/10 面试题
销售总监岗位职责
2014/01/04 职场文书
小学优秀班集体申报材料
2014/05/25 职场文书
公司市场部岗位职责
2015/04/15 职场文书
python3.7.2 tkinter entry框限定输入数字的操作
2021/05/22 Python
nginx之内存池的实现
2022/06/28 Servers