async-io 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/async-io.gemspec +1 -1
- data/lib/async/io/endpoint.rb +21 -8
- data/lib/async/io/ssl_socket.rb +2 -1
- data/lib/async/io/version.rb +1 -1
- data/spec/async/io/c10k_spec.rb +8 -3
- data/spec/async/io/echo_spec.rb +1 -1
- data/spec/async/io/ssl_socket_spec.rb +7 -21
- metadata +5 -23
- data/spec/async/io/ssl/gen_certs.sh +0 -31
- data/spec/async/io/ssl/trusted-ca.crt +0 -25
- data/spec/async/io/ssl/trusted-ca.key +0 -27
- data/spec/async/io/ssl/trusted-cert.crt +0 -83
- data/spec/async/io/ssl/trusted-cert.key +0 -27
- data/spec/async/io/ssl/untrusted-ca.crt +0 -26
- data/spec/async/io/ssl/untrusted-ca.key +0 -27
- data/spec/async/io/ssl/untrusted-cert.crt +0 -83
- data/spec/async/io/ssl/untrusted-cert.key +0 -27
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 5debc255f53c70939e2e84ebe18178b1b9fe73db
|
4
|
+
data.tar.gz: c0b4a2a8b43454b97317c3dd46476cacb8dcf010
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: da03e21632e9889d111919b083572c5eba488358ca3c3379e23b0ed6d487c4c1d8b2a9846766b0f047bb5e00aba23fea5ebe6ee3d720f651c234d0addd72b3cb
|
7
|
+
data.tar.gz: 6ddcdb0d5bd129818a9cb638510b9008ab55488d9439ec1c43493cae09727e79fadf6ada416ae386a560fc6527351f99d3fb66c00f0e2c942b45556afc8d73be
|
data/async-io.gemspec
CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.has_rdoc = "yard"
|
18
18
|
|
19
19
|
spec.add_dependency "async", "~> 1.0"
|
20
|
-
spec.add_development_dependency "async-rspec", "~> 1.
|
20
|
+
spec.add_development_dependency "async-rspec", "~> 1.2"
|
21
21
|
|
22
22
|
spec.add_development_dependency "bundler", "~> 1.13"
|
23
23
|
spec.add_development_dependency "rake", "~> 10.0"
|
data/lib/async/io/endpoint.rb
CHANGED
@@ -94,9 +94,9 @@ module Async
|
|
94
94
|
address.protocol
|
95
95
|
end
|
96
96
|
|
97
|
-
def bind
|
98
|
-
|
99
|
-
end
|
97
|
+
# def bind
|
98
|
+
# yield specification
|
99
|
+
# end
|
100
100
|
|
101
101
|
def accept(&block)
|
102
102
|
backlog = self.options.fetch(:backlog, Socket::SOMAXCONN)
|
@@ -107,9 +107,9 @@ module Async
|
|
107
107
|
end
|
108
108
|
end
|
109
109
|
|
110
|
-
def connect
|
111
|
-
|
112
|
-
end
|
110
|
+
# def connect
|
111
|
+
# yield specification
|
112
|
+
# end
|
113
113
|
end
|
114
114
|
|
115
115
|
# This class will open and close the socket automatically.
|
@@ -119,11 +119,11 @@ module Async
|
|
119
119
|
end
|
120
120
|
|
121
121
|
def bind(&block)
|
122
|
-
Socket.bind(
|
122
|
+
Socket.bind(address, **options, &block)
|
123
123
|
end
|
124
124
|
|
125
125
|
def connect(&block)
|
126
|
-
Socket.connect(
|
126
|
+
Socket.connect(address, &block)
|
127
127
|
end
|
128
128
|
end
|
129
129
|
|
@@ -143,6 +143,14 @@ module Async
|
|
143
143
|
end
|
144
144
|
|
145
145
|
class SecureEndpoint < Endpoint
|
146
|
+
def address
|
147
|
+
specification.address
|
148
|
+
end
|
149
|
+
|
150
|
+
def hostname
|
151
|
+
options[:hostname]
|
152
|
+
end
|
153
|
+
|
146
154
|
def params
|
147
155
|
options[:ssl_params]
|
148
156
|
end
|
@@ -174,6 +182,11 @@ module Async
|
|
174
182
|
specification.connect do |socket|
|
175
183
|
ssl_socket = SSLSocket.connect_socket(socket, context)
|
176
184
|
|
185
|
+
# Used for SNI:
|
186
|
+
if hostname = self.hostname
|
187
|
+
ssl_socket.hostname = hostname
|
188
|
+
end
|
189
|
+
|
177
190
|
ssl_socket.connect
|
178
191
|
|
179
192
|
yield ssl_socket
|
data/lib/async/io/ssl_socket.rb
CHANGED
@@ -41,8 +41,9 @@ module Async
|
|
41
41
|
@io.to_io.remote_address
|
42
42
|
end
|
43
43
|
|
44
|
+
# This method/implementation might change in the future, don't depend on it :)
|
44
45
|
def self.connect_socket(socket, context)
|
45
|
-
io = wrapped_klass.new(socket.
|
46
|
+
io = wrapped_klass.new(socket.to_io, context)
|
46
47
|
|
47
48
|
# This ensures that when the internal IO is closed, it also closes the internal socket:
|
48
49
|
io.sync_close = true
|
data/lib/async/io/version.rb
CHANGED
data/spec/async/io/c10k_spec.rb
CHANGED
@@ -22,8 +22,13 @@ require 'async/io'
|
|
22
22
|
require 'benchmark'
|
23
23
|
|
24
24
|
RSpec.describe "echo client/server" do
|
25
|
+
# macOS has a rediculously hard time to do this.
|
26
|
+
# sudo sysctl -w net.inet.ip.portrange.first=10000
|
27
|
+
# sudo sysctl -w net.inet.ip.portrange.hifirst=10000
|
28
|
+
# Probably due to the use of select.
|
29
|
+
|
25
30
|
let(:repeats) {10000}
|
26
|
-
let(:server_address) {Async::IO::Address.tcp('0.0.0.0',
|
31
|
+
let(:server_address) {Async::IO::Address.tcp('0.0.0.0', 10102)}
|
27
32
|
|
28
33
|
def echo_server(server_address)
|
29
34
|
Async::Reactor.run do |task|
|
@@ -70,8 +75,8 @@ RSpec.describe "echo client/server" do
|
|
70
75
|
|
71
76
|
responses << message
|
72
77
|
end
|
73
|
-
rescue Errno::ECONNREFUSED
|
74
|
-
puts "
|
78
|
+
rescue Errno::ECONNREFUSED, Errno::ECONNRESET, Errno::ETIMEDOUT, Errno::EADDRINUSE
|
79
|
+
puts "#{data}: #{$!}..."
|
75
80
|
# If the connection was refused, it means the server probably can't accept connections any faster than it currently is, so we simply retry.
|
76
81
|
retry
|
77
82
|
end
|
data/spec/async/io/echo_spec.rb
CHANGED
@@ -23,7 +23,7 @@ require 'async/io'
|
|
23
23
|
RSpec.describe "echo client/server" do
|
24
24
|
include_context Async::RSpec::Reactor
|
25
25
|
|
26
|
-
let(:server_address) {Async::IO::Address.tcp('0.0.0.0',
|
26
|
+
let(:server_address) {Async::IO::Address.tcp('0.0.0.0', 9002)}
|
27
27
|
|
28
28
|
def echo_server(server_address)
|
29
29
|
Async::Reactor.run do |task|
|
@@ -20,26 +20,16 @@
|
|
20
20
|
|
21
21
|
require 'async/io/ssl_socket'
|
22
22
|
|
23
|
+
require 'async/rspec/ssl'
|
24
|
+
|
23
25
|
RSpec.describe Async::Reactor do
|
24
26
|
include_context Async::RSpec::Leaks
|
25
|
-
|
26
|
-
let(:ssl_client_params) do
|
27
|
-
{
|
28
|
-
ca_file: File.expand_path(certificate_authority_key_file, __dir__)
|
29
|
-
}
|
30
|
-
end
|
31
|
-
|
32
|
-
let(:ssl_server_params) do
|
33
|
-
{
|
34
|
-
cert: OpenSSL::X509::Certificate.new(File.read(server_cert_file)),
|
35
|
-
key: OpenSSL::PKey::RSA.new(File.read(server_key_file))
|
36
|
-
}
|
37
|
-
end
|
27
|
+
include_context Async::RSpec::SSL::VerifiedContexts
|
38
28
|
|
39
29
|
# Shared port for localhost network tests.
|
40
30
|
let(:endpoint) {Async::IO::Endpoint.tcp("localhost", 6779, reuse_port: true)}
|
41
|
-
let(:server_endpoint) {Async::IO::SecureEndpoint.new(endpoint,
|
42
|
-
let(:client_endpoint) {Async::IO::SecureEndpoint.new(endpoint,
|
31
|
+
let(:server_endpoint) {Async::IO::SecureEndpoint.new(endpoint, ssl_context: server_context)}
|
32
|
+
let(:client_endpoint) {Async::IO::SecureEndpoint.new(endpoint, ssl_context: client_context)}
|
43
33
|
|
44
34
|
let(:data) {"The quick brown fox jumped over the lazy dog."}
|
45
35
|
|
@@ -67,9 +57,7 @@ RSpec.describe Async::Reactor do
|
|
67
57
|
|
68
58
|
describe "#connect" do
|
69
59
|
context "with a trusted certificate" do
|
70
|
-
|
71
|
-
let(:server_cert_file) {File.expand_path("ssl/trusted-cert.crt", __dir__)}
|
72
|
-
let(:server_key_file) {File.expand_path("ssl/trusted-cert.key", __dir__)}
|
60
|
+
include_context Async::RSpec::SSL::ValidCertificate
|
73
61
|
|
74
62
|
it "should start server and send data" do
|
75
63
|
subject.async do
|
@@ -82,9 +70,7 @@ RSpec.describe Async::Reactor do
|
|
82
70
|
end
|
83
71
|
|
84
72
|
context "with an untrusted certificate" do
|
85
|
-
|
86
|
-
let(:server_cert_file) {File.expand_path("ssl/untrusted-cert.crt", __dir__)}
|
87
|
-
let(:server_key_file) {File.expand_path("ssl/untrusted-cert.key", __dir__)}
|
73
|
+
include_context Async::RSpec::SSL::InvalidCertificate
|
88
74
|
|
89
75
|
it "should fail to connect" do
|
90
76
|
subject.async do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: async-io
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Samuel Williams
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-02-
|
11
|
+
date: 2018-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: async
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '1.
|
33
|
+
version: '1.2'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '1.
|
40
|
+
version: '1.2'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bundler
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -113,15 +113,6 @@ files:
|
|
113
113
|
- spec/async/io/generic_spec.rb
|
114
114
|
- spec/async/io/protocol/line_spec.rb
|
115
115
|
- spec/async/io/socket_spec.rb
|
116
|
-
- spec/async/io/ssl/gen_certs.sh
|
117
|
-
- spec/async/io/ssl/trusted-ca.crt
|
118
|
-
- spec/async/io/ssl/trusted-ca.key
|
119
|
-
- spec/async/io/ssl/trusted-cert.crt
|
120
|
-
- spec/async/io/ssl/trusted-cert.key
|
121
|
-
- spec/async/io/ssl/untrusted-ca.crt
|
122
|
-
- spec/async/io/ssl/untrusted-ca.key
|
123
|
-
- spec/async/io/ssl/untrusted-cert.crt
|
124
|
-
- spec/async/io/ssl/untrusted-cert.key
|
125
116
|
- spec/async/io/ssl_socket_spec.rb
|
126
117
|
- spec/async/io/stream_spec.rb
|
127
118
|
- spec/async/io/tcp_socket_spec.rb
|
@@ -148,7 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
148
139
|
version: '0'
|
149
140
|
requirements: []
|
150
141
|
rubyforge_project:
|
151
|
-
rubygems_version: 2.
|
142
|
+
rubygems_version: 2.6.12
|
152
143
|
signing_key:
|
153
144
|
specification_version: 4
|
154
145
|
summary: Provides support for asynchonous TCP, UDP, UNIX and SSL sockets.
|
@@ -159,15 +150,6 @@ test_files:
|
|
159
150
|
- spec/async/io/generic_spec.rb
|
160
151
|
- spec/async/io/protocol/line_spec.rb
|
161
152
|
- spec/async/io/socket_spec.rb
|
162
|
-
- spec/async/io/ssl/gen_certs.sh
|
163
|
-
- spec/async/io/ssl/trusted-ca.crt
|
164
|
-
- spec/async/io/ssl/trusted-ca.key
|
165
|
-
- spec/async/io/ssl/trusted-cert.crt
|
166
|
-
- spec/async/io/ssl/trusted-cert.key
|
167
|
-
- spec/async/io/ssl/untrusted-ca.crt
|
168
|
-
- spec/async/io/ssl/untrusted-ca.key
|
169
|
-
- spec/async/io/ssl/untrusted-cert.crt
|
170
|
-
- spec/async/io/ssl/untrusted-cert.key
|
171
153
|
- spec/async/io/ssl_socket_spec.rb
|
172
154
|
- spec/async/io/stream_spec.rb
|
173
155
|
- spec/async/io/tcp_socket_spec.rb
|
@@ -1,31 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
get_subject() {
|
4
|
-
if [ "$1" = "trusted" ]
|
5
|
-
then
|
6
|
-
echo "/C=US/ST=California/L=San Francisco/O=Celluloid/OU=Socketry/CN=localhost"
|
7
|
-
else
|
8
|
-
echo "/C=XX/ST=Untrusted/L=Evilville/O=Evil Hacker/OU=Attack Department/CN=localhost"
|
9
|
-
fi
|
10
|
-
}
|
11
|
-
|
12
|
-
# Generate two CAs: one to be considered trusted, and one that's untrusted
|
13
|
-
for type in trusted untrusted; do
|
14
|
-
rm -rf ./demoCA
|
15
|
-
mkdir -p ./demoCA
|
16
|
-
mkdir -p ./demoCA/certs
|
17
|
-
mkdir -p ./demoCA/crl
|
18
|
-
mkdir -p ./demoCA/newcerts
|
19
|
-
mkdir -p ./demoCA/private
|
20
|
-
touch ./demoCA/index.txt
|
21
|
-
|
22
|
-
openssl genrsa -out ${type}-ca.key 2048
|
23
|
-
openssl req -new -x509 -days 12500 -key ${type}-ca.key -out ${type}-ca.crt -subj "$(get_subject $type)"
|
24
|
-
openssl x509 -in ${type}-ca.crt -noout -next_serial -out ./demoCA/serial
|
25
|
-
|
26
|
-
openssl req -newkey rsa:2048 -keyout ${type}-cert.key -nodes -out ${type}-cert.req -subj "$(get_subject $type)"
|
27
|
-
openssl ca -days 12500 -cert ${type}-ca.crt -keyfile ${type}-ca.key -out ${type}-cert.crt -infiles ${type}-cert.req
|
28
|
-
rm ${type}-cert.req
|
29
|
-
done
|
30
|
-
|
31
|
-
rm -rf ./demoCA
|
@@ -1,25 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIESjCCAzKgAwIBAgIJAPCsnL6/gRaRMA0GCSqGSIb3DQEBBQUAMHUxCzAJBgNV
|
3
|
-
BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp
|
4
|
-
c2NvMRIwEAYDVQQKEwlDZWxsdWxvaWQxETAPBgNVBAsTCFNvY2tldHJ5MRIwEAYD
|
5
|
-
VQQDEwlsb2NhbGhvc3QwIBcNMTYwOTEwMTY0OTIwWhgPMjA1MDEyMDExNjQ5MjBa
|
6
|
-
MHUxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1T
|
7
|
-
YW4gRnJhbmNpc2NvMRIwEAYDVQQKEwlDZWxsdWxvaWQxETAPBgNVBAsTCFNvY2tl
|
8
|
-
dHJ5MRIwEAYDVQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
|
9
|
-
ggEKAoIBAQDAXdhY1LlZrTBTxecJzNvYYKXgp2ya6Qqvb8e+knhw7674kM5EB5Qw
|
10
|
-
3dxt1msdgzfqlwBQUIJSUtsi2jwcVXlHs9c6gePkiZJMCNag5fyi/o2kQmlOQFR8
|
11
|
-
N9uOhd4YThZRD7/Aoa04FMmIPeNYtVnkx8lbZO5MWN3RQ+ppovYhP/d/IWHUpXs1
|
12
|
-
J/H4fZxucsDMKo5zX36VuEdFAyIgxZ8lw1/dp3BwAl+82Pcs+GSwPFawAcvVKkOt
|
13
|
-
OwE9Edw8iNlKWjgcwGSfNHwJoyr10YK/f90CzdZbJGofEZbHxueAT1bftEqHf4zv
|
14
|
-
vs5mp9TkkQh0UuQpwalp050In7lrkI9TAgMBAAGjgdowgdcwHQYDVR0OBBYEFGh2
|
15
|
-
jJPd4xrU5D+QV4WiErIWUWbiMIGnBgNVHSMEgZ8wgZyAFGh2jJPd4xrU5D+QV4Wi
|
16
|
-
ErIWUWbioXmkdzB1MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEW
|
17
|
-
MBQGA1UEBxMNU2FuIEZyYW5jaXNjbzESMBAGA1UEChMJQ2VsbHVsb2lkMREwDwYD
|
18
|
-
VQQLEwhTb2NrZXRyeTESMBAGA1UEAxMJbG9jYWxob3N0ggkA8Kycvr+BFpEwDAYD
|
19
|
-
VR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAERiepnBTfYOto5yNXP2um6MI
|
20
|
-
R8ly66ImTixYpn3PtToPrkQ4Smgp/B7E2P6uFkFyrx8d5yd+r42yZ07ZJXM/qXg1
|
21
|
-
xggtpls+LeqQi4b6FXoJpSRmyG2cbd0oznOnR3ebrBHd/gP13H3sc0FQjrQ6ERJh
|
22
|
-
kWffK2pka3Q9KGJc2ygCYTpG4wPNRqMohAT49CqwdrbOn43Nnt/tQKu6yluKCM0h
|
23
|
-
1tOv9RFlAJhhbKyB9uFDPGD9TNbyk4wHCw9CviIg5Ao1MWUS9uBR+pMESpt9ewQz
|
24
|
-
H/Y5nPIDYF9i2zekavtbgibjMEQ1N2Qs2y/2Y5A5YiihfN8iWwBMW4QJx8QLBg==
|
25
|
-
-----END CERTIFICATE-----
|
@@ -1,27 +0,0 @@
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
2
|
-
MIIEogIBAAKCAQEAwF3YWNS5Wa0wU8XnCczb2GCl4KdsmukKr2/HvpJ4cO+u+JDO
|
3
|
-
RAeUMN3cbdZrHYM36pcAUFCCUlLbIto8HFV5R7PXOoHj5ImSTAjWoOX8ov6NpEJp
|
4
|
-
TkBUfDfbjoXeGE4WUQ+/wKGtOBTJiD3jWLVZ5MfJW2TuTFjd0UPqaaL2IT/3fyFh
|
5
|
-
1KV7NSfx+H2cbnLAzCqOc19+lbhHRQMiIMWfJcNf3adwcAJfvNj3LPhksDxWsAHL
|
6
|
-
1SpDrTsBPRHcPIjZSlo4HMBknzR8CaMq9dGCv3/dAs3WWyRqHxGWx8bngE9W37RK
|
7
|
-
h3+M777OZqfU5JEIdFLkKcGpadOdCJ+5a5CPUwIDAQABAoIBACmvrISDhK8UQtbE
|
8
|
-
mi6bgEDBoPCwF27ydWhTNtvrbcI7jpU6/Bft9IUqbuw2fPvmRaXGl0DQUY15exdw
|
9
|
-
Z3pUY3XQWSHKqBIMZfGoMKqpbDf+Jb+kzKEye5x3llKqW9i0g02JtioOXzU5+/pU
|
10
|
-
PwIoOpTDXrU5iBJvZ5JDv3ao4+GMVDKOlxsmMqW0rq4gDm48tZTyQpXlvAx+adXb
|
11
|
-
YF8n1KQ6Nx6lDinCVz9MjBdQ3vNrN/VMaVIIl0knG2oMmNRvf9xDasLYGkuLbj+E
|
12
|
-
0O2WjzgopBsj7Qq59u7w262qvYqfMkVx1lGUHmITVAXso+b5l/RThbw3MoJYedLy
|
13
|
-
GPzC1eECgYEA+wcRjIPNkEd/+UoiaHx3EKi6faKtwq2DStkXjODYk/viVwhG+5bV
|
14
|
-
blXf0gjv79jleYn1LAu0FoolYVMur5aHzdJBvjWZl6Uq649xe6CwaGKZikWiMe6I
|
15
|
-
4TRkSqxKjahJcEb4VUjAWL/pruBXOUkF1SQ9GRkIdXCwfzYhA0BTeCsCgYEAxC1Q
|
16
|
-
OhVxiSi4XiacKEJkmbiDN6O7inoGp3rcE6wBBQipDwTRLJZBXauwzRslpzMWMvo0
|
17
|
-
TjHnWn6A3e/fKCjUAu3jWq2GrS+UE7kMXSDdPW2Fl8fzAKGxY1XAwPng4EpdRd5Y
|
18
|
-
5LVGin10wZ/mOURF0jEy2XRaMeP1E3MtRePJyXkCgYB4SonZSOu/wNONdT4JzeMM
|
19
|
-
g55iSAt2J8mrm15Srwh52ZE73YaOV1hNeC86Kfg4ejp0xGxNQAp7ZpXFDqRnlf3b
|
20
|
-
3m6MpIjGh2qK2QErmfQPAXjMLtQrkz/ak02gDvHm8gbHG+syixtJLCXiHDUQCXMX
|
21
|
-
ETeKCFnqVSbuvtSRB0k4YwKBgGjq+x81XLVIS+I+sAFwELGN1s+pB6H1xR1JPe5f
|
22
|
-
bWQtz4yyvNQlv+vC6RmozShw0AyPd+3iDqN9SJppsWWfAFRYueFDMOXqrj0mGJCu
|
23
|
-
BOTXcD1OuI277Ez+DcqnWTdbTisR0WTv9jwXAJyVUeGKu/TATzuxWJOaIPY4ARyB
|
24
|
-
yOexAoGAL75WiMSKtvZUAqTchEJxmhOuhHSaLF+b2VNnI4NCHK1aVrvH5jErPNIO
|
25
|
-
NTSj4GBr8wjaC0Zhvu6EAIlK9xMM7R41ZEQG/3HuRMcjf8kUkGmfJ2KjS5alC5Yh
|
26
|
-
BSV4gGcDsQ0nZEgSHZ8hSwzBrwXtd1jMNs4cMVPgiwb/BWOecQw=
|
27
|
-
-----END RSA PRIVATE KEY-----
|
@@ -1,83 +0,0 @@
|
|
1
|
-
Certificate:
|
2
|
-
Data:
|
3
|
-
Version: 3 (0x2)
|
4
|
-
Serial Number:
|
5
|
-
f0:ac:9c:be:bf:81:16:92
|
6
|
-
Signature Algorithm: sha1WithRSAEncryption
|
7
|
-
Issuer: C=US, ST=California, L=San Francisco, O=Celluloid, OU=Socketry, CN=localhost
|
8
|
-
Validity
|
9
|
-
Not Before: Sep 10 16:49:21 2016 GMT
|
10
|
-
Not After : Dec 1 16:49:21 2050 GMT
|
11
|
-
Subject: C=US, ST=California, O=Celluloid, OU=Socketry, CN=localhost
|
12
|
-
Subject Public Key Info:
|
13
|
-
Public Key Algorithm: rsaEncryption
|
14
|
-
RSA Public Key: (2048 bit)
|
15
|
-
Modulus (2048 bit):
|
16
|
-
00:b9:1f:61:e1:42:d2:4c:12:be:51:f1:7c:52:c8:
|
17
|
-
67:a4:48:38:29:df:44:20:a2:6e:13:90:e6:5a:7f:
|
18
|
-
88:c8:1d:5e:c3:11:58:06:a2:0c:30:fc:d6:a0:dd:
|
19
|
-
3a:0d:dd:05:1f:76:47:51:e7:49:28:f4:90:09:65:
|
20
|
-
1e:93:bb:c5:f8:07:16:48:00:67:72:13:1a:a6:cc:
|
21
|
-
11:74:40:e1:ba:0c:ba:ef:7e:82:37:2a:62:3d:69:
|
22
|
-
cd:2f:f0:9a:a1:61:b6:f6:a4:fc:90:51:d1:81:5e:
|
23
|
-
11:2f:55:1d:8a:30:31:3a:d3:99:7e:a9:ad:4c:52:
|
24
|
-
6d:be:3e:28:cf:92:a1:cc:42:1d:04:39:95:97:38:
|
25
|
-
2a:57:91:06:e7:cd:80:23:5c:76:7b:dc:77:a1:52:
|
26
|
-
2a:1b:85:c1:57:44:37:97:aa:17:45:e8:3f:d0:11:
|
27
|
-
53:07:00:06:2d:60:d3:a9:84:4c:97:4b:33:c4:77:
|
28
|
-
2e:a1:79:af:8a:30:1a:67:61:17:1f:f7:0e:40:4b:
|
29
|
-
8d:84:92:cd:22:57:30:85:65:b7:b0:2e:ac:a1:55:
|
30
|
-
d5:96:7f:a9:7f:24:dd:ba:88:37:46:6a:91:42:37:
|
31
|
-
e1:7d:e6:5c:2e:2b:33:1b:7e:b2:15:70:78:fe:61:
|
32
|
-
71:d2:bc:cd:84:49:8d:9d:98:c5:c3:95:68:b6:34:
|
33
|
-
d4:d3
|
34
|
-
Exponent: 65537 (0x10001)
|
35
|
-
X509v3 extensions:
|
36
|
-
X509v3 Basic Constraints:
|
37
|
-
CA:FALSE
|
38
|
-
Netscape Comment:
|
39
|
-
OpenSSL Generated Certificate
|
40
|
-
X509v3 Subject Key Identifier:
|
41
|
-
AA:1B:00:42:93:AA:8F:15:5D:D7:B4:18:45:10:1E:75:45:C8:26:96
|
42
|
-
X509v3 Authority Key Identifier:
|
43
|
-
keyid:68:76:8C:93:DD:E3:1A:D4:E4:3F:90:57:85:A2:12:B2:16:51:66:E2
|
44
|
-
|
45
|
-
Signature Algorithm: sha1WithRSAEncryption
|
46
|
-
ab:3a:40:58:9f:04:fd:17:2d:bd:6c:e2:58:36:27:aa:30:68:
|
47
|
-
8b:17:9d:29:60:a1:a5:ac:36:a3:11:df:ee:c9:8f:c6:c3:ae:
|
48
|
-
7d:a0:2f:9c:f0:38:d6:1a:25:a7:2e:7a:98:ed:0f:67:9b:cb:
|
49
|
-
7b:b1:4c:58:eb:b3:c5:80:86:10:43:f2:43:57:39:92:de:82:
|
50
|
-
c3:4d:02:66:56:80:a1:98:bb:d1:a6:a4:25:54:0c:ab:45:1d:
|
51
|
-
eb:70:52:ac:07:a2:6c:13:68:3a:80:f4:2c:04:11:c7:40:85:
|
52
|
-
5c:46:71:d0:71:db:1f:35:33:8b:82:c6:09:b1:c5:96:12:ac:
|
53
|
-
e8:9e:a5:38:98:ac:3b:a6:86:64:95:87:36:d9:f8:9d:0a:bb:
|
54
|
-
70:d8:c2:39:70:f3:8b:d1:56:fc:c0:28:e1:22:82:0a:e9:7e:
|
55
|
-
c6:6f:52:37:98:6f:48:56:e7:0f:49:48:9c:03:0d:c0:34:93:
|
56
|
-
3c:b4:66:b2:b5:88:96:c7:31:27:02:b0:78:f7:12:81:31:c2:
|
57
|
-
e3:c6:8c:cf:f5:f6:cb:23:16:ed:b0:df:d9:e9:cb:2d:8b:6f:
|
58
|
-
9e:d4:78:c6:73:a0:c1:13:48:32:65:39:fe:a3:f9:53:ee:6e:
|
59
|
-
4b:73:0a:12:58:64:e5:9f:a2:67:65:fd:7a:1a:30:3a:ed:28:
|
60
|
-
f2:b2:b8:31
|
61
|
-
-----BEGIN CERTIFICATE-----
|
62
|
-
MIID0jCCArqgAwIBAgIJAPCsnL6/gRaSMA0GCSqGSIb3DQEBBQUAMHUxCzAJBgNV
|
63
|
-
BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp
|
64
|
-
c2NvMRIwEAYDVQQKEwlDZWxsdWxvaWQxETAPBgNVBAsTCFNvY2tldHJ5MRIwEAYD
|
65
|
-
VQQDEwlsb2NhbGhvc3QwIBcNMTYwOTEwMTY0OTIxWhgPMjA1MDEyMDExNjQ5MjFa
|
66
|
-
MF0xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRIwEAYDVQQKEwlD
|
67
|
-
ZWxsdWxvaWQxETAPBgNVBAsTCFNvY2tldHJ5MRIwEAYDVQQDEwlsb2NhbGhvc3Qw
|
68
|
-
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC5H2HhQtJMEr5R8XxSyGek
|
69
|
-
SDgp30Qgom4TkOZaf4jIHV7DEVgGogww/Nag3ToN3QUfdkdR50ko9JAJZR6Tu8X4
|
70
|
-
BxZIAGdyExqmzBF0QOG6DLrvfoI3KmI9ac0v8JqhYbb2pPyQUdGBXhEvVR2KMDE6
|
71
|
-
05l+qa1MUm2+PijPkqHMQh0EOZWXOCpXkQbnzYAjXHZ73HehUiobhcFXRDeXqhdF
|
72
|
-
6D/QEVMHAAYtYNOphEyXSzPEdy6hea+KMBpnYRcf9w5AS42Eks0iVzCFZbewLqyh
|
73
|
-
VdWWf6l/JN26iDdGapFCN+F95lwuKzMbfrIVcHj+YXHSvM2ESY2dmMXDlWi2NNTT
|
74
|
-
AgMBAAGjezB5MAkGA1UdEwQCMAAwLAYJYIZIAYb4QgENBB8WHU9wZW5TU0wgR2Vu
|
75
|
-
ZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBSqGwBCk6qPFV3XtBhFEB51Rcgm
|
76
|
-
ljAfBgNVHSMEGDAWgBRodoyT3eMa1OQ/kFeFohKyFlFm4jANBgkqhkiG9w0BAQUF
|
77
|
-
AAOCAQEAqzpAWJ8E/RctvWziWDYnqjBoixedKWChpaw2oxHf7smPxsOufaAvnPA4
|
78
|
-
1holpy56mO0PZ5vLe7FMWOuzxYCGEEPyQ1c5kt6Cw00CZlaAoZi70aakJVQMq0Ud
|
79
|
-
63BSrAeibBNoOoD0LAQRx0CFXEZx0HHbHzUzi4LGCbHFlhKs6J6lOJisO6aGZJWH
|
80
|
-
Ntn4nQq7cNjCOXDzi9FW/MAo4SKCCul+xm9SN5hvSFbnD0lInAMNwDSTPLRmsrWI
|
81
|
-
lscxJwKwePcSgTHC48aMz/X2yyMW7bDf2enLLYtvntR4xnOgwRNIMmU5/qP5U+5u
|
82
|
-
S3MKElhk5Z+iZ2X9ehowOu0o8rK4MQ==
|
83
|
-
-----END CERTIFICATE-----
|
@@ -1,27 +0,0 @@
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
2
|
-
MIIEogIBAAKCAQEAuR9h4ULSTBK+UfF8UshnpEg4Kd9EIKJuE5DmWn+IyB1ewxFY
|
3
|
-
BqIMMPzWoN06Dd0FH3ZHUedJKPSQCWUek7vF+AcWSABnchMapswRdEDhugy6736C
|
4
|
-
NypiPWnNL/CaoWG29qT8kFHRgV4RL1UdijAxOtOZfqmtTFJtvj4oz5KhzEIdBDmV
|
5
|
-
lzgqV5EG582AI1x2e9x3oVIqG4XBV0Q3l6oXReg/0BFTBwAGLWDTqYRMl0szxHcu
|
6
|
-
oXmvijAaZ2EXH/cOQEuNhJLNIlcwhWW3sC6soVXVln+pfyTduog3RmqRQjfhfeZc
|
7
|
-
LiszG36yFXB4/mFx0rzNhEmNnZjFw5VotjTU0wIDAQABAoIBACqtrn4lTqBVLeVs
|
8
|
-
W/Il26cHM1OL8oPnjqMaI9E3V8xy4Pbt17Jnx5G/qKebeRfbHaQ8O4MJZFd50n8n
|
9
|
-
/d2nS6O71oow9ahZ+Sn9IAUCNEgVST+Pleur7MwlyTVFLhEImwrPzJ5lDnzZt/KG
|
10
|
-
l/HU3HSoddm6uoY+9qgGYphAQOb67kYEJv+e5b8lTn0dXC7ZoG0MhqVlDh+wyHnD
|
11
|
-
KcvtycVfGCOFVnUXbeuahLwPAvximNs/TIrHmDSIyuns31/I9OyWUMWwzgWIRw4q
|
12
|
-
AaVA3j4OOaw8sfuWj0eQ1w/R1x5gAn+gMvqKRWKvCR/Ulmg5YRRqamc8aJsrvORl
|
13
|
-
TGI4J1kCgYEA7JWjN7Tj0v2Qd1tkCJm+o0mz2MqNl4/QaJ3VgEM0VuaJ1qdsd7jI
|
14
|
-
0/JhXbNKxr0mnmE+UqI5t/zQ0xWpsPqY1i+Y0B+SkGTpQpQBBGYZg064fufJOnYe
|
15
|
-
RPp2WADvmS5ZZZzujbILlwztctPzt4dPmGY8JlSKtdOQR4qeXI39n0cCgYEAyFCX
|
16
|
-
D6jb1R9tbd/g4UdWKoLyQPkZvSVnpAMgRmZO/V3YnaxfOBTDEKF/t7oUVL41xvM4
|
17
|
-
/5xuzJkhi7DxV0ImRr7+DDuUxO0r1vXDhQdzsq9wuxlZW+9hiPCYFpkMLR/Lj2MQ
|
18
|
-
zhUnQJ0FhFY/gDOnrQkEw9O2Gky61vh1LdCtHBUCgYBbmiijJg/cHr9z51fZGKY+
|
19
|
-
lQfklbCzEUTxbMNAsUSvrP2LtjGCPXLM1ZkrbYMzZgNw6Vf3KMbOXT4BrO6SDsVk
|
20
|
-
kPNLCh52eAv08ldee6W/OJio0lgQobFgpdVyh5I9rjuA431eMaTZLHE3t6cy1VpV
|
21
|
-
OKhrcupuMmc3vA1K6tNbewKBgCnkgNMrk14NBou2CIfUrXaSkCt6bSGbkwNADB3t
|
22
|
-
A5QFbmn7RKar4Oe3fshjyCC47vI+p6r9gkaTt+pJBRAkq3CcPPE9/Kz6lPKNz2gg
|
23
|
-
2NeDzWWztXZ+p71F4+jF9T/yqFXCeB9BWUYwEJlOmFUteGG9wxtZSXpSlbijmY4N
|
24
|
-
WEbJAoGAZnARe+/aW767Yej2shBwF8gwEvoKZMjl+VdsHCR9E2MsyRh/KsFSLp8a
|
25
|
-
O4axayeRI1ROSFd/6AX3ch1zHxHNomab1z1zBPuAnVrdoxnsiSWvMIg5RfAAPiBP
|
26
|
-
+N5kBedH6VmkGymOR03Tr3VYcyY9sHrCZfsD44880inh4Z/T3lA=
|
27
|
-
-----END RSA PRIVATE KEY-----
|
@@ -1,26 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIEXDCCA0SgAwIBAgIJAJ0IEx1+1dDLMA0GCSqGSIb3DQEBBQUAMHsxCzAJBgNV
|
3
|
-
BAYTAlhYMRIwEAYDVQQIEwlVbnRydXN0ZWQxEjAQBgNVBAcTCUV2aWx2aWxsZTEU
|
4
|
-
MBIGA1UEChMLRXZpbCBIYWNrZXIxGjAYBgNVBAsTEUF0dGFjayBEZXBhcnRtZW50
|
5
|
-
MRIwEAYDVQQDEwlsb2NhbGhvc3QwIBcNMTYwOTEwMTY0OTMzWhgPMjA1MDEyMDEx
|
6
|
-
NjQ5MzNaMHsxCzAJBgNVBAYTAlhYMRIwEAYDVQQIEwlVbnRydXN0ZWQxEjAQBgNV
|
7
|
-
BAcTCUV2aWx2aWxsZTEUMBIGA1UEChMLRXZpbCBIYWNrZXIxGjAYBgNVBAsTEUF0
|
8
|
-
dGFjayBEZXBhcnRtZW50MRIwEAYDVQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3
|
9
|
-
DQEBAQUAA4IBDwAwggEKAoIBAQCyKMLmY2mCc1A/18g+EsKNmiHysMianeGx2Zs2
|
10
|
-
O2J3FYO//C4qkiGENjqoGmILbH12ARjZT2K30/yr9x62oxUHe27OB07uFcgAkRER
|
11
|
-
GW2zTwl8ElrbvhXJTL8Y6WW4kKWzwT0lQR3Ag/swQmIXnAYQ1WXA/furQOGruUrw
|
12
|
-
yBJZHUDHXTcnHpB5l/EDWKYXaIqNPAwA6ZjZ7GYFGZamrrGfdHSjCiGZON2mWSKx
|
13
|
-
45NHWZnI1WA3uyvSjz61GNiSOwiDUWhgMqyqUzyspDEsZoJLcJ+LJxrT+/aAE6uq
|
14
|
-
xv+ChnGRUV6OX+OIrcysmJOcyzHGYnQAIGTNc8HZRqJ6/kC9AgMBAAGjgeAwgd0w
|
15
|
-
HQYDVR0OBBYEFLDHtNv69Ad0jKRLK15D6UxjUrOyMIGtBgNVHSMEgaUwgaKAFLDH
|
16
|
-
tNv69Ad0jKRLK15D6UxjUrOyoX+kfTB7MQswCQYDVQQGEwJYWDESMBAGA1UECBMJ
|
17
|
-
VW50cnVzdGVkMRIwEAYDVQQHEwlFdmlsdmlsbGUxFDASBgNVBAoTC0V2aWwgSGFj
|
18
|
-
a2VyMRowGAYDVQQLExFBdHRhY2sgRGVwYXJ0bWVudDESMBAGA1UEAxMJbG9jYWxo
|
19
|
-
b3N0ggkAnQgTHX7V0MswDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEA
|
20
|
-
msrLcoUQp0RT8PkOmB580e8QxZljRJVgtHJrQszFLyPtGW9bhIBsf3M72+BjPPvx
|
21
|
-
6QUO303y1bkcu/suG6WGa4gm59FGMOOvxSQKNC0q2SwmjDyZG3zNLvC3xE0olEte
|
22
|
-
y3zcxoN+8kvh9QDij2g51J97yqbwZ8v9midBYZ28d7Nq+I/9w6GxfEHHvBV/ACJx
|
23
|
-
AaoRS++oGS8DGyHoFWqoQ5f1c7vk0QhyG5a7YKT7jk30IKkwVte1pQCk8VOpF06K
|
24
|
-
TSA/WB/OlLThcZdcQlTw3YrrvCr95oqBDV+9AFXfaJkM+h/2AENtkJvhW3Y/jw7T
|
25
|
-
f71xbWagZXclIxthRIt+DQ==
|
26
|
-
-----END CERTIFICATE-----
|
@@ -1,27 +0,0 @@
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
2
|
-
MIIEpAIBAAKCAQEAsijC5mNpgnNQP9fIPhLCjZoh8rDImp3hsdmbNjtidxWDv/wu
|
3
|
-
KpIhhDY6qBpiC2x9dgEY2U9it9P8q/cetqMVB3tuzgdO7hXIAJERERlts08JfBJa
|
4
|
-
274VyUy/GOlluJCls8E9JUEdwIP7MEJiF5wGENVlwP37q0Dhq7lK8MgSWR1Ax103
|
5
|
-
Jx6QeZfxA1imF2iKjTwMAOmY2exmBRmWpq6xn3R0owohmTjdplkiseOTR1mZyNVg
|
6
|
-
N7sr0o8+tRjYkjsIg1FoYDKsqlM8rKQxLGaCS3Cfiyca0/v2gBOrqsb/goZxkVFe
|
7
|
-
jl/jiK3MrJiTnMsxxmJ0ACBkzXPB2Uaiev5AvQIDAQABAoIBAG+8jthN+yt8xRT1
|
8
|
-
cbo0q96Bj88VPwtx/846i1UNE6laTgJH2HCMrAauuEUcHufJSDqNX5dTabefdbYo
|
9
|
-
zBOB3ruNl6YSAVfjQ0fPs+OEjj/KT0mIfYGaCzHwN14Za9nAppxBkubdmxpV7GGN
|
10
|
-
ENZ73XYLUMEkygXTMHYyRSUUZiWK3jEuU6oPk5krzYbvf86c6BEtyMe9/T6625qM
|
11
|
-
BPVhFD6EEyZpp1SBcwvqzHqvZ1nc0mQ7fQhstlFmiBplzHPp8woEWd6NPhduyyAb
|
12
|
-
aTkZuy3TSOJ26FaA92wYR3KrAaQdxusNvEkRBxIVJDMRBWQawRi2v6mRKJWnrMe2
|
13
|
-
A1InbWUCgYEA3iX8OTuf/6KsEFthAwd0Ndo8TC/q/BRnHrlUi9y9eT2jKfk4kWdh
|
14
|
-
ge+VkdAoT1A07r8P+HOlbxTB7gBJEIzqjZ91WsG9wa5VP4N2kGDgFHRq/OgyWpDa
|
15
|
-
P5zB3sTWQLgzKlEJM3OgvfxX7IdsE+Uh7KkkrEI4q59U7VKz2x5HvRcCgYEAzU7C
|
16
|
-
ARAQsftN6x1wNIQs6qNBQiIU6N0plYOdVXgop3DOlZ4MZZ+iYi0zj1pS35ucmQtd
|
17
|
-
xZBkWH83F8ME1zz5Sn2SDL3L7coBP8EFD7kqHLNzFhQuSfQ2KYf1iBhRZLduseRx
|
18
|
-
NElB4H0UxRUHYCoPl73YFtOEsXIhoVO29vhL3UsCgYEAtxl177JuaOSqj3zR1A5T
|
19
|
-
wYNUCbPBKe6jJBa7UeAqJ4EfOBxbfLVKEC/qBtocL2s7hcDjJ/Qh2hGw2jtP/Z04
|
20
|
-
Qmy47IodnkLTrtrrYYsHhrSB7lxwDGeyC5Zn0PZKZeOtAGb0f30BczZHPgRMl4VX
|
21
|
-
VdoACR832HUmKcntxmAJ3xcCgYEAgcWjiWpvMyEnClNsRjW58oJI0JWcY+jPzSsJ
|
22
|
-
OyodgGEko5voOCAkUyxBJ/6u3ZqN7IsrtaJkWy/mUgW6PJbU+InQ1G7vxRlnmrXW
|
23
|
-
Di87eDLRrwYIkERmK/A9ec3tPN1ZgeZky+j2VACcLUryg41yl7avLRZ8DHGY4lF5
|
24
|
-
GDiwM2sCgYBbooN99DdxduI8ERICkqlDO0v8WM682xsX/6fljnNosyx++sH6hLuJ
|
25
|
-
mSpNt59mIi5eOJ9eHPiB/qw+FuZevU0wQgsOgyQ6t/AtLFQLmt6HOERUkgWOGipq
|
26
|
-
FEiawsFJfJtucyOzfhZGdjzXSzarLyHjjWpg206LiFFOP0whNnhE7g==
|
27
|
-
-----END RSA PRIVATE KEY-----
|
@@ -1,83 +0,0 @@
|
|
1
|
-
Certificate:
|
2
|
-
Data:
|
3
|
-
Version: 3 (0x2)
|
4
|
-
Serial Number:
|
5
|
-
9d:08:13:1d:7e:d5:d0:cc
|
6
|
-
Signature Algorithm: sha1WithRSAEncryption
|
7
|
-
Issuer: C=XX, ST=Untrusted, L=Evilville, O=Evil Hacker, OU=Attack Department, CN=localhost
|
8
|
-
Validity
|
9
|
-
Not Before: Sep 10 16:49:33 2016 GMT
|
10
|
-
Not After : Dec 1 16:49:33 2050 GMT
|
11
|
-
Subject: C=XX, ST=Untrusted, O=Evil Hacker, OU=Attack Department, CN=localhost
|
12
|
-
Subject Public Key Info:
|
13
|
-
Public Key Algorithm: rsaEncryption
|
14
|
-
RSA Public Key: (2048 bit)
|
15
|
-
Modulus (2048 bit):
|
16
|
-
00:9b:6b:27:d0:31:39:bc:3b:57:27:70:c2:ec:78:
|
17
|
-
dc:52:e9:8b:98:d9:ef:c0:8c:c6:cb:c1:8d:48:5c:
|
18
|
-
6e:17:8c:8d:bd:68:be:ad:77:40:e1:d2:bb:c1:20:
|
19
|
-
54:a6:7f:d5:d8:4b:5b:af:ac:a9:c7:8b:76:2b:da:
|
20
|
-
31:b9:13:0f:6f:19:69:fe:1b:60:ee:59:5a:0e:cb:
|
21
|
-
0b:e7:88:4e:89:1b:75:4c:0d:ef:21:c2:7a:38:bf:
|
22
|
-
95:96:5b:8e:eb:90:ca:8a:2c:09:1d:4c:bd:e5:e8:
|
23
|
-
4d:82:06:64:99:51:4c:2f:07:69:80:f6:87:a4:4c:
|
24
|
-
74:9c:d8:92:0d:fa:8c:d2:64:95:c5:a2:b3:9d:b4:
|
25
|
-
01:2d:03:68:94:3d:42:31:e0:cc:9f:0b:fe:d1:3c:
|
26
|
-
79:ed:8b:96:80:32:df:f1:e1:96:e2:3a:32:94:f7:
|
27
|
-
d4:05:40:5d:f7:17:b1:52:39:e6:7c:6b:92:be:30:
|
28
|
-
2e:88:b8:55:d1:df:fe:45:dd:93:c6:94:47:28:57:
|
29
|
-
e2:31:be:26:33:f7:e1:8a:d6:3a:a8:9d:c2:c5:5b:
|
30
|
-
51:0b:c2:21:20:68:72:eb:b6:0c:b0:58:13:e8:e4:
|
31
|
-
bd:1f:91:53:c8:3e:07:d4:16:37:70:f9:e1:07:d3:
|
32
|
-
56:18:39:de:9d:00:e6:f8:d5:32:71:67:df:7b:dc:
|
33
|
-
96:bb
|
34
|
-
Exponent: 65537 (0x10001)
|
35
|
-
X509v3 extensions:
|
36
|
-
X509v3 Basic Constraints:
|
37
|
-
CA:FALSE
|
38
|
-
Netscape Comment:
|
39
|
-
OpenSSL Generated Certificate
|
40
|
-
X509v3 Subject Key Identifier:
|
41
|
-
42:B1:92:1D:66:1A:E4:DC:49:3E:65:4B:79:3B:8C:E3:0E:96:0B:87
|
42
|
-
X509v3 Authority Key Identifier:
|
43
|
-
keyid:B0:C7:B4:DB:FA:F4:07:74:8C:A4:4B:2B:5E:43:E9:4C:63:52:B3:B2
|
44
|
-
|
45
|
-
Signature Algorithm: sha1WithRSAEncryption
|
46
|
-
a1:ed:c0:3f:02:4b:e4:77:2a:2c:98:b4:5f:3f:ed:a2:c8:a4:
|
47
|
-
91:5b:8e:7d:c2:83:3a:07:1d:e6:31:56:18:ef:bd:d8:53:ae:
|
48
|
-
a2:e8:b0:c3:f1:1f:43:5f:d9:23:56:10:a6:ff:df:42:b0:4f:
|
49
|
-
94:d5:38:28:21:b4:5e:14:f6:96:ca:89:0c:8d:11:57:1c:83:
|
50
|
-
1d:9b:bf:14:54:f3:50:60:f2:57:c0:41:37:47:7b:0d:46:f9:
|
51
|
-
21:65:65:05:12:58:34:a8:8e:38:14:8b:5a:e7:b3:c9:f4:6f:
|
52
|
-
3f:85:8c:3d:cd:87:d7:3e:76:e7:02:f0:11:4b:c5:af:61:e5:
|
53
|
-
7f:ec:1d:92:e6:70:8a:b2:1f:36:5b:25:29:bd:92:39:9a:e2:
|
54
|
-
d8:cf:95:f1:20:ac:68:61:fb:b2:28:3e:b4:01:52:d8:27:a6:
|
55
|
-
ef:81:14:27:af:8a:4f:05:fe:c8:02:86:6e:66:a3:c4:e5:c8:
|
56
|
-
0f:f6:91:6b:da:db:2c:f6:11:6c:bb:29:0c:e3:3d:87:b4:64:
|
57
|
-
ab:4a:5f:19:d3:75:11:68:ef:37:a5:f0:b2:2a:45:2e:d9:06:
|
58
|
-
d4:86:7e:44:56:15:53:3c:08:5e:8a:fd:be:46:e0:f4:4a:01:
|
59
|
-
d3:9f:bb:82:a5:ac:0d:6a:d4:b3:bc:11:eb:df:47:a2:14:5e:
|
60
|
-
3c:66:0f:5d
|
61
|
-
-----BEGIN CERTIFICATE-----
|
62
|
-
MIID4jCCAsqgAwIBAgIJAJ0IEx1+1dDMMA0GCSqGSIb3DQEBBQUAMHsxCzAJBgNV
|
63
|
-
BAYTAlhYMRIwEAYDVQQIEwlVbnRydXN0ZWQxEjAQBgNVBAcTCUV2aWx2aWxsZTEU
|
64
|
-
MBIGA1UEChMLRXZpbCBIYWNrZXIxGjAYBgNVBAsTEUF0dGFjayBEZXBhcnRtZW50
|
65
|
-
MRIwEAYDVQQDEwlsb2NhbGhvc3QwIBcNMTYwOTEwMTY0OTMzWhgPMjA1MDEyMDEx
|
66
|
-
NjQ5MzNaMGcxCzAJBgNVBAYTAlhYMRIwEAYDVQQIEwlVbnRydXN0ZWQxFDASBgNV
|
67
|
-
BAoTC0V2aWwgSGFja2VyMRowGAYDVQQLExFBdHRhY2sgRGVwYXJ0bWVudDESMBAG
|
68
|
-
A1UEAxMJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
69
|
-
m2sn0DE5vDtXJ3DC7HjcUumLmNnvwIzGy8GNSFxuF4yNvWi+rXdA4dK7wSBUpn/V
|
70
|
-
2Etbr6ypx4t2K9oxuRMPbxlp/htg7llaDssL54hOiRt1TA3vIcJ6OL+VlluO65DK
|
71
|
-
iiwJHUy95ehNggZkmVFMLwdpgPaHpEx0nNiSDfqM0mSVxaKznbQBLQNolD1CMeDM
|
72
|
-
nwv+0Tx57YuWgDLf8eGW4joylPfUBUBd9xexUjnmfGuSvjAuiLhV0d/+Rd2TxpRH
|
73
|
-
KFfiMb4mM/fhitY6qJ3CxVtRC8IhIGhy67YMsFgT6OS9H5FTyD4H1BY3cPnhB9NW
|
74
|
-
GDnenQDm+NUycWffe9yWuwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIB
|
75
|
-
DQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUQrGS
|
76
|
-
HWYa5NxJPmVLeTuM4w6WC4cwHwYDVR0jBBgwFoAUsMe02/r0B3SMpEsrXkPpTGNS
|
77
|
-
s7IwDQYJKoZIhvcNAQEFBQADggEBAKHtwD8CS+R3KiyYtF8/7aLIpJFbjn3CgzoH
|
78
|
-
HeYxVhjvvdhTrqLosMPxH0Nf2SNWEKb/30KwT5TVOCghtF4U9pbKiQyNEVccgx2b
|
79
|
-
vxRU81Bg8lfAQTdHew1G+SFlZQUSWDSojjgUi1rns8n0bz+FjD3Nh9c+ducC8BFL
|
80
|
-
xa9h5X/sHZLmcIqyHzZbJSm9kjma4tjPlfEgrGhh+7IoPrQBUtgnpu+BFCevik8F
|
81
|
-
/sgChm5mo8TlyA/2kWva2yz2EWy7KQzjPYe0ZKtKXxnTdRFo7zel8LIqRS7ZBtSG
|
82
|
-
fkRWFVM8CF6K/b5G4PRKAdOfu4KlrA1q1LO8EevfR6IUXjxmD10=
|
83
|
-
-----END CERTIFICATE-----
|
@@ -1,27 +0,0 @@
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
2
|
-
MIIEogIBAAKCAQEAm2sn0DE5vDtXJ3DC7HjcUumLmNnvwIzGy8GNSFxuF4yNvWi+
|
3
|
-
rXdA4dK7wSBUpn/V2Etbr6ypx4t2K9oxuRMPbxlp/htg7llaDssL54hOiRt1TA3v
|
4
|
-
IcJ6OL+VlluO65DKiiwJHUy95ehNggZkmVFMLwdpgPaHpEx0nNiSDfqM0mSVxaKz
|
5
|
-
nbQBLQNolD1CMeDMnwv+0Tx57YuWgDLf8eGW4joylPfUBUBd9xexUjnmfGuSvjAu
|
6
|
-
iLhV0d/+Rd2TxpRHKFfiMb4mM/fhitY6qJ3CxVtRC8IhIGhy67YMsFgT6OS9H5FT
|
7
|
-
yD4H1BY3cPnhB9NWGDnenQDm+NUycWffe9yWuwIDAQABAoIBAAXqs25SoW8QF0ZS
|
8
|
-
HamhBEpHx9++1EjRUzQonzdVBX/yAudmGHREKP0v56P3liFslniQjeIHQcNuBMaw
|
9
|
-
nNn95sWFAysAYdVRI4OSqVZcMxk3KWUG1sbDP6HvcUNzIuLG9V8DRCmQZV5eVK0R
|
10
|
-
jzzjAnJ75sFZIVrY6kuaVx0fH8NWr8d3NMEOivsXXfZy3QPFNrNiH46BB1dT9kMV
|
11
|
-
2+TOvS0G59jWWy/+fhRNQNjLIXiHt5zrZRA+u/f25r0UAWff7vp5l0k3ljQOB1rx
|
12
|
-
Gg3OfkjI3xdWwK3h3RH31rUBs/JTNhWKMbUCMTTSqWdJTrwCXAFq3jt4G92fPCI8
|
13
|
-
HJ5Ei2ECgYEAzRAWLJUPTEc1o7uCje65MSSrRxbjtrlFXWe7in+FS+ragsAxbHZ+
|
14
|
-
tCFRhtQyPtAWRpNZDeX9rLBki8VI8+PUsOUA6EnXdXzaCY087tJrge6LZP+zeDgk
|
15
|
-
LWSaVlX2GZmoIJ6jBjHmPLdimpz2zRsk9Duk58pI+Z39lDnp3xF73AsCgYEAwgYy
|
16
|
-
ubGai3uSWt/TsTjEpceoV6AFDXQqj8rIFhInjjJdCDNbLfXOEjSmV9bJJCsIBWgy
|
17
|
-
jOvOB/gLBb4rgdWuxlfNaDnlUDNZAT2uICLji7Zfer/WbibnHGZ9OHjqwVxaofed
|
18
|
-
1dOBiBv/NZzXDt1H4M6j+v7Nv2pTSEm7ERnrLhECgYByfFG08D+LOZJz6CMadLZF
|
19
|
-
/o/1b40Qnd1hKaHl0A4udV8rcnvlbz6L+LIYkW2/7dMR8f/dJ5N6Dz0DX9C8AW3k
|
20
|
-
mOXpyhgViu/8NzNWrnnBH9oJOE0NiGKCSVF1dCai4kugcpDXy5IcQdI2Of38QvRd
|
21
|
-
utL1adVWL2O8lpzAonVBQwKBgFF7juQDXXcEj2NQqrO7toI0xlL+ZgDPb2xx6fOy
|
22
|
-
7h++sOlXwAweNcvZhp5PGqvw0m6K4ufhw+X+2oov4k+lcL/lceM6pT44QkHOKIlg
|
23
|
-
fZVYIuMHG8Oo3NhFhoMn7NcFtR5eQk/hgn2p3FUkqACbF6umvKEVT0z7Fzy9ki1N
|
24
|
-
aEIxAoGAHXvJ0Sc63asb8jw9Z9mPXK3Ke2z4zgxKmx6NGIEqM771U6+RWX1lVs1V
|
25
|
-
wrvNP3whwhc12ZSeDxiVDQsIFepsghIJOcc26muY7n9cyR8Y+DsV2OsTeeXk+AAC
|
26
|
-
CKlz+DopSb4TNMYy3TiYTg8g7VUyrsssZ6TSYetLXJbqh/AEK78=
|
27
|
-
-----END RSA PRIVATE KEY-----
|