Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[v2] cannot "sign" JWT with "none" #888

Closed
karelbilek opened this issue Mar 16, 2023 · 14 comments · Fixed by #890
Closed

[v2] cannot "sign" JWT with "none" #888

karelbilek opened this issue Mar 16, 2023 · 14 comments · Fixed by #890
Assignees

Comments

@karelbilek
Copy link

karelbilek commented Mar 16, 2023

Abstract

I am trying to "sign" JWT with "none".

I know it's not a "proper" algorithm, but I want it to test that my app is not letting "none" in.

Maybe I am just missing how to do it though.

Describe the proposed solution/change

signed, err := jwt.Sign(token, jwt.WithKey(jwa.NoSignature, nil))

This should work, but doesn't.

Analysis
I considered doing the JWT and encoding to base64 manually, but then I reimplement this library.

Additional context

https://www.acunetix.com/vulnerabilities/web/jwt-none-algorithm/

@lestrrat
Copy link
Collaborator

@karelbilek For completeness' sake, when you say "This should work", what are you expecting it to do, and what is it doing instead?

@lestrrat
Copy link
Collaborator

Note, I haven't reviewed the code yet, but my immediate thought is probably this should just return an error.

if _, err := jwt.Sign(token, jwt.WithKey(jwa.NoSignature, nil)); err != nil {
   panic(err) // should get here
}

Is this what you want?

@karelbilek
Copy link
Author

I want to create a JWT token with alg "none".

This should not return an error.

I will show an example later.

@lestrrat
Copy link
Collaborator

Oh, you actually want a "none"... Okay, I think I made it so that it refuses to do it. Anyways, an isolated test case would be nice just to make sure we're talking about exactly the same thing.

@karelbilek
Copy link
Author

expected:

package main

import (
	"fmt"

	"github.com/lestrrat-go/jwx/v2/jwa"
	"github.com/lestrrat-go/jwx/v2/jwt"
)

func main() {
	token := jwt.New()
	token.Set(jwt.SubjectKey, "foo")
	token.Set(jwt.IssuerKey, "bar")

	signed, err := jwt.Sign(token, jwt.WithKey(jwa.NoSignature, nil))
	if err != nil {
		panic(err)
	}

	// output: eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJpc3MiOiJiYXIiLCJzdWIiOiJiYXIifQ.
	fmt.Printf("%s", signed)
}

Comparison with golang-jwt:

package main

import (
	"fmt"

	golangJWT "github.com/golang-jwt/jwt/v4"
)

func main() {
	token := golangJWT.NewWithClaims(golangJWT.SigningMethodNone, golangJWT.MapClaims{
		"sub": "bar",
		"iss": "bar",
	})
	signed, err := token.SignedString(golangJWT.UnsafeAllowNoneSignatureType)
	if err != nil {
		panic(err)
	}
	fmt.Printf("%s", signed)
}

lestrrat added a commit that referenced this issue Mar 16, 2023
@lestrrat
Copy link
Collaborator

Right, okay. We just don't allow "none". Let me get back to you in a few days, as I need to make up my mind on how/if I want to allow "none". Off the top of my head, I think if we allow the use of "none" it must be made a special case that requires an explicit opt-in like an extra option argument. But I need to think over what the best way is.

@karelbilek
Copy link
Author

Well, you can see how the other library does it.

The main reason why I want this is to write some tests against code that it really doesn't allow "none", that's all.

@lestrrat
Copy link
Collaborator

Option 1: extra option

jwt.Sign(token, jwt.WithKey(jwa.NoSignature, nil), jwt.WithAllowNone(true))

pros: explicit, minimal change to API
cons: there's no way to check if the "none" algo slipped in by mistake

Option 2: special option

jwt.Sign(token, jwt.WithNoSignature())

pros: very explicit.
cons: new API

Option 3: New function

jwt.SignNone(token)

pros: very very explicit
cons: new API

@lestrrat
Copy link
Collaborator

Well, you can see how the other library does it.

In case you didn't notice, I wrote this library because I don't agree with many of the decisions that "other" libraries made (with all due respect to their efforts), so I need to think this over. In general I don't think that "none" should be allowed at all, but I'm trying to think of a compromise.

@lestrrat
Copy link
Collaborator

lestrrat commented Mar 16, 2023

(These are just my notes, please ignore)

  • A new signer object for "none" is required.
  • jws.Verify should mirror the behavior of jws.Sign wrt to "none" algorithm
  • A separate, explicit option is probably better API wise.
  • We should return an error when we find the use of "none" with jws.WithKey

Unfortunately, this probably doesn't work?

jws.Verify(jwsmsg, jws.WithInsecureNoneAlgorithm())

This breaks when alg = "none" and jws.WithKeyUsed is passed? Could be a documented behavior, but seems a bit confusing... error out when that happens? Also, what happens when jws.WithKey or jws.WithKeyProvider is passed along with jws.WithInsecureNoneAlgorithm? which one takes precedence?

Also, what should happen for JWS messages with multiple signatures, which include "none"?

@lestrrat
Copy link
Collaborator

minor note: the original test code said it expected eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJpc3MiOiJiYXIiLCJzdWIiOiJiYXIifQ., but that payload is {"sub": "bar", "iss": "bar"}, whereas the code produced {"sub":"foo", "iss":"bar"}

@lestrrat
Copy link
Collaborator

@karelbilek FYI In branch gh-888, I've implemented a jws.Sign() that allows generating JWS with alg=none. However, before merging or releasing, I need to think of how to handle it in jws.Verify() (or not) as well as how to document it.

Note to self: need to test for the case where jws.WithInsecureNoSignature() and jwt.WithKey are used at the same time

@lestrrat
Copy link
Collaborator

@karelbilek after a bit of tinkering, I think the correct way is:

  • Allow signing with alg=none, when passed with an explicit option
  • DO NOT allow alg=none in verification
  • Ask the user to use jws.Parse if they really want to accept messages with alg=none

Please see #890 and let me know

@karelbilek
Copy link
Author

Perfect!

lestrrat added a commit that referenced this issue Mar 20, 2023
* Add test case for #888

* Catch the use of "none" when used in conjunction with jws.WithKey

* first pass implementing (jwt/jws).Sign that allows alg="none"

* regenerate jwt options

* appease linter

* Check for jws.Sign/Verify

* OK to _sign_ using `none`, but no verification

* Tweak Changes
lestrrat added a commit that referenced this issue Mar 21, 2023
* Add test case for #888

* Catch the use of "none" when used in conjunction with jws.WithKey

* first pass implementing (jwt/jws).Sign that allows alg="none"

* regenerate jwt options

* appease linter

* Check for jws.Sign/Verify

* OK to _sign_ using `none`, but no verification

* Tweak Changes
lestrrat added a commit that referenced this issue Mar 21, 2023
* Update deps

* Protect jws.Verify() and jwe.Encrypt() from panic on go1.19+ (#841)

* Protect jws.Verify() from panic on go1.19+

* Same problem, but in jwe

* Update Changes

* fix example (#843)

I have a feeling we inadvertently reverted some commit

* Action updates, doc tweaks (#844)

* Use tparse (#845)

* Use tparse

* s/all/alltags/

* fix typo (#846)

* fix typo (#847)

* Bump kentaro-m/auto-assign-action from 1.2.0 to 1.2.4 (#848)

Bumps [kentaro-m/auto-assign-action](https://github.com/kentaro-m/auto-assign-action) from 1.2.0 to 1.2.4.
- [Release notes](https://github.com/kentaro-m/auto-assign-action/releases)
- [Commits](kentaro-m/auto-assign-action@v1.2.0...v1.2.4)

---
updated-dependencies:
- dependency-name: kentaro-m/auto-assign-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump codecov/codecov-action from 1 to 3 (#849)

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 1 to 3.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](codecov/codecov-action@v1...v3)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Work with invalid JWT buffers better (#851)

* Work with invalid JWT buffers better

* spelling

* Update Changes

* typo

* Tweak Changes

* Update Changes

* Bump github.com/goccy/go-json from 0.9.11 to 0.10.0 (#855)

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.9.11 to 0.10.0.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.9.11...v0.10.0)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump github.com/lestrrat-go/option from 1.0.0 to 1.0.1 (#858)

Bumps [github.com/lestrrat-go/option](https://github.com/lestrrat-go/option) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/lestrrat-go/option/releases)
- [Commits](lestrrat-go/option@v1.0.0...v1.0.1)

---
updated-dependencies:
- dependency-name: github.com/lestrrat-go/option
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/stale from 6 to 7 (#859)

Bumps [actions/stale](https://github.com/actions/stale) from 6 to 7.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v6...v7)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Tweak v2 tests (#863)

* Port changes from #862

* Actually report errors

* fix expected result

* Unbeknownst to me, benchstat seems to have changed

* Update Contribution Guidelines

* Fix generated header file comments (#867)

The generated file header should match regexp:
^// Code generated .* DO NOT EDIT\.$

See https://golang.org/s/generatedcode.

* Remove unused variables in ReadFile (#866)

* Bump kentaro-m/auto-assign-action from 1.2.4 to 1.2.5 (#868)

Bumps [kentaro-m/auto-assign-action](https://github.com/kentaro-m/auto-assign-action) from 1.2.4 to 1.2.5.
- [Release notes](https://github.com/kentaro-m/auto-assign-action/releases)
- [Commits](kentaro-m/auto-assign-action@v1.2.4...v1.2.5)

---
updated-dependencies:
- dependency-name: kentaro-m/auto-assign-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update tool deps (#869)

* Try updating tools for genjwt

* Update genjws

* Update genjwe

* Update genjwk

* Update genjwa

* Update genjwk

* Updage genoptions

* Update genreadfile

* Fix PEM armor for EC private keys when encoding (#876)

* Incorporate #875

* Test PEM roundtrip for other key types

* Use more constants

* Bump golang.org/x/crypto from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0 (#871)

* Bump golang.org/x/crypto from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](https://github.com/golang/crypto/commits/v0.6.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run appropriate `go get` and `go mod tidy` all over

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#873)

* Bump github.com/stretchr/testify from 1.8.1 to 1.8.2

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.1...v1.8.2)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* run appropriate `go get` and `go mod tidy` all over

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Update Changes

* Create codeql.yml

* Bump golang.org/x/crypto from 0.6.0 to 0.7.0 (#877)

* Bump golang.org/x/crypto from 0.6.0 to 0.7.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](golang/crypto@v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run go get and make tidy

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Add bazel support (#880)

* Attempt to enable bazel

* enable bazel building in smoke tests too

* tweak order

* Add explicit imports

* Add deps.bzl

* remove unused file reference

* Add missing BUILD file

* Add missing BUILD file

* add missing BUILD.bazel files

* add .bazelversion

* Add aspect presets

* Update Changes/README

* Create an auto-merge action for dependabot (#884)

* Create an auto-merge action for dependabot

* approve and merge

* indent

* Bump github.com/goccy/go-json from 0.10.0 to 0.10.1 (#882)

* Bump github.com/goccy/go-json from 0.10.0 to 0.10.1

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.10.0...v0.10.1)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run make tidy + bazel gazelle-update-repos

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Fix jwk cache docs (#885)

* Fix example comment

* Upon re-reading, this sentence does not need to exist

* autodoc updates (#886)

Co-authored-by: lestrrat <[email protected]>

* Bump actions/setup-go from 3 to 4 (#887)

Bumps [actions/setup-go](https://github.com/actions/setup-go) from 3 to 4.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](actions/setup-go@v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Allow "none" algorithm when signing with explicit option (#890)

* Add test case for #888

* Catch the use of "none" when used in conjunction with jws.WithKey

* first pass implementing (jwt/jws).Sign that allows alg="none"

* regenerate jwt options

* appease linter

* Check for jws.Sign/Verify

* OK to _sign_ using `none`, but no verification

* Tweak Changes

* typo (#893)

* Bump github.com/goccy/go-json from 0.10.1 to 0.10.2 (#892)

* Bump github.com/goccy/go-json from 0.10.1 to 0.10.2

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.10.1...v0.10.2)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run make tidy + bazel

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Update Changes

* Bump github.com/goccy/go-json from 0.9.11 to 0.10.0 (#855)

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.9.11 to 0.10.0.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.9.11...v0.10.0)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump github.com/lestrrat-go/option from 1.0.0 to 1.0.1 (#858)

Bumps [github.com/lestrrat-go/option](https://github.com/lestrrat-go/option) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/lestrrat-go/option/releases)
- [Commits](lestrrat-go/option@v1.0.0...v1.0.1)

---
updated-dependencies:
- dependency-name: github.com/lestrrat-go/option
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/stale from 6 to 7 (#859)

Bumps [actions/stale](https://github.com/actions/stale) from 6 to 7.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v6...v7)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Tweak v2 tests (#863)

* Port changes from #862

* Actually report errors

* fix expected result

* Unbeknownst to me, benchstat seems to have changed

* Update Contribution Guidelines

* Fix generated header file comments (#867)

The generated file header should match regexp:
^// Code generated .* DO NOT EDIT\.$

See https://golang.org/s/generatedcode.

* Remove unused variables in ReadFile (#866)

* Bump kentaro-m/auto-assign-action from 1.2.4 to 1.2.5 (#868)

Bumps [kentaro-m/auto-assign-action](https://github.com/kentaro-m/auto-assign-action) from 1.2.4 to 1.2.5.
- [Release notes](https://github.com/kentaro-m/auto-assign-action/releases)
- [Commits](kentaro-m/auto-assign-action@v1.2.4...v1.2.5)

---
updated-dependencies:
- dependency-name: kentaro-m/auto-assign-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update tool deps (#869)

* Try updating tools for genjwt

* Update genjws

* Update genjwe

* Update genjwk

* Update genjwa

* Update genjwk

* Updage genoptions

* Update genreadfile

* Fix PEM armor for EC private keys when encoding (#876)

* Incorporate #875

* Test PEM roundtrip for other key types

* Use more constants

* Bump golang.org/x/crypto from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0 (#871)

* Bump golang.org/x/crypto from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](https://github.com/golang/crypto/commits/v0.6.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run appropriate `go get` and `go mod tidy` all over

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#873)

* Bump github.com/stretchr/testify from 1.8.1 to 1.8.2

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.1...v1.8.2)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* run appropriate `go get` and `go mod tidy` all over

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Update Changes

* Create codeql.yml

* Bump golang.org/x/crypto from 0.6.0 to 0.7.0 (#877)

* Bump golang.org/x/crypto from 0.6.0 to 0.7.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](golang/crypto@v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run go get and make tidy

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Add bazel support (#880)

* Attempt to enable bazel

* enable bazel building in smoke tests too

* tweak order

* Add explicit imports

* Add deps.bzl

* remove unused file reference

* Add missing BUILD file

* Add missing BUILD file

* add missing BUILD.bazel files

* add .bazelversion

* Add aspect presets

* Update Changes/README

* Create an auto-merge action for dependabot (#884)

* Create an auto-merge action for dependabot

* approve and merge

* indent

* Bump github.com/goccy/go-json from 0.10.0 to 0.10.1 (#882)

* Bump github.com/goccy/go-json from 0.10.0 to 0.10.1

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.10.0...v0.10.1)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run make tidy + bazel gazelle-update-repos

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Fix jwk cache docs (#885)

* Fix example comment

* Upon re-reading, this sentence does not need to exist

* autodoc updates (#886)

Co-authored-by: lestrrat <[email protected]>

* Bump actions/setup-go from 3 to 4 (#887)

Bumps [actions/setup-go](https://github.com/actions/setup-go) from 3 to 4.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](actions/setup-go@v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Allow "none" algorithm when signing with explicit option (#890)

* Add test case for #888

* Catch the use of "none" when used in conjunction with jws.WithKey

* first pass implementing (jwt/jws).Sign that allows alg="none"

* regenerate jwt options

* appease linter

* Check for jws.Sign/Verify

* OK to _sign_ using `none`, but no verification

* Tweak Changes

* typo (#893)

* Bump github.com/goccy/go-json from 0.10.1 to 0.10.2 (#892)

* Bump github.com/goccy/go-json from 0.10.1 to 0.10.2

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.10.1...v0.10.2)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run make tidy + bazel

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Update Changes

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Oleksandr Redko <[email protected]>
Co-authored-by: Mitsuo Heijo <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: lestrrat <[email protected]>
lestrrat added a commit that referenced this issue Jun 12, 2023
* Update deps

* Protect jws.Verify() and jwe.Encrypt() from panic on go1.19+ (#841)

* Protect jws.Verify() from panic on go1.19+

* Same problem, but in jwe

* Update Changes

* fix example (#843)

I have a feeling we inadvertently reverted some commit

* Action updates, doc tweaks (#844)

* Use tparse (#845)

* Use tparse

* s/all/alltags/

* fix typo (#846)

* fix typo (#847)

* Bump kentaro-m/auto-assign-action from 1.2.0 to 1.2.4 (#848)

Bumps [kentaro-m/auto-assign-action](https://github.com/kentaro-m/auto-assign-action) from 1.2.0 to 1.2.4.
- [Release notes](https://github.com/kentaro-m/auto-assign-action/releases)
- [Commits](kentaro-m/auto-assign-action@v1.2.0...v1.2.4)

---
updated-dependencies:
- dependency-name: kentaro-m/auto-assign-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump codecov/codecov-action from 1 to 3 (#849)

Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 1 to 3.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](codecov/codecov-action@v1...v3)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Work with invalid JWT buffers better (#851)

* Work with invalid JWT buffers better

* spelling

* Update Changes

* typo

* Tweak Changes

* Update Changes

* Bump github.com/goccy/go-json from 0.9.11 to 0.10.0 (#855)

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.9.11 to 0.10.0.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.9.11...v0.10.0)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump github.com/lestrrat-go/option from 1.0.0 to 1.0.1 (#858)

Bumps [github.com/lestrrat-go/option](https://github.com/lestrrat-go/option) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/lestrrat-go/option/releases)
- [Commits](lestrrat-go/option@v1.0.0...v1.0.1)

---
updated-dependencies:
- dependency-name: github.com/lestrrat-go/option
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/stale from 6 to 7 (#859)

Bumps [actions/stale](https://github.com/actions/stale) from 6 to 7.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v6...v7)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Tweak v2 tests (#863)

* Port changes from #862

* Actually report errors

* fix expected result

* Unbeknownst to me, benchstat seems to have changed

* Update Contribution Guidelines

* Fix generated header file comments (#867)

The generated file header should match regexp:
^// Code generated .* DO NOT EDIT\.$

See https://golang.org/s/generatedcode.

* Remove unused variables in ReadFile (#866)

* Bump kentaro-m/auto-assign-action from 1.2.4 to 1.2.5 (#868)

Bumps [kentaro-m/auto-assign-action](https://github.com/kentaro-m/auto-assign-action) from 1.2.4 to 1.2.5.
- [Release notes](https://github.com/kentaro-m/auto-assign-action/releases)
- [Commits](kentaro-m/auto-assign-action@v1.2.4...v1.2.5)

---
updated-dependencies:
- dependency-name: kentaro-m/auto-assign-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update tool deps (#869)

* Try updating tools for genjwt

* Update genjws

* Update genjwe

* Update genjwk

* Update genjwa

* Update genjwk

* Updage genoptions

* Update genreadfile

* Fix PEM armor for EC private keys when encoding (#876)

* Incorporate #875

* Test PEM roundtrip for other key types

* Use more constants

* Bump golang.org/x/crypto from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0 (#871)

* Bump golang.org/x/crypto from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](https://github.com/golang/crypto/commits/v0.6.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run appropriate `go get` and `go mod tidy` all over

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#873)

* Bump github.com/stretchr/testify from 1.8.1 to 1.8.2

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.1...v1.8.2)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* run appropriate `go get` and `go mod tidy` all over

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Update Changes

* Create codeql.yml

* Bump golang.org/x/crypto from 0.6.0 to 0.7.0 (#877)

* Bump golang.org/x/crypto from 0.6.0 to 0.7.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](golang/crypto@v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run go get and make tidy

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Add bazel support (#880)

* Attempt to enable bazel

* enable bazel building in smoke tests too

* tweak order

* Add explicit imports

* Add deps.bzl

* remove unused file reference

* Add missing BUILD file

* Add missing BUILD file

* add missing BUILD.bazel files

* add .bazelversion

* Add aspect presets

* Update Changes/README

* Create an auto-merge action for dependabot (#884)

* Create an auto-merge action for dependabot

* approve and merge

* indent

* Bump github.com/goccy/go-json from 0.10.0 to 0.10.1 (#882)

* Bump github.com/goccy/go-json from 0.10.0 to 0.10.1

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.10.0...v0.10.1)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run make tidy + bazel gazelle-update-repos

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Fix jwk cache docs (#885)

* Fix example comment

* Upon re-reading, this sentence does not need to exist

* autodoc updates (#886)

Co-authored-by: lestrrat <[email protected]>

* Bump actions/setup-go from 3 to 4 (#887)

Bumps [actions/setup-go](https://github.com/actions/setup-go) from 3 to 4.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](actions/setup-go@v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Allow "none" algorithm when signing with explicit option (#890)

* Add test case for #888

* Catch the use of "none" when used in conjunction with jws.WithKey

* first pass implementing (jwt/jws).Sign that allows alg="none"

* regenerate jwt options

* appease linter

* Check for jws.Sign/Verify

* OK to _sign_ using `none`, but no verification

* Tweak Changes

* typo (#893)

* Bump github.com/goccy/go-json from 0.10.1 to 0.10.2 (#892)

* Bump github.com/goccy/go-json from 0.10.1 to 0.10.2

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.10.1...v0.10.2)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run make tidy + bazel

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Update Changes

* Bump github.com/goccy/go-json from 0.9.11 to 0.10.0 (#855)

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.9.11 to 0.10.0.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.9.11...v0.10.0)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump github.com/lestrrat-go/option from 1.0.0 to 1.0.1 (#858)

Bumps [github.com/lestrrat-go/option](https://github.com/lestrrat-go/option) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/lestrrat-go/option/releases)
- [Commits](lestrrat-go/option@v1.0.0...v1.0.1)

---
updated-dependencies:
- dependency-name: github.com/lestrrat-go/option
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump actions/stale from 6 to 7 (#859)

Bumps [actions/stale](https://github.com/actions/stale) from 6 to 7.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v6...v7)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Tweak v2 tests (#863)

* Port changes from #862

* Actually report errors

* fix expected result

* Unbeknownst to me, benchstat seems to have changed

* Update Contribution Guidelines

* Fix generated header file comments (#867)

The generated file header should match regexp:
^// Code generated .* DO NOT EDIT\.$

See https://golang.org/s/generatedcode.

* Remove unused variables in ReadFile (#866)

* Bump kentaro-m/auto-assign-action from 1.2.4 to 1.2.5 (#868)

Bumps [kentaro-m/auto-assign-action](https://github.com/kentaro-m/auto-assign-action) from 1.2.4 to 1.2.5.
- [Release notes](https://github.com/kentaro-m/auto-assign-action/releases)
- [Commits](kentaro-m/auto-assign-action@v1.2.4...v1.2.5)

---
updated-dependencies:
- dependency-name: kentaro-m/auto-assign-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update tool deps (#869)

* Try updating tools for genjwt

* Update genjws

* Update genjwe

* Update genjwk

* Update genjwa

* Update genjwk

* Updage genoptions

* Update genreadfile

* Fix PEM armor for EC private keys when encoding (#876)

* Incorporate #875

* Test PEM roundtrip for other key types

* Use more constants

* Bump golang.org/x/crypto from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0 (#871)

* Bump golang.org/x/crypto from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.0.0-20220427172511-eb4f295cb31f to 0.6.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](https://github.com/golang/crypto/commits/v0.6.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run appropriate `go get` and `go mod tidy` all over

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#873)

* Bump github.com/stretchr/testify from 1.8.1 to 1.8.2

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.1...v1.8.2)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* run appropriate `go get` and `go mod tidy` all over

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Update Changes

* Create codeql.yml

* Bump golang.org/x/crypto from 0.6.0 to 0.7.0 (#877)

* Bump golang.org/x/crypto from 0.6.0 to 0.7.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](golang/crypto@v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run go get and make tidy

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Add bazel support (#880)

* Attempt to enable bazel

* enable bazel building in smoke tests too

* tweak order

* Add explicit imports

* Add deps.bzl

* remove unused file reference

* Add missing BUILD file

* Add missing BUILD file

* add missing BUILD.bazel files

* add .bazelversion

* Add aspect presets

* Update Changes/README

* Create an auto-merge action for dependabot (#884)

* Create an auto-merge action for dependabot

* approve and merge

* indent

* Bump github.com/goccy/go-json from 0.10.0 to 0.10.1 (#882)

* Bump github.com/goccy/go-json from 0.10.0 to 0.10.1

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.10.0...v0.10.1)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run make tidy + bazel gazelle-update-repos

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Fix jwk cache docs (#885)

* Fix example comment

* Upon re-reading, this sentence does not need to exist

* autodoc updates (#886)

Co-authored-by: lestrrat <[email protected]>

* Bump actions/setup-go from 3 to 4 (#887)

Bumps [actions/setup-go](https://github.com/actions/setup-go) from 3 to 4.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](actions/setup-go@v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Allow "none" algorithm when signing with explicit option (#890)

* Add test case for #888

* Catch the use of "none" when used in conjunction with jws.WithKey

* first pass implementing (jwt/jws).Sign that allows alg="none"

* regenerate jwt options

* appease linter

* Check for jws.Sign/Verify

* OK to _sign_ using `none`, but no verification

* Tweak Changes

* typo (#893)

* Bump github.com/goccy/go-json from 0.10.1 to 0.10.2 (#892)

* Bump github.com/goccy/go-json from 0.10.1 to 0.10.2

Bumps [github.com/goccy/go-json](https://github.com/goccy/go-json) from 0.10.1 to 0.10.2.
- [Release notes](https://github.com/goccy/go-json/releases)
- [Changelog](https://github.com/goccy/go-json/blob/master/CHANGELOG.md)
- [Commits](goccy/go-json@v0.10.1...v0.10.2)

---
updated-dependencies:
- dependency-name: github.com/goccy/go-json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run make tidy + bazel

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Update Changes

* Bump actions/stale from 7 to 8 (#895)

Bumps [actions/stale](https://github.com/actions/stale) from 7 to 8.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](actions/stale@v7...v8)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* tweak labels for dependabot (#899)

* Bump golang.org/x/crypto from 0.7.0 to 0.8.0 (#897)

* Bump golang.org/x/crypto from 0.7.0 to 0.8.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.7.0 to 0.8.0.
- [Release notes](https://github.com/golang/crypto/releases)
- [Commits](golang/crypto@v0.7.0...v0.8.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run bazel //:gazelle-update-repos

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Fix typo in "jwt.WithAudience" comment (#908)

* Bump github.com/decred/dcrd/dcrec/secp256k1/v4 from 4.1.0 to 4.2.0 (#907)

* Bump github.com/decred/dcrd/dcrec/secp256k1/v4 from 4.1.0 to 4.2.0

Bumps [github.com/decred/dcrd/dcrec/secp256k1/v4](https://github.com/decred/dcrd) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/decred/dcrd/releases)
- [Changelog](https://github.com/decred/dcrd/blob/master/CHANGES)
- [Commits](decred/dcrd@blockchain/v4.1.0...dcrec/secp256k1/v4.2.0)

---
updated-dependencies:
- dependency-name: github.com/decred/dcrd/dcrec/secp256k1/v4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run make tidy + bazel run //:gazelle-update-repos

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Precompute RSA key values so that tests succeed (#913)

* Use a symmetric key for example purposes (#914)

* autodoc updates (#915)

Co-authored-by: lestrrat <[email protected]>

* Hook in jwa.RegisterXXX functions with jws.Register(Signer|Verifier) (#911)

* First pass at connecting jws.Register(Signer|Verifier) with jwa.RegisterXXX

* Tweak CI

* Tweak docs

* fix docs

* protect access to signer/verifierDB

* Update Changes

* Allow use of segmentio/asm/base64 (#916)

* Enable segmentio/asm/base64 and some internal API for pluggable base64

* Enable asmbase64 in CI

* Add missing commands

* Update bazel repos

* Mention jwx_asmbase64 (#917)

* Update README.md (#918)

Fixed typo: convetion -> convention

* use proper function name (#921)

* Bump golang.org/x/crypto from 0.8.0 to 0.9.0 (#919)

* Bump golang.org/x/crypto from 0.8.0 to 0.9.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.8.0 to 0.9.0.
- [Commits](golang/crypto@v0.8.0...v0.9.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* run gaelle-update-repos

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Bump github.com/cloudflare/circl from 1.1.0 to 1.3.3 in /examples (#923)

Bumps [github.com/cloudflare/circl](https://github.com/cloudflare/circl) from 1.1.0 to 1.3.3.
- [Release notes](https://github.com/cloudflare/circl/releases)
- [Commits](cloudflare/circl@v1.1.0...v1.3.3)

---
updated-dependencies:
- dependency-name: github.com/cloudflare/circl
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump github.com/stretchr/testify from 1.8.2 to 1.8.3 (#927)

* Bump github.com/stretchr/testify from 1.8.2 to 1.8.3

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.2 to 1.8.3.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.2...v1.8.3)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Run gazelle-update-repos

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Implement jwk.SetGlobalFetcher (#929)

* Implement SetGlobalFetcher

* Avoid using atomic.Bool so that it works on older Gos

* Appease GitHub code scanner

* Bad ineffectual assignment

* tweak docs

* oops, wrong issue number

* Bump github.com/stretchr/testify from 1.8.3 to 1.8.4 (#931)

* Bump github.com/stretchr/testify from 1.8.3 to 1.8.4

Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.3 to 1.8.4.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](stretchr/testify@v1.8.3...v1.8.4)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update bazel repos

* use specific tparse

* change minimum go version in smoke tet

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daisuke Maki <[email protected]>

* Implement jwe.KeyEncrypter and jwe.KeyDecrypter (#925)

* Implement jwe.KeyEncrypter and jwe.KeyDecrypter

This allows users to specify a key who can encrypt/decrypt by itself,
much like the built-in crypto.Signer interface.

* Add experimental label to this feature

* Update Changes

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Oleksandr Redko <[email protected]>
Co-authored-by: Mitsuo Heijo <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: lestrrat <[email protected]>
Co-authored-by: Alessandro (Ale) Segala <[email protected]>
Co-authored-by: wscalf <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants