webmcp
annotate libraries/moonhash/moonhash.autodoc.lua @ 506:83b3882dc31b
New functions moonhash.shake128(data, len, alphabet), moonhash.shake256(data, len, alphabet)
Removed moonhash.shake128_128(...)
Removed moonhash.shake128_128(...)
author | jbe |
---|---|
date | Wed Aug 16 00:31:11 2017 +0200 (2017-08-16) |
parents | b36e366bba2b |
children |
rev | line source |
---|---|
jbe@499 | 1 --[[-- |
jbe@499 | 2 hash = -- SHA3-224 digest (in hex notation) of input string |
jbe@499 | 3 moonhash.sha3_224( |
jbe@499 | 4 data -- input string |
jbe@499 | 5 ) |
jbe@499 | 6 |
jbe@499 | 7 Calculates the SHA3-224 checksum with a security of 112 bits for collision attacks and 224 bits for preimage and second preimage attacks. |
jbe@499 | 8 |
jbe@499 | 9 --]]-- |
jbe@499 | 10 -- Implemented in moonhash.c and moonhash_sha3.c |
jbe@499 | 11 --//-- |
jbe@499 | 12 |
jbe@499 | 13 |
jbe@499 | 14 --[[-- |
jbe@499 | 15 hash = -- SHA3-256 digest (in hex notation) of input string |
jbe@499 | 16 moonhash.sha3_256( |
jbe@499 | 17 data -- input string |
jbe@499 | 18 ) |
jbe@499 | 19 |
jbe@499 | 20 Calculates the SHA3-256 checksum with a security of 128 bits for collision attacks and 256 bits for preimage and second preimage attacks. |
jbe@499 | 21 |
jbe@499 | 22 --]]-- |
jbe@499 | 23 -- Implemented in moonhash.c and moonhash_sha3.c |
jbe@499 | 24 --//-- |
jbe@499 | 25 |
jbe@499 | 26 |
jbe@499 | 27 --[[-- |
jbe@499 | 28 hash = -- SHA3-384 digest (in hex notation) of input string |
jbe@499 | 29 moonhash.sha3_384( |
jbe@499 | 30 data -- input string |
jbe@499 | 31 ) |
jbe@499 | 32 |
jbe@499 | 33 Calculates the SHA3-384 checksum with a security of 192 bits for collision attacks and 384 bits for preimage and second preimage attacks. |
jbe@499 | 34 |
jbe@499 | 35 --]]-- |
jbe@499 | 36 -- Implemented in moonhash.c and moonhash_sha3.c |
jbe@499 | 37 --//-- |
jbe@499 | 38 |
jbe@499 | 39 |
jbe@499 | 40 --[[-- |
jbe@499 | 41 hash = -- SHA3-512 digest (in hex notation) of input string |
jbe@499 | 42 moonhash.sha3_512( |
jbe@499 | 43 data -- input string |
jbe@499 | 44 ) |
jbe@499 | 45 |
jbe@499 | 46 Calculates the SHA3-512 checksum with a security of 512 bits for collision attacks and 256 bits for preimage and second preimage attacks. |
jbe@499 | 47 |
jbe@499 | 48 --]]-- |
jbe@499 | 49 -- Implemented in moonhash.c and moonhash_sha3.c |
jbe@499 | 50 --//-- |
jbe@499 | 51 |
jbe@499 | 52 |
jbe@499 | 53 --[[-- |
jbe@506 | 54 hash = -- SHAKE128 digest of input string |
jbe@506 | 55 moonhash.shake128( |
jbe@506 | 56 input_data, -- input string |
jbe@506 | 57 output_length, -- number of characters (not bytes or bits) in output, defaults to 32 |
jbe@506 | 58 output_alphabet -- characters for encoding, defaults to "0123456789abcdef" for hex encoding |
jbe@499 | 59 ) |
jbe@499 | 60 |
jbe@506 | 61 Calculates a SHAKE128 digest (FIPS 202) with a security of math.min(128, math.log(#output_alphabet, 2) * output_length/2) for collision attacks and math.min(128, math.log(#output_alphabet, 2) * output_length) for preimage and second preimage attacks. If #output_alphabet is a power of 2, a direct base-N encoding is performed. Otherwise, a base-N encoding with N equal to the next higher power of 2 is performed, and all character values smaller than or equal to #output_alphabet are discarded from the stream (the process is repeated until the hash length reaches the required output_length). |
jbe@499 | 62 |
jbe@499 | 63 --]]-- |
jbe@499 | 64 -- Implemented in moonhash.c and moonhash_sha3.c |
jbe@499 | 65 --//-- |
jbe@499 | 66 |
jbe@499 | 67 |
jbe@506 | 68 --[[-- |
jbe@506 | 69 hash = -- SHAKE256 digest of input string |
jbe@506 | 70 moonhash.shake256( |
jbe@506 | 71 input_data, -- input string |
jbe@506 | 72 output_length, -- number of characters (not bytes or bits) in output, defaults to 64 |
jbe@506 | 73 output_alphabet -- characters for encoding, defaults to "0123456789abcdef" for hex encoding |
jbe@506 | 74 ) |
jbe@506 | 75 |
jbe@506 | 76 Calculates a SHAKE256 digest (FIPS 202) with a security of math.min(256, math.log(#output_alphabet, 2) * output_length/2) for collision attacks and math.min(256, math.log(#output_alphabet, 2) * output_length) for preimage and second preimage attacks. If #output_alphabet is a power of 2, a direct base-N encoding is performed. Otherwise, a base-N encoding with N equal to the next higher power of 2 is performed, and all character values smaller than or equal to #output_alphabet are discarded from the stream (the process is repeated until the hash length reaches the required output_length). |
jbe@506 | 77 |
jbe@506 | 78 --]]-- |
jbe@506 | 79 -- Implemented in moonhash.c and moonhash_sha3.c |
jbe@506 | 80 --//-- |
jbe@506 | 81 |