Because of the new Challenge, I went back to look at the older Challenges. I'm sure I would not have done better if I'd been here then, but with Saturn pointing the way, I played around with his method. Most of the other solutions I found were longer, but I did find one slightly shorter.

Since the rules say it's for a fresh install, the default for $sreq and $creq is 'ask'. And if $~ is allowed, then I would assume that $$ is also allowed. This shaves the non-encoding variant by 2 bytes to 46.

Code:
alias numbers return $hash($sreq $$ $cr,$bits)