24 'CRYPTO_AEAD_AES256GCM_ABYTES', |
24 'CRYPTO_AEAD_AES256GCM_ABYTES', |
25 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_KEYBYTES', |
25 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_KEYBYTES', |
26 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_NSECBYTES', |
26 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_NSECBYTES', |
27 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_NPUBBYTES', |
27 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_NPUBBYTES', |
28 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_ABYTES', |
28 'CRYPTO_AEAD_CHACHA20POLY1305_IETF_ABYTES', |
|
29 'CRYPTO_AEAD_XCHACHA20POLY1305_IETF_KEYBYTES', |
|
30 'CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NSECBYTES', |
|
31 'CRYPTO_AEAD_XCHACHA20POLY1305_IETF_NPUBBYTES', |
|
32 'CRYPTO_AEAD_XCHACHA20POLY1305_IETF_ABYTES', |
29 'CRYPTO_AUTH_BYTES', |
33 'CRYPTO_AUTH_BYTES', |
30 'CRYPTO_AUTH_KEYBYTES', |
34 'CRYPTO_AUTH_KEYBYTES', |
31 'CRYPTO_BOX_SEALBYTES', |
35 'CRYPTO_BOX_SEALBYTES', |
32 'CRYPTO_BOX_SECRETKEYBYTES', |
36 'CRYPTO_BOX_SECRETKEYBYTES', |
33 'CRYPTO_BOX_PUBLICKEYBYTES', |
37 'CRYPTO_BOX_PUBLICKEYBYTES', |
60 'CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE', |
64 'CRYPTO_PWHASH_OPSLIMIT_INTERACTIVE', |
61 'CRYPTO_PWHASH_MEMLIMIT_MODERATE', |
65 'CRYPTO_PWHASH_MEMLIMIT_MODERATE', |
62 'CRYPTO_PWHASH_OPSLIMIT_MODERATE', |
66 'CRYPTO_PWHASH_OPSLIMIT_MODERATE', |
63 'CRYPTO_PWHASH_MEMLIMIT_SENSITIVE', |
67 'CRYPTO_PWHASH_MEMLIMIT_SENSITIVE', |
64 'CRYPTO_PWHASH_OPSLIMIT_SENSITIVE', |
68 'CRYPTO_PWHASH_OPSLIMIT_SENSITIVE', |
|
69 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_SALTBYTES', |
|
70 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_STRPREFIX', |
|
71 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_INTERACTIVE', |
|
72 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_INTERACTIVE', |
|
73 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_SENSITIVE', |
|
74 'CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_SENSITIVE', |
65 'CRYPTO_SCALARMULT_BYTES', |
75 'CRYPTO_SCALARMULT_BYTES', |
66 'CRYPTO_SCALARMULT_SCALARBYTES', |
76 'CRYPTO_SCALARMULT_SCALARBYTES', |
67 'CRYPTO_SHORTHASH_BYTES', |
77 'CRYPTO_SHORTHASH_BYTES', |
68 'CRYPTO_SHORTHASH_KEYBYTES', |
78 'CRYPTO_SHORTHASH_KEYBYTES', |
69 'CRYPTO_SECRETBOX_KEYBYTES', |
79 'CRYPTO_SECRETBOX_KEYBYTES', |
82 'CRYPTO_SIGN_PUBLICKEYBYTES', |
92 'CRYPTO_SIGN_PUBLICKEYBYTES', |
83 'CRYPTO_SIGN_SECRETKEYBYTES', |
93 'CRYPTO_SIGN_SECRETKEYBYTES', |
84 'CRYPTO_SIGN_KEYPAIRBYTES', |
94 'CRYPTO_SIGN_KEYPAIRBYTES', |
85 'CRYPTO_STREAM_KEYBYTES', |
95 'CRYPTO_STREAM_KEYBYTES', |
86 'CRYPTO_STREAM_NONCEBYTES', |
96 'CRYPTO_STREAM_NONCEBYTES', |
|
97 'CRYPTO_STREAM_XCHACHA20_KEYBYTES', |
|
98 'CRYPTO_STREAM_XCHACHA20_NONCEBYTES', |
|
99 'LIBRARY_MAJOR_VERSION', |
|
100 'LIBRARY_MINOR_VERSION', |
87 'LIBRARY_VERSION_MAJOR', |
101 'LIBRARY_VERSION_MAJOR', |
88 'LIBRARY_VERSION_MINOR', |
102 'LIBRARY_VERSION_MINOR', |
89 'VERSION_STRING' |
103 'VERSION_STRING' |
90 ) as $constant |
104 ) as $constant |
91 ) { |
105 ) { |
1202 function sodium_crypto_stream_xor($message, $nonce, $key) |
1216 function sodium_crypto_stream_xor($message, $nonce, $key) |
1203 { |
1217 { |
1204 return ParagonIE_Sodium_Compat::crypto_stream_xor($message, $nonce, $key); |
1218 return ParagonIE_Sodium_Compat::crypto_stream_xor($message, $nonce, $key); |
1205 } |
1219 } |
1206 } |
1220 } |
|
1221 require_once dirname(__FILE__) . '/stream-xchacha20.php'; |
1207 if (!is_callable('sodium_hex2bin')) { |
1222 if (!is_callable('sodium_hex2bin')) { |
1208 /** |
1223 /** |
1209 * @see ParagonIE_Sodium_Compat::hex2bin() |
1224 * @see ParagonIE_Sodium_Compat::hex2bin() |
1210 * @param string $string |
1225 * @param string $string |
1211 * @return string |
1226 * @return string |