secret-keeper 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +5 -5
  2. data/lib/secret-keeper.rb +11 -9
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 9093b295a3f96e488c8ecb47cbcd5385f3ef1aae
4
- data.tar.gz: 2622a3bad595165738c20adf13e52b655acf87cf
2
+ SHA256:
3
+ metadata.gz: 49be9c6350530e4855836833f631aa841df1df85501ff00c44da8c62939eea4d
4
+ data.tar.gz: 36f4ee5f518c3c65ee10fa9c01d5c612cc7989ce4c1877eb62a10f05e273423c
5
5
  SHA512:
6
- metadata.gz: dbd1620801d06d1a86d9941c5755180ff2732d1c9ab1c4f34544d0834ab784e022451e050c86b9258ba261968839f30d3d28d781c3083da05d572d7f2d862187
7
- data.tar.gz: 4d86c1f94a2ce40ddb08277adffc330162780fe44c0e3bbc714455df98951ec511daa8a8e17fe3503e086e600b67ced297b33eb6db623fb7797b543482801ce6
6
+ metadata.gz: b916e8add32b2cb01c858f5312046a4c7fee841b73500c64dbc250e069b098a58e36b76a233c48b7f98b1a2ff4b4de5042f8525afb7e9b0912c874f32564d1ca
7
+ data.tar.gz: 48aabb92cfdd6ecb11cde87f3fc9ac863ed391ba32b6c1d088a287e3ed7aca7e2f73614aff573dd6a1330232d693dcbdf6f2135f149325bbdec8e5a6d04084d7
@@ -3,9 +3,9 @@ require 'yaml'
3
3
 
4
4
  class SecretKeeper
5
5
  def self.encrypt_files
6
+ sk = SecretKeeper.new
6
7
  puts 'Encrypting...'
7
8
  ok_queue = []
8
- sk = SecretKeeper.new
9
9
  sk.tasks.each do |task|
10
10
  from = task['encrypt_from']
11
11
  to = task['encrypt_to']
@@ -14,14 +14,15 @@ class SecretKeeper
14
14
  ok_queue << result if result == :ok
15
15
  puts " * #{from} --> #{to}, #{result}"
16
16
  end
17
- puts 'Done!'
18
- ok_queue.count == sk.tasks.count
17
+ success = ok_queue.count == sk.tasks.count
18
+ puts success ? 'Done!' : 'Failed!'
19
+ success
19
20
  end
20
21
 
21
22
  def self.decrypt_files
23
+ sk = SecretKeeper.new
22
24
  puts 'Decrypting...'
23
25
  ok_queue = []
24
- sk = SecretKeeper.new
25
26
  sk.tasks.each do |task|
26
27
  from = task['decrypt_from'] || task['encrypt_to']
27
28
  to = task['decrypt_to'] || task['encrypt_from']
@@ -30,8 +31,9 @@ class SecretKeeper
30
31
  ok_queue << result if result == :ok
31
32
  puts " * #{from} --> #{to}, #{result}"
32
33
  end
33
- puts 'Done!'
34
- ok_queue.count == sk.tasks.count
34
+ success = ok_queue.count == sk.tasks.count
35
+ puts success ? 'Done!' : 'Failed!'
36
+ success
35
37
  end
36
38
 
37
39
  def initialize
@@ -40,7 +42,7 @@ class SecretKeeper
40
42
  string = File.open('config/secret-keeper.yml', 'rb') { |f| f.read }
41
43
  config = YAML.load(string)[env]
42
44
  fail 'config/secret-keeper.yml incorrect or environment not exist' if config.nil?
43
-
45
+
44
46
  @tasks = config['tasks']
45
47
  @using_cipher = OpenSSL::Cipher.new(config['cipher'])
46
48
  end
@@ -69,13 +71,13 @@ class SecretKeeper
69
71
 
70
72
  def encrypt(data)
71
73
  cipher = @using_cipher.encrypt
72
- cipher.key = Digest::SHA1.hexdigest(ENV['OPENSSL_PASS'])
74
+ cipher.key = Digest::SHA2.hexdigest(ENV['OPENSSL_PASS'])[0..(cipher.key_len-1)]
73
75
  cipher.update(data) + cipher.final
74
76
  end
75
77
 
76
78
  def decrypt(data)
77
79
  cipher = @using_cipher.decrypt
78
- cipher.key = Digest::SHA1.hexdigest(ENV['OPENSSL_PASS'])
80
+ cipher.key = Digest::SHA2.hexdigest(ENV['OPENSSL_PASS'])[0..(cipher.key_len-1)]
79
81
  cipher.update(data) + cipher.final
80
82
  end
81
83
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: secret-keeper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ray Lee
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-02 00:00:00.000000000 Z
11
+ date: 2018-04-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -55,7 +55,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
55
55
  version: '0'
56
56
  requirements: []
57
57
  rubyforge_project:
58
- rubygems_version: 2.6.14
58
+ rubygems_version: 2.7.6
59
59
  signing_key:
60
60
  specification_version: 4
61
61
  summary: Keep all your secret files within openssl