Hash,一(yī)般翻译做“散列”,也有直接音(yīn)译为“哈(hā)希”的,就是把任意长度的(de)输入(又叫做预(yù)映射, pre-image),通(tōng)过散列算法,变换成(chéng)固定(dìng)长度的(de)输出(chū),该输(shū)出就是散(sàn)列值。这(zhè)种转换是一(yī)种压缩映射,也就是,散列值的空间通常(cháng)远小于(yú)输(shū)入(rù)的空间,不同的输入可能(néng)会散列成相同(tóng)的输出(chū),而不(bú)可能从散(sàn)列(liè)值(zhí)来唯一的确(què)定输(shū)入值。简单的(de)说(shuō)就是一种将任意长度的消息压缩(suō)到某(mǒu)一固定长度的消息摘要的函数。
