simple_ca 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/.rspec +2 -0
- data/.rubocop.yml +21 -0
- data/.ruby-version +1 -0
- data/.travis.yml +20 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +59 -0
- data/README.md +26 -0
- data/Rakefile +1 -0
- data/lib/simple_ca.rb +1 -0
- data/lib/simple_ca/ca.rb +14 -0
- data/lib/simple_ca/sign_csr.rb +27 -0
- data/lib/simple_ca/version.rb +3 -0
- data/simple_ca.gemspec +21 -0
- data/spec/simple_ca/ca_spec.rb +23 -0
- data/spec/simple_ca/sign_csr_spec.rb +22 -0
- data/spec/spec_helper.rb +4 -0
- data/spec/support/certificate_matchers.rb +6 -0
- data/spec/support/fixtures/root.crt +23 -0
- data/spec/support/fixtures/root.key +27 -0
- data/spec/support/fixtures/test.crt +0 -0
- data/spec/support/fixtures/test.csr +17 -0
- data/tasks/default.rake +4 -0
- data/tasks/rspec.rake +3 -0
- data/tasks/rubocop.rake +3 -0
- metadata +124 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 19dc15dcd4112eac0a41c569d0993eac972f5c6b
|
4
|
+
data.tar.gz: f40feea3092c39879fce3a53b348178eb1ffbcdd
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 5dcb2e61c13ced6063e4850fffb74c554af341f2f9bc007c653be68dcbd1878601d5c33661473d6b045ac620e32d278c79d7f3a47b60434d240e6bd62108b715
|
7
|
+
data.tar.gz: 9dc2ec22c117dfb087e8742fabdfe9321fe90fdad39b28d3ec5ef4e1dc88d087f6b17e0338453715dd32ad2109d5118a3f32016b543ad306b1d19a07774887b8
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/.rubocop.yml
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
Style/StringLiterals:
|
2
|
+
EnforcedStyle: double_quotes
|
3
|
+
Style/TrailingComma:
|
4
|
+
EnforcedStyleForMultiline: comma
|
5
|
+
Documentation:
|
6
|
+
Enabled: false
|
7
|
+
Metrics/LineLength:
|
8
|
+
Max: 120
|
9
|
+
Style/SpaceInsideBlockBraces:
|
10
|
+
SpaceBeforeBlockParameters: false
|
11
|
+
Style/MethodDefParentheses:
|
12
|
+
EnforcedStyle: require_no_parentheses
|
13
|
+
Style/PredicateName:
|
14
|
+
NamePrefixBlacklist:
|
15
|
+
- is_
|
16
|
+
Style/AndOr:
|
17
|
+
EnforcedStyle: conditionals
|
18
|
+
Style/SpaceInsideHashLiteralBraces:
|
19
|
+
EnforcedStyle: no_space
|
20
|
+
Style/BlockDelimiters:
|
21
|
+
EnforcedStyle: semantic
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.0.0-p647
|
data/.travis.yml
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
language: ruby
|
2
|
+
branches:
|
3
|
+
only:
|
4
|
+
- master
|
5
|
+
- /^v[0-9]+\.[0-9]+\.[0-9]+/
|
6
|
+
rvm:
|
7
|
+
- ruby-head
|
8
|
+
- jruby-1.7.19
|
9
|
+
- 2.0.0
|
10
|
+
script:
|
11
|
+
- bundle exec rake
|
12
|
+
deploy:
|
13
|
+
provider: rubygems
|
14
|
+
api_key:
|
15
|
+
secure: clYHhpfYieW4ZMPlDwhdsxZAaca6Ltg8fSDtmQcNly40+fOhAhBnR+VFX6VODX3jx0Jv0MlIZRqWn4V9LVERaEMvKwSL2qNnk2sdMe9Kbh+lXD4auCjgHhFKXN6dzUfXmJYKzjuUaMtK4m7aBLKnm2JLm3omUa4c0Yrnj3qS/to=
|
16
|
+
on:
|
17
|
+
tags: true
|
18
|
+
all_branches: true
|
19
|
+
repo: tpbowden/simple_ca
|
20
|
+
rvm: 2.0.0
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,59 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
simple_ca (0.0.1)
|
5
|
+
|
6
|
+
GEM
|
7
|
+
remote: https://rubygems.org/
|
8
|
+
specs:
|
9
|
+
ast (2.1.0)
|
10
|
+
astrolabe (1.3.1)
|
11
|
+
parser (~> 2.2)
|
12
|
+
diff-lcs (1.2.5)
|
13
|
+
docile (1.1.5)
|
14
|
+
json (1.8.3)
|
15
|
+
parser (2.2.3.0)
|
16
|
+
ast (>= 1.1, < 3.0)
|
17
|
+
powerpack (0.1.1)
|
18
|
+
rainbow (2.0.0)
|
19
|
+
rake (10.4.2)
|
20
|
+
rspec (3.4.0)
|
21
|
+
rspec-core (~> 3.4.0)
|
22
|
+
rspec-expectations (~> 3.4.0)
|
23
|
+
rspec-mocks (~> 3.4.0)
|
24
|
+
rspec-core (3.4.1)
|
25
|
+
rspec-support (~> 3.4.0)
|
26
|
+
rspec-expectations (3.4.0)
|
27
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
28
|
+
rspec-support (~> 3.4.0)
|
29
|
+
rspec-mocks (3.4.0)
|
30
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
31
|
+
rspec-support (~> 3.4.0)
|
32
|
+
rspec-support (3.4.1)
|
33
|
+
rubocop (0.35.1)
|
34
|
+
astrolabe (~> 1.3)
|
35
|
+
parser (>= 2.2.3.0, < 3.0)
|
36
|
+
powerpack (~> 0.1)
|
37
|
+
rainbow (>= 1.99.1, < 3.0)
|
38
|
+
ruby-progressbar (~> 1.7)
|
39
|
+
tins (<= 1.6.0)
|
40
|
+
ruby-progressbar (1.7.5)
|
41
|
+
simplecov (0.11.1)
|
42
|
+
docile (~> 1.1.0)
|
43
|
+
json (~> 1.8)
|
44
|
+
simplecov-html (~> 0.10.0)
|
45
|
+
simplecov-html (0.10.0)
|
46
|
+
tins (1.6.0)
|
47
|
+
|
48
|
+
PLATFORMS
|
49
|
+
ruby
|
50
|
+
|
51
|
+
DEPENDENCIES
|
52
|
+
rake (>= 10.4)
|
53
|
+
rspec (>= 3.4)
|
54
|
+
rubocop (>= 0.35)
|
55
|
+
simple_ca!
|
56
|
+
simplecov (>= 0.11)
|
57
|
+
|
58
|
+
BUNDLED WITH
|
59
|
+
1.11.1
|
data/README.md
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
# SimpleCA
|
2
|
+
Generate and sign SSL Certificate with your very own CA
|
3
|
+
|
4
|
+
Installation
|
5
|
+
------------
|
6
|
+
|
7
|
+
gem install simple_ca
|
8
|
+
|
9
|
+
or if you're using Bundler
|
10
|
+
|
11
|
+
gem "simple_ca"
|
12
|
+
|
13
|
+
Usage
|
14
|
+
=====
|
15
|
+
|
16
|
+
First of all you need a root certificate (OpenSSL::X509::Certificate) and a private key (OpenSSL::PKey::RSA)
|
17
|
+
|
18
|
+
require "simple_ca"
|
19
|
+
|
20
|
+
ca = SimpleCA::CA.new(root_certificate, private_key)
|
21
|
+
|
22
|
+
To sign a CSR (OpenSSL::X509::Request):
|
23
|
+
|
24
|
+
ca.sign_csr(csr) # => OpenSSL::X509::Certificate
|
25
|
+
|
26
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
Dir[File.expand_path("../tasks/**/*.rake", __FILE__)].each {|f| load f }
|
data/lib/simple_ca.rb
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "simple_ca/ca"
|
data/lib/simple_ca/ca.rb
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
module SimpleCA
|
2
|
+
class SignCSR
|
3
|
+
THREE_YEARS = 365.25 * 24 * 60 * 60
|
4
|
+
|
5
|
+
def initialize root, key
|
6
|
+
@root = root
|
7
|
+
@key = key
|
8
|
+
end
|
9
|
+
|
10
|
+
def call csr
|
11
|
+
sign_cert(OpenSSL::X509::Certificate.new, csr)
|
12
|
+
end
|
13
|
+
|
14
|
+
private
|
15
|
+
|
16
|
+
def sign_cert crt, request
|
17
|
+
crt.serial = 0
|
18
|
+
crt.version = 2
|
19
|
+
crt.not_before = Time.now
|
20
|
+
crt.not_after = Time.now + THREE_YEARS
|
21
|
+
crt.subject = request.subject
|
22
|
+
crt.public_key = request.public_key
|
23
|
+
crt.issuer = @root.subject
|
24
|
+
crt.sign @key, OpenSSL::Digest::SHA256.new
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
data/simple_ca.gemspec
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
$LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
|
2
|
+
require "simple_ca/version"
|
3
|
+
|
4
|
+
Gem::Specification.new do |s|
|
5
|
+
s.name = "simple_ca"
|
6
|
+
s.version = SimpleCA::VERSION
|
7
|
+
s.date = "2015-12-12"
|
8
|
+
s.summary = "Simplified certiticate signing"
|
9
|
+
s.description = "Sign and generate SSL certificates with ease"
|
10
|
+
s.authors = ["Tom Bowden"]
|
11
|
+
s.files = `git ls-files`.split($RS)
|
12
|
+
s.email = "tom.b1992@gmail.com"
|
13
|
+
s.homepage = "http://github.com/tpbowden/simple_ca"
|
14
|
+
s.license = "MIT"
|
15
|
+
s.required_ruby_version = ">= 2.0.0"
|
16
|
+
|
17
|
+
s.add_development_dependency "rake", ">= 10.4"
|
18
|
+
s.add_development_dependency "rubocop", ">= 0.35"
|
19
|
+
s.add_development_dependency "rspec", ">= 3.4"
|
20
|
+
s.add_development_dependency "simplecov", ">= 0.11"
|
21
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
require "simple_ca/ca"
|
3
|
+
|
4
|
+
describe SimpleCA::CA do
|
5
|
+
describe "#sign_csr" do
|
6
|
+
let(:cert) { double :certificate }
|
7
|
+
let(:root) { double :root }
|
8
|
+
let(:key) { double :key }
|
9
|
+
let(:signer) { double :signer }
|
10
|
+
let(:csr) { double :csr }
|
11
|
+
|
12
|
+
subject { described_class.new(root, key) }
|
13
|
+
|
14
|
+
before do
|
15
|
+
allow(SimpleCA::SignCSR).to receive(:new).with(root, key) { signer }
|
16
|
+
allow(signer).to receive(:call).with(csr) { cert }
|
17
|
+
end
|
18
|
+
|
19
|
+
it "generates a certificate from the CSR" do
|
20
|
+
expect(subject.sign_csr csr).to eq cert
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
require "simple_ca/sign_csr"
|
3
|
+
|
4
|
+
describe SimpleCA::SignCSR do
|
5
|
+
describe "#call" do
|
6
|
+
let(:key) { OpenSSL::PKey::RSA.new(File.read "spec/support/fixtures/root.key") }
|
7
|
+
let(:root) { OpenSSL::X509::Certificate.new(File.read "spec/support/fixtures/root.crt") }
|
8
|
+
subject { described_class.new(root, key) }
|
9
|
+
|
10
|
+
context "when the CSR is valid" do
|
11
|
+
let(:csr) { OpenSSL::X509::Request.new(File.read "spec/support/fixtures/test.csr") }
|
12
|
+
|
13
|
+
it "returns a certificate signed by the key" do
|
14
|
+
expect(subject.call csr).to be_a_certificate_signed_by(key)
|
15
|
+
end
|
16
|
+
|
17
|
+
it "sets the issuer to the root certificate" do
|
18
|
+
expect(subject.call(csr).issuer).to eq root.subject
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
2
|
+
MIID4DCCAsigAwIBAgIJALq0rtPQ6ut+MA0GCSqGSIb3DQEBBQUAMFMxCzAJBgNV
|
3
|
+
BAYTAkFCMRIwEAYDVQQIEwlTb21ld2hlcmUxDTALBgNVBAcTBENJcnQxITAfBgNV
|
4
|
+
BAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0xNTEyMDYxOTI1MDVaFw0x
|
5
|
+
NjEyMDUxOTI1MDVaMFMxCzAJBgNVBAYTAkFCMRIwEAYDVQQIEwlTb21ld2hlcmUx
|
6
|
+
DTALBgNVBAcTBENJcnQxITAfBgNVBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0
|
7
|
+
ZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALvJ46a/qKq+nlyCmjYU
|
8
|
+
E0R0ZNOMQfRGDSMbbXY0U1MiNo2oEIcCdVHUnt5rJNiTysFvE63DKr+b8OTmZo7N
|
9
|
+
RbzGG39P/CbTdRyf3DwG8vTwvTwKUQ/5OLWQ+ELOXwFqb3zYdy/FkSyyYMb11irh
|
10
|
+
24vs1Qml/pEurOKW9/5IZY0UjMeCclyMF3ZJqTqoEYWBzP1v12cGHNUuub8kVgmG
|
11
|
+
gpgITtwdO9Wgulgw1p37lUJWYB1LfkPH9M3AsAZBFCl4FhDJHdpE0pyj4o4PXFXo
|
12
|
+
dSSA1xW2YQ5/4HqwdTPM+vRH9vMrmIt1ty8F+QlTcEbxlyv8e/f6M+vANC99D/g2
|
13
|
+
JhUCAwEAAaOBtjCBszAdBgNVHQ4EFgQUs6LYjWb7gyd17sI/lICZpmgRoiEwgYMG
|
14
|
+
A1UdIwR8MHqAFLOi2I1m+4Mnde7CP5SAmaZoEaIhoVekVTBTMQswCQYDVQQGEwJB
|
15
|
+
QjESMBAGA1UECBMJU29tZXdoZXJlMQ0wCwYDVQQHEwRDSXJ0MSEwHwYDVQQKExhJ
|
16
|
+
bnRlcm5ldCBXaWRnaXRzIFB0eSBMdGSCCQC6tK7T0OrrfjAMBgNVHRMEBTADAQH/
|
17
|
+
MA0GCSqGSIb3DQEBBQUAA4IBAQA2BhzhzqvwEld6WQQ51fnduuuAglcUx5xpuyiW
|
18
|
+
g7kXmOqYX/65bTKYNYDHZ/3IuzfvBhoSbWsWS9hfI5xqwytRdazJRldGwwr5gc25
|
19
|
+
lYvwklVh757oFdBlak7k77gstYqHjMCfwV/vH/UoVDN+sXL9dR2+4/o082eHdek4
|
20
|
+
VIbjwPsm6OT/vArjjyP6/Of8PgO4OHxNHHnwxf9dmcU8ASrQWYYi4LdrItWB8uHi
|
21
|
+
JuC9Kt18TSmTjmFMzkK/bC10jtfhl931oBR2qv93Qm5jEZG1mFLOCUZPUqQgxAUB
|
22
|
+
oYdVZli9THIhGqYjsZ2gU8peNc/HnYd2RRY+UfbJIaG/F7l7
|
23
|
+
-----END CERTIFICATE-----
|
@@ -0,0 +1,27 @@
|
|
1
|
+
-----BEGIN RSA PRIVATE KEY-----
|
2
|
+
MIIEpAIBAAKCAQEAu8njpr+oqr6eXIKaNhQTRHRk04xB9EYNIxttdjRTUyI2jagQ
|
3
|
+
hwJ1UdSe3msk2JPKwW8TrcMqv5vw5OZmjs1FvMYbf0/8JtN1HJ/cPAby9PC9PApR
|
4
|
+
D/k4tZD4Qs5fAWpvfNh3L8WRLLJgxvXWKuHbi+zVCaX+kS6s4pb3/khljRSMx4Jy
|
5
|
+
XIwXdkmpOqgRhYHM/W/XZwYc1S65vyRWCYaCmAhO3B071aC6WDDWnfuVQlZgHUt+
|
6
|
+
Q8f0zcCwBkEUKXgWEMkd2kTSnKPijg9cVeh1JIDXFbZhDn/gerB1M8z69Ef28yuY
|
7
|
+
i3W3LwX5CVNwRvGXK/x79/oz68A0L30P+DYmFQIDAQABAoIBAH0+N/uVZeuCuGGg
|
8
|
+
pTMeDn+gVUKWD8LYGZjpiQbF/TC758Bwb51rsU1DTjWvJeLgJuD9sRU5zj/+xBoV
|
9
|
+
5B6nnzQ4uEwfz18htsDBiYPraoycJsltZAUQRZcqubjspIZwMy0DvfH5hUpXKZ5o
|
10
|
+
hU8SVXesG6WUtQSlKZ7x6zIHnNsKzVGXofGAbrSm3UqoayVWx3RGFrtjJN7/4+c8
|
11
|
+
K9Yv0Eu9xMLRIb+Jt+YcSynk3boRmzHQkzlpF6jyygAdUDYKg+XyWJmdDd47eo/f
|
12
|
+
ce6Bp1VtQyibtXgBFqhDPK98esXh4+JuNSVoHChc1XlAftNcIbjLwVBEdpZbBf9c
|
13
|
+
COSooyECgYEA7GtVjyVe5mZJ/QqxUEmx3wipeEM3ZYVJWYhbMlUt+DWzAwA6Ahl0
|
14
|
+
wmYSNa8IxTN6WA8DH39tE3OJqWv42wV3oqBcylhkalMEWjsqcZzaG1bmFCbXpUHF
|
15
|
+
Kg7hNmt89ftngIQ28QH5h24FwfoxVbpiJfMc2zwnEz2ZjWKbdAhAolkCgYEAy1d3
|
16
|
+
d2aOictXMV7fpoKL8ZHOsDzhtWJjP1ahG2Wzg2NAmdQiOB7XK2ZZWra1zy4NLmGI
|
17
|
+
xcpPQ/6OssLu4r/AIXCJ8oFbe1glc78TyPtA3J3ufQ+R62+K4xD8qPtRyuSSpiRZ
|
18
|
+
h9X4FhkMRQKBga8yyQ2MEQu54RxAaID/tlMVkh0CgYEApGEQsSG7tRiD8yN/G6LR
|
19
|
+
wJBmPI8HsleVI2JSflGJT94OZFTBAHqwmwWbPaZAw9RCCX4OntTbgz2/BoRjF+3a
|
20
|
+
O8GiIrKIxwCHszEWFr6HS6EFAhfrsiRjsRV9c3gS/3jYgxvqk3HbDFXsPO33ZXLd
|
21
|
+
ESPS+X/+bztSS2K3UVr3jakCgYEAgaijP9qAVzL2xT9mwukJTR8ZOV2I2r0C5fda
|
22
|
+
QXsHDWdzYONYcoqPz1ey8FoC8jm+I+4DZYOMKaIe4bPU2XdFjs0Q2TZM3Ain0Pdt
|
23
|
+
KUG06Tg3Qz1zYTm9yO4i/alLTWGUdSZGhIwWZhjQrwxbAhNyAauGvbPJcdYu57Qh
|
24
|
+
2eN+pK0CgYB+G2nNGlns8/1dMyOzZSPBikfNq6Ay7lPwn/Pz+8KBh8S0BTUCEVPm
|
25
|
+
qU1twbuYbEvHCFyAffi4Q1euzuse0wwSK8b8/GUzPgg/AWx/QZsQFprYB0cusLRv
|
26
|
+
S9ZfkPDJkk0cNwP3hx0FKb9+ONCXX5j65ckD9u3pW9tUuxeF+hlR4A==
|
27
|
+
-----END RSA PRIVATE KEY-----
|
File without changes
|
@@ -0,0 +1,17 @@
|
|
1
|
+
-----BEGIN CERTIFICATE REQUEST-----
|
2
|
+
MIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxDTALBgNVBAgMBFV0YWgxDzANBgNV
|
3
|
+
BAcMBkxpbmRvbjEWMBQGA1UECgwNRGlnaUNlcnQgSW5jLjERMA8GA1UECwwIRGln
|
4
|
+
aUNlcnQxHTAbBgNVBAMMFGV4YW1wbGUuZGlnaWNlcnQuY29tMIIBIjANBgkqhkiG
|
5
|
+
9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8+To7d+2kPWeBv/orU3LVbJwDrSQbeKamCmo
|
6
|
+
wp5bqDxIwV20zqRb7APUOKYoVEFFOEQs6T6gImnIolhbiH6m4zgZ/CPvWBOkZc+c
|
7
|
+
1Po2EmvBz+AD5sBdT5kzGQA6NbWyZGldxRthNLOs1efOhdnWFuhI162qmcflgpiI
|
8
|
+
WDuwq4C9f+YkeJhNn9dF5+owm8cOQmDrV8NNdiTqin8q3qYAHHJRW28glJUCZkTZ
|
9
|
+
wIaSR6crBQ8TbYNE0dc+Caa3DOIkz1EOsHWzTx+n0zKfqcbgXi4DJx+C1bjptYPR
|
10
|
+
BPZL8DAeWuA8ebudVT44yEp82G96/Ggcf7F33xMxe0yc+Xa6owIDAQABoAAwDQYJ
|
11
|
+
KoZIhvcNAQEFBQADggEBAB0kcrFccSmFDmxox0Ne01UIqSsDqHgL+XmHTXJwre6D
|
12
|
+
hJSZwbvEtOK0G3+dr4Fs11WuUNt5qcLsx5a8uk4G6AKHMzuhLsJ7XZjgmQXGECpY
|
13
|
+
Q4mC3yT3ZoCGpIXbw+iP3lmEEXgaQL0Tx5LFl/okKbKYwIqNiyKWOMj7ZR/wxWg/
|
14
|
+
ZDGRs55xuoeLDJ/ZRFf9bI+IaCUd1YrfYcHIl3G87Av+r49YVwqRDT0VDV7uLgqn
|
15
|
+
29XI1PpVUNCPQGn9p/eX6Qo7vpDaPybRtA2R7XLKjQaF9oXWeCUqy1hvJac9QFO2
|
16
|
+
97Ob1alpHPoZ7mWiEuJwjBPii6a9M9G30nUo39lBi1w=
|
17
|
+
-----END CERTIFICATE REQUEST-----
|
data/tasks/default.rake
ADDED
data/tasks/rspec.rake
ADDED
data/tasks/rubocop.rake
ADDED
metadata
ADDED
@@ -0,0 +1,124 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: simple_ca
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Tom Bowden
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-12-12 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rake
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '10.4'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '10.4'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rubocop
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0.35'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0.35'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '3.4'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '3.4'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: simplecov
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0.11'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0.11'
|
69
|
+
description: Sign and generate SSL certificates with ease
|
70
|
+
email: tom.b1992@gmail.com
|
71
|
+
executables: []
|
72
|
+
extensions: []
|
73
|
+
extra_rdoc_files: []
|
74
|
+
files:
|
75
|
+
- .gitignore
|
76
|
+
- .rspec
|
77
|
+
- .rubocop.yml
|
78
|
+
- .ruby-version
|
79
|
+
- .travis.yml
|
80
|
+
- Gemfile
|
81
|
+
- Gemfile.lock
|
82
|
+
- README.md
|
83
|
+
- Rakefile
|
84
|
+
- lib/simple_ca.rb
|
85
|
+
- lib/simple_ca/ca.rb
|
86
|
+
- lib/simple_ca/sign_csr.rb
|
87
|
+
- lib/simple_ca/version.rb
|
88
|
+
- simple_ca.gemspec
|
89
|
+
- spec/simple_ca/ca_spec.rb
|
90
|
+
- spec/simple_ca/sign_csr_spec.rb
|
91
|
+
- spec/spec_helper.rb
|
92
|
+
- spec/support/certificate_matchers.rb
|
93
|
+
- spec/support/fixtures/root.crt
|
94
|
+
- spec/support/fixtures/root.key
|
95
|
+
- spec/support/fixtures/test.crt
|
96
|
+
- spec/support/fixtures/test.csr
|
97
|
+
- tasks/default.rake
|
98
|
+
- tasks/rspec.rake
|
99
|
+
- tasks/rubocop.rake
|
100
|
+
homepage: http://github.com/tpbowden/simple_ca
|
101
|
+
licenses:
|
102
|
+
- MIT
|
103
|
+
metadata: {}
|
104
|
+
post_install_message:
|
105
|
+
rdoc_options: []
|
106
|
+
require_paths:
|
107
|
+
- lib
|
108
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
110
|
+
- - '>='
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: 2.0.0
|
113
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
requirements: []
|
119
|
+
rubyforge_project:
|
120
|
+
rubygems_version: 2.5.1
|
121
|
+
signing_key:
|
122
|
+
specification_version: 4
|
123
|
+
summary: Simplified certiticate signing
|
124
|
+
test_files: []
|