ossl_cryptor 0.2.1 → 0.3.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
  SHA1:
3
- metadata.gz: 68c7f1866798498947bca0c80a4be4d5a60eb651
4
- data.tar.gz: 4de274d8ae2bd083d7c37f14fca93ef7649e7d28
3
+ metadata.gz: 99007dad261ecf9bb5153b2e58a27854989103ff
4
+ data.tar.gz: 19b769b95d873870fa80e59cd54a38fda823d310
5
5
  SHA512:
6
- metadata.gz: 6d09200de2540d094f6cba28a44408bed5a1feb84ada882c8cb01bc78f0c7b4bf098d74e057b26898c0d19fd70901fd527806b3290596312338edfd19fb3b7f1
7
- data.tar.gz: 5d59ba6f2c24846ef97758cb72207e95abc6594888d0999dcae70d5e864d96ca2962dba70638fa0fc891adb0fe9b741436e040a6a80a53f10c91739e8b2b0ba6
6
+ metadata.gz: 47722e291480c719f4d525338d877ad6249938f6c8df23f2a99002a5e054280e6adcf486b9d537c3d0b1e1b7f950f5c14f3b5e9f7c64d0ac721d3eb9efa6b288
7
+ data.tar.gz: dd8795cfc447b68a76eeaf525aa6363642eef3ab81a39c9f8772239d82015eb228469cbcb6b20e03ed4600e9199c2bf46837d6fdb0325938ff131ddc56bf743b
data/lib/ossl_cryptor.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  require "ossl_cryptor/version"
2
- require "ossl_cryptor/cipher_generator"
2
+ require "ossl_cryptor/generator"
3
3
  require "base64"
4
4
  require "openssl"
5
5
 
@@ -28,18 +28,18 @@ module OsslCryptor
28
28
  end
29
29
 
30
30
  # generate cipher instance.
31
- @cipher = CipherGenerator.generate_cipher(mode)
31
+ @cipher = OsslCryptor::Generator.generate_cipher(mode)
32
32
  # set initialize parameter and generate key, iv
33
33
  @mode = mode
34
- @pass = pass.nil? ? CipherGenerator::DEFAULT_PASS : pass
34
+ @pass = pass.nil? ? OsslCryptor::Generator::DEFAULT_PASS : pass
35
35
  @salt = salt
36
- @key_iv_hash = key_iv_hash.nil? ? CipherGenerator::DEFAULT_KEY_IV_HASH : key_iv_hash
36
+ @key_iv_hash = key_iv_hash.nil? ? OsslCryptor::Generator::DEFAULT_KEY_IV_HASH : key_iv_hash
37
37
  @key_iv = key_iv.nil? ? generate_key_iv(@mode, @pass, @salt, @key_iv_hash) : key_iv
38
38
  end
39
39
 
40
40
  # reset cipher instance.
41
41
  def reset
42
- @cipher = CipherGenerator.generate_cipher(@mode)
42
+ @cipher = OsslCryptor::Generator.generate_cipher(@mode)
43
43
  @key_iv = generate_key_iv(@mode, @pass, @salt, @key_iv_hash) if @key_iv.nil?
44
44
  end
45
45
 
@@ -104,9 +104,9 @@ module OsslCryptor
104
104
 
105
105
  # generate cipher key and iv.
106
106
  # @param [String] mode crypt mode.
107
- # @param [String] pass password, if pass = nil, use CipherGenerator::DEFAULT_PASS
107
+ # @param [String] pass password, if pass = nil, use OsslCryptor::Generator::DEFAULT_PASS
108
108
  # @param [String] salt salt data. if salt = nil, use random salt.
109
- # @param [String] hash use hash algorithm when key and iv generate. if key_iv_hash = nil, use CipherGenerator::DEFAULT_KEY_IV_HASH
109
+ # @param [String] hash use hash algorithm when key and iv generate. if key_iv_hash = nil, use OsslCryptor::Generator::DEFAULT_KEY_IV_HASH
110
110
  # @return [Hash] key and iv hash.
111
111
  def generate_key_iv(mode, pass=nil, salt=nil, hash=nil)
112
112
 
@@ -0,0 +1,31 @@
1
+ require "openssl"
2
+
3
+ # openssl crypt module.
4
+ module OsslCryptor
5
+
6
+ # Cipher instance generator.
7
+ class Generator
8
+
9
+ # default pass.
10
+ DEFAULT_PASS = "ossl_cryptor"
11
+
12
+ # default hash algorithm.
13
+ DEFAULT_KEY_IV_HASH = "sha256"
14
+
15
+ # generate cipher instance.
16
+ # @param [String] mode crypt mode.
17
+ # @return [Cipher] cipher instance.
18
+ def self.generate_cipher(mode)
19
+ cipher = OpenSSL::Cipher.new(mode)
20
+ cipher
21
+ end
22
+
23
+ # generate random key and iv.
24
+ # @param [String] mode crypt mode.
25
+ # @return [Hash] key and iv hash. xx[:key] = key, xx[:iv] = iv
26
+ def self.generate_random_key_iv(mode)
27
+ cipher = OpenSSL::Cipher.new(mode)
28
+ key_iv = { key: cipher.random_key, iv: cipher.random_iv }
29
+ end
30
+ end
31
+ end
@@ -1,3 +1,3 @@
1
1
  module OsslCryptor
2
- VERSION = "0.2.1"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ossl_cryptor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - h.shigemoto
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-06-28 00:00:00.000000000 Z
11
+ date: 2016-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -70,7 +70,7 @@ files:
70
70
  - bin/console
71
71
  - bin/setup
72
72
  - lib/ossl_cryptor.rb
73
- - lib/ossl_cryptor/cipher_generator.rb
73
+ - lib/ossl_cryptor/generator.rb
74
74
  - lib/ossl_cryptor/version.rb
75
75
  - ossl_cryptor.gemspec
76
76
  homepage: https://github.com/h-shigemoto/ossl_cryptor
@@ -1,27 +0,0 @@
1
- require "openssl"
2
-
3
- # Cipher instance generator.
4
- module CipherGenerator
5
-
6
- # default pass.
7
- DEFAULT_PASS = "ossl_cryptor"
8
-
9
- # default hash algorithm.
10
- DEFAULT_KEY_IV_HASH = "sha256"
11
-
12
- # generate cipher instance.
13
- # @param [String] mode crypt mode.
14
- # @return [Cipher] cipher instance.
15
- def self.generate_cipher(mode)
16
- cipher = OpenSSL::Cipher.new(mode)
17
- cipher
18
- end
19
-
20
- # generate random key and iv.
21
- # @param [String] mode crypt mode.
22
- # @return [Hash] key and iv hash. xx[:key] = key, xx[:iv] = iv
23
- def self.generate_random_key_iv(mode)
24
- cipher = OpenSSL::Cipher.new(mode)
25
- key_iv = { key: cipher.random_key, iv: cipher.random_iv }
26
- end
27
- end