如何判断熵密钥何时过载?


10

我前面有几个带有egd的熵密钥,然后通过haproxy平衡所有负载。然后,我有许多使用haproxy服务IP作为熵网络源的客户端计算机。我不知道他们要求多少熵。

熵密钥可以产生有限量的可用熵。规范说至少约30 kbps。据我所知,熵密钥还无法查询所要求的数量。EGD协议似乎很难嗅发现该信息。客户可以请求可变数量的熵,而他们可能无法获得相同数量的熵。

有没有人找到一种简单的方法来衡量从熵密钥请求多少?

最好了解一下,以便能够计划何时需要其他密钥,并发现haywire客户。


什么熵密钥?它是硬件RNG吗?
休伯特·卡里奥

@HubertKario 是的。它由英国的Simtec Electronics制造。
詹姆斯·奥戈曼

Answers:


4

我想到的仅有的两件事是尝试测量您的熵服务器的响应时间(如果它不能跟上,则延迟会大大增加),或者池化/proc/sys/kernel/random/entropy_avail并监视您有多少熵(我假设即egd是使用/dev/random直接而不是硬件)。


ekeyd-egd-linux直接访问硬件(而AFAIK只能以这种方式工作)。不幸的是,我无法访问许多客户端,因此我无法确定其中有多少客户端没有得到他们所要求的信息熵。我认为我应该能够直接从单个密钥中请求一些熵,并按照您的建议检查提供它需要多长时间。那应该给我一些提示,至少它是否过载。
grifferz 2012年

2

看起来源tarball ekeyd具有用于提供ekey统计信息的munin插件。

即使您没有运行munin,我想也可以将脚本外推到可用于您的基础结构的东西中。

我想我们虽然都知道设备和软件的作者,所以可能值得推荐他们。:-)


AFAIK这只会暴露您可以从ekeydctl statssimtec已经确认的产品中获取的信息,不会告诉我我需要知道的内容-我已经问过他们了。:(我只是想知道别人做过的事情。
grifferz

0

尝试:

dd if=/dev/random of=/dev/null bs=1K count=1M

完成后,dd将报告读取带宽,因此您将知道所提供的熵量。您可以在服务器(与客户端断开连接)中运行它以测量熵产生,并可以在客户端中测量它们收到多少信息。

dd使用SIGUSR1信号杀死正在运行的进程将指示它报告其I / O统计信息,因此您无需等待它完成(请参阅参考资料man dd)。

另外,由于应从服务器读取熵(例如:nethogsplus netstat),因此客户端应增加下载带宽的使用量。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.