【问题标题】:encryption with pickle用泡菜加密
【发布时间】:2012-11-21 19:03:10
【问题描述】:

我想加密一个输入行,这行应该这样加密: PASSWORD = ABCCDEF ,所以第一个输入的字母变成“A”并且那个字母保持这种状态,正如你所看到的,“S”和“S”都是C。然后我想要输入行和加密的行被保存到一个文件(使用pickle),并且应该保存加密密钥,以便我们以后可以解密它。

我知道如何使用pickle,所以那部分都很好,但是加密/解密是模糊的!

【问题讨论】:

  • “我希望我正确地使用了这个 AskQuestion”——这就是 FAQ 的用途。
  • 可能是一个愚蠢的问题,但你为什么要使用这种“加密”方案? AES 怎么了?
  • 另外,您的问题似乎缺乏实际问题。还有一段代码摘录显示了你到目前为止所拥有的东西,以及你所面临的问题到底在哪里。 (如果问题是“我需要有人为我实现 $REQUIREMENT”,那你就来错地方了。)
  • 没有提到泡菜,这看起来像是为某些输入类型的问题分配连续字母/数字的几个之一
  • @kennet,这是家庭作业之类的,对吧?请不要告诉我这是要在实际生产代码中使用的东西。

标签: python pickle


【解决方案1】:

作为提示,您可能应该使用将每个字符映射到它的加密密码字符的字典。这是一个良好的开端。它遍历plain 中的每个字符,并将加密字符附加到新字符串中。现在您只需要考虑应该如何实现encryptor 映射(提示:给定其中的密钥数量,您可以分配下一个密码字符)。

plain = 'PASSWORD'
cipher = ''
encryptor = {}

for ch in plain:
    if ch in encryptor:
        # TODO: Implement so that encryptor[ch] = 'A' for the first letter,
        # But encryptor[ch] = 'B' for the second etc
        pass
    cipher += encryptor[ch]

祝你好运,一定要为你的代码写一些测试!

【讨论】:

    猜你喜欢
    • 2018-07-29
    • 1970-01-01
    • 1970-01-01
    • 2021-04-04
    • 1970-01-01
    • 2017-10-09
    • 1970-01-01
    • 2018-10-21
    • 2012-08-16
    相关资源
    最近更新 更多