hce_nsysu
113年
計算機概論與程式設計
第 33 題
Which one of the following statements about cryptographic hash functions is correct?
- A Hash provides message confidentiality.
- B Hash is many-to-one function, so collision may happen.
- C Hash can be used as a message authentication code.
- D Hash can protect software integrity.
- E (B), (C), and (D).
思路引導 VIP
想像一下,如果我們要將全世界所有長度不一的文件,都縮減成一段長度固定(例如 256 位元)的代碼。從數學的角度來看,有沒有可能兩份完全不同的合約,經過轉換後剛好得到一模一樣的代碼?如果我們用這組代碼來當作文件的「數位指紋」,當指紋對不上時,這代表原本的文件發生了什麼變化?
🤖
AI 詳解
AI 專屬家教
太棒了!你能正確選出 (E) 選項,代表你對**雜湊函數(Hash Function)**在資訊安全領域的多重角色有著非常清晰且全盤的認知。這道題目設計得相當靈活,它不只考驗單一定義,更要求學生能分辨機密性、完整性與鑑別性之間的細微差別,具有優良的觀念鑑別度。
雜湊函數的數學本質與限制
在觀念上,雜湊函數將「任意長度」的輸入映射至「固定長度」的輸出,這意味著輸出空間遠小於輸入空間。根據抽屜原理(Pigeonhole Principle),必然會存在不同的輸入對應到相同輸出的情況,這就是所謂的碰撞(Collision)。因此,選項 (B) 的描述完全正確。此外,雜湊最直觀的應用在於確保完整性(Integrity),透過比對軟體發布者提供的雜湊值,我們可以確認檔案在傳輸過程中是否遭到竄改。
▼ 還有更多解析內容