循环冗余校验（CRC）.循环冗余校验（CRC）是一个非安全的散列函数，旨在检测计算机网络中数字数据的意外变化。因此，它不适合检测恶意引入的错误。循环码有着非常适合检测的有利特性。CRC尤其容易在硬件中实现，并且因此常用在数字网络和诸如硬盘等存储设备中。奇偶校验是循环冗余校验的特殊案例，其中单比特CRC由除数x + 1生成。
加密散列函数.加密散列函数的输出也称消息摘要，它可以提供强力的数据完整性保证，无论数据改变是偶然（例如由于传输错误）还是被恶意