Python凯撒密码算法有哪些特征,原理是什么
Admin 2022-08-25 群英技术资讯 708 次浏览
这篇文章主要讲解了“Python凯撒密码算法有哪些特征,原理是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python凯撒密码算法有哪些特征,原理是什么”吧!凯撒密码的算法具有以下特征;
下图描绘了Caesar密码算法实现的工作原理 :

Caesar密码算法的程序实现如下 :
def encrypt(text,s): result = "" # transverse the plain text for i in range(len(text)): char = text[i] # Encrypt uppercase characters in plain text if (char.isupper()): result += chr((ord(char) + s-65) % 26 + 65) # Encrypt lowercase characters in plain text else: result += chr((ord(char) + s - 97) % 26 + 97) return result #check the above function text = "CEASER CIPHER DEMO" s = 4 print "Plain Text : " + text print "Shift pattern : " + str(s) print "Cipher: " + encrypt(text,s)
你可以看到凯撒密码,即输出如下图所示 :

密码文本可以被各种可能性攻击.其中一种可能性是暴力技术,其中涉及尝试每个可能的解密密钥.这种技术不需要太多努力,对于黑客来说相对简单.
黑客攻击凯撒密码算法的程序实现如下
message = 'GIEWIVrGMTLIVrHIQS' #encrypted message
LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
for key in range(len(LETTERS)):
translated = ''
for symbol in message:
if symbol in LETTERS:
num = LETTERS.find(symbol)
num = num - key
if num < 0:
num = num + len(LETTERS)
translated = translated + LETTERS[num]
else:
translated = translated + symbol
print('Hacking key #%s: %s' % (key, translated))
考虑上一个示例中加密的密文.然后,使用密钥和使用暴力攻击技术的可能的黑客攻击方法的输出如下 :

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
用Python处理数据,然后用Folium将它在Leaflet地图上进行可视化。Folium能够将通过Python处理后的数据轻松地在交互式的Leaflet地图上进行可视化展示。它不单单可以在地图上展示数据的分布图,还可以使用Vincent/Vega在地图上加以标记。
这篇文章主要介绍了Pandas 连接合并函数merge()详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
先定义一个类:classPoint:def__init__(self,x,y):self x=xself y=y下面我们使用9种方法来生成新的对象:point1=Point(1,2)point2=eval("{}
人脸磨皮是最基础的人脸美颜效果。本文介绍了OpenCV-Python实现人脸磨皮算法,主要包括图像滤波,图像融合和图像锐化,感兴趣的可以了解一下
本文主要介绍了Python pyecharts Boxplot箱线图的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008