Read Sean

          Read me, read Sean.
          posts - 508, comments - 655, trackbacks - 9, articles - 4

          導航

          公告


          • 關于我
          • 人生是一場對話
          • gaoyuxiang AT gmail DOT com
          • titlelogo.png

          • 我的譯作
          • Scala for the Impatient
          • Open Source SOA
          • Programming in Scala

          • 聲明
          • 所有文章和代碼在這里以"現狀"提供,作者不提供任何形式的擔保,也沒有授予除閱讀和有條件共享之外的任何權利。除非特別說明,所有文章均為本blog作者原創,如需轉載請注明出處和原作者,如用于商業目的,需作者本人書面許可。

          • 推薦文章
          • Pylons起步

          常用鏈接

          留言簿(29)

          隨筆分類(842)

          隨筆檔案(507)

          文章檔案(4)

          Friends' blogs

          搜索

          •  

          積分與排名

          • 積分 - 782854
          • 排名 - 54

          最新評論

          閱讀排行榜

          評論排行榜

          [Tips] 使用Ruby計算MD5 checksum

          Posted on 2007-02-10 12:53 laogao 閱讀(2637) 評論(0)  編輯  收藏 所屬分類: Other Languages

          很多開源框架的官方下載都會提供MD5的驗證碼,用于驗證下載的完整性,確保用戶下載的版本和發布者期望的版本是一致的,防止有人惡意篡改,尤其是存在很多鏡像站點的時候。使用Unix系統的朋友可以通過命令行直接md5 + 文件名,或者md5sum + 文件名取得本地文件的md5驗證碼。使用Windows的朋友也能在網上找到不止一個提供MD5的工具。

          不過既然Ruby在Unix/Windows/Mac上都能跑,那Ruby有沒有提供MD5的功能讓我們可以以一致的方式取得MD5 checksum呢?答案是有。
          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作比對看是否一致,即可認定下載到本地的版本是否完整。


          主站蜘蛛池模板: 石门县| 宿州市| 宽城| 宝鸡市| 安仁县| 南乐县| 宜兴市| 疏附县| 新安县| 蓬莱市| 菏泽市| 临猗县| 诸城市| 陆丰市| 湘潭县| 苍溪县| 柳州市| 南乐县| 民权县| 永康市| 彭泽县| 建始县| 宁德市| 吴江市| 金山区| 香港| 苏尼特左旗| 隆子县| 平安县| 商都县| 精河县| 惠东县| 凤山市| 宜黄县| 宾川县| 友谊县| 莒南县| 阿坝县| 靖远县| 宁津县| 扶沟县|