暴力破解凯撒密码
凯撒密码破解原理主要是通过对密文进行频率分析、统计分析和字母替换等方法来破解。
具体来说,破解者可以通过对密文中每个字母出现的频率进行统计和分析,找出出现频率最高的字母,并将其替换为最可能的明文字母。然后,可以继续对其他字母进行分析和替换,逐步还原出完整的明文。此外,还可以使用一些统计学方法来分析字母之间的关联性,从而进一步帮助破解者确定某些字母的明文对应。
然而,需要注意的是,随着现代密码学的发展和技术进步,凯撒密码等简单加密技术已经被认为是不安全的,容易被现代计算机快速破解。因此,在现代通信和信息安全领域,更加复杂和安全的加密算法被广泛使用。
在此,我们通过遍历的方式对凯撒密码进行暴力破解。
代码部分:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| message='kaisamimabaolipojie' SYMBOLS='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890 !?.' for key in range(len(SYMBOLS)): translated='' for symbol in message: if symbol in SYMBOLS: symbolIndex = SYMBOLS.find(symbol) translatedIndex = symbolIndex - key if translatedIndex < 0: translatedIndex = translatedIndex + len(SYMBOLS) translated = translated + SYMBOLS[translatedIndex] else: translated = translated + symbol print('Key #%s: %s' % (key, translated))
|
结果展示
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
| Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key Key
Process finished with exit code 0
|
Author:
QUANQUAN
License:
Copyright (c) 2019 CC-BY-NC-4.0 LICENSE
Slogan:
Make the world MORE PERFECT !