php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
php_hash_sha3.h
Go to the documentation of this file.
1/*
2 +----------------------------------------------------------------------+
3 | Copyright (c) The PHP Group |
4 +----------------------------------------------------------------------+
5 | This source file is subject to version 3.01 of the PHP license, |
6 | that is bundled with this package in the file LICENSE, and is |
7 | available through the world-wide-web at the following url: |
8 | https://www.php.net/license/3_01.txt |
9 | If you did not receive a copy of the PHP license and are unable to |
10 | obtain it through the world-wide-web, please send a note to |
11 | license@php.net so we can mail you a copy immediately. |
12 +----------------------------------------------------------------------+
13 | Author: Sara Golemon <pollita@php.net> |
14 +----------------------------------------------------------------------+
15*/
16
17#ifndef PHP_HASH_SHA3_H
18#define PHP_HASH_SHA3_H
19
20typedef struct {
21#ifdef HAVE_SLOW_HASH3
22 unsigned char state[200]; // 5 * 5 * sizeof(uint64)
23 uint32_t pos;
24#else
25 unsigned char state[224]; // this must fit a Keccak_HashInstance
26#endif
28#ifdef HAVE_SLOW_HASH3
29#define PHP_SHA3_SPEC "b200l."
30#endif
31
36
38PHP_HASH_API void PHP_SHA3224Update(PHP_SHA3_224_CTX*, const unsigned char*, size_t);
40
42PHP_HASH_API void PHP_SHA3256Update(PHP_SHA3_256_CTX*, const unsigned char*, size_t);
44
46PHP_HASH_API void PHP_SHA3384Update(PHP_SHA3_384_CTX*, const unsigned char*, size_t);
48
50PHP_HASH_API void PHP_SHA3512Update(PHP_SHA3_512_CTX*, const unsigned char*, size_t);
52
53#endif
unsigned const char * pos
Definition php_ffi.h:52
#define PHP_HASH_API
Definition php_hash.h:144
PHP_HASH_API void PHP_SAH3256Final(unsigned char[32], PHP_SHA3_256_CTX *)
PHP_HASH_API void PHP_SAH3384Final(unsigned char[32], PHP_SHA3_384_CTX *)
PHP_HASH_API void PHP_SHA3256Init(PHP_SHA3_256_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
PHP_SHA3_CTX PHP_SHA3_224_CTX
PHP_HASH_API void PHP_SHA3224Init(PHP_SHA3_224_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
PHP_SHA3_CTX PHP_SHA3_512_CTX
PHP_SHA3_CTX PHP_SHA3_384_CTX
PHP_HASH_API void PHP_SHA3384Update(PHP_SHA3_384_CTX *, const unsigned char *, size_t)
PHP_HASH_API void PHP_SHA3224Update(PHP_SHA3_224_CTX *, const unsigned char *, size_t)
PHP_HASH_API void PHP_SAH3512Final(unsigned char[32], PHP_SHA3_512_CTX *)
PHP_HASH_API void PHP_SHA3256Update(PHP_SHA3_256_CTX *, const unsigned char *, size_t)
PHP_HASH_API void PHP_SAH3224Final(unsigned char[32], PHP_SHA3_224_CTX *)
PHP_HASH_API void PHP_SHA3512Init(PHP_SHA3_512_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
PHP_HASH_API void PHP_SHA3512Update(PHP_SHA3_512_CTX *, const unsigned char *, size_t)
PHP_SHA3_CTX PHP_SHA3_256_CTX
PHP_HASH_API void PHP_SHA3384Init(PHP_SHA3_384_CTX *, ZEND_ATTRIBUTE_UNUSED HashTable *)
unsigned char state[224]
#define ZEND_ATTRIBUTE_UNUSED
struct _zend_array HashTable
Definition zend_types.h:386