'Authorization', 'hmac' => 'Authorization', ]; /** * -------------------------------------------------------------------- * Unused Token Lifetime * -------------------------------------------------------------------- * Determines the amount of time, in seconds, that an unused token can * be used. */ public int $unusedTokenLifetime = YEAR; /** * -------------------------------------------------------------------- * HMAC secret key byte size * -------------------------------------------------------------------- * Specify in integer the desired byte size of the * HMAC SHA256 byte size */ public int $hmacSecretKeyByteSize = 32; /** * -------------------------------------------------------------------- * HMAC encryption Keys * -------------------------------------------------------------------- * This sets the key to be used when encrypting a user's HMAC Secret Key. * * 'keys' is an array of keys which will facilitate key rotation. Valid * keyTitles must include only [a-zA-Z0-9_] and should be kept to a * max of 8 characters. * * Each keyTitle is an associative array containing the required 'key' * value, and the optional 'driver' and 'digest' values. If the * 'driver' and 'digest' values are not specified, the default 'driver' * and 'digest' values will be used. * * Old keys will are used to decrypt existing Secret Keys. It is encouraged * to run 'php spark shield:hmac reencrypt' to update existing Secret * Key encryptions. * * @see https://codeigniter.com/user_guide/libraries/encryption.html * * @var array|string * * NOTE: The value becomes temporarily a string when setting value as JSON * from environment variable. * * [key_name => ['key' => key_value]] * or [key_name => ['key' => key_value, 'driver' => driver, 'digest' => digest]] */ public $hmacEncryptionKeys = [ 'k1' => [ 'key' => '', ], ]; /** * -------------------------------------------------------------------- * HMAC Current Encryption Key Selector * -------------------------------------------------------------------- * This specifies which of the encryption keys should be used. */ public string $hmacEncryptionCurrentKey = 'k1'; /** * -------------------------------------------------------------------- * HMAC Encryption Key Driver * -------------------------------------------------------------------- * This specifies which of the encryption drivers should be used. * * Available drivers: * - OpenSSL * - Sodium */ public string $hmacEncryptionDefaultDriver = 'OpenSSL'; /** * -------------------------------------------------------------------- * HMAC Encryption Key Driver * -------------------------------------------------------------------- * THis specifies the type of encryption to be used. * e.g. 'SHA512' or 'SHA256'. */ public string $hmacEncryptionDefaultDigest = 'SHA512'; }