webauthn 2.5.2 → 3.1.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.
Files changed (34) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +6 -0
  3. data/.github/workflows/build.yml +7 -3
  4. data/.github/workflows/git.yml +1 -1
  5. data/.rubocop.yml +1 -1
  6. data/CHANGELOG.md +40 -3
  7. data/README.md +4 -4
  8. data/docs/advanced_configuration.md +10 -10
  9. data/docs/u2f_migration.md +14 -21
  10. data/lib/webauthn/attestation_object.rb +9 -5
  11. data/lib/webauthn/attestation_statement/base.rb +16 -10
  12. data/lib/webauthn/attestation_statement.rb +2 -2
  13. data/lib/webauthn/authenticator_assertion_response.rb +4 -3
  14. data/lib/webauthn/authenticator_attestation_response.rb +10 -7
  15. data/lib/webauthn/authenticator_data/attested_credential_data.rb +10 -5
  16. data/lib/webauthn/authenticator_data.rb +10 -2
  17. data/lib/webauthn/authenticator_response.rb +6 -5
  18. data/lib/webauthn/configuration.rb +38 -38
  19. data/lib/webauthn/credential.rb +4 -4
  20. data/lib/webauthn/encoder.rb +13 -4
  21. data/lib/webauthn/fake_authenticator/attestation_object.rb +8 -0
  22. data/lib/webauthn/fake_authenticator/authenticator_data.rb +19 -4
  23. data/lib/webauthn/fake_authenticator.rb +8 -0
  24. data/lib/webauthn/fake_client.rb +12 -2
  25. data/lib/webauthn/public_key_credential/creation_options.rb +3 -3
  26. data/lib/webauthn/public_key_credential/options.rb +9 -8
  27. data/lib/webauthn/public_key_credential/request_options.rb +11 -1
  28. data/lib/webauthn/public_key_credential.rb +41 -7
  29. data/lib/webauthn/public_key_credential_with_assertion.rb +14 -1
  30. data/lib/webauthn/relying_party.rb +120 -0
  31. data/lib/webauthn/u2f_migrator.rb +4 -1
  32. data/lib/webauthn/version.rb +1 -1
  33. data/webauthn.gemspec +4 -3
  34. metadata +22 -12
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module WebAuthn
4
- VERSION = "2.5.2"
4
+ VERSION = "3.1.0"
5
5
  end
data/webauthn.gemspec CHANGED
@@ -31,17 +31,18 @@ Gem::Specification.new do |spec|
31
31
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
32
32
  spec.require_paths = ["lib"]
33
33
 
34
- spec.required_ruby_version = ">= 2.4"
34
+ spec.required_ruby_version = ">= 2.5"
35
35
 
36
36
  spec.add_dependency "android_key_attestation", "~> 0.3.0"
37
37
  spec.add_dependency "awrence", "~> 1.1"
38
38
  spec.add_dependency "bindata", "~> 2.4"
39
39
  spec.add_dependency "cbor", "~> 0.5.9"
40
40
  spec.add_dependency "cose", "~> 1.1"
41
- spec.add_dependency "openssl", ">= 2.2", "< 3.1"
41
+ spec.add_dependency "openssl", ">= 2.2"
42
42
  spec.add_dependency "safety_net_attestation", "~> 0.4.0"
43
- spec.add_dependency "tpm-key_attestation", "~> 0.11.0"
43
+ spec.add_dependency "tpm-key_attestation", "~> 0.12.0"
44
44
 
45
+ spec.add_development_dependency "base64", ">= 0.1.0"
45
46
  spec.add_development_dependency "bundler", ">= 1.17", "< 3.0"
46
47
  spec.add_development_dependency "byebug", "~> 11.0"
47
48
  spec.add_development_dependency "rake", "~> 13.0"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webauthn
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.2
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gonzalo Rodriguez
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2022-07-14 00:00:00.000000000 Z
12
+ date: 2023-12-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: android_key_attestation
@@ -88,9 +88,6 @@ dependencies:
88
88
  - - ">="
89
89
  - !ruby/object:Gem::Version
90
90
  version: '2.2'
91
- - - "<"
92
- - !ruby/object:Gem::Version
93
- version: '3.1'
94
91
  type: :runtime
95
92
  prerelease: false
96
93
  version_requirements: !ruby/object:Gem::Requirement
@@ -98,9 +95,6 @@ dependencies:
98
95
  - - ">="
99
96
  - !ruby/object:Gem::Version
100
97
  version: '2.2'
101
- - - "<"
102
- - !ruby/object:Gem::Version
103
- version: '3.1'
104
98
  - !ruby/object:Gem::Dependency
105
99
  name: safety_net_attestation
106
100
  requirement: !ruby/object:Gem::Requirement
@@ -121,14 +115,28 @@ dependencies:
121
115
  requirements:
122
116
  - - "~>"
123
117
  - !ruby/object:Gem::Version
124
- version: 0.11.0
118
+ version: 0.12.0
125
119
  type: :runtime
126
120
  prerelease: false
127
121
  version_requirements: !ruby/object:Gem::Requirement
128
122
  requirements:
129
123
  - - "~>"
130
124
  - !ruby/object:Gem::Version
131
- version: 0.11.0
125
+ version: 0.12.0
126
+ - !ruby/object:Gem::Dependency
127
+ name: base64
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: 0.1.0
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: 0.1.0
132
140
  - !ruby/object:Gem::Dependency
133
141
  name: bundler
134
142
  requirement: !ruby/object:Gem::Requirement
@@ -243,6 +251,7 @@ executables: []
243
251
  extensions: []
244
252
  extra_rdoc_files: []
245
253
  files:
254
+ - ".github/dependabot.yml"
246
255
  - ".github/workflows/build.yml"
247
256
  - ".github/workflows/git.yml"
248
257
  - ".gitignore"
@@ -302,6 +311,7 @@ files:
302
311
  - lib/webauthn/public_key_credential/user_entity.rb
303
312
  - lib/webauthn/public_key_credential_with_assertion.rb
304
313
  - lib/webauthn/public_key_credential_with_attestation.rb
314
+ - lib/webauthn/relying_party.rb
305
315
  - lib/webauthn/u2f_migrator.rb
306
316
  - lib/webauthn/version.rb
307
317
  - webauthn.gemspec
@@ -320,14 +330,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
320
330
  requirements:
321
331
  - - ">="
322
332
  - !ruby/object:Gem::Version
323
- version: '2.4'
333
+ version: '2.5'
324
334
  required_rubygems_version: !ruby/object:Gem::Requirement
325
335
  requirements:
326
336
  - - ">="
327
337
  - !ruby/object:Gem::Version
328
338
  version: '0'
329
339
  requirements: []
330
- rubygems_version: 3.2.32
340
+ rubygems_version: 3.4.10
331
341
  signing_key:
332
342
  specification_version: 4
333
343
  summary: WebAuthn ruby server library