在计算机科学中，碰撞或冲突是指两个不同的元素具有相同的哈希值、校验和，数字指纹时发生的情况。当数据量足够多（例如将所有可能的人名和计算机文件名映射到一段字符上）时，碰撞是不可避免的。这仅仅是鸽巢原理的一个实例。碰撞的影响依程序而异。当散列函数和数字指纹用于标识相似数据时，程序被设计成尽可能增加相似但不同的数据发生碰撞的可能性；校验和则不同，要求尽可能使得相似的数据输出不同，而不考虑不同数据输出相同的情况。