type.go
func DecodeUnverifiedToken(buf []byte, ut *UnverifiedToken) error {
	b := bytes.Split(buf, tokenSep)
	if len(b) != 3 {
		return ErrInvalidToken
	}

	ut.Header = b[0]
	ut.Payload = b[1]
	ut.Signature = b[2]

	return nil
}
func DecodeUnverifiedToken(buf []byte, ut *UnverifiedToken) error {
	b := bytes.Split(buf, tokenSep)
	if len(b) != 3 {
		return ErrInvalidToken
	}

	ut.Header = b[0]
	ut.Payload = b[1]
	ut.Signature = b[2]

	return nil
}
// DecodeUnverifiedToken decodes a token into the provided UnverifiedToken.