openssl中的md5认证

md5 英文名为:Message Digest Algorithm,即信息摘要算法。这是一种散列算法,散列函数是一种公开的数学函数。散列函数运算中的输入信息叫做报文,运算后的所得的结果叫做散列码或者消息摘要。
md5是一种非常著名的散列算法,已经成为国际标准。md5散列算法对输入的任意长度消息产生128位(16字节)长度的散列值(或称消息摘要)。注意,这个散列值是一个十六进制的值,而经常见到的是将其转换后的字符串。
md5算法包括以下四个步骤:

  1. 附加填充位:首先对输入的报文进行填位补充,使填充后的数据长度模512后余448,如果数据长度正好模512余448,则需要增加512个填充位,也就是说填充的个数位1-512个。填充位第一个位为1,其余全部为0;
  2. 补足长度:将数据长度表示为二进制,如果长度超过64位,则截取其低64位,如果长度不足64位,则在其高位补0.将这个64位的报文长度补在经过填充的报文后,使得最后的数据为512为的整数倍。
  3. 初始化MD缓存器。md5运算要用到一个128位的MD5缓存器,用来保存中间变量和最终结果。该缓存器又可以看成4个32位的寄存器,A、B、C、D
  4. 处理数据段

使用openssl进行md5加密

#include <iostream>
#include <string>
#include <openssl/md5.h>
using namespace std;
//1.独立API ,一次性输入要计算的数据,然后得到md5的值
/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值