MD5算法简介及其在业务升级工具开发过程中的应用

MD5算法简介及其在业务升级工具开发过程中的应用

1.     MD5算法简介

Message DigestAlgorithm MD5为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。简单的来说就是把任意长度的字串变换成固定长度(通常是128位)的16进制串。

MD5的用途主要有:

一致性验证:比如我们从网上下载了某个文件,网站上一般会给出该文件的MD5值,我们下载下来后,可以利用工具计算出新的MD5值,与正确的MD5值进行对照,如果不一样,则可以断定该文件下载出错或被篡改了。

数字签名:可以用MD5算法对发布的程序或发布的消息生成MD5值作为签名等。

密码存储:在传输过程中或存储过程中,直接用明文的密码都是很危险的。可以在传输之前先用MD5加密,存储也不用存储明文,可以直接存储MD5值。在验证时,先把输入的密码转换成MD5值再与存储值进行对比。

2.     业务升级工具开发的痛点分析

业务升级工具的开发主要包括升级和回退,其中主要涉及各个业务相关的SQL文件,开发升级过程最耗时且易出错的地方在于:升级前后各类型sql文件的对比合入。之前的流程通过BeyondCompare对比文件夹,手工判断对应文件是否需要合入,耗时且易出错。因此,急需将该对比过程完成自动化执行,提升开发效率及准确率。

3.     MD5算法在业务升级工具开发过程中的应用

由于MD5算法可以用于文件的一致性验证,即在业务升级工具中,任一SQL的内容在升级前后有变动,则该文件需升级考虑。因此,将升级前文件内容读入,生成文件内容的MD5值,对比目标版本的文件内容生成的MD5值,输出不同文件内容的文件名及路径。

 

参考:

https://baike.baidu.com/item/MD5/212708?fr=aladdin#2

https://www.cnblogs.com/ooobj/p/4270531.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值