loader image
bitcoin
Bitcoin (BTC) $ 17,059.69 0.57%
ethereum
Ethereum (ETH) $ 1,291.76 0.26%
tether
Tether (USDT) $ 0.999053 0.20%
bnb
BNB (BNB) $ 291.08 3.65%
usd-coin
USD Coin (USDC) $ 0.997515 0.34%
binance-usd
Binance USD (BUSD) $ 0.999903 0.12%
xrp
XRP (XRP) $ 0.391105 3.06%
dogecoin
Dogecoin (DOGE) $ 0.100213 4.51%
cardano
Cardano (ADA) $ 0.317354 0.74%
matic-network
Polygon (MATIC) $ 0.922157 0.34%
polkadot
Polkadot (DOT) $ 5.59 2.92%
staked-ether
Lido Staked Ether (STETH) $ 1,277.18 0.17%
okb
OKB (OKB) $ 22.15 1.78%
litecoin
Litecoin (LTC) $ 76.44 1.02%
shiba-inu
Shiba Inu (SHIB) $ 0.000009 0.27%
dai
Dai (DAI) $ 0.998596 0.30%
tron
TRON (TRX) $ 0.0544 1.02%
solana
Solana (SOL) $ 13.71 1.11%
uniswap
Uniswap (UNI) $ 5.98 2.82%
avalanche-2
Avalanche (AVAX) $ 13.10 0.16%
chainlink
Chainlink (LINK) $ 7.63 0.34%
wrapped-bitcoin
Wrapped Bitcoin (WBTC) $ 17,013.26 0.91%
leo-token
LEO Token (LEO) $ 3.77 2.99%
cosmos
Cosmos Hub (ATOM) $ 10.30 1.64%
ethereum-classic
Ethereum Classic (ETC) $ 19.72 2.32%
the-open-network
The Open Network (TON) $ 1.78 0.85%
monero
Monero (XMR) $ 144.08 1.10%
stellar
Stellar (XLM) $ 0.087942 1.45%
bitcoin-cash
Bitcoin Cash (BCH) $ 110.27 1.24%
quant-network
Quant (QNT) $ 123.86 0.73%
algorand
Algorand (ALGO) $ 0.245042 0.09%
crypto-com-chain
Cronos (CRO) $ 0.065126 0.86%
filecoin
Filecoin (FIL) $ 4.56 2.25%
near
NEAR Protocol (NEAR) $ 1.75 2.00%
apecoin
ApeCoin (APE) $ 3.93 0.90%
vechain
VeChain (VET) $ 0.019292 0.31%
hedera-hashgraph
Hedera (HBAR) $ 0.04897 3.08%
flow
Flow (FLOW) $ 1.11 1.48%
internet-computer
Internet Computer (ICP) $ 4.18 0.70%
terra-luna
Terra Luna Classic (LUNC) $ 0.000181 10.28%
elrond-erd-2
MultiversX (Elrond) (EGLD) $ 43.56 0.66%
eos
EOS (EOS) $ 0.937256 0.73%
frax
Frax (FRAX) $ 0.996675 0.35%
trust-wallet-token
Trust Wallet (TWT) $ 2.37 14.82%
the-sandbox
The Sandbox (SAND) $ 0.603068 2.10%
tezos
Tezos (XTZ) $ 1.04 1.77%
aave
Aave (AAVE) $ 65.13 0.91%
theta-token
Theta Network (THETA) $ 0.918174 4.30%
chiliz
Chiliz (CHZ) $ 0.165541 0.60%
huobi-token
Huobi (HT) $ 6.74 1.07%
WhatsApp Destek
Pseudorandom

Pseudorandom sayılar, rastgele sayı üretici tarafından üretilen ancak incelendiğinde aralarında kolay kolay bir ilişki bulunamayan sayılardır. Bir algoritma veya fonksiyon bu tarz sayılar üretebiliyorsa bu algoritmaya Pseudorandom Generator adı verilmektedir. Üretilen bu sayılar genellikle rastgelelik testlerinden başarıyla geçen sayılardır. Yani sayıların arasında görünürde bir bağlantı yoktur ancak bu sayıları üreten fonksiyon veya algoritmaya göre bu sayılar aslında rastgele sayılar değildir.
PRG’ler simülasyonlar (örn. Monte Carlo yöntemi için), elektronik oyunlar (örn. Prosedürel üretim için) ve kriptografi gibi uygulamaların merkezinde yer alır. Kriptografik uygulamalar, oluşturulan sayı çıktılarının tahmin edilemez olmasını gerektirir ve çoğu kriptografik uygulama karmaşık bir şekilde bu sayıları seçen PRG’lere ihtiyaç duymaktadır.
Pseudorandom Üreticisi (PRG)
Pseudorandom üreticisi (PRG), deterministik cihazlarda rastgele sayı dizileri oluşturmak için kullanılmaktadır. Bu noktada tüm bilgisayar algoritmalarının deterministik bir yapıda olduğu bilinmelidir. Pseudorandom üreticisi, yalnızca birkaç bit içeren gizli anahtarlardan oluşturulan verileri kullanarak birçok veri bloğunun şifrelenmesine seçenek sağlamaktadır.
Pseudorandom üreticisi aynı zamanda tahmin edilemez olmalıdır. PRG’den önceki çıktı bitlerini aldıktan sonra, bir sonraki çıktı bitini ihmal edilemeyecek kadar 0,5’ten yüksek bir olasılıkla tahmin edebilecek herhangi bir verimli algoritma olmamalıdır.
Pseudorandom üreticisi, kriptografide (örneğin, blok şifrelerin uygulanması için) yaygın olarak kullanılan sahte rasgele işlevler ve permütasyonlar oluşturmak için kullanılmaktadır.
Pseudorandom Üreticisi (PRG) Uygulaması
Pseudorandom üreticisi günümüzde, çoğu işletim sisteminde (örneğin Linux’ta /dev/random) ve çeşitli programlama dilleri için birçok kitaplıkta uygulanmaktadır. Genel olarak ise davranışları benzerlik göstermektedir. İlk adımında algoritma bazında harici bilgilere (örneğin, geçerli saat veya sıcaklık) dayalı olarak jeneratörün dahili durumunu başlatmaktadır. Ardından ise jeneratörün çalıştığı süre boyunca durumun tüm baytları karıştırılmaktadır. Değişiklikler, çeşitli harici ve rastgele girdi verilerine, kullanıcının klavye ve fareyi kullanma sıklığı ve yolu, ağ trafiği, donanım kesintileri ve algoritmanın çalıştığı deterministik ortamın dışından gelen diğer bilgi türlerine dayanmaktadır.
Pseudorandom üreticisi algoritması, dahili durumunu sürekli olarak değiştirmektedir. Dahili durum daha sonra mümkün olduğunca rastgele olması gereken çıktı dizilerini oluşturmak için kullanılmaktadır. Durumun tüm değişiklikleri, üretilen çıktı verilerinin dizi analizine karşı mümkün olan en iyi korumayı sağlaması beklenen bir şekilde gerçekleştirilmektedir.
Pseudorandom Üreticisi (PRG) Çıktı Kalitesi
Pseudorandom üreticisi tarafından yerine getirilmesi gereken gereksinimleri tanımlayan birçok standart bulunmaktadır. Örnek olarak, Amerikan Ulusal Standartlar ve Teknoloji Enstitüsü, NIST SP 800-90 gibi çeşitli normların yazarıdır.
Pseudorandom üreticisi, kalitesini değerlendirmek için kullanılabilecek birçok farklı istatistiksel test vardır. Alınan dizilerin rastgele ve tahmin edilemez olup olmadığını kontrol etmektedirler. Bazı istatistiksel test örnekleri şunları içermektedir:
Üretilen dizideki 1 bit sayısı 0 bit sayısına benzer,
Üretilen dizideki 00 çift sayısı, tüm bitlerin dörtte birine eşit veya daha az eşittir,
En uzun sıfırlar veya birler dizisinin uzunluğu, matematiksel tahminine benzer.