Since you're generating the keys in hex format, I suggest changing the charset from ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890 to ABCDEF1234567890, because that's the base for hex. I'd also add that I think it's more aesthetic if the separator is simply a space rather than a hyphen, as that is more often the case for hex keys.