脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python 换位密码算法的实例详解

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

2020-11-27 00:31cakin24 Python

这篇文章主要介绍了python 换位密码算法的实例详解的相关资料,换位密码基本原理:先把明文按照固定长度进行分组,然后对每一组的字符进行换位操作,从而实现加密,需要的朋友可以参考下

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

一前言:

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

二 代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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)))

三 运行结果

?
1
2
Eorrrhs odlu venep ra ssselintly
Error should never pass silently

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

原文链接:http://cakin24.iteye.com/blog/2384763

延伸 · 阅读

精彩推荐