'U' harfi / dev / urandomda ne anlama geliyor?


87

/dev/randomOkumak engellemek için okurken, okurken bunu engelleyebileceğini biliyorum /dev/urandom.

Nerede mektup mu ubu işe geldin? Bu ne anlama geliyor?

Kullanıcı alanı? Blokaj? Mikro?

Güncelleme:

Sorunun ilk ifadeler dayanarak, yararlılığı üzerinde bazı tartışmalar olmuştur /dev/randomVS /dev/urandom. Bağlantı dev / urandom / hakkında mitler aşağıda üç kez yayınlanmıştır edilmiştir ve özetlenmiştir Bu yanıt soruya / dev / urandom vs rastgele kullanımı / dev / .


13
/dev/randomEngellemeyi kaldırmak, hangisinin engellemekte olduğu gibi.
Satō Katsura

3
Bölüm ve ayet?
Tom Hale,

11
Artık bir /dev/randomşekilde daha /dev/urandomeski olan ve artık kullanılmayan ve kullanım durumlarının büyük çoğunluğu için fikir /dev/urandom artık tercih ediliyor .
David Schwartz

@SatoKatsura Kaynak? Tom'un cevabı senin cevabınla çelişiyor.
noɥʇʎԀʎzɐɹƆ

İşte yedek @DavidSchwartz 'ın yorumunu içeren siteye bir link. 2uo.de/myths-about-urandom
Walter

Yanıtlar:


86

Sınırsız.

Linux'ta, çekirdek fonksiyonları adında karşılaştıran random_readve random_read_unlimited mektubun etimoloji gösterir uiçinde urandomolduğunu unlimited.

Bu, 114. satırla onaylanır :

/ Dev / urandom cihazı bu limite sahip değildir [...]

Güncelleme:

Linux için hangisinin önce geldiğine /dev/randomya da /dev/urandom@ Stéphane Chazelas , orijinal yamayla birlikte görevini verdi ve @StephenKitt , ikisinin de aynı anda tanıtıldığını gösterdi .


7
Öyleyse neden /dev/randomadlandırılmadı /dev/lrandom? :)
Satō Katsura

13
Tarihi. İlk başta yalnızca sınırlı / engelleme sürümü mevcuttu. Ve benzer "sınırlı olmayan" işlevi de denir random_read:)
Tom Hale

10
Bağlantılardan birini Wikipedia üzerinden buldum, ancak Wikipedia'dan alıntı yapmak yerine doğrudan kaynaktan alıntı yapıyorum. Bir şey google üzerinden bulma ve google'dan alıntı yapmamaya benzer ... StackExchange'ten alıntı yapma hakkında bir şeyler öğrenmezsem düşünür müyüm?
Tom Hale,

5
@TomHale randomv. ' Nin tarihsel argümanı, lrandomher ikisinden de aynı şeyi yapmaz randomve aynı anda Linux çekirdeğinde urandomtanıtılır .
Stephen Kitt

7
Ayrıca bkz yama 1995 yılında orijinal uygulamanın yazar tarafından gönderilen USENET'teki
Stéphane Chazelas

18

Bahsettiğiniz hangi Unix sistemine bağlı.

FreeBSD'de, / dev / urandom ve / dev / random aynı cihazdır. U harfi şimdi geriye dönük uyumluluk için var olan tarihi bir miras. Başlangıçta, yeterince entropi toplanana kadar engeller ve bir daha asla engellemezler. Ayrıntılar için urandom hakkındaki Mitlere bakın.

Modern Linux dünyasında (çekirdek 4.8 ile başlayarak), her iki cihaz da aynı CSPRNG'den yararlanır, bu nedenle tek fark bazı insanların bir saldırı varlığında spekülasyon yaptıklarıdır. Bu saldırı FTL [Light'tan daha hızlı] yolculuğu gibi. Tahmin etmesi kolay, aslında tasarlaması zor.

TLDR sadece / dev / urandom kullanmaktır.


2
Bağlantınızdan, şunu not etmek ilginç:FreeBSD does the right thing: they don't have the distinction between /dev/random and /dev/urandom, both are the same device. At startup /dev/random blocks once until enough starting entropy has been gathered. Then it won't block ever again.
Tom Hale,

-5

Üniforma. Rastgele sayılar eşit şekilde 0 ile 1 arasında dağılmıştır. Poisson veya Normal / Gaussian gibi yoğun bir dağılıma karşılık düz bir dağılım ...


3
Bunun için kaynağınız var mı?
GnP

7
Bu kesinlikle doğru değildir - /dev/randomve /dev/urandomher ikisi de aynı dağıtımı sağlar ve herhangi bir gerçek anlamda 0 ile 1 arasında düzgün
Chris

Üzgünüm ... muhtemelen kullandığım başka bir dile göre (R ya da başka bir şey)
bbneo
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.