ons-jwe 1.1.0 → 1.2.0

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
- SHA1:
3
- metadata.gz: 8c8de5ab8b54f191a850da86265666c9e641d26f
4
- data.tar.gz: ab430c58591e04d9c260ebe6ac5d637239989071
2
+ SHA256:
3
+ metadata.gz: bac847af3d23af9033ea8429ecacf62490cc8a19671446a0b34df09da19e8819
4
+ data.tar.gz: d20c45cb9c49b10e5c62046a54bc7751365ad9b8f913016efb1c5c2be780cbcf
5
5
  SHA512:
6
- metadata.gz: a25c93d9f4de21f5a0fe6b8775818e6614591758b27574d64cd4466a09257717a7fadc89e5e21e533ee07d95aa37c404e7e60629054c3ed41fdceb40618127b1
7
- data.tar.gz: da6a1a19d6d425fc039014d4c41ad2ebbb7ad45e40f519261b2f598c7b17eecc03cead8eab65264440f761de7ceae96ce9857532971e12534525b5879f942695
6
+ metadata.gz: bd987387e6a0642d7b2cc8afee8583f95072b21023b3fcaa81bd84dff29401ac185ee448b9f2de9b7da786d71378c86f273d5c08ed64cb7106e59683490d4aa0
7
+ data.tar.gz: b2525dd11eaf888f6b8a59c7b682d4c94e7168cd05ab79f475195067d529206abe0b95d6cd73dcae85d8f36eca421b431c51a038934b1e7f065a10f924fe5308
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
- require 'securerandom'
2
+
3
3
  require 'json/jwt'
4
4
 
5
5
  # This class generates JSON Web Encryption (JWE) tokens as per RFC 7516.
@@ -30,7 +30,6 @@ class JWEToken
30
30
  jwt = JSON::JWT.new(claims)
31
31
  jwt.kid = key_id
32
32
  jwt.alg = :RS256
33
- jwt.header[:jti] = SecureRandom.uuid
34
33
  jwt
35
34
  end
36
35
 
@@ -50,17 +49,17 @@ class JWEToken
50
49
 
51
50
  def validate_private_key(private_key)
52
51
  raise ArgumentError, 'private_key must be specified' if private_key.nil?
52
+
53
53
  validate_rsa_key(private_key, 'private_key')
54
54
  end
55
55
 
56
56
  def validate_public_key(public_key)
57
57
  raise ArgumentError, 'public_key must be specified' if public_key.nil?
58
+
58
59
  validate_rsa_key(public_key, 'public_key')
59
60
  end
60
61
 
61
62
  def validate_rsa_key(key, key_type)
62
- unless key.instance_of? OpenSSL::PKey::RSA
63
- raise ArgumentError, "#{key_type} must be an RSA key"
64
- end
63
+ raise ArgumentError, "#{key_type} must be an RSA key" unless key.instance_of? OpenSSL::PKey::RSA
65
64
  end
66
65
  end
@@ -1,8 +1,9 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  module ONSJWE
3
4
  module Version
4
5
  MAJOR = 1
5
- MINOR = 1
6
+ MINOR = 2
6
7
  TINY = 0
7
8
  end
8
9
  VERSION = [Version::MAJOR, Version::MINOR, Version::TINY].compact * '.'
data/lib/ons-jwe.rb CHANGED
@@ -1,2 +1,3 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  require_relative 'ons-jwe/jwe_token'
metadata CHANGED
@@ -1,115 +1,85 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ons-jwe
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Topley
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-02 00:00:00.000000000 Z
11
+ date: 2022-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json-jwt
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '1'
20
17
  - - ">="
21
18
  - !ruby/object:Gem::Version
22
- version: 1.6.3
19
+ version: '0'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '1'
30
24
  - - ">="
31
25
  - !ruby/object:Gem::Version
32
- version: 1.6.3
26
+ version: '0'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: bundler
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
- - - "~>"
38
- - !ruby/object:Gem::Version
39
- version: '1'
40
31
  - - ">="
41
32
  - !ruby/object:Gem::Version
42
- version: 1.12.5
33
+ version: '0'
43
34
  type: :development
44
35
  prerelease: false
45
36
  version_requirements: !ruby/object:Gem::Requirement
46
37
  requirements:
47
- - - "~>"
48
- - !ruby/object:Gem::Version
49
- version: '1'
50
38
  - - ">="
51
39
  - !ruby/object:Gem::Version
52
- version: 1.12.5
40
+ version: '0'
53
41
  - !ruby/object:Gem::Dependency
54
42
  name: rake
55
43
  requirement: !ruby/object:Gem::Requirement
56
44
  requirements:
57
- - - "~>"
58
- - !ruby/object:Gem::Version
59
- version: '11'
60
45
  - - ">="
61
46
  - !ruby/object:Gem::Version
62
- version: 11.1.2
47
+ version: '0'
63
48
  type: :development
64
49
  prerelease: false
65
50
  version_requirements: !ruby/object:Gem::Requirement
66
51
  requirements:
67
- - - "~>"
68
- - !ruby/object:Gem::Version
69
- version: '11'
70
52
  - - ">="
71
53
  - !ruby/object:Gem::Version
72
- version: 11.1.2
54
+ version: '0'
73
55
  - !ruby/object:Gem::Dependency
74
56
  name: rubocop
75
57
  requirement: !ruby/object:Gem::Requirement
76
58
  requirements:
77
- - - "~>"
78
- - !ruby/object:Gem::Version
79
- version: '0'
80
59
  - - ">="
81
60
  - !ruby/object:Gem::Version
82
- version: 0.42.0
61
+ version: '0'
83
62
  type: :development
84
63
  prerelease: false
85
64
  version_requirements: !ruby/object:Gem::Requirement
86
65
  requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
66
  - - ">="
91
67
  - !ruby/object:Gem::Version
92
- version: 0.42.0
68
+ version: '0'
93
69
  - !ruby/object:Gem::Dependency
94
70
  name: test-unit
95
71
  requirement: !ruby/object:Gem::Requirement
96
72
  requirements:
97
- - - "~>"
98
- - !ruby/object:Gem::Version
99
- version: '3'
100
73
  - - ">="
101
74
  - !ruby/object:Gem::Version
102
- version: 3.1.9
75
+ version: '0'
103
76
  type: :development
104
77
  prerelease: false
105
78
  version_requirements: !ruby/object:Gem::Requirement
106
79
  requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: '3'
110
80
  - - ">="
111
81
  - !ruby/object:Gem::Version
112
- version: 3.1.9
82
+ version: '0'
113
83
  description: |
114
84
  RFC7516-compliant JSON Web Encryption (JWE) token generator that uses RSAES-OAEP and AES GCM.
115
85
  Suitable for use with the ONS eQ Survey Runner.
@@ -127,7 +97,7 @@ homepage: https://github.com/ONSdigital/jwe-rubygem
127
97
  licenses:
128
98
  - Crown Copyright (Office for National Statistics)
129
99
  metadata: {}
130
- post_install_message:
100
+ post_install_message:
131
101
  rdoc_options: []
132
102
  require_paths:
133
103
  - lib
@@ -135,16 +105,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
135
105
  requirements:
136
106
  - - ">="
137
107
  - !ruby/object:Gem::Version
138
- version: '0'
108
+ version: 3.0.0
139
109
  required_rubygems_version: !ruby/object:Gem::Requirement
140
110
  requirements:
141
111
  - - ">="
142
112
  - !ruby/object:Gem::Version
143
113
  version: '0'
144
114
  requirements: []
145
- rubyforge_project:
146
- rubygems_version: 2.6.6
147
- signing_key:
115
+ rubygems_version: 3.3.3
116
+ signing_key:
148
117
  specification_version: 4
149
118
  summary: JSON Web Encryption (JWE) token generator
150
119
  test_files: []