window.crypto.getRandomValues()的兼容性。
我需要在JavaScript中生成密码安全的伪数编号.我知道window.crypto.getRandomValues api,它正是我想要的.但是,我也知道它是最近引入的(2011年左右). 我可以安全地假设window.crypto.getRandomValues是否存在,或者使用它会在某些浏览器上引入兼容性问题?是否有不支持window.crypto.getRandomValues的主要(广泛使用)浏览器(包括移动设备或桌面浏览器),如果是,我需要担心哪些?我很高兴得知有足够的支持,我不再需要担心后备方法,如果那样确实是这样. 解决方案 我可以安全地假设窗口. 一如既往地取决于您的目标市场,并且会随着时间的推移而改变. caniuse.com 列出的浏览器支持它并计算浏览器市场莎其中. 这是一个摘要: IE 11:w/prefix IE手机11:w/prefix firefox:21+ Firefox手机:21+ safari
0 2023-11-29
编程技术问答社区
如何进入一个随机的网站?-python
如何生成随机但有效的网站链接,无论语言如何.实际上,它生成的网站语言越多样化,它越好. 我一直在使用其他人的脚本在其网页上使用我如何不依赖这些随机网站转发脚本并自己制作自己的?.我一直这样做: import webbrowser from random import choice random_page_generator = ['http://www.randomwebsite.com/cgi-bin/random.pl', 'http://www.uroulette.com/visit'] webbrowser.open(choice(random_page_generator), new=2) 解决方案 我一直在使用其他人的脚本在其网页上使用,我如何不依赖这些随机网站转发脚本并自己制作自己的脚本? 有两种方法: 创建自己的 spider 积累了大量网站,并从该集合中挑选. 访问一些预先存在的网站集
0 2023-11-29
编程技术问答社区
python'的随机数生成是否容易重现?
我正在阅读标准库中有关Python的随机模块.令我惊讶的是,当我设置种子并产生一些随机数时: random.seed(1) for i in range(5): print random.random() 产生的数字与文章中的样本完全相同.我认为可以肯定地说算法是确定性的. 未设置种子时,标准库种子具有time.time(). 现在假设在线服务使用random.random()生成验证码代码,黑客可以使用相同的随机发电机轻松地复制验证码吗? 让我们假设黑客知道算法将随机数转换为验证码代码.否则,这似乎是不可能的. 由于Random.Seed()导入了模块时,我假设用于Web应用程序,用作种子的时间在发送请求的时间(几秒钟之内),它不会很难与几次尝试? 我担心太多了,还是这是一个真正的脆弱性? 解决方案 播种后的序列是确定性的,这不会让您感到惊讶.这就是播种的全部. random.random被称为prng,a pseudo - 随机数发生器.
0 2023-11-29
编程技术问答社区
如何停止/冻结/暂停波动的RAND / RANDBETWEEN / RANDARRAY?
是否有一种简单的方法(解决方法)如何禁用自动重新计算的挥发性函数,例如 =RAND() =RANDARRAY() =RANDARRAY() =RANDBETWEEN() =RANDBETWEEN() 在Google电子表格(?) 没有脚本 没有插件 没有宏 如果构建钥匙发生器,我们需要使用多个RANDBETWEEN输出,重新计算将在每个单元格上占有一席我们不断编辑的表格中的时间. 那里有一个越野车式插件,许多非宇宙脚本变化需要安装和某种程度的改装/知识,所以如何以旧的方式执行此操作? 解决方案 更新:自20/09/2022以来,我们能够冻结所有挥发物: NOW TODAY RAND RANDBETWEEN RANDARRAY COINFLIP WHATTHEFOXSAY 在带有可拖动LAMBDA函数的一时兴起(直到有人弄清楚如何将lambda-volatile应用于没有辅助柱的数组中).这里有几个示例: 电池编辑时的时间戳: =LAMB
0 2023-11-25
编程技术问答社区
std::default_random_engine即使改变种子也会产生相同的值?
我正在尝试实现一个将作为随机库的包装器的类,以便我可以在代码中其他位置的其他位置中使用其对象和功能. 在我的标题中,我有类似的东西: class RandomDevice{ private: unsigned long rand_seed; default_random_engine engine; public: RandomDevice(unsigned long n); int randInt(int min, int max);}; ,然后在.cpp文件中我实现了这两个函数(构造函数和randInt),例如: RandomDevice::RandomDevice(unsigned long n){ rand_seed = n; default_random_engine engine; engine.seed(n); } int RandomDevice::randInt(int min, int m
2 2023-11-24
编程技术问答社区
播种 default_random_engine?
我正在使用不支持的Visual Studio 2010,因此我必须播种default_random_engine.因此,我决定用rand播种,如以下 srand((unsigned int)time(NULL)); std::default_random_engine engine(rand()); std::normal_distribution randn(0.0, 0.3); 而不是以下 unsigned seed = std::chrono::system_clock::now().time_since_epoch().count(); std::default_random_engine engine(seed); std::normal_distribution randn(0.0, 0.3); 我得到了两种方法都希望获得的东西.我的问题是,我应该使用rand()注意任何考虑因素吗? (注意:我别无选择地使用
0 2023-11-23
编程技术问答社区
VS2010中Random_device的实现?
从我对标准的读取中,random_device::entropy()如果使用软件引擎,则应返回0.0.但是,在VS2010中,它返回32.0,在我的理解中,这需要硬件才能产生非确定性的随机数. VS2010的random_device如何生成数字序列? 解决方案 根据汉斯·帕斯特(Hans Passant)对这个问题的评论,random_device使用advapi32:SystemFunction036,根据msdn是RtlGenRandom的别名.通过VC ++ 2010提供的运行时库来源验证了这一点: random_device::operator()()在中调用以下函数链: _Random_device() // in xrngdev.cpp rand_s() // in rand_s.c RtlGenRandom()/SystemFunction036() // in advapi32.dll
0 2023-11-23
编程技术问答社区
srand(time(NULL))产生了类似的结果
我不明白为什么srand()在运行之间生成如此相似的随机数! 我正在尝试运行以下代码 srand ( time(NULL) ); int x = rand(); cout rand() = 41 srand(2) => rand() = 45 srand(3) => rand() = 48 srand(4) => rand() = 51 .... 解决方案 首先, srand() 不是随机功能;它设置了起点 伪随机序列.有些令人惊讶的是,你的 实施 rand() 以前的状态,而不是新计算
0 2023-11-23
编程技术问答社区
根据某些条件生成随机图
考虑以下几点:1,2,3,4,5,6,7,8,9,10 我可以从这些数字中制作有向的随机图: library(igraph) from = sample(1:10, 10, replace=FALSE) to = sample(1:10, 10, replace=FALSE) graph_data = data.frame(from,to) graph_data$id = as.factor(1:10) graph
0 2023-11-20
编程技术问答社区
正态分布的每次模拟都相同 (C++)
我编写一个代码来模拟C ++中的正态分布.但是每次似乎结果都是相同的.我的问题是这种现象的原因不是什么以及如何修复它?我从来没有python的问题.任何参考文献都非常感谢. // Simulation.cpp : Defines the entry point for the console application. #include "stdafx.h" #include #include void main(){ // create default engine as source of randomness // The maxtime we do expriements is 10000 // Record to the sum of the maxtimes sample std::default_random_engine dre; const int maxtimes = 100
0 2023-11-20
编程技术问答社区
如何用C/C++预处理器生成一系列的随机数
我想用 c 预处理器生成一系列随机数,并将它们存储在变量中以供我的程序使用. 目标: 我想每次构建程序时都会生成"唯一"的随机数.存储随机数的一小部分变量将被有意义的(即非随机)数字覆盖.我希望黑客,通过调试程序或比较多个构建,能够将有意义的数字与随机数区分开来,这是不可能的.我希望构建过程是自动化和独立的.我希望实现在Visual Studio和GCC中可以移植. 澄清: 计算必须在编译时进行,而不是在程序执行时完成.任何调试程序的人都应该只能看到一个变量被初始化为常数(随机数). 随机数应该是整数. 随机数发生器应以某种方式从__DATE__和__TIME__中播种,以便不同的构建将产生不同的随机数. 能够指定随机数的范围(例如1至100). 能够指定要生成的随机数的总数是最好的,但不是绝对必要的(例如,声明1000个变量并将每个变量初始化为一个随机数). 到目前为止尝试: 预处理器中的算术上的上一个线程:可以? 外卖是#if条件可以评估算
0 2023-11-20
编程技术问答社区
在同一程序中调用srand()两次
当我以2个非常不同的点调用srand()时,为什么会导致数字不是随机的?一旦我删除其中一个,它又恢复了正常. 解决方案 这取决于您如何调用它. srand()的目的是播种rand()使用的伪随机数生成器.因此,当您调用srand(i)>时,它将初始化rand()到取决于i的固定序列.因此,当您用相同的种子重新播种时,您开始获得相同的顺序. 最常见的用例是仅播种发电机一次,并具有合适的"随机"值(例如惯用性time(NULL)).此保证使您可能会在不同程序执行中获得不同的伪随机数序列. 但是,有时您可能想要使伪随机序列"可重播".想象一下,您正在测试随机数据上的几种排序算法.为了获得公平的比较,您应该在完全相同的数据上测试每个算法 - 因此,您将在每次运行之前都用相同的种子重新播种. 换句话说:如果您想要这些数字,则只需伪随机,播种一次,并且具有尽可能随机的值.如果您想要一些可控制性和可重复性,请根据需要播种. 其他解决方案 srand (seed);
0 2023-11-20
编程技术问答社区
本地Vim随机数脚本
我知道有多种从外壳中获取随机数的方法,例如.但是,我正在使用很少编译的Android手机上运行VIM.此外,它不必是严格的随机性.关键是,什么是有趣的,简洁的或快速的(即带有VIM本机函数),或者在VIM中获得一系列合理良好随机数的短序? 解决方案 尝试 之类的东西 function Rand() return str2nr(matchstr(reltimestr(reltime()), '\v\.@
0 2023-11-19
编程技术问答社区
随机混合300万行文件的行数
所有内容都在标题中.我想知道是否有人知道一个快速且具有合理的内存要求将300万行文件的所有行都随机混合的方式.我想使用一个简单的vim命令是不可能的,因此使用Python的任何简单脚本.我通过使用随机数生成器尝试使用Python,但没有设法找到简单的方法. 解决方案 import random with open('the_file','r') as source: data = [ (random.random(), line) for line in source ] data.sort() with open('another_file','w') as target: for _, line in data: target.write( line ) 应该这样做.除非线条巨大(超过512个字符),否则300万行将适合大多数机器的内存. . 其他解决方案 在Python中仅需几秒钟: import random lines =
0 2023-11-19
编程技术问答社区
AS3。没有尽头的视口
我正在制作太空导航游戏.因此,它从飞船上的用户开始,然后当他按下船只向前行驶时,"地图"总是不同的,我有5种恒星和2个行星变体变体,因此它们基本上是随机'spawn''用户导航.我可以进行密钥检测,电影剪辑发电机代码,但是我不知道如何制作导航代码,我的意思是,当用户按键时,我如何使视口移动,...我已经看到了我不太了解的代码基本上创建了一个巨大的电影剪辑,该剪辑根据被按下的密钥移动.在我的情况下,这不起作用,因为我希望它随机生成所有内容,而当用户按下向下箭头时,我希望它以与以前相同的"地图"返回.请帮助我,我对所有这些视口完全感到困惑.而且,我希望游戏快速运行,我是动作脚本的新手,如果您正在渲染未显示的对象,我不知道它会变得很重,如果是这样,那么简单的'obj将会.visible = false'有效吗?提前致谢. 解决方案 我在这里做的是: 使用属性camera创建Map类,这是另一个自定义类MapCamera. MapCamera有五个属性: _x _y
0 2023-11-19
编程技术问答社区
如何在Javascript/Html5中随机化视频播放列表
我是JS的初学者 我想知道如何随机化视频播放列表(JS),我想使用画布观看"受保护"的视频(通过视频槽槽帆布),然后循环播放视频以重新开始,视频连续播放列表随机化.不间断 帮助您将不胜感激!提前致谢!! 解决方案 您可以简单地将列表生成一个数组: var videoList = [video1url, video2url, ...]; 然后用自定义分类器对其进行整理,该分隔器将随机化: videoList.sort(function(a, b) {return 0.5 - Math.random()}); "列表). 对于连续的视频播放器,您可以签出 var ctx = canvas.getContext('2d'), /// get canvas w = canvas.width, /// cache dimensions h = canvas.height, video1 = document.createElement('video'), /
0 2023-11-18
编程技术问答社区
在VHDL中使用LFSR的伪随机数发生器
我使用LFSR方法遇到了一些麻烦.这是我的代码: library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity pseudorng is Port ( clock : in STD_LOGIC; reset : in STD_LOGIC; Q : out STD_LOGIC_VECTOR (7 downto 0); check: out STD_LOGIC); constant seed: STD_LOGIC_VECTOR(7 downto 0) := "00000001"; end pseudorng; architecture Behavioral of pseudorng is signal temp: STD_LOGIC; signal Qt: STD_LOGIC_VECTOR(7 downto 0); begin PROCESS(clock) BEGIN IF ri
0 2023-11-18
编程技术问答社区
verilog中的urandom_range(), urandom(), random()
我对这三个功能感到困惑,我想知道一些解释.如果我设置了范围,我该如何使范围独家或包容?如果我不指定范围,范围是包含或独家范围吗? 解决方案 除了 @dave_59的答案外,还有其他重要区别: i)$random返回一个签名的32位整数; $urandom和$urandom_range返回未签名的32位整数. ii)$random的随机数生成器在 ieee中STD 1800-2012 .使用相同的种子,您将在任何SystemVerilog模拟器中获得完全相同的随机数序列.对于$urandom和$urandom_range而言,情况并非如此,其中随机数生成器的设计取决于EDA供应商. iii)每个线程都有其自己的随机数生成器,用于$urandom和$urandom_range,而在所有线程之间只有一个随机数生成器,即$random共享(即整个模拟只有一个).这确实很重要,因为为每个线程具有单独的随机数生成器,可帮助您改善称为随机稳定性的属性.假设您使用随机数发生器来
6 2023-11-17
编程技术问答社区