python 换位密码算法的实例详解


Posted in Python onJuly 19, 2017

 python 换位密码算法的实例详解

一前言:

换位密码基本原理:先把明文按照固定长度进行分组,然后对每一组的字符进行换位操作,从而实现加密。例如,字符串“Error should never pass silently”,使用秘钥1432进行加密时,首先将字符串分成若干长度为4的分组,然后对每个分组的字符进行换位,第1个和第3个字符位置不变,把第2个字符和第4个字符交换位置,得到“Eorrrs shluoden v repssa liseltny”

二 代码:

def encrypt(plainText,t): 
 result =[] 
 length = len(t) 
 temp =[plainText[i:i+length]for i in range(0,len(plainText),length)] 
for item in temp[:-1]: 
 newItem='' 
for i in t: 
 newItem = newItem + item[i-1] 
 result.append(newItem) 
return''.join(result)+ temp[-1] 
p ="Error should never pass silently" 
c = encrypt(p,(1,4,3,2)) 
print(c) 
print(encrypt(c,(1,4,3,2)))

三 运行结果

Eorrrhs odlu venep ra ssselintly
Error should never pass silently

 以上就是关于python 换位密码的算法实例详解,大家有疑问可以留言或者到本站社区讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python的Flask框架中实现简单的登录功能的教程
Apr 20 Python
基于python3 类的属性、方法、封装、继承实例讲解
Sep 19 Python
python编写分类决策树的代码
Dec 21 Python
TensorFlow深度学习之卷积神经网络CNN
Mar 09 Python
使用实现XlsxWriter创建Excel文件并编辑
May 04 Python
Python操作Oracle数据库的简单方法和封装类实例
May 07 Python
python实现指定字符串补全空格、前面填充0的方法
Nov 16 Python
pytorch 图像中的数据预处理和批标准化实例
Jan 15 Python
Python安装whl文件过程图解
Feb 18 Python
Python yield生成器和return对比代码实例
Apr 20 Python
django template实现定义临时变量,自定义赋值、自增实例
Jul 12 Python
Django配置Bootstrap, js实现过程详解
Oct 13 Python
python实现rsa加密实例详解
Jul 19 #Python
Python中标准库OS的常用方法总结大全
Jul 19 #Python
spyder常用快捷键(分享)
Jul 19 #Python
JPype实现在python中调用JAVA的实例
Jul 19 #Python
简单谈谈Python中的json与pickle
Jul 19 #Python
利用Python操作消息队列RabbitMQ的方法教程
Jul 19 #Python
高效测试用例组织算法pairwise之Python实现方法
Jul 19 #Python
You might like
windows7下安装php的imagick和imagemagick扩展教程
2014/07/04 PHP
在Linux系统下一键重新安装WordPress的脚本示例
2015/06/30 PHP
php 二维数组快速排序算法的实现代码
2017/10/17 PHP
PHP扩展mcrypt实现的AES加密功能示例
2019/01/29 PHP
yii2.0框架使用 beforeAction 防非法登陆的方法分析
2019/09/11 PHP
用js脚本控制asp.net下treeview的NodeCheck的实现代码
2010/03/02 Javascript
uploadify 3.0 详细使用说明
2012/06/18 Javascript
Jquery插件easyUi表单验证提交(示例代码)
2013/12/30 Javascript
初始Nodejs
2014/11/08 NodeJs
javascript实现简单的贪吃蛇游戏
2015/03/31 Javascript
jQuery版本升级踩坑大全
2016/01/12 Javascript
简单的vue-resourse获取json并应用到模板示例
2017/02/10 Javascript
webpack学习教程之publicPath路径问题详解
2017/06/17 Javascript
JavaScript简单实现合并两个Json对象的方法示例
2017/10/16 Javascript
Vue实战之vue登录验证的实现代码
2017/10/31 Javascript
javascript+jQuery实现360开机时间显示效果
2017/11/03 jQuery
JS中图片压缩的方法小结
2017/11/14 Javascript
React diff算法的实现示例
2018/04/20 Javascript
使用Vue实现图片上传的三种方式
2018/07/17 Javascript
在Create React App中使用CSS Modules的方法示例
2019/01/15 Javascript
Python中asyncore的用法实例
2014/09/29 Python
Python实现矩阵加法和乘法的方法分析
2017/12/19 Python
python方向键控制上下左右代码
2018/01/20 Python
pytorch 实现打印模型的参数值
2019/12/30 Python
Python使用Tkinter实现滚动抽奖器效果
2020/01/06 Python
CSS3属性box-sizing使用指南
2014/12/09 HTML / CSS
老板电器官方购物商城:老板油烟机、燃气灶、消毒柜、电烤箱
2018/05/30 全球购物
西班牙多品牌鞋店连锁店:Krack
2018/11/30 全球购物
远程调用的原理
2014/07/05 面试题
综合内勤岗位职责
2014/04/14 职场文书
先进教师个人事迹材料
2014/12/15 职场文书
怀孕辞职信怎么写
2015/02/28 职场文书
大学毕业论文致谢词
2015/05/14 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书
PHP中国际化的字符串排序和比较对象详解
2021/08/23 PHP
Python中with上下文管理协议的作用及用法
2022/03/18 Python