.Net AES Implementation



我正在使用bcrypt和AES为移动设备实现登录机制。用户必须使用密码登录,然后使用bcrypt对密码进行哈希处理,并与数据库中的哈希进行比较。当然,登录事务将通过SSL进行,并且服务器将被配置为只提供SSL服务。这部分很简单。

但是,我还想存储一个cookie,这样用户就不必每次登录。cookie将在24小时后自动从设备中删除。我计划存储一个AES加密字符串,该字符串由日期时间戳和bcrypt哈希组成。AES实现是我遇到困难的地方。我曾计划使用Encryptamajig,它是".NET AES加密算法功能的简单包装器",但后来我看到它上发布了这个问题,这个问题还没有解决。(这个问题与使用相同的推导函数生成IV作为密钥有关)。

我的问题是,这是一个巨大的问题,应该阻止我使用这个包装器吗?(我的密码学知识正在增加,但仍然相对较低;然而,如果我理解正确,这与使WEP如此容易破解的问题接近)

如果是,是否有使用.Net的AES类的最佳/更好的做法?目前SO上的大多数答案似乎都是旧的,根本不涉及AES类。

IMO cookie应该是存储在数据库中的自动登录表中的随机令牌。然后,您可以在不更改用户密码的情况下使这些令牌无效。

在.net上使用AES时,我会使用一个内置类,块大小为128的RijndaelAes。如果我需要额外的速度,我只会使用其他实现(内置的加密类通常很慢)。

最新更新