izokatu 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +0 -1
- data/Gemfile.lock +9 -9
- data/README.md +9 -10
- data/TASKS.md +28 -0
- data/izokatu.gemspec +5 -8
- data/lib/izokatu.rb +5 -3
- data/lib/izokatu/exporter/file_exporter.rb +3 -8
- data/lib/izokatu/exporter/stdout_exporter.rb +1 -1
- data/lib/izokatu/helpers.rb +15 -14
- data/lib/izokatu/importer/file_importer.rb +3 -3
- data/lib/izokatu/openssl/private_key/auth/encrypter.rb +10 -2
- data/lib/izokatu/openssl/private_key/default/encrypter.rb +11 -1
- data/lib/izokatu/rbnacl/private_key/encrypter.rb +15 -5
- data/lib/izokatu/version.rb +1 -1
- metadata +20 -47
- checksums.yaml.gz.sig +0 -3
- data.tar.gz.sig +0 -2
- data/certs/mongalless.pem +0 -26
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 81bb3d349d0d592c733bb4d4e0aae28ac00d4ea45a6901d4ea517b0582ad13da
|
4
|
+
data.tar.gz: bfea4c1e59e2b6334ee072aa15f99bc3073b87f2f4dc5e56e31597399312d957
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2524b10add96e7a58d3d3c540043890f19dc0988e3ecd0b364b3e4737be4e951bf38c8c914e4adb9368242e9b3b4db4dd28f921cdb87fe6117c4c69d7ff17423
|
7
|
+
data.tar.gz: 8a5cffee90cdd95bc757ffe059e2043d6927e1dab109e3a464a6d9f03ae0d7a735d6047e20f08bd30b32201baa4b0f3487e0d2dea569a2af39a1ea7674bb6067
|
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
izokatu (0.1.
|
4
|
+
izokatu (0.1.2)
|
5
|
+
contracts (~> 0.14.0)
|
5
6
|
ecies (~> 0.3.0)
|
6
7
|
openssl (~> 2.2)
|
7
8
|
rake (~> 13.0, >= 13.0.1)
|
@@ -16,18 +17,18 @@ GEM
|
|
16
17
|
thor (>= 0.18, < 2)
|
17
18
|
contracts (0.14.0)
|
18
19
|
diff-lcs (1.4.4)
|
19
|
-
docile (1.3.
|
20
|
+
docile (1.3.4)
|
20
21
|
ecies (0.3.0)
|
21
|
-
ffi (1.
|
22
|
+
ffi (1.14.2)
|
22
23
|
openssl (2.2.0)
|
23
24
|
parallel (1.20.1)
|
24
|
-
parser (
|
25
|
+
parser (3.0.0.0)
|
25
26
|
ast (~> 2.4.1)
|
26
27
|
rainbow (3.0.0)
|
27
|
-
rake (13.0.
|
28
|
+
rake (13.0.3)
|
28
29
|
rbnacl (7.1.1)
|
29
30
|
ffi
|
30
|
-
regexp_parser (
|
31
|
+
regexp_parser (2.0.2)
|
31
32
|
rexml (3.2.4)
|
32
33
|
rspec (3.10.0)
|
33
34
|
rspec-core (~> 3.10.0)
|
@@ -66,14 +67,13 @@ GEM
|
|
66
67
|
simplecov-html (0.12.3)
|
67
68
|
thor (1.0.1)
|
68
69
|
unicode-display_width (1.7.0)
|
69
|
-
yard (0.9.
|
70
|
+
yard (0.9.26)
|
70
71
|
|
71
72
|
PLATFORMS
|
72
73
|
ruby
|
73
74
|
|
74
75
|
DEPENDENCIES
|
75
76
|
bundler-audit (~> 0.7.0.1)
|
76
|
-
contracts (~> 0.14.0)
|
77
77
|
izokatu!
|
78
78
|
rspec (~> 3.9)
|
79
79
|
rubocop (~> 0.89.1)
|
@@ -83,4 +83,4 @@ DEPENDENCIES
|
|
83
83
|
yard (~> 0.9)
|
84
84
|
|
85
85
|
BUNDLED WITH
|
86
|
-
2.
|
86
|
+
2.2.3
|
data/README.md
CHANGED
@@ -17,20 +17,19 @@ Izokatu is Ruby library that provides abstact interface for private-key and publ
|
|
17
17
|
|
18
18
|
## Installation
|
19
19
|
|
20
|
-
|
20
|
+
~~gem install izokatu~~
|
21
21
|
|
22
|
-
|
23
|
-
- try adding izokatu to your Gemfile and bundling.
|
24
|
-
- file a ticket on the issues page.
|
22
|
+
_Lost my access to rubygems acc, confirmation email are not received on mail, docs for gem are deleted (https://www.rubydoc.info/gems/izokatu), but early version gem itself is available. Don't use izokatu from rubygems._
|
25
23
|
|
26
|
-
|
27
|
-
To be sure the gem you install hasn't been tampered with:
|
28
|
-
- Add my public key (if you haven't already) as a trusted certificate `gem cert --add <(curl -Ls https://gitlab.com/mongalless/izokatu/-/raw/master/certs/izokatu_public_cert.pem)`
|
29
|
-
- `gem install izokatu -P MediumSecurity`
|
24
|
+
So, use izokatu from git:
|
30
25
|
|
31
|
-
|
26
|
+
`gem 'izokatu', :git => 'https://gitlab.com/mongalless/izokatu.git` in Gemfile
|
32
27
|
|
33
|
-
|
28
|
+
Or download .gem file in root and execute:
|
29
|
+
|
30
|
+
`gem install ./path_to_gem_file/gem_file`
|
31
|
+
|
32
|
+
If you have trouble installing the gem, file a ticket on the issues page.
|
34
33
|
|
35
34
|
## Usage
|
36
35
|
|
data/TASKS.md
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
# TODO
|
2
|
+
|
3
|
+
## Features
|
4
|
+
### Implement/Add
|
5
|
+
- [ ] post_initialize or define hook after initialize in subclasses
|
6
|
+
- [ ] Custom Encrypter/Decrypter from user (class), which will be using default export/import
|
7
|
+
- [ ] RSA with OAEP-PSS
|
8
|
+
- [ ] use C ecies
|
9
|
+
### Research
|
10
|
+
- [ ] Base64 -> ASN.1
|
11
|
+
- [ ] More cryptlibs, ciphers
|
12
|
+
- [ ] Post-quantum ciphers (C, use FFI)
|
13
|
+
### Optional
|
14
|
+
- [ ] Class Options (return hash of options, required only for called class) (not needed, only Izokatu handle hash with options. All other classes has required params)
|
15
|
+
- [ ] Class Requirer for handling deps pathes
|
16
|
+
- [ ] Check params (example: padding) for openssl cipher modes. Use specs of openssl
|
17
|
+
|
18
|
+
## Useful stuff
|
19
|
+
### Implement/Add
|
20
|
+
- [ ] GL CI (run tests and bundler-audit)
|
21
|
+
- [ ] https://github.com/ruby-prof/ruby-prof
|
22
|
+
- [ ] https://github.com/tmm1/stackprof
|
23
|
+
- [ ] https://github.com/ice799/memprof
|
24
|
+
- [ ] https://github.com/SamSaffron/memory_profiler
|
25
|
+
### Research
|
26
|
+
- [ ] traiblazer
|
27
|
+
- [ ] https://github.com/p0deje/yard-doctest
|
28
|
+
- [ ] contracts.ruby -> dry-types + dry-validation
|
data/izokatu.gemspec
CHANGED
@@ -10,17 +10,14 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.summary = 'Ruby library that provides abstact interface for private-key and public-key cryptography using RbNaCl and OpenSSL'
|
11
11
|
spec.homepage = 'https://gitlab.com/mongalless/izokatu'
|
12
12
|
spec.license = 'MIT'
|
13
|
-
spec.required_ruby_version = Gem::Requirement.new('>= 2.
|
13
|
+
spec.required_ruby_version = Gem::Requirement.new('>= 2.6.6')
|
14
14
|
|
15
15
|
spec.metadata = {
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
'documentation_uri' => 'https://www.rubydoc.info/gems/izokatu',
|
17
|
+
'homepage_uri' => spec.homepage,
|
18
|
+
'source_code_uri' => spec.homepage
|
19
19
|
}
|
20
20
|
|
21
|
-
spec.cert_chain = ['certs/mongalless.pem']
|
22
|
-
spec.signing_key = File.expand_path("~/.ssh/mongalless_private_key.pem") if $0 =~ /gem\z/
|
23
|
-
|
24
21
|
# Specify which files should be added to the gem when it is released.
|
25
22
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
26
23
|
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
@@ -32,11 +29,11 @@ Gem::Specification.new do |spec|
|
|
32
29
|
|
33
30
|
spec.extra_rdoc_files = ['README.md']
|
34
31
|
|
32
|
+
spec.add_dependency 'contracts', '~> 0.14.0'
|
35
33
|
spec.add_dependency 'ecies', '~> 0.3.0'
|
36
34
|
spec.add_dependency 'openssl', '~> 2.2'
|
37
35
|
spec.add_dependency 'rake', '~> 13.0', '>= 13.0.1'
|
38
36
|
spec.add_dependency 'rbnacl', '~> 7.1', '>= 7.1.1'
|
39
|
-
spec.add_dependency 'contracts', '~> 0.14.0'
|
40
37
|
spec.add_development_dependency 'bundler-audit', '~> 0.7.0.1'
|
41
38
|
spec.add_development_dependency 'rspec', '~> 3.9'
|
42
39
|
spec.add_development_dependency 'rubocop', '~> 0.89.1'
|
data/lib/izokatu.rb
CHANGED
@@ -5,6 +5,8 @@ require 'rbnacl'
|
|
5
5
|
require 'ecies'
|
6
6
|
require 'base64'
|
7
7
|
|
8
|
+
require 'json'
|
9
|
+
|
8
10
|
require 'contracts'
|
9
11
|
# Deprecated warnings are disabled, because contracts raising those.
|
10
12
|
# Make patch to contracts or use more updated tools, like, Sorbet.
|
@@ -65,7 +67,7 @@ module Izokatu
|
|
65
67
|
}.freeze
|
66
68
|
|
67
69
|
Contract Contracts::HashOf[Symbol, Any] =>
|
68
|
-
Contracts::HashOf[Symbol, Any]
|
70
|
+
Maybe[Contracts::HashOf[Symbol, Any]]
|
69
71
|
# Public method to work with
|
70
72
|
#
|
71
73
|
# @param options [Hash] options from user
|
@@ -216,7 +218,7 @@ module Izokatu
|
|
216
218
|
Openssl::PKEY_CIPHERS.include?(cipher) ? cipher.upcase : cipher
|
217
219
|
end
|
218
220
|
|
219
|
-
Contract None => Contracts::HashOf[Symbol, Any]
|
221
|
+
Contract None => Maybe[Contracts::HashOf[Symbol, Any]]
|
220
222
|
# Verifying and processing merged options
|
221
223
|
#
|
222
224
|
# @return [Hash] Encrypted/decrypted data with params or public/private keys
|
@@ -316,7 +318,7 @@ module Izokatu
|
|
316
318
|
@importer = options[:importer]
|
317
319
|
end
|
318
320
|
|
319
|
-
Contract None => Contracts::HashOf[Symbol, Any]
|
321
|
+
Contract None => Maybe[Contracts::HashOf[Symbol, Any]]
|
320
322
|
# Importing encrypted data, selecting action class with options to call, exporting result of call
|
321
323
|
#
|
322
324
|
# @return [Hash] Encrypted/decrypted data with params or public/private keys
|
@@ -19,18 +19,13 @@ module Izokatu
|
|
19
19
|
@filename = filename
|
20
20
|
end
|
21
21
|
|
22
|
-
Contract None =>
|
22
|
+
Contract None => nil
|
23
23
|
# Performing export of initialized data
|
24
24
|
#
|
25
|
-
# @return [Hash] exported data
|
26
|
-
#
|
27
25
|
# @since 0.1.0
|
28
26
|
def perform
|
29
|
-
File.
|
30
|
-
|
31
|
-
f.puts(v)
|
32
|
-
end
|
33
|
-
end
|
27
|
+
File.write(filename, JSON.generate(data))
|
28
|
+
nil
|
34
29
|
end
|
35
30
|
end
|
36
31
|
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Izokatu
|
4
4
|
# Izokatu exporter for exporting data in STDOUT
|
5
5
|
class StdoutExporter < Izokatu::Exporter
|
6
|
-
Contract None => Contracts::HashOf[Symbol, String]
|
6
|
+
Contract None => Contracts::HashOf[Symbol, Maybe[String]]
|
7
7
|
# Performing export of initialized data
|
8
8
|
#
|
9
9
|
# @return [Hash] exported data
|
data/lib/izokatu/helpers.rb
CHANGED
@@ -61,7 +61,7 @@ module Izokatu
|
|
61
61
|
end
|
62
62
|
|
63
63
|
Contract Contracts::HashOf[Symbol, Or[Contracts::HashOf[Symbol, Maybe[String]], String, Bool]] =>
|
64
|
-
Contracts::HashOf[Symbol, Maybe[String]]
|
64
|
+
Maybe[Contracts::HashOf[Symbol, Maybe[String]]]
|
65
65
|
# Exporting encrypted data and decrypter params
|
66
66
|
#
|
67
67
|
# @param encrypted_data [Hash] Hash with encrypted data for export
|
@@ -70,25 +70,24 @@ module Izokatu
|
|
70
70
|
#
|
71
71
|
# @return [Hash] merged encrypted data and decrypter params
|
72
72
|
#
|
73
|
-
# @note Returning merged value even if not using :function exporter
|
74
|
-
#
|
75
73
|
# @since 0.1.0
|
76
74
|
def export_encrypted!(encrypted_data:, decrypter_params:, encode:)
|
77
|
-
export_data(
|
75
|
+
encrypted = export_data(
|
78
76
|
data: encrypted_data,
|
79
77
|
filename: options[:encrypted_data_filename],
|
80
78
|
encode: encode
|
81
|
-
).merge!(
|
82
|
-
export_data(
|
83
|
-
data: decrypter_params,
|
84
|
-
filename: options[:decrypter_params_filename],
|
85
|
-
encode: encode
|
86
|
-
)
|
87
79
|
)
|
80
|
+
params = export_data(
|
81
|
+
data: decrypter_params,
|
82
|
+
filename: options[:decrypter_params_filename],
|
83
|
+
encode: encode
|
84
|
+
)
|
85
|
+
|
86
|
+
encrypted && params ? encrypted.merge(params) : nil
|
88
87
|
end
|
89
88
|
|
90
89
|
Contract Contracts::HashOf[Symbol, Or[Contracts::HashOf[Symbol, String], String, Bool]] =>
|
91
|
-
Contracts::HashOf[Symbol, String]
|
90
|
+
Maybe[Contracts::HashOf[Symbol, String]]
|
92
91
|
# Exporting decrypted data
|
93
92
|
#
|
94
93
|
# @param decrypted_data [Hash] Hash with encrypted data for export
|
@@ -108,7 +107,7 @@ module Izokatu
|
|
108
107
|
end
|
109
108
|
|
110
109
|
Contract Contracts::HashOf[Symbol, Or[Contracts::HashOf[Symbol, Maybe[String]], Maybe[String], Bool]] =>
|
111
|
-
Contracts::HashOf[Symbol, Maybe[String]]
|
110
|
+
Maybe[Contracts::HashOf[Symbol, Maybe[String]]]
|
112
111
|
# Exporting data
|
113
112
|
#
|
114
113
|
# @param data [Hash] Hash with data for export
|
@@ -146,18 +145,20 @@ module Izokatu
|
|
146
145
|
encrypted_data = options.select { |k, _v| k == :encrypted_data_string }
|
147
146
|
decrypter_params_default_keys = %i[nonce key auth_data auth_tag]
|
148
147
|
decrypter_params = options.select { |k, _v| decrypter_params_default_keys.include?(k) }
|
149
|
-
|
148
|
+
encrypted = import_data(
|
150
149
|
data: encrypted_data,
|
151
150
|
filename: options[:encrypted_data_filename],
|
152
151
|
delete_imported: options[:delete_imported],
|
153
152
|
decode: decode
|
154
153
|
)
|
155
|
-
options.merge! import_data(
|
154
|
+
params = options.merge! import_data(
|
156
155
|
data: decrypter_params,
|
157
156
|
filename: options[:decrypter_params_filename],
|
158
157
|
delete_imported: options[:delete_imported],
|
159
158
|
decode: decode
|
160
159
|
)
|
160
|
+
options[:encrypted_data_string] = encrypted.values[0]
|
161
|
+
options.merge!(params)
|
161
162
|
end
|
162
163
|
|
163
164
|
Contract Contracts::HashOf[Symbol, Or[Contracts::HashOf[Symbol, String], Any]] =>
|
@@ -29,7 +29,7 @@ module Izokatu
|
|
29
29
|
@decode = decode
|
30
30
|
end
|
31
31
|
|
32
|
-
Contract None => Contracts::HashOf[Symbol, String]
|
32
|
+
Contract None => Contracts::HashOf[Symbol, Or[Maybe[String]]]
|
33
33
|
# Performing import of data
|
34
34
|
#
|
35
35
|
# @return [Hash] imported data
|
@@ -38,9 +38,9 @@ module Izokatu
|
|
38
38
|
def perform
|
39
39
|
raise 'No data file!' unless File.exist?(filename)
|
40
40
|
|
41
|
-
encoded = File.
|
41
|
+
encoded = File.read(filename)
|
42
42
|
File.delete(filename) if delete_imported
|
43
|
-
data =
|
43
|
+
data = JSON.parse(encoded).transform_keys(&:to_sym)
|
44
44
|
decode ? decode_data(data) : data
|
45
45
|
end
|
46
46
|
end
|
@@ -48,11 +48,19 @@ module Izokatu
|
|
48
48
|
# @since 0.1.0
|
49
49
|
def encrypt_data!
|
50
50
|
encrypted_data, decrypter_params = super
|
51
|
-
decrypter_params[:auth_data] = auth_data
|
52
|
-
decrypter_params.merge!(compute_auth_tag!)
|
53
51
|
[encrypted_data, decrypter_params]
|
54
52
|
end
|
55
53
|
|
54
|
+
Contract None => Contracts::HashOf[Symbol, String]
|
55
|
+
# Returning decrypter params
|
56
|
+
#
|
57
|
+
# @return [Hash] decrypter params
|
58
|
+
#
|
59
|
+
# @since 0.1.1
|
60
|
+
def decrypter_params
|
61
|
+
super.merge(auth_data: auth_data, **compute_auth_tag!)
|
62
|
+
end
|
63
|
+
|
56
64
|
Contract None => Contracts::HashOf[Symbol, String]
|
57
65
|
# Computing authentication tag
|
58
66
|
#
|
@@ -65,9 +65,19 @@ module Izokatu
|
|
65
65
|
def encrypt_data!
|
66
66
|
[
|
67
67
|
{ encrypted_data_string: encrypter.update(clear_data) + encrypter.final },
|
68
|
-
|
68
|
+
decrypter_params
|
69
69
|
]
|
70
70
|
end
|
71
|
+
|
72
|
+
Contract None => Contracts::HashOf[Symbol, String]
|
73
|
+
# Returning decrypter params
|
74
|
+
#
|
75
|
+
# @return [Hash] decrypter params
|
76
|
+
#
|
77
|
+
# @since 0.1.1
|
78
|
+
def decrypter_params
|
79
|
+
{ nonce: nonce, key: key }
|
80
|
+
end
|
71
81
|
end
|
72
82
|
end
|
73
83
|
end
|
@@ -48,13 +48,23 @@ module Izokatu
|
|
48
48
|
def encrypt_data!
|
49
49
|
[
|
50
50
|
{ encrypted_data_string: encrypter.encrypt(nonce, clear_data, auth_data) },
|
51
|
-
|
52
|
-
auth_data: auth_data,
|
53
|
-
key: key,
|
54
|
-
nonce: nonce
|
55
|
-
}
|
51
|
+
decrypter_params
|
56
52
|
]
|
57
53
|
end
|
54
|
+
|
55
|
+
Contract None => Contracts::HashOf[Symbol, Maybe[String]]
|
56
|
+
# Returning decrypter params
|
57
|
+
#
|
58
|
+
# @return [Hash] decrypter params
|
59
|
+
#
|
60
|
+
# @since 0.1.1
|
61
|
+
def decrypter_params
|
62
|
+
{
|
63
|
+
nonce: nonce,
|
64
|
+
key: key,
|
65
|
+
auth_data: auth_data
|
66
|
+
}
|
67
|
+
end
|
58
68
|
end
|
59
69
|
end
|
60
70
|
end
|
data/lib/izokatu/version.rb
CHANGED
metadata
CHANGED
@@ -1,42 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: izokatu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- mongalless
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
|
-
cert_chain:
|
11
|
-
-
|
12
|
-
-----BEGIN CERTIFICATE-----
|
13
|
-
MIIEWjCCAsKgAwIBAgIBATANBgkqhkiG9w0BAQsFADArMSkwJwYDVQQDDCBoaXRz
|
14
|
-
dGFsa2VyNy9EQz1wcm90b25tYWlsL0RDPWNvbTAeFw0yMDExMjkxMjE5MzJaFw0y
|
15
|
-
MTExMjkxMjE5MzJaMCsxKTAnBgNVBAMMIGhpdHN0YWxrZXI3L0RDPXByb3Rvbm1h
|
16
|
-
aWwvREM9Y29tMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAuDgvPY+H
|
17
|
-
5a3R819tNshtIMrOxLjVZSXNrMz3e6ocBzWNnwbikPf+ykZI71/Z2AMANRl3h2dm
|
18
|
-
jxlOtw0LwgUVg/9kXFJdSkKW1ahUYk4TDifTLsc+m9zhEO4HaqXNAQWdlB7xFKpO
|
19
|
-
REw0qvFOayXPDxFOdJhYgSJ3GyhmV2sbyCyqL8+eDzE2Y9p/XpAKv4MgLKzF8dEM
|
20
|
-
4RQlKZgZNmcaTYKrfvXBLRNv3G3/mUlu8xuiKMEjX74z1+5go0haKSz51UxekckR
|
21
|
-
VD1iKU7bjQXkOoucPwre5wTqXWppH80tPO4N4J0XKUSWX0QJt2obGZlBXhgF0BsR
|
22
|
-
Wd9HxYqdkeVm9aFf58g2XOtpIOpV13IJ253mrftxhpgRVP0dOHXy/C+W/F+At75O
|
23
|
-
7OfUUjU/1DoMNL3kbtNThtuwE/gp87/+PttPlIVUA+ejaELQlb1bvUtRaOW/4ZJj
|
24
|
-
XdHeCpJKvhRPOLffmW4e/oEWq7L+PxaBypKRdV4S0ij4AKVCrJ2epN7zAgMBAAGj
|
25
|
-
gYgwgYUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFEsBiliinio0
|
26
|
-
zcL8dE5paoSgYHRwMCUGA1UdEQQeMByBGmhpdHN0YWxrZXI3QHByb3Rvbm1haWwu
|
27
|
-
Y29tMCUGA1UdEgQeMByBGmhpdHN0YWxrZXI3QHByb3Rvbm1haWwuY29tMA0GCSqG
|
28
|
-
SIb3DQEBCwUAA4IBgQCAnqQbkqY6AwlMUesfX9++CsqmU+Q1lKwvZSjeSjfCFU4p
|
29
|
-
TpNay96jd/7hRD+kydh0ghmLauSJwYml5lN4d1USaMbejPCYGUZHL5zOFuL8MRRY
|
30
|
-
aaozl5mdyHwPzNdzn5tDgT7553MTFDt7n4luSis+V1d4ycKL5gbpYslmDjtJzOi6
|
31
|
-
Y1v0NUc7m2A2MOJgzVuRsDjnWJaRF7xzawbGJBchU48jQ4hu6a5kq9gjOg8ybPiq
|
32
|
-
OX4qrBOJfNT0EG/2+TuRFU+8IsXvLNmrBVeaUa3CFEA4hrWQLQU2/SNxdvpuXal5
|
33
|
-
Kc0vOe/EBftWGcQtPCEyE14uImM5gc5JOKJu1nHJkpfoUPbZmDzzObQHQ22GDuwR
|
34
|
-
kgsSHaCAYaBtkQ9Lkk1ccZwb1WwpucXBRd2NZrO7c7DJQLAuI3CWS/Iljhow0quq
|
35
|
-
rhxIlERIpUf5MM1tTlt/k9LnjYlvAqiDHgIXWKcxJaZ0/fLq9lYgi/FTZhL07L2j
|
36
|
-
5MF2YkFP1yWl6vQ9biw=
|
37
|
-
-----END CERTIFICATE-----
|
38
|
-
date: 2020-11-29 00:00:00.000000000 Z
|
10
|
+
cert_chain: []
|
11
|
+
date: 2020-12-27 00:00:00.000000000 Z
|
39
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: contracts
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.14.0
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.14.0
|
40
27
|
- !ruby/object:Gem::Dependency
|
41
28
|
name: ecies
|
42
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -105,20 +92,6 @@ dependencies:
|
|
105
92
|
- - ">="
|
106
93
|
- !ruby/object:Gem::Version
|
107
94
|
version: 7.1.1
|
108
|
-
- !ruby/object:Gem::Dependency
|
109
|
-
name: contracts
|
110
|
-
requirement: !ruby/object:Gem::Requirement
|
111
|
-
requirements:
|
112
|
-
- - "~>"
|
113
|
-
- !ruby/object:Gem::Version
|
114
|
-
version: 0.14.0
|
115
|
-
type: :runtime
|
116
|
-
prerelease: false
|
117
|
-
version_requirements: !ruby/object:Gem::Requirement
|
118
|
-
requirements:
|
119
|
-
- - "~>"
|
120
|
-
- !ruby/object:Gem::Version
|
121
|
-
version: 0.14.0
|
122
95
|
- !ruby/object:Gem::Dependency
|
123
96
|
name: bundler-audit
|
124
97
|
requirement: !ruby/object:Gem::Requirement
|
@@ -245,9 +218,9 @@ files:
|
|
245
218
|
- LICENSE.txt
|
246
219
|
- README.md
|
247
220
|
- Rakefile
|
221
|
+
- TASKS.md
|
248
222
|
- bin/console
|
249
223
|
- bin/setup
|
250
|
-
- certs/mongalless.pem
|
251
224
|
- izokatu.gemspec
|
252
225
|
- lib/izokatu.rb
|
253
226
|
- lib/izokatu/action_call_options_selector.rb
|
@@ -300,14 +273,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
300
273
|
requirements:
|
301
274
|
- - ">="
|
302
275
|
- !ruby/object:Gem::Version
|
303
|
-
version: 2.
|
276
|
+
version: 2.6.6
|
304
277
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
305
278
|
requirements:
|
306
279
|
- - ">="
|
307
280
|
- !ruby/object:Gem::Version
|
308
281
|
version: '0'
|
309
282
|
requirements: []
|
310
|
-
rubygems_version: 3.
|
283
|
+
rubygems_version: 3.2.3
|
311
284
|
signing_key:
|
312
285
|
specification_version: 4
|
313
286
|
summary: Ruby library that provides abstact interface for private-key and public-key
|
checksums.yaml.gz.sig
DELETED
data.tar.gz.sig
DELETED
@@ -1,2 +0,0 @@
|
|
1
|
-
���wI�����ܸ������ӱvr�h��]�q��y7d=G D|Qxcw:�%�UK�
|
2
|
-
���r>�!�ؿ�)��Cg��¦��]����G��qj����P���Wng���澤B��=KP���+@:�cG�2��d�n�p�]r��'��p%��.��}���;�˝C(���<��**�V4��� �)�g�oq<��R���L�`�Q�uI��� >C��Ø�X�Nl�| ��Q��8)*2�U!*ք\���H>P�}����'_��\^tK踡�c�2�-�K�VK@'ý_��$8F�I\�?t���a��-Z�G�m�n��� Q��u�ë���x��{P]��>��"�S���'|5Y��]3�d�^ё����$~:�^
|
data/certs/mongalless.pem
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIEWjCCAsKgAwIBAgIBATANBgkqhkiG9w0BAQsFADArMSkwJwYDVQQDDCBoaXRz
|
3
|
-
dGFsa2VyNy9EQz1wcm90b25tYWlsL0RDPWNvbTAeFw0yMDExMjkxMjE5MzJaFw0y
|
4
|
-
MTExMjkxMjE5MzJaMCsxKTAnBgNVBAMMIGhpdHN0YWxrZXI3L0RDPXByb3Rvbm1h
|
5
|
-
aWwvREM9Y29tMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAuDgvPY+H
|
6
|
-
5a3R819tNshtIMrOxLjVZSXNrMz3e6ocBzWNnwbikPf+ykZI71/Z2AMANRl3h2dm
|
7
|
-
jxlOtw0LwgUVg/9kXFJdSkKW1ahUYk4TDifTLsc+m9zhEO4HaqXNAQWdlB7xFKpO
|
8
|
-
REw0qvFOayXPDxFOdJhYgSJ3GyhmV2sbyCyqL8+eDzE2Y9p/XpAKv4MgLKzF8dEM
|
9
|
-
4RQlKZgZNmcaTYKrfvXBLRNv3G3/mUlu8xuiKMEjX74z1+5go0haKSz51UxekckR
|
10
|
-
VD1iKU7bjQXkOoucPwre5wTqXWppH80tPO4N4J0XKUSWX0QJt2obGZlBXhgF0BsR
|
11
|
-
Wd9HxYqdkeVm9aFf58g2XOtpIOpV13IJ253mrftxhpgRVP0dOHXy/C+W/F+At75O
|
12
|
-
7OfUUjU/1DoMNL3kbtNThtuwE/gp87/+PttPlIVUA+ejaELQlb1bvUtRaOW/4ZJj
|
13
|
-
XdHeCpJKvhRPOLffmW4e/oEWq7L+PxaBypKRdV4S0ij4AKVCrJ2epN7zAgMBAAGj
|
14
|
-
gYgwgYUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFEsBiliinio0
|
15
|
-
zcL8dE5paoSgYHRwMCUGA1UdEQQeMByBGmhpdHN0YWxrZXI3QHByb3Rvbm1haWwu
|
16
|
-
Y29tMCUGA1UdEgQeMByBGmhpdHN0YWxrZXI3QHByb3Rvbm1haWwuY29tMA0GCSqG
|
17
|
-
SIb3DQEBCwUAA4IBgQCAnqQbkqY6AwlMUesfX9++CsqmU+Q1lKwvZSjeSjfCFU4p
|
18
|
-
TpNay96jd/7hRD+kydh0ghmLauSJwYml5lN4d1USaMbejPCYGUZHL5zOFuL8MRRY
|
19
|
-
aaozl5mdyHwPzNdzn5tDgT7553MTFDt7n4luSis+V1d4ycKL5gbpYslmDjtJzOi6
|
20
|
-
Y1v0NUc7m2A2MOJgzVuRsDjnWJaRF7xzawbGJBchU48jQ4hu6a5kq9gjOg8ybPiq
|
21
|
-
OX4qrBOJfNT0EG/2+TuRFU+8IsXvLNmrBVeaUa3CFEA4hrWQLQU2/SNxdvpuXal5
|
22
|
-
Kc0vOe/EBftWGcQtPCEyE14uImM5gc5JOKJu1nHJkpfoUPbZmDzzObQHQ22GDuwR
|
23
|
-
kgsSHaCAYaBtkQ9Lkk1ccZwb1WwpucXBRd2NZrO7c7DJQLAuI3CWS/Iljhow0quq
|
24
|
-
rhxIlERIpUf5MM1tTlt/k9LnjYlvAqiDHgIXWKcxJaZ0/fLq9lYgi/FTZhL07L2j
|
25
|
-
5MF2YkFP1yWl6vQ9biw=
|
26
|
-
-----END CERTIFICATE-----
|
metadata.gz.sig
DELETED
Binary file
|