参考https://blog.youkuaiyun.com/zsy19881226/article/details/46879887
依赖openssl里面的-lcrypto libcrypto.so库
#include<openssl/md5.h>
unsigned char *MD5(const unsigned char *d, unsigned long n, unsigned char *md);
int MD5_Init(MD5_CTX *c);
int MD5_Update(MD5_CTX *c, const void *data, unsigned long len);
int MD5_Final(unsigned char *md, MD5_CTX *c);
方法一: 场景---数据较少
unsigned char *MD5(const unsigned char *d, unsigned long n, unsigned char *md);
单独使用这个函数生成unsigned char *md, md可以为数组,长度16即可
方法二: 场景---数据较多,如文件
int MD5_Init(MD5_CTX *c);
int MD5_Update(MD5_CTX *c, const void *data, unsigned long len);
int MD5_Final(unsigned char *md, MD5_CTX *c);
MD5_Update传输数据,可以重复使用这个函数直到所有数据更新进去。最后使用MD5_Final即结果返回unsigned char *md里
实例:方法二