8 #include <openssl/md5.h>
14 #define FPRINT "%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x"
17 * Generate key fingerprint in ascii format.
18 * Based on ideas and code from Bjoern Groenvall <bg@sics.se>
21 fingerprint(BIGNUM *e, BIGNUM *n)
23 static char retval[80];
29 nlen = BN_num_bytes(n);
30 elen = BN_num_bytes(e);
32 buf = xmalloc(nlen + elen);
35 BN_bn2bin(e, buf + nlen);
38 MD5_Update(&md, buf, nlen + elen);
40 snprintf(retval, sizeof(retval), FPRINT,
41 d[0], d[1], d[2], d[3], d[4], d[5], d[6], d[7],
42 d[8], d[9], d[10], d[11], d[12], d[13], d[14], d[15]);
43 memset(buf, 0, nlen + elen);