I select random characters from an array:
characters = "bcdfghjklmnpqrstvwxz23456789" ... get Byte Array ...
I leave out I O and 1 0 to avoid confusion as suggested above, and all vowels to avoid offensive words in any language except Qwlghm.
Any time this random password question comes up, I drag up CompuServe, the great online giant of the 80s and 2400 baud modems. Their passwords were two randomly chosen dictionary words. Mine was "water boldly". It's certainly easier to remember (for the last 25 years) than a random
string of letters and digits.