jwt 2.10.0 → 2.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dc5cd58ec8821cfc743d4dc35f70eb1297d49cda060220d895ca334e8ab06345
4
- data.tar.gz: 44401e7eab75b75a1cb37abc2fc58a6dcff84103bc99625880c8c3be525aabea
3
+ metadata.gz: 0cae4dcfd78806b4eb8192b16880e1ebeafa8651400296c9ca955f5b91abe9ab
4
+ data.tar.gz: a5a024f58f196d355eb004aa39be6f2d3b1e5fbf1219cac78b4d315833fd9d3f
5
5
  SHA512:
6
- metadata.gz: 80e7845a017b409105cad8d3ac3c7cc233b0cdc3e071715406b0a43e73a4b56f35fb6d5fe2c3786c10059d30809ffe0bdbb12e7438376dff9069f3a766f476f1
7
- data.tar.gz: ab86ff7dba44c40358d5d14b18a7346412fa7081635fb2995102ddb3b26b352ff68cb9e0d001aa3e7986cea4a1ea0c096cbc1824f4be14573414cf74d15b8e6b
6
+ metadata.gz: 4fa464f652e42bd8d70243a6dd8cb8e9ad72d285116580cf802108328c20b35b274ea7e371764855fcc8b620507a7b5f9bdac0632d270bff0ad5e4ce773d0352
7
+ data.tar.gz: 938d9d141e35b29b94f9fe64fe07a4c87a279e2120236873d2fd5c9ca5e2bd183c4fc3123eb3c9a46d18d6c60df5271b9e2431345dbd87035dd009c07e8aa6f5
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## [v2.10.2](https://github.com/jwt/ruby-jwt/tree/v2.10.2) (2025-06-29)
4
+
5
+ [Full Changelog](https://github.com/jwt/ruby-jwt/compare/v2.10.1...v2.10.2)
6
+
7
+ **Fixes and enhancements:**
8
+
9
+ - Avoid using the same digest across calls in JWT::JWA::Ecdsa and JWT::JWA::Rsa [#697](https://github.com/jwt/ruby-jwt/pull/697)
10
+
11
+ ## [v2.10.1](https://github.com/jwt/ruby-jwt/tree/v2.10.1) (2024-12-26)
12
+
13
+ [Full Changelog](https://github.com/jwt/ruby-jwt/compare/v2.10.0...v2.10.1)
14
+
15
+ **Fixes and enhancements:**
16
+
17
+ - Make version constants public again [#646](https://github.com/jwt/ruby-jwt/pull/646) ([@anakinj]
18
+
3
19
  ## [v2.10.0](https://github.com/jwt/ruby-jwt/tree/v2.10.0) (2024-12-25)
4
20
 
5
21
  [Full Changelog](https://github.com/jwt/ruby-jwt/compare/v2.9.3...v2.10.0)
data/lib/jwt/jwa/ecdsa.rb CHANGED
@@ -8,7 +8,7 @@ module JWT
8
8
 
9
9
  def initialize(alg, digest)
10
10
  @alg = alg
11
- @digest = OpenSSL::Digest.new(digest)
11
+ @digest = digest
12
12
  end
13
13
 
14
14
  def sign(data:, signing_key:)
@@ -16,7 +16,7 @@ module JWT
16
16
  key_algorithm = curve_definition[:algorithm]
17
17
  raise IncorrectAlgorithm, "payload algorithm is #{alg} but #{key_algorithm} signing key was provided" if alg != key_algorithm
18
18
 
19
- asn1_to_raw(signing_key.dsa_sign_asn1(digest.digest(data)), signing_key)
19
+ asn1_to_raw(signing_key.dsa_sign_asn1(OpenSSL::Digest.new(digest).digest(data)), signing_key)
20
20
  end
21
21
 
22
22
  def verify(data:, signature:, verification_key:)
@@ -24,7 +24,7 @@ module JWT
24
24
  key_algorithm = curve_definition[:algorithm]
25
25
  raise IncorrectAlgorithm, "payload algorithm is #{alg} but #{key_algorithm} verification key was provided" if alg != key_algorithm
26
26
 
27
- verification_key.dsa_verify_asn1(digest.digest(data), raw_to_asn1(signature, verification_key))
27
+ verification_key.dsa_verify_asn1(OpenSSL::Digest.new(digest).digest(data), raw_to_asn1(signature, verification_key))
28
28
  rescue OpenSSL::PKey::PKeyError
29
29
  raise JWT::VerificationError, 'Signature verification raised'
30
30
  end
data/lib/jwt/jwa/eddsa.rb CHANGED
@@ -13,7 +13,7 @@ module JWT
13
13
  def sign(data:, signing_key:)
14
14
  raise_sign_error!("Key given is a #{signing_key.class} but has to be an RbNaCl::Signatures::Ed25519::SigningKey") unless signing_key.is_a?(RbNaCl::Signatures::Ed25519::SigningKey)
15
15
 
16
- Deprecations.warning('Using Ed25519 keys is deprecated and will be removed in a future version of ruby-jwt. Please use the ruby-eddsa gem instead.')
16
+ Deprecations.warning('Using the EdDSA algorithm is deprecated and will be removed in a future version of ruby-jwt. In the future the algorithm will be provided by the jwt-eddsa gem.')
17
17
 
18
18
  signing_key.sign(data)
19
19
  end
@@ -21,7 +21,7 @@ module JWT
21
21
  def verify(data:, signature:, verification_key:)
22
22
  raise_verify_error!("key given is a #{verification_key.class} but has to be a RbNaCl::Signatures::Ed25519::VerifyKey") unless verification_key.is_a?(RbNaCl::Signatures::Ed25519::VerifyKey)
23
23
 
24
- Deprecations.warning('Using Ed25519 keys is deprecated and will be removed in a future version of ruby-jwt. Please use the ruby-eddsa gem instead.')
24
+ Deprecations.warning('Using the EdDSA algorithm is deprecated and will be removed in a future version of ruby-jwt. In the future the algorithm will be provided by the jwt-eddsa gem.')
25
25
 
26
26
  verification_key.verify(signature, data)
27
27
  rescue RbNaCl::CryptoError
data/lib/jwt/jwa/rsa.rb CHANGED
@@ -8,17 +8,17 @@ module JWT
8
8
 
9
9
  def initialize(alg)
10
10
  @alg = alg
11
- @digest = OpenSSL::Digest.new(alg.sub('RS', 'SHA'))
11
+ @digest = alg.sub('RS', 'SHA')
12
12
  end
13
13
 
14
14
  def sign(data:, signing_key:)
15
15
  raise_sign_error!("The given key is a #{signing_key.class}. It has to be an OpenSSL::PKey::RSA instance") unless signing_key.is_a?(OpenSSL::PKey::RSA)
16
16
 
17
- signing_key.sign(digest, data)
17
+ signing_key.sign(OpenSSL::Digest.new(digest), data)
18
18
  end
19
19
 
20
20
  def verify(data:, signature:, verification_key:)
21
- verification_key.verify(digest, signature, data)
21
+ verification_key.verify(OpenSSL::Digest.new(digest), signature, data)
22
22
  rescue OpenSSL::PKey::PKeyError
23
23
  raise JWT::VerificationError, 'Signature verification raised'
24
24
  end
data/lib/jwt/version.rb CHANGED
@@ -16,12 +16,10 @@ module JWT
16
16
  module VERSION
17
17
  MAJOR = 2
18
18
  MINOR = 10
19
- TINY = 0
19
+ TINY = 2
20
20
  PRE = nil
21
21
 
22
22
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join('.')
23
-
24
- private_constant(:MAJOR, :MINOR, :TINY, :PRE)
25
23
  end
26
24
 
27
25
  # Checks if the OpenSSL version is 3 or greater.
data/ruby-jwt.gemspec CHANGED
@@ -35,6 +35,7 @@ Gem::Specification.new do |spec|
35
35
 
36
36
  spec.add_development_dependency 'appraisal'
37
37
  spec.add_development_dependency 'bundler'
38
+ spec.add_development_dependency 'logger'
38
39
  spec.add_development_dependency 'rake'
39
40
  spec.add_development_dependency 'rspec'
40
41
  spec.add_development_dependency 'rubocop'
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jwt
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.10.0
4
+ version: 2.10.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Rudat
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-12-25 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: base64
@@ -52,6 +51,20 @@ dependencies:
52
51
  - - ">="
53
52
  - !ruby/object:Gem::Version
54
53
  version: '0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: logger
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ type: :development
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
55
68
  - !ruby/object:Gem::Dependency
56
69
  name: rake
57
70
  requirement: !ruby/object:Gem::Requirement
@@ -181,9 +194,8 @@ licenses:
181
194
  - MIT
182
195
  metadata:
183
196
  bug_tracker_uri: https://github.com/jwt/ruby-jwt/issues
184
- changelog_uri: https://github.com/jwt/ruby-jwt/blob/v2.10.0/CHANGELOG.md
197
+ changelog_uri: https://github.com/jwt/ruby-jwt/blob/v2.10.2/CHANGELOG.md
185
198
  rubygems_mfa_required: 'true'
186
- post_install_message:
187
199
  rdoc_options: []
188
200
  require_paths:
189
201
  - lib
@@ -198,8 +210,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
198
210
  - !ruby/object:Gem::Version
199
211
  version: '0'
200
212
  requirements: []
201
- rubygems_version: 3.5.22
202
- signing_key:
213
+ rubygems_version: 3.6.7
203
214
  specification_version: 4
204
215
  summary: JSON Web Token implementation in Ruby
205
216
  test_files: []