certie 0.0.4 → 0.0.7
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 +4 -4
- data/bin/certie +4 -0
- data/lib/certie.rb +7 -7
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8358a82f1572ae72b8da92c1d397123ae63aea3d5d52912913bfe8618bd809d6
|
4
|
+
data.tar.gz: f98e455d5ab1ddafbd77a16a2d13cca755e7818ec696dc3a863cab78624d12d5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3f578976d7ed2da9136949de2a63aedef3eb3c9b269ea4e2292f9b1a142747f0e85e29d9b3522651417a3da00f39ee1bd1bef7dd30bc582c3a00755a68156a98
|
7
|
+
data.tar.gz: f8eb1ed4c80a59ce60228ae7a04af97b5576a9a6ff57214737dbc9932118ef8c5d759eaf48d37b2a0b4ec598b5bd7bc653ff02fdff91c0d30986757f8a7e13b3
|
data/bin/certie
CHANGED
@@ -4,6 +4,10 @@ require 'certie'
|
|
4
4
|
def show_usage
|
5
5
|
puts "Usage: #{$0} <common_name>"
|
6
6
|
puts "Example: #{$0} example.com"
|
7
|
+
puts ''
|
8
|
+
puts 'The subject prefix can be set by performing the following'
|
9
|
+
puts 'cat > ~/.certie_subjprefix'
|
10
|
+
puts '/C=AE/ST=Dubai/L=Dubai/O=Pocket Theories/OU=Engineering'
|
7
11
|
end
|
8
12
|
|
9
13
|
ARGV.each do |iterarg|
|
data/lib/certie.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
|
2
1
|
require 'openssl'
|
3
2
|
|
4
3
|
class CertificateWrapper
|
@@ -91,6 +90,7 @@ class CertificateWrapper
|
|
91
90
|
ef.issuer_certificate = rootCert
|
92
91
|
# cert.add_extension ef.create_extension('keyUsage', 'digitalSignature', true) # TODO: check if we can set webServer and webClient
|
93
92
|
cert.add_extension ef.create_extension('subjectKeyIdentifier', 'hash', false )
|
93
|
+
cert.add_extension ef.create_extension('subjectAltName', 'DNS:' + cn, false) #This can be CSV of multiple DNS: and IP: entries
|
94
94
|
|
95
95
|
cert.sign rootKey, OpenSSL::Digest.new('SHA256')
|
96
96
|
|
@@ -99,10 +99,13 @@ class CertificateWrapper
|
|
99
99
|
end
|
100
100
|
end
|
101
101
|
|
102
|
-
#
|
103
|
-
`openssl pkcs8 -topk8 -inform pem -in "#{cn}.rsa" -out "#{cn}.key" -nocrypt`
|
102
|
+
# An alternative to invoking OpenSSL and cat - OpenSSL v2.2.0 has private_to_pem in OpenSSL::PKey
|
103
|
+
# `openssl pkcs8 -topk8 -inform pem -in "#{cn}.rsa" -out "#{cn}.key" -nocrypt`
|
104
|
+
File.open "#{cn}.key", 'wb' do |myfile|
|
105
|
+
myfile.print(key.private_to_pem)
|
106
|
+
end
|
104
107
|
|
105
|
-
#
|
108
|
+
# Replaced system call cat with file_cat method
|
106
109
|
# `cat "#{cn}.cert" "#{cn}.key" > "#{cn}.pem"`
|
107
110
|
file_cat "#{cn}.pem", ["#{cn}.cert", "#{cn}.key"]
|
108
111
|
end
|
@@ -122,6 +125,3 @@ class CertificateWrapper
|
|
122
125
|
create_certificate cn
|
123
126
|
end
|
124
127
|
end
|
125
|
-
|
126
|
-
# key = OpenSSL::PKey::RSA.new 2048
|
127
|
-
# puts key.private_to_pem
|
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: certie
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Katkam Nitin Reddy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-07-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: openssl
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 2.2.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 2.2.0
|
27
27
|
description:
|
28
28
|
email:
|
29
29
|
executables:
|
@@ -51,7 +51,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
51
51
|
- !ruby/object:Gem::Version
|
52
52
|
version: '0'
|
53
53
|
requirements: []
|
54
|
-
rubygems_version: 3.
|
54
|
+
rubygems_version: 3.1.6
|
55
55
|
signing_key:
|
56
56
|
specification_version: 4
|
57
57
|
summary: A utility for generating certificates
|