From f249ea3e2595fdc0ffda3497b1c2c7546b87f6cc Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Tue, 12 Jan 2016 20:59:15 +0100 Subject: kiss --- account.go | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) (limited to 'account.go') diff --git a/account.go b/account.go index 95e2dde..32619f0 100644 --- a/account.go +++ b/account.go @@ -49,15 +49,7 @@ func newAccount(key *rsa.PrivateKey) (*Account, error) { // Signer describes a signing interface type Signer interface { Sign(interface{}, jose.NonceSource) (io.Reader, error) -} - -type Thumber interface { - Thumb() (string, error) -} - -type ThumbSigner interface { - Signer - Thumber + Thumb(string) (string, error) } // Sign implements Signer interface @@ -74,21 +66,13 @@ func (a *Account) Sign(v interface{}, n jose.NonceSource) (io.Reader, error) { return strings.NewReader(obj.FullSerialize()), nil } -func (a *Account) Thumb() (string, error) { +func (a *Account) Thumb(token string) (string, error) { k := &jose.JsonWebKey{Key: a.key.Public(), Algorithm: "RSA"} thumb, err := k.Thumbprint(crypto.SHA256) if err != nil { return "", err } - return base64.RawURLEncoding.EncodeToString(thumb), nil -} - -func KeyAuthorization(s Thumber, token string) (string, error) { - thumb, err := s.Thumb() - if err != nil { - return "", err - } - return token + "." + thumb, nil + return token + "." + base64.RawURLEncoding.EncodeToString(thumb), nil } func (a *Account) SaveKey(fname string) error { -- cgit v1.2.3