"fmt"
"io/ioutil"
"log"
+ "os"
"strings"
"github.com/agl/ed25519"
// Parse either short or long verifier form.
func VerifierFromString(input string) (*Verifier, error) {
s := strings.Split(input, "$")
- if !(len(s) != 4 || len(s) != 5) || s[1] != "argon2d" {
+ if len(s) < 4 || s[1] != "argon2d" {
return nil, errors.New("Invalid verifier structure")
}
var m, t, p int
var err error
var pass string
if path == "" {
- fmt.Print("Passphrase:")
+ os.Stderr.Write([]byte("Passphrase:"))
p, err = terminal.ReadPassword(0)
- fmt.Print("\n")
+ os.Stderr.Write([]byte("\n"))
pass = string(p)
} else {
p, err = ioutil.ReadFile(path)