array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'tr', ), 'this' => array ( 0 => 'function.openssl-random-pseudo-bytes.php', 1 => 'openssl_random_pseudo_bytes', ), 'up' => array ( 0 => 'ref.openssl.php', 1 => 'OpenSSL İşlevleri', ), 'prev' => array ( 0 => 'function.openssl-public-encrypt.php', 1 => 'openssl_public_encrypt', ), 'next' => array ( 0 => 'function.openssl-seal.php', 1 => 'openssl_seal', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'tr', 'path' => 'reference/openssl/functions/openssl-random-pseudo-bytes.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
openssl_random_pseudo_bytes — Yarı-rasgele bayt dizesi üretir
uzunluk
karakterlik bir dizge döndürür.
Ayrıca, yarı-rastgele baytları üretmek için kriptografik olarak güçlü bir
algoritma kullanılmışsa güçlü_sonuç
bağımsız değişkeninde
bu bilgi de döner. false
değeri nadirdir, ancak bazı sistemler bozulmuş
veya eski olabilir.
uzunluk
İstenen dizgenin uzunluğu. 2147483647
'den (dahil)
küçük, pozitif bir tamsayı olmalıdır. PHP, bu bağımsız değişkenden bir
pozitif tamsayı elde etmek için gerekli tür dönüşümünü yapacaktır.
güçlü_sonuç
Güçlü bir algoritma kullanılmışsa bu bağımsız değişkende true
döner.
Bir hata oluşursa bu değer null
olacaktır (örneğin, GPG parolası
kullanımı güvenlidir).
İşlem başarılı olursa üretilen dizge döner.
openssl_random_pseudo_bytes() başarısızlık durumunda bir Exception örneği oluşturur.
Sürüm: | Açıklama |
---|---|
8.0.0 |
güçlü_sonuç artık null olabiliyor.
|
7.4.0 |
İşlev artık başarısızlık durumunda false döndürmüyor, bunun yerine
bir Exception örneği oluşturuyor.
|
Örnek 1 - openssl_random_pseudo_bytes() örneği
<?php
for ($i = 1; $i <= 4; $i++) {
$bytes = openssl_random_pseudo_bytes($i, $cstrong);
$hex = bin2hex($bytes);
echo "Uzunluklar: Bayt: $i ve Onaltılık: " . strlen($hex) . PHP_EOL;
var_dump($hex);
var_dump($cstrong);
echo PHP_EOL;
}
?>
Yukarıdaki örnek şuna benzer bir çıktı üretir:
Uzunluklar: Bayt: 1 ve Onaltılık: 2 string(2) "42" bool(true) Uzunluklar: Bayt: 2 ve Onaltılık: 4 string(4) "dc6e" bool(true) Uzunluklar: Bayt: 3 ve Onaltılık: 6 string(6) "288591" bool(true) Uzunluklar: Bayt: 4 ve Onaltılık: 8 string(8) "ab86d144" bool(true)