Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.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_Hash_Cryptography_Aes - Fatal编程技术网

Python 对用户输入进行编码以获取加密密钥

Python 对用户输入进行编码以获取加密密钥,python,encryption,hash,cryptography,aes,Python,Encryption,Hash,Cryptography,Aes,我正在接受用户输入,需要将其转换为AES加密密钥。 我有: 如果我输入计算机作为输入。我得到“计算机”输出的结果 它不应该看起来更像这样吗 b'\xbf\xc0\x85)\x10nc\x94\x02)j\xdf\xcb\xc4\x94\x9d(\x9e[EX\xc8\xd5\xbfI{\xa2$\x05(\xd5\x18' 长答覆: 简短的回答。AES采用128位、192位或256位密钥。有些API允许您使用密码而不是密钥。如何将密码转换为适当长度的密钥不是AES标准的一部分。有大量基于密码的

我正在接受用户输入,需要将其转换为AES加密密钥。 我有:

如果我输入计算机作为输入。我得到“计算机”输出的结果

它不应该看起来更像这样吗

b'\xbf\xc0\x85)\x10nc\x94\x02)j\xdf\xcb\xc4\x94\x9d(\x9e[EX\xc8\xd5\xbfI{\xa2$\x05(\xd5\x18'
长答覆:

简短的回答。AES采用128位、192位或256位密钥。有些API允许您使用密码而不是密钥。如何将密码转换为适当长度的密钥不是AES标准的一部分。有大量基于密码的密钥派生函数PBKDF执行此功能。

详细答案:

简短的回答。AES采用128位、192位或256位密钥。有些API允许您使用密码而不是密钥。如何将密码转换为适当长度的密钥不是AES标准的一部分。有大量基于密码的密钥派生函数PBKDF执行此功能。

计算机不能是AES密钥,因为它只包含ASCII字符。AES等算法的密钥应由完全随机化的位组成,当然,其大小应为128、192或256位

您所追求的是基于密码的加密。为此,有一些标准,如基于密码的加密规范2.1版。基本上,它使用PBKDF2从相对较弱的密码计算密钥,使用salt和功因子,或者在PBKDF2的情况下,使用迭代计数。

计算机不能是AES密钥,因为它只包含ASCII字符。AES等算法的密钥应由完全随机化的位组成,当然,其大小应为128、192或256位


您所追求的是基于密码的加密。为此,有一些标准,如基于密码的加密规范2.1版。基本上,它使用PBKDF2从相对较弱的密码中计算密钥,使用salt和功因子,或者在PBKDF2的情况下,使用迭代计数。

哈希和加密是不同的事情。前者用于密码存储和验证,要求更具体;后者不应该。我已经编辑了这篇文章,希望得到一些意见。请先阅读,然后提供足够的上下文。理想情况下,您应该给我们一个。对不起,非常新的堆栈。哈希和加密是不同的事情。前者用于密码存储和验证,要求更具体;后者不应该。我已经编辑了这篇文章,希望得到一些意见。请先阅读,然后提供足够的上下文。理想情况下,你应该给我们一个。对不起,非常新的堆栈。
b'\xbf\xc0\x85)\x10nc\x94\x02)j\xdf\xcb\xc4\x94\x9d(\x9e[EX\xc8\xd5\xbfI{\xa2$\x05(\xd5\x18'