C# aes加密c中的用户提供密钥#

C# aes加密c中的用户提供密钥#,c#,cryptography,aes,C#,Cryptography,Aes,AES256使用256位密钥,该密钥正好是32字节的数据,以ASCII字符表示为32个字符。它主要是系统生成的密钥。 我正在开发一个使用C#中的AES类加密纯文本文件的项目。在这个项目中,有一个窗口表单,要求用户提供密钥。有没有办法使用用户提供的密钥加密纯文本?您不应该向用户索要密钥。您应该要求用户输入密码短语,然后使用行业标准之一从密码短语生成密钥,如。Net为该类提供了支持。有关如何使用它,请参见链接中的示例。另外,请确保生成了一个良好的初始化向量,并将其预先添加到加密文件中 决不能将系统生

AES256使用256位密钥,该密钥正好是32字节的数据,以ASCII字符表示为32个字符。它主要是系统生成的密钥。
我正在开发一个使用C#中的AES类加密纯文本文件的项目。在这个项目中,有一个窗口表单,要求用户提供密钥。有没有办法使用用户提供的密钥加密纯文本?

您不应该向用户索要密钥。您应该要求用户输入密码短语,然后使用行业标准之一从密码短语生成密钥,如。Net为该类提供了支持。有关如何使用它,请参见链接中的示例。另外,请确保生成了一个良好的初始化向量,并将其预先添加到加密文件中

决不能将系统生成的密钥与用户提供的密码短语混合使用。如果生成密钥,则必须有密钥交换协议,例如TLS


请花些时间记录一下基本密码。是一个很好的开始阅读(和免费)。不要再发布另一个损坏的加密产品…

您不应该向用户索要密钥。您应该要求用户输入密码短语,然后使用行业标准之一从密码短语生成密钥,如。Net为该类提供了支持。有关如何使用它,请参见链接中的示例。另外,请确保生成了一个良好的初始化向量,并将其预先添加到加密文件中

决不能将系统生成的密钥与用户提供的密码短语混合使用。如果生成密钥,则必须有密钥交换协议,例如TLS


请花些时间记录一下基本密码。是一个很好的开始阅读(和免费)。不要再发布另一个损坏的加密产品…

为什么没有?为什么没有?可能的重复?可能的重复