unsign
string public \Bitrix\Main\Security\Sign\TimeSigner::unsign( string $signedValue, string|null $salt = null );
Нестатический метод проверяет подпись и время жизни сообщения. Если оба параметра - OK, то возвращает оригинальное сообщение.
Параметры
| Параметр | Описание | Версия |
|---|---|---|
| $signedValue | Подписанное значение, должно быть в формате: {message}{separator}{expired timestamp}{separator}{signature}. | |
| $salt | Соль, если необходимо. |
Исключения
Примеры
$signer = new TimeSigner;
// Sing message for 1 second
$signedValue = $signer->sign('test', '+1 second');
// Or sign with expiring on some magic timestamp (e.g. 01.01.2030)
$signedValue = $signer->sign('test', 1893445200);
// Get original message with checking
echo $signer->unsign($signedValue);
// Output: 'test'
// Try to unsigning not signed value
echo $signer->unsign('test');
//throw BadSignatureException with message 'Separator not found in value'
// Or with invalid sign
echo $signer->unsign('test.invalid_sign');
// Or invalid salt
echo $signer->unsign($signedValue, 'invalid_salt');
//throw BadSignatureException with message 'Signature does not match'
// Or expired lifetime
echo $signer->unsign($signedValue);
//throw BadSignatureException with message 'Signature timestamp expired (1403039921 < 1403040024)'
© «Битрикс», 2001-2025, «1С-Битрикс», 2025
Пользовательские комментарии
Помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.