wppaste
WordPress

ParagonIE_Sodium_Core32_SecretStream_State

Source
wp-includes/sodium_compat/src/Core32/SecretStream/State.php:6
Class ParagonIE_Sodium_Core32_SecretStream_State

Compatibility

WordPress
core
  • 6.7.7
  • 6.8.8
  • 6.9.7
  • 7.0.4
  • 7.1.0

Present in every tracked release (6.7.7 to 7.1.0).

Properties · 4

$keystringprotected
$counterintprotected
$noncestringprotected
$_padstringprotected

Methods · 12

Source code

class ParagonIE_Sodium_Core32_SecretStream_State{    /** @var string $key */    protected $key;     /** @var int $counter */    protected $counter;     /** @var string $nonce */    protected $nonce;     /** @var string $_pad */    protected $_pad;     /**     * ParagonIE_Sodium_Core32_SecretStream_State constructor.     * @param string $key     * @param string|null $nonce     */    public function __construct($key, $nonce = null)    {        $this->key = $key;        $this->counter = 1;        if (is_null($nonce)) {            $nonce = str_repeat("\0", 12);        }        $this->nonce = str_pad($nonce, 12, "\0", STR_PAD_RIGHT);;        $this->_pad = str_repeat("\0", 4);    }     /**     * @return self     */    public function counterReset()    {        $this->counter = 1;        $this->_pad = str_repeat("\0", 4);        return $this;    }     /**     * @return string     */    public function getKey()    {        return $this->key;    }     /**     * @return string     */    public function getCounter()    {        return ParagonIE_Sodium_Core32_Util::store32_le($this->counter);    }     /**     * @return string     */    public function getNonce()    {        if (!is_string($this->nonce)) {            $this->nonce = str_repeat("\0", 12);        }        if (ParagonIE_Sodium_Core32_Util::strlen($this->nonce) !== 12) {            $this->nonce = str_pad($this->nonce, 12, "\0", STR_PAD_RIGHT);        }        return $this->nonce;    }     /**     * @return string     */    public function getCombinedNonce()    {        return $this->getCounter() .            ParagonIE_Sodium_Core32_Util::substr($this->getNonce(), 0, 8);    }     /**

Changelog

Unchanged from 6.7.7 through 7.1.0.

  1. 6.7.7
  2. 6.8.8
  3. 6.9.7
  4. 7.0.4
  5. 7.1.0

Signature, return type and hooks compared across 5 parsed releases.

About this page

Parsed data
Generated from the wordpress-develop 7.1.0 tag, from src/wp-includes/sodium_compat/src/Core32/SecretStream/State.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.
Corrections
Something wrong on this page? Report it and it gets fixed in the next regeneration.