你怕是对MD5算法有误解

[[404109]]

本文转载自微信公众号「精益码农」,作者有态度的马甲。转载本文请联系精益码农公众号。

 “MD5加密”纯属口嗨,MD5不是加密算法,是摘要算法。

今天小码甲带大家梳理加密算法、摘要算法的定义和场景:

伸手党先看答案:

加密算法的目的,在于使别人无法成功查看加密的数据,并且在需要的时候还可以对数据进行解密来重新查看数据。

而MD5算法是一种哈希算法,哈希算法的设计目的本身就决定了,它在大多数情况下都是不可逆的,即你通过哈希算法得到的数据,无法经过任何算法还原回去。所以既然不能将数据还原,也就不能称之为解密;既然不能解密,那么哈希的过程自然也就不能称作是[加密]了。

加密算法

加密:是以某种特殊的算法改变原有的信息,使得未授权的用户即使获得已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。

解密:加密的逆过程为解密,即将该加密信息转化为其原来信息的过程。

加密算法分为对称加密和非对称加密,其中对称加密算法的加解密密钥相同,非对称加解密的密钥不同。

HTTPS就同时用到非对称加密和对称加密,在连接建立阶段,使用非对称加解密(保护密钥不被查看), 在通信阶段使用对称密钥加解密数据。

摘要算法

摘要算法,又称哈希算法、散列算法。通过一个函数,将任意长度的内容转换为一个固定长度的数据串。

摘要算法之所以能指出数据是否被篡改,就是因为摘要函数是一个单向函数,计算很容易,但通过摘要(digest) 反推data却非常困难,而且,对于原始数据做一个bit的修改,都会导致计算出的摘要完全不同。

使用迅雷下载某片的时候,下载站会顺带给你一个MD5校验码;

你找一个MD5校验工具,对下载下来的文件执行MD5算法,将得到的哈希值与下载站附带的MD5值对比,如果值是相同的,说明从该网站下载的文件没有损坏。

HMAC

延伸聊一个结合了密钥和哈希功能的请求认证方案:

HMAC ( hash-based message authenticated code)

很多第三方平台都采用这种授权认证方案,你回想一下,api平台是不是经常给你一对AppID Serect Key

1.Client & Server 都知晓一个私钥serect key

2.客户端每次请求时,会针对(请求数据+ secret key)生成一个hash值

HMAC = hashFunc(secret key + message)

3.客户端将哈希值做为请求的一部分,一起发送

4.当服务端收到请求, 对( 收到的请求+ 查到的Serectkey’)生成哈希,将计算的哈希值与请求中附带的原哈希值对比,如果相同,则认定请求来自受信Client,且请求未被篡改。

为什么会有这样的效果?

首先:Client 和Server的哈希值相同,根据哈希算法的设计初衷,说明请求过程未被篡改;

另一方面也反推 Client 和Server使用的是同一个Serect Key , 而Serect Key是私密信息,故此处的Client发送请求不可抵赖。

还可以考虑在客户端生成哈希时加入timestamp时间戳(请求也要附带这个时间戳),服务端收到后,先对比服务器时间戳与请求时间戳,限制15s内为有效请求,服务端再对(请求消息+ serect key+ timestamp)生成哈希,对比哈希,避免重放攻击。

总结

本文给出的示例:HTTPS、迅雷MD5校验,足够帮助你了解加密算法和摘要算法的设计目的。

?加密算法的目的是:防止信息被偷看?摘要算法的目的是:防止信息被篡改

以后使用时候也能有的放矢,面试时也不会闹出笑话。

最后给出的WebAPI授权方案HMAC,算是密钥+哈希算法结合的一个应用场景, 具备快速、自签名的特点。

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/134368.html<

(0)
管理的头像管理
上一篇2025-03-01 03:11
下一篇 2025-03-01 03:13

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注