robocap-decryption-sdk 1.0.0 → 2.0.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: a5c60c2503cabf98d07480ea6cb28d0068b4ba3b292815c7474cabe6fb6614a6
4
- data.tar.gz: c10616d9b302342d67a70e9e9882befd1bfcce88a7c64963e2429362778140ed
3
+ metadata.gz: 024c14dc83b71450c45bd140f4df42fcfacda47f71d4f04edf56d8989e768dd2
4
+ data.tar.gz: 55c76d3298de9561d29a8a877e017f7157dec1b17b5d6c22486b17719ab11a13
5
5
  SHA512:
6
- metadata.gz: ea720dfee5ddf6b53acad53ab0e8b91ad0c32f0037712a78da9f7b0a58e6a0b4822d94265f94c42c7a62e6f31c0aa33ad50a6cb3e46be2e2b49ddc87c304deea
7
- data.tar.gz: 9078269ccd590ed466d9912c7df09d42f84e647dd22c7f0edf701f3d753b9c27d29ff13a883aaca3acffc75c52d9868c69c1b7ec13c1a5cf3f8254e48da96f88
6
+ metadata.gz: f26a53d8ec725d1c8ded062db1ba81a5dcb86de1848de0adb3261213c6616067c997cca2605b804057101a07d37fa0e94fa6208d87ecf5bf3b944ac51a12c427
7
+ data.tar.gz: e0bd269cb297024bb493437a26c9b5eb52b8058b94a0dce5edcd497e0453c959be134608102710b5e94af3fade04e48ff1d979317f2be159f2a69daa0ca90f0d
data/README.md CHANGED
@@ -32,6 +32,20 @@ bundle exec exe/robocap-decryption-sdk delete-rsa --help
32
32
  bundle exec exe/robocap-decryption-sdk decrypt-cenc --help
33
33
  ```
34
34
 
35
+ ## Ruby API
36
+
37
+ ```ruby
38
+ require 'robocap/sdk'
39
+
40
+ RobocapCenc::SDK.decrypt_cenc_mp4(...)
41
+ ```
42
+
43
+ ## Changelog
44
+
45
+ ### 2.0.0
46
+
47
+ BREAKING: Ruby namespace renamed `Robocap::SDK` -> `RobocapCenc::SDK` to avoid colliding with host apps that define a top-level `Robocap` constant. Gem name, require path, and CLI executable are unchanged. Ruby API consumers must update `Robocap::SDK::*` references to `RobocapCenc::SDK::*`.
48
+
35
49
  ## Verified against the Python SDK
36
50
 
37
51
  This Ruby gem reads and writes the same on-disk vault and CENC MP4 format
@@ -3,4 +3,4 @@
3
3
 
4
4
  require 'robocap/sdk/cli'
5
5
 
6
- exit Robocap::SDK::CLI.run(ARGV.dup)
6
+ exit RobocapCenc::SDK::CLI.run(ARGV.dup)
@@ -6,7 +6,7 @@ require 'pathname'
6
6
  require 'time'
7
7
  require_relative '../sdk'
8
8
 
9
- module Robocap
9
+ module RobocapCenc
10
10
  module SDK
11
11
  module CLI
12
12
  module_function
@@ -75,7 +75,7 @@ module Robocap
75
75
  device_id: opts[:device_id] || opts[:customer_id],
76
76
  rsa_bits: opts[:rsa_bits],
77
77
  )
78
- result = Robocap::SDK.import_rsa_key_version(
78
+ result = RobocapCenc::SDK.import_rsa_key_version(
79
79
  customer_id: opts[:customer_id],
80
80
  public_pem: opts[:public_key].binread,
81
81
  private_pem: opts[:private_key].binread,
@@ -100,7 +100,7 @@ module Robocap
100
100
  end.parse!(argv)
101
101
 
102
102
  require_opts!(opts, %i[customer_id rsa_key_version])
103
- result = Robocap::SDK.delete_rsa_key_version(
103
+ result = RobocapCenc::SDK.delete_rsa_key_version(
104
104
  customer_id: opts[:customer_id],
105
105
  rsa_key_version: opts[:rsa_key_version],
106
106
  sdk_root: opts[:sdk_root],
@@ -127,7 +127,7 @@ module Robocap
127
127
 
128
128
  require_opts!(opts, %i[mp4_path private_key output_dir])
129
129
  opts[:output_dir].mkpath
130
- result = Robocap::SDK.decrypt_cenc_mp4(
130
+ result = RobocapCenc::SDK.decrypt_cenc_mp4(
131
131
  mp4_path: opts[:mp4_path],
132
132
  user_private_pem: opts[:private_key].binread,
133
133
  output_dir: opts[:output_dir],
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'pathname'
4
4
 
5
- module Robocap
5
+ module RobocapCenc
6
6
  module SDK
7
7
  module Config
8
8
  VAULT_KEYS_DIR = 'vault/keys'
@@ -9,7 +9,7 @@ require_relative 'ownership'
9
9
  require_relative 'ffmpeg_cli'
10
10
  require_relative 'vault_layout'
11
11
 
12
- module Robocap
12
+ module RobocapCenc
13
13
  module SDK
14
14
  DecryptCencResult = Data.define(:output_path, :customer_id, :rsa_key_version, :kid_hex)
15
15
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Robocap
3
+ module RobocapCenc
4
4
  module SDK
5
5
  module ErrorCode
6
6
  ERR_CUSTOMER_NOT_FOUND = 1001
@@ -6,7 +6,7 @@ require 'pathname'
6
6
  require_relative 'config'
7
7
  require_relative 'errors'
8
8
 
9
- module Robocap
9
+ module RobocapCenc
10
10
  module SDK
11
11
  module FfmpegCli
12
12
  module_function
@@ -9,7 +9,7 @@ require_relative 'rsa_key_meta'
9
9
  require_relative 'rsa_oaep'
10
10
  require_relative 'vault_layout'
11
11
 
12
- module Robocap
12
+ module RobocapCenc
13
13
  module SDK
14
14
  CekTrialUnwrapResult = Data.define(:cek, :rsa_key_version)
15
15
 
@@ -7,7 +7,7 @@ require_relative 'config'
7
7
  require_relative 'errors'
8
8
  require_relative 'ffmpeg_cli'
9
9
 
10
- module Robocap
10
+ module RobocapCenc
11
11
  module SDK
12
12
  CencMp4Metadata = Data.define(:customer_id, :cek_wrapped, :kid_hex)
13
13
 
@@ -6,7 +6,7 @@ require_relative 'config'
6
6
  require_relative 'errors'
7
7
  require_relative 'key_vault'
8
8
 
9
- module Robocap
9
+ module RobocapCenc
10
10
  module SDK
11
11
  VerifiedKeyVersion = Data.define(:customer_id, :matched_rsa_key_version, :public_fingerprint)
12
12
 
@@ -4,7 +4,7 @@ require 'pathname'
4
4
  require_relative 'config'
5
5
  require_relative 'key_vault'
6
6
 
7
- module Robocap
7
+ module RobocapCenc
8
8
  module SDK
9
9
  DeleteRsaResult = Data.define(:customer_id, :folder_name, :key_dir)
10
10
 
@@ -5,7 +5,7 @@ require_relative 'config'
5
5
  require_relative 'key_vault'
6
6
  require_relative 'rsa_key_meta'
7
7
 
8
- module Robocap
8
+ module RobocapCenc
9
9
  module SDK
10
10
  ImportRsaResult = Data.define(:customer_id, :rsa_key_version, :vault_rsa_dir)
11
11
 
@@ -4,7 +4,7 @@ require 'json'
4
4
  require 'time'
5
5
  require_relative 'config'
6
6
 
7
- module Robocap
7
+ module RobocapCenc
8
8
  module SDK
9
9
  class RsaKeyMeta < Data.define(:rsa_key_version, :effective_at, :device_id, :rsa_bits)
10
10
  def initialize(rsa_key_version:, effective_at:, device_id:, rsa_bits: Config::RSA_BITS)
@@ -5,7 +5,7 @@ require 'securerandom'
5
5
  require_relative 'config'
6
6
  require_relative 'errors'
7
7
 
8
- module Robocap
8
+ module RobocapCenc
9
9
  module SDK
10
10
  module RSAOAEP
11
11
  module_function
@@ -5,7 +5,7 @@ require 'pathname'
5
5
  require 'tempfile'
6
6
  require_relative 'errors'
7
7
 
8
- module Robocap
8
+ module RobocapCenc
9
9
  module SDK
10
10
  module VaultLayout
11
11
  module_function
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Robocap
3
+ module RobocapCenc
4
4
  module SDK
5
- VERSION = '1.0.0'
5
+ VERSION = '2.0.0'
6
6
  end
7
7
  end
data/lib/robocap/sdk.rb CHANGED
@@ -14,7 +14,7 @@ require_relative 'sdk/rsa_import'
14
14
  require_relative 'sdk/rsa_delete'
15
15
  require_relative 'sdk/decrypt_cenc'
16
16
 
17
- module Robocap
17
+ module RobocapCenc
18
18
  module SDK
19
19
  module_function
20
20
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: robocap-decryption-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Frodobots