最近替公司的系統開發了一些工具, 深深覺的有個良好的 Hash 演算法, 用處實在太多了
唯一的限制, 真的就只在於你的想像力而以...
Hash algorithm (中譯: 雜湊演算法), 其實沒有什麼, 不過就是一個數學函數, Hash(X) = ......... 這樣而以. 不同的資料代進去計算, 可以得到不一樣的值. 這些值越亂越好, 越沒有規則越好, 輸出的值越難預測越好, 而且不能從輸出的值反推回原本輸入的資料.
看來很複雜, 其實很簡單, 身份證字號最後一碼, 就是跟據前面的字母加上八個數字依某個原則算出來的, 勉強也可以當成一個簡單的 Hash function. 它能幹嘛? 透過最後一碼當檢查碼, 可以確認這個身份證字號是不是亂寫的.
當然實際上應用的 hash algorithm 不像身份證號碼這麼簡單. 常用的就如 MD5 (Message Digest 5), SHA (Secure Hash Algorithm), SHA256, SHA512 ... etc. 這些演算法的輸入, 可以是一連串的 binary data, 像是一整個檔案. 而輸出的則是故定長度的 bytes, 能用的地方很多, 比如:
這些都是我實際上在公司開發的系統上應用的地方, 不過, 打到這裡, 發現想講的才講了 1/10 不到, 但是已經覺的手痠了, 哈哈... 就當在閒聊吧, 下回再說
嘖....
URL: http://www.skype.com/intl/
.NET CLR 上能支援的 language 越來越多了... 真是個好消息...
Python: Microsoft IronPython 0.7.1 [URL]
PHP: Phalanger, .NET 平台上的 PHP compiler [URL]
ThinkPad 自從移到對岸生產後, 很多人都抱怨品質不如以往... 過去一台要 100K 以上的機器, 現在掉到一半不到的價位, 品質比以前差是可預期的...
不過, 我這台 X31 竟然在 keyboard 下方, 就是平常打字手掌靠著的地方, 邊邊竟然裂開了 ... 翻一翻討論區, 這邊似乎是設計上的問題, 許多 X31 的使用者都碰到一樣的問題... 就趁著假日拿去送修, 不錯嘛, 多花錢買保固還是有點用, 兩個小時後就換好新的外殼了
換掉這片外殼, 剛好也一起解決我多年的苦惱... notebook 剛買來不都會貼一堆貼紙嘛? VGA chip 貼一張, Intel Centrio 貼一張, Microsoft Windows XP 貼一張, 有的 notebook 廠商自己再貼一大張... 用久了貼紙開始撥落, 殘膠留在上面用起來實在很不舒服... 剛好換了這片 palmset, 上面乾乾淨淨什麼貼紙都沒有
希望到三年保固期滿後不要再裂開了 , 不然就要破費了...
總算達成目標了!!
買了張便宜的 PCI VGA 卡 ( nVidia FX5200, 128mb ram ), 我的 X31 總算能用 DVI + LCD monitor 了
不過 dock 上唯一的一個 PCI slot 拿來裝 vga card, 原本的 1394 卡只好拔掉, 看來得再去物色一張便宜的 PCMCIA 1394 card 來用, 真是大工程...
換了 VGA 卡, 當然是滿意啦 , 效果比內建的強太多, 爽度也不一樣, 不過也有一些缺點就是了... 最大的缺點就是換上去的 VGA 不能停用, 也就是我一定得關機才能拔走 notebook. 以前慣用的休眠模式等於失效了. 這是最大的不便... 不能休眠拔了就走, 實在是有點傷腦筋
第二個小缺點就是, IBM 附的 Presentation Director , 它的切換 display mode 也只支援內建的 ATI chip... 沒辦法把外接的 VGA 也納入它的 theme... 變成回家後得自己按右鍵, 啟用 DVI output...
不過比起其它的 notebook user 來說, 已經太好命了, 其它 notebook user 連接 pci 的機會都沒有... , 該滿足了... 該滿足了...