From c1a37e887d2470b04fe4f7f39149f7d14b3f487d Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Mon, 24 Apr 2017 09:24:01 +0200 Subject: Refactor Kdf --- cmd/signify/main.go | 30 +++++++++--------------------- 1 file changed, 9 insertions(+), 21 deletions(-) (limited to 'cmd') diff --git a/cmd/signify/main.go b/cmd/signify/main.go index 6ec787b..407609a 100644 --- a/cmd/signify/main.go +++ b/cmd/signify/main.go @@ -45,11 +45,7 @@ func main() { switch { case *generate: - rounds := signify.DefaultRounds - if *nopass { - rounds = 0 - } - if err := Generate(*pub, *sec, *comment, rounds); err != nil { + if err := Generate(*pub, *sec, *comment, *nopass); err != nil { log.Fatal(err) } case *sign: @@ -65,22 +61,20 @@ func main() { } } -func Generate(pubFile, secFile, comment string, rounds int) error { +func Generate(pubFile, secFile, comment string, nopass bool) error { if !NamingScheme(pubFile, secFile) { return ErrNamingScheme } + pubKey, encKey, err := signify.NewKey() if err != nil { return err } - if rounds > 0 { - pass, err := signify.AskPassword(true) - if err != nil { - return err - } - encKey.Kdf(pass, rounds) + if nopass { + encKey.KDFRounds = 0 } + encKey.Kdf(signify.AskConfirmed) encRaw, err := signify.Marshal(encKey) if err != nil { @@ -110,7 +104,7 @@ func Generate(pubFile, secFile, comment string, rounds int) error { return nil } -func OpenSec(fname string) (*signify.EncKey, error) { +func OpenEnc(fname string) (*signify.EncKey, error) { f, err := signify.ParseFile(fname) if err != nil { return nil, err @@ -119,13 +113,7 @@ func OpenSec(fname string) (*signify.EncKey, error) { if err := signify.Unmarshal(f.RawKey, encKey); err != nil { return nil, err } - if rounds := encKey.Rounds(); rounds > 0 { - pass, err := signify.AskPassword(false) - if err != nil { - return nil, err - } - encKey.Kdf(pass, rounds) - } + encKey.Kdf(signify.AskPassword) if err := encKey.Check(); err != nil { return nil, err } @@ -170,7 +158,7 @@ func OpenSig(fname string) (*signify.Sig, []byte, error) { } func Sign(msgFile, secFile string, embed bool) error { - encKey, err := OpenSec(secFile) + encKey, err := OpenEnc(secFile) if err != nil { return err } -- cgit v1.2.3