rastgele sayı üretme

Python SystemRandom ile Rastgele Sayı Üretmek

Python’da rastgele sayı üretebilmek için halihazırda random modülünden faydalanabiliyoruz. Bu modül rastgele sayı üretirken öncelerden Mersenne Twister adlı bir yöntem kullanıyormuş.[1] Dökümantasyonunda belirtildiğine göre 53 bit kesinlikte float türünde rastgele sayılar üretebiliyormuş.

Buraya kadar bakınca güzel gözüküyor. Şimdi bir adım öteye gidelim. Bu yöntem çok kullanılmakta ve Python altında hızlı çalışması için C ile yazılmış.

Bu algoritmanın periyodunun uzun olması ile, verdiği sayının güvenilirliği arasında bir orantı olduğu [2]’de belirtiliyor. Yalnız rastgelelik testlerinden bazılarında başarısız olduğu da yine [2]’de belirtilmiş. Ayrıca [1]’de de şifreleme uygulamalarında kullanılmaması gerektiği konusunda kullanıcılar uyarılıyor. Bu durumda başka bir çözüme ihtiyacımız olacak.