从MD_CTX打印内容

时间:2015-10-08 01:39:50

标签: openssl printf pass-by-reference pass-by-value message-digest

我试图理解md_rand.c中的散列函数是如何工作的。假设我声明了一个变量MD_CTX m,我试图在每个m函数之后看到MD_Update的内容。

MD_Init(&m);
printf("%X\n",*(&m));
MD_Update(&m,(unsigned char *)&(md_c[0]),sizeof(md_c));
printf("%X\n",*(&m));
MD_Update(&m,local_md,MD_DIGEST_LENGTH);
printf("%X\n",*(&m));
CRYPTO_w_lock(CRYPTO_LOCK_RAND);
MD_Update(&m,md,MD_DIGEST_LENGTH);
printf("%X\n",*(&m));       
MD_Final(md,&m);

但是,在每printf之后,我总是会为所有4 MD_Update个语句打印相同的值。如何在m中获取更新后的值?

0 个答案:

没有答案