GNU/Linux >> Belajar Linux >  >> Linux

Cara menentukan proses mana yang menggunakan berapa banyak entropi dari /dev/urandom

Jawaban singkatnya adalah 0, karena entropi tidak dikonsumsi.

Ada kesalahpahaman umum bahwa entropi dikonsumsi — bahwa setiap kali Anda membaca bit acak, ini menghilangkan beberapa entropi dari sumber acak. Ini salah. Anda tidak "mengkonsumsi" entropi. Ya, dokumentasi Linux salah.

Selama siklus hidup sistem Linux, ada dua tahap:

  1. Awalnya, entropi tidak cukup. /dev/random akan memblokir sampai dianggap telah mengumpulkan cukup entropi; /dev/urandom dengan senang hati memberikan data entropi rendah.
  2. Setelah beberapa saat, entropi yang cukup ada di kumpulan generator acak. /dev/random memberikan tingkat palsu "daun bawang entropi" dan memblokir sesekali; /dev/urandom dengan senang hati memberikan data acak berkualitas crypto.

FreeBSD melakukannya dengan benar:di FreeBSD, /dev/random (atau /dev/urandom , yang merupakan hal yang sama) memblokir jika tidak memiliki cukup entropi, dan setelah itu, ia terus memuntahkan data acak. Di Linux, tidak ada /dev/random maupun /dev/urandom adalah hal yang berguna.

Dalam praktiknya, gunakan /dev/urandom , dan pastikan saat Anda menyediakan sistem bahwa kumpulan entropi diumpankan (dari disk, aktivitas jaringan dan mouse, dari sumber perangkat keras, dari mesin eksternal, …).

Meskipun Anda dapat mencoba membaca berapa banyak byte yang dapat dibaca dari /dev/urandom , ini sama sekali tidak ada gunanya. Membaca dari /dev/urandom tidak menguras kumpulan entropi. Setiap konsumen menggunakan 0 bit entropi per satuan waktu yang ingin Anda sebutkan.


Linux
  1. Cara membuat kata sandi acak di linux menggunakan /dev/random

  2. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  3. Seberapa Portabel /dev/stdin, /dev/stdout Dan /dev/stderr?

  1. Bagaimana Cara Mengisi File Dengan Aliran Dari /dev/urandom Dengan Jumlah Baris Tertentu?

  2. Bagaimana cara mengetahui proses mana yang menggunakan ruang swap di Linux?

  3. Linux:Perbedaan antara /dev/console , /dev/tty dan /dev/tty0

  1. Linux:Perbedaan Antara /dev/console , /dev/tty Dan /dev/tty0?

  2. Bagaimana Linux menggunakan /dev/tty dan /dev/tty0

  3. Apakah salah menautkan /dev/random ke /dev/urandom di Linux?