summaryrefslogtreecommitdiffstats
path: root/wp-includes/sodium_compat/lib/stream-xchacha20.php
diff options
context:
space:
mode:
Diffstat (limited to 'wp-includes/sodium_compat/lib/stream-xchacha20.php')
-rw-r--r--wp-includes/sodium_compat/lib/stream-xchacha20.php59
1 files changed, 59 insertions, 0 deletions
diff --git a/wp-includes/sodium_compat/lib/stream-xchacha20.php b/wp-includes/sodium_compat/lib/stream-xchacha20.php
new file mode 100644
index 0000000..ffeae33
--- /dev/null
+++ b/wp-includes/sodium_compat/lib/stream-xchacha20.php
@@ -0,0 +1,59 @@
+<?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);
+ }
+}