clef: validate master password

This commit is contained in:
Martin Holst Swende 2018-09-25 16:48:18 +02:00
parent e696b4e7d4
commit d0e716bfaa
No known key found for this signature in database
GPG key ID: 683B438C05A5DDF0

View file

@ -229,7 +229,16 @@ func initializeSecrets(c *cli.Context) error {
if c.GlobalBool(utils.LightKDFFlag.Name) { if c.GlobalBool(utils.LightKDFFlag.Name) {
n, p = keystore.LightScryptN, keystore.LightScryptP n, p = keystore.LightScryptN, keystore.LightScryptP
} }
password := getPassPhrase("The master seed of clef is locked with a password. Please give a password. Do not forget this password.", true) text := "The master seed of clef is locked with a password. Please give a password. Do not forget this password."
var password string
for {
password = getPassPhrase(text, true)
if err := core.ValidatePasswordFormat(password); err != nil {
fmt.Printf("invalid password: %v\n", err)
} else {
break
}
}
cipherSeed, err := encryptSeed(masterSeed, []byte(password), n, p) cipherSeed, err := encryptSeed(masterSeed, []byte(password), n, p)
if err != nil { if err != nil {
return fmt.Errorf("failed to encrypt master seed: %v", err) return fmt.Errorf("failed to encrypt master seed: %v", err)