A hash function h(x) has the properties: Compression: h maps an input of x of arbitrary bit length to an output h(x) of fixed bit length n which may be smaller Polynomial time computable