SodiumEncrypter
extends AbstractEncrypter
in package
Pop Crypt sodium encrypter
Tags
Table of Contents
Constants
- CIPHER = 'xchacha20-poly1305'
- Cipher constant
Properties
- $cipher : string
- Encryption cipher
- $key : string|null
- Encryption Key
- $previousKeys : array<string|int, mixed>
- Previous keys
Methods
- __construct() : mixed
- Constructor
- create() : static
- Create sodium encrypter object
- decrypt() : string
- Decrypt value
- encrypt() : string
- Encrypt value
- generateKey() : string
- Generate encryption key
- getAllKeys() : array<string|int, mixed>
- Get all keys
- getCipher() : string
- Get cipher
- getKey() : string
- Get key
- getPreviousKeys() : array<string|int, mixed>
- Get previous keys
- hasCipher() : bool
- Has cipher
- hasKey() : bool
- Has key
- hasPreviousKeys() : bool
- Has previous keys
- isAvailable() : bool
- Determine if the cipher is available
- isValid() : bool
- Determine if the key and cipher combination is valid
- load() : static
- Load sodium encrypter object from $_ENV
- setCipher() : static
- Set cipher
- setKey() : static
- Set key
- setPreviousKeys() : static
- Set previous keys
Constants
CIPHER
Cipher constant
public
mixed
CIPHER
= 'xchacha20-poly1305'
Properties
$cipher
Encryption cipher
protected
string
$cipher
= 'aes-256-cbc'
$key
Encryption Key
protected
string|null
$key
= null
$previousKeys
Previous keys
protected
array<string|int, mixed>
$previousKeys
= []
Methods
__construct()
Constructor
public
__construct(string $key[, bool $raw = true ]) : mixed
Instantiate the SodiumEncrypter object
Parameters
- $key : string
- $raw : bool = true
Tags
create()
Create sodium encrypter object
public
static create([bool $raw = true ]) : static
Parameters
- $raw : bool = true
Return values
staticdecrypt()
Decrypt value
public
decrypt(string $payload) : string
Parameters
- $payload : string
Tags
Return values
stringencrypt()
Encrypt value
public
encrypt(string $value) : string
Parameters
- $value : string
Return values
stringgenerateKey()
Generate encryption key
public
static generateKey([bool $raw = true ]) : string
Parameters
- $raw : bool = true
Return values
stringgetAllKeys()
Get all keys
public
getAllKeys() : array<string|int, mixed>
Return values
array<string|int, mixed>getCipher()
Get cipher
public
getCipher() : string
Return values
stringgetKey()
Get key
public
getKey([bool $raw = false ]) : string
Parameters
- $raw : bool = false
Return values
stringgetPreviousKeys()
Get previous keys
public
getPreviousKeys([bool $raw = false ]) : array<string|int, mixed>
Parameters
- $raw : bool = false
Return values
array<string|int, mixed>hasCipher()
Has cipher
public
hasCipher() : bool
Return values
boolhasKey()
Has key
public
hasKey() : bool
Return values
boolhasPreviousKeys()
Has previous keys
public
hasPreviousKeys() : bool
Return values
boolisAvailable()
Determine if the cipher is available
public
static isAvailable(string $cipher) : bool
Parameters
- $cipher : string
Return values
boolisValid()
Determine if the key and cipher combination is valid
public
static isValid(string $key, string $cipher[, bool $raw = true ]) : bool
Parameters
- $key : string
- $cipher : string
- $raw : bool = true
Return values
boolload()
Load sodium encrypter object from $_ENV
public
static load([bool $raw = false ]) : static
Defaults to treating APP_KEY/APP_PREVIOUS_KEYS as base64-encoded strings, since that's the standard way to store binary key material in a .env file.
Parameters
- $raw : bool = false
Tags
Return values
staticsetCipher()
Set cipher
public
setCipher(string $cipher) : static
Parameters
- $cipher : string
Tags
Return values
staticsetKey()
Set key
public
setKey(string $key[, bool $raw = true ]) : static
Parameters
- $key : string
- $raw : bool = true
Tags
Return values
staticsetPreviousKeys()
Set previous keys
public
setPreviousKeys(array<string|int, mixed> $previousKeys[, bool $raw = true ]) : static
Parameters
- $previousKeys : array<string|int, mixed>
- $raw : bool = true