mirror of
https://github.com/WordPress/WordPress.git
synced 2024-12-25 18:48:57 +01:00
aa22aba0ba
The latest version of sodium_compat includes some improvements, as well as a new feature which will also be included in PHP 8.2. * Fixed issues with the PHP autoloader: * [https://github.com/paragonie/sodium_compat/pull/145 #145]: For WordPress, this ensures when Ed25519 is included, so too is the class it inherits from. * [https://github.com/paragonie/sodium_compat/issues/148 #148], [https://github.com/paragonie/sodium_compat/issues/149 #149]: For PHP 7.4+ with opcache preloading, this ensures the include guards don't fail. * [https://github.com/paragonie/sodium_compat/pull/144 #144]: Added `sodium_crypto_stream_xchacha20_xor_ic()` * See [https://github.com/php/php-src/pull/8276 pull request for php-src] (merged in PHP 8.2) * For motivation: [https://github.com/paragonie/halite/issues/178 paragonie/halite#178] Release notes: https://github.com/paragonie/sodium_compat/releases/tag/v1.18.0 A full list of changes in this update can be found on GitHub: https://github.com/paragonie/sodium_compat/compare/v1.17.1...v1.18.0 Follow-up to [49741], [51002], [51591], [52988]. Props jrf, paragoninitiativeenterprises. Fixes #56564. Built from https://develop.svn.wordpress.org/trunk@54150 git-svn-id: http://core.svn.wordpress.org/trunk@53709 1a063a9b-81f0-0310-95a4-ce76da25c4cd
60 lines
1.8 KiB
PHP
60 lines
1.8 KiB
PHP
<?php
|
|
|
|
if (!is_callable('sodium_crypto_stream_xchacha20')) {
|
|
/**
|
|
* @see ParagonIE_Sodium_Compat::crypto_stream_xchacha20()
|
|
* @param int $len
|
|
* @param string $nonce
|
|
* @param string $key
|
|
* @return string
|
|
* @throws SodiumException
|
|
* @throws TypeError
|
|
*/
|
|
function sodium_crypto_stream_xchacha20($len, $nonce, $key)
|
|
{
|
|
return ParagonIE_Sodium_Compat::crypto_stream_xchacha20($len, $nonce, $key, true);
|
|
}
|
|
}
|
|
if (!is_callable('sodium_crypto_stream_xchacha20_keygen')) {
|
|
/**
|
|
* @see ParagonIE_Sodium_Compat::crypto_stream_xchacha20_keygen()
|
|
* @return string
|
|
* @throws Exception
|
|
*/
|
|
function sodium_crypto_stream_xchacha20_keygen()
|
|
{
|
|
return ParagonIE_Sodium_Compat::crypto_stream_xchacha20_keygen();
|
|
}
|
|
}
|
|
if (!is_callable('sodium_crypto_stream_xchacha20_xor')) {
|
|
/**
|
|
* @see ParagonIE_Sodium_Compat::crypto_stream_xchacha20_xor()
|
|
* @param string $message
|
|
* @param string $nonce
|
|
* @param string $key
|
|
* @return string
|
|
* @throws SodiumException
|
|
* @throws TypeError
|
|
*/
|
|
function sodium_crypto_stream_xchacha20_xor($message, $nonce, $key)
|
|
{
|
|
return ParagonIE_Sodium_Compat::crypto_stream_xchacha20_xor($message, $nonce, $key, true);
|
|
}
|
|
}
|
|
if (!is_callable('sodium_crypto_stream_xchacha20_xor_ic')) {
|
|
/**
|
|
* @see ParagonIE_Sodium_Compat::crypto_stream_xchacha20_xor_ic()
|
|
* @param string $message
|
|
* @param string $nonce
|
|
* @param int $counter
|
|
* @param string $key
|
|
* @return string
|
|
* @throws SodiumException
|
|
* @throws TypeError
|
|
*/
|
|
function sodium_crypto_stream_xchacha20_xor_ic($message, $nonce, $counter, $key)
|
|
{
|
|
return ParagonIE_Sodium_Compat::crypto_stream_xchacha20_xor_ic($message, $nonce, $counter, $key, true);
|
|
}
|
|
}
|