0

我有一个问题,你可以帮我解决;我有一个用 C# 代码编写的程序,但是该程序使用了一些需要对任何人隐藏的密码(非常关键)

但正如任何人都知道的那样,任何人都可以为我的程序反编译 exe 或任何 dll,并使用简单或困难的方式知道这些密码。

我认为将具有这些密码的代码放在连接到运行我的程序的 PC 的硬件模块上;我的程序处理这个硬件。

是否有任何硬件模块可以搜索以在我的程序中使用?

4

1 回答 1

0

最好不要直接在程序中硬编码敏感信息。此外,此类信息绝不应以纯文本形式存储。

相反,尝试将这些信息存储在使用 MD5 或 SHA1 对它们进行哈希处理的数据库中(甚至是本地数据库,取决于您的需要)。散列密码不应恢复为原始密码。

当用户登录时,您只需使用相同的哈希码对输入的密码进行哈希处理,并将其与数据库中的哈希值进行比较。如果它们相同,则表示用户输入了正确的信息。

于 2015-10-11T10:29:55.910 回答