我有几个关于使用 MySQL / Visual Studio 2010 (VSTO Visual Basic) 存储/检索密码的问题。我希望他们是直截了当的!
SHA-2 问题
我正在使用 MySQL(通过 PHPMyAdmin 界面)制作一个表来存储两列:用户 ID 和密码。在阅读了 SO 和一堆其他资源之后,似乎使用 SHA-2 加密和加盐存储密码是一个可行的选择。这个对吗?
视觉工作室 2010 年问题
我正在 Visual Studio 2010 中构建 VSTO 项目,并将使用 Visual Basic 访问表中的数据 - 如何使用 SHA-2 算法对用户输入的密码进行编码?我似乎找不到有关此过程的任何“当前”指南。我想我必须下载/安装一个可以将 SHA-2 算法处理到 VS2010 的扩展。这里的过程是,我在 Excel 中构建了一个“登录系统”,但我想通过将其与 MySQL 表中现有的数据进行比较来验证用户名/密码组合。
盐渍问题
此外,Salting 几乎在我阅读的所有地方都被强烈推荐,所以我决定使用随机字符串,如 's@w0s9w%$x" 或类似的东西,显然每次需要编码+匹配密码时存储/使用它数据库。这是否足够安全?您如何为每个用户使用不同的盐字但跟踪这一点?您会简单地将用户名/盐字组合保存在另一个表中并稍后提取吗?
编辑:添加了更多信息!