pkernel 0.2 → 0.5.1

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
  SHA256:
3
- metadata.gz: 736194409b35dff47387c2a93430583a5dc65f9fe13b9c00733db535df224252
4
- data.tar.gz: 659e3da11531ba48963d95974a1422e449a15611e55722b2830e976386ec7cd6
3
+ metadata.gz: d19632871b8161d7ee5fd14dba1673a3de62a19614939e28149f5f08b99166c4
4
+ data.tar.gz: 2a8cf4f85c7b3046217528b1793bb25f8f9190650b0915284142ec28935d58d0
5
5
  SHA512:
6
- metadata.gz: 12ac3014308066c43fc699742a6840a7db86373d4c47718ee960a19fad21e00ecae97deecbef4369e2c27192f25604c59661cc923c16533927b2c64321eb596e
7
- data.tar.gz: 684def14c1eacacc4c6120198690e5390d467cf90e55cb0a8e3ec7ab33d81411697252e57fe950e04637e17c1c446429f66f9cad4f9798ce33d0606f9e6426ca
6
+ metadata.gz: 0ad18196b3738bc3ee1962d928746358078f09947965ef0fdbc221a400a508cad66cbcb71ec2f0acb28a0398a189bd848d501c501d2cab188fb66a67727f8a89
7
+ data.tar.gz: d6aaf1873965f7e1e309a82f9a3b0215910b5d6fd1f20e3338594b58637ee964c588e25ed4b0d5ea523246302593ed2ffbe60872976109931ebce4757319499b
data/.gitignore CHANGED
@@ -8,3 +8,5 @@
8
8
  /tmp/
9
9
 
10
10
  /tags
11
+ *.gem
12
+ Gemfile.lock
data/Gemfile CHANGED
File without changes
File without changes
data/README.md CHANGED
File without changes
data/Rakefile CHANGED
@@ -1,2 +1,14 @@
1
+
2
+ #namespace :jruby do
3
+ # task :compile do
4
+ # Dir.glob("**/*.rb").each do |rb|
5
+ # `jrubyc #{rb}`
6
+ # end
7
+ # end
8
+ #end
9
+
1
10
  require "bundler/gem_tasks"
2
11
  task :default => :spec
12
+
13
+ require 'devops_helper'
14
+
@@ -16,6 +16,7 @@ module Pkernel
16
16
  RSA_KEY_NAME = "RSA"
17
17
  DSA_KEY_NAME = "DSA"
18
18
  EC_KEY_NAME = "EC"
19
+ DH_KEY_NAME = "DH"
19
20
 
20
21
  include Catcher
21
22
  end
@@ -40,6 +41,10 @@ module Pkernel
40
41
  @dns_names << dns if not dns.nil? and not dns.empty?
41
42
  end
42
43
 
44
+ def email=(email)
45
+ @emails << email
46
+ end
47
+
43
48
  def from_hash(hash)
44
49
  if not hash.nil?
45
50
  hash.each do |k,v|
@@ -134,19 +139,50 @@ module Pkernel
134
139
  #
135
140
  class Identity
136
141
  attr_reader :privKey, :certificate, :keystore, :chain, :key, :pubKey
137
- def initialize(opts = {})
142
+ def initialize(opts)
143
+ if self.respond_to?(:pre_init)
144
+ pre_init(opts)
145
+ end
138
146
  @key = opts[:key]
139
147
  @pubKey = opts[:pubKey]
140
148
  @privKey = opts[:privKey]
141
149
  @certificate = opts[:certificate]
142
150
  @keystore = opts[:keystore]
143
151
  @chain = opts[:chain]
152
+ if self.respond_to?(:post_init)
153
+ post_init(opts)
154
+ end
155
+ end
156
+
157
+ def to_s
158
+ res = []
159
+ res << "Identity:"
160
+ res << "Keypair : #{@key.nil? ? 'Not exist' : 'Exist'}"
161
+ res << "Cert : #{@certificate.nil? ? 'Not exist' : 'Exist'}"
162
+ res.join("\n")
144
163
  end
145
164
  end
146
165
  # end Identity
147
166
  #
148
167
 
149
168
  class IdentityFactory
169
+ # this constant is here because there is compatibility between Java and OpenSSL
170
+ # list below is from OpenSSL website
171
+ # Any value outside fo this list may not be opened by OpenSSL engine
172
+ P8_PBE_MD2_DES = "PBE-MD2-DES"
173
+ P8_PBE_MD5_DES = "PBE-MD5-DES"
174
+
175
+ P8_PBE_SHA1_RC2_64 = "PBE-SHA1-RC2-64"
176
+ P8_PBE_MD2_RC2_64 = "PBE-MD2-RC2-64"
177
+ P8_PBE_MD5_RC2_64 = "PBE-MD5-RC2-64"
178
+ P8_PBE_SHA1_DES = "PBE-SHA1-DES"
179
+
180
+ P8_PBE_SHA1_RC4_128 = "PBE-SHA1-RC4-128"
181
+ P8_PBE_SHA1_RC4_40 = "PBE-SHA1-RC4-40"
182
+ P8_PBE_SHA1_3DES = "PBE-SHA1-3DES"
183
+ P8_PBE_SHA1_2DES = "PBE-SHA1-2DES"
184
+ P8_PBE_SHA1_RC2_128 = "PBE-SHA1-RC2-128"
185
+ P8_PBE_SHA1_RC2_40 = "PBE-SHA1-RC2-40"
150
186
  end
151
187
 
152
188
  class OCSP
@@ -172,7 +208,57 @@ module Pkernel
172
208
  end
173
209
 
174
210
  class Converter
175
-
211
+ end
212
+
213
+ class Runtime
214
+ def Runtime.is_java_runtime?
215
+ (RUBY_PLATFORM =~ /java/) != nil
216
+ end
217
+ end
218
+
219
+ class IoUtils
176
220
  end
177
221
 
222
+ #class File
223
+ #end
224
+
225
+ class MemBuf
226
+ end
178
227
  end
228
+
229
+
230
+
231
+ # auto load related libraries?
232
+ #if Pkernel::Runtime.is_java_runtime?
233
+ #
234
+ # dep = Gem::Dependency.new('pkernel_jce')
235
+ # dd = dep.matching_specs.max_by(&:version)
236
+ # if dd.nil?
237
+ # begin
238
+ # # gcrypto_jce not installed!
239
+ # Gem.install 'pkernels_jce', dd.requirement
240
+ # rescue Exception => ex
241
+ # # silently ignore...
242
+ # end
243
+ # else
244
+ # require 'pkernel_jce'
245
+ # end
246
+ #
247
+ #else
248
+ #
249
+ # dep = Gem::Dependency.new('pkernel_openssl')
250
+ # dd = dep.matching_specs.max_by(&:version)
251
+ # if dd.nil?
252
+ # begin
253
+ # # gcrypto_jce not installed!
254
+ # Gem.install 'pkernel_openssl', dd.requirement
255
+ # rescue Exception
256
+ # # silently ignore...
257
+ # end
258
+ # else
259
+ # require 'pkernel_openssl'
260
+ # end
261
+ #
262
+ #end
263
+
264
+
@@ -1,3 +1,3 @@
1
1
  module Pkernel
2
- VERSION = "0.2"
2
+ VERSION = "0.5.1"
3
3
  end
@@ -32,6 +32,7 @@ Gem::Specification.new do |spec|
32
32
  spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
33
33
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
34
34
  end
35
+ spec.files.append(Dir.glob("**/*.class"))
35
36
  spec.bindir = "exe"
36
37
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
37
38
  spec.require_paths = ["lib"]
@@ -39,5 +40,7 @@ Gem::Specification.new do |spec|
39
40
  spec.add_development_dependency "bundler", "~> 2.0"
40
41
  spec.add_development_dependency "rake", "~> 10.0"
41
42
 
42
- spec.add_dependency 'tlogger'
43
+ spec.add_dependency 'tlogger', ">= 0.20.0"
44
+
45
+ spec.add_development_dependency 'devops_helper', '~> 0.1.0'
43
46
  end
File without changes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pkernel
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.2'
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Liaw
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-01-21 00:00:00.000000000 Z
11
+ date: 2020-11-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -44,14 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: 0.20.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: 0.20.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: devops_helper
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 0.1.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 0.1.0
55
69
  description: Collection of fundamental functions for PKI core engine
56
70
  email:
57
71
  - chrisliaw@antrapol.com
@@ -61,7 +75,6 @@ extra_rdoc_files: []
61
75
  files:
62
76
  - ".gitignore"
63
77
  - Gemfile
64
- - Gemfile.lock
65
78
  - LICENSE.txt
66
79
  - README.md
67
80
  - Rakefile
@@ -90,8 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
90
103
  - !ruby/object:Gem::Version
91
104
  version: '0'
92
105
  requirements: []
93
- rubyforge_project:
94
- rubygems_version: 2.7.6
106
+ rubygems_version: 3.1.2
95
107
  signing_key:
96
108
  specification_version: 4
97
109
  summary: PKI Kernel
@@ -1,23 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- pkernel (0.1.0)
5
- tlogger
6
-
7
- GEM
8
- remote: https://rubygems.org/
9
- specs:
10
- rake (10.5.0)
11
- tlogger (0.8.0)
12
-
13
- PLATFORMS
14
- java
15
- ruby
16
-
17
- DEPENDENCIES
18
- bundler (~> 2.0)
19
- pkernel!
20
- rake (~> 10.0)
21
-
22
- BUNDLED WITH
23
- 2.0.2