A hash is a function that takes an input (or "message") and produces a fixed-length string of characters, which serves as a unique identifier for that input. Hashing works by applying an algorithm to the input data, generating a hash value that is mathematically derived, deterministic, and can't be reversed to obtain the original input.