CRYPTO_memcmp
—
constant time memory comparison
#include
<openssl/crypto.h>
int
CRYPTO_memcmp
(const void *a,
const void *b, size_t len);
CRYPTO_memcmp
()
compares the len bytes pointed to by
a and b for equality. It takes
an amount of time dependent on len, but independent of
the contents of the memory regions pointed to by a and
b.
CRYPTO_memcmp
() returns 0 if the content
of the memory regions is equal or non-zero otherwise.
CRYPTO_memcmp
() first appeared in OpenSSL
1.0.1d and has been available since OpenBSD 5.6.
Unlike
memcmp(3)
and
timingsafe_memcmp(3),
this function cannot be used to order the two memory regions. In the current
implementation, the return value is always greater than or equal to 0.