tss 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,3 @@
1
+ module TSS
2
+ VERSION = '0.1.0'.freeze
3
+ end
@@ -0,0 +1,58 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'tss/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'tss'
8
+ spec.version = TSS::VERSION
9
+ spec.authors = ['Glenn Rempe']
10
+ spec.email = ['glenn@rempe.us']
11
+
12
+ cert = File.expand_path('~/.gem-certs/gem-private_key_grempe.pem')
13
+ if File.exist?(cert)
14
+ spec.signing_key = cert
15
+ spec.cert_chain = ['certs/gem-public_cert_grempe.pem']
16
+ end
17
+
18
+ spec.summary = <<-EOF
19
+ A Ruby gem implementing Threshold Secret Sharing. This code can be
20
+ used in your Ruby applications or as a simple command line (CLI)
21
+ executable for splitting and reconstructing secrets.
22
+ EOF
23
+
24
+ spec.description = <<-EOF
25
+ Threshold Secret Sharing (TSS) provides a way to generate N shares
26
+ from a value, so that any M of those shares can be used to
27
+ reconstruct the original value, but any M-1 shares provide no
28
+ information about that value. This method can provide shared access
29
+ control on key material and other secrets that must be strongly
30
+ protected.
31
+
32
+ This gem implements a Threshold Secret Sharing method based on
33
+ polynomial interpolation in GF(256) and a format for the storage and
34
+ transmission of shares.
35
+
36
+ This implementation follows the specification in the document:
37
+
38
+ http://tools.ietf.org/html/draft-mcgrew-tss-03
39
+ EOF
40
+
41
+ spec.homepage = 'https://github.com/grempe/tss-rb'
42
+ spec.license = 'MIT'
43
+
44
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
45
+ spec.bindir = 'bin'
46
+ spec.executables << 'tss'
47
+ spec.require_paths = ['lib']
48
+
49
+ spec.add_dependency 'dry-types', '~> 0.7'
50
+ spec.add_dependency 'binary_struct', '~> 2.1'
51
+ spec.add_dependency 'thor', '~> 0.19'
52
+
53
+ spec.add_development_dependency 'bundler', '~> 1.11'
54
+ spec.add_development_dependency 'rake', '~> 11.1'
55
+ spec.add_development_dependency 'minitest', '~> 5.0'
56
+ spec.add_development_dependency 'pry', '~> 0.10'
57
+ spec.add_development_dependency 'coveralls'
58
+ end
metadata ADDED
@@ -0,0 +1,223 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: tss
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Glenn Rempe
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDYDCCAkigAwIBAgIBATANBgkqhkiG9w0BAQUFADA7MQ4wDAYDVQQDDAVnbGVu
14
+ bjEVMBMGCgmSJomT8ixkARkWBXJlbXBlMRIwEAYKCZImiZPyLGQBGRYCdXMwHhcN
15
+ MTYwNDExMDI0NTU0WhcNMTcwNDExMDI0NTU0WjA7MQ4wDAYDVQQDDAVnbGVubjEV
16
+ MBMGCgmSJomT8ixkARkWBXJlbXBlMRIwEAYKCZImiZPyLGQBGRYCdXMwggEiMA0G
17
+ CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZqTH5Jf+D/W2B4BIiL49CpHa86rK/
18
+ oT+v3xZwuEE92lJea+ygn3IAsidVTW47AKE6Lt3UqUkGQGKxsqH/Dhir08BqjLlD
19
+ gBUozGZpM3B6uWZnD6QXLbOmZeGVDnwB/QDfzaawN1i3smlYxYT+KNLjl80aN3we
20
+ /cHAWG7JG47AF/S91mYcg1WgZnDgZt9+RyVR1AsfYbM+SidOSoXEOHPCbuUxLKJb
21
+ gj5ieCFhm5GNWEugvgiX/ruas+VHV0fF3fzjYlU2fZPTuQyB4UD5FWX4UqdsBf3w
22
+ jB94TDBsJ3FVGPbggEhLGKd8pbQmBIOqXolGaqhs7dnuf5imu5mAXHC1AgMBAAGj
23
+ bzBtMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBRfxEyosUbKjfFa
24
+ j+gae2CcT3aFCTAZBgNVHREEEjAQgQ5nbGVubkByZW1wZS51czAZBgNVHRIEEjAQ
25
+ gQ5nbGVubkByZW1wZS51czANBgkqhkiG9w0BAQUFAAOCAQEAzgK20+MNOknR9Kx6
26
+ RisI3DsioCADjGldxY+INrwoTfPDVmNm4GdTYC+V+/BvxJw1RqHjEbuXSg0iibQC
27
+ 4vN+th0Km7dnas/td1i+EKfGencfyQyecIaG9l3kbCkCWnldRtZ+BS5EfP2ML2u8
28
+ fyCtze/Piovu8IwXL1W5kGZMnvzLmWxdqI3VPUou40n8F+EiMMLgd53kpzjtNOau
29
+ 4W+mqVGOwlEGVSgI5+0SIsD8pvc62PlPWTv0kn1bcufKKCZmoVmpfbe3j4JpBInq
30
+ zieXiXZSAojfFx9g91fKdIrlPbInHU/BaCxXSLBwvOM0drE+c2ue9X8gB55XAhzX
31
+ 37oBiw==
32
+ -----END CERTIFICATE-----
33
+ date: 2016-04-12 00:00:00.000000000 Z
34
+ dependencies:
35
+ - !ruby/object:Gem::Dependency
36
+ name: dry-types
37
+ requirement: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - "~>"
40
+ - !ruby/object:Gem::Version
41
+ version: '0.7'
42
+ type: :runtime
43
+ prerelease: false
44
+ version_requirements: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - "~>"
47
+ - !ruby/object:Gem::Version
48
+ version: '0.7'
49
+ - !ruby/object:Gem::Dependency
50
+ name: binary_struct
51
+ requirement: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - "~>"
54
+ - !ruby/object:Gem::Version
55
+ version: '2.1'
56
+ type: :runtime
57
+ prerelease: false
58
+ version_requirements: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '2.1'
63
+ - !ruby/object:Gem::Dependency
64
+ name: thor
65
+ requirement: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '0.19'
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - "~>"
75
+ - !ruby/object:Gem::Version
76
+ version: '0.19'
77
+ - !ruby/object:Gem::Dependency
78
+ name: bundler
79
+ requirement: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - "~>"
82
+ - !ruby/object:Gem::Version
83
+ version: '1.11'
84
+ type: :development
85
+ prerelease: false
86
+ version_requirements: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - "~>"
89
+ - !ruby/object:Gem::Version
90
+ version: '1.11'
91
+ - !ruby/object:Gem::Dependency
92
+ name: rake
93
+ requirement: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - "~>"
96
+ - !ruby/object:Gem::Version
97
+ version: '11.1'
98
+ type: :development
99
+ prerelease: false
100
+ version_requirements: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - "~>"
103
+ - !ruby/object:Gem::Version
104
+ version: '11.1'
105
+ - !ruby/object:Gem::Dependency
106
+ name: minitest
107
+ requirement: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - "~>"
110
+ - !ruby/object:Gem::Version
111
+ version: '5.0'
112
+ type: :development
113
+ prerelease: false
114
+ version_requirements: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - "~>"
117
+ - !ruby/object:Gem::Version
118
+ version: '5.0'
119
+ - !ruby/object:Gem::Dependency
120
+ name: pry
121
+ requirement: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - "~>"
124
+ - !ruby/object:Gem::Version
125
+ version: '0.10'
126
+ type: :development
127
+ prerelease: false
128
+ version_requirements: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - "~>"
131
+ - !ruby/object:Gem::Version
132
+ version: '0.10'
133
+ - !ruby/object:Gem::Dependency
134
+ name: coveralls
135
+ requirement: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ type: :development
141
+ prerelease: false
142
+ version_requirements: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ description: |2
148
+ Threshold Secret Sharing (TSS) provides a way to generate N shares
149
+ from a value, so that any M of those shares can be used to
150
+ reconstruct the original value, but any M-1 shares provide no
151
+ information about that value. This method can provide shared access
152
+ control on key material and other secrets that must be strongly
153
+ protected.
154
+
155
+ This gem implements a Threshold Secret Sharing method based on
156
+ polynomial interpolation in GF(256) and a format for the storage and
157
+ transmission of shares.
158
+
159
+ This implementation follows the specification in the document:
160
+
161
+ http://tools.ietf.org/html/draft-mcgrew-tss-03
162
+ email:
163
+ - glenn@rempe.us
164
+ executables:
165
+ - tss
166
+ extensions: []
167
+ extra_rdoc_files: []
168
+ files:
169
+ - ".codeclimate.yml"
170
+ - ".gitignore"
171
+ - ".rubocop.yml"
172
+ - ".ruby-version"
173
+ - ".travis.yml"
174
+ - CODE_OF_CONDUCT.md
175
+ - Gemfile
176
+ - LICENSE.txt
177
+ - README.md
178
+ - Rakefile
179
+ - bin/console
180
+ - bin/setup
181
+ - bin/tss
182
+ - certs/gem-public_cert_grempe.pem
183
+ - docs/tss-ietf-draft/draft-mcgrew-tss-03.html
184
+ - docs/tss-ietf-draft/draft-mcgrew-tss-03.txt
185
+ - lib/tss.rb
186
+ - lib/tss/blank.rb
187
+ - lib/tss/cli.rb
188
+ - lib/tss/combiner.rb
189
+ - lib/tss/errors.rb
190
+ - lib/tss/hasher.rb
191
+ - lib/tss/splitter.rb
192
+ - lib/tss/tss.rb
193
+ - lib/tss/types.rb
194
+ - lib/tss/util.rb
195
+ - lib/tss/version.rb
196
+ - tss.gemspec
197
+ homepage: https://github.com/grempe/tss-rb
198
+ licenses:
199
+ - MIT
200
+ metadata: {}
201
+ post_install_message:
202
+ rdoc_options: []
203
+ require_paths:
204
+ - lib
205
+ required_ruby_version: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - ">="
208
+ - !ruby/object:Gem::Version
209
+ version: '0'
210
+ required_rubygems_version: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - ">="
213
+ - !ruby/object:Gem::Version
214
+ version: '0'
215
+ requirements: []
216
+ rubyforge_project:
217
+ rubygems_version: 2.4.5.1
218
+ signing_key:
219
+ specification_version: 4
220
+ summary: A Ruby gem implementing Threshold Secret Sharing. This code can be used in
221
+ your Ruby applications or as a simple command line (CLI) executable for splitting
222
+ and reconstructing secrets.
223
+ test_files: []
Binary file