symmetric-encryption 4.1.1 → 4.1.2

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: 1969d461119a5844845fdef2e8de92424d4fe736d28f3f6c4483be3705955464
4
- data.tar.gz: 77e854da843dd3106693dc8dfc96d2166685f2a0396dbc6d71a200bd030acf94
3
+ metadata.gz: ada00eaa90ed1edb19723bfc1e0e34f3e6f8be5f060b6c2a79eaf046483f77b0
4
+ data.tar.gz: 0bf3ae34653d9598fc0a0be1058aa366f1e401b053bad92995ef08f00dc1fcbc
5
5
  SHA512:
6
- metadata.gz: c9ad42360c3362e94b9ddd9134a22c710f21f06a4120cd1e3466574229684a54d8f29e3eefce79c4e43c988abd862da86d5998d4f3d5014b5d25bf89fe919b69
7
- data.tar.gz: '069b4c136a60eb089ed4e7beaf135d16b51d90507f76d4ded33d898d988768ace7d1cc51162098fa783d7a0af56a4676ae9eaac5ed4215a789799821cf339524'
6
+ metadata.gz: 8299b773b5fbe49452187aeaa746343e9aff7c49a86f226142ae105a1aa9d1ad29401aa44297d19c6ae79161c2e8f0a9ad4f159e36c7191df5b36bb704367ef1
7
+ data.tar.gz: f9a37ecd2aa9c95eeb543e08be08de1a859bb1e0745241d9e983534e9b3df334bcc1486f6a46430ab2bfeaa5286a5902bffacaced9c9c0d53526cfe16d29b357
@@ -219,7 +219,7 @@ module SymmetricEncryption
219
219
  }
220
220
  args[:key_path] = key_path if key_path
221
221
  args[:regions] = regions if regions && !regions.empty?
222
- cfg = Keystore.generate_data_keys(keystore, **args)
222
+ cfg = Keystore.generate_data_keys(keystore: keystore, **args)
223
223
  Config.write_file(config_file_path, cfg)
224
224
  puts "New configuration file created at: #{config_file_path}"
225
225
  end
@@ -231,7 +231,7 @@ module SymmetricEncryption
231
231
  end
232
232
 
233
233
  def run_rotate_keys
234
- if keystore && KEYSTORES.include?(keystore)
234
+ if keystore && !KEYSTORES.include?(keystore)
235
235
  puts "Invalid keystore option: #{keystore}, must be one of #{KEYSTORES.join(', ')}"
236
236
  exit(-3)
237
237
  end
@@ -25,11 +25,11 @@ module SymmetricEncryption
25
25
 
26
26
  class None
27
27
  def encode(binary_string)
28
- binary_string
28
+ binary_string&.dup
29
29
  end
30
30
 
31
31
  def decode(encoded_string)
32
- encoded_string
32
+ encoded_string&.dup
33
33
  end
34
34
  end
35
35
 
@@ -24,10 +24,10 @@ module SymmetricEncryption
24
24
  # Also updates the encrypted field with the encrypted value
25
25
  # Freeze the decrypted field value so that it is not modified directly
26
26
  def #{decrypted_name}=(value)
27
- v = SymmetricEncryption::Coerce.coerce(value, :#{type})
27
+ v = SymmetricEncryption::Coerce.coerce(value, :#{type}).freeze
28
28
  return if (@#{decrypted_name} == v) && !v.nil? && !(v == '')
29
- self.#{encrypted_name} = @stored_#{encrypted_name} = ::SymmetricEncryption.encrypt(v, random_iv: #{random_iv}, compress: #{compress}, type: :#{type})
30
- @#{decrypted_name} = v.freeze
29
+ self.#{encrypted_name} = @stored_#{encrypted_name} = ::SymmetricEncryption.encrypt(v, random_iv: #{random_iv}, compress: #{compress}, type: :#{type}).freeze
30
+ @#{decrypted_name} = v
31
31
  end
32
32
 
33
33
  # Returns the decrypted value for the encrypted field
@@ -35,7 +35,7 @@ module SymmetricEncryption
35
35
  # If this method is not called, then the encrypted value is never decrypted
36
36
  def #{decrypted_name}
37
37
  if !defined?(@stored_#{encrypted_name}) || (@stored_#{encrypted_name} != self.#{encrypted_name})
38
- @#{decrypted_name} = ::SymmetricEncryption.decrypt(self.#{encrypted_name}, type: :#{type}).freeze
38
+ @#{decrypted_name} = ::SymmetricEncryption.decrypt(self.#{encrypted_name}.freeze, type: :#{type}).freeze
39
39
  @stored_#{encrypted_name} = self.#{encrypted_name}
40
40
  end
41
41
  @#{decrypted_name}
@@ -75,7 +75,8 @@ module SymmetricEncryption
75
75
  cipher_name:,
76
76
  app_name:,
77
77
  environment:,
78
- key_path:)
78
+ key_path:,
79
+ **args)
79
80
 
80
81
  # TODO: Also support generating environment variables instead of files.
81
82
 
@@ -7,7 +7,7 @@ module SymmetricEncryption
7
7
  # Returns [Hash] a new keystore configuration after generating the data key.
8
8
  #
9
9
  # Increments the supplied version number by 1.
10
- def self.generate_data_key(cipher_name:, app_name:, environment:, version: 0, dek: nil)
10
+ def self.generate_data_key(cipher_name:, app_name:, environment:, version: 0, dek: nil, **args)
11
11
  version >= 255 ? (version = 1) : (version += 1)
12
12
 
13
13
  kek = SymmetricEncryption::Key.new(cipher_name: cipher_name)
@@ -6,7 +6,7 @@ module SymmetricEncryption
6
6
  # Returns [Hash] a new keystore configuration after generating the data key.
7
7
  #
8
8
  # Increments the supplied version number by 1.
9
- def self.generate_data_key(key_path:, cipher_name:, app_name:, environment:, version: 0, dek: nil)
9
+ def self.generate_data_key(key_path:, cipher_name:, app_name:, environment:, version: 0, dek: nil, **args)
10
10
  version >= 255 ? (version = 1) : (version += 1)
11
11
 
12
12
  dek ||= SymmetricEncryption::Key.new(cipher_name: cipher_name)
@@ -12,7 +12,7 @@ module SymmetricEncryption
12
12
  # Notes:
13
13
  # * For development and testing purposes only!!
14
14
  # * Never store the encrypted encryption key in the source code / config file.
15
- def self.generate_data_key(cipher_name:, app_name:, environment:, version: 0, dek: nil)
15
+ def self.generate_data_key(cipher_name:, app_name:, environment:, version: 0, dek: nil, **args)
16
16
  version >= 255 ? (version = 1) : (version += 1)
17
17
 
18
18
  kek = SymmetricEncryption::Key.new(cipher_name: cipher_name)
@@ -1,3 +1,3 @@
1
1
  module SymmetricEncryption
2
- VERSION = '4.1.1'.freeze
2
+ VERSION = '4.1.2'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: symmetric-encryption
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.1
4
+ version: 4.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Reid Morrison
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-22 00:00:00.000000000 Z
11
+ date: 2018-11-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: coercible
@@ -65,32 +65,6 @@ files:
65
65
  - lib/symmetric_encryption/utils/re_encrypt_files.rb
66
66
  - lib/symmetric_encryption/version.rb
67
67
  - lib/symmetric_encryption/writer.rb
68
- - test/active_record_test.rb
69
- - test/cipher_test.rb
70
- - test/config/database.yml
71
- - test/config/empty.csv
72
- - test/config/mongo_mapper.yml
73
- - test/config/mongoid.yml
74
- - test/config/symmetric-encryption.yml
75
- - test/config/test_new.iv
76
- - test/config/test_new.key
77
- - test/config/test_secondary_1.iv
78
- - test/config/test_secondary_1.key
79
- - test/encoder_test.rb
80
- - test/header_test.rb
81
- - test/key_test.rb
82
- - test/keystore/aws_test.rb
83
- - test/keystore/environment_test.rb
84
- - test/keystore/file_test.rb
85
- - test/keystore/heroku_test.rb
86
- - test/keystore_test.rb
87
- - test/mongoid_test.rb
88
- - test/reader_test.rb
89
- - test/symmetric_encryption_test.rb
90
- - test/test_db.sqlite3
91
- - test/test_helper.rb
92
- - test/utils/aws_test.rb
93
- - test/writer_test.rb
94
68
  homepage: http://rocketjob.github.io/symmetric-encryption/
95
69
  licenses:
96
70
  - Apache-2.0
@@ -111,35 +85,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
111
85
  version: '0'
112
86
  requirements: []
113
87
  rubyforge_project:
114
- rubygems_version: 2.7.6
88
+ rubygems_version: 2.7.7
115
89
  signing_key:
116
90
  specification_version: 4
117
91
  summary: Encrypt ActiveRecord and Mongoid attributes, files and passwords in configuration
118
92
  files.
119
- test_files:
120
- - test/keystore/environment_test.rb
121
- - test/keystore/file_test.rb
122
- - test/keystore/heroku_test.rb
123
- - test/keystore/aws_test.rb
124
- - test/symmetric_encryption_test.rb
125
- - test/config/test_secondary_1.key
126
- - test/config/mongoid.yml
127
- - test/config/test_new.iv
128
- - test/config/test_secondary_1.iv
129
- - test/config/database.yml
130
- - test/config/test_new.key
131
- - test/config/symmetric-encryption.yml
132
- - test/config/empty.csv
133
- - test/config/mongo_mapper.yml
134
- - test/test_db.sqlite3
135
- - test/mongoid_test.rb
136
- - test/active_record_test.rb
137
- - test/keystore_test.rb
138
- - test/reader_test.rb
139
- - test/encoder_test.rb
140
- - test/utils/aws_test.rb
141
- - test/key_test.rb
142
- - test/header_test.rb
143
- - test/test_helper.rb
144
- - test/writer_test.rb
145
- - test/cipher_test.rb
93
+ test_files: []