Kynn Jones <kynnjo@xxxxxxxxx> writes: > The requirements I've been given for the keys is that they be numeric, > reasonably easy to type (hence, no 40-digit keys), never beginning with 0, > and carrying no additional information content (or even suggesting it). Why not just (random()*899999)::int + 100000 This is unlikely to be cryptographically secure, but you didn't say you needed that. You will need to check for collisions, but that seems like something you really ought to do anyway. regards, tom lane