Makinemin RNG donanım desteği olup olmadığını nasıl bilebilirim?


10

Entropi havuzu problemiyle ilgili bir bloga rastladım ve RNG adında özel bir donanım olduğunu öğrendim. Bunu okudum çekirdek RNG sayfa ancak sunucum donanım RNG'sini destekleyip desteklemediğini bulmak için bir yol olup olmadığını hala merak ediyorum.

Yanıtlar:


7

İki olası "gerçek" donanım RNG türü vardır: bir CPU tabanlı olan ve bir yonga kümesi veya PCI tabanlı olan. (Ayrıca birkaç USB donanım RNG'si var, ancak bunlardan birini fark etmiş olacağınızdan şüpheleniyorum ;-)

Aşağıdaki Linux özgüdür.

CPU tabanlı olanlar için kontrol edebilirsiniz. /proc/cpuinfo ipuçları için, çekirdeğinizin onları algılayacak kadar yeni olduğunu varsayalım. Intel işlemcileri için bayrak rdrand, burada daha fazla bilgi: https://unix.stackexchange.com/questions/43539/what-do-the-flags-in-proc-cpuinfo-mean

Çipset olanlar için, eğer varsa CONFIG_HW_RANDOM çekirdeğinizde etkin ve satıcı başına destek CONFIG_HW_RANDOM_INTEL ..._AMD Öyleyse açılış iletileriniz bulunup bulunmadığını göstermelidir (örneğin, "Intel 82802 RNG algılandı"). Modüller halinde mevcutsa deneyebilirsiniz ( modprobe intel-rng ) yüklenip yüklenmediğini görmek için, "Böyle bir aygıt yok", algılanan donanım olmadığını gösterir. Tüm sürücüler sürekli olarak "RNG algılandı" veya "algılanmadı" yazmıyorlar, bu nedenle kaynakları okumayı bırakabilirsiniz ( /drivers/char/hw_random/ çekirdek kaynağının dizini).

Diğerleri için kontrol edebilirsiniz lspci -v neyin tanındığını görmek için.


1

Senin bulmak için RNG aşağıdakileri yapın:

1) Adında "rng" olan tüm modülleri listeleyin:

cat /proc/modules | grep -i rng

2) Eğer varsa, böyle bir sonuç alacaksınız.

tpm_rng 16384 0 - Live 0xffffff......

3) kullanarak etkinleştirmek veya yüklemek emin olun modprobe şu anda:

modprobe tpm_rng

GÜNCELLEŞTİRME : Benim için (1) adımı ile ilgili olarak modprobe -l ubuntu 16’da çalışmıyordu, bu yüzden “/ proc / modülleri” içine bakmaya çalıştım, ancak eğer sizinle çalışırsa o zaman sorun yok. /lib/modules/$(uname -r) böylece daha iyi olan aşağıdakileri de kullanabilirsiniz:

cat /lib/modules/$(uname -r)/modules.dep | grep -i rng.*.ko
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.