我正在修改现有的安全代码。规范很清楚,有示例代码,但我不是密码专家。事实上,示例代码有一个免责声明,实际上是“不要逐字使用此代码”。
在审核我要修改的代码(据说功能完整)时,我遇到了这个用于生成挑战的小宝石:
static uint16 randomSeed;
...
uint16 GetRandomValue(void)
{
return randomSeed++;/* This is not a good example of very random generation :o) */
}
当然,我立即做的第一件事就是把它传遍办公室,这样我们都可以大笑。
生成此代码的程序员知道这不是一个好的算法(如评论所示),但我认为他们不理解安全隐患。他们甚至懒得在主循环中调用它,所以它至少会变成一个自由运行的计数器——仍然不理想,但世界不止于此。
但是,我知道我生成的代码同样会导致真正的安全专家发笑或发抖。
- 我需要了解的最常见的密码学安全问题是什么?
- 有哪些好的资源可以让我了解除了常见错误之外我应该知道的内容?
-亚当