訊息認證碼
使用單向雜湊函式可以構造訊息認證碼。
訊息認證碼是將「傳送者和接收者之間的共享金鑰」和「訊息,進行混合後計算出的雜湊值。使用訊息認證碼可以檢測並防止通訊過程中的錯誤、篡改以及偽裝。
數字簽名
在進行數字簽名時也會使用單向雜湊函式。
數字簽名是現實社會中的簽名(sign)和蓋章這樣的行為在數字世界中的實現。數字簽名的處理過程非常耗時,因此一般不會對整個訊息內容直接施加數字簽名,而是先通過單向雜湊函式計算出訊息的雜湊值,然後再對這個雜湊值施加數字簽名。
偽隨機數生成器
使用單向雜湊函式可以構造偽隨機數生成器。
密碼技術中所使用的隨機數需要具備「事實上不可能根據過去的隨機數列**未來的隨機數列」這樣的性質。為了保證不可**性,可以利用單向雜湊函式的單向性。
一次性口令
使用單向雜湊函式可以構造一次性口令(one-time password)。
一次性口令經常被用於伺服器對客戶端的合法性認證。在這種方式中,通過使用單向雜湊函式可以保證口令只在通訊鏈路上傳送一次(one-time),因此即使竊聽者竊取了口令,也無法使用。
雜湊函式及其應用
雜湊,英文hash,也有直接音譯為 雜湊 的,就是把任意長度的輸入 又叫做預對映,pre image 通過雜湊演算法,變換成固定長度的輸出,該輸出就是雜湊值。這種轉換是一種壓縮對映,也就是,雜湊值的空間通常遠小於輸入的空間,不同的輸入可能會雜湊成相同的輸出,所以不可能從雜湊值來確定唯一的輸入值。簡單...
雜湊函式(雜湊函式,Hash Function)
說明 雜湊的概念屬於查詢,它不以關鍵字的比較為基本操作,採用直接定址技術。在理想情況下,查詢的期望時間為o 1 簡單的說,hash函式就是把任意長的輸入字串變化成固定長的輸出字串的一種函式。輸出字串的長度稱為hash函式的位數。下圖 於維基百科 雜湊函式把訊息或資料壓縮成摘要,使得資料量變小,將資料...
雜湊函式 雜湊函式 演算法
常用字串雜湊函式有bkdrhash,aphash,djbhash,jshash,rshash,sdbmhash,pjwhash,elfhash等等。c 實現 include define m 249997 define m1 1000003 define m2 10000019 大素數 using ...