webauthn 2.5.2 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
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