grenache-ruby-http 0.2.4 → 0.2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 15a1cf8dee8aa1f8916d109f769bd1e41af5995e
4
- data.tar.gz: b0d81fe6ed1d46a42ae162aa63dfa48b57e117fc
3
+ metadata.gz: 985cc37eaad45ea6c7b4b12edeea4b7d299b64b5
4
+ data.tar.gz: 41f9a1189694c9499326c7ddd9bce5f0d4168176
5
5
  SHA512:
6
- metadata.gz: baf12653020538a93f54d3a905b537f1ad9696df04f260846d8b6feac55b71aba0feaabd16d1099801bad7a2bb6f31c0ae6f2990812905c833fe057fecac0ca1
7
- data.tar.gz: ba8c325edac6783ca4cace5b74fc4b6460eb468f4a7391abd5a69cb7c0cff0a5362f14e7734d365bb5d319f2ff53774355cc8ab174888fb2896956fbd6ba16cc
6
+ metadata.gz: b424721eb0cb1467bb5586cdcaf73ac6ab64c7a6c77f53813d83603946892940d53bc7a85f5bc102aba7908b04a81541d7c38bd39cc5c6d44cd37bcf090637ec
7
+ data.tar.gz: 00ada15ed90502d9f43c0557ddffb1f91fe3e8034558ac2c5780c774a1cac1701e02458ec7327e9d9edd43f38dd835e4954fab8d062c7e288d9a7881a2635690
data/Gemfile CHANGED
@@ -1,3 +1,4 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
+
@@ -4,6 +4,7 @@ Grenache::Http.configure do |conf|
4
4
  conf.grape_address = "http://127.0.0.1:40002/"
5
5
  conf.key = File.expand_path('.') + "/ssl/server-key.pem"
6
6
  conf.cert_pem = File.expand_path('.') + "/ssl/server-chain.pem"
7
+ conf.ca = File.expand_path('.') + "/ssl/ca-crt.pem"
7
8
  conf.service_host = "localhost"
8
9
  end
9
10
 
@@ -16,7 +17,7 @@ EM.run do
16
17
 
17
18
  c.listen('rpc_test', 5004) do |msg, fingerprint|
18
19
  #[StandardError.new("Error!"),"hello #{msg.payload}"]
19
- puts fingerprint
20
+ puts "certificate fingerprint #{fingerprint}"
20
21
  [nil,"hello #{msg.payload}"]
21
22
  end
22
23
 
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
 
19
19
  spec.add_runtime_dependency "eventmachine", "~> 1.2"
20
20
  spec.add_runtime_dependency "faye-websocket", "~> 0.10"
21
- spec.add_runtime_dependency "grenache-ruby-base", "~> 0.2.3"
21
+ spec.add_runtime_dependency "grenache-ruby-base", "~> 0.2.7"
22
22
  spec.add_runtime_dependency "httparty", "~> 0.14.0"
23
23
  spec.add_runtime_dependency "oj", "~> 2.18"
24
24
  spec.add_runtime_dependency "thin", "~> 1.7"
@@ -0,0 +1,37 @@
1
+ module Granache
2
+ class Http < Grenache::Base
3
+ class Configuration < Grenache::Configuration
4
+
5
+ # thin server
6
+ attr_accessor :thin_threaded, :thin_threadpool_size
7
+
8
+ def initialize
9
+ set_bool :thin_threaded, params, false
10
+ set_val :thin_threadpool_size, params, 0
11
+ super
12
+ end
13
+ end
14
+ end
15
+
16
+ module HttpConfigurable
17
+ def self.included(base)
18
+ base.extend(ClassMethods)
19
+ end
20
+
21
+ def config
22
+ self.class.config
23
+ end
24
+
25
+ module ClassMethods
26
+ def configure
27
+ yield config
28
+ end
29
+
30
+ def config
31
+ @configuration ||= Grenache::Http::Configuration.new
32
+ end
33
+ end
34
+ end
35
+
36
+ include HttpConfigurable
37
+ end
@@ -0,0 +1,22 @@
1
+ module Thin
2
+ class Connection < EventMachine::Connection
3
+ def ssl_verify_peer cert
4
+ client = OpenSSL::X509::Certificate.new cert
5
+ store.verify client
6
+ end
7
+
8
+
9
+ private
10
+ def store
11
+ @store ||= OpenSSL::X509::Store.new.tap do |store|
12
+ root = OpenSSL::X509::Certificate.new ca_cert
13
+ store.add_cert root
14
+ end
15
+ end
16
+
17
+ def ca_cert
18
+ @ca_cert ||= File.read Grenache::Http.config.ca
19
+ end
20
+ end
21
+ end
22
+
@@ -1,5 +1,5 @@
1
1
  module Grenache
2
2
  module HTTP
3
- VERSION = "0.2.4"
3
+ VERSION = "0.2.7"
4
4
  end
5
5
  end
data/lib/grenache/http.rb CHANGED
@@ -19,6 +19,12 @@ module Grenache
19
19
  [200,nil, ServiceMessage.new(payload, err, req.rid).to_json]
20
20
  }
21
21
  server = Thin::Server.new config.service_host, port, {signals: false}, app
22
+
23
+ if config.thin_threaded
24
+ server.threaded = true
25
+ server.threadpool_size = config.thin_threadpool_size
26
+ end
27
+
22
28
  if tls?
23
29
  server.ssl = true
24
30
  server.ssl_options = {
@@ -7,3 +7,5 @@ require 'thin'
7
7
  require 'grenache/http'
8
8
  require 'grenache/http/version'
9
9
  require 'grenache/http/http_client'
10
+ require 'grenache/http/http_server'
11
+ require 'grenache/http/configurable'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grenache-ruby-http
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bitfinex <info@bitfinex.com>
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-12 00:00:00.000000000 Z
11
+ date: 2017-06-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: eventmachine
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.2.3
47
+ version: 0.2.7
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.2.3
54
+ version: 0.2.7
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: httparty
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -124,20 +124,14 @@ files:
124
124
  - examples/ssl/server-csr.pem
125
125
  - examples/ssl/server-key.pem
126
126
  - examples/ssl/server.cnf
127
- - examples/ssl_R/cacert.pem
128
- - examples/ssl_R/clientkey.pem
129
- - examples/ssl_R/clientreq.pem
130
- - examples/ssl_R/openssl.cnf
131
- - examples/ssl_R/private/cakey.pem
132
- - examples/ssl_R/serial
133
- - examples/ssl_R/serverkey.pem
134
- - examples/ssl_R/serverreq.pem
135
127
  - examples/worker.rb
136
128
  - examples/worker_ssl.rb
137
129
  - grenache-ruby-http.gemspec
138
130
  - lib/grenache-ruby-http.rb
139
131
  - lib/grenache/http.rb
132
+ - lib/grenache/http/configurable.rb
140
133
  - lib/grenache/http/http_client.rb
134
+ - lib/grenache/http/http_server.rb
141
135
  - lib/grenache/http/version.rb
142
136
  homepage: https://github.com/bitfinexcom/grenache-ruby-http
143
137
  licenses:
@@ -1,22 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDljCCAn6gAwIBAgIJAKt0CAfWcrP1MA0GCSqGSIb3DQEBCwUAMGAxCzAJBgNV
3
- BAYTAlVLMQ8wDQYDVQQIDAZMb25kb24xGTAXBgNVBAoMEEJpdGZpbmV4IExpbWl0
4
- ZWQxETAPBgNVBAsMCFNlY3VyaXR5MRIwEAYDVQQDDAkxMjcuMC4wLjEwHhcNMTcw
5
- NjA3MjEzNzUxWhcNMTgwNjA3MjEzNzUxWjBgMQswCQYDVQQGEwJVSzEPMA0GA1UE
6
- CAwGTG9uZG9uMRkwFwYDVQQKDBBCaXRmaW5leCBMaW1pdGVkMREwDwYDVQQLDAhT
7
- ZWN1cml0eTESMBAGA1UEAwwJMTI3LjAuMC4xMIIBIjANBgkqhkiG9w0BAQEFAAOC
8
- AQ8AMIIBCgKCAQEAxmu3r6ZNyE5UHrvaZ5fMgkQa28xrZINyKq2hk+0YV3dWzaA2
9
- gDSUxI7LzwrWygfGOkankQhpRhnRBTxIYJV2xtmHOqz0A40vIRc0xhKcl7WnsfOP
10
- X0gnjsAQL9CJBJ0zw4zubtV7+qmZG/mNaIKmGzJioR393Yqq9objAfy9E5bZV00e
11
- fErJnpvAkyTFMouwDfTcwkVP8dDSJ0pgqQt5vC6+r+0GXpwgVirka6Dw0S+j/kF3
12
- oP4kRDTUQ8lvxihcqvzZd3Z3dnlHiYAWjWcyifCvzWc9iQb/L1D+vz7vW3W5EPlL
13
- ZzB7b+m7iNXSm1/C3R2AFNKVZFkESWyESZ0+2QIDAQABo1MwUTAdBgNVHQ4EFgQU
14
- TJaXwKzssSOTNyZGwPz1t9yafWowHwYDVR0jBBgwFoAUTJaXwKzssSOTNyZGwPz1
15
- t9yafWowDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAA9tUOBxN
16
- ZIl/KvezJgkYjcc1HUsj+E/XKph1kvuD/A8oxWZ165XikFyj3/S/Ja3zZigaX26+
17
- OcaT3xb0KTYoCKO6FRtFaVc8YFva0j5RebpchhZWkaKaxcG4b0g/cthMhSTUz56K
18
- hjXRBEZIw3QMbwwLTCHw/j2QI83z03jnLT+QmDq+r1yXH5fEYNXJ/CFLqBi0c5vY
19
- ai8BMD2mkfrBwn5L3ZmCgljpeQikeloXWSKL8ss9CMzk3CKlrDw5awIk9CrxbKY8
20
- jrJc3qCme0If7nhoKwSEI9HkkYQlFoUVPhONWmldQFBdgrE7YAhZVoGYGW6ov0MK
21
- X9fL4mCWwh4mIw==
22
- -----END CERTIFICATE-----
@@ -1,28 +0,0 @@
1
- -----BEGIN PRIVATE KEY-----
2
- MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDbP9kIJ4oEwGH0
3
- Dgy8chvLBl2o0WDYONOiJvQTT/W9xMZ52t0/+XL6P1y9S0BO46atk/k+6dRck3DU
4
- QZk9DMEtt+QZOHnHREqnJ7BLpwz6GBMcCTd7mrcjW8v+c7isS2EfHPtzDAGpN8hd
5
- Zltv1Yc0W1tR9FTgqA82P+LBQ0pM6e20KnHTHqB+q56baJErbHaDoO6bVeVS14pv
6
- qnfDX6TsXUBw6ewqpJVIf6tEvbGk8EGt9GW/vzxZGvDsLqOL8OtG3XLfqXH84HKq
7
- QfwmLtKYGv7fZ0hg+6dE/pdBLP+hz66TqwaVPmJdZHMdtPhaYnuKz9J1xA8WONjH
8
- 8R3jREN/AgMBAAECggEBALtKX2vH2u8UKJkDJ34TPArC9V8w/Tm30ZHDFN0qgRIK
9
- 9kFB5Z6wyLddSSurDNRXRBsjPNexh+dNTCUFpJGyQ5N6cy/YPq8qd1szXDZEDaHW
10
- zvw0I2FDWQ6rbCeBU1BbVCvv5hzxNLoJHPAscA+oqEbhg7EOtzLyXYxKJrpRcTch
11
- SJ6RcGzaap2s7G2wHrr0g0/zj1VJFKiNt/yucrMN6Omo2KNNmFEKZnIQtFGm5MDr
12
- kfoL/kI+Uxna5EqpFOYmape0XffqcrSAhzXUH5Vxfu3sq+n33h56dkSRdzY/3byN
13
- f2w+9zOSCmWB/P0oXvE+DQmjZFIAH/CaeviVrs66LYECgYEA+5WR/FgCsg/pwKPL
14
- uzozaveBbnaj53g09BNHW4X/IGahC2G6UA0mm9Rd/xe8FzFx4LeNFYeY6jOIDN/3
15
- aGxa+j6IOnqc7k1bPF2PUI0IzKCIoVSDRSYrxLUWXVXDH5BnwZXzndfN3OK++xNh
16
- sPD/UVvqlJR16ZPvKnXTlazqBqUCgYEA3xj9NcNYZ1XY3hCmgnwlXzntwKIh9bmz
17
- VuFek7WVEVP5zPcDcF6YbOwWYEtRZUxsOIzpJBwSB7OqwCwN0oCyCHQbnU32vHcr
18
- Yvk9SndXiQGKyNfqMc5YGB9YjUp+fT146wtVD7AnliA7hDB+BkCAqFsC4eN61zhq
19
- /Z3DgcD07FMCgYAQeOuVDSIoDHiun0rgmF/zef8kf2od5rX44SZD7NMWiQG0YBK1
20
- 2RaVD2OUJzaughNFtl7rcPRnKTaYOTXWxXlzdxKuWYba53+4xRt0F7fixgQMJB9w
21
- MJ6fA4hSViIvd+IDP9EynYWiF8qPX+Z+klj1N8J1Nf8+auw26H4RB8BO7QKBgQC2
22
- IrCWM+T4eB2VLgLChJf+Jkzz92nCMtk3FMch0BzjCKvnqcIk+xV110htVRAeo0W2
23
- 5VNxJ3mQ0B2WxmCCeo7eV+wzgHLvalsBcnmXUdclAx1K2vtXrh49k1m4ABlEJeuR
24
- +K55IFcxOR9dzDkW4ZIn4CV6RT0EeArhAuuaAu3yAQKBgQCj6VHPX4s5izR6D89J
25
- fhEJrEmxzighH0jvC1mDtYea/5SDI0nKb2KfPWyy69E1EOOgLvalG5+3H5UcBGx9
26
- Z0Y2D0BkKY1rdkTEC7HYLrreRis8HqtuQas92HQzVh6jDSdA0ZdMDARF6JrtEhA8
27
- ecYY8PuPaIPDzzeB6XHUUqTlAQ==
28
- -----END PRIVATE KEY-----
@@ -1,22 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDojCCAoqgAwIBAgIJAMI0yYskTydNMA0GCSqGSIb3DQEBCwUAMGYxCzAJBgNV
3
- BAYTAlVLMQ8wDQYDVQQIDAZMb25kb24xGTAXBgNVBAoMEEJpdGZpbmV4IExpbWl0
4
- ZWQxFzAVBgNVBAsMDkluZnJhc3RydWN0dXJlMRIwEAYDVQQDDAkxMjcuMC4wLjEw
5
- HhcNMTcwNjA3MjEzOTM1WhcNMTgwNjA3MjEzOTM1WjBmMQswCQYDVQQGEwJVSzEP
6
- MA0GA1UECAwGTG9uZG9uMRkwFwYDVQQKDBBCaXRmaW5leCBMaW1pdGVkMRcwFQYD
7
- VQQLDA5JbmZyYXN0cnVjdHVyZTESMBAGA1UEAwwJMTI3LjAuMC4xMIIBIjANBgkq
8
- hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2z/ZCCeKBMBh9A4MvHIbywZdqNFg2DjT
9
- oib0E0/1vcTGedrdP/ly+j9cvUtATuOmrZP5PunUXJNw1EGZPQzBLbfkGTh5x0RK
10
- pyewS6cM+hgTHAk3e5q3I1vL/nO4rEthHxz7cwwBqTfIXWZbb9WHNFtbUfRU4KgP
11
- Nj/iwUNKTOnttCpx0x6gfquem2iRK2x2g6Dum1XlUteKb6p3w1+k7F1AcOnsKqSV
12
- SH+rRL2xpPBBrfRlv788WRrw7C6ji/DrRt1y36lx/OByqkH8Ji7SmBr+32dIYPun
13
- RP6XQSz/oc+uk6sGlT5iXWRzHbT4WmJ7is/SdcQPFjjYx/Ed40RDfwIDAQABo1Mw
14
- UTAdBgNVHQ4EFgQUDTUx+d9DTDhBPmbmrDsbnZDamLUwHwYDVR0jBBgwFoAUDTUx
15
- +d9DTDhBPmbmrDsbnZDamLUwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsF
16
- AAOCAQEA1YFKHna73k6otketEGbOfP0dAN8SF9qJ1tEoRUFgbRd/a6b9Pgz9cVwZ
17
- 7MfFnz77+HHomUTVLt7Euxly3Me8Y8dkftPRffoURykrH6GABkE2Q38bqBfKcFT2
18
- 25Pu8C18un43hIRC2ti50/zdsoaXY/XxwcWMBvRt3zOE7JxV6iPXX9K2cLdfyMxR
19
- sYI5rCA3bEqQrv2kjEt42Slp861TrddgYvaM00iUrWW4QewBJI3ahPsfbzJgxdyl
20
- 2DKbcoqFLtEi8VAv47xam3jMoVcpmvMsn7deQs8vKT58tfsKFE7DXUCm2BzBPy5Y
21
- iGksJFFkmiBcJ+zHOuilqXlOpqTecg==
22
- -----END CERTIFICATE-----
@@ -1,346 +0,0 @@
1
- #
2
- # OpenSSL example configuration file.
3
- # This is mostly being used for generation of certificate requests.
4
- #
5
-
6
- # This definition stops the following lines choking if HOME isn't
7
- # defined.
8
- HOME = .
9
- RANDFILE = $ENV::HOME/.rnd
10
-
11
- # Extra OBJECT IDENTIFIER info:
12
- #oid_file = $ENV::HOME/.oid
13
- oid_section = new_oids
14
-
15
- # To use this configuration file with the "-extfile" option of the
16
- # "openssl x509" utility, name here the section containing the
17
- # X.509v3 extensions to use:
18
- # extensions =
19
- # (Alternatively, use a configuration file that has only
20
- # X.509v3 extensions in its main [= default] section.)
21
-
22
- [ new_oids ]
23
-
24
- # We can add new OIDs in here for use by 'ca', 'req' and 'ts'.
25
- # Add a simple OID like this:
26
- # testoid1=1.2.3.4
27
- # Or use config file substitution like this:
28
- # testoid2=${testoid1}.5.6
29
-
30
- # Policies used by the TSA examples.
31
- tsa_policy1 = 1.2.3.4.1
32
- tsa_policy2 = 1.2.3.4.5.6
33
- tsa_policy3 = 1.2.3.4.5.7
34
-
35
- ####################################################################
36
- [ ca ]
37
- default_ca = CA_default # The default ca section
38
-
39
- ####################################################################
40
- [ CA_default ]
41
-
42
- dir = . # Where everything is kept
43
- certs = $dir/certs # Where the issued certs are kept
44
- crl_dir = $dir/crl # Where the issued crl are kept
45
- database = $dir/index.txt # database index file.
46
- #unique_subject = no # Set to 'no' to allow creation of
47
- # several certs with same subject.
48
- new_certs_dir = $dir/newcerts # default place for new certs.
49
-
50
- certificate = $dir/cacert.pem # The CA certificate
51
- serial = $dir/serial # The current serial number
52
- crlnumber = $dir/crlnumber # the current crl number
53
- # must be commented out to leave a V1 CRL
54
- crl = $dir/crl.pem # The current CRL
55
- private_key = $dir/private/cakey.pem# The private key
56
- RANDFILE = $dir/private/.rand # private random number file
57
-
58
- x509_extensions = usr_cert # The extensions to add to the cert
59
-
60
- # Comment out the following two lines for the "traditional"
61
- # (and highly broken) format.
62
- name_opt = ca_default # Subject Name options
63
- cert_opt = ca_default # Certificate field options
64
-
65
- # Extension copying option: use with caution.
66
- # copy_extensions = copy
67
-
68
- # Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs
69
- # so this is commented out by default to leave a V1 CRL.
70
- # crlnumber must also be commented out to leave a V1 CRL.
71
- # crl_extensions = crl_ext
72
-
73
- default_days = 365 # how long to certify for
74
- default_crl_days= 30 # how long before next CRL
75
- default_md = default # use public key default MD
76
- preserve = no # keep passed DN ordering
77
-
78
- # A few difference way of specifying how similar the request should look
79
- # For type CA, the listed attributes must be the same, and the optional
80
- # and supplied fields are just that :-)
81
- policy = policy_match
82
-
83
- # For the CA policy
84
- [ policy_match ]
85
- countryName = match
86
- stateOrProvinceName = match
87
- organizationName = match
88
- organizationalUnitName = optional
89
- commonName = supplied
90
- emailAddress = optional
91
-
92
- # For the 'anything' policy
93
- # At this point in time, you must list all acceptable 'object'
94
- # types.
95
- [ policy_anything ]
96
- countryName = optional
97
- stateOrProvinceName = optional
98
- localityName = optional
99
- organizationName = optional
100
- organizationalUnitName = optional
101
- commonName = supplied
102
- emailAddress = optional
103
-
104
- ####################################################################
105
- [ req ]
106
- default_bits = 2048
107
- default_keyfile = privkey.pem
108
- distinguished_name = req_distinguished_name
109
- attributes = req_attributes
110
- x509_extensions = v3_ca # The extensions to add to the self signed cert
111
-
112
- # Passwords for private keys if not present they will be prompted for
113
- # input_password = secret
114
- # output_password = secret
115
-
116
- # This sets a mask for permitted string types. There are several options.
117
- # default: PrintableString, T61String, BMPString.
118
- # pkix : PrintableString, BMPString (PKIX recommendation before 2004)
119
- # utf8only: only UTF8Strings (PKIX recommendation after 2004).
120
- # nombstr : PrintableString, T61String (no BMPStrings or UTF8Strings).
121
- # MASK:XXXX a literal mask value.
122
- # WARNING: ancient versions of Netscape crash on BMPStrings or UTF8Strings.
123
- string_mask = utf8only
124
-
125
- # req_extensions = v3_req # The extensions to add to a certificate request
126
-
127
- [ req_distinguished_name ]
128
- countryName = Country Name (2 letter code)
129
- countryName_default = AU
130
- countryName_min = 2
131
- countryName_max = 2
132
-
133
- stateOrProvinceName = State or Province Name (full name)
134
- stateOrProvinceName_default = Some-State
135
-
136
- localityName = Locality Name (eg, city)
137
-
138
- 0.organizationName = Organization Name (eg, company)
139
- 0.organizationName_default = Internet Widgits Pty Ltd
140
-
141
- # we can do this but it is not needed normally :-)
142
- #1.organizationName = Second Organization Name (eg, company)
143
- #1.organizationName_default = World Wide Web Pty Ltd
144
-
145
- organizationalUnitName = Organizational Unit Name (eg, section)
146
- #organizationalUnitName_default =
147
-
148
- commonName = Common Name (e.g. server FQDN or YOUR name)
149
- commonName_max = 64
150
-
151
- emailAddress = Email Address
152
- emailAddress_max = 64
153
-
154
- # SET-ex3 = SET extension number 3
155
-
156
- [ req_attributes ]
157
- challengePassword = A challenge password
158
- challengePassword_min = 4
159
- challengePassword_max = 20
160
-
161
- unstructuredName = An optional company name
162
-
163
- [ usr_cert ]
164
-
165
- # These extensions are added when 'ca' signs a request.
166
-
167
- # This goes against PKIX guidelines but some CAs do it and some software
168
- # requires this to avoid interpreting an end user certificate as a CA.
169
-
170
- basicConstraints=CA:FALSE
171
-
172
- # Here are some examples of the usage of nsCertType. If it is omitted
173
- # the certificate can be used for anything *except* object signing.
174
-
175
- # This is OK for an SSL server.
176
- # nsCertType = server
177
-
178
- # For an object signing certificate this would be used.
179
- # nsCertType = objsign
180
-
181
- # For normal client use this is typical
182
- # nsCertType = client, email
183
-
184
- # and for everything including object signing:
185
- # nsCertType = client, email, objsign
186
-
187
- # This is typical in keyUsage for a client certificate.
188
- # keyUsage = nonRepudiation, digitalSignature, keyEncipherment
189
-
190
- # This will be displayed in Netscape's comment listbox.
191
- nsComment = "OpenSSL Generated Certificate"
192
-
193
- # PKIX recommendations harmless if included in all certificates.
194
- subjectKeyIdentifier=hash
195
- authorityKeyIdentifier=keyid,issuer
196
-
197
- # This stuff is for subjectAltName and issuerAltname.
198
- # Import the email address.
199
- # subjectAltName=email:copy
200
- # An alternative to produce certificates that aren't
201
- # deprecated according to PKIX.
202
- # subjectAltName=email:move
203
-
204
- # Copy subject details
205
- # issuerAltName=issuer:copy
206
-
207
- #nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem
208
- #nsBaseUrl
209
- #nsRevocationUrl
210
- #nsRenewalUrl
211
- #nsCaPolicyUrl
212
- #nsSslServerName
213
-
214
- # This is required for TSA certificates.
215
- # extendedKeyUsage = critical,timeStamping
216
-
217
- [ v3_req ]
218
-
219
- # Extensions to add to a certificate request
220
-
221
- basicConstraints = CA:FALSE
222
- keyUsage = nonRepudiation, digitalSignature, keyEncipherment
223
-
224
- [ v3_ca ]
225
-
226
-
227
- # Extensions for a typical CA
228
-
229
-
230
- # PKIX recommendation.
231
-
232
- subjectKeyIdentifier=hash
233
-
234
- authorityKeyIdentifier=keyid:always,issuer
235
-
236
- basicConstraints = critical,CA:true
237
-
238
- # Key usage: this is typical for a CA certificate. However since it will
239
- # prevent it being used as an test self-signed certificate it is best
240
- # left out by default.
241
- # keyUsage = cRLSign, keyCertSign
242
-
243
- # Some might want this also
244
- # nsCertType = sslCA, emailCA
245
-
246
- # Include email address in subject alt name: another PKIX recommendation
247
- # subjectAltName=email:copy
248
- # Copy issuer details
249
- # issuerAltName=issuer:copy
250
-
251
- # DER hex encoding of an extension: beware experts only!
252
- # obj=DER:02:03
253
- # Where 'obj' is a standard or added object
254
- # You can even override a supported extension:
255
- # basicConstraints= critical, DER:30:03:01:01:FF
256
-
257
- [ crl_ext ]
258
-
259
- # CRL extensions.
260
- # Only issuerAltName and authorityKeyIdentifier make any sense in a CRL.
261
-
262
- # issuerAltName=issuer:copy
263
- authorityKeyIdentifier=keyid:always
264
-
265
- [ proxy_cert_ext ]
266
- # These extensions should be added when creating a proxy certificate
267
-
268
- # This goes against PKIX guidelines but some CAs do it and some software
269
- # requires this to avoid interpreting an end user certificate as a CA.
270
-
271
- basicConstraints=CA:FALSE
272
-
273
- # Here are some examples of the usage of nsCertType. If it is omitted
274
- # the certificate can be used for anything *except* object signing.
275
-
276
- # This is OK for an SSL server.
277
- # nsCertType = server
278
-
279
- # For an object signing certificate this would be used.
280
- # nsCertType = objsign
281
-
282
- # For normal client use this is typical
283
- # nsCertType = client, email
284
-
285
- # and for everything including object signing:
286
- # nsCertType = client, email, objsign
287
-
288
- # This is typical in keyUsage for a client certificate.
289
- # keyUsage = nonRepudiation, digitalSignature, keyEncipherment
290
-
291
- # This will be displayed in Netscape's comment listbox.
292
- nsComment = "OpenSSL Generated Certificate"
293
-
294
- # PKIX recommendations harmless if included in all certificates.
295
- subjectKeyIdentifier=hash
296
- authorityKeyIdentifier=keyid,issuer
297
-
298
- # This stuff is for subjectAltName and issuerAltname.
299
- # Import the email address.
300
- # subjectAltName=email:copy
301
- # An alternative to produce certificates that aren't
302
- # deprecated according to PKIX.
303
- # subjectAltName=email:move
304
-
305
- # Copy subject details
306
- # issuerAltName=issuer:copy
307
-
308
- #nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem
309
- #nsBaseUrl
310
- #nsRevocationUrl
311
- #nsRenewalUrl
312
- #nsCaPolicyUrl
313
- #nsSslServerName
314
-
315
- # This really needs to be in place for it to be a proxy certificate.
316
- proxyCertInfo=critical,language:id-ppl-anyLanguage,pathlen:3,policy:foo
317
-
318
- ####################################################################
319
- [ tsa ]
320
-
321
- default_tsa = tsa_config1 # the default TSA section
322
-
323
- [ tsa_config1 ]
324
-
325
- # These are used by the TSA reply generation only.
326
- dir = /etc/ssl # TSA root directory
327
- serial = $dir/tsaserial # The current serial number (mandatory)
328
- crypto_device = builtin # OpenSSL engine to use for signing
329
- signer_cert = $dir/tsacert.pem # The TSA signing certificate
330
- # (optional)
331
- certs = $dir/cacert.pem # Certificate chain to include in reply
332
- # (optional)
333
- signer_key = $dir/private/tsakey.pem # The TSA private key (optional)
334
- signer_digest = sha256 # Signing digest to use. (Optional)
335
- default_policy = tsa_policy1 # Policy if request did not specify it
336
- # (optional)
337
- other_policies = tsa_policy2, tsa_policy3 # acceptable policies (optional)
338
- digests = sha1, sha256, sha384, sha512 # Acceptable message digests (mandatory)
339
- accuracy = secs:1, millisecs:500, microsecs:100 # (optional)
340
- clock_precision_digits = 0 # number of digits after dot. (optional)
341
- ordering = yes # Is ordering defined for timestamps?
342
- # (optional, default: no)
343
- tsa_name = yes # Must the TSA name be included in the reply?
344
- # (optional, default: no)
345
- ess_cert_id_chain = no # Must the ESS cert id chain be included?
346
- # (optional, default: no)
@@ -1,30 +0,0 @@
1
- -----BEGIN ENCRYPTED PRIVATE KEY-----
2
- MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQI/9PYxW9nXMoCAggA
3
- MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECLrgz9P2kXvGBIIEyMik2zIicpbu
4
- +RaCRPYH7u7Nv21eAB5xkBcRt8yvWPDkVA/6bgCVcfpDNVW7yIMszMyEHCtUSoKh
5
- XXhTeaTDk0E1ArASv8GWMtycd9kVl5MfEP1QqvP2HcXrYjkXPtQXLhah59vF3iBJ
6
- JO7278RzqYlOfmh4j9o+YE3Qt+4kdiNboDYc1RxREridi651N2M9Rzi2xtiwn6Hr
7
- CQfZ4MMaQhfp8QRuqGMv24ddWpi3eCySauV+pKuAWeaRTm0KPcng3pKuHwBO31OJ
8
- S81MZPojWdKspgsZkXO3RTfndKfB9+Oi5g9SV9KGlV96dRiJkadhXGLPU+8Vpfm6
9
- qMDExNPJ7cq70y8lYOEMiXeu8OWuMc8+CWnt5uHpJS9Ig7c9D6gwLAfufymBj6yN
10
- 6C9UnzjXmnpZYBvU31uET2Y7qmf2x95wCJ3z72XsURsomf5KwyJKEPecV2o1GWrC
11
- vsupV41qVu9L9nhlWpmzL99XRxmmy8KE+Tm1LpncCseSIdVWcdZ7DOtLry3kn3a/
12
- J61c5/rFWbiKEzuTo+jIAKCVgkOKhy/7V16eOLuvgal6cmi02uKNFZRVhcfNdV99
13
- CZ5X12+Cz0p9w/632R9f0qM04clBE3JnT0JeiP3c6cDMCUP6DZtNxwaMIZ+bVPRp
14
- M4nBaxk3yE50oyMwvw/+L5KkZ/wAaswuJkFq2Cf6mXjWusr2Hq0Kaz1YAQ3WVaGL
15
- YSeuS8LilkJhLQTctvO0zv3tAa9mPnDg5M1bJTUHtnpezIWrwG1VId3Wg1ykUZPV
16
- cOk1nr5dJlLbEv86C2unAKCdUKITNKAqcxoRmfi/cUEJIzsWuoDRAxsZ0gcE8y8r
17
- izC3RvAazbBndo2EkIPtTrWHdh4ppilgSZ6ETT6rw8ik7fPB48NtnuAaM/G3xtD3
18
- B5M5T6W00iPJCPZqMe9LRhiu9VWnamHPQcSnNt/IWXh6C+rwO338o2cXd4uZJGWo
19
- tfRjOdLmKjzGVi57jcpKcHyZ+AbiEYE3gsa+6Qiebd2W2hW+VsQJKBfYEGlnW8da
20
- WNldU+eZtJFpUbBBBkv878isFXQyrP+22NmgUdU+PfUMKPc0DTDrKGmO3LOptv1k
21
- PFtquWON5dlmhrAFvNPl3BH0wVhHFRYm9616jkM27nGvqSnf2F3GQUX+eFwrpTmI
22
- N75O4mHEQDVU8JImHrWrjthFVJzkF76BsJA8jit4Oeg5MWlE/Lrvd3eLp+Pi4UIo
23
- K2P8Xa9SxFucqEyNkE9YYE2uuTiIwjOwKxE5vVs1iJokEPeH5IMbq0zfDiprFU1o
24
- evyKFiDdFHrpGA7wdQ1bHSMbb/YA2TZGnmailwOjBF+jeCh7RZPPhLEg6eviRgwJ
25
- 8PU00u3+DNZ0HRrCnRU85MbgTiqfBNh1LUqxu6hbf0k4D2vKwKVOgeVEOam3sy7T
26
- nV7eUlIIaLKecoPsTUjg91p3JNQ+pNUZR6+9BW15D3d7ANnHp1Vrv2FetQNesHFi
27
- XLBJbXgjMxCCExpVHed0LGvrl/GBTYhpRD/G3FDP/QE7UmZgbRdJl9Py21TLoAKQ
28
- l+uZ/wEUy4VJAC6smgttK+7vWpSwzNzq6Zyqmlu9pC/y515NWLNUHDybXhOHnaKd
29
- OLx8SUhmBHuCQ/EnOM0CXA==
30
- -----END ENCRYPTED PRIVATE KEY-----
@@ -1 +0,0 @@
1
- 01
@@ -1,28 +0,0 @@
1
- -----BEGIN PRIVATE KEY-----
2
- MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDarkxzkR3m+xeQ
3
- 6UDuPdMk8H8gBhQ6r/HMheOvYKlyhcxWtdlyZcPTEqKcbmeygKTIuSBQpiEzfH0y
4
- opc+qdEwaXbQfUNkkfAPddXQPjQo+sw3V6XGHoB0GaiIZW/F09RVlVfWFgvyqUzB
5
- QiuhlJrhUdZCSx8o8OZU06tW3E4AOyeDZPkiIGPfV13FHH39MmpNDw8BP9+ezbGf
6
- FaZJ9byYkIH+vfEIgGSAqVs3NL2Fu3bE4RFCKL/Mq7xlbxHG4wUVTbKiztpZasx1
7
- CJ4K2OWa/QSvSAlXjfireRIBA/bSLKshyjCR+Kyg/pHEp4SVT+Tp/6EGGKypUQud
8
- 4Ok/mAhZAgMBAAECggEALCDqKpQJLbhTvBll0e3F8vlZHfQ8Fs+0gqouFRDzgLnB
9
- T2oo9C3XA3wKNnkNEfdlyV+aRswPfR1NAm/PB4UrQpK1uELe26ebgvMrb3dt/SsH
10
- FM/qEv3KvCMFYGjf0lL50T9u1zPhu1kwtPsOZO/hBUEHdJ9GLXPXdxyzwbZ5QxBN
11
- UYrplS5gpKY3/xxYqJ+DoiAibMHbX+25Gmals0j9OEnEloe+DsaFWm8SW1ZS9k7Q
12
- pcFA29j9dYc2DNPJRUfqfr3Q+pCFwES1QyaoZouXRsXboHCkdsplfYTNMyyEdLGV
13
- qe2F+OYQJAD44P3YoOZqeQ2a75by0l5gF/hkzxEUUQKBgQD0Nc1JygKh1cUZytrJ
14
- RknZGCARHQPHhxGV4WXAhYshatjih8yBA51HDskURsie78RQBKZJ4xVg+uanrxv/
15
- QVH4Nrr2/sovwzduMRB4opyuS0ivE5qCg6y6PGxXk96SurEi6pxp+LQa3jQ3sdX7
16
- RED44KxJEg2Q6vS42ti9rlMf7QKBgQDlPPrAyIZUUd+aztTnMuhoSt6uqg+H9mtF
17
- kdQOEgaYwOkGa5LxfWnqpvcBsLRQ+twhJUbJrEaBohR0M28KrkV25VeaFlAxPXBL
18
- bwCJWEj047UjweJG8LSesvz1HjteYJMpEIm+f8sBQe1GT3hdYWoRdt3sKw8bfF4s
19
- MglV/VzEnQKBgQCQJeHTGGaNWD1LiC20eMTGXDMxZssAT33V1oHVLf597y+uJzJT
20
- ROrlMpkGWvG4vxZFlTkCjAPmhrL3b6k69jeIJ+YcPTDjGHvzkwqB6ppJVy7ECPI+
21
- 77JZC6l32FScj45XadyBwMeuxFJWPaZs9lDTluqbBwjy7X0eUC93Zxqx0QKBgQDO
22
- QBhIXeLmeKebrJ5HyjjqpPpH4oCIzwBjHrrRUgyXYXIHscALANDMLB8vaSJDfgGS
23
- 3OwcxaDGP+LxTdmJnZSoTd6Mp6jNNL8VT7EG4eT6WOoAWxBQzX9lDhukGuhFmNSu
24
- 7M9SE769yehHC3d7ZQs+3Vj8hR1ZmINOdlKKCKRvzQKBgQDnfoNhMLgHMyzxe9QU
25
- yIbW0Iy/bZgHgogbiZUSrqccFzZqoJYYppDtf9r/4v/fv33N0LXlTHnmynqdEn2V
26
- 9uq297R+Xx3JmdBIuHRhYfVWBjPZpS0AaWCg7TWy9IDRs7w0rNnWQIHZ31UXJ1FV
27
- IXGqWb8lkCJYf5SJ5wFH9FeKhg==
28
- -----END PRIVATE KEY-----
@@ -1,22 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDljCCAn6gAwIBAgIJAJ+xCVRfdiL2MA0GCSqGSIb3DQEBCwUAMGAxCzAJBgNV
3
- BAYTAlVLMQ8wDQYDVQQIDAZMb25kb24xGTAXBgNVBAoMEEJpdGZpbmV4IExpbWl0
4
- ZWQxETAPBgNVBAsMCFNlY3VyaXR5MRIwEAYDVQQDDAkxMjcuMC4wLjEwHhcNMTcw
5
- NjA3MjEzODUzWhcNMTgwNjA3MjEzODUzWjBgMQswCQYDVQQGEwJVSzEPMA0GA1UE
6
- CAwGTG9uZG9uMRkwFwYDVQQKDBBCaXRmaW5leCBMaW1pdGVkMREwDwYDVQQLDAhT
7
- ZWN1cml0eTESMBAGA1UEAwwJMTI3LjAuMC4xMIIBIjANBgkqhkiG9w0BAQEFAAOC
8
- AQ8AMIIBCgKCAQEA2q5Mc5Ed5vsXkOlA7j3TJPB/IAYUOq/xzIXjr2CpcoXMVrXZ
9
- cmXD0xKinG5nsoCkyLkgUKYhM3x9MqKXPqnRMGl20H1DZJHwD3XV0D40KPrMN1el
10
- xh6AdBmoiGVvxdPUVZVX1hYL8qlMwUIroZSa4VHWQksfKPDmVNOrVtxOADsng2T5
11
- IiBj31ddxRx9/TJqTQ8PAT/fns2xnxWmSfW8mJCB/r3xCIBkgKlbNzS9hbt2xOER
12
- Qii/zKu8ZW8RxuMFFU2yos7aWWrMdQieCtjlmv0Er0gJV434q3kSAQP20iyrIcow
13
- kfisoP6RxKeElU/k6f+hBhisqVELneDpP5gIWQIDAQABo1MwUTAdBgNVHQ4EFgQU
14
- ljiy80UAHCJU946wKXxtJAIL6eEwHwYDVR0jBBgwFoAUljiy80UAHCJU946wKXxt
15
- JAIL6eEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAsOXXgYSI
16
- IDI+ZPErZJ2cb2unsgtd1xwFxd8KTx7ZRmVu+ElnJjMhRyaKOUw4EXhplbQoyK/1
17
- EKHqAGpl+uwddafFsx3qK0sMBRH/oSEz6RG5ONRCfISZ2jMSGKfg2AsdJIBD+Wko
18
- c5hHFVZk/xkeEri6tI04co9xfl1pJquAtbH0cQyDUISssdUJeC9jRTm8460fBkFg
19
- 79bbxn+34swSCe/lVIcF6u4Tu7fiaUsUG2XSRyjsNRWrZe0nKmJ3QQsMHYwkua7p
20
- HEBJXLzamDdd+0wHyKckk+R7TXa0d2r83t6c7kNVbFwGWl1iljXvtbhnbddzlAzk
21
- Ts0eU2wgPtMQQw==
22
- -----END CERTIFICATE-----