encryptor 1.3.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,26 @@
1
- require File.expand_path('../test_helper', __FILE__)
2
-
3
1
  module OpenSSLHelper
4
- ALGORITHMS = %x(openssl list-cipher-commands).split & OpenSSL::Cipher.ciphers
5
- end
2
+ # For test debugging
3
+ puts "OpenSSL Version: #{OpenSSL::OPENSSL_VERSION}"
4
+
5
+ algorithms = OpenSSL::Cipher.ciphers
6
+
7
+ case RUBY_PLATFORM.to_sym
8
+ when :java
9
+ security_class = java.lang.Class.for_name('javax.crypto.JceSecurity')
10
+ restricted_field = security_class.get_declared_field('isRestricted')
11
+ restricted_field.accessible = true
12
+ restricted_field.set(nil, false)
6
13
 
14
+ # if key length is less than 24 bytes:
15
+ # OpenSSL::Cipher::CipherError: key length too short
16
+ # if key length is 24 bytes or more:
17
+ # OpenSSL::Cipher::CipherError: DES key too long - should be 8 bytes: possibly you need to install Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files for your JRE
18
+ algorithms -= %w(des-ede3 DES-EDE3)
19
+ else
20
+ algorithms &= %x(openssl list-cipher-commands).split
21
+ end
22
+
23
+
24
+ ALGORITHMS = algorithms.freeze
25
+ AUTHENTICATED_ENCRYPTION_ALGORITHMS = ['aes-128-gcm','aes-192-gcm','aes-256-gcm']
26
+ end
@@ -1,20 +1,29 @@
1
- if RUBY_VERSION >= '1.9.3'
2
- require 'simplecov'
3
- require 'simplecov-rcov'
1
+ require 'simplecov'
2
+ require 'simplecov-rcov'
3
+ require "codeclimate-test-reporter"
4
4
 
5
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
6
- SimpleCov::Formatter::HTMLFormatter,
7
- SimpleCov::Formatter::RcovFormatter,
8
- ]
5
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
6
+ SimpleCov::Formatter::HTMLFormatter,
7
+ SimpleCov::Formatter::RcovFormatter,
8
+ CodeClimate::TestReporter::Formatter
9
+ ]
9
10
 
10
- SimpleCov.start do
11
- add_filter 'test'
12
- end
11
+ SimpleCov.start do
12
+ add_filter 'test'
13
13
  end
14
14
 
15
- require 'test/unit'
15
+ CodeClimate::TestReporter.start
16
+
17
+ require 'minitest/autorun'
18
+ require 'minitest/unit'
16
19
  require 'digest/sha2'
17
20
 
18
21
  $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
19
22
  $:.unshift(File.dirname(__FILE__))
20
- require 'encryptor'
23
+ require 'encryptor'
24
+ require 'openssl_helper'
25
+
26
+ require 'encryptor/string'
27
+ class StringWithEncryptor < String
28
+ include Encryptor::String
29
+ end
metadata CHANGED
@@ -1,120 +1,175 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: encryptor
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
5
- prerelease:
4
+ version: 2.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Sean Huber
9
8
  - S. Brent Faulkner
10
9
  - William Monk
10
+ - Stephen Aghaulor
11
11
  autorequire:
12
12
  bindir: bin
13
- cert_chain: []
14
- date: 2013-11-14 00:00:00.000000000 Z
13
+ cert_chain:
14
+ - |
15
+ -----BEGIN CERTIFICATE-----
16
+ MIIDdDCCAlygAwIBAgIBATANBgkqhkiG9w0BAQUFADBAMRIwEAYDVQQDDAlzYWdo
17
+ YXVsb3IxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
18
+ bTAeFw0xNjAxMTEyMjQyMDFaFw0xNzAxMTAyMjQyMDFaMEAxEjAQBgNVBAMMCXNh
19
+ Z2hhdWxvcjEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYD
20
+ Y29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx0xdQYk2GwCpQ1n/
21
+ n2mPVYHLYqU5TAn/82t5kbqBUWjbcj8tHAi41tJ19+fT/hH0dog8JHvho1zmOr71
22
+ ZIqreJQo60TqP6oE9a5HncUpjqbRp7tOmHo9E+mOW1yT4NiXqFf1YINExQKy2XND
23
+ WPQ+T50ZNUsGMfHFWB4NAymejRWXlOEY3bvKW0UHFeNmouP5he51TjoP8uCc9536
24
+ 4AIWVP/zzzjwrFtC7av7nRw4Y+gX2bQjrkK2k2JS0ejiGzKBIEMJejcI2B+t79zT
25
+ kUQq9SFwp2BrKSIy+4kh4CiF20RT/Hfc1MbvTxSIl/bbIxCYEOhmtHExHi0CoCWs
26
+ YCGCXQIDAQABo3kwdzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU
27
+ SCpVzSBvYbO6B3oT3n3RCZmurG8wHgYDVR0RBBcwFYETc2FnaGF1bG9yQGdtYWls
28
+ LmNvbTAeBgNVHRIEFzAVgRNzYWdoYXVsb3JAZ21haWwuY29tMA0GCSqGSIb3DQEB
29
+ BQUAA4IBAQAeiGdC3e0WiZpm0cF/b7JC6hJYXC9Yv9VsRAWD9ROsLjFKwOhmonnc
30
+ +l/QrmoTjMakYXBCai/Ca3L+k5eRrKilgyITILsmmFxK8sqPJXUw2Jmwk/dAky6x
31
+ hHKVZAofT1OrOOPJ2USoZyhR/VI8epLaD5wUmkVDNqtZWviW+dtRa55aPYjRw5Pj
32
+ wuj9nybhZr+BbEbmZE//2nbfkM4hCuMtxxxilPrJ22aYNmeWU0wsPpDyhPYxOUgU
33
+ ZjeLmnSDiwL6doiP5IiwALH/dcHU67ck3NGf6XyqNwQrrmtPY0mv1WVVL4Uh+vYE
34
+ kHoFzE2no0BfBg78Re8fY69P5yES5ncC
35
+ -----END CERTIFICATE-----
36
+ date: 2016-01-12 00:00:00.000000000 Z
15
37
  dependencies:
38
+ - !ruby/object:Gem::Dependency
39
+ name: minitest
40
+ requirement: !ruby/object:Gem::Requirement
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
45
+ type: :development
46
+ prerelease: false
47
+ version_requirements: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: '0'
16
52
  - !ruby/object:Gem::Dependency
17
53
  name: rake
18
54
  requirement: !ruby/object:Gem::Requirement
19
- none: false
20
55
  requirements:
21
- - - '='
56
+ - - ">="
22
57
  - !ruby/object:Gem::Version
23
- version: 0.9.2.2
58
+ version: '0'
24
59
  type: :development
25
60
  prerelease: false
26
61
  version_requirements: !ruby/object:Gem::Requirement
27
- none: false
28
62
  requirements:
29
- - - '='
63
+ - - ">="
30
64
  - !ruby/object:Gem::Version
31
- version: 0.9.2.2
65
+ version: '0'
32
66
  - !ruby/object:Gem::Dependency
33
67
  name: simplecov
34
68
  requirement: !ruby/object:Gem::Requirement
35
- none: false
36
69
  requirements:
37
- - - ! '>='
70
+ - - ">="
38
71
  - !ruby/object:Gem::Version
39
72
  version: '0'
40
73
  type: :development
41
74
  prerelease: false
42
75
  version_requirements: !ruby/object:Gem::Requirement
43
- none: false
44
76
  requirements:
45
- - - ! '>='
77
+ - - ">="
46
78
  - !ruby/object:Gem::Version
47
79
  version: '0'
48
80
  - !ruby/object:Gem::Dependency
49
81
  name: simplecov-rcov
50
82
  requirement: !ruby/object:Gem::Requirement
51
- none: false
52
83
  requirements:
53
- - - ! '>='
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
87
+ type: :development
88
+ prerelease: false
89
+ version_requirements: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: codeclimate-test-reporter
96
+ requirement: !ruby/object:Gem::Requirement
97
+ requirements:
98
+ - - ">="
54
99
  - !ruby/object:Gem::Version
55
100
  version: '0'
56
101
  type: :development
57
102
  prerelease: false
58
103
  version_requirements: !ruby/object:Gem::Requirement
59
- none: false
60
104
  requirements:
61
- - - ! '>='
105
+ - - ">="
62
106
  - !ruby/object:Gem::Version
63
107
  version: '0'
64
108
  description: A simple wrapper for the standard ruby OpenSSL library to encrypt and
65
109
  decrypt strings
66
110
  email:
67
- - shuber@huberry.com
111
+ - sean@shuber.io
68
112
  - sbfaulkner@gmail.com
69
113
  - billy.monk@gmail.com
114
+ - saghaulor@gmail.com
70
115
  executables: []
71
116
  extensions: []
72
117
  extra_rdoc_files: []
73
118
  files:
74
- - lib/encryptor/string.rb
75
- - lib/encryptor/version.rb
76
- - lib/encryptor.rb
119
+ - ".gitignore"
120
+ - ".travis.yml"
121
+ - CHANGELOG.md
122
+ - Gemfile
77
123
  - MIT-LICENSE
78
- - Rakefile
79
124
  - README.md
125
+ - Rakefile
126
+ - certs/saghaulor.pem
127
+ - encryptor.gemspec
128
+ - lib/encryptor.rb
129
+ - lib/encryptor/string.rb
130
+ - lib/encryptor/version.rb
80
131
  - test/compatibility_test.rb
132
+ - test/encryptor_string_test.rb
81
133
  - test/encryptor_test.rb
134
+ - test/legacy_encryptor_string_test.rb
82
135
  - test/legacy_encryptor_test.rb
83
136
  - test/openssl_helper.rb
84
137
  - test/test_helper.rb
85
138
  homepage: http://github.com/attr-encrypted/encryptor
86
- licenses: []
139
+ licenses:
140
+ - MIT
141
+ metadata: {}
87
142
  post_install_message:
88
- rdoc_options: []
143
+ rdoc_options:
144
+ - "--charset=UTF-8"
145
+ - "--inline-source"
146
+ - "--line-numbers"
147
+ - "--main"
148
+ - README.md
89
149
  require_paths:
90
150
  - lib
91
151
  required_ruby_version: !ruby/object:Gem::Requirement
92
- none: false
93
152
  requirements:
94
- - - ! '>='
153
+ - - ">="
95
154
  - !ruby/object:Gem::Version
96
- version: '0'
97
- segments:
98
- - 0
99
- hash: -1331952118017536783
155
+ version: 2.0.0
100
156
  required_rubygems_version: !ruby/object:Gem::Requirement
101
- none: false
102
157
  requirements:
103
- - - ! '>='
158
+ - - ">="
104
159
  - !ruby/object:Gem::Version
105
160
  version: '0'
106
- segments:
107
- - 0
108
- hash: -1331952118017536783
109
- requirements: []
161
+ requirements:
162
+ - openssl, >= v1.0.1
110
163
  rubyforge_project:
111
- rubygems_version: 1.8.23
164
+ rubygems_version: 2.5.1
112
165
  signing_key:
113
- specification_version: 3
166
+ specification_version: 4
114
167
  summary: A simple wrapper for the standard ruby OpenSSL library
115
168
  test_files:
116
169
  - test/compatibility_test.rb
170
+ - test/encryptor_string_test.rb
117
171
  - test/encryptor_test.rb
172
+ - test/legacy_encryptor_string_test.rb
118
173
  - test/legacy_encryptor_test.rb
119
174
  - test/openssl_helper.rb
120
175
  - test/test_helper.rb
Binary file