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 +4 -4
- data/CHANGELOG.md +16 -0
- data/lib/jwt/jwa/ecdsa.rb +3 -3
- data/lib/jwt/jwa/eddsa.rb +2 -2
- data/lib/jwt/jwa/rsa.rb +3 -3
- data/lib/jwt/version.rb +1 -3
- data/ruby-jwt.gemspec +1 -0
- metadata +18 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0cae4dcfd78806b4eb8192b16880e1ebeafa8651400296c9ca955f5b91abe9ab
|
4
|
+
data.tar.gz: a5a024f58f196d355eb004aa39be6f2d3b1e5fbf1219cac78b4d315833fd9d3f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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 =
|
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
|
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
|
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 =
|
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 =
|
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.
|
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:
|
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.
|
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.
|
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: []
|