aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--file.go2
-rw-r--r--keys.go14
2 files changed, 15 insertions, 1 deletions
diff --git a/file.go b/file.go
index eae935b..c0d60ea 100644
--- a/file.go
+++ b/file.go
@@ -47,7 +47,7 @@ func (f *File) ReadFrom(r io.Reader) error {
if err := checkComment(comment); err != nil {
return err
}
- f.Comment = strings.TrimSpace(comment[len(commentHdr)+1:])
+ f.Comment = strings.TrimSpace(comment[len(commentHdr):])
raw, err := buf.ReadString('\n')
if err != nil {
diff --git a/keys.go b/keys.go
index b48302e..987f6b6 100644
--- a/keys.go
+++ b/keys.go
@@ -46,7 +46,21 @@ func (v *EncKey) XOR(key []byte) {
}
}
+func (v *Sig) IsValid() bool {
+ return v.PKAlg == PKAlg
+}
+
+func (v *PubKey) IsValid() bool {
+ return v.PKAlg == PKAlg
+}
+
func (v *EncKey) IsValid(pass []byte) bool {
+ if v.PKAlg != PKAlg {
+ return false
+ }
+ if v.KDFAlg != KDFAlg {
+ return false
+ }
if v.KDFRounds > 0 {
key := bhash.Pbkdf(pass, v.Salt[:], int(v.KDFRounds), len(v.SecKey))
v.XOR(key)