TimeSigner::unsign()
Сигнатура
public unsign(string $signedValue[, string|null $salt = null ]) : string
Описание
Простой пример:
$signer = new TimeSigner;
// Подписываем сообщение на 1 секунду
$signedValue = $signer->sign('test', '+1 second');
// Или подписываем с истечением на некоторую особую временную метку (например, 01.01.2030)
$signedValue = $signer->sign('test', 1893445200);
// Получаем исходное сообщение с проверкой
echo $signer->unsign($signedValue);
// Вывод: 'test'
// Попытка снять подпись с неподписанного значения
echo $signer->unsign('test');
//выбрасывает BadSignatureException с сообщением 'Separator not found in value'
// Или с неверной подписью
echo $signer->unsign('test.invalid_sign');
// Или неверная соль
echo $signer->unsign($signedValue, 'invalid_salt');
//выбрасывает BadSignatureException с сообщением 'Signature does not match'
// Или истёкший срок действия
echo $signer->unsign($signedValue);
//выбрасывает BadSignatureException с сообщением 'Signature timestamp expired (1403039921 < 1403040024)'
Параметры
$signedValue
string
$salt
string|null
= null
Возвращаемое значение
string
Исходный файл: source/main/lib/security/sign/timesigner.php:127

