- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我认为,为了随机选择播放器中的下一首轨道或浏览器中的下一页,可以将时间用作“自然现象”,例如体面的 RPNG 无需程序即可连续获取下一个随机数请求(例如在一个线程中每几毫秒或更频繁的事件)和时间到来时(基于用户决定),选择自然会受到此用户延迟的影响。
这种方法是否足够好,如何对其进行测试?手动测试的问题是我不能在现实世界中等待那么久才能保存足够的随机数以将它们提供给某些测试程序。任何人为加速的尝试都会使方法本身无效。
谢谢
最佳答案
一个好的随机数生成器确实不需要改进,即使需要改进,也不清楚用户输入时间是否有帮助。
用户能否检测到 LCG 选择的轨道中的模式?无论您使用何种平台,其内置的 random()
函数都可能足够好(也就是说,它对用户而言完全是随机的)。
但是,如果您仍然担心,请使用加密质量的 RNG,使用来自您系统上专用随机源的数据作为种子。如今,许多此类系统 RNG 使用通过硬件中的量子事件生成的真正随机位。但是,它们生成位的速度可能很慢,因此最好将它们用作快速算法 PRNG 的种子。
现在,如果您不相信这些方法足够好,您应该非常怀疑用户输入的时间是否是一个好的来源。用户按下的键高度可预测,因为使用的词汇量有限,而且往往会出现在这组有限的单词中。字母序列的这种可预测性导致按键之间时间的高度可预测性。
我知道很多安全程序在 key 生成过程中都使用了这种技术。我不认为它是纯蛇油,但它可能是安抚用户的安慰剂。好的产品离不开系统RNG。
关于algorithm - 随机拍摄之间的用户延迟是否是 PRNG 的良好改进?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4843901/
嗨,我正在考虑开发一种文件传输程序,想知道我是否想要尽可能好的加密,我应该使用什么? 我会用 C# 开发它,所以我可以访问 .net 库 :P在我的 usb 上有一个证书来访问服务器是没有问题的,如果
我创建的这个计算两个数组的交集是线性的方法的复杂度(在良好、平均、最差的情况下)? O(n) public void getInt(int[] a,int[] b){ int i=0; int
我已经能够使用 RTCPeerConnection.getStats() API 获得 WebRTC 音频调用的各种统计信息(抖动、RTT、丢包等)。 我需要将整体通话质量评为优秀、良好、一般或差。
基本问题: 如果我正在讲述/修改数据,我应该通过索引硬编码索引访问文件的元素,即 targetFile.getElement(5);通过硬编码标识符(内部翻译成索引),即 target.getElem
在 Linux 上,我想知道要调用什么“C”API 来获取每个 CPU 的统计信息。 我知道并且可以从我的应用程序中读取 /proc/loadavg,但这是系统范围的负载平均值,而不是每个 CPU 的
在客户端浏览器中使用 fetch api,GET 或 POST 没有问题,但 fetch 和 DELETE 有问题。它似乎将 DELETE 请求方法更改为 OPTIONS。 大多数研究表明是一个cor
我是一名优秀的程序员,十分优秀!