Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.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 为什么加密中的AES加密产生汉字_Python_Encryption_Pycrypto - Fatal编程技术网

Python 为什么加密中的AES加密产生汉字

Python 为什么加密中的AES加密产生汉字,python,encryption,pycrypto,Python,Encryption,Pycrypto,我已经在Python中使用加密软件加密了我的文本文件。当我在记事本中打开加密文件时,我看到一堆汉字和一些奇怪的符号 为什么加密一直在产生汉字?它可能将数据解释为UTF-8。UTF-8可以包含Unicode联盟定义的任何字符或代码点。您之所以使用manny“中文”字符,是因为您很可能会创建一个UTF-8转义,以便每个字符使用多个字节,并且因为亚洲字符比西方字符多得多 如果您想看到“文本”,那么应该使用base 64进行编码。但是,文件完全可以作为包含任何字节值的二进制文件。因此,对于计算机/解密,

我已经在Python中使用加密软件加密了我的文本文件。当我在记事本中打开加密文件时,我看到一堆汉字和一些奇怪的符号


为什么加密一直在产生汉字?

它可能将数据解释为UTF-8。UTF-8可以包含Unicode联盟定义的任何字符或代码点。您之所以使用manny“中文”字符,是因为您很可能会创建一个UTF-8转义,以便每个字符使用多个字节,并且因为亚洲字符比西方字符多得多


如果您想看到“文本”,那么应该使用base 64进行编码。但是,文件完全可以作为包含任何字节值的二进制文件。因此,对于计算机/解密,最好将文件保留为二进制文件。密文意味着不可读;无论如何,绝对没有理由尝试“读取”它。

它是二进制数据。但它不应该显示所有类型的字符吗?为什么大部分是中国人?为什么不是数字、字母、不同的符号呢?可能是因为生成的字符范围碰巧包含了汉字范围的UTF-8前缀。记事本试图将字符解释为字符集,但由于数据没有任何意义,因此失败了。一个好的编辑会告诉你这个问题。