gcrypto_jce 0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,43 @@
1
+
2
+ require_relative 'provider'
3
+
4
+ module GcryptoJce
5
+ module SecureRandom
6
+ def generate(opts = { })
7
+ eng = opts[:type] || "SHA1PRNG"
8
+ prov = GcryptoJce::Provider.handle_options(opts, nil)
9
+
10
+ if prov.nil?
11
+ sr = java.security.SecureRandom.getInstance(eng)
12
+ else
13
+ sr = java.security.SecureRandom.getInstance(eng, prov)
14
+ end
15
+
16
+ byteLen = opts[:byteLen]
17
+ hexLen = opts[:hexLen]
18
+ intLen = opts[:intLen]
19
+ if not byteLen.nil? and byteLen.to_i > 0
20
+ b = Java::byte[byteLen].new
21
+ sr.nextBytes(b)
22
+ b
23
+ elsif not hexLen.nil? and hexLen.to_i > 0
24
+ b = Java::byte[hexLen*2].new
25
+ sr.nextBytes(b)
26
+ String.from_java_bytes(org.bouncycastle.util.encoders.Hex.encode(b))
27
+ elsif not intLen.nil? and intLen.to_i > 0
28
+ sr.nextInt
29
+ else
30
+ b = Java::byte[32].new
31
+ sr.nextBytes(b)
32
+ b
33
+ end
34
+ end
35
+ # end generate
36
+ end
37
+ # end SecureRandom
38
+
39
+ class SecureRandomEngine
40
+ extend SecureRandom
41
+ end
42
+
43
+ end
@@ -0,0 +1,3 @@
1
+ module GcryptoJce
2
+ VERSION = "0.1"
3
+ end
@@ -0,0 +1,52 @@
1
+
2
+
3
+ job :release do
4
+
5
+ include_job :prompt_version
6
+ #ver = prompt "Please provide version for this release:", required: true
7
+ #set :releasing_version, ver
8
+
9
+ include_job :check_in
10
+ include_job :build
11
+ end
12
+
13
+ job :prompt_version do
14
+ if get(:releasing_version) == nil
15
+ ver = prompt "Please provide version for this release:", required: true
16
+ set :releasing_version, ver
17
+ end
18
+ end
19
+
20
+ job :build do
21
+
22
+ dir File.dirname(__FILE__)
23
+
24
+ include_job :prompt_version
25
+
26
+ rubygem do
27
+ #publish build('alog.gemspec'), ignore_status: true #do |res|
28
+ build('gcrypto_jce.gemspec') do |res|
29
+ publish(res, ignore_status: true)
30
+ end
31
+ end
32
+
33
+ end
34
+
35
+
36
+ job :check_in do
37
+ dir File.dirname(__FILE__)
38
+ git do
39
+ commit
40
+ tag
41
+ push 'origin', 'master'
42
+ #push 'git','master'
43
+ end
44
+ end
45
+
46
+ job :reinstall do
47
+ rubygem do
48
+ uninstall 'gcrypto_jce'
49
+ install 'gcrypto_jce'
50
+ end
51
+ end
52
+
metadata ADDED
@@ -0,0 +1,158 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: gcrypto_jce
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.1'
5
+ platform: ruby
6
+ authors:
7
+ - Chris Liaw
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2019-10-30 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '2.0'
19
+ name: bundler
20
+ prerelease: false
21
+ type: :development
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - "~>"
31
+ - !ruby/object:Gem::Version
32
+ version: '10.0'
33
+ name: rake
34
+ prerelease: false
35
+ type: :development
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ name: tlogger
48
+ prerelease: false
49
+ type: :runtime
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ name: pkernel
62
+ prerelease: false
63
+ type: :runtime
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ name: pkernel_jce
76
+ prerelease: false
77
+ type: :runtime
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ name: activesupport
90
+ prerelease: false
91
+ type: :runtime
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ description: ''
98
+ email:
99
+ - chrisliaw@antrapol.com
100
+ executables: []
101
+ extensions: []
102
+ extra_rdoc_files: []
103
+ files:
104
+ - ".gitignore"
105
+ - ".ruby-version"
106
+ - Gemfile
107
+ - Gemfile.lock
108
+ - LICENSE.txt
109
+ - README.md
110
+ - Rakefile
111
+ - bin/console
112
+ - bin/setup
113
+ - gcrypto_jce.gemspec
114
+ - jars/bcmail-jdk15on-157.jar
115
+ - jars/bcpg-jdk15on-157.jar
116
+ - jars/bcpkix-jdk15on-157.jar
117
+ - jars/bcprov-ext-jdk15on-157.jar
118
+ - jars/bcprov-jdk15on-157.jar
119
+ - lib/gcrypto_jce.rb
120
+ - lib/gcrypto_jce/converter.rb
121
+ - lib/gcrypto_jce/digest.rb
122
+ - lib/gcrypto_jce/error.rb
123
+ - lib/gcrypto_jce/global.rb
124
+ - lib/gcrypto_jce/hkdf.rb
125
+ - lib/gcrypto_jce/io_utils.rb
126
+ - lib/gcrypto_jce/keypair_crypto.rb
127
+ - lib/gcrypto_jce/pbkdf2.rb
128
+ - lib/gcrypto_jce/provider.rb
129
+ - lib/gcrypto_jce/secretkey.rb
130
+ - lib/gcrypto_jce/secretkey_crypto.rb
131
+ - lib/gcrypto_jce/secure_random.rb
132
+ - lib/gcrypto_jce/version.rb
133
+ - release.job
134
+ homepage: ''
135
+ licenses:
136
+ - MIT
137
+ metadata: {}
138
+ post_install_message:
139
+ rdoc_options: []
140
+ require_paths:
141
+ - lib
142
+ required_ruby_version: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ required_rubygems_version: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ requirements: []
153
+ rubyforge_project:
154
+ rubygems_version: 2.6.14.1
155
+ signing_key:
156
+ specification_version: 4
157
+ summary: ''
158
+ test_files: []