Mercurial > hg > php_nacl
view tests/test.phpt @ 10:130a6a714966 default tip
Use libsodium instead of libnacl
author | Ivo Smits <Ivo@UCIS.nl> |
---|---|
date | Thu, 10 Jul 2014 16:34:04 +0000 |
parents | 84e0f7ead583 |
children |
line wrap: on
line source
--TEST-- Test the nacl cryptography functions --FILE-- <?php echo "CRYPTO_BOX_curve25519xsalsa20poly1305\n"; echo NACL_CRYPTO_BOX_curve25519xsalsa20poly1305_PUBLICKEYBYTES."\n"; echo NACL_CRYPTO_BOX_curve25519xsalsa20poly1305_SECRETKEYBYTES."\n"; echo NACL_CRYPTO_BOX_curve25519xsalsa20poly1305_BEFORENMBYTES."\n"; echo NACL_CRYPTO_BOX_curve25519xsalsa20poly1305_NONCEBYTES."\n"; echo NACL_CRYPTO_BOX_curve25519xsalsa20poly1305_ZEROBYTES."\n"; echo NACL_CRYPTO_BOX_curve25519xsalsa20poly1305_BOXZEROBYTES."\n"; $m = 'HELLO WORLD'; echo strlen($m).' - '.bin2hex($m)."\n"; $n = str_repeat("\0", NACL_CRYPTO_BOX_curve25519xsalsa20poly1305_NONCEBYTES); $sk = pack('H*' , 'b3d1187a0034cbf17c5deacfb457c57e83577df7fc7a3e14630bace4bb84f4fc'); $pk = nacl_crypto_box_curve25519xsalsa20poly1305_getpublickey($sk); echo strlen($pk).' - '.bin2hex($pk)."\n"; $pk = pack('H*', 'd394ec9fce78084c1fbc208e5a17bef3bdc4f38cc1ed9e54b9e68ecb56be1418'); $c = nacl_crypto_box_curve25519xsalsa20poly1305($m, $n, $pk, $sk); echo strlen($c).' - '.bin2hex($c)."\n"; $m = nacl_crypto_box_curve25519xsalsa20poly1305_open($c, $n, $pk, $sk); echo strlen($m).' - '.bin2hex($m)."\n"; $k = nacl_crypto_box_curve25519xsalsa20poly1305_beforenm($pk, $sk); echo strlen($k).' - '.bin2hex($k)."\n"; $c = nacl_crypto_box_curve25519xsalsa20poly1305_afternm($m, $n, $k); echo strlen($c).' - '.bin2hex($c)."\n"; $m = nacl_crypto_box_curve25519xsalsa20poly1305_open_afternm($c, $n, $k); echo strlen($m).' - '.bin2hex($m)."\n"; echo "CRYPTO_BOX_curve25519xsalsa20poly1305 ok\n"; echo "CRYPTO_SIGN_edwards25519sha512batch\n"; echo NACL_CRYPTO_SIGN_edwards25519sha512batch_BYTES."\n"; echo NACL_CRYPTO_SIGN_edwards25519sha512batch_PUBLICKEYBYTES."\n"; echo NACL_CRYPTO_SIGN_edwards25519sha512batch_SECRETKEYBYTES."\n"; echo "CRYPTO_SIGN_edwards25519sha512batch ok\n"; echo "CRYPTO_SIGN_ed25519\n"; echo NACL_CRYPTO_SIGN_ed25519_BYTES."\n"; echo NACL_CRYPTO_SIGN_ed25519_PUBLICKEYBYTES."\n"; echo NACL_CRYPTO_SIGN_ed25519_SECRETKEYBYTES."\n"; echo NACL_CRYPTO_SIGN_ed25519_SEEDBYTES."\n"; echo "CRYPTO_SIGN_ed25519 ok\n"; ?> --EXPECT-- CRYPTO_BOX_curve25519xsalsa20poly1305 32 32 32 24 32 16 11 - 48454c4c4f20574f524c44 32 - 4867685134ac5017b584228fab5096983173b99aee10074706ce3c9f820b0a23 27 - d7f25d6171ee1fac7242ed7c7546ddd56ee983ea24a6c7bf3bced8 11 - 48454c4c4f20574f524c44 32 - 76726914c6c1a5132931a2fc11179746c70982e948811ce93008b07f9a439001 27 - d7f25d6171ee1fac7242ed7c7546ddd56ee983ea24a6c7bf3bced8 11 - 48454c4c4f20574f524c44 CRYPTO_BOX_curve25519xsalsa20poly1305 ok CRYPTO_SIGN_edwards25519sha512batch 64 32 64 CRYPTO_SIGN_edwards25519sha512batch ok CRYPTO_SIGN_ed25519 64 32 64 32 CRYPTO_SIGN_ed25519 ok