cose 1.3.1 → 1.4.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
2
  SHA256:
3
- metadata.gz: 6611520d59f30093811ca400c7075f7ca90fdbec97faf316337690b8ae719ceb
4
- data.tar.gz: a7602e083f00558c70008b0990f482162359e3beb8252c1cff689d8fe3bce8d5
3
+ metadata.gz: 8c3029a2e2ae11b69da6b6d04a7538f661a485937010c38a88b13402c858a947
4
+ data.tar.gz: 6ecd05d4647b6cc69312be627a6b7e9736b91162b5acc3a23ec04f20fbcf15e5
5
5
  SHA512:
6
- metadata.gz: aa3f623c59b83397ff996d555de9244d1fc30ae3af8ca1546e6588dd71f0dda6e8f0095eb9c000657efcfb058de0be70b78ec649dc7489b8821522597fd2cf70
7
- data.tar.gz: 7d8102ced4cafd52f3745c73d9bab50cf73f5f22920384f384f7a18d0113cf794f7639565143149790d6995d4ca04af6c6976b3d4b035a0e2f60388479270038
6
+ metadata.gz: f59007d4cb12fe306b0bbd0a452a38ce148b1654e182c8da75181330bccc0f29894ec037daca3f444b934ed1af350939249f8a245b0c891ca361caa085bcfa47
7
+ data.tar.gz: 1da4cc287f5e1b9396eb5f842ee46a80618ce0649e6ab3fa054dc4c1cfb8cb695c9ae944ccdffe10e4e8d3a74d73ede1348ec247655ffb971ab589a7ad910506
@@ -0,0 +1,36 @@
1
+ name: Install OpenSSL
2
+ inputs:
3
+ version:
4
+ description: 'The version of OpenSSL to install'
5
+ required: true
6
+ os:
7
+ description: 'The operating system to install OpenSSL on'
8
+ required: true
9
+ runs:
10
+ using: 'composite'
11
+ steps:
12
+ - name: Cache OpenSSL library
13
+ id: cache-openssl
14
+ uses: actions/cache@v4
15
+ with:
16
+ path: ~/openssl
17
+ key: openssl-${{ inputs.version }}-${{ inputs.os }}
18
+
19
+ - name: Compile OpenSSL library
20
+ if: steps.cache-openssl.outputs.cache-hit != 'true'
21
+ shell: bash
22
+ run: |
23
+ mkdir -p tmp/build-openssl && cd tmp/build-openssl
24
+ case ${{ inputs.version }} in
25
+ 1.1.*)
26
+ OPENSSL_COMMIT=OpenSSL_
27
+ OPENSSL_COMMIT+=$(echo ${{ inputs.version }} | sed -e 's/\./_/g')
28
+ git clone -b $OPENSSL_COMMIT --depth 1 https://github.com/openssl/openssl.git .
29
+ echo "Git commit: $(git rev-parse HEAD)"
30
+ ./Configure --prefix=$HOME/openssl --libdir=lib linux-x86_64
31
+ make depend && make -j4 && make install_sw
32
+ ;;
33
+ *)
34
+ echo "Don't know how to build OpenSSL ${{ inputs.version }}"
35
+ ;;
36
+ esac
@@ -0,0 +1,67 @@
1
+ name: Install Ruby
2
+ inputs:
3
+ version:
4
+ description: 'The version of Ruby to install'
5
+ required: true
6
+ os:
7
+ description: 'The operating system to install Ruby on'
8
+ required: true
9
+ runs:
10
+ using: 'composite'
11
+ steps:
12
+ - name: Cache Ruby
13
+ id: ruby-cache
14
+ uses: actions/cache@v4
15
+ with:
16
+ path: ~/rubies/ruby-${{ inputs.version }}
17
+ key: ruby-${{ inputs.version }}-${{ inputs.os }}-openssl-1.1.1w
18
+
19
+ - name: Install Ruby
20
+ if: steps.ruby-cache.outputs.cache-hit != 'true'
21
+ shell: bash
22
+ run: |
23
+ latest_patch=$(curl -s https://cache.ruby-lang.org/pub/ruby/${{ inputs.version }}/ \
24
+ | grep -oP "ruby-${{ inputs.version }}\.\d+\.tar\.xz" \
25
+ | grep -oP "\d+(?=\.tar\.xz)" \
26
+ | sort -V | tail -n 1)
27
+ wget https://cache.ruby-lang.org/pub/ruby/${{ inputs.version }}/ruby-${{ inputs.version }}.${latest_patch}.tar.xz
28
+ tar -xJvf ruby-${{ inputs.version }}.${latest_patch}.tar.xz
29
+ cd ruby-${{ inputs.version }}.${latest_patch}
30
+ ./configure --prefix=$HOME/rubies/ruby-${{ inputs.version }} --with-openssl-dir=$HOME/openssl
31
+ make
32
+ make install
33
+ - name: Update PATH
34
+ shell: bash
35
+ run: |
36
+ echo "~/rubies/ruby-${{ inputs.version }}/bin" >> $GITHUB_PATH
37
+ - name: Install Bundler
38
+ shell: bash
39
+ run: |
40
+ case ${{ inputs.version }} in
41
+ 3.*)
42
+ echo "Skipping Bundler installation for Ruby ${{ inputs.version }}"
43
+ ;;
44
+ 2.7*)
45
+ gem install bundler -v '~> 2.4.0'
46
+ ;;
47
+ 2.4* | 2.5* | 2.6*)
48
+ gem install bundler -v '~> 2.3.0'
49
+ ;;
50
+ *)
51
+ echo "Don't know how to install Bundler for Ruby ${{ inputs.version }}"
52
+ ;;
53
+ esac
54
+ - name: Cache Bundler Install
55
+ id: bundler-cache
56
+ uses: actions/cache@v4
57
+ env:
58
+ GEMFILE: ${{ env.BUNDLE_GEMFILE || 'Gemfile' }}
59
+ with:
60
+ path: ./vendor/bundle
61
+ key: bundler-ruby-${{ inputs.version }}-${{ inputs.os }}-${{ hashFiles(env.Gemfile, 'tpm-key_attestation.gemspec') }}
62
+
63
+ - name: Install dependencies
64
+ shell: bash
65
+ run: |
66
+ bundle config set --local path ../vendor/bundle
67
+ bundle install
@@ -10,33 +10,93 @@ name: build
10
10
  on: push
11
11
 
12
12
  jobs:
13
+ lint:
14
+ runs-on: ubuntu-latest
15
+
16
+ steps:
17
+ - name: Check out repository code
18
+ uses: actions/checkout@v4
19
+
20
+ - name: Set up Ruby
21
+ uses: ruby/setup-ruby@v1
22
+ with:
23
+ ruby-version: '3.4'
24
+ bundler-cache: true
25
+
26
+ - name: Lint code for consistent style
27
+ run: bundle exec rubocop -f github
13
28
  test:
14
- runs-on: ubuntu-20.04
29
+ runs-on: ubuntu-24.04
15
30
  strategy:
16
31
  fail-fast: false
17
32
  matrix:
18
33
  ruby:
19
- - 3.0.0
20
- - 2.7.2
21
- - 2.6.6
22
- - 2.5.8
23
- - 2.4.10
34
+ - '4.0'
35
+ - 3.4
36
+ - 3.3
37
+ - 3.2
38
+ - 3.1
39
+ - '3.0'
40
+ - 2.7
41
+ - 2.6
42
+ - 2.5
43
+ - 2.4
24
44
  gemfile:
45
+ - openssl_3_3
46
+ - openssl_3_2
47
+ - openssl_3_1
25
48
  - openssl_3_0
26
49
  - openssl_2_2
27
50
  - openssl_2_1
28
51
  - openssl_default
29
52
  exclude:
30
- - ruby: '2.4.10'
53
+ - ruby: '2.4'
31
54
  gemfile: openssl_3_0
32
- - ruby: '2.5.8'
55
+ - ruby: '2.4'
56
+ gemfile: openssl_3_1
57
+ - ruby: '2.4'
58
+ gemfile: openssl_3_2
59
+ - ruby: '2.4'
60
+ gemfile: openssl_3_3
61
+ - ruby: '2.5'
33
62
  gemfile: openssl_3_0
63
+ - ruby: '2.5'
64
+ gemfile: openssl_3_1
65
+ - ruby: '2.5'
66
+ gemfile: openssl_3_2
67
+ - ruby: '2.5'
68
+ gemfile: openssl_3_3
69
+ - ruby: '2.6'
70
+ gemfile: openssl_3_2
71
+ - ruby: '2.6'
72
+ gemfile: openssl_3_3
73
+
34
74
  env:
35
75
  BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
36
76
  steps:
37
77
  - uses: actions/checkout@v2
38
- - uses: ruby/setup-ruby@v1
78
+
79
+ - run: rm Gemfile.lock
80
+
81
+ - name: Install OpenSSL
82
+ if: matrix.ruby != '2.4'
83
+ uses: ./.github/actions/install-openssl
84
+ with:
85
+ version: "1.1.1w"
86
+ os: ${{ runner.os }}
87
+
88
+ - name: Manually set up Ruby
89
+ if: matrix.ruby != '2.4'
90
+ uses: ./.github/actions/install-ruby
91
+ with:
92
+ version: ${{ matrix.ruby }}
93
+ os: ${{ runner.os }}
94
+
95
+ - name: Set up Ruby
96
+ if: matrix.ruby == '2.4'
97
+ uses: ruby/setup-ruby@v1
39
98
  with:
40
99
  ruby-version: ${{ matrix.ruby }}
41
100
  bundler-cache: true
42
- - run: bundle exec rake
101
+
102
+ - run: bundle exec rspec
@@ -0,0 +1,28 @@
1
+ name: Release
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ jobs:
8
+ release:
9
+ name: Publish to Rubygems
10
+
11
+ runs-on: ubuntu-latest
12
+
13
+ environment: release
14
+
15
+ permissions:
16
+ contents: write
17
+ id-token: write
18
+
19
+ steps:
20
+ - uses: actions/checkout@v7
21
+
22
+ - name: Setup Ruby
23
+ uses: ruby/setup-ruby@v1
24
+ with:
25
+ bundler-cache: true
26
+
27
+ - name: Publish to RubyGems
28
+ uses: rubygems/release-gem@v1
data/.gitignore CHANGED
@@ -10,7 +10,6 @@
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
12
 
13
- /Gemfile.lock
14
13
  /gemfiles/*.gemfile.lock
15
14
 
16
15
  .byebug_history
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 3.4.12
data/Appraisals CHANGED
@@ -12,5 +12,17 @@ appraise "openssl_3_0" do
12
12
  gem "openssl", "~> 3.0.0"
13
13
  end
14
14
 
15
+ appraise "openssl_3_1" do
16
+ gem "openssl", "~> 3.1.0"
17
+ end
18
+
19
+ appraise "openssl_3_2" do
20
+ gem "openssl", "~> 3.2.0"
21
+ end
22
+
23
+ appraise "openssl_3_3" do
24
+ gem "openssl", "~> 3.3.0"
25
+ end
26
+
15
27
  appraise "openssl_default" do
16
28
  end
data/CHANGELOG.md CHANGED
@@ -1,6 +1,17 @@
1
1
  # Changelog
2
2
 
3
- ## [v1.3.1] - 2024-08-12
3
+ ## [v1.4.0](https://github.com/cedarcode/cose-ruby/compare/v1.3.1...v1.4.0/) - 2026-11-10
4
+
5
+ ### Fixed
6
+
7
+ - `COSE::Sign` now builds the verification data for each signature instead of reusing the data from the first one (#80). Credits to @OskarEichler.
8
+ - RSA-PSS algorithms now reject a COSE key whose `alg` doesn't match the algorithm (#81). Credits to @OskarEichler.
9
+
10
+ ### Dependencies
11
+
12
+ - Update `cbor` runtime dependency from `~> 0.5.9` to `~> 0.6.2.2` (#85). Credits to @stanhu.
13
+
14
+ ## [v1.3.1](https://github.com/cedarcode/cose-ruby/compare/v1.3.0...v1.3.1/) - 2024-08-12
4
15
 
5
16
  - Handling COSE EC keys encoded without leading 0 bytes in coordinates (#64). Credits to @waltercacau.
6
17
 
data/Gemfile.lock ADDED
@@ -0,0 +1,85 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ cose (1.4.0)
5
+ cbor (~> 0.6.2.2)
6
+ openssl-signature_algorithm (~> 1.0)
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ appraisal (2.2.0)
12
+ bundler
13
+ rake
14
+ thor (>= 0.14.0)
15
+ ast (2.4.2)
16
+ base64 (0.2.0)
17
+ byebug (11.1.3)
18
+ cbor (0.6.2.2)
19
+ diff-lcs (1.6.0)
20
+ json (2.10.1)
21
+ language_server-protocol (3.17.0.4)
22
+ lint_roller (1.1.0)
23
+ openssl (3.3.3)
24
+ openssl-signature_algorithm (1.3.0)
25
+ openssl (> 2.0)
26
+ parallel (1.26.3)
27
+ parser (3.3.7.1)
28
+ ast (~> 2.4.1)
29
+ racc
30
+ racc (1.8.1)
31
+ rainbow (3.1.1)
32
+ rake (13.2.1)
33
+ regexp_parser (2.10.0)
34
+ rspec (3.13.0)
35
+ rspec-core (~> 3.13.0)
36
+ rspec-expectations (~> 3.13.0)
37
+ rspec-mocks (~> 3.13.0)
38
+ rspec-core (3.13.3)
39
+ rspec-support (~> 3.13.0)
40
+ rspec-expectations (3.13.3)
41
+ diff-lcs (>= 1.2.0, < 2.0)
42
+ rspec-support (~> 3.13.0)
43
+ rspec-mocks (3.13.2)
44
+ diff-lcs (>= 1.2.0, < 2.0)
45
+ rspec-support (~> 3.13.0)
46
+ rspec-support (3.13.2)
47
+ rubocop (1.72.2)
48
+ json (~> 2.3)
49
+ language_server-protocol (~> 3.17.0.2)
50
+ lint_roller (~> 1.1.0)
51
+ parallel (~> 1.10)
52
+ parser (>= 3.3.0.2)
53
+ rainbow (>= 2.2.2, < 4.0)
54
+ regexp_parser (>= 2.9.3, < 3.0)
55
+ rubocop-ast (>= 1.38.0, < 2.0)
56
+ ruby-progressbar (~> 1.7)
57
+ unicode-display_width (>= 2.4.0, < 4.0)
58
+ rubocop-ast (1.38.0)
59
+ parser (>= 3.3.1.0)
60
+ rubocop-performance (1.24.0)
61
+ lint_roller (~> 1.1)
62
+ rubocop (>= 1.72.1, < 2.0)
63
+ rubocop-ast (>= 1.38.0, < 2.0)
64
+ ruby-progressbar (1.13.0)
65
+ thor (1.3.2)
66
+ unicode-display_width (3.1.4)
67
+ unicode-emoji (~> 4.0, >= 4.0.4)
68
+ unicode-emoji (4.0.4)
69
+
70
+ PLATFORMS
71
+ arm64-darwin-24
72
+ ruby
73
+
74
+ DEPENDENCIES
75
+ appraisal (~> 2.2.0)
76
+ base64 (~> 0.2)
77
+ byebug (~> 11.0)
78
+ cose!
79
+ rake (~> 13.0)
80
+ rspec (~> 3.8)
81
+ rubocop (~> 1)
82
+ rubocop-performance (~> 1.4)
83
+
84
+ BUNDLED WITH
85
+ 2.6.3
data/cose.gemspec CHANGED
@@ -31,14 +31,14 @@ Gem::Specification.new do |spec|
31
31
 
32
32
  spec.required_ruby_version = ">= 2.4"
33
33
 
34
- spec.add_dependency "cbor", "~> 0.5.9"
34
+ spec.add_dependency "cbor", "~> 0.6.2.2"
35
35
  spec.add_dependency "openssl-signature_algorithm", "~> 1.0"
36
36
 
37
37
  spec.add_development_dependency "appraisal", "~> 2.2.0"
38
- spec.add_development_dependency "bundler", ">= 1.17", "< 3"
38
+ spec.add_development_dependency "base64", "~> 0.2"
39
39
  spec.add_development_dependency "byebug", "~> 11.0"
40
40
  spec.add_development_dependency "rake", "~> 13.0"
41
41
  spec.add_development_dependency "rspec", "~> 3.8"
42
- spec.add_development_dependency "rubocop", "0.80.1"
42
+ spec.add_development_dependency "rubocop", "~> 1"
43
43
  spec.add_development_dependency "rubocop-performance", "~> 1.4"
44
44
  end
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "openssl", "~> 3.1.0"
6
+
7
+ gemspec path: "../"
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "openssl", "~> 3.2.0"
6
+
7
+ gemspec path: "../"
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "openssl", "~> 3.3.0"
6
+
7
+ gemspec path: "../"
@@ -21,7 +21,9 @@ module COSE
21
21
  private
22
22
 
23
23
  def valid_key?(key)
24
- to_cose_key(key).is_a?(COSE::Key::RSA)
24
+ cose_key = to_cose_key(key)
25
+
26
+ cose_key.is_a?(COSE::Key::RSA) && (!cose_key.alg || cose_key.alg == id)
25
27
  end
26
28
 
27
29
  def signature_algorithm_class
data/lib/cose/sign.rb CHANGED
@@ -39,16 +39,15 @@ module COSE
39
39
  private
40
40
 
41
41
  def verification_data(signature, external_aad = nil)
42
- @verification_data ||=
43
- CBOR.encode(
44
- [
45
- CONTEXT,
46
- serialized_map(protected_headers),
47
- serialized_map(signature.protected_headers),
48
- external_aad || ZERO_LENGTH_BIN_STRING,
49
- payload
50
- ]
51
- )
42
+ CBOR.encode(
43
+ [
44
+ CONTEXT,
45
+ serialized_map(protected_headers),
46
+ serialized_map(signature.protected_headers),
47
+ external_aad || ZERO_LENGTH_BIN_STRING,
48
+ payload
49
+ ]
50
+ )
52
51
  end
53
52
  end
54
53
  end
data/lib/cose/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module COSE
4
- VERSION = "1.3.1"
4
+ VERSION = "1.4.0"
5
5
  end
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cose
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gonzalo Rodriguez
8
8
  - Braulio Martinez
9
- autorequire:
10
9
  bindir: exe
11
10
  cert_chain: []
12
- date: 2024-08-12 00:00:00.000000000 Z
11
+ date: 1980-01-02 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: cbor
@@ -17,14 +16,14 @@ dependencies:
17
16
  requirements:
18
17
  - - "~>"
19
18
  - !ruby/object:Gem::Version
20
- version: 0.5.9
19
+ version: 0.6.2.2
21
20
  type: :runtime
22
21
  prerelease: false
23
22
  version_requirements: !ruby/object:Gem::Requirement
24
23
  requirements:
25
24
  - - "~>"
26
25
  - !ruby/object:Gem::Version
27
- version: 0.5.9
26
+ version: 0.6.2.2
28
27
  - !ruby/object:Gem::Dependency
29
28
  name: openssl-signature_algorithm
30
29
  requirement: !ruby/object:Gem::Requirement
@@ -54,25 +53,19 @@ dependencies:
54
53
  - !ruby/object:Gem::Version
55
54
  version: 2.2.0
56
55
  - !ruby/object:Gem::Dependency
57
- name: bundler
56
+ name: base64
58
57
  requirement: !ruby/object:Gem::Requirement
59
58
  requirements:
60
- - - ">="
61
- - !ruby/object:Gem::Version
62
- version: '1.17'
63
- - - "<"
59
+ - - "~>"
64
60
  - !ruby/object:Gem::Version
65
- version: '3'
61
+ version: '0.2'
66
62
  type: :development
67
63
  prerelease: false
68
64
  version_requirements: !ruby/object:Gem::Requirement
69
65
  requirements:
70
- - - ">="
71
- - !ruby/object:Gem::Version
72
- version: '1.17'
73
- - - "<"
66
+ - - "~>"
74
67
  - !ruby/object:Gem::Version
75
- version: '3'
68
+ version: '0.2'
76
69
  - !ruby/object:Gem::Dependency
77
70
  name: byebug
78
71
  requirement: !ruby/object:Gem::Requirement
@@ -119,16 +112,16 @@ dependencies:
119
112
  name: rubocop
120
113
  requirement: !ruby/object:Gem::Requirement
121
114
  requirements:
122
- - - '='
115
+ - - "~>"
123
116
  - !ruby/object:Gem::Version
124
- version: 0.80.1
117
+ version: '1'
125
118
  type: :development
126
119
  prerelease: false
127
120
  version_requirements: !ruby/object:Gem::Requirement
128
121
  requirements:
129
- - - '='
122
+ - - "~>"
130
123
  - !ruby/object:Gem::Version
131
- version: 0.80.1
124
+ version: '1'
132
125
  - !ruby/object:Gem::Dependency
133
126
  name: rubocop-performance
134
127
  requirement: !ruby/object:Gem::Requirement
@@ -143,7 +136,6 @@ dependencies:
143
136
  - - "~>"
144
137
  - !ruby/object:Gem::Version
145
138
  version: '1.4'
146
- description:
147
139
  email:
148
140
  - gonzalo@cedarcode.com
149
141
  - braulio@cedarcode.com
@@ -151,14 +143,19 @@ executables: []
151
143
  extensions: []
152
144
  extra_rdoc_files: []
153
145
  files:
146
+ - ".github/actions/install-openssl/action.yml"
147
+ - ".github/actions/install-ruby/action.yml"
154
148
  - ".github/workflows/build.yml"
149
+ - ".github/workflows/release.yml"
155
150
  - ".gitignore"
156
151
  - ".gitmodules"
157
152
  - ".rspec"
158
153
  - ".rubocop.yml"
154
+ - ".ruby-version"
159
155
  - Appraisals
160
156
  - CHANGELOG.md
161
157
  - Gemfile
158
+ - Gemfile.lock
162
159
  - LICENSE.txt
163
160
  - README.md
164
161
  - Rakefile
@@ -169,6 +166,9 @@ files:
169
166
  - gemfiles/openssl_2_1.gemfile
170
167
  - gemfiles/openssl_2_2.gemfile
171
168
  - gemfiles/openssl_3_0.gemfile
169
+ - gemfiles/openssl_3_1.gemfile
170
+ - gemfiles/openssl_3_2.gemfile
171
+ - gemfiles/openssl_3_3.gemfile
172
172
  - gemfiles/openssl_default.gemfile
173
173
  - lib/cose.rb
174
174
  - lib/cose/algorithm.rb
@@ -205,7 +205,6 @@ metadata:
205
205
  bug_tracker_uri: https://github.com/cedarcode/cose-ruby/issues
206
206
  changelog_uri: https://github.com/cedarcode/cose-ruby/blob/master/CHANGELOG.md
207
207
  source_code_uri: https://github.com/cedarcode/cose-ruby
208
- post_install_message:
209
208
  rdoc_options: []
210
209
  require_paths:
211
210
  - lib
@@ -220,8 +219,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
220
219
  - !ruby/object:Gem::Version
221
220
  version: '0'
222
221
  requirements: []
223
- rubygems_version: 3.5.3
224
- signing_key:
222
+ rubygems_version: 3.6.9
225
223
  specification_version: 4
226
224
  summary: Ruby implementation of RFC 8152 CBOR Object Signing and Encryption (COSE)
227
225
  test_files: []