Documentation

SodiumEncrypter extends AbstractEncrypter
in package

Pop Crypt sodium encrypter

Tags
category

Pop

author

Nick Sagona, III nick@popphp.org

copyright

Copyright (c) 2009-2026 Nick Sagona, III

license

https://www.popphp.org/license New BSD License

version
4.0.0

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

Properties

$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
throws
Exception

create()

Create sodium encrypter object

public static create([bool $raw = true ]) : static
Parameters
$raw : bool = true
Return values
static

decrypt()

Decrypt value

public decrypt(string $payload) : string
Parameters
$payload : string
Tags
throws
Exception
Return values
string

encrypt()

Encrypt value

public encrypt(string $value) : string
Parameters
$value : string
Return values
string

generateKey()

Generate encryption key

public static generateKey([bool $raw = true ]) : string
Parameters
$raw : bool = true
Return values
string

getAllKeys()

Get all keys

public getAllKeys() : array<string|int, mixed>
Return values
array<string|int, mixed>

getKey()

Get key

public getKey([bool $raw = false ]) : string
Parameters
$raw : bool = false
Return values
string

getPreviousKeys()

Get previous keys

public getPreviousKeys([bool $raw = false ]) : array<string|int, mixed>
Parameters
$raw : bool = false
Return values
array<string|int, mixed>

hasPreviousKeys()

Has previous keys

public hasPreviousKeys() : bool
Return values
bool

isAvailable()

Determine if the cipher is available

public static isAvailable(string $cipher) : bool
Parameters
$cipher : string
Return values
bool

isValid()

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
bool

load()

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
throws
Exception
Return values
static

setCipher()

Set cipher

public setCipher(string $cipher) : static
Parameters
$cipher : string
Tags
throws
Exception
Return values
static

setKey()

Set key

public setKey(string $key[, bool $raw = true ]) : static
Parameters
$key : string
$raw : bool = true
Tags
throws
Exception
Return values
static

setPreviousKeys()

Set previous keys

public setPreviousKeys(array<string|int, mixed> $previousKeys[, bool $raw = true ]) : static
Parameters
$previousKeys : array<string|int, mixed>
$raw : bool = true
Tags
throws
Exception
Return values
static

        
On this page

Search results