OAuthProvider::generateToken
ランダムなトークンを生成する
説明
final public static string OAuthProvider::generateToken(int $size
, bool $strong
= false
)
パラメータ
-
size
-
トークンの長さ。バイト単位で指定します。
-
strong
-
true
に設定すると、エントロピーとして /dev/random
を使います。
それ以外の場合は、ブロックされることのない /dev/urandom
を使います。
このパラメータは、Windows では無視されます。
戻り値
生成されたトークンをバイト文字列で返します。
エラー / 例外
strong
パラメータが true
のときは、
(十分な量の初期ランダムデータがなかったなどの理由で)
代替 rand 実装を使うことになった場合に
E_WARNING
レベルのエラーが発生します。
例
例1 OAuthProvider::generateToken の例
<?php
$p = new OAuthProvider();
$t = $p->generateToken(4);
echo strlen($t), PHP_EOL;
echo bin2hex($t), PHP_EOL;
?>
注意
注意:
十分な量のランダムデータがシステムから得られなかった場合、この関数は
PHP の rand 関数の実装を使って残りのバイトを埋めます。
参考
- openssl_random_pseudo_bytes
- mcrypt_create_iv