在python中使用未指定的加密密钥解码加密文本

AAA*_*AAA 5 python encryption algorithm

代码中给出了以下消息:

VCZJCZIZJMZJLXYHMJYHE MCWSJMWZ ??NCXWJSYQXWZCOXJHMCJDV SOJHY ??HWWZOH @

编写一个程序,在知道原始消息是拉丁文并且一个字符也被用作空格(J 字符)的情况下,提出可能的解密方案。附加信息:

  • 这是一个使用公式 y = f (x) mod p 和 pa prime 的代码
  • 知道我们在说什么很重要
  • 该消息提供了项目 2 的信息

你们中的一些人知道如何在 python 中解决这个问题吗?

Pau*_*l R 3

如果你取几个连续的字母:

S (19) -> M (13)
T (20) -> C (3)
U (21) -> V (22)
V (22) -> L (12)
Run Code Online (Sandbox Code Playgroud)

并假设p = 29,您可以看到连续字母之间的增量 (mod 29) 为 19。

所以:f(x) = 19*x

注意,是加密f(x) mod p的方法。我将其作为练习留给读者来确定如何解密