首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么CWE认为rand()有潜在的危险

为什么CWE认为rand()有潜在的危险
EN

Stack Overflow用户
提问于 2018-09-22 14:34:50
回答 1查看 142关注 0票数 1

我一直在使用rand()函数生成随机数。当我通过CWE检查工具检查我的代码时,它认为rand()是一个潜在的危险函数,并建议使用加密库。有没有人能详细解释一下?生成随机数的最佳且安全的替代方案是什么

EN

回答 1

Stack Overflow用户

发布于 2018-09-22 14:40:03

根据https://en.cppreference.com/w/cpp/numeric/random/rand的说法

不能保证所产生的随机序列的质量。在过去,rand()的一些实现在产生的序列的随机性、分布和周期方面存在严重缺陷(在一个众所周知的示例中,低位在调用之间简单地在1和0之间交替)。

对于严重的随机数生成需求,不建议使用rand()。建议使用C++11的随机数生成工具来代替rand()。(从C++11开始)

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52454172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档