openssl SHA256
#include <string.h>
#include <glib.h>
#include <openssl/sha.h>
void main()
{
gint i;
guint8 src[] = "abc";
guint8 dest[SHA256_DIGEST_LENGTH];
guint8 expected_sha256_of_abc[32] = {
0xBA, 0x78, 0x16, 0xBF, 0x8F, 0x01, 0xCF, 0xEA,
0x41, 0x41, 0x40, 0xDE, 0x5D, 0xAE, 0x22, 0x23,
0xB0, 0x03, 0x61, 0xA3, 0x96, 0x17, 0x7A, 0x9C,
0xB4, 0x10, 0xFF, 0x61, 0xF2, 0x00, 0x15, 0xAD
};
/* https://www.openssl.org/docs/man1.0.2/crypto/sha.html */
SHA256 (src, strlen(src), dest);
g_print ("SHA256: ");
for (i = 0; i < SHA256_DIGEST_LENGTH; i++) {
g_print ("%.2X ", dest[i]);
}
g_print ("\n");
g_assert_cmpmem (dest, 32, expected_sha256_of_abc, 32);
}
SHA256 sample 값 : https://www.di-mgt.com.au/sha_testvectors.html
'개발자료 > Openssl' 카테고리의 다른 글
RSAES-OAEP encrypt / decrypt (0) | 2018.01.24 |
---|---|
RSASSA PKCS1 v1.5 (0) | 2018.01.24 |
HMAC-SHA256 (0) | 2018.01.24 |
AES-CTR (0) | 2018.01.24 |