wppaste
WordPress

ParagonIE_Sodium_Core32_Salsa20

Source
wp-includes/sodium_compat/src/Core32/Salsa20.php:10
Class ParagonIE_Sodium_Core32_Salsa20

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).

Methods · 4

Source code

abstract class ParagonIE_Sodium_Core32_Salsa20 extends ParagonIE_Sodium_Core32_Util{    const ROUNDS = 20;     /**     * Calculate an salsa20 hash of a single block     *     * @internal You should not use this directly from another application     *     * @param string $in     * @param string $k     * @param string|null $c     * @return string     * @throws SodiumException     * @throws TypeError     */    public static function core_salsa20($in, $k, $c = null)    {        /**         * @var ParagonIE_Sodium_Core32_Int32 $x0         * @var ParagonIE_Sodium_Core32_Int32 $x1         * @var ParagonIE_Sodium_Core32_Int32 $x2         * @var ParagonIE_Sodium_Core32_Int32 $x3         * @var ParagonIE_Sodium_Core32_Int32 $x4         * @var ParagonIE_Sodium_Core32_Int32 $x5         * @var ParagonIE_Sodium_Core32_Int32 $x6         * @var ParagonIE_Sodium_Core32_Int32 $x7         * @var ParagonIE_Sodium_Core32_Int32 $x8         * @var ParagonIE_Sodium_Core32_Int32 $x9         * @var ParagonIE_Sodium_Core32_Int32 $x10         * @var ParagonIE_Sodium_Core32_Int32 $x11         * @var ParagonIE_Sodium_Core32_Int32 $x12         * @var ParagonIE_Sodium_Core32_Int32 $x13         * @var ParagonIE_Sodium_Core32_Int32 $x14         * @var ParagonIE_Sodium_Core32_Int32 $x15         * @var ParagonIE_Sodium_Core32_Int32 $j0         * @var ParagonIE_Sodium_Core32_Int32 $j1         * @var ParagonIE_Sodium_Core32_Int32 $j2         * @var ParagonIE_Sodium_Core32_Int32 $j3         * @var ParagonIE_Sodium_Core32_Int32 $j4         * @var ParagonIE_Sodium_Core32_Int32 $j5         * @var ParagonIE_Sodium_Core32_Int32 $j6         * @var ParagonIE_Sodium_Core32_Int32 $j7         * @var ParagonIE_Sodium_Core32_Int32 $j8         * @var ParagonIE_Sodium_Core32_Int32 $j9         * @var ParagonIE_Sodium_Core32_Int32 $j10         * @var ParagonIE_Sodium_Core32_Int32 $j11         * @var ParagonIE_Sodium_Core32_Int32 $j12         * @var ParagonIE_Sodium_Core32_Int32 $j13         * @var ParagonIE_Sodium_Core32_Int32 $j14         * @var ParagonIE_Sodium_Core32_Int32 $j15         */        if (self::strlen($k) < 32) {            throw new RangeException('Key must be 32 bytes long');        }        if ($c === null) {            $x0  = new ParagonIE_Sodium_Core32_Int32(array(0x6170, 0x7865));            $x5  = new ParagonIE_Sodium_Core32_Int32(array(0x3320, 0x646e));            $x10 = new ParagonIE_Sodium_Core32_Int32(array(0x7962, 0x2d32));            $x15 = new ParagonIE_Sodium_Core32_Int32(array(0x6b20, 0x6574));        } else {            $x0  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($c, 0, 4));            $x5  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($c, 4, 4));            $x10 = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($c, 8, 4));            $x15 = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($c, 12, 4));        }        $x1  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($k, 0, 4));        $x2  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($k, 4, 4));        $x3  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($k, 8, 4));        $x4  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($k, 12, 4));        $x6  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($in, 0, 4));        $x7  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($in, 4, 4));        $x8  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($in, 8, 4));        $x9  = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($in, 12, 4));        $x11 = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($k, 16, 4));        $x12 = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($k, 20, 4));        $x13 = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($k, 24, 4));        $x14 = ParagonIE_Sodium_Core32_Int32::fromReverseString(self::substr($k, 28, 4));         $j0  = clone $x0;

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/Salsa20.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.