0
我想創建一個設備一個唯一的ID,所以我決定創建SHA1(MAC XOR時間戳XOR USER_PASSWORD)。有沒有與此相關的安全問題?做SHA1(MAC CONCATENATE時間戳CONCATENATE user_password)會更好嗎?在散列之前連接或「異或」鍵以創建唯一的ID?
謝謝
我想創建一個設備一個唯一的ID,所以我決定創建SHA1(MAC XOR時間戳XOR USER_PASSWORD)。有沒有與此相關的安全問題?做SHA1(MAC CONCATENATE時間戳CONCATENATE user_password)會更好嗎?在散列之前連接或「異或」鍵以創建唯一的ID?
謝謝
使用串聯 - 那麼你會在可用的源數據的所有可以立足的哈希值。
如果使用XOR然後有一個風險,即一塊源數據的將「抵消」的剩餘數據的比特的部分(或全部)之前,它甚至傳遞到哈希函數。
和連接,而不是異或不會影響您的哈希存儲所需的空間 - 生成的SHA1哈希值將永遠是不管你的源數據的大小爲20個字節。
謝謝你,好了,我認爲是「多」的風險,但只是一個很小的更多的風險,因爲即使萬一一塊cancell了其他部分的數據時,SHA1顯然將產生較強的散列,我錯了? – C2T38SN 2010-12-03 12:44:51