Bilgisayarlar Gerçekten Rastgele Sayı Üretebilir mi?
Hepimiz hayatımızın bir noktasında dijital bir kura aracına, bir oyundaki zar animasyonuna veya Spotify'ın "Karışık Çal" tuşuna basmışızdır. Sonuçların tamamen rastgele ve adil olduğuna inanırız. Peki ya size, karşınızda duran o gelişmiş bilgisayarların, telefonların ve hatta yapay zekaların kendi başlarına asla rastgele bir sayı üretemeyeceğini söylesek?
Evet, yanlış duymadınız. Bilgisayarlar, özleri gereği "aptal" ama inanılmaz hızlı hesap makineleridir. Bir bilgisayara "Bana rastgele bir şey söyle" diyemezsiniz, çünkü bir makinenin doğasında "rastgelelik" diye bir kavram yoktur; sadece mantık, kurallar ve algoritmalar vardır. Kulağa bir bilim kurgu paradoksu gibi gelse de, dijital dünyada şansın nasıl yaratıldığını anlamak, teknolojiye bakış açınızı tamamen değiştirecek.
"Sözde" Rastgelelik: Pseudo-Random Numbers (PRNG)
Bir bilgisayarın tamamen öngörülebilir bir makine olması, yazılımcıları yıllar boyunca zorladı. Madem bilgisayar rastgele davranamıyor, o zaman onu rastgele davranıyormuş gibi yapacak bir matematiksel formül bulmalıydılar. İşte buna bilgisayar biliminde Pseudo-Random Number Generator (PRNG), yani "Sözde Rastgele Sayı Üreticisi" denir.
Sistem şu şekilde işler: Bilgisayar, hesaplamaya başlamak için bir başlangıç noktasına (buna seed yani tohum denir) ihtiyaç duyar. Yazılımcılar genellikle bilgisayarın o anki milisaniye cinsinden saatini tohum olarak kullanırlar. Düşünün, siz "Çarkı Çevir" butonuna bastığınız o spesifik milisaniye, devasa ve karmaşık bir matematiksel denklemin içine atılır. Çıkan sonuç o kadar karışık ve o kadar düzensizdir ki, insan beyni bunu "Tamamen şans eseri oldu!" olarak algılar.
"Aslında bir bilgisayarın attığı zarın sonucu, siz zarı atmadan önce bellidir. Sadece formül o kadar karmaşıktır ki, insan beyninin bunu önceden hesaplaması imkansızdır."
Eğer Formülü Biliyorsak, Şifreleri Hackleyebilir miyiz?
Bu soru, siber güvenliğin en büyük temel taşlarından biridir. Eğer bir bilgisayarın rastgele şifre üretirken hangi "tohumu" (saati, dakikayı) kullandığını ve arkasındaki matematiksel formülü tam olarak bilirseniz, evet, teorik olarak bir sonraki rastgele sayının ne çıkacağını %100 doğrulukla tahmin edebilirsiniz.
1990'larda bazı uyanık hackerlar, online poker sitelerindeki "sözde rastgele" kart dağıtma algoritmalarını çözmüşlerdi. Sunucunun saatini senkronize ederek, dağıtılacak tüm kağıtları önceden bilip milyonlarca dolar kazandılar. İşte bu yüzden günümüzde bankalar ve güvenlik sistemleri, çok daha farklı bir "Rastgelelik" kullanmak zorundadır.
Gerçek Rastgelelik (True Randomness) Nasıl Sağlanır?
Bankacılık şifreleri veya askeri şifrelemeler için PRNG yeterli değildir. Hackerların asla tahmin edemeyeceği, doğanın kendi kaosu kullanılarak Gerçek Rastgele Sayı Üreticileri (TRNG) geliştirilmiştir.
Bir TRNG, matematiğe değil, fiziksel dünyadaki karmaşaya bakar:
- Atmosferik gürültü (Radyo dalgalarındaki cızırtılar)
- İşlemci sıcaklığındaki mikro dalgalanmalar
- Radyoaktif bozunma süreçleri
- Cloudflare gibi dev şirketlerin kullandığı Lav Lambaları Duvarı! Merkez ofisteki lav lambalarının balon hareketleri kamera ile taranarak şifre üretilir.
Peki Ya Bizim Çarkımız?
sanscarkicevir.com'da kullandığımız karar çarkı ve zarlar, modern tarayıcıların sunduğu yüksek kaliteli Math.random() fonksiyonlarını kullanır. Günlük eğlence, çekilişler ve "Akşama ne yesem?" gibi kararlar için bu sistem mükemmel çalışır. Fiziksel bir zarın üretim hatası yüzünden hep 6 gelme ihtimali varken, sitemizdeki dijital zarın hileli olma ihtimali (özel modları açmadığınız sürece) matematiksel olarak sıfırdır.