aboutsummaryrefslogtreecommitdiff
path: root/key/key.go
diff options
context:
space:
mode:
Diffstat (limited to 'key/key.go')
-rw-r--r--key/key.go25
1 files changed, 4 insertions, 21 deletions
diff --git a/key/key.go b/key/key.go
index 57978e0..c7581b8 100644
--- a/key/key.go
+++ b/key/key.go
@@ -7,8 +7,6 @@ import (
"encoding/binary"
"errors"
- "dim13.org/signify/bhash"
-
"golang.org/x/crypto/ed25519"
)
@@ -94,21 +92,6 @@ func (v *Enc) Check() error {
return nil
}
-func (e *Enc) Kdf(ask func() (string, error)) error {
- if e.KDFRounds == 0 {
- return nil
- }
- pass, err := ask()
- if err != nil {
- return err
- }
- xor := bhash.Pbkdf([]byte(pass), e.Salt[:], int(e.KDFRounds), len(e.Key))
- for i := range xor {
- e.Key[i] ^= xor[i]
- }
- return e.Check()
-}
-
func Unmarshal(b []byte, v interface{}) error {
buf := bytes.NewReader(b)
if err := binary.Read(buf, binary.BigEndian, v); err != nil {
@@ -125,14 +108,14 @@ func Marshal(v interface{}) ([]byte, error) {
return buf.Bytes(), nil
}
-func NewKey() (Pub, Enc, error) {
+func NewKey() (*Pub, *Enc, error) {
pub, sec, err := ed25519.GenerateKey(rand.Reader)
if err != nil {
- return Pub{}, Enc{}, err
+ return nil, nil, err
}
- pubKey := Pub{PKAlg: pkAlg}
- encKey := Enc{PKAlg: pkAlg, KDFAlg: kdfAlg, KDFRounds: DefaultRounds}
+ pubKey := &Pub{PKAlg: pkAlg}
+ encKey := &Enc{PKAlg: pkAlg, KDFAlg: kdfAlg, KDFRounds: DefaultRounds}
copy(pubKey.Key[:], pub)
copy(encKey.Key[:], sec)