Класс Security
Библиотека безопасности содержит служебные методы, связанные с безопасностью.
Подробное описание методов
_checkKeyисходный код protected static
_checkKey( string $key , string $method )
Проверка ключа шифрования на соответствие длине.
Параметры
- строка
$key - Ключ для проверки.
- строка
$method - Метод, для которого проверяется ключ.
Исключения
InvalidArgumentExceptionКогда длина ключа не соответствует 256 битам/32 байтам
_constantEqualsисходный код protected static
_constantEquals( string $hmac , string $compare )
Сравнение, устойчивое к атакам с временным анализом, отдающее предпочтение собственным реализациям PHP.
Параметры
- строка
$hmac - Хэш MAC из зашифрованного текста, который расшифровывается.
- строка
$compare - Хэш MAC для сравнения.
Возвращаемое значение
booleanbool
См. также
https://github.com/resonantcore/php-future/decryptисходный код public static
decrypt( string $cipher , string $key , string|null $hmacSalt null )
Расшифровать значение с использованием AES-256.
Параметры
- строка
$cipher - Зашифрованный текст для расшифровки.
- строка
$key - Ключ длиной 256 бит/32 байта, используемый в качестве ключа шифра.
- строка|null
$hmacSaltнеобязательно null - Соль, используемая для процесса HMAC. Оставьте значение null для использования Security.salt.
Возвращаемое значение
stringРасшифрованные данные. Любые заключительные нулевые байты будут удалены.
Исключения
InvalidArgumentExceptionПри неверных данных или ключе.
encryptисходный код public static
encrypt( string $plain , string $key , string|null $hmacSalt null )
Зашифровать значение с использованием AES-256.
Примечание Вы не можете правильно зашифровать/расшифровать данные с заключительными нулевыми байтами. Любые заключительные нулевые байты будут удалены при расшифровке из-за того, как PHP дополняет сообщения нулями перед шифрованием.
Параметры
- строка
$plain - Значение для шифрования.
- строка
$key - Ключ длиной 256 бит/32 байта, используемый в качестве ключа шифра.
- строка|null
$hmacSaltнеобязательно null - Соль, используемая для процесса HMAC. Оставьте значение null для использования Security.salt.
Возвращаемое значение
stringЗашифрованные данные.
Исключения
InvalidArgumentExceptionПри неверных данных или ключе.
engineисходный код public static
engine( object $instance null )
Получение реализации шифрования на основе загруженных расширений.
Вы можете использовать этот метод, чтобы принудительно выбрать между реализациями mcrypt/openssl/custom.
Параметры
- объект
$instanceнеобязательно null - Экземпляр шифрования для использования.
Возвращаемое значение
objectЭкземпляр шифрования.
Исключения
InvalidArgumentExceptionЕсли нет совместимого расширения шифрования.
hashисходный код public static
hash( string $string , string|null $type null , mixed $salt false )
Создание хэша строки с использованием указанного метода.
Параметры
- строка
$string - Строка для хэширования
- строка|null
$typeнеобязательно null - Алгоритм хэширования для использования (например, sha1, sha256 и т. д.). Может быть любым допустимым алгоритмом, включенным в список, возвращаемый hash_algos(). Если значение не передано, используется тип, указанный в
Security::$hashType. - mixed
$saltнеобязательно false - Если true, автоматически добавляет значение соли приложения к $string (Security.salt).
Возвращаемое значение
stringХэш
Ссылка
http://book.cakephp.org/3.0/en/core-libraries/security.html#hashing-datarijndaelисходный код public static
rijndael( string $text , string $key , string $operation )
Шифрует/расшифровывает текст с помощью заданного ключа с использованием метода rijndael.
Параметры
- строка
$text - Зашифрованная строка для расшифровки, обычная строка для шифрования
- строка
$key - Ключ, используемый в качестве ключа шифрования для зашифрованных данных.
- строка
$operation - Операция, которую нужно выполнить, шифрование или расшифрование
Возвращаемое значение
stringЗашифрованная/расшифрованная строка
Исключения
InvalidArgumentExceptionПри возникновении ошибок.
saltисходный код public static
salt( string|null $salt null )
Получение или установка соли HMAC, используемой для операций шифрования/расшифровки.
Параметры
- строка|null
$saltнеобязательно null - Соль, используемая для операций шифрования. Если null, возвращает текущую соль.
Возвращаемое значение
stringТекущая настроенная соль
setHashисходный код public static
setHash( string $hash )
Установка метода хэширования по умолчанию для объекта Security. Это влияет на все объекты, использующие Security::hash().
Параметры
- строка
$hash - Метод для использования (sha1/sha256/md5 и т. д.)
См. также
Cake\Utility\Security::hash()Краткое описание свойств
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.1/class-Cake.Utility.Security.html