Генерация случайного токена

# OAuthProvider::generateToken

(PECL OAuth >= 1.0.0)

OAuthProvider::generateToken — Генерация случайного токена

### Описание

final public static function OAuthProvider::generateToken(int `$size`, bool `$strong` = `false`): string

Генерирует строку псевдо-случайных байт.

### Список параметров

`size`
  Длина токена в байтах.
`strong`
  Установка в `true` приведёт к использованию `/dev/random`, в противном случае будет использован неблокирующий `/dev/urandom`. В Windows данный параметр будет проигнорирован.

### Возвращаемые значения

Сгенерированный токен в виде строки байт.

### Ошибки

Если параметр `strong` задан как `true`, то будет выдана ошибка уровня `E_WARNING`, в случае, если для заполнения оставшихся случайных байт (например, если было найдено недостаточно случайных данных) будет использована старая реализация rand()

### Примеры

Пример #1 Пример использования OAuthProvider::generateToken()

    <?php
    $p = new OAuthProvider();

    $t = $p->generateToken(4);

    echo strlen($t),  PHP_EOL;
    echo bin2hex($t), PHP_EOL;

    ?>

Вывод приведённого примера будет похож на:

    4
    b6a82c27

### Примечания

> Замечание: Если в системе недостаточно случайных данных, то для генерации недостающих байт эта функция будет использовать обычную функцию rand().

### Смотрите также

- openssl_random_pseudo_bytes() - Генерирует псевдослучайную последовательность байт
- mcrypt_create_iv() - Создаёт инициализирующий вектор (Initialization Vector или IV) из случайного источника

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open