use raw base64 as defined by rfc7515
This commit is contained in:
parent
a00a154398
commit
1613055dfd
3 changed files with 12 additions and 7 deletions
7
encoding.go
Normal file
7
encoding.go
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
// Copyright (C) 2018 Marius Schellenberger
|
||||
|
||||
package jwt
|
||||
|
||||
import "encoding/base64"
|
||||
|
||||
var enc = base64.RawURLEncoding
|
||||
5
jwt.go
5
jwt.go
|
|
@ -6,7 +6,6 @@ package jwt
|
|||
import (
|
||||
"crypto/hmac"
|
||||
"crypto/rand"
|
||||
"encoding/base64"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"io"
|
||||
|
|
@ -210,9 +209,9 @@ func (jwt *JWT) Sign(t *Token) (err error) {
|
|||
if err != nil {
|
||||
return
|
||||
}
|
||||
t.data = base64.URLEncoding.EncodeToString(head) + TokenSeparator + base64.URLEncoding.EncodeToString(claims)
|
||||
t.data = enc.EncodeToString(head) + TokenSeparator + enc.EncodeToString(claims)
|
||||
t.rawSignature = jwt.sum(t.data, h)
|
||||
t.signature = base64.URLEncoding.EncodeToString(t.rawSignature)
|
||||
t.signature = enc.EncodeToString(t.rawSignature)
|
||||
t.raw = t.data + TokenSeparator + t.signature
|
||||
return
|
||||
}
|
||||
|
|
|
|||
7
token.go
7
token.go
|
|
@ -3,7 +3,6 @@
|
|||
package jwt
|
||||
|
||||
import (
|
||||
"encoding/base64"
|
||||
"encoding/json"
|
||||
"strings"
|
||||
)
|
||||
|
|
@ -75,7 +74,7 @@ func DecodeToken(token string) (t *Token, err error) {
|
|||
}
|
||||
}
|
||||
t = new(Token)
|
||||
header, err := base64.URLEncoding.DecodeString(parts[0])
|
||||
header, err := enc.DecodeString(parts[0])
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
|
@ -83,7 +82,7 @@ func DecodeToken(token string) (t *Token, err error) {
|
|||
if err != nil {
|
||||
return
|
||||
}
|
||||
claims, err := base64.URLEncoding.DecodeString(parts[1])
|
||||
claims, err := enc.DecodeString(parts[1])
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
|
@ -91,7 +90,7 @@ func DecodeToken(token string) (t *Token, err error) {
|
|||
if err != nil {
|
||||
return
|
||||
}
|
||||
t.rawSignature, err = base64.URLEncoding.DecodeString(parts[2])
|
||||
t.rawSignature, err = enc.DecodeString(parts[2])
|
||||
t.signature = parts[2]
|
||||
t.data = parts[0] + TokenSeparator + parts[1]
|
||||
t.raw = token
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue