iT邦幫忙

2022 iThome 鐵人賽

DAY 13
0

Day13-[Ruby]奇怪卻很重要.雜湊(Hash)是什麼?(part III)

在網上查找資料時,
發現了Hash function(雜湊函式),
了解一下它的重要性。

雜湊函式(Hash function)為什麼重要?

雜湊演算法也被用來加密存在資料庫中的密碼(password)字串,由於雜湊演算法所計算出來的雜湊值(Hash Value)具有不可逆(無法逆向演算回原本的數值)的性質,因此可有效的保護密碼。維基百科

大家應該都有玩過爬格子,
它就像好不容易爬完格子後,
竟然還要再解謎才能得到寶藏。

你想像一下,
你拿到一把鑰匙"Key"
打開了一個通往神祕通道的門,
經過一連串的路(雜湊函式"Hash function"),
你會得到一組謎語(得到雜湊值"Hash value"),
再利用祖傳字典(雜湊表"Hash table")
得到寶藏真正的位置,
再拿到寶藏(資料"Value")。

而中間經過的路,
你沒有上帝視角,
不知道整個爬格子的圖長怎樣,
沒辦法看到每條路怎麼走,
而且是摸黑的,
所以你不會知道你中間到底轉了幾個彎,
也因此不可逆(回不去了,瑞凡!)

這也是Hash function會被用來保護密碼(我們的寶藏)的原因。

所以Hash雖然翻譯奇怪了點、難懂了點,
但卻非常有趣而且重要喔!

tags: Ruby Hash

上一篇
Day12-[Ruby]奇怪卻很重要.雜湊(Hash)是什麼?(part II)
下一篇
Day14-[Ruby]奇怪卻很重要.符號(Symbol)是什麼?
系列文
從零開始的工程師轉職之路.新手學Ruby / Ruby on Rails遇到的問題30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言