0
我使用Peter Deutsch's implementation of MD5实现一个简单的密码检查。我使用这种方式:C:MD5给垃圾作为结果
md5_state_t md;
char *in = "Hello World";
char *out[16];
md5_init(&md);
md5_append(&md, in, strlen(in));
md5_finish(&md, out);
printf("In: %s\n", in);
printf("Out: %s\n", out);
问题是,我得到这样一个结果:
In: Hello World
Out: ?
??d?uA????.??
有没有人有一个想法,怎么回事错在这里?
作品,伟大的。谢谢。 我明白,它是一个二进制,由函数返回。但我希望数据以ascii文本形式存储,就像PHP md5()一样。我玩了一段时间,但发现返回的blob中有很多位只是ff - 所以根据ascii没有可打印的符号。是否有任何通用偏移量,例如PHP md5()使用? – braindump 2012-02-20 10:32:06
好的,我自己找到了。只要做出[]无符号。 M) – braindump 2012-02-20 11:22:20