学堂 学堂 学堂公众号手机端

Python ROT13算法过程及实现是怎样的呢

lewis 6年前 (2019-07-01) 阅读数 9 #技术
今天这篇我们来学习和了解“Python ROT13算法过程及实现是怎样的呢”,下文的讲解详细,步骤过程清晰,对大家进一步学习和理解“Python ROT13算法过程及实现是怎样的呢”有一定的帮助。有这方面学习需要的朋友就继续往下看吧!


到目前为止,您已经了解了反向密码和Caesar密码算法.现在,让我们讨论一下ROT13算法及其实现.


ROT13算法的解释

ROT13密码是指缩写形式旋转方式13个地方.这是Caesar Cipher的一个特例,其中shift始终为13.每个字母移动13个位置以加密或解密消息.

示例

下图以图形方式解释了ROT13算法过程 :

程序代码

ROT13算法的程序实现如下

fromstringimportmaketrans
rot13trans=maketrans('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',
'NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm')
#Functiontotranslateplaintext
defrot13(text):
returntext.translate(rot13trans)
defmain():
txt="ROT13Algorithm"
printrot13(txt)
if__name__=="__main__":
main()

你可以看到ROT13输出为sho wn在下图中 :

缺点

ROT13算法使用13个班次.因此,很容易以相反的方式移动字符来解密密文.

ROT13算法的分析

ROT13密码算法是被视为Caesar Cipher的特例.它不是一个非常安全的算法,可以通过频率分析或只是尝试可能的25个键轻松打破而ROT13可以通过移动13个位置来打破.因此,它不包括任何实际用途.


感谢各位的阅读,以上就是“Python ROT13算法过程及实现是怎样的呢”的内容了,经过本文的学习后,相信大家对Python ROT13算法过程及实现是怎样的呢都有更深刻的体会了吧。这里是博信,小编将为大家推送更多相关知识点的文章,欢迎关注!
版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门