iT邦幫忙

2022 iThome 鐵人賽

DAY 24
0
自我挑戰組

簡介密碼學系列 第 24

Day24- 雜湊函式

  • 分享至 

  • xImage
  •  

雜湊函式是不是加密?

其實雜湊函式並不是一種加密,但在現代通訊加密中確有這不可缺少的重要性
先前介紹的密碼系統幾乎提供了保密性完整性可用性
但在現代密碼學中,有幾種性質也是被重點關注的,不可抵賴性身分驗證
而雜湊函式能提供很好的幫助

何謂雜湊函式?

雜湊函式(英語:Hash function)是一種演算法,對於任意的輸入,會給出對應的雜湊值(hash values)
有點類似人類的指紋,一個好的雜湊函式會盡量滿足幾個條件:

1.不可逆推:對於任意的輸入值a,經過雜湊函式h,會得到雜湊值h(a),但對於雜湊值h(a)必須要無法回算出輸入值a
2.固定長度的輸出:無論輸入的數值是大小是高是矮,無論長怎樣,經過雜湊函式後都會變成一樣的長度
3.單一性:對於一個輸入值a,和其雜湊值h(a),不會存在其他輸入值b,而h(b)=h(a),所以說就跟指紋一樣,每個人都應該是獨一無二的
4.雪蹦效應:對於輸入值a,和其雜湊值h(a),當a被改動,無論改動多少(即使只是一個位元的變化)雜湊值h(a)都應該要有
巨大的改變

雜湊函式的常見應用

1.保護密碼:大部分的網站在儲存使用者的密碼時通常不會直接存明文,而是存其雜湊值,
由於雜湊值因該是一對一,所以將使用者輸入的密碼經過雜湊後比較伺服器存的雜湊值就能知道對不對了,
也能用於其他敏感資料
2.數位簽章:一種用公鑰演算法來辨識及確認電子文件簽署人身分、資格及電子文件真偽者
3.確保傳遞真實的資訊:將訊息和其雜湊值一起送出,能用來驗證訊息是否無誤

雜湊碰撞

當一個雜湊函式被發現有兩個不同的輸入,但生成一樣的輸出時
就說該雜湊函式有碰撞

常見的雜湊函式

1.MD4(有碰撞)
2.MD5(有碰撞)
3.SHA-1(有碰撞)
4.SHA-256(無碰撞)
5.SHA-512(無碰撞)
有碰撞並不代表不能使用,但使用上就要小心,怕被當成攻擊點


上一篇
Day23- 橢圓曲線在密碼學上的應用
下一篇
Day25- 數位簽章
系列文
簡介密碼學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言