Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:使用密钥在没有模块的情况下加密和解密字符串_Python_Encryption - Fatal编程技术网

Python:使用密钥在没有模块的情况下加密和解密字符串

Python:使用密钥在没有模块的情况下加密和解密字符串,python,encryption,Python,Encryption,我有一系列随机生成的字符串,我需要用相同长度的随机生成的密钥加密和解密 我的问题是,我不能只使用PyDES或PyCrypto,因为我希望我的整个程序都在一个文件中,在我不重启时,只有当模块存在于用户的计算机上并且程序在模块的目录中时,模块才会工作 有人能告诉我一个函数、方法,甚至是模块,它可以被复制粘贴到应用程序中,并使用密钥进行加密吗?我非常希望它涉及比Vigenere密码更高级的加密,但安全性不是我最关心的问题。您总是可以将模块中的实现复制到源代码中。尽管如此,编写自己的算法是一个非常糟糕的

我有一系列随机生成的字符串,我需要用相同长度的随机生成的密钥加密和解密

我的问题是,我不能只使用PyDES或PyCrypto,因为我希望我的整个程序都在一个文件中,在我不重启时,只有当模块存在于用户的计算机上并且程序在模块的目录中时,模块才会工作


有人能告诉我一个函数、方法,甚至是模块,它可以被复制粘贴到应用程序中,并使用密钥进行加密吗?我非常希望它涉及比Vigenere密码更高级的加密,但安全性不是我最关心的问题。

您总是可以将模块中的实现复制到源代码中。尽管如此,编写自己的算法是一个非常糟糕的主意,即使您有可用的算法描述

您还可以使用与系统中已有的ssl库进行接口


或者,如果您知道字符串和密钥确实是使用加密RNG生成的,那么您可以将它们逐个字符地异或在一起。这是一种有效的一次性pad方法。只需确保您使用的RNG适合该方法。有些变体会很难失败(例如MT很容易反转)。

重新实现已知的加密函数很少是个好主意。包含私钥不会使这一担忧变得无效吗?