func generatePassword() string {
	const randomBytesLength = 16
	encoding := base64.RawURLEncoding

	randomBytes := make([]byte, encoding.DecodedLen(randomBytesLength))
	_, err := rand.Read(randomBytes)
	if err != nil {
		panic(fmt.Errorf("Could not generate random password: %s", err.Error()))
	}

	return "A0a!" + encoding.EncodeToString(randomBytes)
}
func generatePassword() string {
	const randomBytesLength = 16
	encoding := base64.RawURLEncoding

	randomBytes := make([]byte, encoding.DecodedLen(randomBytesLength))
	_, err := rand.Read(randomBytes)
	if err != nil {
		panic(fmt.Errorf("Could not generate random password: %s", err.Error()))
	}

	return "A0a!" + encoding.EncodeToString(randomBytes)
}
func generatePassword ( ) string { const randomBytesLength = 16 encoding := base64 . RawURLEncoding randomBytes := make ( [ ] byte , encoding . DecodedLen ( randomBytesLength ) ) _ , err := rand . Read ( randomBytes ) if err != nil { panic ( fmt . Errorf ( " " , err . Error ( ) ) ) } return " " + encoding . EncodeToString ( randomBytes ) }
// The key thing that makes a password secure is the _entropy_ that comes from a
// generator of true random numbers.  But many password rules require a mixure
// of cases, numbers and special characters.  Here we meet these rules by starting
// the password with the required upper/lower case, number and special.  Then we make
// it secure by adding truly random characters.
The key thing that makes a password secure is the _entropy_ that comes from a generator of true random numbers . But many password rules require a mixure of cases numbers and special characters . Here we meet these rules by starting the password with the required upper / lower case number and special . Then we make it secure by adding truly random characters .