Skip to content

Releases: crystal-community/jwt

v1.7.1

19 Oct 22:34

Choose a tag to compare

fixes issues where platforms don't have OpenSSL 3+ available

v1.7.0

19 Oct 00:34
d699aee

Choose a tag to compare

  1. JWT additions:
    • new algorithms: RSA-PSS (PS256, PS384, PS512), ES256K, EdDSA - crv: Ed25519
    • adds typ verification
  2. Adds JWKS support

v1.6.1

05 Feb 23:02
ea5d4d4

Choose a tag to compare

bumps bindata dependency

v1.6.0

30 Aug 00:45

Choose a tag to compare

adds optional dynamic key selection

# You may dynamically decide the key by passing a block to the decode function
# the algorithm is optional, you can omit it to use algorithm defined in the header
payload, header = JWT.decode(token, JWT::Algorithm::HS256) do |header, payload|
  "the key"
end

v1.5.1

23 Mar 00:12

Choose a tag to compare

adds crystal version supported in shard.yml

v1.5.0

28 Jan 04:44

Choose a tag to compare

adds crystal 0.36.0 support

v1.4.2

09 Jun 22:26
caa24ec

Choose a tag to compare

use .final instead of .digest related to changes in crystal-lang/crystal#8426
thanks @bcardiff

v1.4.1

04 Jun 09:00
24b749e

Choose a tag to compare

  • improve base64 encoding performance #30
  • prevent timing attacks on HMAC signatures #31

thanks @jamescook

v1.4.0: feat: don't cast the JSON payload unless validation is required

17 Dec 21:22

Choose a tag to compare

payload decoding now returns a JSON::Any structure for the body instead of a Hash(String,JSON::Any)
this allows for more flexible playload contents if validation is not required.

v1.3.1: fix: provide an explicit error for an invalid payload

17 Dec 21:10

Choose a tag to compare

fixes compiler warnings
improves error/exception feedback