WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Самая быстрая Тема-конструктор для WordPress
функция не описана

ParagonIE_Sodium_Core_Ed25519::pk_to_curve25519() public WP 1.0

Это метод класса: ParagonIE_Sodium_Core_Ed25519{}

Хуков нет.

Возвращает

Строку.

Использование

$result = ParagonIE_Sodium_Core_Ed25519::pk_to_curve25519( $pk );
$pk(строка) (обязательный)

Код ParagonIE_Sodium_Core_Ed25519::pk_to_curve25519() WP 5.5.1

<?php
public static function pk_to_curve25519($pk)
{
    if (self::small_order($pk)) {
        throw new SodiumException('Public key is on a small order');
    }
    $A = self::ge_frombytes_negate_vartime(self::substr($pk, 0, 32));
    $p1 = self::ge_mul_l($A);
    if (!self::fe_isnonzero($p1->X)) {
        throw new SodiumException('Unexpected zero result');
    }

    # fe_1(one_minus_y);
    # fe_sub(one_minus_y, one_minus_y, A.Y);
    # fe_invert(one_minus_y, one_minus_y);
    $one_minux_y = self::fe_invert(
        self::fe_sub(
            self::fe_1(),
            $A->Y
        )
    );

    # fe_1(x);
    # fe_add(x, x, A.Y);
    # fe_mul(x, x, one_minus_y);
    $x = self::fe_mul(
        self::fe_add(self::fe_1(), $A->Y),
        $one_minux_y
    );

    # fe_tobytes(curve25519_pk, x);
    return self::fe_tobytes($x);
}