[Tips] 使用Ruby计算MD5 checksum


很多开源框架的官方下载都会提供MD5的验证码,用于验证下载的完整性,确保用户下载的版本和发布者期望的版本是一致的,防止有人恶意篡改,尤其是存在很多镜像站点的时候。使用Unix系统的朋友可以通过命令行直接md5 + 文件名,或者md5sum + 文件名取得本地文件的md5验证码。使用Windows的朋友也能在网上找到不止一个提供MD5的工具。

不过既然Ruby在Unix/Windows/Mac上都能跑,那Ruby有没有提供MD5的功能让我们可以以一致的方式取得MD5 checksum呢?答案是有。
ruby 代码
 
  1. #!/usr/bin/env ruby  
  2. require 'digest/md5'  
  3. ARGV.each do |f|  
  4.     checksum = Digest::MD5.hexdigest(File.read(f))  
  5.     puts "#{f}:\t#{checksum}"  
  6. end  

比如我们到 http://struts.apahce.org/下载1.2.9版本Struts的源码,下载到本地后,可以用上面的脚本获取相应的MD5码,输出为:

struts-1.2.9-src.tar.gz   63ff6e570410876412f8fd97749b2415

拿后面这个63ff6e570410876412f8fd97749b2415和官方网站上相应的MD5 checksum作比对看是否一致,即可认定下载到本地的版本是否完整。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值