C で、ハッシュ値を求める方法

#include #include #include int main(int argc, char** argv) {
unsigned char hash[SHA_DIGEST_LENGTH];
unsigned char* b;
unsigned char* s = "string string string";
int dlen;

dlen = strlen(s);

if ((b = (unsigned char *)malloc(dlen)) == NULL) {
    return (-1);
}

memcpy(b, s, dlen);  //  s を b に dlen 分だけ(すなわち文字列 s を)コピーする。
SHA1(b, dlen, hash); // b を c 分だけのハッシュ値を hash に求める。
// 処理
free(b);
}

上の内容を hashtest.c とかいう名前で保存して、

gcc -lssl hashtest.c

とコンパイルすればよい。

Comments