A pseudo-random number generator (PRNG) is an algorithm that produces sequences of numbers that only approximate true randomness, relying on an initial seed value to generate the sequence. While PRNGs are efficient and sufficient for many applications, they can be predictable if the seed is known, making them unsuitable for cryptographic purposes without additional security measures.