AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[random-number-generator](server)

Martin Hope
Amandasaurus
Asked: 2020-06-24 04:32:33 +0800 CST

使用 bash 的“$RANDOM”对输入行进行可预测的随机改组不起作用

  • 1

我有大约 100 行的输入。我想“随机”洗牌,但我想控制它。即我想播种随机数生成器以始终产生相同的排序。

我以为我可以使用bash(1)'s $RANDOM变量,但这总是会产生不同的输出。怎么了?

RANDOM=1 cat myfile | while read LINE ; do echo "$RANDOM $LINE" ; done | sort
bash random-number-generator
  • 1 个回答
  • 50 Views
Martin Hope
Max1
Asked: 2020-04-13 10:00:54 +0800 CST

SSL/TLS 可以耗尽我服务器的熵池吗?

  • 1

我试图对 SSL/TLS 的工作原理有所了解,并查看了TLS 1.2 和 TLS 1.3 中的TLS 握手,以及来自服务器的随机数在哪里发挥作用。由于每个 TLS 请求都会在熵方面产生成本,因为需要派生加密密钥,我想知道为什么服务器不会很快耗尽熵。

首先,我查看了带有 RSA 密钥交换
的 TLS 1.2:根据TLS 1.2 标准第 6 节server random,主密钥的派生源在非常情况下是32 字节长。我希望服务器从/dev/random.

接下来,我查看了带有临时 Diffie-Hellman 密钥交换的 TLS 1.3:
客户端和服务器都生成自己的私有ECDHE 参数集。之后他们做了他们的 Diffie-Hellman 的事情并获得了一个共享的秘密。此共享密钥用于派生用于加密的对称密钥和用于计算 HMAC 以检查消息完整性的密钥。因此,我假设我的加密质量取决于 ECDHE 参数的质量。如果我使用曲线 NIST P-256,那么根据这个答案,我至少需要一个 128 位的种子。

总结:
在我的 TLS 1.2 示例中,服务器需要生成 256 位的熵,而在 1.3 示例中,服务器需要生成 128 位的熵。我假设必要的位取自/dev/random. 与单次 TLS 握手所需的位数相比4096,返回的熵池的最大大小似乎非常小。cat /proc/sys/kernel/random/poolsize除非我的计算不正确,否则假设熵池没有快速重新填充,我将完全耗尽我的熵池,只有 16 个 TLS 1.2 请求。

问题:

  1. 如果我的服务器收到大量 TLS 请求,它会耗尽熵吗?或者它是否可以从 TLS 请求中以某种方式补充熵池,可能是通过使用数据包来回传输的时间或类似的东西。
  2. 假设我想保存一些熵。与 TLS 1.2 相比,具有 256 位 ECC 的 TLS 1.3 在熵方面的成本会更低吗?在上面的示例中,我发现 TLS 1.2 的熵成本为 256 位,而 TLS 1.3 仅为 128 位。
  3. Client Hello如果有人在没有建立真正连接的情况下发送大量消息,他会以这种方式耗尽我的熵池吗?我会假设单个Client Hello在熵方面并没有给我太多,但会给服务器带来很大的负担,因为它需要用Server Hello包含 TLS 1.2 中的 32 字节随机数据的 a 来回答。
ssl random-number-generator entropy-pool
  • 1 个回答
  • 684 Views
Martin Hope
Florent
Asked: 2016-04-15 23:47:05 +0800 CST

EJBCA 如何生成私钥

  • 2

我正在寻找 EJBCA 用于生成一般私钥的方法(CA、Sub-Ca、证书......)。

例如,假设您想要 RSA 2048 密钥大小。生成过程是否全部在 EJBCA 应用程序中完成?他们是否依赖基于 Java EE 的应用服务器随机生成(在我的例子中是 Jboss)?本地实现的随机数生成是否存在链接,例如在 Linux /dev/(u)random 上?

熵的水平是多少,他们保证一个吗?

rsa pki random-number-generator entropy-pool
  • 1 个回答
  • 870 Views
Martin Hope
Mediocre Gopher
Asked: 2012-07-12 07:52:14 +0800 CST

Nginx(openresty)生成随机数

  • 4

我在服务器上设置了 openresty(包含 lua 模块的 nginx 包),我正在尝试创建一个脚本,该脚本具有在用户浏览器上设置 cookie 的特定几率。我的代码如下所示:

    location =/index.php {
        set $random_num 0;

        rewrite_by_lua '

                marth.randomseed(1);
                nvx.var.random_num = math.random(0,3);

        ';

        add_header Set-Cookie "random_num=$random_num; path=/; domain=...com;";
    }

我知道我的随机种子函数实际上并不是非常随机,但我想我稍后会处理它。目前我只是想让 nginx 设置一个随机数,但这样做会产生这个错误:

2012/07/11 11:27:20 [error] 5492#0: *44 lua handler aborted: runtime error: [string "rewrite_by_lua"]:3: attempt to ind
ex global 'marth' (a nil value)
stack traceback:

谁能告诉我我做错了什么,以及是否有任何其他方法可以在 nginx 中获取随机数?

nginx lua random-number-generator
  • 1 个回答
  • 7993 Views
Martin Hope
Simon Lindgren
Asked: 2010-03-15 13:40:50 +0800 CST

使用地址空间布局随机化时的 Munin“可用熵”

  • 3

刚刚在我的 gentoo 服务器(强化配置文件)上配置了Munin以进行统计记录,我注意到我的“可用熵”始终在 200-300 范围内。这似乎太低了,所以我使用命令手动检查了它

$ cat /proc/sys/kernel/random/entropy_avail
3544

奇怪的。Munin 中的值始终非常低,并且在手动检查时几乎被填满。在考虑了一段时间后,我得出的结论是,问题可能是我使用了地址空间布局随机化,它在运行命令/程序时使用了熵。由于 Munin 运行了一大堆程序,所有的熵都用完了,然后 Munin 测量有多少熵,从而导致低值。

有人对这个有经验么?如何避免这种情况?

linux munin linux-kernel random-number-generator entropy-pool
  • 3 个回答
  • 1543 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve