Python解密
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python解密,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1423字,纯文字阅读大概需要3分钟。
内容图文
![Python解密](/upload/InfoBanner/zyjiaocheng/673/84a4c83460044d999f7d2aeedd527214.jpg)
我目前正在从事一项家庭作业,我们必须构建一个函数,在其中编写一个三步加密/解密程序.我们必须构建的密码之一是变位/轨道围栏,该围栏接受变量(n)作为要加密消息的“轨道”数.我已经建立了加密,但是我m失去了解密方法.
这是针对python的入门级类,因此我们对下面的加密代码等基础知识了解不多.
如果您不确定我所说的换位加密/围栏是什么意思,这是一个示例…
Message = abcdefg
n = 3
最后将其加密为3个组(如n所示),这些组将为“ adg be cf”,然后从那里将它们重组为一个字符串“ adgbecf”.我的麻烦是将它们重新分解为“ adg be cf”的原始三个字符串,然后将其转换回原始值.
加密:
def trans_encrypt(message, n):
cipher = ""
for i in range(n):
for j in range(i, len(message), n):
cipher = cipher + message[j]
return cipher
当前解密(无效):
def trans_decrypt(cipher, n):
length = len(cipher) // n
message = ''
for i in range(length):
for j in range(n):
letter = (i + j * length)
message = message + cipher[letter]
return message
解决方法:
如果您的加密方法正确((有人评论说这不是密码),则满足以下条件:
您可以像这样进行加密:
>>> def trans_encrypt(message,n):
... return "".join([message[i::n] for i in range(n)])
...
>>> trans_encrypt(a,3)
'adgbecf'
我会给您一个有关解密的提示:
>>> b = 'adgbe cf '
>>> trans_encrypt(b,3)
'abcdefg '
我在“已加密”字符串中插入了空格,并仅对“已加密”字符串使用了加密方法对其进行解密.我得到了正确的结果,最后还有一些额外的预期空格.
由于这是家庭作业,我将让您弄清楚如何计算在哪里添加空格.
您的解密方法只能修改消息(插入空格),调用您的加密方法并删除尾随空白.
内容总结
以上是互联网集市为您收集整理的Python解密全部内容,希望文章能够帮你解决Python解密所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。