pax_global_header00006660000000000000000000000064146331142100014505gustar00rootroot0000000000000052 comment=47ae43747b8f1383c2db6692a35325e50653f9c4 acme-client-2.0.18/000077500000000000000000000000001463311421000137565ustar00rootroot00000000000000acme-client-2.0.18/.github/000077500000000000000000000000001463311421000153165ustar00rootroot00000000000000acme-client-2.0.18/.github/dependabot.yml000066400000000000000000000001661463311421000201510ustar00rootroot00000000000000version: 2 updates: - package-ecosystem: "github-actions" directory: "/" schedule: interval: "weekly" acme-client-2.0.18/.github/workflows/000077500000000000000000000000001463311421000173535ustar00rootroot00000000000000acme-client-2.0.18/.github/workflows/test.yml000066400000000000000000000011661463311421000210610ustar00rootroot00000000000000name: CI on: push: branches: [ master ] pull_request: branches: [ master ] jobs: test: runs-on: ubuntu-latest strategy: matrix: ruby-version: ['3.0', '3.1', '3.2', truffleruby] faraday-version: ['~> 1.10', '~> 2.9'] env: FARADAY_VERSION: ${{ matrix.faraday-version }} steps: - uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby-version }} bundler-cache: true # runs 'bundle install' and caches installed gems automatically - name: Run tests run: bundle exec rake spec acme-client-2.0.18/.gitignore000066400000000000000000000001741463311421000157500ustar00rootroot00000000000000/.bundle/ /.yardoc /Gemfile.lock /_yardoc/ /coverage/ /doc/ /pkg/ /spec/reports/ /tmp/ /vendor/bundle /.idea/ .tool-versionsacme-client-2.0.18/.rspec000066400000000000000000000000541463311421000150720ustar00rootroot00000000000000--format documentation --color --order rand acme-client-2.0.18/CHANGELOG.md000066400000000000000000000112631463311421000155720ustar00rootroot00000000000000## `2.0.18` * Fix an issue public key encoding. `OpenSSL::BN` cause keys with leading zero to fail. ## `2.0.17` * Fix bug where depending on call order `jws` get generated with the wrong `kid` ## `2.0.16` * Refactor Directory * Fix an issue where the client would crash when ACME provider return nonce for directory endpoint ## `2.0.15` * Also pass connection_options to Faraday for Client#get_nonce ## `2.0.14` * Fix Faraday HTTP exceptions leaking out, always raise `Acme::Client::Error` instead ## `2.0.13` * Add support for External Account Binding ## `2.0.12` * Update test matrix to current Ruby versions (2.7 to 3.2) * Support for Faraday retry 2.x ## `2.0.11` * Add support for error code `AlreadyRevoked` and `BadPublicKey` ## `2.0.10` * Support for Faraday 1.0 / 2.0 ## `2.0.9` * Support for Ruby 3.0 and Faraday 0.17.x * Raise when directory is rate limited ## `2.0.8` * Add support for the keyChange endpoint https://tools.ietf.org/html/rfc8555#section-7.3.5 ## `2.0.7` * Add support for alternate certificate chain * Change `Link` headers parsing to return array of value. This add support multiple entries at the same `rel` ## `2.0.6` * Allow Faraday up to `< 2.0` ## `2.0.5` * Use post-as-get * Remove deprecated keyAuthorization ## `2.0.4` * Add an option to retry bad nonce errors ## `2.0.3` * Do not try to set the body on GET request ## `2.0.2` * Fix constant lookup on InvalidDirectory * Forward connection options when fetching nonce * Fix splats without parenthesis warning ## `2.0.1` * Properly require URI ## `2.0.0` * Release of the `ACMEv2` branch ## `1.0.0` * Development for `ACMEv1` moved into `1.0.x` ## `0.6.3` * Handle Faraday::ConnectionFailed errors as Timeout error. ## `0.6.2` * Do not cache error type ## `0.6.1` * Fix typo in ECDSA curves ## `0.6.0` * Support external account keys ## `0.5.5` * Release script fixes. ## `0.5.4` * Enable ECDSA certificates ## `0.5.3` * Build release script ## `0.5.2` * Fix acme error names * ASN1 parsing improvements ## `0.5.1` * Set serial number of self-signed certificate ## `0.5.0` * Allow access to `Acme::Client#endpoint` and `Acme::Client#directory_uri` * Add `Acme::Client#fetch_authorization` * Setup cyclic dependency between challenges and their authorization for easier access of either with the other. * Drop `Acme::Client#challenge_from_hash` and `Acme::Client::Resources::Challenges::Base#to_h` in favor of the new API. * Delegate `Acme::Client::Resources::Challenges::Base#verify_status` to `Acme::Client::Resources::Authorization#verify_status` and make it update existing challenge objects. This makes it so that whichever is called, the correct status is reflected everywhere. * Add `Authorization#verify_status` - Recent versions of boulder will no longer process a challenge if the associated authorization is already valid, that is another challenge was previously solved. This means we need to allow people to poll on the authorizations status rather than the challenge status so they don't have to poll on the status of all challenges of an authorization all the time. See https://community.letsencrypt.org/t/upcoming-change-valid-authz-reuse/16982 and https://github.com/letsencrypt/boulder/issues/2057 ## `0.4.1` * Set the X509 version of the self-signed certificate * Fix requiring of time standard library ## `0.4.0` * Drop json-jwt dependency, implement JWS on our own * Drop ActiveSupport dependency ## `0.3.7` * Simplify internal `require` statements * Fix usage of json-jwt return value * Remove usage of deprecated `qualified_const_defined?` * Add user agent to upstream calls * Fix gem requiring * Set CSR version ## `0.3.6` * Handle non-json errors better ## `0.3.5` * Handle non protocol related server error ## `0.3.4` * Make `Acme::Client#challenge_from_hash` more strict with the arguments it receives ## `0.3.3` * Add new `unsupportedIdentifier` error from acme protocol ## `0.3.2` * Adds `rejectedIdentifier` error * Adds `RateLimited` error class * Clean up gem loading * Make client connection options configurable * Add URL to certificate ## `0.3.1` * Add ability to serialize challenges ## `0.3.0` * Use ISO8601 format for time parsing * Expose the authorization expiration timestamp. The ACME server returns an optional timestamp that signifies the expiration date of the domain authorization challenge. The time format is RFC3339 and can be parsed by Time#parse. See: https://letsencrypt.github.io/acme-spec/ Section 5.3 - expires * Update dns-01 record content to comply with ACME spec * Fix `SelfSignCertificate#default_not_before` ## `0.2.4` * Support tls-sni-01 ## `0.2.3` * Support certificate revocation * Move everything under the `Acme::Client` namespace * Improved errors acme-client-2.0.18/Gemfile000066400000000000000000000003111463311421000152440ustar00rootroot00000000000000source 'https://rubygems.org' gemspec if faraday_version = ENV['FARADAY_VERSION'] gem 'faraday', faraday_version end group :development, :test do gem 'pry' gem 'ruby-prof', require: false end acme-client-2.0.18/LICENSE.txt000066400000000000000000000020721463311421000156020ustar00rootroot00000000000000The MIT License (MIT) Copyright (c) 2015 Charles Barbier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. acme-client-2.0.18/README.md000066400000000000000000000223741463311421000152450ustar00rootroot00000000000000# Acme::Client `acme-client` is a client implementation of the ACME / [RFC 8555](https://tools.ietf.org/html/rfc8555) protocol in Ruby. You can find the ACME reference implementations of the [server](https://github.com/letsencrypt/boulder) in Go and the [client](https://github.com/certbot/certbot) in Python. ACME is part of the [Letsencrypt](https://letsencrypt.org/) project, which goal is to provide free SSL/TLS certificates with automation of the acquiring and renewal process. ## Installation Via RubyGems: $ gem install acme-client Or add it to a Gemfile: ```ruby gem 'acme-client' ``` ## Usage - [Acme::Client](#acmeclient) - [Installation](#installation) - [Usage](#usage) - [Setting up a client](#setting-up-a-client) - [Account management](#account-management) - [Obtaining a certificate](#obtaining-a-certificate) - [Ordering a certificate](#ordering-a-certificate) - [Preparing for HTTP challenge](#preparing-for-http-challenge) - [Preparing for DNS challenge](#preparing-for-dns-challenge) - [Requesting a challenge verification](#requesting-a-challenge-verification) - [Downloading a certificate](#downloading-a-certificate) - [Ordering an alternative certificate](#ordering-an-alternative-certificate) - [Extra](#extra) - [Certificate revokation](#certificate-revokation) - [Certificate renewal](#certificate-renewal) - [Not implemented](#not-implemented) - [Requirements](#requirements) - [Development](#development) - [Pull request?](#pull-request) - [License](#license) ## Setting up a client The client is initialized with a private key and the directory of your ACME provider. LetsEncrypt's `directory` is `https://acme-v02.api.letsencrypt.org/directory`. They also have a staging endpoint at `https://acme-staging-v02.api.letsencrypt.org/directory`. `acme-ruby` expects `OpenSSL::PKey::RSA` or `OpenSSL::PKey::EC` You can generate one in Ruby using OpenSSL. ```ruby require 'openssl' private_key = OpenSSL::PKey::RSA.new(4096) ``` Or load one from a PEM file ```ruby require 'openssl' OpenSSL::PKey::RSA.new(File.read('/path/to/private_key.pem')) ``` See [RSA](https://ruby.github.io/openssl/OpenSSL/PKey/RSA.html) and [EC](https://ruby.github.io/openssl/OpenSSL/PKey/EC.html) for documentation. ```ruby client = Acme::Client.new(private_key: private_key, directory: 'https://acme-staging-v02.api.letsencrypt.org/directory') ``` If your account is already registered, you can save some API calls by passing your key ID directly. This will avoid an unnecessary API call to retrieve it from your private key. ```ruby client = Acme::Client.new(private_key: private_key, directory: 'https://acme-staging-v02.api.letsencrypt.org/directory', kid: 'https://example.com/acme/acct/1') ``` ## Account management Accounts are tied to a private key. Before being allowed to create orders, the account must be registered and the ToS accepted using the private key. The account will be assigned a key ID. ```ruby client = Acme::Client.new(private_key: private_key, directory: 'https://acme-staging-v02.api.letsencrypt.org/directory') account = client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) ``` After the registration you can retrieve the account key indentifier (kid). ```ruby client = Acme::Client.new(private_key: private_key, directory: 'https://acme-staging-v02.api.letsencrypt.org/directory') account = client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) account.kid # => ``` If you already have an existing account (for example one created in ACME v1) please note that unless the `kid` is provided at initialization, the client will lazy load the `kid` by doing a `POST` to `newAccount` whenever the `kid` is required. Therefore, you can easily get your `kid` for an existing account and (if needed) store it for reuse: ```ruby client = Acme::Client.new(private_key: private_key, directory: 'https://acme-staging-v02.api.letsencrypt.org/directory') # kid is not set, therefore a call to newAccount is made to lazy-initialize the kid client.kid => "https://acme-staging-v02.api.letsencrypt.org/acme/acct/000000" ``` ## External Account Binding support You can use External Account Binding by providing a `external_account_binding` with a `kid` and `hmac_key`. ```ruby client = Acme::Client.new(private_key: private_key, directory: 'https://acme.zerossl.com/v2/DV90') account = client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true, external_account_binding: { kid: "your kid", hmac_key: "your hmac key"}) ``` ## Obtaining a certificate ### Ordering a certificate To order a new certificate, the client must provide a list of identifiers. The returned order will contain a list of `Authorization` that need to be completed in other to finalize the order, generally one per identifier. Each authorization contains multiple challenges, typically a `dns-01` and a `http-01` challenge. The applicant is only required to complete one of the challenges. You can access the challenge you wish to complete using the `#dns` or `#http` method. ```ruby order = client.new_order(identifiers: ['example.com']) authorization = order.authorizations.first challenge = authorization.http ``` ### Preparing for HTTP challenge To complete the HTTP challenge, you must return a file using HTTP. The path follows the following format: > .well-known/acme-challenge/#{token} And the file content is the key authorization. The HTTP01 object has utility methods to generate them. ```ruby > http_challenge.content_type # => 'text/plain' > http_challenge.file_content # => example_token.TO1xJ0UDgfQ8WY5zT3txynup87UU3PhcDEIcuPyw4QU > http_challenge.filename # => '.well-known/acme-challenge/example_token' > http_challenge.token # => 'example_token' ``` For test purposes you can just save the challenge file and use Ruby to serve it: ```bash ruby -run -e httpd public -p 8080 --bind-address 0.0.0.0 ``` ### Preparing for DNS challenge To complete the DNS challenge, you must set a DNS record to prove that you control the domain. The DNS01 object has utility methods to generate them. ```ruby dns_challenge.record_name # => '_acme-challenge' dns_challenge.record_type # => 'TXT' dns_challenge.record_content # => 'HRV3PS5sRDyV-ous4HJk4z24s5JjmUTjcCaUjFt28-8' ``` ### Requesting a challenge verification Once you are ready to complete the challenge, you can request the server perform the verification. ```ruby challenge.request_validation ``` The validation is performed asynchronously and can take some time to be performed by the server. You can poll until its status changes. ```ruby while challenge.status == 'pending' sleep(2) challenge.reload end challenge.status # => 'valid' ``` ### Downloading a certificate Once all required authorizations have been validated through challenges, the order can be finalized using a CSR ([Certificate Signing Request](https://en.wikipedia.org/wiki/Certificate_signing_request)). A CSR can be slightly tricky to generate using OpenSSL from Ruby standard library. `acme-client` provide a utility class `CertificateRequest` to help with that. You'll need to use a different private key for the certificate request than the one you use for your `Acme::Client` account. Certificate generation happens asynchronously. You may need to poll. ```ruby csr = Acme::Client::CertificateRequest.new(private_key: a_different_private_key, subject: { common_name: 'example.com' }) order.finalize(csr: csr) while order.status == 'processing' sleep(1) order.reload end order.certificate # => PEM-formatted certificate ``` ### Ordering an alternative certificate The provider may provide alternate certificate with different certificate chain. You can specify the required chain and the client will automatically download alternate certificate and match the chain by name. ```ruby begin order.certificate(force_chain: 'DST Root CA X3') rescue Acme::Client::Error::ForcedChainNotFound order.certificate end ``` Note: if the specified forced chain doesn't match an existing alternative certificate the method will raise an `Acme::Client::Error::ForcedChainNotFound` error. Learn more about the original Github issue for this client [here](https://github.com/unixcharles/acme-client/issues/186), information from Let's Encrypt [here](https://letsencrypt.org/2019/04/15/transitioning-to-isrg-root.html), and cross-signing [here](https://letsencrypt.org/certificates/#cross-signing). ## Extra ### Certificate revokation To revoke a certificate you can call `#revoke` with the certificate. ```ruby client.revoke(certificate: certificate) ``` ### Certificate renewal There is no renewal process, just create a new order. ### Account Key Roll-over To change the key used for an account you can call `#account_key_change` with the new private key or jwk. ```ruby require 'openssl' new_private_key = OpenSSL::PKey::RSA.new(4096) client.account_key_change(new_private_key: new_private_key) ``` ## Requirements Ruby >= 3.0 ## Development All the tests use VCR to mock the interaction with the server. If you need to record new interaction you can specify the directory URL with the `ACME_DIRECTORY_URL` environment variable. ``` ACME_DIRECTORY_URL=https://acme-staging-v02.api.letsencrypt.org/directory rspec ``` ## Pull request? Yes. ## License [MIT License](http://opensource.org/licenses/MIT) acme-client-2.0.18/Rakefile000066400000000000000000000001641463311421000154240ustar00rootroot00000000000000require 'bundler/gem_tasks' require 'rspec/core/rake_task' RSpec::Core::RakeTask.new(:spec) task default: [:spec] acme-client-2.0.18/acme-client.gemspec000066400000000000000000000020761463311421000175110ustar00rootroot00000000000000lib = File.expand_path('../lib', __FILE__) $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) require 'acme/client/version' Gem::Specification.new do |spec| spec.name = 'acme-client' spec.version = Acme::Client::VERSION spec.authors = ['Charles Barbier'] spec.email = ['unixcharles@gmail.com'] spec.summary = 'Client for the ACME protocol.' spec.homepage = 'http://github.com/unixcharles/acme-client' spec.license = 'MIT' spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) || f.start_with?('.') } spec.require_paths = ['lib'] spec.required_ruby_version = '>= 2.3.0' spec.add_development_dependency 'rake', '~> 13.0' spec.add_development_dependency 'rspec', '~> 3.9' spec.add_development_dependency 'vcr', '~> 2.9' spec.add_development_dependency 'webmock', '~> 3.8' spec.add_development_dependency 'webrick', '~> 1.7' spec.add_runtime_dependency 'faraday', '>= 1.0', '< 3.0.0' spec.add_runtime_dependency 'faraday-retry', '>= 1.0', '< 3.0.0' end acme-client-2.0.18/bin/000077500000000000000000000000001463311421000145265ustar00rootroot00000000000000acme-client-2.0.18/bin/console000077500000000000000000000001341463311421000161140ustar00rootroot00000000000000#!/usr/bin/env ruby require 'bundler/setup' require 'acme-client' require 'pry' Pry.start acme-client-2.0.18/bin/generate_keystash000077500000000000000000000003001463311421000201520ustar00rootroot00000000000000#!/usr/bin/env ruby require 'bundler/setup' require 'acme-client' require File.join(File.dirname(__FILE__), '../spec/support/ssl_helper') SSLHelper::KEYSTASH.generate_keystash!(size: 200) acme-client-2.0.18/bin/release000077500000000000000000000007601463311421000160770ustar00rootroot00000000000000#!/usr/bin/env ruby require 'bundler/setup' require 'acme-client' version = Acme::Client::VERSION def `(command) puts super(command) if $?.exitstatus > 0 fail("failed at: #{command}") end end `git add CHANGELOG.md` `git add lib/acme/client/version.rb` `git commit -m "bump to #{version}"` `git pull --rebase origin master` `git tag 'v#{version}'` `git push --tags origin master` `gem build acme-client.gemspec` `gem push acme-client-#{version}.gem` `rm acme-client-#{version}.gem` acme-client-2.0.18/bin/setup000077500000000000000000000000721463311421000156130ustar00rootroot00000000000000#!/bin/bash set -euo pipefail IFS=$'\n\t' bundle install acme-client-2.0.18/lib/000077500000000000000000000000001463311421000145245ustar00rootroot00000000000000acme-client-2.0.18/lib/acme-client.rb000066400000000000000000000000261463311421000172300ustar00rootroot00000000000000require 'acme/client' acme-client-2.0.18/lib/acme/000077500000000000000000000000001463311421000154315ustar00rootroot00000000000000acme-client-2.0.18/lib/acme/client.rb000066400000000000000000000246041463311421000172420ustar00rootroot00000000000000# frozen_string_literal: true require 'faraday' require 'faraday/retry' require 'json' require 'openssl' require 'digest' require 'forwardable' require 'base64' require 'time' require 'uri' module Acme; end class Acme::Client; end require 'acme/client/version' require 'acme/client/http_client' require 'acme/client/certificate_request' require 'acme/client/self_sign_certificate' require 'acme/client/resources' require 'acme/client/jwk' require 'acme/client/error' require 'acme/client/util' require 'acme/client/chain_identifier' class Acme::Client DEFAULT_DIRECTORY = 'http://127.0.0.1:4000/directory'.freeze repo_url = 'https://github.com/unixcharles/acme-client' USER_AGENT = "Acme::Client v#{Acme::Client::VERSION} (#{repo_url})".freeze CONTENT_TYPES = { pem: 'application/pem-certificate-chain' } def initialize(jwk: nil, kid: nil, private_key: nil, directory: DEFAULT_DIRECTORY, connection_options: {}, bad_nonce_retry: 0) if jwk.nil? && private_key.nil? raise ArgumentError, 'must specify jwk or private_key' end @jwk = if jwk jwk else Acme::Client::JWK.from_private_key(private_key) end @kid, @connection_options = kid, connection_options @bad_nonce_retry = bad_nonce_retry @directory_url = URI(directory) @nonces ||= [] end attr_reader :jwk, :nonces def new_account(contact:, terms_of_service_agreed: nil, external_account_binding: nil) new_account_endpoint = endpoint_for(:new_account) payload = { contact: Array(contact) } if terms_of_service_agreed payload[:termsOfServiceAgreed] = terms_of_service_agreed end if external_account_binding kid, hmac_key = external_account_binding.values_at(:kid, :hmac_key) if kid.nil? || hmac_key.nil? raise ArgumentError, 'must specify kid and hmac_key key for external_account_binding' end hmac = Acme::Client::JWK::HMAC.new(Base64.urlsafe_decode64(hmac_key)) external_account_payload = hmac.jws(header: { kid: kid, url: new_account_endpoint }, payload: @jwk) payload[:externalAccountBinding] = JSON.parse(external_account_payload) end response = post(new_account_endpoint, payload: payload, mode: :jws) @kid = response.headers.fetch(:location) if response.body.nil? || response.body.empty? account else arguments = attributes_from_account_response(response) Acme::Client::Resources::Account.new(self, url: @kid, **arguments) end end def account_update(contact: nil, terms_of_service_agreed: nil) payload = {} payload[:contact] = Array(contact) if contact payload[:termsOfServiceAgreed] = terms_of_service_agreed if terms_of_service_agreed response = post(kid, payload: payload) arguments = attributes_from_account_response(response) Acme::Client::Resources::Account.new(self, url: kid, **arguments) end def account_deactivate response = post(kid, payload: { status: 'deactivated' }) arguments = attributes_from_account_response(response) Acme::Client::Resources::Account.new(self, url: kid, **arguments) end def account_key_change(new_private_key: nil, new_jwk: nil) if new_private_key.nil? && new_jwk.nil? raise ArgumentError, 'must specify new_jwk or new_private_key' end old_jwk = jwk new_jwk ||= Acme::Client::JWK.from_private_key(new_private_key) inner_payload_header = { url: endpoint_for(:key_change) } inner_payload = { account: kid, oldKey: old_jwk.to_h } payload = JSON.parse(new_jwk.jws(header: inner_payload_header, payload: inner_payload)) response = post(endpoint_for(:key_change), payload: payload, mode: :kid) arguments = attributes_from_account_response(response) @jwk = new_jwk Acme::Client::Resources::Account.new(self, url: kid, **arguments) end def account @kid ||= begin response = post(endpoint_for(:new_account), payload: { onlyReturnExisting: true }, mode: :jwk) response.headers.fetch(:location) end response = post_as_get(@kid) arguments = attributes_from_account_response(response) Acme::Client::Resources::Account.new(self, url: @kid, **arguments) end def kid @kid ||= account.kid end def new_order(identifiers:, not_before: nil, not_after: nil) payload = {} payload['identifiers'] = prepare_order_identifiers(identifiers) payload['notBefore'] = not_before if not_before payload['notAfter'] = not_after if not_after response = post(endpoint_for(:new_order), payload: payload) arguments = attributes_from_order_response(response) Acme::Client::Resources::Order.new(self, **arguments) end def order(url:) response = post_as_get(url) arguments = attributes_from_order_response(response) Acme::Client::Resources::Order.new(self, **arguments.merge(url: url)) end def finalize(url:, csr:) unless csr.respond_to?(:to_der) raise ArgumentError, 'csr must respond to `#to_der`' end base64_der_csr = Acme::Client::Util.urlsafe_base64(csr.to_der) response = post(url, payload: { csr: base64_der_csr }) arguments = attributes_from_order_response(response) Acme::Client::Resources::Order.new(self, **arguments) end def certificate(url:, force_chain: nil) response = download(url, format: :pem) pem = response.body return pem if force_chain.nil? return pem if ChainIdentifier.new(pem).match_name?(force_chain) alternative_urls = Array(response.headers.dig('link', 'alternate')) alternative_urls.each do |alternate_url| response = download(alternate_url, format: :pem) pem = response.body if ChainIdentifier.new(pem).match_name?(force_chain) return pem end end raise Acme::Client::Error::ForcedChainNotFound, "Could not find any matching chain for `#{force_chain}`" end def authorization(url:) response = post_as_get(url) arguments = attributes_from_authorization_response(response) Acme::Client::Resources::Authorization.new(self, url: url, **arguments) end def deactivate_authorization(url:) response = post(url, payload: { status: 'deactivated' }) arguments = attributes_from_authorization_response(response) Acme::Client::Resources::Authorization.new(self, url: url, **arguments) end def challenge(url:) response = post_as_get(url) arguments = attributes_from_challenge_response(response) Acme::Client::Resources::Challenges.new(self, **arguments) end def request_challenge_validation(url:, key_authorization: nil) response = post(url, payload: {}) arguments = attributes_from_challenge_response(response) Acme::Client::Resources::Challenges.new(self, **arguments) end def revoke(certificate:, reason: nil) der_certificate = if certificate.respond_to?(:to_der) certificate.to_der else OpenSSL::X509::Certificate.new(certificate).to_der end base64_der_certificate = Acme::Client::Util.urlsafe_base64(der_certificate) payload = { certificate: base64_der_certificate } payload[:reason] = reason unless reason.nil? response = post(endpoint_for(:revoke_certificate), payload: payload) response.success? end def get_nonce http_client = Acme::Client::HTTPClient.new_connection(url: endpoint_for(:new_nonce), options: @connection_options) response = http_client.head(nil, nil) nonces << response.headers['replay-nonce'] true end def directory @directory ||= load_directory end def meta directory.meta end def terms_of_service directory.terms_of_service end def website directory.website end def caa_identities directory.caa_identities end def external_account_required directory.external_account_required end private def load_directory Acme::Client::Resources::Directory.new(self, directory: fetch_directory) end def fetch_directory response = get(@directory_url) response.body rescue JSON::ParserError => exception raise Acme::Client::Error::InvalidDirectory, "Invalid directory url\n#{@directory_url} did not return a valid directory\n#{exception.inspect}" end def prepare_order_identifiers(identifiers) if identifiers.is_a?(Hash) [identifiers] else Array(identifiers).map do |identifier| if identifier.is_a?(String) { type: 'dns', value: identifier } else identifier end end end end def attributes_from_account_response(response) extract_attributes( response.body, :status, [:term_of_service, 'termsOfServiceAgreed'], :contact ) end def attributes_from_order_response(response) attributes = extract_attributes( response.body, :status, :expires, [:finalize_url, 'finalize'], [:authorization_urls, 'authorizations'], [:certificate_url, 'certificate'], :identifiers ) attributes[:url] = response.headers[:location] if response.headers[:location] attributes end def attributes_from_authorization_response(response) extract_attributes(response.body, :identifier, :status, :expires, :challenges, :wildcard) end def attributes_from_challenge_response(response) extract_attributes(response.body, :status, :url, :token, :type, :error) end def extract_attributes(input, *attributes) attributes .map {|fields| Array(fields) } .each_with_object({}) { |(key, field), hash| field ||= key.to_s hash[key] = input[field] } end def post(url, payload: {}, mode: :kid) connection = connection_for(url: url, mode: mode) connection.post(url, payload) end def post_as_get(url, mode: :kid) connection = connection_for(url: url, mode: mode) connection.post(url, nil) end def get(url, mode: :get) connection = connection_for(url: url, mode: mode) connection.get(url) end def download(url, format:) connection = connection_for(url: url, mode: :kid) connection.post do |request| request.url(url) request.headers['Accept'] = CONTENT_TYPES.fetch(format) end end def connection_for(url:, mode:) uri = URI(url) endpoint = "#{uri.scheme}://#{uri.hostname}:#{uri.port}" @connections ||= {} @connections[mode] ||= {} @connections[mode][endpoint] ||= Acme::Client::HTTPClient.new_acme_connection( url: URI(endpoint), mode: mode, client: self, options: @connection_options, bad_nonce_retry: @bad_nonce_retry ) end def endpoint_for(key) directory.endpoint_for(key) end end acme-client-2.0.18/lib/acme/client/000077500000000000000000000000001463311421000167075ustar00rootroot00000000000000acme-client-2.0.18/lib/acme/client/certificate_request.rb000066400000000000000000000066351463311421000233000ustar00rootroot00000000000000class Acme::Client::CertificateRequest extend Forwardable DEFAULT_KEY_LENGTH = 2048 DEFAULT_DIGEST = OpenSSL::Digest::SHA256 SUBJECT_KEYS = { common_name: 'CN', country_name: 'C', organization_name: 'O', organizational_unit: 'OU', state_or_province: 'ST', locality_name: 'L' }.freeze SUBJECT_TYPES = { 'CN' => OpenSSL::ASN1::UTF8STRING, 'C' => OpenSSL::ASN1::UTF8STRING, 'O' => OpenSSL::ASN1::UTF8STRING, 'OU' => OpenSSL::ASN1::UTF8STRING, 'ST' => OpenSSL::ASN1::UTF8STRING, 'L' => OpenSSL::ASN1::UTF8STRING }.freeze attr_reader :private_key, :common_name, :names, :subject def_delegators :csr, :to_pem, :to_der def initialize(common_name: nil, names: [], private_key: generate_private_key, subject: {}, digest: DEFAULT_DIGEST.new) @digest = digest @private_key = private_key @subject = normalize_subject(subject) @common_name = common_name || @subject[SUBJECT_KEYS[:common_name]] || @subject[:common_name] @names = names.to_a.dup normalize_names @subject[SUBJECT_KEYS[:common_name]] ||= @common_name validate_subject end def csr @csr ||= generate end private def generate_private_key OpenSSL::PKey::RSA.new(DEFAULT_KEY_LENGTH) end def normalize_subject(subject) @subject = subject.each_with_object({}) do |(key, value), hash| hash[SUBJECT_KEYS.fetch(key, key)] = value.to_s end end def normalize_names if @common_name @names.unshift(@common_name) unless @names.include?(@common_name) else raise ArgumentError, 'No common name and no list of names given' if @names.empty? @common_name = @names.first end end def validate_subject validate_subject_attributes validate_subject_common_name end def validate_subject_attributes extra_keys = @subject.keys - SUBJECT_KEYS.keys - SUBJECT_KEYS.values return if extra_keys.empty? raise ArgumentError, "Unexpected subject attributes given: #{extra_keys.inspect}" end def validate_subject_common_name return if @common_name == @subject[SUBJECT_KEYS[:common_name]] raise ArgumentError, 'Conflicting common name given in arguments and subject' end def generate OpenSSL::X509::Request.new.tap do |csr| if @private_key.is_a?(OpenSSL::PKey::EC) && RbConfig::CONFIG['MAJOR'] == '2' && RbConfig::CONFIG['MINOR'].to_i < 4 # OpenSSL::PKey::EC does not respect classic PKey interface (as defined by # PKey::RSA and PKey::DSA) until ruby 2.4. # Supporting this interface needs monkey patching of OpenSSL:PKey::EC, or # subclassing it. Here, use a subclass. @private_key = ECKeyPatch.new(@private_key) end csr.public_key = @private_key csr.subject = generate_subject csr.version = 2 add_extension(csr) csr.sign @private_key, @digest end end def generate_subject OpenSSL::X509::Name.new( @subject.map {|name, value| [name, value, SUBJECT_TYPES[name]] } ) end def add_extension(csr) extension = OpenSSL::X509::ExtensionFactory.new.create_extension( 'subjectAltName', @names.map { |name| "DNS:#{name}" }.join(', '), false ) csr.add_attribute( OpenSSL::X509::Attribute.new( 'extReq', OpenSSL::ASN1::Set.new([OpenSSL::ASN1::Sequence.new([extension])]) ) ) end end require 'acme/client/certificate_request/ec_key_patch' acme-client-2.0.18/lib/acme/client/certificate_request/000077500000000000000000000000001463311421000227415ustar00rootroot00000000000000acme-client-2.0.18/lib/acme/client/certificate_request/ec_key_patch.rb000066400000000000000000000002351463311421000257040ustar00rootroot00000000000000# Class to handle bug # class Acme::Client::CertificateRequest::ECKeyPatch < OpenSSL::PKey::EC alias private? private_key? alias public? public_key? end acme-client-2.0.18/lib/acme/client/chain_identifier.rb000066400000000000000000000011471463311421000225230ustar00rootroot00000000000000class Acme::Client class ChainIdentifier def initialize(pem_certificate_chain) @pem_certificate_chain = pem_certificate_chain end def match_name?(name) issuers.any? do |issuer| issuer.include?(name) end end private def issuers x509_certificates.map(&:issuer).map(&:to_s) end def x509_certificates @x509_certificates ||= splitted_pem_certificates.map { |pem| OpenSSL::X509::Certificate.new(pem) } end def splitted_pem_certificates @pem_certificate_chain.each_line.slice_after(/END CERTIFICATE/).map(&:join) end end end acme-client-2.0.18/lib/acme/client/error.rb000066400000000000000000000054221463311421000203700ustar00rootroot00000000000000class Acme::Client::Error < StandardError class Timeout < Acme::Client::Error; end class ClientError < Acme::Client::Error; end class InvalidDirectory < ClientError; end class UnsupportedOperation < ClientError; end class UnsupportedChallengeType < ClientError; end class NotFound < ClientError; end class CertificateNotReady < ClientError; end class ForcedChainNotFound < ClientError; end class ServerError < Acme::Client::Error; end class AlreadyRevoked < ServerError; end class BadCSR < ServerError; end class BadNonce < ServerError; end class BadPublicKey < ServerError; end class BadSignatureAlgorithm < ServerError; end class InvalidContact < ServerError; end class UnsupportedContact < ServerError; end class ExternalAccountRequired < ServerError; end class AccountDoesNotExist < ServerError; end class Malformed < ServerError; end class RateLimited < ServerError; end class RejectedIdentifier < ServerError; end class ServerInternal < ServerError; end class Unauthorized < ServerError; end class UnsupportedIdentifier < ServerError; end class UserActionRequired < ServerError; end class BadRevocationReason < ServerError; end class Caa < ServerError; end class Dns < ServerError; end class Connection < ServerError; end class Tls < ServerError; end class IncorrectResponse < ServerError; end ACME_ERRORS = { 'urn:ietf:params:acme:error:alreadyRevoked' => AlreadyRevoked, 'urn:ietf:params:acme:error:badCSR' => BadCSR, 'urn:ietf:params:acme:error:badNonce' => BadNonce, 'urn:ietf:params:acme:error:badPublicKey' => BadPublicKey, 'urn:ietf:params:acme:error:badSignatureAlgorithm' => BadSignatureAlgorithm, 'urn:ietf:params:acme:error:invalidContact' => InvalidContact, 'urn:ietf:params:acme:error:unsupportedContact' => UnsupportedContact, 'urn:ietf:params:acme:error:externalAccountRequired' => ExternalAccountRequired, 'urn:ietf:params:acme:error:accountDoesNotExist' => AccountDoesNotExist, 'urn:ietf:params:acme:error:malformed' => Malformed, 'urn:ietf:params:acme:error:rateLimited' => RateLimited, 'urn:ietf:params:acme:error:rejectedIdentifier' => RejectedIdentifier, 'urn:ietf:params:acme:error:serverInternal' => ServerInternal, 'urn:ietf:params:acme:error:unauthorized' => Unauthorized, 'urn:ietf:params:acme:error:unsupportedIdentifier' => UnsupportedIdentifier, 'urn:ietf:params:acme:error:userActionRequired' => UserActionRequired, 'urn:ietf:params:acme:error:badRevocationReason' => BadRevocationReason, 'urn:ietf:params:acme:error:caa' => Caa, 'urn:ietf:params:acme:error:dns' => Dns, 'urn:ietf:params:acme:error:connection' => Connection, 'urn:ietf:params:acme:error:tls' => Tls, 'urn:ietf:params:acme:error:incorrectResponse' => IncorrectResponse } end acme-client-2.0.18/lib/acme/client/http_client.rb000066400000000000000000000100731463311421000215520ustar00rootroot00000000000000# frozen_string_literal: true module Acme::Client::HTTPClient # Creates and returns a new HTTP client, with default settings. # # @param url [URI:HTTPS] # @param options [Hash] # @return [Faraday::Connection] def self.new_connection(url:, options: {}) Faraday.new(url, options) do |configuration| configuration.use Acme::Client::HTTPClient::ErrorMiddleware yield(configuration) if block_given? configuration.headers[:user_agent] = Acme::Client::USER_AGENT configuration.adapter Faraday.default_adapter end end # Creates and returns a new HTTP client designed for the Acme-protocol, with default settings. # # @param url [URI:HTTPS] # @param client [Acme::Client] # @param mode [Symbol] # @param options [Hash] # @param bad_nonce_retry [Integer] # @return [Faraday::Connection] def self.new_acme_connection(url:, client:, mode:, options: {}, bad_nonce_retry: 0) new_connection(url: url, options: options) do |configuration| if bad_nonce_retry > 0 configuration.request(:retry, max: bad_nonce_retry, methods: Faraday::Connection::METHODS, exceptions: [Acme::Client::Error::BadNonce]) end configuration.use Acme::Client::HTTPClient::AcmeMiddleware, client: client, mode: mode yield(configuration) if block_given? end end # ErrorMiddleware ensures the HTTP Client would not raise exceptions outside the Acme namespace. # # Exceptions are rescued and re-packaged as Acme exceptions. class ErrorMiddleware < Faraday::Middleware # Implements the Rack-alike Faraday::Middleware interface. def call(env) @app.call(env) rescue Faraday::TimeoutError, Faraday::ConnectionFailed raise Acme::Client::Error::Timeout end end # AcmeMiddleware implements the Acme-protocol requirements for JWK requests. class AcmeMiddleware < Faraday::Middleware attr_reader :env, :response, :client CONTENT_TYPE = 'application/jose+json' def initialize(app, options) super(app) @client = options.fetch(:client) @mode = options.fetch(:mode) end def call(env) @env = env @env[:request_headers]['Content-Type'] = CONTENT_TYPE if @env.method != :get @env.body = client.jwk.jws(header: jws_header, payload: env.body) end @app.call(env).on_complete { |response_env| on_complete(response_env) } end def on_complete(env) @env = env raise_on_not_found! store_nonce env.body = decode_body env.response_headers['Link'] = decode_link_headers return if env.success? raise_on_error! end private def jws_header headers = { nonce: pop_nonce, url: env.url.to_s } headers[:kid] = client.kid if @mode == :kid headers end def raise_on_not_found! raise Acme::Client::Error::NotFound, env.url.to_s if env.status == 404 end def raise_on_error! raise error_class, error_message end def error_message if env.body.is_a? Hash env.body['detail'] else "Error message: #{env.body}" end end def error_class Acme::Client::Error::ACME_ERRORS.fetch(error_name, Acme::Client::Error) end def error_name return unless env.body.is_a?(Hash) return unless env.body.key?('type') env.body['type'] end def decode_body content_type = env.response_headers['Content-Type'].to_s if content_type.start_with?('application/json', 'application/problem+json') JSON.load(env.body) else env.body end end def decode_link_headers return unless env.response_headers.key?('Link') link_header = env.response_headers['Link'] Acme::Client::Util.decode_link_headers(link_header) end def store_nonce nonce = env.response_headers['replay-nonce'] nonces << nonce if nonce end def pop_nonce if nonces.empty? get_nonce end nonces.pop end def get_nonce client.get_nonce end def nonces client.nonces end end end acme-client-2.0.18/lib/acme/client/jwk.rb000066400000000000000000000011341463311421000200260ustar00rootroot00000000000000module Acme::Client::JWK # Make a JWK from a private key. # # private_key - An OpenSSL::PKey::EC or OpenSSL::PKey::RSA instance. # # Returns a JWK::Base subclass instance. def self.from_private_key(private_key) case private_key when OpenSSL::PKey::RSA Acme::Client::JWK::RSA.new(private_key) when OpenSSL::PKey::EC Acme::Client::JWK::ECDSA.new(private_key) else raise ArgumentError, 'private_key must be EC or RSA' end end end require 'acme/client/jwk/base' require 'acme/client/jwk/rsa' require 'acme/client/jwk/ecdsa' require 'acme/client/jwk/hmac' acme-client-2.0.18/lib/acme/client/jwk/000077500000000000000000000000001463311421000175025ustar00rootroot00000000000000acme-client-2.0.18/lib/acme/client/jwk/base.rb000066400000000000000000000036651463311421000207530ustar00rootroot00000000000000class Acme::Client::JWK::Base THUMBPRINT_DIGEST = OpenSSL::Digest::SHA256 # Initialize a new JWK. # # Returns nothing. def initialize raise NotImplementedError end # Generate a JWS JSON web signature. # # header - A Hash of extra header fields to include. # payload - A Hash of payload data. # # Returns a JSON String. def jws(header: {}, payload:) header = jws_header(header) encoded_header = Acme::Client::Util.urlsafe_base64(header.to_json) encoded_payload = Acme::Client::Util.urlsafe_base64(payload.nil? ? '' : payload.to_json) signature_data = "#{encoded_header}.#{encoded_payload}" signature = sign(signature_data) encoded_signature = Acme::Client::Util.urlsafe_base64(signature) { protected: encoded_header, payload: encoded_payload, signature: encoded_signature }.to_json end # Serialize this JWK as JSON. # # Returns a JSON string. def to_json to_h.to_json end # Get this JWK as a Hash for JSON serialization. # # Returns a Hash. def to_h raise NotImplementedError end # JWK thumbprint as used for key authorization. # # Returns a String. def thumbprint Acme::Client::Util.urlsafe_base64(THUMBPRINT_DIGEST.digest(to_json)) end # Header fields for a JSON web signature. # # typ: - Value for the `typ` field. Default 'JWT'. # # Returns a Hash. def jws_header(header) jws = { typ: 'JWT', alg: jwa_alg }.merge(header) jws[:jwk] = to_h if header[:kid].nil? jws end # The name of the algorithm as needed for the `alg` member of a JWS object. # # Returns a String. def jwa_alg raise NotImplementedError end # Sign a message with the private key. # # message - A String message to sign. # # Returns a String signature. # rubocop:disable Lint/UnusedMethodArgument def sign(message) raise NotImplementedError end # rubocop:enable Lint/UnusedMethodArgument end acme-client-2.0.18/lib/acme/client/jwk/ecdsa.rb000066400000000000000000000044671463311421000211210ustar00rootroot00000000000000class Acme::Client::JWK::ECDSA < Acme::Client::JWK::Base # JWA parameters for supported OpenSSL curves. # https://tools.ietf.org/html/rfc7518#section-3.1 KNOWN_CURVES = { 'prime256v1' => { jwa_crv: 'P-256', jwa_alg: 'ES256', digest: OpenSSL::Digest::SHA256 }.freeze, 'secp384r1' => { jwa_crv: 'P-384', jwa_alg: 'ES384', digest: OpenSSL::Digest::SHA384 }.freeze, 'secp521r1' => { jwa_crv: 'P-521', jwa_alg: 'ES512', digest: OpenSSL::Digest::SHA512 }.freeze }.freeze # Instantiate a new ECDSA JWK. # # private_key - A OpenSSL::PKey::EC instance. # # Returns nothing. def initialize(private_key) unless private_key.is_a?(OpenSSL::PKey::EC) raise ArgumentError, 'private_key must be a OpenSSL::PKey::EC' end unless @curve_params = KNOWN_CURVES[private_key.group.curve_name] raise ArgumentError, 'Unknown EC curve' end @private_key = private_key end # The name of the algorithm as needed for the `alg` member of a JWS object. # # Returns a String. def jwa_alg @curve_params[:jwa_alg] end # Get this JWK as a Hash for JSON serialization. # # Returns a Hash. def to_h { crv: @curve_params[:jwa_crv], kty: 'EC', x: Acme::Client::Util.urlsafe_base64(coordinates[:x]), y: Acme::Client::Util.urlsafe_base64(coordinates[:y]) } end # Sign a message with the private key. # # message - A String message to sign. # # Returns a String signature. def sign(message) # DER encoded ASN.1 signature der = @private_key.sign(@curve_params[:digest].new, message) # ASN.1 SEQUENCE seq = OpenSSL::ASN1.decode(der) # ASN.1 INTs ints = seq.value # BigNumbers bns = ints.map(&:value) byte_size = (@private_key.group.degree + 7) / 8 # Binary R/S values r, s = bns.map { |bn| bn.to_s(2).rjust(byte_size, "\x00") } # JWS wants raw R/S concatenated. [r, s].join end private def coordinates @coordinates ||= begin hex = public_key.to_bn.to_s(16) data_len = hex.length - 2 hex_x = hex[2, data_len / 2] hex_y = hex[2 + data_len / 2, data_len / 2] { x: [hex_x].pack('H*'), y: [hex_y].pack('H*') } end end def public_key @private_key.public_key end end acme-client-2.0.18/lib/acme/client/jwk/hmac.rb000066400000000000000000000011651463311421000207420ustar00rootroot00000000000000# frozen_string_literal: true class Acme::Client::JWK::HMAC < Acme::Client::JWK::Base # Instantiate a new HMAC JWS. # # key - A string. # # Returns nothing. def initialize(key) @key = key end # Sign a message with the private key. # # message - A String message to sign. # # Returns a String signature. def sign(message) OpenSSL::HMAC.digest('SHA256', @key, message) end # The name of the algorithm as needed for the `alg` member of a JWS object. # # Returns a String. def jwa_alg # https://tools.ietf.org/html/rfc7518#section-3.1 # HMAC using SHA-256 'HS256' end end acme-client-2.0.18/lib/acme/client/jwk/rsa.rb000066400000000000000000000022321463311421000206130ustar00rootroot00000000000000class Acme::Client::JWK::RSA < Acme::Client::JWK::Base # Digest algorithm to use when signing. DIGEST = OpenSSL::Digest::SHA256 # Instantiate a new RSA JWK. # # private_key - A OpenSSL::PKey::RSA instance. # # Returns nothing. def initialize(private_key) unless private_key.is_a?(OpenSSL::PKey::RSA) raise ArgumentError, 'private_key must be a OpenSSL::PKey::RSA' end @private_key = private_key end # Get this JWK as a Hash for JSON serialization. # # Returns a Hash. def to_h { e: Acme::Client::Util.urlsafe_base64(public_key.e.to_s(2)), kty: 'RSA', n: Acme::Client::Util.urlsafe_base64(public_key.n.to_s(2)) } end # Sign a message with the private key. # # message - A String message to sign. # # Returns a String signature. def sign(message) @private_key.sign(DIGEST.new, message) end # The name of the algorithm as needed for the `alg` member of a JWS object. # # Returns a String. def jwa_alg # https://tools.ietf.org/html/rfc7518#section-3.1 # RSASSA-PKCS1-v1_5 using SHA-256 'RS256' end private def public_key @private_key.public_key end end acme-client-2.0.18/lib/acme/client/resources.rb000066400000000000000000000003661463311421000212530ustar00rootroot00000000000000module Acme::Client::Resources; end require 'acme/client/resources/directory' require 'acme/client/resources/account' require 'acme/client/resources/order' require 'acme/client/resources/authorization' require 'acme/client/resources/challenges' acme-client-2.0.18/lib/acme/client/resources/000077500000000000000000000000001463311421000207215ustar00rootroot00000000000000acme-client-2.0.18/lib/acme/client/resources/account.rb000066400000000000000000000016711463311421000227070ustar00rootroot00000000000000# frozen_string_literal: true class Acme::Client::Resources::Account attr_reader :url, :status, :contact, :term_of_service, :orders_url def initialize(client, **arguments) @client = client assign_attributes(**arguments) end def kid url end def update(contact: nil, terms_of_service_agreed: nil) assign_attributes(**@client.account_update( contact: contact, terms_of_service_agreed: term_of_service ).to_h) true end def deactivate assign_attributes(**@client.account_deactivate.to_h) true end def reload assign_attributes(**@client.account.to_h) true end def to_h { url: url, term_of_service: term_of_service, status: status, contact: contact } end private def assign_attributes(url:, term_of_service:, status:, contact:) @url = url @term_of_service = term_of_service @status = status @contact = Array(contact) end end acme-client-2.0.18/lib/acme/client/resources/authorization.rb000066400000000000000000000032271463311421000241520ustar00rootroot00000000000000# frozen_string_literal: true class Acme::Client::Resources::Authorization attr_reader :url, :identifier, :domain, :expires, :status, :wildcard def initialize(client, **arguments) @client = client assign_attributes(**arguments) end def deactivate assign_attributes(**@client.deactivate_authorization(url: url).to_h) true end def reload assign_attributes(**@client.authorization(url: url).to_h) true end def challenges @challenges.map do |challenge| initialize_challenge(challenge) end end def http01 @http01 ||= challenges.find { |challenge| challenge.is_a?(Acme::Client::Resources::Challenges::HTTP01) } end alias_method :http, :http01 def dns01 @dns01 ||= challenges.find { |challenge| challenge.is_a?(Acme::Client::Resources::Challenges::DNS01) } end alias_method :dns, :dns01 def to_h { url: url, identifier: identifier, status: status, expires: expires, challenges: @challenges, wildcard: wildcard } end private def initialize_challenge(attributes) arguments = { type: attributes.fetch('type'), status: attributes.fetch('status'), url: attributes.fetch('url'), token: attributes.fetch('token', nil), error: attributes['error'] } Acme::Client::Resources::Challenges.new(@client, **arguments) end def assign_attributes(url:, status:, expires:, challenges:, identifier:, wildcard: false) @url = url @identifier = identifier @domain = identifier.fetch('value') @status = status @expires = expires @challenges = challenges @wildcard = wildcard end end acme-client-2.0.18/lib/acme/client/resources/challenges.rb000066400000000000000000000010661463311421000233560ustar00rootroot00000000000000# frozen_string_literal: true module Acme::Client::Resources::Challenges require 'acme/client/resources/challenges/base' require 'acme/client/resources/challenges/http01' require 'acme/client/resources/challenges/dns01' require 'acme/client/resources/challenges/unsupported_challenge' CHALLENGE_TYPES = { 'http-01' => Acme::Client::Resources::Challenges::HTTP01, 'dns-01' => Acme::Client::Resources::Challenges::DNS01 } def self.new(client, type:, **arguments) CHALLENGE_TYPES.fetch(type, Unsupported).new(client, **arguments) end end acme-client-2.0.18/lib/acme/client/resources/challenges/000077500000000000000000000000001463311421000230265ustar00rootroot00000000000000acme-client-2.0.18/lib/acme/client/resources/challenges/base.rb000066400000000000000000000016071463311421000242710ustar00rootroot00000000000000# frozen_string_literal: true class Acme::Client::Resources::Challenges::Base attr_reader :status, :url, :token, :error def initialize(client, **arguments) @client = client assign_attributes(**arguments) end def challenge_type self.class::CHALLENGE_TYPE end def key_authorization "#{token}.#{@client.jwk.thumbprint}" end def reload assign_attributes(**@client.challenge(url: url).to_h) true end def request_validation assign_attributes(**send_challenge_validation( url: url )) true end def to_h { status: status, url: url, token: token, error: error } end private def send_challenge_validation(url:) @client.request_challenge_validation( url: url ).to_h end def assign_attributes(status:, url:, token:, error: nil) @status = status @url = url @token = token @error = error end end acme-client-2.0.18/lib/acme/client/resources/challenges/dns01.rb000066400000000000000000000007021463311421000242770ustar00rootroot00000000000000# frozen_string_literal: true class Acme::Client::Resources::Challenges::DNS01 < Acme::Client::Resources::Challenges::Base CHALLENGE_TYPE = 'dns-01'.freeze RECORD_NAME = '_acme-challenge'.freeze RECORD_TYPE = 'TXT'.freeze DIGEST = OpenSSL::Digest::SHA256 def record_name RECORD_NAME end def record_type RECORD_TYPE end def record_content Acme::Client::Util.urlsafe_base64(DIGEST.digest(key_authorization)) end end acme-client-2.0.18/lib/acme/client/resources/challenges/http01.rb000066400000000000000000000005451463311421000244770ustar00rootroot00000000000000# frozen_string_literal: true class Acme::Client::Resources::Challenges::HTTP01 < Acme::Client::Resources::Challenges::Base CHALLENGE_TYPE = 'http-01'.freeze CONTENT_TYPE = 'text/plain'.freeze def content_type CONTENT_TYPE end def file_content key_authorization end def filename ".well-known/acme-challenge/#{token}" end end acme-client-2.0.18/lib/acme/client/resources/challenges/unsupported_challenge.rb000066400000000000000000000001471463311421000277470ustar00rootroot00000000000000class Acme::Client::Resources::Challenges::Unsupported < Acme::Client::Resources::Challenges::Base end acme-client-2.0.18/lib/acme/client/resources/directory.rb000066400000000000000000000025011463311421000232500ustar00rootroot00000000000000# frozen_string_literal: true class Acme::Client::Resources::Directory DIRECTORY_RESOURCES = { new_nonce: 'newNonce', new_account: 'newAccount', new_order: 'newOrder', new_authz: 'newAuthz', revoke_certificate: 'revokeCert', key_change: 'keyChange' } DIRECTORY_META = { terms_of_service: 'termsOfService', website: 'website', caa_identities: 'caaIdentities', external_account_required: 'externalAccountRequired' } def initialize(client, **arguments) @client = client assign_attributes(**arguments) end def endpoint_for(key) @directory.fetch(key) do |missing_key| raise Acme::Client::Error::UnsupportedOperation, "Directory at #{@url} does not include `#{missing_key}`" end end def terms_of_service meta[DIRECTORY_META[:terms_of_service]] end def website meta[DIRECTORY_META[:website]] end def caa_identities meta[DIRECTORY_META[:caa_identities]] end def external_account_required meta[DIRECTORY_META[:external_account_required]] end def meta @directory[:meta] end private def assign_attributes(directory:) @directory = {} @directory[:meta] = directory.delete('meta') DIRECTORY_RESOURCES.each do |key, entry| @directory[key] = URI(directory[entry]) if directory[entry] end end end acme-client-2.0.18/lib/acme/client/resources/order.rb000066400000000000000000000026721463311421000223700ustar00rootroot00000000000000# frozen_string_literal: true class Acme::Client::Resources::Order attr_reader :url, :status, :contact, :finalize_url, :identifiers, :authorization_urls, :expires, :certificate_url def initialize(client, **arguments) @client = client assign_attributes(**arguments) end def reload assign_attributes(**@client.order(url: url).to_h) true end def authorizations @authorization_urls.map do |authorization_url| @client.authorization(url: authorization_url) end end def finalize(csr:) assign_attributes(**@client.finalize(url: finalize_url, csr: csr).to_h) true end def certificate(force_chain: nil) if certificate_url @client.certificate(url: certificate_url, force_chain: force_chain) else raise Acme::Client::Error::CertificateNotReady, 'No certificate_url to collect the order' end end def to_h { url: url, status: status, expires: expires, finalize_url: finalize_url, authorization_urls: authorization_urls, identifiers: identifiers, certificate_url: certificate_url } end private def assign_attributes(url:, status:, expires:, finalize_url:, authorization_urls:, identifiers:, certificate_url: nil) @url = url @status = status @expires = expires @finalize_url = finalize_url @authorization_urls = authorization_urls @identifiers = identifiers @certificate_url = certificate_url end end acme-client-2.0.18/lib/acme/client/self_sign_certificate.rb000066400000000000000000000032561463311421000235550ustar00rootroot00000000000000class Acme::Client::SelfSignCertificate attr_reader :private_key, :subject_alt_names, :not_before, :not_after extend Forwardable def_delegators :certificate, :to_pem, :to_der def initialize(subject_alt_names:, not_before: default_not_before, not_after: default_not_after, private_key: generate_private_key) @private_key = private_key @subject_alt_names = subject_alt_names @not_before = not_before @not_after = not_after end def certificate @certificate ||= begin certificate = generate_certificate extension_factory = generate_extension_factory(certificate) subject_alt_name_entry = subject_alt_names.map { |d| "DNS: #{d}" }.join(',') subject_alt_name_extension = extension_factory.create_extension('subjectAltName', subject_alt_name_entry) certificate.add_extension(subject_alt_name_extension) certificate.sign(private_key, digest) end end private def generate_private_key OpenSSL::PKey::RSA.new(2048) end def default_not_before Time.now - 3600 end def default_not_after Time.now + 30 * 24 * 3600 end def digest OpenSSL::Digest::SHA256.new end def generate_certificate certificate = OpenSSL::X509::Certificate.new certificate.not_before = not_before certificate.not_after = not_after Acme::Client::Util.set_public_key(certificate, private_key) certificate.version = 2 certificate.serial = 1 certificate end def generate_extension_factory(certificate) extension_factory = OpenSSL::X509::ExtensionFactory.new extension_factory.subject_certificate = certificate extension_factory.issuer_certificate = certificate extension_factory end end acme-client-2.0.18/lib/acme/client/util.rb000066400000000000000000000016151463311421000202140ustar00rootroot00000000000000module Acme::Client::Util extend self def urlsafe_base64(data) Base64.urlsafe_encode64(data).sub(/[\s=]*\z/, '') end LINK_MATCH = /<(.*?)>\s?;\s?rel="([\w-]+)"/ # See RFC 8288 - https://tools.ietf.org/html/rfc8288#section-3 def decode_link_headers(link_header) link_header.split(',').each_with_object({}) { |entry, hash| _, link, name = *entry.match(LINK_MATCH) hash[name] ||= [] hash[name].push(link) } end # Sets public key on CSR or cert. # # obj - An OpenSSL::X509::Certificate or OpenSSL::X509::Request instance. # priv - An OpenSSL::PKey::EC or OpenSSL::PKey::RSA instance. # # Returns nothing. def set_public_key(obj, priv) case priv when OpenSSL::PKey::EC obj.public_key = priv when OpenSSL::PKey::RSA obj.public_key = priv.public_key else raise ArgumentError, 'priv must be EC or RSA' end end end acme-client-2.0.18/lib/acme/client/version.rb000066400000000000000000000001421463311421000207160ustar00rootroot00000000000000# frozen_string_literal: true module Acme class Client VERSION = '2.0.18'.freeze end end acme-client-2.0.18/spec/000077500000000000000000000000001463311421000147105ustar00rootroot00000000000000acme-client-2.0.18/spec/account_spec.rb000066400000000000000000000027531463311421000177120ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::Resources::Account do let(:private_key) { generate_private_key } let(:unregistered_client) do client = Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client end let(:client) do client = Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client end let(:account) do client.account end context 'status' do it 'send the agreement for the terms', vcr: { cassette_name: 'registration_agree_terms' } do expect(account.status).to eq('valid') end end context 'update' do it 'update contact information', vcr: { cassette_name: 'account_update' } do expect(account.contact).to eq(['mailto:info@example.com']) account.update(contact: 'mailto:updated@example.com') expect(account.contact).to eq(['mailto:updated@example.com']) end end context 'deactivate' do it 'deactivate account', vcr: { cassette_name: 'account_deactivate' } do expect(account.status).to eq('valid') account.deactivate expect(account.status).to eq('deactivated') end end context 'reload', vcr: { cassette_name: 'account_reload' } do it 'reload the account' do expect { account.reload }.not_to raise_error expect(account.url).not_to be_nil end end end acme-client-2.0.18/spec/authorization_spec.rb000066400000000000000000000032451463311421000211530ustar00rootroot00000000000000# frozen_string_literal: true require 'spec_helper' describe Acme::Client::Resources::Authorization do let(:private_key) { generate_private_key } let(:client) do client = Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client end let(:order) do client.new_order(identifiers: [{ type: 'dns', value: 'example.com' }]) end let(:authorization) { client.authorization(url: order.authorization_urls.first) } context 'deactivate' do it 'successfully deactive the authorization', vcr: { cassette_name: 'authorization_deactivate' } do expect(authorization.status).to eq('pending') expect { authorization.deactivate }.not_to raise_error expect(authorization.status).to eq('deactivated') end end context 'challenges' do it 'returns the challenges', vcr: { cassette_name: 'authorization_challenges' } do expect(authorization.challenges).to all(be_kind_of(Acme::Client::Resources::Challenges::Base)) end it 'returns the HTTP challenge', vcr: { cassette_name: 'authorization_http_challenge' } do expect(authorization.http).to be_a(Acme::Client::Resources::Challenges::HTTP01) end it 'returns the DNS challenge', vcr: { cassette_name: 'authorization_dns_challenge' } do expect(authorization.dns).to be_a(Acme::Client::Resources::Challenges::DNS01) end end context 'reload' do it 'successfully reload the authorization', vcr: { cassette_name: 'authorization_reload' } do expect { authorization.reload }.not_to raise_error expect(authorization.url).not_to be_nil end end end acme-client-2.0.18/spec/cassettes/000077500000000000000000000000001463311421000167065ustar00rootroot00000000000000acme-client-2.0.18/spec/cassettes/account_contact_deactivate.yml000066400000000000000000000150011463311421000247660ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - jlqzVngJd_Dr9JEngxlYOw Date: - Thu, 10 Oct 2019 03:08:15 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiamxxelZuZ0pkX0RyOUpFbmd4bFlPdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InJKN0Q2cV9fS0FPM2Q2M3RtbHk3eXdjTlhabWhlRl8zc3JlcFpMaHdKbW94VUtfWnJWeVQ4VHpndmxwLVZYTVZHeThvaEt6MUZBektKVVYwYUVFWG5CNzZSbVpSVTU3b2RGanZkeWZfOG82UWNMUER3c21STFFvR0JDNmlFSjZyX3ZCb3RKZHE2ZXdtdF9nZ0ZTa2lRNU1Gb2twNnNsTktSSTJKRUZ5NFkyTmtfa19SSlRxNm5ER2pwOXhpdnR4STctc0Fuak15V19jaVZ1MHFnTUtKcy0xYmQ5bm83TnkwR1NjbmJKNk1yY2kwTTFBcVNPSnJiY3h5TWdhbFZCZV9TVU9vMm9DdC1Vb2FEVF9xM0lhVDNLNURETlF0M01yWFhsOXNmTDFKQ2ZWSW5Fc1JqeVRULWl5WGZoQ011M0h6enppZHMwNGwxZXRhRmFFbUhjM1BJdyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"dm_ch6ybg9na20Ygn_gOkjE5zyte8MzcK-vsaJU-EMrLnoo3aR7opx3sYnIyAStVxycepXC3-w_sLc_g7QPZ7u6DVPEekMbRlCMP-e7ENhs2H05BvmuXG0unfyMGCX6RNoXOxFq6Sckm9pM69RJzsaIQe-M1mF8RDMnaFIyq2hwjoHMxvn93F1UOATgVBzrfM7oG9uMyUFUP8QbPsdWLt4B8A9avIEbamN9XR_lA9vlaZpdDyVLN7vPi-gjUFdV6u0AzeHwiYG68xqwABftWOLq2oinVIDyfJfdMZ6QEf_LDAqInzTjthTfJbATjtstKFxZJGHDzZl4S8c75KyPs4A"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/57" Replay-Nonce: - Hk_U6WiUO_c_nk94sAQ6RA Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/57", "key": { "kty": "RSA", "n": "rJ7D6q__KAO3d63tmly7ywcNXZmheF_3srepZLhwJmoxUK_ZrVyT8Tzgvlp-VXMVGy8ohKz1FAzKJUV0aEEXnB76RmZRU57odFjvdyf_8o6QcLPDwsmRLQoGBC6iEJ6r_vBotJdq6ewmt_ggFSkiQ5MFokp6slNKRI2JEFy4Y2Nk_k_RJTq6nDGjp9xivtxI7-sAnjMyW_ciVu0qgMKJs-1bd9no7Ny0GScnbJ6Mrci0M1AqSOJrbcxyMgalVBe_SUOo2oCt-UoaDT_q3IaT3K5DDNQt3MrXXl9sfL1JCfVInEsRjyTT-iyXfhCMu3Hzzzids04l1etaFaEmHc3PIw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/my-account/57" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiSGtfVTZXaVVPX2Nfbms5NHNBUTZSQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50LzU3Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTcifQ","payload":"eyJzdGF0dXMiOiJkZWFjdGl2YXRlZCJ9","signature":"UI1GQGQqmlZhoZiFWqQXdn4ZvnH3WI6Ik3sze3aAX1CZnjxi4pcVtYjobN0R73QkRnwduS1by32siYG76GtQmUyTMKIShfk2xbILsEPwQHGxgnAe6Yy8lmjPv3o7sGcdyfp1K5CrW5qrOrycb16EaSgxQQEFNNU4-_3vjXgHO62uS7c7NW84pkZB5uELDuNyDWnC1eMD_AmmGmVZvzCOy1WJheUWTwccTuGf04mycGkHbOB15IenV_OBKnrzxJrHvLZPyX0HS5f2Ay6NGLRHjsNr82qJlP-Qfxdrg2deRQqltg7k3cxwEpFN9wx9LLczfPJKynT_XzrI8zP3Ja0Cgg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - STgLjfCPc5lz9rj3MAk1Iw Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '556' body: encoding: UTF-8 string: |- { "status": "deactivated", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/57", "key": { "kty": "RSA", "n": "rJ7D6q__KAO3d63tmly7ywcNXZmheF_3srepZLhwJmoxUK_ZrVyT8Tzgvlp-VXMVGy8ohKz1FAzKJUV0aEEXnB76RmZRU57odFjvdyf_8o6QcLPDwsmRLQoGBC6iEJ6r_vBotJdq6ewmt_ggFSkiQ5MFokp6slNKRI2JEFy4Y2Nk_k_RJTq6nDGjp9xivtxI7-sAnjMyW_ciVu0qgMKJs-1bd9no7Ny0GScnbJ6Mrci0M1AqSOJrbcxyMgalVBe_SUOo2oCt-UoaDT_q3IaT3K5DDNQt3MrXXl9sfL1JCfVInEsRjyTT-iyXfhCMu3Hzzzids04l1etaFaEmHc3PIw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/account_contact_update.yml000066400000000000000000000206421463311421000241460ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - tfsLQc3pSF0yOdXVTfaS1Q Date: - Thu, 10 Oct 2019 03:08:15 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoidGZzTFFjM3BTRjB5T2RYVlRmYVMxUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiMGlkVnRWVGszQnRTcW12MDFKN2hmX3REWm5ENUJKWE5NZnc4N0tPSGd3IiwieSI6InVPa004b3dDNTJvOVFDVk9YZVpHUHZ4ZkIxdzZoS2xNSGRab2hwOVMwZmsifX0","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"8BdCmZvSdMohT2QgbeKgaYGv2sDRlOeF0YRE6NZjFGquI8Ar14AeobcqnIaVx9KHZiiNr8iS3FKj5p-kiJY7UA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/58" Replay-Nonce: - yhMJUW76mnLknZxuN3c5dw Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '311' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/58", "key": { "kty": "EC", "crv": "P-256", "x": "ANInVbVU5NwbUqpr9NSe4X_7Q2Zw-QSVzTH8POyjh4M", "y": "uOkM8owC52o9QCVOXeZGPvxfB1w6hKlMHdZohp9S0fk" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/my-account/58" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoieWhNSlVXNzZtbkxrblp4dU4zYzVkdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50LzU4Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTgifQ","payload":"","signature":"wmM8OfnkT5tqUtknF3_MnBMnfsOUBGa5rY6u2Z-g_cKyFT2kEjS6urTsbpUDC8jQ6_XXbpmSEk97nkrBlxSuPQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - XrlqznwiP_kTqx6CiDcCLA Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '311' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/58", "key": { "kty": "EC", "crv": "P-256", "x": "ANInVbVU5NwbUqpr9NSe4X_7Q2Zw-QSVzTH8POyjh4M", "y": "uOkM8owC52o9QCVOXeZGPvxfB1w6hKlMHdZohp9S0fk" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/my-account/58" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiWHJscXpud2lQX2tUcXg2Q2lEY0NMQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50LzU4Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTgifQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzp1cGRhdGVkQGV4YW1wbGUuY29tIl19","signature":"tUQS6ACDP6-QTkKZWMhEPdWXomEZliY4eB0LAN5-tkgz5gbXSAkYoLEdXIGi9uAAkWut8rtcSuTAEGod8NCwqw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - lMvG4i9EsevYSWVw1j3dtA Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '314' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:updated@example.com" ], "orders": "/list-orderz/58", "key": { "kty": "EC", "crv": "P-256", "x": "ANInVbVU5NwbUqpr9NSe4X_7Q2Zw-QSVzTH8POyjh4M", "y": "uOkM8owC52o9QCVOXeZGPvxfB1w6hKlMHdZohp9S0fk" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/my-account/58" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoibE12RzRpOUVzZXZZU1dWdzFqM2R0QSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50LzU4Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTgifQ","payload":"","signature":"rYKkrNnfG8xP_MAa-DLcSig7IbBIr9aI673bIhYIK5R-b1GzMQZLEL5Hd-ZlL_pBu1evCpmhjlrH-5FFYUgrMQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - RmUdqOeXaL1MFxFGnpHClg Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '314' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:updated@example.com" ], "orders": "/list-orderz/58", "key": { "kty": "EC", "crv": "P-256", "x": "ANInVbVU5NwbUqpr9NSe4X_7Q2Zw-QSVzTH8POyjh4M", "y": "uOkM8owC52o9QCVOXeZGPvxfB1w6hKlMHdZohp9S0fk" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/account_deactivate.yml000066400000000000000000000161561463311421000232670ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - aIpDHONQ5aIE4y_5eCwLTw Date: - Thu, 10 Oct 2019 03:08:22 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiYUlwREhPTlE1YUlFNHlfNWVDd0xUdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiMmRzeVlnSTFtclFpZlgwd2VUeWlqcHVma3lqYUZIOVQteGhhMkNNNm5KWkxYaFV5RXNTaFNLT2JKb2NEZW93eiIsInkiOiJMQTVkTFg0cE1hU3JqWllfd0l1emYtSFZfZGotd04tUHYySzFESE1feTlyVmg4RnA2bXR6aDQ0a0doNGVKZEc2In19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"k-449-HjTBfetN7UdOPnx3d1BY5EFzNmA4ATwlPsY63VwiAMqUiczo_rPRGe8gzq5eqn38zaqrdFq4IOlvsQaZohryeo4NXDxfQJVVs2D6W-ljaxrEFreZP9mI2oK-qb"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/77" Replay-Nonce: - OxD0J0u_iL0-5vwUS4D5QA Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/77", "key": { "kty": "EC", "crv": "P-384", "x": "2dsyYgI1mrQifX0weTyijpufkyjaFH9T-xha2CM6nJZLXhUyEsShSKObJocDeowz", "y": "LA5dLX4pMaSrjZY_wIuzf-HV_dj-wN-Pv2K1DHM_y9rVh8Fp6mtzh44kGh4eJdG6" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/my-account/77" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiT3hEMEowdV9pTDAtNXZ3VVM0RDVRQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50Lzc3Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzcifQ","payload":"","signature":"sF5Zsax1s_OAgCPiZCOW473jl1E0fzeAS8v7fF90IyeUBcS6Ag9nh0pwpBfDFmfab8a_GuqW7ipdcmBKfWJaNSmdEBw_aC4x3KXW0lpE3etcJ19AheuPwvnkqn7eSSBw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - tTu9SWOMZL9kvmLYxPiL7w Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/77", "key": { "kty": "EC", "crv": "P-384", "x": "2dsyYgI1mrQifX0weTyijpufkyjaFH9T-xha2CM6nJZLXhUyEsShSKObJocDeowz", "y": "LA5dLX4pMaSrjZY_wIuzf-HV_dj-wN-Pv2K1DHM_y9rVh8Fp6mtzh44kGh4eJdG6" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/my-account/77" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoidFR1OVNXT01aTDlrdm1MWXhQaUw3dyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50Lzc3Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzcifQ","payload":"eyJzdGF0dXMiOiJkZWFjdGl2YXRlZCJ9","signature":"W5vxTjc-GkIN3UVsKwuh6Cf8v-gEBQ8CywzO8MgRnPBJMniMYbnNtMkDEBXNYBVjgRbWaKv97L9SiHHGRD1Ts9Dz2Ng4bLqbioOASbvIjSLllb_Fmc8D9pearT6ByZRc"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - O8Wm_mcioRoVMlJplEZ9oQ Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '359' body: encoding: UTF-8 string: |- { "status": "deactivated", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/77", "key": { "kty": "EC", "crv": "P-384", "x": "2dsyYgI1mrQifX0weTyijpufkyjaFH9T-xha2CM6nJZLXhUyEsShSKObJocDeowz", "y": "LA5dLX4pMaSrjZY_wIuzf-HV_dj-wN-Pv2K1DHM_y9rVh8Fp6mtzh44kGh4eJdG6" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/account_key_change.yml000066400000000000000000000304371463311421000232510ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.7 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 27 Apr 2021 18:33:17 GMT Content-Type: - application/json Content-Length: - '724' Connection: - keep-alive Cache-Control: - public, max-age=0, no-cache X-Frame-Options: - DENY Strict-Transport-Security: - max-age=604800 body: encoding: UTF-8 string: |- { "-bvtCFDCWdA": "https://community.letsencrypt.org/t/adding-random-entries-to-the-directory/33417", "keyChange": "/acme/key-change", "meta": { "caaIdentities": [ "letsencrypt.org" ], "termsOfService": "https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf", "website": "https://letsencrypt.org/docs/staging-environment/" }, "newAccount": "/acme/new-acct", "newNonce": "/acme/new-nonce", "newOrder": "/acme/new-order", "revokeCert": "/acme/revoke-cert" } recorded_at: Tue, 27 Apr 2021 18:33:17 GMT - request: method: head uri: "/acme/new-nonce" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.7 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 27 Apr 2021 18:33:17 GMT Connection: - keep-alive Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - 0004Q6FwstesFU9hs8aYuiUHBE2SaO6bVslbl_D909Bt2GI X-Frame-Options: - DENY Strict-Transport-Security: - max-age=604800 body: encoding: UTF-8 string: '' recorded_at: Tue, 27 Apr 2021 18:33:17 GMT - request: method: post uri: "/acme/new-acct" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMDAwNFE2RndzdGVzRlU5aHM4YVl1aVVIQkUyU2FPNmJWc2xibF9EOTA5QnQyR0kiLCJ1cmwiOiJodHRwczovL2FjbWUtc3RhZ2luZy12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL25ldy1hY2N0IiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6Im51RzlTckF0aDczelphM3FIS25iZWRndTEtXzd5cGdHSGNFY3FlV2R1a3ZaLUZmbm9DNDZfRm5SaV9kQ0FqcUNMWVpoWDhPZTZ3X1ZXcy1rdXNDbkFwdXNVakNaMWNRNzl0MTdfNEc5ZUdlaG54eEF6eTljNGxnUmlORjB6WEowNU1uZGo4TlJoYnZ1SGpURWNvZERmQzNnMUxOMVdCMlE1WWxnVmZLcUp1M1kzbHlXNDhOc3BsXzZpeFdWU2QzV1I4UEJYTFo1dE4yMlJmWnk3RF8xejdmcVJuSXlMYXNVTEIzanNfR3VZMzh1VWZrRDhGTnhZeGtyc2dvdUR6ZkI4NUxFeGNmYnVGZFFZRWF2eEFpZmlYUG5wNkdOMGROYVd5WFpJcndrNlkzSkxHempxQ1FxMGVqQ0FHVWZkekdIc2trNmdremdhV0hiRDdnS3FfRGh2USJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzpkYXZpZC5zY2h3YXJ0eitjaGFuZ2VtZUBzaG9waWZ5LmNvbSJdLCJ0ZXJtc09mU2VydmljZUFncmVlZCI6dHJ1ZX0","signature":"OefcAaAKnn3uOSM0XiH06DTC-u5p6EI2dSU3HXISmA7e0rXGfHZ6iW1a_lic50cAf1NE5hkiIQgDAZy_WSmpFuTaesLYmSU2S2evHy8BtdsC8MGps8HiBCC5yz3H7nxMkTj54y6MiSh03taQtgSnT_-V6SIAUhKiQsx3-1qHDHqBDcpmQIklOvfANNSrXudNCDaP5zQYRSKdM0Uoofuxy-c5-IXS7BkPhlDL_T-kP6B8vteoIhDw_QKIbRyLIa1IQujwDKA-Q9hc_7MSEOjfhC6WzqKKLCS4ExyrV6gzsnJkXGP6QaoeXifIH-GW8W0m3W5A3cngb2GWLTTC0sSXSw"}' headers: User-Agent: - Acme::Client v2.0.7 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Server: - nginx Date: - Tue, 27 Apr 2021 18:33:18 GMT Content-Type: - application/json Content-Length: - '578' Connection: - keep-alive Boulder-Requester: - '19272981' Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" - ;rel="terms-of-service" Location: - "/acme/acct/19272981" Replay-Nonce: - 00037TRwTW3IwosljzcjwY_JihDoDIBfC56ue3-_0OzC2fQ X-Frame-Options: - DENY Strict-Transport-Security: - max-age=604800 body: encoding: UTF-8 string: |- { "key": { "kty": "RSA", "n": "nuG9SrAth73zZa3qHKnbedgu1-_7ypgGHcEcqeWdukvZ-FfnoC46_FnRi_dCAjqCLYZhX8Oe6w_VWs-kusCnApusUjCZ1cQ79t17_4G9eGehnxxAzy9c4lgRiNF0zXJ05Mndj8NRhbvuHjTEcodDfC3g1LN1WB2Q5YlgVfKqJu3Y3lyW48Nspl_6ixWVSd3WR8PBXLZ5tN22RfZy7D_1z7fqRnIyLasULB3js_GuY38uUfkD8FNxYxkrsgouDzfB85LExcfbuFdQYEavxAifiXPnp6GN0dNaWyXZIrwk6Y3JLGzjqCQq0ejCAGUfdzGHskk6gkzgaWHbD7gKq_DhvQ", "e": "AQAB" }, "contact": [ "mailto:info@example.com" ], "initialIp": "1.2.3.4", "createdAt": "2021-04-27T18:33:17.999045924Z", "status": "valid" } recorded_at: Tue, 27 Apr 2021 18:33:18 GMT - request: method: post uri: "/acme/key-change" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMDAwMzdUUndUVzNJd29zbGp6Y2p3WV9KaWhEb0RJQmZDNTZ1ZTMtXzBPekMyZlEiLCJ1cmwiOiJodHRwczovL2FjbWUtc3RhZ2luZy12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2tleS1jaGFuZ2UiLCJraWQiOiJodHRwczovL2FjbWUtc3RhZ2luZy12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMTkyNzI5ODEifQ","payload":"eyJwcm90ZWN0ZWQiOiJleUowZVhBaU9pSktWMVFpTENKaGJHY2lPaUpTVXpJMU5pSXNJblZ5YkNJNkltaDBkSEJ6T2k4dllXTnRaUzF6ZEdGbmFXNW5MWFl3TWk1aGNHa3ViR1YwYzJWdVkzSjVjSFF1YjNKbkwyRmpiV1V2YTJWNUxXTm9ZVzVuWlNJc0ltcDNheUk2ZXlKbElqb2lRVkZCUWlJc0ltdDBlU0k2SWxKVFFTSXNJbTRpT2lKelFVZFpjV28zUnpCZmJHWkxMVWx6ZDBWdVRrWnVaa1V0VnpsWE1GUnJRa04yVG5WRU5VUnVVR2g0T1RGUmFXSXlUblo0UzNSdlNUZzNSSFowZGxaM1ZUaFlkREpJWnpsVFF6ZHdUMWhsVFZFd1VqRTVkSFJzY2twMWRtOUhla3RFYkRRNU1WbDJjVTFNTUZOUExWSlJaRzE2Y1ZaUmRsUXRSbU5yTFc5ak1WbG9WMFJ6TW1aSWVWWmpRVUZPVW10c1ZXRmlialZUV0VZME5qUjFOa2REVWxwdWVsVlpUMWRmWWxoQlEwOVJMV3B0ZHpNNVREZDRhemRUZUdwU01VNUNiazVIYnpKYU9VTmZiV00wVDFwRU4wMDJRWG96UkVaUFMyNVhRbG8xYkZGVk1HUlFVblEzUjJ4cE5HOWFZbU4zVWtadFEweG5WRmRVWDI5bk5sWnRRVEZRUm1aTk5XRnRaMFJWTkRWU1JtWXlSa1ZXUVZBNVFrcERUR2d0YWpKT01YTnNUSFJTVTBOYWIyZzVRMVZoT1dNdFIwNWtSVlZQZFRRMldFeFpaRmxCUjB0UldUTkJlR1ZUVWpWV2VGaGZZbFZ4YTFFaWZYMCIsInBheWxvYWQiOiJleUpoWTJOdmRXNTBJam9pYUhSMGNITTZMeTloWTIxbExYTjBZV2RwYm1jdGRqQXlMbUZ3YVM1c1pYUnpaVzVqY25sd2RDNXZjbWN2WVdOdFpTOWhZMk4wTHpFNU1qY3lPVGd4SWl3aWIyeGtTMlY1SWpwN0ltVWlPaUpCVVVGQ0lpd2lhM1I1SWpvaVVsTkJJaXdpYmlJNkltNTFSemxUY2tGMGFEY3plbHBoTTNGSVMyNWlaV1JuZFRFdFh6ZDVjR2RIU0dORlkzRmxWMlIxYTNaYUxVWm1ibTlETkRaZlJtNVNhVjlrUTBGcWNVTk1XVnBvV0RoUFpUWjNYMVpYY3kxcmRYTkRia0Z3ZFhOVmFrTmFNV05STnpsME1UZGZORWM1WlVkbGFHNTRlRUY2ZVRsak5HeG5VbWxPUmpCNldFb3dOVTF1WkdvNFRsSm9ZbloxU0dwVVJXTnZaRVJtUXpObk1VeE9NVmRDTWxFMVdXeG5WbVpMY1VwMU0xa3piSGxYTkRoT2MzQnNYelpwZUZkV1UyUXpWMUk0VUVKWVRGbzFkRTR5TWxKbVduazNSRjh4ZWpkbWNWSnVTWGxNWVhOVlRFSXphbk5mUjNWWk16aDFWV1pyUkRoR1RuaFplR3R5YzJkdmRVUjZaa0k0TlV4RmVHTm1ZblZHWkZGWlJXRjJlRUZwWm1sWVVHNXdOa2RPTUdST1lWZDVXRnBKY25kck5sa3pTa3hIZW1weFExRnhNR1ZxUTBGSFZXWmtla2RJYzJ0ck5tZHJlbWRoVjBoaVJEZG5TM0ZmUkdoMlVTSjlmUSIsInNpZ25hdHVyZSI6IlJqT21WRG1ZbUl5a3VjSXVlaGxOV1NRaGdqRmUtLWxkZFE3cXV2NGpaSm4wckhuZUJqeUFaLW5kOVBVbVNwQldjeThLOU5fTGU2LTNsY3pvUFU5eWZVVFR3WFl3ejNWTWdkbWFGaFQ5YVhzOWp2XzdqaUh0Q3llSVBXZW11QlZ4ZkFWaW9JT2RYVW9zcGs1b3J4REFQb1V1X0RHYWUxcXhLZ2JCbkw4TjhMU1pjbXQzOHhSLTNidER2UDdIS2xqaFU1RWlFWlNMYlVFT2xBWGRBZVlXRVRXWk5Cbmo3anljdnBvNnZDRm50U2hfazFzemhPZ1hFUlhFWmZ6S25XNmxzQjNpOGZ5M09DaE00bFU1V1VEQlA1UDBoeHk4QVNLVGZ2cTlra0YzMXJuS3kyZGtya0NpWURZVjJDWUZDMGk5RldUeUFsaFhLdzVZc0ZsSXNKTGowZyJ9","signature":"i0TegkaCxZOCbIEq6yaRYCo6CeIh559nKJSt1lVWlMjXbC_9x_GVOJ-yQkUW0tddmZ-q5iC3qWfAZw9__y93ScA3WHRDp-dbBVMlHJo_Vl8cgsuT646tT_4foxIj9eI_AbotJ8kPi9-aunGXsZKCFhPB4rzIXFi6iYvY6UkyNgdwu4srJeWTIINs89puh8Kjxy_PkuhqdTupYQ-n2zYMAU4YXep_3ibR1mHfiblqXa6EwbMtvQ6eElNh8DWzNQq0IkIDijsCdgHIrQQyo77zEzUrIjhlyyHgeJg_MIU-zFrIjgNyvWE1JjRPKTQbpjN3jLSytKHVvCFiOtLMfs1XKQ"}' headers: User-Agent: - Acme::Client v2.0.7 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 27 Apr 2021 18:33:18 GMT Content-Type: - application/json Content-Length: - '568' Connection: - keep-alive Boulder-Requester: - '19272981' Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - 0004Y2NzcP1FjrzOm4Tzkro_O0xeDytdiY7LXOS7-lyT57I X-Frame-Options: - DENY Strict-Transport-Security: - max-age=604800 body: encoding: UTF-8 string: |- { "key": { "kty": "RSA", "n": "sAGYqj7G0_lfK-IswEnNFnfE-W9W0TkBCvNuD5DnPhx91Qib2NvxKtoI87DvtvVwU8Xt2Hg9SC7pOXeMQ0R19ttlrJuvoGzKDl491YvqML0SO-RQdmzqVQvT-Fck-oc1YhWDs2fHyVcAANRklUabn5SXF464u6GCRZnzUYOW_bXACOQ-jmw39L7xk7SxjR1NBnNGo2Z9C_mc4OZD7M6Az3DFOKnWBZ5lQU0dPRt7Gli4oZbcwRFmCLgTWT_og6VmA1PFfM5amgDU45RFf2FEVAP9BJCLh-j2N1slLtRSCZoh9CUa9c-GNdEUOu46XLYdYAGKQY3AxeSR5VxX_bUqkQ", "e": "AQAB" }, "contact": [ "mailto:info@example.com" ], "initialIp": "1.2.3.4", "createdAt": "2021-04-27T18:33:17Z", "status": "valid" } recorded_at: Tue, 27 Apr 2021 18:33:18 GMT - request: method: post uri: "/acme/acct/19272981" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMDAwNFkyTnpjUDFGanJ6T200VHprcm9fTzB4ZUR5dGRpWTdMWE9TNy1seVQ1N0kiLCJ1cmwiOiJodHRwczovL2FjbWUtc3RhZ2luZy12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMTkyNzI5ODEiLCJraWQiOiJodHRwczovL2FjbWUtc3RhZ2luZy12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvMTkyNzI5ODEifQ","payload":"","signature":"cFJ0c3g5lo0DuNHOnjxxg9QY5kiwL4pYuTSpUvaFLTDZWdLv_iVWbXMsloIJdlCI_PqQ6XcQhSt9IDJa_20F8Rd9QStkFwUaZ1WH20gzj_b-kBnERiKJjwScKSivEBvwalf-gTa7yIWGrvPLNOnOWgCY4Pjpx6UJKhflThYEwVO7vbmllZRLtbnjE4t6jAmTNpte3PXo7gtv8wET-pjNwK8Rr3ApxJhjk2YZIebzi6tXMN7iYauQqz38voRAulJb2YBvp-b2sOCVX1N56Pe5C7p2pTeEy5Afk8wMucG3ewiAKTr2c6EQHl6SujyX2AyOyNaSH-OylZrIBv8MXGtHvw"}' headers: User-Agent: - Acme::Client v2.0.7 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 27 Apr 2021 18:33:18 GMT Content-Type: - application/json Content-Length: - '568' Connection: - keep-alive Boulder-Requester: - '19272981' Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" - ;rel="terms-of-service" Replay-Nonce: - 0004d6lAjIoQxB52FMX3Fyogi4TedA-wTO7EjEXZWqbVtuM X-Frame-Options: - DENY Strict-Transport-Security: - max-age=604800 body: encoding: UTF-8 string: |- { "key": { "kty": "RSA", "n": "sAGYqj7G0_lfK-IswEnNFnfE-W9W0TkBCvNuD5DnPhx91Qib2NvxKtoI87DvtvVwU8Xt2Hg9SC7pOXeMQ0R19ttlrJuvoGzKDl491YvqML0SO-RQdmzqVQvT-Fck-oc1YhWDs2fHyVcAANRklUabn5SXF464u6GCRZnzUYOW_bXACOQ-jmw39L7xk7SxjR1NBnNGo2Z9C_mc4OZD7M6Az3DFOKnWBZ5lQU0dPRt7Gli4oZbcwRFmCLgTWT_og6VmA1PFfM5amgDU45RFf2FEVAP9BJCLh-j2N1slLtRSCZoh9CUa9c-GNdEUOu46XLYdYAGKQY3AxeSR5VxX_bUqkQ", "e": "AQAB" }, "contact": [ "mailto:info@example.com" ], "initialIp": "1.2.3.4", "createdAt": "2021-04-27T18:33:17Z", "status": "valid" } recorded_at: Tue, 27 Apr 2021 18:33:18 GMT recorded_with: VCR 6.0.0 acme-client-2.0.18/spec/cassettes/account_reload.yml000066400000000000000000000161101463311421000224120ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - CrP1QhrQkN_FZt2m-polYg Date: - Thu, 10 Oct 2019 03:08:22 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiQ3JQMVFoclFrTl9GWnQybS1wb2xZZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiOXVIeFRrOVpaWTZyaXJ4NTBDcGRfSThqZEFfVG5INXBfajZSX0psbUFzemozR1pSR3ZoZzJWU2ZfWFRsbFpSeSIsInkiOiJKNlFERzViZmFkWFlzZFdUQmJSTHZIelp2UmxOTk56NU92dmVGUmVGQnZfT2pONkt5Y1NGMVU4Z2VaWnA2Q1k0In19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"2rmE6GLVep_jRdwswxg5-ek-BxtODUvZTps7W7DNV7DEsurABCAI-8I2K8xbPnDdm4U73m3tzgjm43MQRUmM2_EU4HD57BHHL8e0WK5maHX9y0DaLJkr_xzXDTnf3B8z"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/76" Replay-Nonce: - Yf6AZXBXl4zg8fMuXti1MA Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/76", "key": { "kty": "EC", "crv": "P-384", "x": "9uHxTk9ZZY6rirx50Cpd_I8jdA_TnH5p_j6R_JlmAszj3GZRGvhg2VSf_XTllZRy", "y": "J6QDG5bfadXYsdWTBbRLvHzZvRlNNNz5OvveFReFBv_OjN6KycSF1U8geZZp6CY4" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/my-account/76" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiWWY2QVpYQlhsNHpnOGZNdVh0aTFNQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50Lzc2Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzYifQ","payload":"","signature":"xasz4afk9YAM5PfzqKuxR5yYc2DXk8wkEAVxNOvgSJnKTgeO03T1aBhpjn_u8egRc-fw8r5Xlrit066ro-vvtF1L_nqaOi1XR_LoII1tI1paLgqq6x32_FIhqLRxRmFv"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - cQnjWF-IKQXo0LiTpvqaKQ Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/76", "key": { "kty": "EC", "crv": "P-384", "x": "9uHxTk9ZZY6rirx50Cpd_I8jdA_TnH5p_j6R_JlmAszj3GZRGvhg2VSf_XTllZRy", "y": "J6QDG5bfadXYsdWTBbRLvHzZvRlNNNz5OvveFReFBv_OjN6KycSF1U8geZZp6CY4" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/my-account/76" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiY1FualdGLUlLUVhvMExpVHB2cWFLUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50Lzc2Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzYifQ","payload":"","signature":"KsQdo-oGEps9I5XYRd9a2YvGGPyigCDU2a6VDQImsSlOQD7vHLriJXoFCj4Bp35gmzKH7BRfEhdIIl9_CQ-AvRuMAQiYZxCSjvVs556fPla-c6o3yQDWN4IFHnz70Dtn"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - 4hysQxoLLL4LjDYY9tRQWg Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/76", "key": { "kty": "EC", "crv": "P-384", "x": "9uHxTk9ZZY6rirx50Cpd_I8jdA_TnH5p_j6R_JlmAszj3GZRGvhg2VSf_XTllZRy", "y": "J6QDG5bfadXYsdWTBbRLvHzZvRlNNNz5OvveFReFBv_OjN6KycSF1U8geZZp6CY4" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/account_update.yml000066400000000000000000000162031463311421000224310ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - Z1KBXkieCGEvGQzNEZBsKA Date: - Thu, 10 Oct 2019 03:08:22 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiWjFLQlhraWVDR0V2R1F6TkVaQnNLQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiVjVWaHhrVHotYkNaTklJc2xrYUY3ZUV1UTFkLWh4RTJoUUlyeTZwWl9vY01zWmYyMklPWE53dHJXOHJPbVFaTyIsInkiOiJNa2dCNkY2R1M0MUtiR2dpRTlVSTROeDdLUmVmY0xlaWZvTlpsZFJRaTdQMUdQY1V0azRtR2ViRFlQTTdEZ0lPIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"NjWzzv87jKOF0ZsbL6qCdzqEEji7ip-XLnsSdwOH2n9EppdVmwZdweNI1WwcROAbIJcSHN5qwplXIW454oI9lkHzB3GV0bTSLVGcgxBE7jVHlb6CoElqzSSrvCnTylcZ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/75" Replay-Nonce: - UEgPK0rQckOGL31ajF6_vQ Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/75", "key": { "kty": "EC", "crv": "P-384", "x": "V5VhxkTz-bCZNIIslkaF7eEuQ1d-hxE2hQIry6pZ_ocMsZf22IOXNwtrW8rOmQZO", "y": "MkgB6F6GS41KbGgiE9UI4Nx7KRefcLeifoNZldRQi7P1GPcUtk4mGebDYPM7DgIO" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/my-account/75" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiVUVnUEswclFja09HTDMxYWpGNl92USIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50Lzc1Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzUifQ","payload":"","signature":"fOKByeKmX9j5VxHiH10UFfp-QcfXU4IsFTYKzJ-4iMqN_OVZ7uBWBZpynM9EzuzOWqo-bbesA8eladGOr9XWn5uOYCOU8bSvatl-exAMWkJTPJ4oAhZvrHD4y7S0Ejm9"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - WpFzVcHnnxQNyJDv2T17BQ Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/75", "key": { "kty": "EC", "crv": "P-384", "x": "V5VhxkTz-bCZNIIslkaF7eEuQ1d-hxE2hQIry6pZ_ocMsZf22IOXNwtrW8rOmQZO", "y": "MkgB6F6GS41KbGgiE9UI4Nx7KRefcLeifoNZldRQi7P1GPcUtk4mGebDYPM7DgIO" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT - request: method: post uri: "/my-account/75" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiV3BGelZjSG5ueFFOeUpEdjJUMTdCUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50Lzc1Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzUifQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzp1cGRhdGVkQGV4YW1wbGUuY29tIl19","signature":"AxHnABRLi0AecBE2Cd49fgm4dMsrcF0fyMP-D29fxP337Hc9lNDqnZReVr3mOc02ezy6gujNaa1qFaMwdCVM4UU9x-EM6x7mlz0sGFGWdbSY55aBfeiRmC7U7Q-nkR2U"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - hSWCipH97jCluQOKpsP26A Date: - Thu, 10 Oct 2019 03:08:22 GMT Content-Length: - '356' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:updated@example.com" ], "orders": "/list-orderz/75", "key": { "kty": "EC", "crv": "P-384", "x": "V5VhxkTz-bCZNIIslkaF7eEuQ1d-hxE2hQIry6pZ_ocMsZf22IOXNwtrW8rOmQZO", "y": "MkgB6F6GS41KbGgiE9UI4Nx7KRefcLeifoNZldRQi7P1GPcUtk4mGebDYPM7DgIO" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:22 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/authorization_challenges.yml000066400000000000000000000220451463311421000245210ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - 4jcJtiZ_MCoDfXwStQvXEQ Date: - Thu, 10 Oct 2019 03:08:09 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiNGpjSnRpWl9NQ29EZlh3U3RRdlhFUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InBqUjhBdXl6N1UxeE1WS0lwYlJEX0F2ZzRGVHZvdTBfZDJrUzZMWkVqX0doZG5pd1FyQ3lYQjU2NzNROWpJcEM1eWU3TFpkMEtMRUo3cjFMY3hXTU5ES1UzdzloakVzTXNsRXo1aDB0QmhSOWJDSEFCS1B2WmNndkcyTTdJS0NsdERwUGJwUkN4dmJFc0F4NllnRlE2QVFJelk2aHppdlNCY0FRY2xqSU5TMEFiOFFZakdibmliVjBnLTBISE5iZGNIa0k3WGQxQXV6eGJOdlF1QmhseVVBQ2pLQnc2NnBMNDNjSmFhMXM4ejdOYkZRMzBsSnVXSHBNN25ZazhSZl9xaTFaNWRTLTVWLVJGTzBWeEJidTNwVEVEQXBSdW1VampBMThfbWVXeFNfcDZjYllJNmZwQTYwZldZZ0REMGRQX3Uyekxodng2bFBPXzU5ODFmeFV0dyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"MIZKLWW0K0tEoJ9Xp7iFAkbukEhSPlkjzkZDETlBASYCt5z1a2ftZ7y1YSHQIlEOJUMDwIec7c8KzMGyOQccAIKjQYoxe9z9Hz5GnqXloLrRmX43obALOqv8KjQBUKH3ZY5XO6TjhEM5-UyBdjEmvIgHdnOC-DQf7-zK5A3CD-zjAME7NF9lgEp6a6y7FIzDm1R3n4Oa8OQSixNOe8Xf1_joxnpqf-W1V82THsPsLJbWSX-o826bWLyp8cOJWNUmQhvbD3cGMRjFC9tefqAqqnYPGTe-KN4JzHxdzbut_8cthSDDfy7HHfAQI7Ag-m6jXvbR5IllBvni6KHTdMzv2Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/45" Replay-Nonce: - ySl06LOUyOPaGU3EkD77LQ Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/45", "key": { "kty": "RSA", "n": "pjR8Auyz7U1xMVKIpbRD_Avg4FTvou0_d2kS6LZEj_GhdniwQrCyXB5673Q9jIpC5ye7LZd0KLEJ7r1LcxWMNDKU3w9hjEsMslEz5h0tBhR9bCHABKPvZcgvG2M7IKCltDpPbpRCxvbEsAx6YgFQ6AQIzY6hzivSBcAQcljINS0Ab8QYjGbnibV0g-0HHNbdcHkI7Xd1AuzxbNvQuBhlyUACjKBw66pL43cJaa1s8z7NbFQ30lJuWHpM7nYk8Rf_qi1Z5dS-5V-RFO0VxBbu3pTEDApRumUjjA18_meWxS_p6cbYI6fpA60fWYgDD0dP_u2zLhvx6lPO_5981fxUtw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoieVNsMDZMT1V5T1BhR1UzRWtENzdMUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC80NSJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"H_smQjeqUch8qLD_8fMhg8qUTJ0r0mGfdD0EnecWG3A7upYCPxFG0tScxqSe9qNxiSWc9bE66hsomVSk6Kcuoorwk9_L8J2QtGsg1VJPuGrdUkMqtPw3zoAMBLiHc1F7z1N4Km9ZTau2XzUqPekwfgwZ87ybO6pcTBxHl18Lxc7P-43o6d_yygpGlg2dQGH3519Oo5yQHrLCvO_GmejIvZCPiZ2q1018KyZA8UFq7fRwmiH2Y6PSvs83S--F7dm58FbRzBEdSppuNwieQNUKcXjugVtcMnp7QaHQ4YRmicjS9sHirmBd3ftl800J9jdwD3X070t6vCrVKB4c79pRcw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/a3s4crCeGC6OX_xaqyBMmEHHfFRreTJ94_Ufft0Azk0" Replay-Nonce: - tN75Oenx5I-1J24wK0FmHQ Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:09Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/a3s4crCeGC6OX_xaqyBMmEHHfFRreTJ94_Ufft0Azk0", "authorizations": [ "/authZ/u7NCzERVTfL8v1Eg3nmdSl8Li9arBBbuebSpAdUzpe0" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/authZ/u7NCzERVTfL8v1Eg3nmdSl8Li9arBBbuebSpAdUzpe0" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoidE43NU9lbng1SS0xSjI0d0swRm1IUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi91N05DekVSVlRmTDh2MUVnM25tZFNsOExpOWFyQkJidWViU3BBZFV6cGUwIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDUifQ","payload":"","signature":"gPZfJpfwXTVyqcK2W67XJ21i_JQXbPKUZJTMck3JfXKNwpsoJTdO6F1MWH6iswMC81iCDi4Slkyz-P9mFqtEtIOiL47XECIR8IStZ11dEEcY2biaWc6kI_Jk0jCXV6XEqdrsrpPdx1f86n6SObeLizBpc0A3T_dwZ_1aSqdL_NWShwrqwKxbUcLRZXge4YQH5ekQTlCuEeQuzyFvqlcATi4Zk5Xp_e0Ok2aWIDDYzOtsK_8sPJsKaGzRRmMNq881mVZnpMVRZYznm9gFVyL-mZ4tW-t_svOIcm7qq4hbiYyjyl5p1M5YRkg5Qo5r7k8iE5e403SNzz0w4a0vevdq2g"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - iyk7bdtIKTIhXT4iUUDUVQ Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "dns-01", "url": "/chalZ/lIcr98EItalfzU8UeQxlGE8PyFhfdAtsQ41rKgYCfUU", "token": "jKXWn7PwoqZVJhibgCwsIaCIBN8JKtQixLFjGPfmDmc", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/tcysx1wfIiNDLoZ479RVOjohBK3LpuzX_Xo_7gvdu4o", "token": "rNcqoTZaZ3KqERfYAm135PdO9xuPRJt2Jy7PyH-VNVc", "status": "pending" }, { "type": "http-01", "url": "/chalZ/bgQZl22dfoUWwPVx_UCeb3QzMAelhsf1hz44enDdccs", "token": "6Lr63JYxaoBEFfPIggNAwKHjXHvmyCnvTGSqDSqPEvA", "status": "pending" } ], "expires": "2019-10-10T04:08:09Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/authorization_deactivate.yml000066400000000000000000000224151463311421000245260ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - _6LSj-ivZ142RU7fCXrWPg Date: - Thu, 10 Oct 2019 03:08:10 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiXzZMU2otaXZaMTQyUlU3ZkNYcldQZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiY2pMZlRnQzQ2QVdDNDhrTzZsWEtKTHVDQnF5TXRLX251aVVfN2VBb2JHRSIsInkiOiJIOF96NVk2ZTR2ZnZfNVFGYmZBb3pRYm43X1NLakJZMmVsLWpRcG9RMGI0In19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"dkAJI3LWzIq88Puu3GkqJOyLIHvMHrnYDtC8wNZkpM9Lr110SmFASrXa4aozqWCcrsZEthQRyzkJ74nkCk181g"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/47" Replay-Nonce: - _BYU7s79vQuCYkWYwE3QSg Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '311' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/47", "key": { "kty": "EC", "crv": "P-256", "x": "cjLfTgC46AWC48kO6lXKJLuCBqyMtK_nuiU_7eAobGE", "y": "H8_z5Y6e4vfv_5QFbfAozQbn7_SKjBY2el-jQpoQ0b4" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiX0JZVTdzNzl2UXVDWWtXWXdFM1FTZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC80NyJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"Lp9Rn23wZw8hBTQkfwjfqk0rZKVmRq9KOB0wIH7WNEep0tpcwzVKEnsNOgoZ1-Bo_3k8BZSmVovFRpphCz8J1w"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/SktKhwbq3Cu-eP4zwkk4SoZ1wVEGirjSx7kVcMbrvKI" Replay-Nonce: - vYpVw_JTVzFbX9jEToflOg Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:10Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/SktKhwbq3Cu-eP4zwkk4SoZ1wVEGirjSx7kVcMbrvKI", "authorizations": [ "/authZ/s6jpv9rQGWGeIxZ5XFjPV9Yyo4QfIyPQHBo14Hm8AMo" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/authZ/s6jpv9rQGWGeIxZ5XFjPV9Yyo4QfIyPQHBo14Hm8AMo" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoidllwVndfSlRWekZiWDlqRVRvZmxPZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9zNmpwdjlyUUdXR2VJeFo1WEZqUFY5WXlvNFFmSXlQUUhCbzE0SG04QU1vIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDcifQ","payload":"","signature":"_UW2-sMTZSM5CGCPayP-7TvY-q1G0LMOZzWv-0q5awwu30YpQ8lqqs4bgqwlNf4Yb-irwvG7i9HpEEyDA-N52Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - zAnucZvVIN6w7j4FGJVDZg Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "tls-alpn-01", "url": "/chalZ/5uik8jd2xcCJref5hUxOspC3pAgnx8kqGJWSiRM3cJY", "token": "MAZfhQSh30CUQn8du02NjG_7Hk5gG9fMFHlmOnoaXkM", "status": "pending" }, { "type": "http-01", "url": "/chalZ/eU4lQfAefwQnpUt_gLgWRXVPCyMivt04LMLKkPG_lGY", "token": "5alEPJITuvsErm2TcrguUzm9q33c0qt_j6x0DlxVcx4", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/p_6rtTBlTVc6r-Rz6kvY7b82x8-g-X_84GFSFDmYUto", "token": "9SlFVh3uqJlgWkWyjvKhrjoSHEq7tijmJEvXVVQF2AM", "status": "pending" } ], "expires": "2019-10-10T04:08:10Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/authZ/s6jpv9rQGWGeIxZ5XFjPV9Yyo4QfIyPQHBo14Hm8AMo" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiekFudWNadlZJTjZ3N2o0RkdKVkRaZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9zNmpwdjlyUUdXR2VJeFo1WEZqUFY5WXlvNFFmSXlQUUhCbzE0SG04QU1vIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDcifQ","payload":"eyJzdGF0dXMiOiJkZWFjdGl2YXRlZCJ9","signature":"0IWw5RaIXhSYys1-148MBZxF7TG4_VCoNk6SJPX4swA6DpXbYWt6PaMEZPSkrIU0F7SDqAV_6GZ1n0YzUeCkMQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - ve1IGHdI8fHozkwjsCFKPw Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '164' body: encoding: UTF-8 string: |- { "status": "deactivated", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [], "expires": "2019-10-10T04:08:10Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/authorization_dns_challenge.yml000066400000000000000000000220451463311421000252020ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - 3KJWdBtT-druZyDCS675uQ Date: - Thu, 10 Oct 2019 03:08:09 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiM0tKV2RCdFQtZHJ1WnlEQ1M2NzV1USIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InhwWG9BVTRmUGlIM3lNdUFZeEtCcWthYTM2NGRNcTNpSDNUTU9ZSkxZclp5b0tzU29hcmFYbkR0LUVrc3FoYTc1SENmX3NtZmhZVHV2b1p2YXBiSnI4QThSc0hhSkFEdVFnYTNHa1ZTY3g0ZGpLTmxtcmI1a1kyNFI1YndHX2owQWhZSExZbU14QWtRREpYSmtUcmdZSUhxbWNQbFI1VG1tY2RNMGh6Z0hIamJaV2ZpNEVrY2RxLUNPbi1OUGRSTE91Q0VrOUVfSUNuQ1E3dmJqYnFvSUxwa010cG9tbEp1cktwOEJrcThMeDV2eVNINTBCUzAtSG42MHo4UTZMb193Q2F1bGs1dmROdWg0Rm1Yd28ydm1HNjRwQ2ZRd1VDa2drLURyWU4tcUxoYloyXzhQOW1iTmpiRkI2SnZQMDd3WDFPWHpJLWk1SmJzenQ3MHVzU0FkdyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"L-MQ9PK9riqiy_QqSakEa7k_8eSjsP1EOoPETn0wb8FPbCYUsZDghRaJItnc3TnwzXhV43ZVjl9FOlEHI-z8jLg2BJdUCmcvEP9nU2cDHZf5ShgqjW-vJGPONGjURqZB4nNJL6dli2a0FGcoy7oeb3EciTLhSJp4g6bTC-HP8Vg-6xnzkMD3pu16UjxxZVpu-GiyY6XfBB9bl9ItBU9zJGvO4NgNJTEEZpoOWQ1E2PX522_jCv2ugGhtIRLtfrXJaq9swzlqPYBbtBwjsF9QmbzYQ6I5FDRqz_egBca0UAJSyXisJId4NZkJp1h9I13LIwYBhnuy-vZpEky_7O_Psg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/43" Replay-Nonce: - b0Svm6a8QJiMJaKJozR_Hw Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/43", "key": { "kty": "RSA", "n": "xpXoAU4fPiH3yMuAYxKBqkaa364dMq3iH3TMOYJLYrZyoKsSoaraXnDt-Eksqha75HCf_smfhYTuvoZvapbJr8A8RsHaJADuQga3GkVScx4djKNlmrb5kY24R5bwG_j0AhYHLYmMxAkQDJXJkTrgYIHqmcPlR5TmmcdM0hzgHHjbZWfi4Ekcdq-COn-NPdRLOuCEk9E_ICnCQ7vbjbqoILpkMtpomlJurKp8Bkq8Lx5vySH50BS0-Hn60z8Q6Lo_wCaulk5vdNuh4FmXwo2vmG64pCfQwUCkgk-DrYN-qLhbZ2_8P9mbNjbFB6JvP07wX1OXzI-i5Jbszt70usSAdw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiYjBTdm02YThRSmlNSmFLSm96Ul9IdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC80MyJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"Dhe5GZ_TxSYBgdrsojvV0C6iYR-V4sboK4M2KRarFKFg3Ca5tNZv50E93PwMWisO2xVm7uy57m34EA1EoJkZHn8zZ1LYvVVP30E26LGqp6WRc69eEY1J24tCeZ15_7Z_xUvo0mRSzroGI2qUtg_I2vyJpaiWYrLWM7CJAQiOzVt7xZQd2NtQO9yO3l1qIplJG0jxRsfElXZ_adnFu6V9Ek5MIEw5u3wuFdWO3ylcYAX34Vywjz3os71Xe2ghMqqMVvSm5vpVV3afsigqE7fKJSpkZtll1IwUZIGp5EEo1kiQ1vqrSk9thP35rR3CKSj3ptoMyz-hy7oE2RzLz9pDFQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/dywUEpcqLPS22GhLxoXRfOcxkzosHuhxw2K8t7tIyLw" Replay-Nonce: - VkrCO1skfinxqRQcbuo9sQ Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:09Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/dywUEpcqLPS22GhLxoXRfOcxkzosHuhxw2K8t7tIyLw", "authorizations": [ "/authZ/QCX_Vz4oC1k8GCjYRN43blNT8K5rV4p0VvoY75J8gJA" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/authZ/QCX_Vz4oC1k8GCjYRN43blNT8K5rV4p0VvoY75J8gJA" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiVmtyQ08xc2tmaW54cVJRY2J1bzlzUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9RQ1hfVno0b0MxazhHQ2pZUk40M2JsTlQ4SzVyVjRwMFZ2b1k3NUo4Z0pBIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDMifQ","payload":"","signature":"BgkkkhsNFugbSTjklqqVA-QSBlbvjxv4ewZ5nQHkqMNuY4NOoNYvLSLZu9W6aU2dgM6-a8Awq6yLYgF3z7W3w3xBj4QElXndbiiPJu6G7JMN9Zb18uUsfyE0-fdWUqADE5IK4bnWK1ZREGw88zlMst_IedIjp2vQXRQ7pXryguWIwxq39bsxuEuIoUxE9HWKkZ1e-SLm5jvTvZdNQepTqM9gpm0eUzIUh89LgObyCcGjfUEaBu2RW53Wj6AxBrhv_Dm0UXqjfBVvEQ71HNv2EjlsjuAI1c2XXDVVH8Y9kQkeE0SuPY-FcB3qEK5IVNEdeZ5fuc7FR7DB0bu1Y13szA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - LmdJFv7popZJvaj_K0zfeg Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "http-01", "url": "/chalZ/I8e-_vulYXpJncBb6QTPy-x32vGVBWYWQNQEfQapJMQ", "token": "ExaeFyYyEBBdabnoNL-19TS8T6s4MsZSXpVB8QBGDOk", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/TnafAJUtyeMBTIsokZROT2UO1SiN-fG8iGkVqfrYfm4", "token": "lQ1l1wv24HWBaDP_xlIilALd_c1NDTH2ICiJrLPRJUM", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/lPUCckLvxFPoSYfvD6VkjlLRYJsvrk6MT5QKJz6CPGA", "token": "2Er7lvQ6PYO9bD-Wk5uGasMJQR4H1Q-W4Y3rzQX4oeQ", "status": "pending" } ], "expires": "2019-10-10T04:08:09Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/authorization_http_challenge.yml000066400000000000000000000177241463311421000254050ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - ENbDqNTO3oKl2BbwCTj_kA Date: - Thu, 10 Oct 2019 03:08:09 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiRU5iRHFOVE8zb0tsMkJid0NUal9rQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoibjlrYjl4WFFjOHBTZ2EwZFpoYkRqWGR1Y0UyUmkyVGI4c3hraXJ1bGFxbWozNzdZLTR5MTliaEFiaGQ3YjBkUiIsInkiOiJBd0RqRGdzc0Z1LWpZaGs5bGhubXgtaDdYZjZxSU1PSEhPT1FxOTVVdjJmcUtBajBQdmd4ZUZYeVc3TG10VUJsIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"DoCH-M7eQyOqoLbGyYYYHTYwHnX3Zuge-nCtacDAIJuBO-rWfmiuvYbn-fmyPnFSzsiuj3aPkOi4Lp6jCLXY5rLqQCiTD9gGWK6ELp7laSX3kyzfGXhm-pZCAQl_AUBv"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/44" Replay-Nonce: - 3HJxdw2_lVu74rrkFv40Ag Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/44", "key": { "kty": "EC", "crv": "P-384", "x": "n9kb9xXQc8pSga0dZhbDjXducE2Ri2Tb8sxkirulaqmj377Y-4y19bhAbhd7b0dR", "y": "AwDjDgssFu-jYhk9lhnmx-h7Xf6qIMOHHOOQq95Uv2fqKAj0PvgxeFXyW7LmtUBl" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiM0hKeGR3Ml9sVnU3NHJya0Z2NDBBZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC80NCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"lZFkbf9XlWJgr8iQo1xVVmWMOnoSeLmNcdrDMk_xxlMMEnw_keHWr5_t9OPajzJwz8rcicxgB_7cPnY1z4Xh-m7S20rXJS8aVZQQyuChuphFXwj6uDL1YS8Nc2w0Mr5q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/I780HO_BH9VzHd34b2dLlpL-ff6ikkMD0vUfXOup57I" Replay-Nonce: - STgKfagvlS0bJp7m5oQ35g Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:09Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/I780HO_BH9VzHd34b2dLlpL-ff6ikkMD0vUfXOup57I", "authorizations": [ "/authZ/WJA4LOg7RQ30FIpZBVKEIlsrTcHSHjCwGrTmZKdiKj0" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT - request: method: post uri: "/authZ/WJA4LOg7RQ30FIpZBVKEIlsrTcHSHjCwGrTmZKdiKj0" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiU1RnS2ZhZ3ZsUzBiSnA3bTVvUTM1ZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9XSkE0TE9nN1JRMzBGSXBaQlZLRUlsc3JUY0hTSGpDd0dyVG1aS2RpS2owIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDQifQ","payload":"","signature":"zF0sGePGN2Y0VDkyBi7vYJW4YlMBBHMIPe_b6Ia-PDlz1WIa9s0xYdUXVBr5NoERzF5Fe1fpychAOlCfR0Kg4YAxQy_HTlss7cJh6jY2ZZdTj6ifJpQzv7krsZoHAD5l"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - hjORs94px5RbAEwVjWryJA Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "dns-01", "url": "/chalZ/2fYgNoiFwVWcqTULeSqdN1ggZt4cYuCVAfVEdsEJaH4", "token": "DtYTgFfXRLwl8v_d7IVgsAprLTTwROdJ_TAR1dTW4cw", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/bB4q9IzLykUE1Kt6GvkGRa3Xo7X7rTYopVTz4HgtOtE", "token": "i4kRIFQPxVg_0oT8YJ5umFdeH6wqBf16oUCksoAUWUw", "status": "pending" }, { "type": "http-01", "url": "/chalZ/0LKVDwWPXZzqegCfss6nLTVTJcqUMi6DW6TL6hyztXc", "token": "YS78P5G5H-FKLYzJML10rkHt7gPpIrEl-NC-etZ6T5A", "status": "pending" } ], "expires": "2019-10-10T04:08:09Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:09 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/authorization_reload.yml000066400000000000000000000245001463311421000236600ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:09 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - 8DmHt4kkr51_IN_kTIR8Ag Date: - Thu, 10 Oct 2019 03:08:10 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiOERtSHQ0a2tyNTFfSU5fa1RJUjhBZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiUGV0bjEyejI3UzRhU2tJQ2xfR0ptSlotbUYxU1JCQ0VVdERwMTU5a0lJQXdveUdrRDVnQlB3cWtrOUZ5UFRTZCIsInkiOiJ4aW5TR3UycUVwQmxFbGlPbnVMRnQ2UXZEd0Y1TUZfam02UHlRakFqNXF3b0w3ZTUyV0p2VDlEM2xWS3VCVVZLIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"Ik6EPVY_NGzD9B6HikvAJcLSEknP7o_7_eDFXoekjZYisWnyrMwnj1Pt3qrKAB7MsxMvsuxz2WfTOPzx2W4SeffFqp0FWh52H5-0VIDgi7syPmuYG9N6odRuuiqlWfSY"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/46" Replay-Nonce: - RkUmIY2y5Z33v8Wsyhd9LQ Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/46", "key": { "kty": "EC", "crv": "P-384", "x": "Petn12z27S4aSkICl_GJmJZ-mF1SRBCEUtDp159kIIAwoyGkD5gBPwqkk9FyPTSd", "y": "xinSGu2qEpBlEliOnuLFt6QvDwF5MF_jm6PyQjAj5qwoL7e52WJvT9D3lVKuBUVK" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiUmtVbUlZMnk1WjMzdjhXc3loZDlMUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC80NiJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"-c0oj6NrN-kcwzVAXJzP37rhCUxfwetr6B6I5tgb4M1U3_jIXQ4VXbt4IqQD_Dgca_xHXTNqJl3Wn85T3KoapHWBzqWoR2M5N4xsFAHvvqyaQNHxSH07f53cE3WUt47Z"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/xc1AWrQAsoIT011HHiwMTq0uiOogzqHFMr2O9UeiCUU" Replay-Nonce: - GYPBS14BluY6HeWQg06hJg Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:10Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/xc1AWrQAsoIT011HHiwMTq0uiOogzqHFMr2O9UeiCUU", "authorizations": [ "/authZ/hqP5_1LOgTHU_3OEyBy5cDLSmuOMNlRanFjyvFbPgFg" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/authZ/hqP5_1LOgTHU_3OEyBy5cDLSmuOMNlRanFjyvFbPgFg" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiR1lQQlMxNEJsdVk2SGVXUWcwNmhKZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9ocVA1XzFMT2dUSFVfM09FeUJ5NWNETFNtdU9NTmxSYW5Ganl2RmJQZ0ZnIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDYifQ","payload":"","signature":"ZQgahvCV26cAmkXg-z9kzicpSXvVLFBMrU8UxlnHRdZYjM_lMmcQJdxxb62qbg4D2tBOcvPuK4GanOKZEx5m8HzT_dc-5GXscfLyyOZP-z_p8X2PclLTxNNNFfQ1q4hx"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - pDq7FvzecqigZI7FzlSD8g Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "dns-01", "url": "/chalZ/DS-p0SNlEa8e5plN6Yqae51bGzy9AVwXu24ezKN82qA", "token": "E0whvlyCUKKm-J9sQyLsLQahnO7cRx7n_5M3GWirROU", "status": "pending" }, { "type": "http-01", "url": "/chalZ/mVPl5lWTTEWoMJiFFaube-XxZPjRQS02dKf5hVBQxAw", "token": "hFcY1WnGt21mXZO-yqA7DieFcee-0hRJ6KFPeeiaVEI", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/fWghE0Mncc-DTTWiuSRRr1HqRe9KVLF2jCr2TS_jEI4", "token": "pL9AetNfeEyxQpMbjQiH1986RbICvvq_Fyi4bq-mVGQ", "status": "pending" } ], "expires": "2019-10-10T04:08:10Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/authZ/hqP5_1LOgTHU_3OEyBy5cDLSmuOMNlRanFjyvFbPgFg" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoicERxN0Z2emVjcWlnWkk3RnpsU0Q4ZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9ocVA1XzFMT2dUSFVfM09FeUJ5NWNETFNtdU9NTmxSYW5Ganl2RmJQZ0ZnIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDYifQ","payload":"","signature":"_U9c5lO1_A5HLD6edR-vcgnd2QD4IP3pjS2xegKDe155fpsJm6JpVIfeTbl3aoxci6XakNZAMF8ZiYQHb3JC9YdYX1STLGxGnwEDVMloEp_S0AycGdctG6IM0OG6OXSB"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - y2Ma3Qbvi6t_tBceBvmKJw Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "tls-alpn-01", "url": "/chalZ/fWghE0Mncc-DTTWiuSRRr1HqRe9KVLF2jCr2TS_jEI4", "token": "pL9AetNfeEyxQpMbjQiH1986RbICvvq_Fyi4bq-mVGQ", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/DS-p0SNlEa8e5plN6Yqae51bGzy9AVwXu24ezKN82qA", "token": "E0whvlyCUKKm-J9sQyLsLQahnO7cRx7n_5M3GWirROU", "status": "pending" }, { "type": "http-01", "url": "/chalZ/mVPl5lWTTEWoMJiFFaube-XxZPjRQS02dKf5hVBQxAw", "token": "hFcY1WnGt21mXZO-yqA7DieFcee-0hRJ6KFPeeiaVEI", "status": "pending" } ], "expires": "2019-10-10T04:08:10Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/certificate_download.yml000066400000000000000000000505521463311421000236110ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - sjNfL_YgnC49g9xcA_saIQ Date: - Thu, 10 Oct 2019 03:08:16 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoic2pOZkxfWWduQzQ5Zzl4Y0Ffc2FJUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InRjU1pqb3RUTURFMmRQN1E2N2NUS3RhSnlFdDQzUUltaGoxLW40ZjNBTy1SelJBUEN3WDU0M1pzcjBRcXQzUHI1NXI1Y28wS09aUVl5LUpScVQ5YkFZVGFLMmdDY0xjSFpZRV9NTDZabDFzSVRUb29VMEpDX05JTHFqMjRQUUFleXdGQlVxc1FQYVVzQjl3d0ZZMnltdlB5ajg4MmdYc0ZXX2RZZTA0TUE0b3VwdXdBN19MMDFiZHhkT1JiM0h4MDRnOHVmcUF6Vi1qeHNrYlppdUZiUDBYdjNEd2VWcHNGNl9HV1Z0eHJvMm1Wc3N4dU9XN2FUYml3UDZBUlhQcnppM1prSG1OZEF6WG82RWthNTlGSHV6MVFCTkFleXV4SEx5SDNTZ1FkeG0yXzYxSGdKME9sV3RxSzA2akxIT2tuVGkzQUVReFRsVTFVNHVBZXRNQmt6USJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"Ld_nPc-sKOArz9XiHh5Bp8IVwIu0Yp3-s82_jn5ET1Z39XU4F0YEEzJa-iiyxxjTZ37ZuoEDpRjrPjbVV010vH0hFZoPgGJrggsQi2B6RJyEvfawo-ENG22YyTv2dF8t9ERm7XJFJlEvjzAlLuiOWiwkptDND7SCyZAsALn6wmPz6nHPGUYp8k_IiGE8aFLU2ugWfMSf5OoLkiE8fb3qBNh4kbriaYNWPR97xzptkVcZQhPQArPb20k5ZSkHiMVu17hMfcAtNq1gQYbh6AGv3qiGVks3DFpJzlTgz-c-nQ7yUKnvP25wLjdDNs_OvQ557o3qtGGLZDGt6QdOuyTEQg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/62" Replay-Nonce: - 6f5Dk-kRAgCBUguhejRIyQ Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/62", "key": { "kty": "RSA", "n": "tcSZjotTMDE2dP7Q67cTKtaJyEt43QImhj1-n4f3AO-RzRAPCwX543Zsr0Qqt3Pr55r5co0KOZQYy-JRqT9bAYTaK2gCcLcHZYE_ML6Zl1sITTooU0JC_NILqj24PQAeywFBUqsQPaUsB9wwFY2ymvPyj882gXsFW_dYe04MA4oupuwA7_L01bdxdORb3Hx04g8ufqAzV-jxskbZiuFbP0Xv3DweVpsF6_GWVtxro2mVssxuOW7aTbiwP6ARXPrzi3ZkHmNdAzXo6Eka59FHuz1QBNAeyuxHLyH3SgQdxm2_61HgJ0OlWtqK06jLHOknTi3AEQxTlU1U4uAetMBkzQ", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiNmY1RGsta1JBZ0NCVWd1aGVqUkl5USIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC82MiJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"lyxdT6pr7yQPbaIGjfZlUF31S4eSDezNEcLlcZHLdC9RCdlpkAfZSC3CImhgNZfKPRkcvxz-PkLBMNYd2tZVw8giKaaV3aa_h2o9Q2vl4Z7TSJ1ZDtTAyTe2JWuqrbW-Uz0Tlx8Ck6OftNmqlqS9yynSs4tSRdn4Tro5GAeCwTAdJFCiA3ZqdU_ZnBg3xr9u2N80pIY16HJVfhT9covYIDc-xSC6qQOatWXPsx-FdDhhcF5dsMrOpEl4RezM6mHcapWyweR1-zKytYHycyCf9JKKDaWv7YB0l2yRHYMqSMmZe-fTYDsrrxvVmcrzP_lhQD3z2wF9qG5Xjt7T1RPzzw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/g1iU4KfhVBp2TEhozuYpQl4lPB1nze--DKew6Qt8dEk" Replay-Nonce: - uhUATCsfTovyOrEcY_GG-Q Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:16Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/g1iU4KfhVBp2TEhozuYpQl4lPB1nze--DKew6Qt8dEk", "authorizations": [ "/authZ/kDkxDA3h7IwJZN6H_zbj2Z7csGk_HDJ4NcftQP6Q-oc" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: post uri: "/authZ/kDkxDA3h7IwJZN6H_zbj2Z7csGk_HDJ4NcftQP6Q-oc" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoidWhVQVRDc2ZUb3Z5T3JFY1lfR0ctUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9rRGt4REEzaDdJd0paTjZIX3piajJaN2NzR2tfSERKNE5jZnRRUDZRLW9jIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjIifQ","payload":"","signature":"r_Oc3Wx3YYfn61TJjm-YOcPTuSymxCRnaUtJg_cGWz1WdyJMIifhBRDL8M1ht0X5n159cKI7lTrI9vSQWeRQpuWrIufU4qskVaHssSGE1MnPhYEMujno2PWt53hSXndr9Yi3WlS27lwi3RbuoLSwSDhA5lfLCDuVD4ep8nYuhGk3bF7oXnugdSNhDIu5e8Uy9VzGko9ye6Kkpq8V6vOLoeZC8mMlV2VKl_0_GKjaOwyPM2-mhhYLzTBd4h18GPzJkvyihVJua8Wbtu3hQmqsO-tVxTaLxXzsN7qQZjFfJ0eqNafbD127f25AgcNHaYZ63-Xo_xUkYvoeQvigZX92uQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - NwvHdGqPOaaAcGHhIyEnMg Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "tls-alpn-01", "url": "/chalZ/6JSpO0u0muFr1tRa_uvvJi9SdD_wEnWcJ6HW4Ke9ugU", "token": "apcWTbuUVPjf4MwOdHGMtqgorR7qXcTGBVaGpqtW9hY", "status": "pending" }, { "type": "http-01", "url": "/chalZ/59W7Vfxr-JHTLsK8J4Nwg8iCFNgA9FGVvwlGH9bo_Lw", "token": "cJKXCm4d960dASmMBvtNSjhKclTSacjPzlJeAzDcdpI", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/jr17Ciwx4dtnIQFLVJIM0W1Yat5vHEMnbHR8qAmIjy4", "token": "fXRVB5wTdM5VjpxPIcwra7yW7FPACYkikopWmAlFXco", "status": "pending" } ], "expires": "2019-10-10T04:08:16Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: post uri: "/chalZ/59W7Vfxr-JHTLsK8J4Nwg8iCFNgA9FGVvwlGH9bo_Lw" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiTnd2SGRHcVBPYWFBY0dIaEl5RW5NZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi81OVc3VmZ4ci1KSFRMc0s4SjROd2c4aUNGTmdBOUZHVnZ3bEdIOWJvX0x3Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjIifQ","payload":"e30","signature":"Fgo6js43LQ3kI6HQ9Bi_yfOMfOO2JoSUr77mm1h164dsS9qig9eaunViRvVF6XabavHRFTZQqTelruABIP1dhD8jCOIGEnuk9VKQPr7LwGcv8oqTXijyw6WBSxJDdAajN26uQzA3Jj6cQ_d4W-YQIg4z7T2OForbEcULMVpBC2z9RrXn2ZVi0ryWCRUjo8Fvy0YB9fK21jraRiIMZ4YNv0_G2bxFxmh0Jl01pZZXJG3MSlBWQ2XBtgNzIFGkcUJ9xNd2BzvU6ZEO-RkFJEUa6q7r-8y44gMILqKUVV1E0Fa1VxKLa1K-j4MQqXucyhpnQcBdGcgdVWDIsrx-2HMxdA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/kDkxDA3h7IwJZN6H_zbj2Z7csGk_HDJ4NcftQP6Q-oc>;rel="up" - <>;rel="index" Replay-Nonce: - dz3OZRmgoEGt2ruXJ6u8Yg Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/59W7Vfxr-JHTLsK8J4Nwg8iCFNgA9FGVvwlGH9bo_Lw", "token": "cJKXCm4d960dASmMBvtNSjhKclTSacjPzlJeAzDcdpI", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: post uri: "/finalize-order/g1iU4KfhVBp2TEhozuYpQl4lPB1nze--DKew6Qt8dEk" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiZHozT1pSbWdvRUd0MnJ1WEo2dThZZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9maW5hbGl6ZS1vcmRlci9nMWlVNEtmaFZCcDJURWhvenVZcFFsNGxQQjFuemUtLURLZXc2UXQ4ZEVrIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjIifQ","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFERUp4bmQ2dzJHOHIweVhtWmV0RHRMTVRIVEoydjBKTExXdThwWWhYUmJvSVctZl9Zd3hiZ1EzUEQtUGFUaHltRzFHMXpvTWtQT2VGZm41MG5WWXhwc0s5V0Z1MVdSeDc5R2NSZXA5c3dHbjdPVVJlaVBXQm1xaWZjSnpvY0tkbnRjZFhjX2FVdWszcC1tUXYybTVBbW5pTlE4YUhMbXE5a2t4V3ViWnQxMUFqTk9wVVZKemQ0SzhSaHNSZWdCMzdDX3lQaEtIYmo0ZXI3amFsMGY0dkdzeWJaT0l2TzRwN2kwdFZyR2RkcTZOS0R0UmxibkxZRGprY285UmtMWWh5ZGdrbjZ0LWlnRXd0TEZMc1VuNmw3NE1qTU9mb2g2TTQtQzJjd0pqcTZ5dnMtUy1OeWlrX0xsOFR2cXBMdFM0azRWLU54dkhSZkhJalJsU0ZwakJPUFhBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFDb2RKS1pFUk5LMWs0MFdUNGJrbWo1WDlPZHNYS1Y0S3o3dVNtTEdRemkxblBrNEJ5N09IX04yNHZ6SXZVbGVUZXdvMnNvZEstREFrNFRNSVpkSHplcksweHVjRy1QdEVERnZnTVNkWUs5ZmxzTFh2T1d0Vnk1X29LbXNxYnpydDRVem9yTXpjVEVLV0hBazFIWHJoYWVZbF9lSlZucWMtclcwMENlelN5TUJtamEwMGFSY2xjY05mUmdkSl9STkF4X01KdE5tWDgxeHo2UElHUlB3RC10blIzYWlpTkpuLXg5QWJoNWhVTTlxTzVnYnUzY2pDd01WVkJpdkFvZXNkQW5zN1Z3ODc2aHgzODVWNHR2Rkx1UTZ4Ni1FRlhJTUdWZHdZQzFyX29wNGFjRXVjRi1MN1M1dmpfX3h1U1hoeVE5a0ZJaXFNYmNFaDB1V18ydjRBdW0ifQ","signature":"qi303cl4x2OtQ8oqLtt819RIu6kw-ucY2NhJinWtj9Nr7nZpEZ5JvOSfh0VDJdpGnxrfdTgZoc_iA1Qz6HQcrtOoE8gKIUuAmjUNqho33xu0NMH4VrHhwr_0YuVxLEgH4tCxxegFFDp_VajHIGw3ac5vUukwSPp8p3T4lnaoJ2t5ShTcS2J1C_tII908w5nJvPJLDRq7Iu4As0f0hoSuB2kCuhcqB9N8qdrJ3DIPglVr4yserdmpAh8Vhf7tGh5yW5CxnqKuttN_NBlokmahSmAXCpsjSdqKfsdhDnFBgSrZUMnZtO1ejq_3yQXedNjiDrNUAF2ApXWU-KLwovxSFw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/g1iU4KfhVBp2TEhozuYpQl4lPB1nze--DKew6Qt8dEk" Replay-Nonce: - 1mMUz9mx6DG1Re73JbiA2g Date: - Thu, 10 Oct 2019 03:08:17 GMT Content-Length: - '385' body: encoding: UTF-8 string: |- { "status": "processing", "expires": "2019-10-11T03:08:16Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/g1iU4KfhVBp2TEhozuYpQl4lPB1nze--DKew6Qt8dEk", "authorizations": [ "/authZ/kDkxDA3h7IwJZN6H_zbj2Z7csGk_HDJ4NcftQP6Q-oc" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT - request: method: post uri: "/my-order/g1iU4KfhVBp2TEhozuYpQl4lPB1nze--DKew6Qt8dEk" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMW1NVXo5bXg2REcxUmU3M0piaUEyZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1vcmRlci9nMWlVNEtmaFZCcDJURWhvenVZcFFsNGxQQjFuemUtLURLZXc2UXQ4ZEVrIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjIifQ","payload":"","signature":"LuB3JZdpgYE0NyNWS-vJo3MsFdv11X-aHMCEV4LouRFxzsAtMKL-P_cvH4_eT4esSZzbWU1yzJdxsl5Jw4t6WEu1ZDSbrNV-TYPopXwCDKYyAeo1ENjTh6XLRUagWD8uHPC0sP2SYphyNAcWtwaGlCGH-_9mviTUeze4M95-PG5WuRe6pdecB25eN6kE7tQe5EOIR_HuWqqpKCIR1IYOQ2_rwetKDIrm2PuzLGANAvdj6bNj9dBbxlIUWSAmDezFxn1v3snLlTWb16Ts1Cn7pINHVIuFhaf_3pyY0LxaH9qhHz8At4mjxDsxFy-lJZC3TEwOkOHjktRM2yKEjsDydg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - XjdhhoqUC8ys775aMoaF3g Date: - Thu, 10 Oct 2019 03:08:17 GMT Content-Length: - '452' body: encoding: UTF-8 string: |- { "status": "valid", "expires": "2019-10-11T03:08:16Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/g1iU4KfhVBp2TEhozuYpQl4lPB1nze--DKew6Qt8dEk", "authorizations": [ "/authZ/kDkxDA3h7IwJZN6H_zbj2Z7csGk_HDJ4NcftQP6Q-oc" ], "certificate": "/certZ/5626b60eb68e2dbe" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT - request: method: post uri: "/certZ/5626b60eb68e2dbe" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiWGpkaGhvcVVDOHlzNzc1YU1vYUYzZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jZXJ0Wi81NjI2YjYwZWI2OGUyZGJlIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjIifQ","payload":"","signature":"pMfijDLa3LhK-IJ8dGVVjEwnVH3d3QGFwjlVzH6WEyzFv-tYLTQIVqORAQi-03Bgb2MW8Bi1t-AOBtFQ7o5V9fMPLV5mu7YRFfBJQWsvezKdwxEsjuDD2CP8yQZY1U-fHpr6k8WSB-rTvDlQjU3FTrQkww-9WRNaKmTRUK3cPKob-UNg3BUCPgsz8dY486oG9tJLmzhoKXwYqoazk0quLBZ19_qxNoqo1MbXEhIIcqdngZjmaAQ29iaiiImebs4729m2f1eUdQHcs2N0cdsrtXfwy8diQrOV1-K279vunF85zwl1ZxGodHJo0PPvkAJtAIahg0tD1EodXmolvwpFvA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - application/pem-certificate-chain Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/pem-certificate-chain; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - pygfaVI3gzzBT9Za9u2hvw Date: - Thu, 10 Oct 2019 03:08:17 GMT Transfer-Encoding: - chunked body: encoding: UTF-8 string: | -----BEGIN CERTIFICATE----- MIIDWTCCAkGgAwIBAgIIVia2DraOLb4wDQYJKoZIhvcNAQELBQAwKDEmMCQGA1UE AxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA2Nzk0NDAwHhcNMTkxMDEwMDMwODE3 WhcNMjQxMDEwMDMwODE3WjAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMQnGd3rDYbyvTJeZl60O0sxMdMna/Qk sta7yliFdFughb5/9jDFuBDc8P49pOHKYbUbXOgyQ854V+fnSdVjGmwr1YW7VZHH v0ZxF6n2zAafs5RF6I9YGaqJ9wnOhwp2e1x1dz9pS6Ten6ZC/abkCaeI1Dxocuar 2STFa5tm3XUCM06lRUnN3grxGGxF6AHfsL/I+EoduPh6vuNqXR/i8azJtk4i87in uLS1WsZ12ro0oO1GVuctgOORyj1GQtiHJ2CSfq36KATC0sUuxSfqXvgyMw5+iHoz j4LZzAmOrrK+z5L43KKT8uXxO+qku1LiThX43G8dF8ciNGVIWmME49cCAwEAAaOB mDCBlTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUF BwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFAfAEkQ6UAGSjyzqImsir2+KylQa MB8GA1UdIwQYMBaAFIiN1hLypsnm8KWVi3ItK0Unjae0MBYGA1UdEQQPMA2CC2V4 YW1wbGUuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQBeF+1gIU76rjruiiefWLU8bdhd VYzAoGI0/o3J+R5Q5IRkZxx3lEn/mUCkXed7iqfm5fq6Xd3ZcL0x29lsR7ppZo0J x76XwOq2mePLpQJaQ4V7pD9ahVHILHhOxhetp6l40VE8KuHg2Qlwn8S+ZTOp+6f0 LnXvxPT0zcnwsmqIELVv3y5NNetFj87AaLOtYCPRKRV7ACXVMHj6Jcfupi/Zsk37 rGEIp580kx3KgsEm4pUOYNx1oEOcp1dsNoIiw1ZOTdt3Q/ZxqgXNlDVQyk5QCXcB iPbXJtPdDZja/DeM+22K8wEoUSrcSdPNOYzV8gdrVYhVJskL7uZeWBkov+iH -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTjCCAjagAwIBAgIIH8F+H5a3JeIwDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UE AxMVUGViYmxlIFJvb3QgQ0EgM2E1OTY4MB4XDTE5MTAxMDAzMDU0MloXDTQ5MTAx MDAzMDU0MlowKDEmMCQGA1UEAxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA2Nzk0 NDAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1TkMbn1tCv0QXFen5 Was596VScGyD0ifqoq4/kb4WQ/debH8coZzz9pVKTPbZySY/X1ltStYBI/2GdIZg t/uw9hOW7ko2Agy4bcd6tD9S+eZK4F3rH1EJutUjuq9WLmmckT8PJEbToazvDTL2 v9YGcf56v0SCuCYQshNlx5ECKb7kWWqy5D6OzJPB24BRFX7MTD8ckkdhQmzafyI7 vVkDrHFUZslx1BUQ6lfJEy0mi/UmTgxrjPwTfe5UWF6N3AZDEUng8eWAnKW9px2g 5qTUShGMZG6E6OkFHX6rmT3MVuO+rWVpyW1zKbWxvlcAyyBR91Ju6tsJFF/1Y9t+ +XHPAgMBAAGjgYMwgYAwDgYDVR0PAQH/BAQDAgKEMB0GA1UdJQQWMBQGCCsGAQUF BwMBBggrBgEFBQcDAjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSIjdYS8qbJ 5vCllYtyLStFJ42ntDAfBgNVHSMEGDAWgBQECikuQVoCg4iOTz+f+0K8SqRdsDAN BgkqhkiG9w0BAQsFAAOCAQEAeyRyz24bmQqWGYXkM02ZWHlom1FNXVtfNOlzgzjC 8sUbFYJDaXefS7x1KJwGparNWmn0jopBrSjOJLCDDphqk1DcS2YPu+7CcyodXyGw CxRSe7gYGx6I0Z/wReeb5rscJ21kJK30Tt3z2hLXWBkxfdcHit3JNLn3HA5HQRph HUr3EUzoFHfNCBecY8lWkmLeN39I0MMCis49DTact6M1jT+q1c+MzjuWO+Bst6mr 6RebdTn4monMOHvmbaVR7+klY05dMjatBF5gV7sf8mPJwUZP5NnEcTLe6zgb+dh4 kDc7qJ6UvkuoDJmbHeSd27GdCJfK+nwc49UG/Fmd8+Zeyg== -----END CERTIFICATE----- http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/certificate_download_with_alternative.yml000066400000000000000000000612011463311421000272330ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Sat, 12 Sep 2020 17:27:51 GMT Content-Length: - '396' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "externalAccountRequired": false, "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Sat, 12 Sep 2020 17:27:51 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - DskQh-iXl-Dv8pLgernBeA Date: - Sat, 12 Sep 2020 17:27:51 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Sat, 12 Sep 2020 17:27:51 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiRHNrUWgtaVhsLUR2OHBMZ2VybkJlQSIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6IjdEem1UUmJvVzh0RTU2eUNOODVtYU4ySTc4cVdpMGdtU1VFRThVWTEwMEVJLXlIdjRZZzFuaU9fZGpXUllVemtsMVZabldxN1FOUExvSHJZdEx1eHVncXNlRE1wRGdXNWVfeTVmbjQ3NUw2LTBfYWFZbm5aSGl0RlE1a1Jhb0FYbGJ1UVJlYWFYczBmaGp6LWc2MmYxQjlBTVlTc2tCMV9hYlBqV2ViNFo1bzV1LXJPOW5qckRkZHFOd3liRVh5X29qTnYxekprUS1xRkUxSU1kajR3M0RzaHptcldrMEYtemE0ODZkNmp1SU1hLXdUZHBVNUpHblVOOTdfdGNEWkJmdnJFY0wxaTMwa1dmX1c3eWpBSC10Ni1LaUVrSDFFQWJucjk5bF9Gd2lZd1hPWENqX1kxZ2Q1TUpDMmNmS3Y0UzVTUUt1N3BobE1fazdoU3pRVFdrdyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"0IbBSwINj_5FGiEpw-YNyKO0E9HxqMe8AKvsmJNjEi8fJqcb53JYEM8QEeJuB5UKfhDXWQ0MSyRffO10X-Jat1zgQszpF_Qfntc_CirvK9FLj6lZsoPQcjkhJ06XKOH6zmYFbDfrhLNgVU31ilsXak5_Wt7QgoS3XkQfDknMC-632lYnbt0zCZsiLJoWzr_Y9dWjGcrVMYFoIIk6B7g-ruRHpLYNZdFto2t89qQATGgoo_PaSvzgm5Zgd5qzlTmB5CcP87U3i14vtzZnVRzCzIwK3vSrnIjLLdHPCxR5iPtOyLc5X-8o1ij6FSG0-3BNZp3tk6cFFsXCO6jdhtiayQ"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/2" Replay-Nonce: - zJhis_WK2ew36HnFUk3axw Date: - Sat, 12 Sep 2020 17:27:51 GMT Content-Length: - '543' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/2", "key": { "kty": "RSA", "n": "7DzmTRboW8tE56yCN85maN2I78qWi0gmSUEE8UY100EI-yHv4Yg1niO_djWRYUzkl1VZnWq7QNPLoHrYtLuxugqseDMpDgW5e_y5fn475L6-0_aaYnnZHitFQ5kRaoAXlbuQReaaXs0fhjz-g62f1B9AMYSskB1_abPjWeb4Z5o5u-rO9njrDddqNwybEXy_ojNv1zJkQ-qFE1IMdj4w3DshzmrWk0F-za486d6juIMa-wTdpU5JGnUN97_tcDZBfvrEcL1i30kWf_W7yjAH-t6-KiEkH1EAbnr99l_FwiYwXOXCj_Y1gd5MJC2cfKv4S5SQKu7phlM_k7hSzQTWkw", "e": "AQAB" } } http_version: recorded_at: Sat, 12 Sep 2020 17:27:51 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiekpoaXNfV0syZXczNkhuRlVrM2F4dyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzAuMC4wLjA6MTQwMDAvbXktYWNjb3VudC8yIn0","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"gd2-TtYFseMIZftT4A7QCJEw6vHSjpHS4oG3NMa1biUKqFDCphhCDcy3iKerRAMkC4A2vSb9zFANtrISli8yacP5Y4EiviO6aX0c8qmxsQ2MMenZMjQn1nLB6Na79-lUm0LnEe9Q0OgzgjUWxtUjlRFDtdmH_G-Y23cuNU4PNxchB9PFwBbzJ4o4iYKUP5BN3mMWyz1UTFgbbYJ5cbmLYDflSyMuJdgOhlLIkgvkYHjeI1sJGAAM0YLwewK7iNVvA98g0dNWo6heUDwOqbUCikNP5A1n7ed8ugYm4hBPFJ9dShvjvNYBx3nUAoc20caWFcubHW__gq8rIeBc7fs3og"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/3C4it1X7pSHxMYCUjRjW1_jvDTuaOi-BeJoHE8Ug8ks" Replay-Nonce: - UHHezuMpWAZqj_LPLDZuAg Date: - Sat, 12 Sep 2020 17:27:51 GMT Content-Length: - '370' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2020-09-13T17:27:51Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/3C4it1X7pSHxMYCUjRjW1_jvDTuaOi-BeJoHE8Ug8ks", "authorizations": [ "/authZ/eNpi2tKjqzBxTCLZ70_cbJZvQkhQt4POA7XWeaIAK8U" ] } http_version: recorded_at: Sat, 12 Sep 2020 17:27:51 GMT - request: method: post uri: "/authZ/eNpi2tKjqzBxTCLZ70_cbJZvQkhQt4POA7XWeaIAK8U" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiVUhIZXp1TXBXQVpxal9MUExEWnVBZyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9hdXRoWi9lTnBpMnRLanF6QnhUQ0xaNzBfY2JKWnZRa2hRdDRQT0E3WFdlYUlBSzhVIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvMiJ9","payload":"","signature":"6mpcHs_I56mXzh2LYny-LjVVw2OXwTV3pDsqaLqMkjg7UNNfmpJwTbQiFRYHyzc9u2xy2AoNWsf_x1WxMIXtfRvquSJz8xIDPGZYEAbTDSCNJBo3WFU3v9RfFECm3_Bu6t8t22HIxOruzc0N0VO1apwvzbbb42EwWJoqsPL0n3I20Dm9LqOLaNjMcEhRXZswb3rfOMIclrG_qnLFH_KJkYSOHHEx9m6fqQRa1S0NmrQTGvrbOTbAkt7xJ5ojtDBBnRumgMKnptj-HvKHmSZGr9cV7FSba_4H7c8ELsIMqzPg4PbLOcriwy2oYQun0boePg6mqZcsCxYokYSbUDEqZA"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - 1qahbsZqqDtcHGVbxTioAg Date: - Sat, 12 Sep 2020 17:27:51 GMT Content-Length: - '856' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "http-01", "url": "/chalZ/1JprbgTy-eEqtY51h1tCZuc44fMxT2mI0y_nLyLwxT0", "token": "JCGJaeS3zic0lGJSioOja9l2e9sc2HeDesMfqCAAn_o", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/5d36mB06nbHFzM2Bkwt-UFH3Skniez7lR8eC46afgkY", "token": "JQxR6Um7gXd9G_e8txJ7NjqHdTxRicWSSwPn_gNZc7I", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/yIhkLK9_WkTehAiJxGVURcRvmVdcuz8IxQJQOL7dt2I", "token": "esP-Qq8Inv7I7OdsF8Wow3I9nIF71LApEwS7CmVTnTM", "status": "pending" } ], "expires": "2020-09-12T18:27:51Z" } http_version: recorded_at: Sat, 12 Sep 2020 17:27:51 GMT - request: method: post uri: "/chalZ/1JprbgTy-eEqtY51h1tCZuc44fMxT2mI0y_nLyLwxT0" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMXFhaGJzWnFxRHRjSEdWYnhUaW9BZyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9jaGFsWi8xSnByYmdUeS1lRXF0WTUxaDF0Q1p1YzQ0Zk14VDJtSTB5X25MeUx3eFQwIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvMiJ9","payload":"e30","signature":"CNFbZRzGe5L8n2Ni-TkFhJQYO3eQN9ohN4gHq56QikDKyCgRGWa95UZlwNruFX6f6nbuIfRl-cO5tybzjDOhDzykepaqgdX7FErK7jYaSwTKHyVM2at9tEqzp9W65PyjE9CF2SMrBvofR8i0OJ_3BZ_0NfEygd3cqRPDmHkWMOBnZ9o275RAUCq_zSSoCq33c7AscJfDWvEYZdnhOcQ3Oy0n5rAC0a5k5v1DQtm309Auv98yXlq9LlP1qRZr6gef4Qjx6ByADsMj3h8Ts8ewyriBvFVlDbu1TBjnpW26pnQYuCGEj7LkoOQkZrxqygyu--1TL7V0xlcyz3jL411-qw"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/eNpi2tKjqzBxTCLZ70_cbJZvQkhQt4POA7XWeaIAK8U>;rel="up" - <>;rel="index" Replay-Nonce: - T4ldqWYYGMrr2GF0qLZjYg Date: - Sat, 12 Sep 2020 17:27:51 GMT Content-Length: - '192' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/1JprbgTy-eEqtY51h1tCZuc44fMxT2mI0y_nLyLwxT0", "token": "JCGJaeS3zic0lGJSioOja9l2e9sc2HeDesMfqCAAn_o", "status": "pending" } http_version: recorded_at: Sat, 12 Sep 2020 17:27:51 GMT - request: method: post uri: "/finalize-order/3C4it1X7pSHxMYCUjRjW1_jvDTuaOi-BeJoHE8Ug8ks" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiVDRsZHFXWVlHTXJyMkdGMHFMWmpZZyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9maW5hbGl6ZS1vcmRlci8zQzRpdDFYN3BTSHhNWUNValJqVzFfanZEVHVhT2ktQmVKb0hFOFVnOGtzIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvMiJ9","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDdVRycG1IZ1hhZUJtTU93U2s3bnhLdWVmbFdxQnZucnRRcFROQ0ZzX3hsbzNVTmh6c3Jfc3ZBRzRnV3hYU1YxOVFnTmRUbGFnS1l1YThXNnZMRWIxeExCRVRyRldKSm45aERfaDFiM205TnltMGd1WWpURkVnWkRHOGJ4dHpZVmtWY1c4MHJrSFV6SDZvMTVTWjRfanNNWkptVUxxVjJlRjEwcUpraU1GOTZuX04xcFdXRDNWaGR5S18tZkpic1BvbnNnS1pMRk1ZZVY0aWtubm9NOE40SVpoUHJFQVNRSi04RHpCb1J2Wk8zWFJYejZrN0dEOXhzYVA1WGxhMzNFX3VTWEZHR0NVRE5wSnRvSXRNTXQxV3BodG95eEhBSkRLMHBpckNSYl9nN1hxempWdUV2LTFyaWtCZEdULW5oSDNNWFdoNGpZa254amFLTFZNM0VMMnZBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFDS21vaTRodkpMOW15ZV9qMFdiRmFSckwzQlM1eHdmelFFSkl4d21pZUxCVTFWQngxUFZiMFdKRVB3VHVodVQ4WHBrWmJsM1lKTHVUUjBZcWdIZmk2QmhrS29Hc0UxeTZJNGdkRUNIcXBicHNJVU5Oay1CTEJraWFMbk1WTWZJZEd4aDlSREZDdFp1b2xqQ0dVWVZrcWhSb2g1SEtrNkdaUC1IdV9vMk5fVFJRaVJsR2dGeTJmcG9fTWVPRkRPMkhnU2ctamhqS1JuaW85NHNoRjNNbXlJa2c4ejFUY3kwdEdZczhPMF9Dc2ZpNFpEUVNoUTJ2bHBKdmJ1b3Z1bENiXzYwMXFndWswaV9uY3BuSHFsWDdRMmRKZUM3YUZJaERsY3dwR2E1TmdwenQwa2x2RHk4bW5KOGJqcmhJdlNkOVk0OVE1ZXJSb3VveWw3QzlSRHpoTkUifQ","signature":"lromIjoGV_45v0RbJ3obEHGXrm6SOcN5n-yQZ6f0Mtk5sNdiPnNlrMVCnn3MI58IHVPD-iDgrU2J3nN40xohpCvqppDuhqhIQKLYECjgWKa93W46AR4Fvxt2liwkcqBx3eUtI9yGThbXy1b-bxN3z42LtEvmmRrRuQ-DIwBGbhSWuJEa1GuPZqQJQu0gPECMrlXSuaxIkPkXAo1jFbJVjpgH4LcUeT7daRtFeDx83ayq7HcAwIRoce30M_-RaeYDPavl9Q7iJ5gBLuYCbpNqmd65nMoT50M4TN0LNOrY7h1G2GLT5nL_5ispwHH70YHe0G-8QHXyCV8zYf19qpxHNw"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/3C4it1X7pSHxMYCUjRjW1_jvDTuaOi-BeJoHE8Ug8ks" Replay-Nonce: - 8Lr76qktno7FYKQfd8BgXQ Date: - Sat, 12 Sep 2020 17:27:52 GMT Content-Length: - '373' body: encoding: UTF-8 string: |- { "status": "processing", "expires": "2020-09-13T17:27:51Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/3C4it1X7pSHxMYCUjRjW1_jvDTuaOi-BeJoHE8Ug8ks", "authorizations": [ "/authZ/eNpi2tKjqzBxTCLZ70_cbJZvQkhQt4POA7XWeaIAK8U" ] } http_version: recorded_at: Sat, 12 Sep 2020 17:27:52 GMT - request: method: post uri: "/my-order/3C4it1X7pSHxMYCUjRjW1_jvDTuaOi-BeJoHE8Ug8ks" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiOExyNzZxa3RubzdGWUtRZmQ4QmdYUSIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9teS1vcmRlci8zQzRpdDFYN3BTSHhNWUNValJqVzFfanZEVHVhT2ktQmVKb0hFOFVnOGtzIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvMiJ9","payload":"","signature":"fdPL2PEIQiAcGwDX-Wc32nJ3m6egS0J_XkG0jvMLb47_C1ts0S94YGBipOU8AsxkDuvsyjZHlQLOhsG3hvqIXaOL0PWWQOzqJJMslqsj9TEuGuB1LTM5rp4YAZ5jJnlw1wisR-23p5GNU8t-VAIdLxXnM3pUtLpfgHdNs2cBludOoJtO8j4uEH-mhOhln1NQjkAuCS4dXokyh6ObHU9xFCPVXjY2wqsbiCBVj9A3JVZoGhC02QcBULaaXhRgYrlp4Ci67NfHFCKvQM6MIhHr1AvJmvOoNiT9EXOdQmHWVRFbIj_bg31OkR8z-Tda-ZdyFnhPlgWfGzkpBbsUCz8ZpA"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - 7Xc1KOpyDqitD-XQQ1FaKQ Date: - Sat, 12 Sep 2020 17:27:52 GMT Content-Length: - '434' body: encoding: UTF-8 string: |- { "status": "valid", "expires": "2020-09-13T17:27:51Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/3C4it1X7pSHxMYCUjRjW1_jvDTuaOi-BeJoHE8Ug8ks", "authorizations": [ "/authZ/eNpi2tKjqzBxTCLZ70_cbJZvQkhQt4POA7XWeaIAK8U" ], "certificate": "/certZ/3a815d9ff4a1dcc1" } http_version: recorded_at: Sat, 12 Sep 2020 17:27:52 GMT - request: method: post uri: "/certZ/3a815d9ff4a1dcc1" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiN1hjMUtPcHlEcWl0RC1YUVExRmFLUSIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9jZXJ0Wi8zYTgxNWQ5ZmY0YTFkY2MxIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvMiJ9","payload":"","signature":"bCRjR5QXh4QLCaaNKP0MnlFa1mB4hRIUMJzLFAHgVBy1RRJAMwHh7_zs8tiYEe_Z_MGI9yEIXXevB1lAGZc-5FLlkfvaY_kQNSSWoX_TtDsM9DXrbYJxNdS6VOEpb9KGwj0EZVvKYWgb4L3W1-RtqLdAaIJW8X7M5PcHcV1_5V1qSUazG_mDpdg3I80MJArcHEhDOugs76uaR6pSFENVh5TU6kERNbQNGoaZXAx4w0cFBhkiB6vJaBRa2_JaeINWgdM12Zptrbh1C8EcXGm0M1CZ-mZBKxmZD28eczewhFv1v4UpUPIatkfDrgtsv_l6fW6j-a4sHUmJrsJMpU-cJg"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Accept: - application/pem-certificate-chain Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/pem-certificate-chain; charset=utf-8 Link: - </certZ/3a815d9ff4a1dcc1/alternate/1>;rel="alternate" - <>;rel="index" Replay-Nonce: - C8uOsJ1UC1WWYKZgISuhMw Date: - Sat, 12 Sep 2020 17:27:52 GMT Transfer-Encoding: - chunked body: encoding: UTF-8 string: | -----BEGIN CERTIFICATE----- MIIDWTCCAkGgAwIBAgIIOoFdn/Sh3MEwDQYJKoZIhvcNAQELBQAwKDEmMCQGA1UE AxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA3YzEzZWQwHhcNMjAwOTEyMTcyNzUy WhcNMjUwOTEyMTcyNzUyWjAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAK5OumYeBdp4GYw7BKTufEq55+VaoG+e u1ClM0IWz/GWjdQ2HOyv+y8AbiBbFdJXX1CA11OVqApi5rxbq8sRvXEsEROsVYkm f2EP+HVveb03KbSC5iNMUSBkMbxvG3NhWRVxbzSuQdTMfqjXlJnj+OwxkmZQupXZ 4XXSomSIwX3qf83WlZYPdWF3Ir/58luw+ieyApksUxh5XiKSeegzw3ghmE+sQBJA n7wPMGhG9k7ddFfPqTsYP3Gxo/leVrfcT+5JcUYYJQM2km2gi0wy3VamG2jLEcAk MrSmKsJFv+DterONW4S/7WuKQF0ZP6eEfcxdaHiNiSfGNootUzcQva8CAwEAAaOB mDCBlTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUF BwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFFET5rsiwKCN+YyW9GNrSPNGnp7D MB8GA1UdIwQYMBaAFGnRgEZnF6ZdOw0D2IttAHN/g/+4MBYGA1UdEQQPMA2CC2V4 YW1wbGUuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQA+3r7XE/xnPAFARQhs2zvD+Okw ROWTwYlNKTbc503mS0RszwHYC5WmERZpHTmkbbboQGo+f6i+OADwv/H/5X+zV537 mIL2A7VIVOdA17sLFLGdJ5VPAxu5uFmFWMbKZSNOZGJx9pP4eUA4SbH1hQr5n1vZ uXOjaqMxQkrJ5B+e17bCptgrheU1eD0FQClQBFBVunhS1XxHVNuKt5TzSVZ796/W Zy946bNTSFfTMg2lia9IKgQrqOTxjmyb3mMkLXLFj9GIvz1ckhcUNLuhERpWPLxZ uxi11v31Rw3vkNBowPDfEAJgx8qWKPbgHX7inygRX9dvB420S6CeEaVUbMaT -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDUDCCAjigAwIBAgIIeEmZ+cfJIIswDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UE AxMVUGViYmxlIFJvb3QgQ0EgNjBjZWM0MCAXDTIwMDkxMjE3MjQ0M1oYDzIwNTAw OTEyMTcyNDQzWjAoMSYwJAYDVQQDEx1QZWJibGUgSW50ZXJtZWRpYXRlIENBIDdj MTNlZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOD3cZac4SO+SVA7 YT37naFSRImuyZVpwrHwmPof0h9AYJM1yctchYZ/ncQ7r3/rhmWi3oDh7zrP4dS5 Sdp8KB+WcF2QdP7XkK8nuq1wjTZCOhqPv+0ccX0AwoUZOfzmODPBasqdlW82QlPJ ITc4aFzSE8wcE222BKq8FRojza1uZWf1FyoPyBHNkubSfLRPENa5LSsQ/NJZR3mU jPZUBaTlegsWVShPfi9m2RQQVyE/+dtjfvWVyxvdeOpy5vSwFqU6o0z+uq0hy7B0 4sU9Trwl4e+JmCDMFBs1obfaSLi3DvZEJiRPajQIVK1lfB5IumUtz7OBx0fapF/d EpxuBOsCAwEAAaOBgzCBgDAOBgNVHQ8BAf8EBAMCAoQwHQYDVR0lBBYwFAYIKwYB BQUHAwEGCCsGAQUFBwMCMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGnRgEZn F6ZdOw0D2IttAHN/g/+4MB8GA1UdIwQYMBaAFGqsx6g+EhRnknk3uKHNnXyG8PzV MA0GCSqGSIb3DQEBCwUAA4IBAQBKNHm2WbIhd93fZqC64H34LvTdXwftFmPtQeIB 9j0jByJAowJoOPHzQuVjKpgAxWRwmD8ETq0Ahk9LduBzD9J+gXopxM6vdvV0l2up IFVG2s3oOwOtiziE5X/+bEl3K5n0nWQS9lHQ91+L9NEXFH1QhqbQDifZTIXhjFS9 4LQ6GRNoBK/XiqcE8zp3FkSriiVwACKWSH6O+dhq0uz+Mr+ce6pgPaVRBycDhNNA Ucx2SZSXqeVkp0AF5I7J1/DGOeRYIzc0a9z6+OT32xrtFsnC/0TuxDT0RdSdKPsQ nFAMSqkGIzVVUX34YfMQ7HKyxLs9mTbwl+8Y+06bk7AKQJGi -----END CERTIFICATE----- http_version: recorded_at: Sat, 12 Sep 2020 17:27:52 GMT - request: method: post uri: "/certZ/3a815d9ff4a1dcc1/alternate/1" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiQzh1T3NKMVVDMVdXWUtaZ0lTdWhNdyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9jZXJ0Wi8zYTgxNWQ5ZmY0YTFkY2MxL2FsdGVybmF0ZS8xIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvMiJ9","payload":"","signature":"Z910EaLXPVGQGqoHIkZaMesc5NuuuX9MWuo0bbvmFXvghRCa50N1w3e80kQXJeMQKDAQ5vPxbpy5alsW8WqDgnzsWqJau0C3mG0vBLP4ll37_oZs0h4Wm2x-jn1qIzuDjfcqyonFdp4RohH6r85vEYV4PThkhMs_UawPgLcOXny86wTaY52h8l9JnuzMOwzcJRKt0y6id0Qniu1Z2hyVua7dEhnqEPnOdIQ7KmTt3aeeGU9VllYKqoNYzBgCHd91_gY4wsz6nFqKHfJ0kf8jd7luU3y8ZlS6Mx3HYIq9oUqq045YHpylnDCpa-fu_tNJHnnJ5z2BjHQjvWFLZCKJmQ"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Accept: - application/pem-certificate-chain Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/pem-certificate-chain; charset=utf-8 Link: - </certZ/3a815d9ff4a1dcc1>;rel="alternate" - <>;rel="index" Replay-Nonce: - SiYx1IGditvok8w6Np-MsA Date: - Sat, 12 Sep 2020 17:27:54 GMT Transfer-Encoding: - chunked body: encoding: UTF-8 string: | -----BEGIN CERTIFICATE----- MIIDWTCCAkGgAwIBAgIIOoFdn/Sh3MEwDQYJKoZIhvcNAQELBQAwKDEmMCQGA1UE AxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA3YzEzZWQwHhcNMjAwOTEyMTcyNzUy WhcNMjUwOTEyMTcyNzUyWjAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBAK5OumYeBdp4GYw7BKTufEq55+VaoG+e u1ClM0IWz/GWjdQ2HOyv+y8AbiBbFdJXX1CA11OVqApi5rxbq8sRvXEsEROsVYkm f2EP+HVveb03KbSC5iNMUSBkMbxvG3NhWRVxbzSuQdTMfqjXlJnj+OwxkmZQupXZ 4XXSomSIwX3qf83WlZYPdWF3Ir/58luw+ieyApksUxh5XiKSeegzw3ghmE+sQBJA n7wPMGhG9k7ddFfPqTsYP3Gxo/leVrfcT+5JcUYYJQM2km2gi0wy3VamG2jLEcAk MrSmKsJFv+DterONW4S/7WuKQF0ZP6eEfcxdaHiNiSfGNootUzcQva8CAwEAAaOB mDCBlTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUF BwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFFET5rsiwKCN+YyW9GNrSPNGnp7D MB8GA1UdIwQYMBaAFGnRgEZnF6ZdOw0D2IttAHN/g/+4MBYGA1UdEQQPMA2CC2V4 YW1wbGUuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQA+3r7XE/xnPAFARQhs2zvD+Okw ROWTwYlNKTbc503mS0RszwHYC5WmERZpHTmkbbboQGo+f6i+OADwv/H/5X+zV537 mIL2A7VIVOdA17sLFLGdJ5VPAxu5uFmFWMbKZSNOZGJx9pP4eUA4SbH1hQr5n1vZ uXOjaqMxQkrJ5B+e17bCptgrheU1eD0FQClQBFBVunhS1XxHVNuKt5TzSVZ796/W Zy946bNTSFfTMg2lia9IKgQrqOTxjmyb3mMkLXLFj9GIvz1ckhcUNLuhERpWPLxZ uxi11v31Rw3vkNBowPDfEAJgx8qWKPbgHX7inygRX9dvB420S6CeEaVUbMaT -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDUDCCAjigAwIBAgIIHFH1QZ3HDNwwDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UE AxMVUGViYmxlIFJvb3QgQ0EgNzY5MjIwMCAXDTIwMDkxMjE3MjQ0M1oYDzIwNTAw OTEyMTcyNDQzWjAoMSYwJAYDVQQDEx1QZWJibGUgSW50ZXJtZWRpYXRlIENBIDdj MTNlZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOD3cZac4SO+SVA7 YT37naFSRImuyZVpwrHwmPof0h9AYJM1yctchYZ/ncQ7r3/rhmWi3oDh7zrP4dS5 Sdp8KB+WcF2QdP7XkK8nuq1wjTZCOhqPv+0ccX0AwoUZOfzmODPBasqdlW82QlPJ ITc4aFzSE8wcE222BKq8FRojza1uZWf1FyoPyBHNkubSfLRPENa5LSsQ/NJZR3mU jPZUBaTlegsWVShPfi9m2RQQVyE/+dtjfvWVyxvdeOpy5vSwFqU6o0z+uq0hy7B0 4sU9Trwl4e+JmCDMFBs1obfaSLi3DvZEJiRPajQIVK1lfB5IumUtz7OBx0fapF/d EpxuBOsCAwEAAaOBgzCBgDAOBgNVHQ8BAf8EBAMCAoQwHQYDVR0lBBYwFAYIKwYB BQUHAwEGCCsGAQUFBwMCMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGnRgEZn F6ZdOw0D2IttAHN/g/+4MB8GA1UdIwQYMBaAFBH2SDFcPxGK4EhVjcjBEQGX9Jav MA0GCSqGSIb3DQEBCwUAA4IBAQCESm3u8dK/WvHSYGcb8arN4AMnEArVukP8oPuX xWRSgeVq5nurtAIP6skDjU/anGVph1CP7lEQ/nkCDRZnxp4ad15a1vt5IsMzztTu dTfXxdICHp5roB8hgTx3R5hTseBgrAtW4aeaPizDas41TT+cZNWOBrmWEir6xhoY iztRmEXf7+WhjSFtkYah73uLfEhOaWKyMaWcx/I216XUUBOKfeB4r6D09e8J8FYG yzluRWeJSQBInns0CfkGxIbJi+H3OyGMPtGcHXVLdweZarE1fhsXIGAFjrNytD5r /FNrsit8gt5COknW3JtahIF7j/l3YWpmSx+9D1bDF1EHIvsm -----END CERTIFICATE----- http_version: recorded_at: Sat, 12 Sep 2020 17:27:54 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/challenge_key_authorization.yml000066400000000000000000000177241463311421000252160ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:25 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:25 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - 1uet0IOxo1fmy8mHSH9h4A Date: - Thu, 10 Oct 2019 03:08:25 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:25 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiMXVldDBJT3hvMWZteThtSFNIOWg0QSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiU3dibGZpLXRsQ29uVGdETGowd1U2eWY2VGNZV1NZVjZQSElCR2JVWVdHWktmbnZlcXRBSXNaTnNheUgxS3lINiIsInkiOiJQR3FIMHpKaFRaLWZQS1pab0RXS3lSdFVQS285d2l1ODc1blBDNll6LVZqTVphdmxJbnlZcXViYTZRZFloZXJqIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"19RIwlHj0OByZABM57jm-ap5P64UpD991D0Vtwr4ZECNKjc2HjjCce4H1GxMv9D9XkNJ1iOFy2dfmu9ind8awluNGsxzM2hQVgoU9udfTKQoTNjjsmKHW7of4IsMSY42"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/78" Replay-Nonce: - HH3i7erQdQtYF4uZ-Bwd1Q Date: - Thu, 10 Oct 2019 03:08:25 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/78", "key": { "kty": "EC", "crv": "P-384", "x": "Swblfi-tlConTgDLj0wU6yf6TcYWSYV6PHIBGbUYWGZKfnveqtAIsZNsayH1KyH6", "y": "PGqH0zJhTZ-fPKZZoDWKyRtUPKo9wiu875nPC6Yz-VjMZavlInyYquba6QdYherj" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:25 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiSEgzaTdlclFkUXRZRjR1Wi1Cd2QxUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC83OCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"fpepD5SuO7amQBZlPfqQVdGotg3sbChsfzP6gpEwy9YSnbgzE4DanMx6rRIEtWXjHa8_LDu3dAkyPEBK1Dv65sD9spGtLKsknR9HBOjvfrYrG3gSOewCCnwFp1W5ThOQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/z2hgt4gxxh4BXCK-dfSBZbGUypaBwkNgcCAWymVOGgA" Replay-Nonce: - gJZR_q0rpplZmWoRMZb1-g Date: - Thu, 10 Oct 2019 03:08:25 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:25Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/z2hgt4gxxh4BXCK-dfSBZbGUypaBwkNgcCAWymVOGgA", "authorizations": [ "/authZ/JClXa41a_GoUO7fIdWgcZgUAeXqFQg5NPRPAPlmjubU" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:25 GMT - request: method: post uri: "/authZ/JClXa41a_GoUO7fIdWgcZgUAeXqFQg5NPRPAPlmjubU" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiZ0paUl9xMHJwcGxabVdvUk1aYjEtZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9KQ2xYYTQxYV9Hb1VPN2ZJZFdnY1pnVUFlWHFGUWc1TlBSUEFQbG1qdWJVIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzgifQ","payload":"","signature":"dmRnymnQlLJ8I1e1HcS0jJ28kj3NF0k6pgtomUBtfvBE65CGzdHVBAMFaODwydIvgFBGG1aOKpCBmD-_VYycZPxue5vGy4DbVb9GwQt16R4S6rhAyh5D5fYEMKW4YrTY"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - j57YiNaq0dB580yTxcKM9g Date: - Thu, 10 Oct 2019 03:08:25 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "tls-alpn-01", "url": "/chalZ/wex9skdk0z1o9Q8JhdqF7OEgznaAuzCcBWcjf8pbUEE", "token": "iqJmhmRdreeAdLrBNiFoMsidzOICIkcz6WXyxx7bJWY", "status": "pending" }, { "type": "http-01", "url": "/chalZ/rbfVhgYP1XAEUnfA7Bv6M8RaHJvacY8_YD937Wjh4gk", "token": "epEnxX7EFrmkgIXf0TceX7-6KUqmIfMvn3vBzDTXGUA", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/lxlgaZmQ-nTpXB2yVqJ8deHx29z0LRVPgd9z17mlys4", "token": "HpKtXPjeoM1d3sWl7KIde9eR6huX03DWxz2Tx8Z4H08", "status": "pending" } ], "expires": "2019-10-10T04:08:25Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:25 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/challenge_reload.yml000066400000000000000000000223601463311421000227040ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - Hi2XaqmZRBtPAZWUNScLHw Date: - Thu, 10 Oct 2019 03:08:27 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiSGkyWGFxbVpSQnRQQVpXVU5TY0xIdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiOURlQkxsQ2xHX1g1c1ItLXpLUk5weDhtcExwZG5hRlhQOVJEWjVNUlBoOCIsInkiOiJJenFJcmttQ2tjeE9oMEgxVmczWTBjcm9CcHYzamotcWtXcWt5VFhOQnVFIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"03DfNcoZaWj38-q9GCeTjVnz6VXRXURke8OSyjZCi8zhWzm5XXu8N0ljU7FZPyMaaOgbwwJjJNDCa4zPeKOtdQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/81" Replay-Nonce: - NmFqvyjKMSoqXHw5ava5Dg Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '311' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/81", "key": { "kty": "EC", "crv": "P-256", "x": "9DeBLlClG_X5sR--zKRNpx8mpLpdnaFXP9RDZ5MRPh8", "y": "IzqIrkmCkcxOh0H1Vg3Y0croBpv3jj-qkWqkyTXNBuE" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiTm1GcXZ5aktNU29xWEh3NWF2YTVEZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC84MSJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"DzgUyqWR4WNo2SHkdwTSLjLFPhsPeIeEgoFtYf5NP2iSEs7mvDjFJ-c83L4la6NFu_BzAHvS_zEx3Ux-zKhn6A"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/EVfGqPMKUgaxHS8EtW2ce9XhFF1HxoJKEVPaCmW_se8" Replay-Nonce: - bQbFamRlE6cDgVpvhrzK8g Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:27Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/EVfGqPMKUgaxHS8EtW2ce9XhFF1HxoJKEVPaCmW_se8", "authorizations": [ "/authZ/_s5ty6FvKJRTLPB4SU37CF9AzHu0n67qqoxkHXHVgBI" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/authZ/_s5ty6FvKJRTLPB4SU37CF9AzHu0n67qqoxkHXHVgBI" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiYlFiRmFtUmxFNmNEZ1Zwdmhyeks4ZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9fczV0eTZGdktKUlRMUEI0U1UzN0NGOUF6SHUwbjY3cXFveGtIWEhWZ0JJIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvODEifQ","payload":"","signature":"9z8v4ptoCg2nAOCQwFhs26r-3iMNRl922gxMwXqC_yBRQPQ9PJnpS6qb5QIII1X81GJQEQsvBP61Tppiu4QJCQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - OhBg8mdN01gcxc66OSbCag Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "dns-01", "url": "/chalZ/uMuD8VZ42GbBylupH_zQPccMQa02ksTMIAW4dbRZUNI", "token": "K7_413C1RsswXE1uuE5B8GtyZB3jNMZalHba3-50skg", "status": "pending" }, { "type": "http-01", "url": "/chalZ/EBQm415ptwxEyho50C0mV6yQqCNJABDsDvZBcVYOtB0", "token": "IBKWRuMXlhlDdNvkD58oEoUpjWrKEWk7yeX1bUxWJ6M", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/s1egRAAbJ3Bf0JHxfPhrxzDIsEZWWZcTiUcJ41Py0zg", "token": "tPH_Z1d1k-t2S54V6a5A7GPxJQZaHKjgJ-zAOgP3uqQ", "status": "pending" } ], "expires": "2019-10-10T04:08:27Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/chalZ/EBQm415ptwxEyho50C0mV6yQqCNJABDsDvZBcVYOtB0" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiT2hCZzhtZE4wMWdjeGM2Nk9TYkNhZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi9FQlFtNDE1cHR3eEV5aG81MEMwbVY2eVFxQ05KQUJEc0R2WkJjVllPdEIwIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvODEifQ","payload":"","signature":"ZYnhlQ17IPUaMVz_jLjbG4CdPb9u73WXNthaXoU7GzKvEQ_WSIZbXiP2SDNPHuUFP_c96VP_ikCPEbjA1ZNnLg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - hBksXhN5SKbmmHSiviLZ9Q Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/EBQm415ptwxEyho50C0mV6yQqCNJABDsDvZBcVYOtB0", "token": "IBKWRuMXlhlDdNvkD58oEoUpjWrKEWk7yeX1bUxWJ6M", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/challenge_verify_failure.yml000066400000000000000000000321211463311421000244450ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - aOau2u4NfhksDPB74WHVuA Date: - Thu, 10 Oct 2019 03:08:27 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiYU9hdTJ1NE5maGtzRFBCNzRXSFZ1QSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InhUd2YyZElQMzRHdG16Tk5BZk94bWlKQi02ZzhjT2NGOFFqTUZkaGdIVmliUjlzY0NMQXRRaUFMS2lTU1RjdUc3R1ZFdW5aUlUzVm1xcWI1TFJZTGdQdXRtUDBfT1JwSGxQQnlGNXVMT0d5UW94NFJmT1huZVk4OThUMkpXb2FkQ2pqN04zWVhVS3JWU0xiZ2lJZUF6WEpRTndaMWdMQVVxdlhKVlY4VXZReERQdTNkczY4amg0T05XV0pqbXVMamZyanZuakFmSTFVZjM0bnRmNjRzU3FaYVZQcXBLa2xHdEZjeHpvYXJmQVRsZm44QUJneTd0cng2VkFWem1VYmVPdUlZaUpvbGdqYkF5ODZ0ZFdZQ2lIVDdEVy1aQ2ZOWnplOFFOU09MekRzRXA1TUVTT1FtbjlhZHZVQUE1M2hNOHBZV2ZJTXY1cC02NnJOYjZnTU11dyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"Wfl-0vihqhwps_plVjsJUS9_BvgaBG6L99rh5SAjaW__vqnSDd-aZx5hyOB_9pW2aKfju9owUM0gZE13TE3veWWE41q9insAH5hvciZ8NLF9AitTzx1U-Rb23K2DaEsqSkD3y3bMFIpijFlakMfYQvAiKaW5-z_WyLhcSJ7RJL-Sq0GiR6-XvKKwx2lphENK00bH5bxn_hwnVywaOQlchEn-I0oAnDh6aoPPvLnseB-BBOzFyZuMttIdjJ1pYpR-Za7myXULcWpf58gzIEq9wUbOaxAix0wV40502ixtv_TLig376d5DxWLtMmov89E-ynsco17FvcMueG8HSQk8BQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/80" Replay-Nonce: - Szcb3TPj6xKJWMeAYWcCnQ Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/80", "key": { "kty": "RSA", "n": "xTwf2dIP34GtmzNNAfOxmiJB-6g8cOcF8QjMFdhgHVibR9scCLAtQiALKiSSTcuG7GVEunZRU3Vmqqb5LRYLgPutmP0_ORpHlPByF5uLOGyQox4RfOXneY898T2JWoadCjj7N3YXUKrVSLbgiIeAzXJQNwZ1gLAUqvXJVV8UvQxDPu3ds68jh4ONWWJjmuLjfrjvnjAfI1Uf34ntf64sSqZaVPqpKklGtFcxzoarfATlfn8ABgy7trx6VAVzmUbeOuIYiJolgjbAy86tdWYCiHT7DW-ZCfNZze8QNSOLzDsEp5MESOQmn9advUAA53hM8pYWfIMv5p-66rNb6gMMuw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiU3pjYjNUUGo2eEtKV01lQVlXY0NuUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC84MCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"eG7_iEDJRE532XKmQYmTg35ipy5FwnpyLYjAvLCajQO28Do_p4SfPNq9IMP_mxBK_pqdViJSWMpLy_Jt4fuCinenIqaiq9IsJ_XEQdM_AUZCYiG-mqSAMY4uAAftx4bTBVy4w9AxwZX0ofUXHb0IDppVD-9Y_SyMC9nyUTfJ8b7IA8BAHyuiHMYd3rqU5P6kw89apm0WDNPmBQPBGoyOgvEFpETR99IVhVQ1p7kqShWZhmavj89q6wivV5t8Gr3Vi5c_Sm_Ktb2WqL5FKg940UZ7G2HgaPDkRZxpSZaMafJHUQYCiKSbmffVNF7Ckru27YlXVdHlJy2i1hX6pvVuSw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/ABfFBx-lx1_hQjnnkiJN-zIL03aormeBuAa0PACIxao" Replay-Nonce: - SvA3hj_qpbkI9WEC_df9Tg Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:27Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/ABfFBx-lx1_hQjnnkiJN-zIL03aormeBuAa0PACIxao", "authorizations": [ "/authZ/eovLzlwkOcXT-5SbD75u9USDRgRJorH74taxgIKvbww" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/authZ/eovLzlwkOcXT-5SbD75u9USDRgRJorH74taxgIKvbww" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiU3ZBM2hqX3FwYmtJOVdFQ19kZjlUZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9lb3ZMemx3a09jWFQtNVNiRDc1dTlVU0RSZ1JKb3JINzR0YXhnSUt2Ynd3Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvODAifQ","payload":"","signature":"ngrHsRhlr-ugudHTUlTUfOJjSUw8AxbMJBcTYiJqotTV6zIujx50pu8aTsH5rc2ZOjBhwPlPqiavjS9LRNROOSWgjv48aZKeTuA5QFxPM7LOcbpJyffBcCPqyF-5dN4qSwTDFSLkHVSJJ5Y-nMAT3K8V8I_xkHrjrKAD2XwsVT1ZVszyDOIisYdnRJyIzYtGYR5uBjw5lTMmvD19t8CqHmQ3u-OpvyqsM31VW0uCx5I2p1EtxB_PV5yL7TQX7lx0Bpges2PaXmSCspDtJUH6PaFK2lVyGn_GmwnvBqQpgUscPzxwj7Pr-9xNQvBwixLQyU5liYppyASljvrgk8Hweg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - MO1ZZ9THGA_47O6c4hCrog Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "http-01", "url": "/chalZ/I43-dMv8_NJheN5GIQLmbJsL5tzeUG0J4pOx1SHUbmQ", "token": "hogtYco5d5T9p14e1cd_4dzhKuKae3iHPsKLHFUeQCY", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/3aqZ2-iNNFwbTRsTsP9A_c6MYe0mgsQOA8topXJhFq4", "token": "PmBKpwww4De08wZhK_OfNQFwm3r2lPMzAPe5yYb3VSE", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/t5GTxGGGjDSiM-zDYLk2f1qiJdei-wvdrHDHZuTC2KA", "token": "RUnoWYlKDhCA0XWcdViiT7iISSqMH4EQcwmE-9W3EDw", "status": "pending" } ], "expires": "2019-10-10T04:08:27Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/chalZ/I43-dMv8_NJheN5GIQLmbJsL5tzeUG0J4pOx1SHUbmQ" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiTU8xWlo5VEhHQV80N082YzRoQ3JvZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi9JNDMtZE12OF9OSmhlTjVHSVFMbWJKc0w1dHplVUcwSjRwT3gxU0hVYm1RIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvODAifQ","payload":"e30","signature":"PhO6XuTiphO5rAlhTMzS7M5bdsCt18FY0gXhFiYAArTzBgck9VwnPehbe9NbJ2uAyBjGtvmpsodBZGNNGQ3e-cIxyZOI9SckFm9xKY7yM57I_POO5TuHTqzWUCfZGPaMO4xt2LkEVrOssUXUmCAAhXhAjtgejicze0Uh8u48qSTtkfPd2gEewen-ZAidHeHTX6JEeSpoKba2xBxFVbCLDDadQMfT02n-8H73kcIlEB_iTy2md3Emw69Rqn0cNHb5XvWBU_OIXs5Oh3nE1hmfjvDkchVndNdVfPAiSfVeDqoohBvoNt0iTSFcTbLTG_PQ5q_gF0LVWE7MMEhpM3nkbA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/eovLzlwkOcXT-5SbD75u9USDRgRJorH74taxgIKvbww>;rel="up" - <>;rel="index" Replay-Nonce: - MtM7BhXqj6Lg_M2smEHFjA Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/I43-dMv8_NJheN5GIQLmbJsL5tzeUG0J4pOx1SHUbmQ", "token": "hogtYco5d5T9p14e1cd_4dzhKuKae3iHPsKLHFUeQCY", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT - request: method: post uri: "/chalZ/I43-dMv8_NJheN5GIQLmbJsL5tzeUG0J4pOx1SHUbmQ" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiTXRNN0JoWHFqNkxnX00yc21FSEZqQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi9JNDMtZE12OF9OSmhlTjVHSVFMbWJKc0w1dHplVUcwSjRwT3gxU0hVYm1RIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvODAifQ","payload":"","signature":"OOYg4nAy1VJG_CSBbTojCY8m_P05XvJMjL5EeJoQ6RXQMazEVnjpPrMky-Aa6jfS-B1JrxkjD5m8WOQNzvNlvGqG-BC8QQ9Ie71okQHdsbzFjIW1jkB0HRxY4nNTf90tBeBR1QxHCMIdVm7Ho6Smx53-Juqlfr0Rz_bLh9mol59fpmjymIOxYA1L2ik7ZpUq_sOTnet_kBOR2AKA7Krlw5FI9AsD8-nIbuQA3_iQYRe05egF6wadDrgvYFx_0HZBCfqQPxqACXbgjOyY_--fQWyCZTzWmM7-Nu1KwIgUQz2UmftX5Okt1HxYTBtibOie7Pa1Rgnx8O9Zbx1disN6aA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - vFJfpGZr7xA-nbV6mc9gyA Date: - Thu, 10 Oct 2019 03:08:27 GMT Content-Length: - '236' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/I43-dMv8_NJheN5GIQLmbJsL5tzeUG0J4pOx1SHUbmQ", "token": "hogtYco5d5T9p14e1cd_4dzhKuKae3iHPsKLHFUeQCY", "status": "invalid", "validated": "2019-10-10T03:08:27Z", "error": { "type": "urn:ietf:params:acme:error:unauthorized", "detail": "The key authorization file from the server did not match this challenge \"hogtYco5d5T9p14e1cd_4dzhKuKae3iHPsKLHFUeQCY.I43-dMv8_NJheN5GIQLmbJsL5tzeUG0J4pOx1SHUbmQ\" != \"hogtYco5d5T9p14e1cd_4dzhKuKae3iHPsKLHFUeQCY.I43-dMv8_NJheN5GIQLmbJsL5tzeUG0J4pOx1SHUbmQ-oops\"", "status": 403 } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:27 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/challenge_verify_success.yml000066400000000000000000000312501463311421000244700ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:26 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:26 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - vr74gN3U9hxWIeFoa4JCag Date: - Thu, 10 Oct 2019 03:08:26 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:26 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoidnI3NGdOM1U5aHhXSWVGb2E0SkNhZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6IngycmpPVTF2bWRUdVpZSGxPSDRneDl2V0tFMlhRM3dCZTQ5dkZGeW90NnFMT2VXeFZZZWFheFBCYXJ2VTBiWEM3LTdvYi03Und1ZndyTXZpRmlQTlVZMnFSUlVZTDctMHJzLTdyV29tYTV3VTFKSTluNFNFN0Nqa1RJYng5OGphc09GbEtHaHRleGJ0M2s4T3NEWllaNVVRVUNCYVBfc3R3ZTYxWjJ5OHFaajh5T3NfSFhKZndoVGM4MkpGVHRSQlZIajdDczhST0RweVQtSHdsaWVIRG5scGpoVU1OMUFBMVFsM3FhWlFsbVNZMUl6aFFLaXVyR3Y4dW5YTDFiMEpCQkhHWDRRWWtadnRweEcxblViZVdxYlMyYXNrUDV3RlZqc08xcWdJRDdFYlFUSTYwdGR0MFQ3N2hoTnZTbDRYMnJYSklMcVlrWFJCTkMtVUJ0am40USJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"iPs34vcKxtNu7h8W_dk_hT2X4q2IsSfLIsHOfBGGO04oOy7mxp2knA74Ui1FDihU-ap3COJK7R_d0tQ2MrtFXbrU9hPJcJD_Rf2crvenDw30_wc7_vLwGXWf80KaVs1ta1963rkemSkwbkZihERR-ifHCHi3G855bE8-LbeOrQMdB0VJrTqgOizAfbT1zSmpaHDpyje4w2EkQnSdagLS1SFke4A25qHUefcb_Cyp8kj3c5e_6AHtzsh_kA7u6ssbXURFR1mOMpiJXidf6ZTnJq2JBXiv5_eBF3K8eiJDQHi0MkNw1Sb20I1IY0L8YVxgt-PUTA-7z2cqT1hVQnyn_g"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/79" Replay-Nonce: - lruQ-MUOIKaYvqjeCHIgnw Date: - Thu, 10 Oct 2019 03:08:26 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/79", "key": { "kty": "RSA", "n": "x2rjOU1vmdTuZYHlOH4gx9vWKE2XQ3wBe49vFFyot6qLOeWxVYeaaxPBarvU0bXC7-7ob-7RwufwrMviFiPNUY2qRRUYL7-0rs-7rWoma5wU1JI9n4SE7CjkTIbx98jasOFlKGhtexbt3k8OsDZYZ5UQUCBaP_stwe61Z2y8qZj8yOs_HXJfwhTc82JFTtRBVHj7Cs8RODpyT-HwlieHDnlpjhUMN1AA1Ql3qaZQlmSY1IzhQKiurGv8unXL1b0JBBHGX4QYkZvtpxG1nUbeWqbS2askP5wFVjsO1qgID7EbQTI60tdt0T77hhNvSl4X2rXJILqYkXRBNC-UBtjn4Q", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:26 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoibHJ1US1NVU9JS2FZdnFqZUNISWdudyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC83OSJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"JvCBvDOuAfrtJIHVOe72Bsmh5el_qOC5RxAkUliqcJnz09lkKtpz05AgkMFld48M_2sZc_l0jWAMqUkHsG1m9w5X9xOnpb67Q_ZWBArMKPLSdT42nFzbgnsnRqM3TSpnqXij3d645Rp0987iBzB44fqTwxrtnClNaljHeejSUrljrtbKHdoONR5pb79ys4kQDLdrieN5-rTThej57mEEqBbSs1ovzAHdGXydCd79uC5Lk75eWf-0VgKC4vl9nLrPoTL0RbZvFHlA_nuFcgqqAv-S4VmJevw8XzoSubzy4Ob0ySRavk4Ohoqf417BU2iAJL8-KakDQUoJorRejJtSaw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/5cldLcHsmbSOxQuMVLeuf7IICflw-a3Hln2GbTQ_7g4" Replay-Nonce: - 5weJawTnE1D14eFiXKtNCA Date: - Thu, 10 Oct 2019 03:08:26 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:26Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/5cldLcHsmbSOxQuMVLeuf7IICflw-a3Hln2GbTQ_7g4", "authorizations": [ "/authZ/1hQwwIE2jLkMpZHjmvCpSuP3acWOjKgKSUaAuXdrRHc" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:26 GMT - request: method: post uri: "/authZ/1hQwwIE2jLkMpZHjmvCpSuP3acWOjKgKSUaAuXdrRHc" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiNXdlSmF3VG5FMUQxNGVGaVhLdE5DQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi8xaFF3d0lFMmpMa01wWkhqbXZDcFN1UDNhY1dPaktnS1NVYUF1WGRyUkhjIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzkifQ","payload":"","signature":"TxesoXbyAbG5VmWwyWUvF2MqzuaKTR5jkDu08NqeLqjszy2HLU2X4MVemdooarKbRgyf9hi36AFuKsMN9UffGoyA5gMOvMDH1FJSX1PsdxntKYdWC_Bjwoelk4PLTX4EXxBylprv1CzCUip7iXGnolGq8CphaZOqNMZzy9tnbmvRmk7cZZSTOnnxR0UaG9Ju-fCi2US77KbmyO5zPVBEe4CqhpvCg7hApvCh42oXlrM7k9BCAm76nxCk03UtGn6SZXvpZuNodfI-SCU-1hiEHCau36-dZO6u5dNRdX0RVVZXY2cYDL1hrwwzPcxVBcUClTVZD1n3RVgeAHs8n0VENA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - CfqngSs7dbFkW4zlDieGlQ Date: - Thu, 10 Oct 2019 03:08:26 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "tls-alpn-01", "url": "/chalZ/U2JDUEN9M9Z7ZYRV_b82JLt5GUVNrExj89aUE5KMiiY", "token": "LPfcXAuF8Zhp9G6PhqTX4UoM-5_GgY5JHQl2MG3X0AQ", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/do6p9wzOrR58pHSorDrb4EVruBd80bgOIzIZMAynzv8", "token": "780JF7-xS6jq8Y_hcMFdAYDMMXNa-uD5qD2jDTl6kAU", "status": "pending" }, { "type": "http-01", "url": "/chalZ/lfwzHFSUbAC1j4EJwTBzIWfsU_5hVrbKzqJNuBERh9s", "token": "5DkspXlC6W3pg3XQED8m6Iq1q2pz1zu-hYkSMbUQiv8", "status": "pending" } ], "expires": "2019-10-10T04:08:26Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:26 GMT - request: method: post uri: "/chalZ/lfwzHFSUbAC1j4EJwTBzIWfsU_5hVrbKzqJNuBERh9s" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiQ2ZxbmdTczdkYkZrVzR6bERpZUdsUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi9sZnd6SEZTVWJBQzFqNEVKd1RCeklXZnNVXzVoVnJiS3pxSk51QkVSaDlzIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzkifQ","payload":"e30","signature":"tg3E0hngVNBj5ndMSIG5M5iD-qhrN5owsXdnrWqowxfONAWcyWe0rYo3DlqS9mLGj80dmdsZjfCB81ICuNuMK6uCl5W4EkLqOIwJyPrIo39rfjaaBEnjZTC1t-fI0B0mTbyu6xcQyYL0axctJksdPKMNeS1QOPNF6trekzGexR1oTYc8hOyYjpDeq8Bo9j7i4ziMLhfHzFAmtBCOLnaXOeD29XLDWobVYJC_vCu_sISqwjA-GI6Ko2xCkDafydQY9yg7wjAKCjwDlx48_lCUZqqDaBhgATcT_lVtN13HkUqu8Zvyrzfub9y7YO5XxlEvPg1gaFjRRFcSonOVcoqiVw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/1hQwwIE2jLkMpZHjmvCpSuP3acWOjKgKSUaAuXdrRHc>;rel="up" - <>;rel="index" Replay-Nonce: - 2Gcx1tWks7ChQbLNeIOZkA Date: - Thu, 10 Oct 2019 03:08:26 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/lfwzHFSUbAC1j4EJwTBzIWfsU_5hVrbKzqJNuBERh9s", "token": "5DkspXlC6W3pg3XQED8m6Iq1q2pz1zu-hYkSMbUQiv8", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:26 GMT - request: method: post uri: "/chalZ/lfwzHFSUbAC1j4EJwTBzIWfsU_5hVrbKzqJNuBERh9s" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMkdjeDF0V2tzN0NoUWJMTmVJT1prQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi9sZnd6SEZTVWJBQzFqNEVKd1RCeklXZnNVXzVoVnJiS3pxSk51QkVSaDlzIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzkifQ","payload":"","signature":"gbRgIyHUhuSaCDwAnDsjkETIpo3SDfFeQN8MThJoD5K5cwiodttaYK-WIMtKE1-ggPCLQONWeCV9vMWFGPerD9VsHmQH9A3IcrTPyoionArHtZ5ppCegEwEbpxHDeB9WqcbXKuYCMwnWhfRO8Hh6-xB82zS8S9S_fWDjsdbC00hk5AzOcGU_9up3AB5Ht_SLchKkaqBaTljBY9RnIJdOuBiIylIP3AYibuTsuRx8jGjlB0_NefrU9kKJgmhmCHNigbqpmkI0lFy1alRK3T5k62cREctZTxk84HiRz8k8BC-Us-sLnDSy5U3HlpBFPi4au_P7ZG2Bsj7yymJiUGx5-w"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - sWd6dAaWSg_NsHlhwAA0xg Date: - Thu, 10 Oct 2019 03:08:26 GMT Content-Length: - '236' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/lfwzHFSUbAC1j4EJwTBzIWfsU_5hVrbKzqJNuBERh9s", "token": "5DkspXlC6W3pg3XQED8m6Iq1q2pz1zu-hYkSMbUQiv8", "status": "valid", "validated": "2019-10-10T03:08:26Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:26 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/client_meta.yml000066400000000000000000000073761463311421000217320ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:14 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - BjoPGx1wSsVSQ-fM-SVjNw Date: - Thu, 10 Oct 2019 03:08:14 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiQmpvUEd4MXdTc1ZTUS1mTS1TVmpOdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiQXlXcUttek9sSGFxR2pYZ2hzcWNNQ1Y3U0ZqYU5DeXpacWhxcFgyRlFTMEg2MXBGZlltRGtuZndVTDF3b1JURCIsInkiOiJ2VnAwblhyTjZMdGkteVFma3hodGJ6WmhrTThtbWM1LUhlVGY4TE9mU2c0SV9QbEtTODF1cWdrdW9WdzY4dHJWIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"aLQuJR9XxuEQYCi3aQtMRTRzXAPBz4pG_zSE8tb1PE9d4wUbmUXB6aK7aH1JWMoDfARuPr3Z7DvUi6BDHtnB4eBYu_IT_etc73318an3WNUICPzkBuGVVZm3oo9Ru2v3"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/55" Replay-Nonce: - ONNsf6redbHHNON11yBGdA Date: - Thu, 10 Oct 2019 03:08:14 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/55", "key": { "kty": "EC", "crv": "P-384", "x": "AyWqKmzOlHaqGjXghsqcMCV7SFjaNCyzZqhqpX2FQS0H61pFfYmDknfwUL1woRTD", "y": "vVp0nXrN6Lti-yQfkxhtbzZhkM8mmc5-HeTf8LOfSg4I_PlKS81uqgkuoVw68trV" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/deactivate_authorization.yml000066400000000000000000000255001463311421000245240ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - cRmNI1v5vX6aG8VmpCD_3Q Date: - Thu, 10 Oct 2019 03:08:20 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiY1JtTkkxdjV2WDZhRzhWbXBDRF8zUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InFuZFBUaHFEb19VMUhDZ1lMRGk5eVpMT0EyTkZBUmdOeVFhaUw0LUZnOHJzQnlCeFJrMkRoN0ZtN2RMQThpemg3THpXNEoxN3daNkpoSTRtakhCMjZ1UDZ1WG9Ic1E3clZRQlhZbWNKQVp3T3g5ZkJiaGVMQ2Rza1ZFRG1jazZhdU5ZRzRTMjczMTBfN2wwdzdJODhiVjVfdmxyVWVLX0hXQWJ1a1BDQXpYZV9rX2wtaWsyOWt6NnZwMnNKeWwyRVRVVkYwUjhaTThFazVuWG9HcXIybzMweTdZbzhMMEItNTdNckNvQU1WcUZ2UWNwZ25Gc25GQW91enFrLTRIbWNjVC1NODNIU3JOcU9WUjBhbTY2WkMyTm9fdEFIU1JaQnAxc0ZUM3Q4UXkxcU5JVVNkQm5neHpwNEhoY0pyQkdxRTdBOGRJWHJPc2xNT2dIaGV5MFdsUSJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"ZCdRBNcY7VkDkpH7u-qTwtrUzqooEx2304_sFpSAF5wI3TVRluyPrg4t9b9uM2FPlZ-UWxMFfTZBETAos0LLFUeKX-m2rmk_ibBrL7vyXwUotcJ_aJnrFKUhX5EsYgFN9mrV_WeGqUIvg8H37Qhy55yZrnbwxDtueFVoMMAXQNfjCJs-Ts785IrJzsmNZzGTpNwff_JDbmHjnIQ6cWLPjVIy8a5qLiV9BljcvevVVqqQohbYnZkAuNItELXm9Lbre9edKb5VgElraCY5OwWXJCCenD33DqgYp_iErUs4Rm0CdHAt4WSUuENjKWRInlRb5PJ9kCjEuV7N0UjwgWcyyA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/70" Replay-Nonce: - "-J9XqADPv0rbZYHGyKkuuA" Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/70", "key": { "kty": "RSA", "n": "qndPThqDo_U1HCgYLDi9yZLOA2NFARgNyQaiL4-Fg8rsByBxRk2Dh7Fm7dLA8izh7LzW4J17wZ6JhI4mjHB26uP6uXoHsQ7rVQBXYmcJAZwOx9fBbheLCdskVEDmck6auNYG4S27310_7l0w7I88bV5_vlrUeK_HWAbukPCAzXe_k_l-ik29kz6vp2sJyl2ETUVF0R8ZM8Ek5nXoGqr2o30y7Yo8L0B-57MrCoAMVqFvQcpgnFsnFAouzqk-4HmccT-M83HSrNqOVR0am66ZC2No_tAHSRZBp1sFT3t8Qy1qNIUSdBngxzp4HhcJrBGqE7A8dIXrOslMOgHhey0WlQ", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiLUo5WHFBRFB2MHJiWllIR3lLa3V1QSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC83MCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"eNbMHcWpNBzEfGKKRJwlj8KLybUo0T3Mz75pQ5UDrXwI6-4LzMGedhZ1o0CEW0-hHpV9hTb330EYudjY7AOioOTyO57FVxeFeSytiI1Rh21Fmb82O33fNuoDEJT6mHmxFs845LPYFKS4yee2SEO5gKp3QARdY4kVY2LXupExsxwfo2XaPF_JqcnZBv28YowW1X8E7voLioPJ7EYHSaACQGOYmbtJQGexl7iFcVx0aW7XVTKL-L8QNSPGYQzIiF07O6Fv5KmVtODArd1DVudysKI14eRQdB51CU1FK8mj8Vsclp_xe_zvwWM24ccfuINLcGngh8RW6zfxNvc_-HocsA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/sBY8PzqdDiZJU11-IHum8hW4LZkzFCS9OAxsMzik9sI" Replay-Nonce: - Sld6Mh4Zs7liQN5IOgYanQ Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:20Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/sBY8PzqdDiZJU11-IHum8hW4LZkzFCS9OAxsMzik9sI", "authorizations": [ "/authZ/cOwur0slMjKUIwN9Q1OJEou8XpmgzBrfVSIhr1afnzE" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: post uri: "/authZ/cOwur0slMjKUIwN9Q1OJEou8XpmgzBrfVSIhr1afnzE" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiU2xkNk1oNFpzN2xpUU41SU9nWWFuUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9jT3d1cjBzbE1qS1VJd045UTFPSkVvdThYcG1nekJyZlZTSWhyMWFmbnpFIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzAifQ","payload":"","signature":"Z7CUzggysw9d1xyAuV6vI5cq0dd8cvt6dy_b_rJi1UvHmv_4ZkFizbRsPzZCDHJZKPAHWWdckbw15Vb0cwZDrHA3CvkR0RwyGROPX8pzYk1YqzfrJtmuNH6ZvBfPyoi4sBle76tIUwmpfh__7NPMEdOVoFAtrM-xIQyeZBdRy-PpepDXlc6E3V_wnqcUJxBwSIizHkt_nI58kSSGzTRPg43Cy0URQ2bDfo_cEllft776kWRnT6vGa1qDa2Du9aIkbznsLhzOr4YLkbLdX4K0kZo-oUX5L2nl30sX4GI6Vs303smuPZNsWV-MN58MxbdiaMkfkPzrvS_G2SZNaMYSkw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - WePV5QZir3bNKcSfHn1MbQ Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "dns-01", "url": "/chalZ/kBDPyAcaDhOprn2pXHs4O-1kZGb2RTVFx0ch4Pl2K-o", "token": "CRW_qq8ZDwcgcCGirL95ANaUbJr7zfYJO-TyQacVTOA", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/802ecqh6V3fOPvLPY1UCdW5HW_DbJyisneBh7KioOn8", "token": "jGZxTw4ilMOlkQqPjHSGNwyXP_neBWxJ_2G8IQJwd2M", "status": "pending" }, { "type": "http-01", "url": "/chalZ/-lecYL8Be-qmxlu72dF7XqcOWzT9zWaj0dPFq9RKkCM", "token": "3XavahT6eugk72I0jr0-5C3GKvlPuf-_x85WnxBP7bI", "status": "pending" } ], "expires": "2019-10-10T04:08:20Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: post uri: "/authZ/cOwur0slMjKUIwN9Q1OJEou8XpmgzBrfVSIhr1afnzE" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiV2VQVjVRWmlyM2JOS2NTZkhuMU1iUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9jT3d1cjBzbE1qS1VJd045UTFPSkVvdThYcG1nekJyZlZTSWhyMWFmbnpFIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzAifQ","payload":"eyJzdGF0dXMiOiJkZWFjdGl2YXRlZCJ9","signature":"n7GO3YHjQghy8VdtPlQ_OBMloxAEMuJeOl0GkkEuqr4KDW_qUIbrQKTZ0V8yP_roatN27huQ9uIN3IxB4NQFSm_8KDaWDit83MswtS7mVm3GsuRq3OV6RyKhW0T3bfioHT5rPLx-j_yxNsuFwp_y45Ow8JEmmLGm0uAJLRiE1w528_DWE4ztBeJxF6oru6rwX_wSBBP7VjBHWGNO_R3cxe82YA5XjgK-47nXHEkuSXtZzoVoSCGJunEmo7Nsdiqz_owYw0xypXRDU397pUnUNV8IFZ-PmreMRIQBi9FwE8QOY7oQm-UvW-SjyrEla9sAqtD1k1l_9rZyC-owmQDLfQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - jo4G1H8IRTR3cTZz0cbwAQ Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '164' body: encoding: UTF-8 string: |- { "status": "deactivated", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [], "expires": "2019-10-10T04:08:20Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/directory_endpoint_for.yml000066400000000000000000000076731463311421000242200ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.15 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Tue, 16 Jan 2024 18:10:15 GMT Content-Length: - '396' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "externalAccountRequired": false, "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Tue, 16 Jan 2024 18:10:15 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.15 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - DXS4nYJl18Pid0N5tjRffw Date: - Tue, 16 Jan 2024 18:10:15 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Tue, 16 Jan 2024 18:10:15 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiRFhTNG5ZSmwxOFBpZDBONXRqUmZmdyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiMm5NOHg0aVR4UElLcUZqR01jX3RiY2QxOW1QT1pydld1S3ZpYlU3MGsxWlZwaU9LQ2p2c3N3Yl9OT0JNX29lYiIsInkiOiJHaHFaN3d2dXhRb05VRThJclBkVF9qVkVOQmJqRThjWVBjYnIwMkdrTk0tSHNhanNJWGRrNTYyNXZsNVpVdkhNIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"_Ct6M9duFtXOxtZDWLwrxcVv49z3l2JJCDFGuQQ1HyUvbnBfoVPNuLssJEQ3bXz_Dh-F-W32DTPaOoPAvlIwWOV-WuHZEYuw1DeR8GwGS68cC-xbU2Fbs1c5Fu5bHhU-"}' headers: User-Agent: - Acme::Client v2.0.15 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/3011c37ad722d86" Replay-Nonce: - "-0Wz_OugGSEpZJRBPs8X2g" Date: - Tue, 16 Jan 2024 18:10:15 GMT Content-Length: - '360' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/3011c37ad722d86", "key": { "kty": "EC", "crv": "P-384", "x": "2nM8x4iTxPIKqFjGMc_tbcd19mPOZrvWuKvibU70k1ZVpiOKCjvsswb_NOBM_oeb", "y": "GhqZ7wvuxQoNUE8IrPdT_jVENBbjE8cYPcbr02GkNM-HsajsIXdk5625vl5ZUvHM" } } http_version: recorded_at: Tue, 16 Jan 2024 18:10:15 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/directory_meta.yml000066400000000000000000000076731463311421000224600ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.15 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Tue, 16 Jan 2024 18:10:51 GMT Content-Length: - '396' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "externalAccountRequired": false, "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Tue, 16 Jan 2024 18:10:51 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.15 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - Tuty2P8DM9lQfIoWYI_xIA Date: - Tue, 16 Jan 2024 18:10:51 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Tue, 16 Jan 2024 18:10:51 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiVHV0eTJQOERNOWxRZklvV1lJX3hJQSIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiNkZ2SzNfZ3Ywei1mZ250b0VRQWFmUGxpZHVxUXd0QlpsMGdqTDRzc2ltdm5Cd0M4aWxYVlBiLWNNTlBxaFEwaSIsInkiOiJla2lEa29YTVlXTmhvSWwydTRUcEg2U3oyOXlXMkZpMm1qenhBYVRzTGpQczVIMnhQWW1GYlBRRmF1N3EzejVQIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"TD8n-T2m1qE1mo9uZTl7AJax1D1LclTBixqXZmeyQi7xXQjSeGWdtBPpjvE6d0kCSpQNGv6GcBJgYHS-QoK-z-4YQnCDggCMetyn2d9MFeYuqiEhM9XrULchX58ZmiFe"}' headers: User-Agent: - Acme::Client v2.0.15 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/4530875a31aa979c" Replay-Nonce: - wgZvnNCEXH7AO9RaizC3Tw Date: - Tue, 16 Jan 2024 18:10:51 GMT Content-Length: - '361' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/4530875a31aa979c", "key": { "kty": "EC", "crv": "P-384", "x": "6FvK3_gv0z-fgntoEQAafPliduqQwtBZl0gjL4ssimvnBwC8ilXVPb-cMNPqhQ0i", "y": "ekiDkoXMYWNhoIl2u4TpH6Sz29yW2Fi2mjzxAaTsLjPs5H2xPYmFbPQFau7q3z5P" } } http_version: recorded_at: Tue, 16 Jan 2024 18:10:51 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/directory_ratelimit.yml000066400000000000000000000017141463311421000235120ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 403 message: Forbidden headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:14 GMT Content-Length: - '212' body: encoding: UTF-8 string: |- {"type": "urn:ietf:params:acme:error:rateLimited", "detail": "Your IP, 156.38.202.48, has been blocked due to extremely high traffic. Once corrected, request a review by emailing unblock-request@letsencrypt.org"} http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/fail_fetch_order.yml000066400000000000000000000177061463311421000227230ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - iiMrZxEMH1Vb92DQIn7ftw Date: - Thu, 10 Oct 2019 03:08:21 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiaWlNclp4RU1IMVZiOTJEUUluN2Z0dyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InZxNGhFWWM4YnpmSnJZdzFlNXJVS0VIT3VNcGMwY0xoenhRSjhjOXM3V2k1QnJ2b0oyckxYNURGdnRISzdCSjhKeVpIV0NQMFcyanVYNlFVOUJ6WEJJNUZCNFg5eHE0cllwaEhvbDRYcVF3dmljejFEUHVlT0RRU2hNY3hSajh0bS1qdEJoSE1NSUlxQW5tUkluN0I2UkN0QU1UYWNkeXdEU1dzbllONm10TTcwVEhWMkNBeExlS202a0V3a2N6S0M0ZGV1ZFd1MzUwMTFacVNUbHNhN0dFZmU4RDdDSHZIRlFKLWREVGE1eHdGelFVekx6TlJjMDI2X1BNandXczJyc3ZadTFpaEsySmdfVUN6SENHcUY2eHd5WlR5MU1PX0hLTERRMVNLOG54aVJWNkQwUk1mX3EtMUMwN0FiMTJPdmlfdmM4MVBiMVpkV1NkV0NrOXJndyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"BX8St2zGJ1f7zlhDyuzBBXMAWzHhwYcsGjyWrNIrQIy3s-fEpoepGtyq7UmSEUfxRVf-tsT_aI6pJJYNMkC12M9TEwcbYkW9Jg46kGlapjGe5NJDokYdEtcvGtk2kpDEWlejiu_QibBDGFB4uEO5DnVx8c9PTXnhlqkjqnZO74lbsn3fYDgU1J41st40AMuYp2oV-4xdgiXg7bWqFsiuMtkB9jFVN1V43kutpRRLNvinpBgN-sR6IvgGptPLHT3B9s-Eu6h8pj-k3t91ZEam8NHWMlLzuWu8y_kbWhDeGSvrVvVmUJyI3WWprRyvLfvOg4vKPK-8yiXWC9HwSmlZCA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/72" Replay-Nonce: - wea9niuVeVkDp9KU7uc0LA Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/72", "key": { "kty": "RSA", "n": "vq4hEYc8bzfJrYw1e5rUKEHOuMpc0cLhzxQJ8c9s7Wi5BrvoJ2rLX5DFvtHK7BJ8JyZHWCP0W2juX6QU9BzXBI5FB4X9xq4rYphHol4XqQwvicz1DPueODQShMcxRj8tm-jtBhHMMIIqAnmRIn7B6RCtAMTacdywDSWsnYN6mtM70THV2CAxLeKm6kEwkczKC4deudWu35011ZqSTlsa7GEfe8D7CHvHFQJ-dDTa5xwFzQUzLzNRc026_PMjwWs2rsvZu1ihK2Jg_UCzHCGqF6xwyZTy1MO_HKLDQ1SK8nxiRV6D0RMf_q-1C07Ab12Ovi_vc81Pb1ZdWSdWCk9rgw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoid2VhOW5pdVZlVmtEcDlLVTd1YzBMQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC83MiJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"MBhk5DBtDLhQqQTq6JRqA4qafxm1IjDXAHEAQGyR6tzXbH6T2T0xNn8Kng3N-_dS3w_CCGdtBZVY8LK2EbLZi6npnJ_h_VGbA6vcd8ncwsJSyx6_AoZnqEgO56I_dv3aX0oVREkw3aerG8j0K1_mJSXh1mLhMZby4CdtXe0d0CU_EJdOpiOfZ4K6WRyYZJT1g1M99xm0DAV-oDWp9xVPPV7ZJk64qqWeOOyRya6wFtTq1Hc36eXR2eCv9KXtu9JrVSdjjLsaEjYq-ijuQSEKPxYH3l-bS7A8kmapTg-9xYBJ6h3ITb7dNdE5rgEdUJ_cbLtHD_j_MAQtlt1Yr98ePg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/75D9-Axgm0UbKkiEyBsFLILuyj6YZ64qevtW7G23FYM" Replay-Nonce: - 5z7Fgov4rxzd6bRtvY-eoA Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:21Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/75D9-Axgm0UbKkiEyBsFLILuyj6YZ64qevtW7G23FYM", "authorizations": [ "/authZ/UE9i-tkywhNUx-fwdKH4iJpZ5PqIQ3YsNc3HjHfe_bA" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/my-order/75D9-Axgm0UbKkiEyBsFLILuyj6YZ64qevtW7G23FYMerr" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiNXo3RmdvdjRyeHpkNmJSdHZZLWVvQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1vcmRlci83NUQ5LUF4Z20wVWJLa2lFeUJzRkxJTHV5ajZZWjY0cWV2dFc3RzIzRllNZXJyIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzIifQ","payload":"","signature":"ZpN4SvsXhFU6Usb0x3Xe1Faj9i-7a5BHc0pfMcqoSx_7QCHmXPlxJCJPLPFY5HxKlNAsBAscluxxEjPfkhCKPfhGBagtFge-M0P7ZxCAPDuxAPOhqDW4eSWa7Uk4Gpqi65siZTb4bVA_0AwrIWXzgxH3vMFFx-Hfvc2fI-CGQWwBO3K5GaSG7eR_Y5uUTxJ_9mROHbL8LWoTzegW5Gno3WAAynQtWIXRip1AiOXpzwA4VKjtjx3LE3BKDN46Vsj49Xd0ds2EEIgf7LSD4MumSb-qd7T7f_FyOSdul08Nl1e0zdD2hbqRD18V8V_llUYnnO-CdHtHLz3wj9IGouR7Gg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 404 message: Not Found headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - A1RKyffeQ5VEkjtzYu6z8Q Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '0' body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/fetch_authorization.yml000066400000000000000000000220451463311421000235050ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - AzFF8dB05WK37wPpO6vu-Q Date: - Thu, 10 Oct 2019 03:08:21 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiQXpGRjhkQjA1V0szN3dQcE82dnUtUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6IndtZWRiSDdaeFVIeHVSMWJwbVNpRlo2MFZ6dUZwQ0VHVnhxUE9XZTYzb3BuX01UNXQybDZsUXJSQlRoZzhMWElWaU13bU1NN1J4MWJJSFVKMWVZbFFjbWRVRlFDMHFjcGJxcGVIaC1oRmcyaTQ3MjhSQkRleUVLRk96bV8tMU9KWHk1Z29CWnJDSThWd2w2eGcxeGFLSzdidF9JS3JzbUtkR0NQV1lWLU5OemFrREg0MVVDaTM2a2dSV1huN2FsUEwzcXJtREE2MkZCeGFJeHJ0eHk3clp5TWpkeU1kcVdxZHRac2NTanA5LVlNLVZ3dnN5M2ROVE1ETGJXLUFVQXo4b1MyXzEyM3NkMHNsWFZhZ2Y1Y1VQZWU5V0E5Ull6Y25tM2t2OUVLQngtOHFOSU1wQkpiV0R2VVA2Z2NVQjVYYS1WNVdDdGpIUF90dERyb08tOFo5dyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"HogIgm9HdfbGtmFvOaoVgt9fgdYrC04cciv_oijZcQ-0rp7tGNDsjR3DWMwHAcLpz4xy3VHJ_NsMgFEBc---5pZwMk7qaliA3pRc7mUJ5RSDuWqTn4n6oL5qiLtCJBmkyCrHMpsqZsbHT_CzyUPpuTdsy-u-VGe5aecWYU2HHWbfCye4N5HR97TSZ3xpgdPmZAu4i8LHfj96SNBqcJRXcpUKqQrKmK-1-17RPfVtDwWp1WecT38z3TYKYkw7ltFDsynnXNiBCSQBfR19Wi0kCUejKoSWs1M7svc2vlJPQLT6nYM9nZ9_e95NbPlKiRmXx7fltGNKBX4oEkgkSF6Sig"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/73" Replay-Nonce: - OLcStX3rB3Y95alaE_x0bw Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/73", "key": { "kty": "RSA", "n": "wmedbH7ZxUHxuR1bpmSiFZ60VzuFpCEGVxqPOWe63opn_MT5t2l6lQrRBThg8LXIViMwmMM7Rx1bIHUJ1eYlQcmdUFQC0qcpbqpeHh-hFg2i4728RBDeyEKFOzm_-1OJXy5goBZrCI8Vwl6xg1xaKK7bt_IKrsmKdGCPWYV-NNzakDH41UCi36kgRWXn7alPL3qrmDA62FBxaIxrtxy7rZyMjdyMdqWqdtZscSjp9-YM-Vwvsy3dNTMDLbW-AUAz8oS2_123sd0slXVagf5cUPee9WA9RYzcnm3kv9EKBx-8qNIMpBJbWDvUP6gcUB5Xa-V5WCtjHP_ttDroO-8Z9w", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiT0xjU3RYM3JCM1k5NWFsYUVfeDBidyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC83MyJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"eAMZ-PbbM-Tgko-o_Xu6J3uBPafDtmvvCfY_vD_fGasK6C2bYnHd_zyvea8XoPWDgHmqPGPSfaTSD2UzMuIoXSIA4RrPvPWeHitZm5tdYvV8OEFAeaFQOg4nhFRxS9gbsy2nWQdv4vLFr-9Tdkc81Qc5ZztHxk0UC6s78QqGoxOGNwtfT96AxxFFwnQWC9ZC-wFWiZaIu4dAm6mCEkpLHAE2KqbVQ3xpeucHI-UEtbSGv3md9nddIYYSK60Ze573RjzyeO3bx5TKIGO4xAVvTDGx5_Bqd0XOjAw5GxKe5bn82KTAZMzL182BuKRmVPwAot1CS3G28SzlNW8HibGumg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/XJATAvSzXBd9FyIDYfjV1kmtZ27-Sk0-A4j-JesP4c8" Replay-Nonce: - db4rj2JMTVQUcIImP9De0A Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:21Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/XJATAvSzXBd9FyIDYfjV1kmtZ27-Sk0-A4j-JesP4c8", "authorizations": [ "/authZ/ccN4L_tSjJAEU_xaK3VYeAxiubT9edsO_vIc8FGrtqk" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/authZ/ccN4L_tSjJAEU_xaK3VYeAxiubT9edsO_vIc8FGrtqk" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiZGI0cmoySk1UVlFVY0lJbVA5RGUwQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9jY040TF90U2pKQUVVX3hhSzNWWWVBeGl1YlQ5ZWRzT192SWM4RkdydHFrIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzMifQ","payload":"","signature":"er0DzKpQpKfvCfMQLxMtvoIdQ8G6bOO6I4Wvjb1LkceKooOO4CBxafbMNglU__PDm3r6xTBCxqx4hSJiJV-BDOUgMaaV3x_e2zfKwDQpZ0bXrsSB6iunlk-2tjpGPsmelCGZ_dy6JnkzBq4QQm5K0_YBgDQn8HzZY69YUbBQxlQVhvLmhsGlLORy5PaX5aoe6m-eFRQ0PDVZkSL8UGu2o21mzM5_pZaLfkB2VYHcTtAhya61IKXun22nEd2cAqc5ieZSTfES2IFrIOh8fOXqSGPWtXJ-PJZtZoVl5ER3JWqSCQALpQoSpEuDXrQXII98s8EbXdvDArWtzxYkpdVfVw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - FuVuV-7AR4H-J2Dmuw9IPQ Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "dns-01", "url": "/chalZ/q4PQn8uOwxsTSRu6kWv2rklML08krsP2rwhMFHHt7-0", "token": "pqksPrPGdMSGsafaPtTAHHpks2oBewqp0ILvn5mrJ7M", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/ediPq_1LxefBuVC0Iy5bcwc5IOwNd-6fdCMfZv0-jro", "token": "CWAlot4Fe42eBReuv5FIpE06dhI1_cKKmpatxrtQuJw", "status": "pending" }, { "type": "http-01", "url": "/chalZ/bCnAFkVDoZLkVixsjloOpnE4rOQZ06xoJTSeIyhmfUg", "token": "jeqVIQmKSkf-hw-je9ocCAMmqhJFsf5Ng0dVOEBhdo0", "status": "pending" } ], "expires": "2019-10-10T04:08:21Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/fetch_challenge.yml000066400000000000000000000254411463311421000225320ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - iTIm-bjQSV_H66suJ7t7-Q Date: - Thu, 10 Oct 2019 03:08:19 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiaVRJbS1ialFTVl9INjZzdUo3dDctUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6IjZ3a1dITnc5SUEybi1UX1VxLUhILXB3dXcxeGUtQ0FkalNySlZuZmh5b1ZQZmlGS0ItQXRlaVpNb2tjZHRNTVZ6QndEd2QzMVdUMHpLb3VoQTduSFFCbHlwR3hKRnlBZHVCdnUzd1UtTnc4c2VOQU42T2M0bE9mQU5fNS1kWXBHM0FSOV9SNjl2czJ0ZF9HNUZ6aGt2aGhfWWt1QUp3b0hOLVdmWHVuc1lCS25qYWVBUTBWaXBaN2RkZU1IOTdITEtHX05NelNCYW9VQTJRWU9zWUJHTzJyc1JOM3BDQ0U3VVdvQ1M0WlNqYzVEaWhUVm55YWt3d3dsaWgzUy1pTF83aFM5TWdKcUpxckRsRTNtQW1ORGtzc21Odm9EbnA2NjNoM0lkTnVQTmNFbk1fUDN6NW1aZjhHOUJlU09QcGtQSWotS2lIaUlLazV0T0NCUnBxSGd2USJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"AlGYW1ACaFMGblXtMvpiPqDJeY4W2GF1nmBo9u68QHeH38D-QbwRzcWLbeJsRizDYYSPFkGh66Gx3RZLlHABSRhxbirAE56rhC30QIkDgai3Uv9SWVx6vtUvk2f7HPlrMV3S59FPFjlAgf80v2feNqYYPcvNN7P6Twl7Rs6Gfwja3dfYsGrhhklYWLBowY0Us7UvZZphepgR5jVgkMRdmSNPNlX5nTYu6ZwNfVUUHMsF-bgMIVI090Fr2tWKnK4y2T3v1vMA_h79qwP6uUJlDn64osdXLWT3dAD5x-9IPEbJRY3HWuPgPSXHtYDx-mqCAT4gnwDm46MvrHS64hn49w"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/66" Replay-Nonce: - yPHrNfhhuOLyoTY3UcJDAw Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/66", "key": { "kty": "RSA", "n": "6wkWHNw9IA2n-T_Uq-HH-pwuw1xe-CAdjSrJVnfhyoVPfiFKB-AteiZMokcdtMMVzBwDwd31WT0zKouhA7nHQBlypGxJFyAduBvu3wU-Nw8seNAN6Oc4lOfAN_5-dYpG3AR9_R69vs2td_G5Fzhkvhh_YkuAJwoHN-WfXunsYBKnjaeAQ0VipZ7ddeMH97HLKG_NMzSBaoUA2QYOsYBGO2rsRN3pCCE7UWoCS4ZSjc5DihTVnyakwwwlih3S-iL_7hS9MgJqJqrDlE3mAmNDkssmNvoDnp663h3IdNuPNcEnM_P3z5mZf8G9BeSOPpkPIj-KiHiIKk5tOCBRpqHgvQ", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoieVBIck5maGh1T0x5b1RZM1VjSkRBdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC82NiJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"ybHZEcaoh5OXBR_dvRsvmqcV5Cq_Bf3R8qZUd0psO56kgPXFX-WDq95-nse6Exvx3Ju8mMVfaLBsFxyYQxeS1KmvAuHk5t7HC8cgcGPj9n74Q37Kell1NOseRd89TNYzf2GAjS6nDPUcfC3pd40QySAFnLJYUYbLwmH1tDwEc9yb506mntI2d1_jlaaq8YmwpjOrBkGaNb6l3asXWuOWzgQMBN9Vj1V87GeMILIdeSQUNoxvF1DyTn8Wz-bmBKM933ajdXuYzIZTrMVAr034Xgy1eGmT01-5wT1x_fXF52K5kV2LpzpRnh0g-aIG7njOKmyA9zuRC1XSgDpo4OWK6w"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/yAdhpbQci4VmYiN6ZKoD-_C0zA6UBoIPPjV3B1cG2uw" Replay-Nonce: - XGnNHR1MN9EZMSUQVIinfA Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:19Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/yAdhpbQci4VmYiN6ZKoD-_C0zA6UBoIPPjV3B1cG2uw", "authorizations": [ "/authZ/XAeO8U43n9Gv1kxzeezncqpiKvZQRYPkks_zkP6XtQ8" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/authZ/XAeO8U43n9Gv1kxzeezncqpiKvZQRYPkks_zkP6XtQ8" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiWEduTkhSMU1OOUVaTVNVUVZJaW5mQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9YQWVPOFU0M245R3Yxa3h6ZWV6bmNxcGlLdlpRUllQa2tzX3prUDZYdFE4Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjYifQ","payload":"","signature":"nQqrVord4ktdgiO-6YFvCRZG1DUBIgfr1IIGrfZ7UuJfrTlQrNPRrL9gueHHUEBV6n6M1uDzWtIbt0rD_TlCgogtWeAm8UqZd0GgWbdFbIqOfVJqaLp7Vx_YahIGwENF53bHrSYXKN26tlZP4eoOq5lOE_oP1zmSY2b8IhEqPSrcm7RZJ6auemvPLVmkDxG1028dfp-ToJNqEkp2-dWo6S2qPIDlMJ14vf5SDHF4vjRt_jkMFw4PHixChiTPHDGRVXBsZ3ePQ-K7Fwbs-E_QNpkizG1tMaKjpgozNIaC8503bW39TP4xU9kz5NvvERXRInjOOjdqRA6tockhW3MtKA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - rFP1G_QlqePtLGM6h-PTGg Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "tls-alpn-01", "url": "/chalZ/JV-e1QgHLe1dfj7PgMrTjL6hJ7FUfXL22sQS0KZcZ9c", "token": "CQut8pJi7SlVoQrRLaQx2XPYtL_Lw7Pgtbq2hLseJS0", "status": "pending" }, { "type": "http-01", "url": "/chalZ/Wn6HwWqfyAGoGlA8QXPPGYarC0h9j3nRYUa5tFMIiNw", "token": "G_gAR_pnAeg8kGsmvmlqwN33sFr3fg5NhWIcgL5kAoo", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/QWeZrBCPnj8JDirm3NT40XehHAbdxvli4AMqrSPYZzU", "token": "Ih3dDhv5EvqcTMvj_mgDt1TYBAEjLnqovL77fqqnAYo", "status": "pending" } ], "expires": "2019-10-10T04:08:19Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/chalZ/Wn6HwWqfyAGoGlA8QXPPGYarC0h9j3nRYUa5tFMIiNw" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoickZQMUdfUWxxZVB0TEdNNmgtUFRHZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi9XbjZId1dxZnlBR29HbEE4UVhQUEdZYXJDMGg5ajNuUllVYTV0Rk1JaU53Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjYifQ","payload":"","signature":"i2ddOjl8HOZ9VKdNAv-1leSi9GPRv6k5CcL-A4G_zMnkc5u9ArQGo4UdDxT8PJ4X41MhbEN6CFomOP_af1UijhxIuNRepjFNai56gaMzXkt2zxDGcVXMUS4xpxLvHcxv5WYFYJmpwRmHMWDAvPwy6MEA9aUkYHlgVzHLgMbCHKpfWcgN9kwb2lyynL_E6bxCBw1MhqW-MSgZcSIkFik3GtQYBjuOFon1yB3XkKTtr9m56rWXUl89n_d7FkRahq0CfbNBeZdbNMfX4TY4uHwhiOUZq0x5258xhz7YFYxUb5_JzJhEtbnLHEW27qsVtt42beilcS1hG9nk8TaKUh2Aww"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - kVO9AKyN_PJBf54MhH-DZQ Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/Wn6HwWqfyAGoGlA8QXPPGYarC0h9j3nRYUa5tFMIiNw", "token": "G_gAR_pnAeg8kGsmvmlqwN33sFr3fg5NhWIcgL5kAoo", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/fetch_order.yml000066400000000000000000000207311463311421000217200ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - SQucpxiDtoAsofQrzylqYA Date: - Thu, 10 Oct 2019 03:08:21 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiU1F1Y3B4aUR0b0Fzb2ZRcnp5bHFZQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InR2cVloWDNrMmZrY3k2TVdnVjRLeWJGM1cxVm5vQUJWYS1SNDdWSnNFR2FaRk5CN2dqSmhuUnkwM3VBTG9TRXM3ZGcxaXJQVGdWXzk0b0JnVHdjb09FN3hsYkZqR2ZqZVhFRzRneV9ScW5nVS1qYzFCa3ppTUlCVlNYTThEWDFRY3BJRV9NMzhwemZMWnZBVkluc2tRNjZYUThiVDdmc0VnMnRTWm1kTHVqU3NwNUNHTUh0RjRqRmVaX1JOYUZBR1p4VEh3MGR6WnJQTUdJaTJjamcwUTdGOXVJd3pfSHI2M25wMXJ4WkhXbUY4Wmxoa1pCUmJjRkJKenEyLWJqbTd6bWcwRTVhMmRzQXZuNjM1dEZwd0VuMjRpMk5tUFlFVzE0Rkg3SlFfZTNTYjNBV1AyOURGc3VfV3hXU0Q2UnFMSGNpbGRwMVdYX1lOS0pNWGZpenAyUSJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"CGaYIMzuj2H77stk347kKJ_5jsu6lZ_RBgyXDKA8B2_xqaKfKUtV0fa0bU1MK3u236elaSKsNSG0w37AK62sAZiVa3-aIXEemDjYxewiUbqNaSwRihH2Z0RYYjqjSOHWQPgd3eo0B_g-v-Cb5dXh58UbsNrwY5uelg-1YmgEzDkpHC47o9KiFNZzYL1c6mgD0dcOCKgjeApH3Adfq8cpeN4SJNotzb60dKlKEp6Mn31jn9W-SodCyiZVhqsUUQx1OJn61_x_7B3yrOWzp9Sv-NnHTlM1apBTpYsTs66G7xLww2Nngr4y-1XPzREZgiTcW-GSDC4FhjBF0BoD9XWAMw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/71" Replay-Nonce: - D6mJ6SG4fxDyDpW1atX-HA Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/71", "key": { "kty": "RSA", "n": "tvqYhX3k2fkcy6MWgV4KybF3W1VnoABVa-R47VJsEGaZFNB7gjJhnRy03uALoSEs7dg1irPTgV_94oBgTwcoOE7xlbFjGfjeXEG4gy_RqngU-jc1BkziMIBVSXM8DX1QcpIE_M38pzfLZvAVInskQ66XQ8bT7fsEg2tSZmdLujSsp5CGMHtF4jFeZ_RNaFAGZxTHw0dzZrPMGIi2cjg0Q7F9uIwz_Hr63np1rxZHWmF8ZlhkZBRbcFBJzq2-bjm7zmg0E5a2dsAvn635tFpwEn24i2NmPYEW14FH7JQ_e3Sb3AWP29DFsu_WxWSD6RqLHcildp1WX_YNKJMXfizp2Q", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiRDZtSjZTRzRmeER5RHBXMWF0WC1IQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC83MSJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"gT151BKCpotf8_gxJMBKKV-WyNvj7KEAVYj1xbrrgg0GIWK-MCf3OAmAjAw2Y2rLZ_KI1eoANt3zLO3hAPu1g7sIPUoLkUbGaHI9Q779A6ci3TO0mfrGRcGcCbI-MPfRM7ImRyE7UUmmPgYjgbyDtBhzaIAV4SSC1ao1ZloxZ-TTl9N4AnceqiOXMU34h1U2-5Dr7XFlOTr-pmIVYpoNV1fevI-MqUG9V963b8y8aNapsoRTEZ3pUV6v5urH3u69ANF_JDyKt1BrpnnMcv4Gl85OI49kUlZDbGinBjpFyKDi0tMNGMvYymmFGcP9FQaTCZrW0FLAXKvk5GyPDTOf4Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/s88t_BrZhdU3yXxD8X6wl38rayJb3i4nAYtojBYX7hQ" Replay-Nonce: - FmZOwMUeo_tO5q5iVNUwUg Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:21Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/s88t_BrZhdU3yXxD8X6wl38rayJb3i4nAYtojBYX7hQ", "authorizations": [ "/authZ/mn-gp8UtVvXkVZZR5k9V_TBiJ0AW88B-yIeDPuxIe98" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/my-order/s88t_BrZhdU3yXxD8X6wl38rayJb3i4nAYtojBYX7hQ" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiRm1aT3dNVWVvX3RPNXE1aVZOVXdVZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1vcmRlci9zODh0X0JyWmhkVTN5WHhEOFg2d2wzOHJheUpiM2k0bkFZdG9qQllYN2hRIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzEifQ","payload":"","signature":"e9Ca9BpWwP4PwEhx4wwIAQmwozYzZshU-PeVZ2R78NyxBiQjSyWnv8cNpRaoiKeaAZqw3vWgfk6xgoo5cfSCjLfUeWVe4vDkOiogtl9uhI8cpVlfKf2Fy7R6benhwMC_Dl4J-kvrGzEN-atIScrhNspP3NWKb04i8sOi2MG7UOetL1Qb8LyRjO5nqYYec-B9o76uurpaa-pa7g-OOSXnv50Ku2q4G0Q5laysGXM1WG-fhRtz7ZbrTYa9DG9tG9FBhsaa2v_oh6_hHD3m7tyipMuvYELiwAHJb7N3BNiVwcv10wcHL1JT-dtLxhNA_JQ0-WoDTvJdBqD2RKADYdm_4g"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - "-mC_HWZmhQNJKYQcGLh73g" Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:21Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/s88t_BrZhdU3yXxD8X6wl38rayJb3i4nAYtojBYX7hQ", "authorizations": [ "/authZ/mn-gp8UtVvXkVZZR5k9V_TBiJ0AW88B-yIeDPuxIe98" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/finalize_csr_mismatch.yml000066400000000000000000000204111463311421000237640ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:17 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - GXczlu0gkaz9hfJDHEcwBw Date: - Thu, 10 Oct 2019 03:08:17 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiR1hjemx1MGdrYXo5aGZKREhFY3dCdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiR2RNdFpGZDJzNEtKeG93bkhaZFA1VlVUZmo1X1hBMW5NaEZndVpMVW1aaGVoS2JNem44cGJic014c2JwVnF0ZSIsInkiOiJUWVRkc1lqZHlCaGNKTmhPQ00zNWhONGRfb0dsSUxhYVk5eEE2LVJMbmNGMjU0OWRoRl9adVpfNG1VM0cwZEVTIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"RQGej3TMtlH-b9zxWYDQ3sGggk-dbsZ8ggYJgnndyzfXhmjmvdFHmu1L_dvHeZExgRACKz-wJ0BNReSbSUx1pQ8lNqRJ3FB4z_Sda4aqzugrP3FEwpuAlLHPCG65IaB-"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/63" Replay-Nonce: - oFjdTc4wJw0sxQAusW1Q_g Date: - Thu, 10 Oct 2019 03:08:17 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/63", "key": { "kty": "EC", "crv": "P-384", "x": "GdMtZFd2s4KJxownHZdP5VUTfj5_XA1nMhFguZLUmZhehKbMzn8pbbsMxsbpVqte", "y": "TYTdsYjdyBhcJNhOCM35hN4d_oGlILaaY9xA6-RLncF2549dhF_ZuZ_4mU3G0dES" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoib0ZqZFRjNHdKdzBzeFFBdXNXMVFfZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC82MyJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"1ISgCKMUhjglypqKXyEmULV4J1vyhNAshkxDfu2D0EArY7utlRRw0ahCNInkKoeXy8aCa0Stiz8xA0-sjVUyYarL8gb60M0txVspnDfxpBgHUqY8XN3YdqDFXKfuyI-p"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/FCHtrjjJ_JJQ3FR4WtbKYFRBxOZ7bYexpTahYSl4IW8" Replay-Nonce: - KjoGejdmIPhyAOlD0ky3qQ Date: - Thu, 10 Oct 2019 03:08:17 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:17Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/FCHtrjjJ_JJQ3FR4WtbKYFRBxOZ7bYexpTahYSl4IW8", "authorizations": [ "/authZ/VKWYiW8aGi--RjmHFnFinPbuCkB67B3Haf74DQVc4JU" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT - request: method: post uri: "/finalize-order/FCHtrjjJ_JJQ3FR4WtbKYFRBxOZ7bYexpTahYSl4IW8" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiS2pvR2VqZG1JUGh5QU9sRDBreTNxUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9maW5hbGl6ZS1vcmRlci9GQ0h0cmpqSl9KSlEzRlI0V3RiS1lGUkJ4T1o3YllleHBUYWhZU2w0SVc4Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjMifQ","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDcFZ3V1hDRHRNX2w0TFJpMExtWDVjQlFVOUROMDdTOWpQQXRBNG9rSFVBVGZLWGRFc3dSdlZPb21TVDBNRTdmWWs2TXVCb1FMZ0FDMUdKejdHTXRMVWg1eERXaU9panlhU1dDQXZtb19SUXRoVUc0TVhxQm9Ha3F2V2hfZlg4OXVoS0hSSUNrS1VOWUkxdWduSnd5cTM3ZEN0QzBGb3JZTmc3ckRlQkVqMGxSMkVOazM0M2ZsN1FHR0t2eEpUamxFVGdGQjZXTUtCRUVzd3E3eDYzLWg2WHp0VDNaN1BWQVZaWTJPdUhkVmhBX01PSExLSTJNRm5NRjhyQ0xKZ1kySWQ3ektqcmMyeTNEVldRY25jRmpkc3dHbTJnd2ptN1FZcGFvNXlxeGlvWmE4VFhvNk1HeWk4SnZXaTJRSDFzbk11MVc3eGdhRmdLWVpITXJabnNzb2JBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCTi1qUUc2dVliX1pMNVEtVXhPRXVaQ2hMQ0RrOVJGbEFEd2NJYk5uRVZQRG1USDZTamRfN2ZqOW1YbWJ2dHJvbTl1RFhlZjI3QUtsZUNidnNjcHZ1Tnh4b3RIUFZVTjhWZ1hrU0U1RkJSQkJHTUhzeENFZVRRTDFfMjdaZndzeERhY3pVdk10a0xkTWxJZ2xLU29sdTlaYi1DcllfdVdobG9jQkpyWnUtNzRqS2o5WFhCYTdXbGpCV1ZqS3ByN3lQdmVadm56SmN2NDdMV0dycmtodnBwX3lTX2x3Q2pYUFhzOWRCZk5rcTFPeEJNVDVFeDA1VVc1Skd6SXYzN0FYM3NWUThXX05VYlU4VWpuYXNsY1pEOE5Kakl5ZkpLb0JPdnFYbUJ4Wm9lSS1JMUI1UjZyMWRXdVdNMWh3cnItVlFFbkg3ZEZvQm1SYVp3aG5FQWg1X3YifQ","signature":"Uotrk-GvVEj8r3Gt2r8PvQauJpdEd0jp2zVghi1zmrKk-UkvYdn-zKjtpl4eALAFCCrjSBdetn55_KLj8fUi57yvCel1iShosC2bLc5P9zg7MNcBmzS6dYupYVmeqiSf"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 403 message: Forbidden headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/problem+json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - a7JFEV9KoowVk65HsNvv5Q Date: - Thu, 10 Oct 2019 03:08:17 GMT Content-Length: - '134' body: encoding: UTF-8 string: |- { "type": "urn:ietf:params:acme:error:unauthorized", "detail": "Authorization for \"example.com\" is not status valid", "status": 403 } http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/finalize_incomplete_challenge.yml000066400000000000000000000200511463311421000254510ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - K6Keaf_hlKfQ82HWm-G-Ag Date: - Thu, 10 Oct 2019 03:08:19 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiSzZLZWFmX2hsS2ZRODJIV20tRy1BZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiMUNsRExlQWU2dGJucDVtYnZJd3l3bWNLQ2lmYnFRLW8tUjZTQUNVaTFlbyIsInkiOiJnQXBrN2hfR0ZVTjRFOHYwR3BhRTA3R0d2c3AzaUtZS3pxeWYzWE9RUnNrIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"HWsjD7veqG5m1w9_bZphxrG7-fUw_pD9W0TWhmnADTIui1HyzO3pEkTLJzvuohT8ku-nEiv_5vQ8kZ0FA5ZUIg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/65" Replay-Nonce: - NJ-NKUczfaAvKEiLFEyONQ Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '311' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/65", "key": { "kty": "EC", "crv": "P-256", "x": "1ClDLeAe6tbnp5mbvIwywmcKCifbqQ-o-R6SACUi1eo", "y": "gApk7h_GFUN4E8v0GpaE07GGvsp3iKYKzqyf3XOQRsk" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiTkotTktVY3pmYUF2S0VpTEZFeU9OUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC82NSJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"tOiiCTnwVkE3GOfBrnyYu4MXBgFFc2K7Q8WVySB8O_4SwBcL29jBInRt42oZh3T5hWP2OsnvmLKIwYUH7aNDZA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/OIYUGTYBfQtcj2teUTSC9awjYnmCESsv4C3PIHLvOFM" Replay-Nonce: - RC_YXTj817HrScAGJDCBwQ Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:19Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/OIYUGTYBfQtcj2teUTSC9awjYnmCESsv4C3PIHLvOFM", "authorizations": [ "/authZ/2HeBGz9uoauxqW-o2jP9UBBw9kMdhf_nwzkkJ9v538U" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/finalize-order/OIYUGTYBfQtcj2teUTSC9awjYnmCESsv4C3PIHLvOFM" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiUkNfWVhUajgxN0hyU2NBR0pEQ0J3USIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9maW5hbGl6ZS1vcmRlci9PSVlVR1RZQmZRdGNqMnRlVVRTQzlhd2pZbm1DRVNzdjRDM1BJSEx2T0ZNIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjUifQ","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEUnQ2RHhVVE0tdzBsWUV3RHFJVnFMNUxMT3QyWFY0Y0FOTy1oWXJsb3FhR2RBU3hzRWhSTlJyWmxlRk1KWnU4bFVVbFhUX290LUZmMXo3OUxqdjVWNUstYWJhRWc1VzFzZGNpelExai1zQ0J0MDB0Y24xQ2lLWHRHdEtrbHpnT0RFMlFBWDl4ZlZNaU5XaHdhNzE3RmFvRW5LMTIxMFozd1hJVEh6RW12UjYxVXRyRXBOQjJSNWZReG01WWdnQ0FlMjFZdUtpZEo3SHJkUzdEM2ZGeFhaTWlpcEJrWGJoTE0xMkpIcnQ3OVlaTmpFdWdCR3Z6OGRUbGdqOHFNcnNXaGRXYXhVVldjNGpZTWN1b0swTzJGSWY2U3NYbktoSDUtbjI4Q2JmcTNYMmhST2RQZkkwV3pEYm9QZFM4dXNIRUJGZ2VZYU9jdUFXZTJjQlZlbXRKUzNBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCWnBvajZmWFlsekdCNzlaeVBGalFWM19JWF8tcDdNN0lXQ2haWkx1YXQ1SVVNM3N6cFpfWFJZaG5GcVNOUFRUMkV6RWdONHBuNnZZZ0tZQVd3RmF5d19OTExoQ2E1MVlUSEtITHFZME5JYzVjLXN2cTRTblBoYVpyNnBHSTF3MW1sdEFzZ3I1RFJ5bVZjazA2M3BXaS1vMGx3LUdmNDJndWxuZHE0UERHd2lTR0FrbElqXzI4b2tYNWFWVDlmX01xVlZGYkVNSk9FSjhjOVE5Mzdlc09CZmJyc1g3a3VTd3BNMjhENlJsLWhZLXZtdEQyRVc0V0wxOEV5YkhFWFFrblN0ellWSnA3R09nNGpUR0lMbWhUbjEwUTlSQzlfT1NLUENZQXJreXlYd2ROeHVoZ1Zzd0NEa3dHYlk4dUpCZElyVmpCSE5Id0RhWDgweTEzcV85SGgifQ","signature":"kevRne3gCeUE-C0CjutYtXZE7RX2ZEvhDh8FQGiKpCF8uFjBtsd-jaR8bA8qVw7e7V_MbTw9iWCJREenK8rQ9g"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 403 message: Forbidden headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/problem+json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - Gh2bkhOhgRLNv2BrfHz4jQ Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '134' body: encoding: UTF-8 string: |- { "type": "urn:ietf:params:acme:error:unauthorized", "detail": "Authorization for \"example.com\" is not status valid", "status": 403 } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/finalize_succeed.yml000066400000000000000000000402621463311421000227310ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:17 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - hSEy0mLSdD6KNZWhRBQv8g Date: - Thu, 10 Oct 2019 03:08:17 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:17 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiaFNFeTBtTFNkRDZLTlpXaFJCUXY4ZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InVhYlZQTmJZMV8wYklGWjVqY1JBQTZhQnlOck9Nb2RpWkpTbk9kQUFyWHRQS1ZLVnBHZHZ6RHI2VVZFcEtGdTNMSGdubnpWdUllUXFsN0dXanBpelNwYjZDVUJzYk5QWlpYRFRhNXJHNzhNS3NQY1MyRjR0aU4yb0FOWmNQQVNDOG5VUkdrY2tTR0VJYkVQb195VkRpUURybkhHWnNuRVVxRXlVVFFqVTBMOEdYaUVWMWgwR192Rmxqb21nQzBfQjNVSzNjaDRuQlFMYklBMHlzU0FfMGxFZkgyN04xWGVDVzVoa29ELS11LVR4RDBTbzZ2aHRybkY3aGxmU2RpWlJjX0NIaFlTeDJnV2QxVnNsYlhlcXhLeFFqdTBwb0JHQU44TmEyQ1ZOY1VWUXloaHNFNVp4cVU1TVRzYURwV3B4VGp5YmNfSmMzcEdqTm14VlhsbUxxUSJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"ICxSi8WsBsFLUqBbUIKW-TFRzu05zAf9b4Utle_9jRQz0KqI66ExXd7vC9zQkAuWLUCaoSdlS6JX3qph5n_-8jrQSYFUCMB4RQweIv_dpGKu6SKb3ntr6AuCjIpOdEpQT-Ko0V306ATOnmTaHnkQPi1n_2NZSvqk2X7GRilVNkUxO2Y1LvcuuDnG7pgAkQ-xepSUe5kDReAEcMNncHu9tRw4CKidMsz5qLlNM2gMh9glKKWjSDlCu4RWG0aRpM56i7jJljtk3WMLyD0GZv2o2cRA4V_D5bm_vuBv9ez8FA0GeXdEhgJK5r3XEpY2_zxHZ2BeWIw8CBnVzO08QWN37w"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/64" Replay-Nonce: - Db0YuU6RyZc1AHueDDVueA Date: - Thu, 10 Oct 2019 03:08:18 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/64", "key": { "kty": "RSA", "n": "uabVPNbY1_0bIFZ5jcRAA6aByNrOModiZJSnOdAArXtPKVKVpGdvzDr6UVEpKFu3LHgnnzVuIeQql7GWjpizSpb6CUBsbNPZZXDTa5rG78MKsPcS2F4tiN2oANZcPASC8nURGkckSGEIbEPo_yVDiQDrnHGZsnEUqEyUTQjU0L8GXiEV1h0G_vFljomgC0_B3UK3ch4nBQLbIA0ysSA_0lEfH27N1XeCW5hkoD--u-TxD0So6vhtrnF7hlfSdiZRc_CHhYSx2gWd1VslbXeqxKxQju0poBGAN8Na2CVNcUVQyhhsE5ZxqU5MTsaDpWpxTjybc_Jc3pGjNmxVXlmLqQ", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:18 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiRGIwWXVVNlJ5WmMxQUh1ZUREVnVlQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC82NCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"CdWpTv41mIDcveAdgmGrEhg_0zmS0iEjKWeO_e9yv15alpFFaLlubIveLVSI5XWYdVW-LtHTpjX0vZVX3WwIjDh0AjjB5wPwYj6pY4b_1bgtKvqIAyaMGRc09m3PlkvRlUNCGY_JnjeM1k4fxirZiEAVoToGc2-qcBYWEqjtJItNB4RFj3roRfpvIEsSKIBS0t0CjcCtlv-coEmS9I40Uia9EcE7ZtQLA8NOhjZ2NeAbgNwHFiV7_AEM0POQUyaSNQreIoXjgPbJFUolb0A_94--dIwfi38V5tOf-6BdMHhjoAodAlmUouoB5jyTDEW0EMGhMFZOH-_RHmRE1IPcFA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/OY3TeRFpQZCeVlpCjQ1xK83wJl2xHjw0rhyyj1Z948U" Replay-Nonce: - W36VkKzU4aSU6OqZLBJKTg Date: - Thu, 10 Oct 2019 03:08:18 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:18Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/OY3TeRFpQZCeVlpCjQ1xK83wJl2xHjw0rhyyj1Z948U", "authorizations": [ "/authZ/DQl_qQdol1ly9_vDLHcBL9nwM-i4j0kr9RCluzfXuic" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:18 GMT - request: method: post uri: "/authZ/DQl_qQdol1ly9_vDLHcBL9nwM-i4j0kr9RCluzfXuic" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiVzM2VmtLelU0YVNVNk9xWkxCSktUZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9EUWxfcVFkb2wxbHk5X3ZETEhjQkw5bndNLWk0ajBrcjlSQ2x1emZYdWljIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjQifQ","payload":"","signature":"BMfkHr4y29v2qHK90aGOzL0JME-IKL69CNYzLvgawgMWzPjqJh4CcjC9BD5ui8aib2TmC3sUMkgHC4O1PZGrizifeEDugEUp7So4WeRjNdER31vmTCH7LBH-BSIDZfKJOgsAc2P-Kyv3SWfN-yncd8KlrvB0AAjuuKnsieRF9gIj-ycFMKZmeEqRnzoPaLLSEHOriOubqndxmrN2z0KNVnWQ31C6fo1fWNxilse98Kgqo1I6-XCqD8JOzfdEx4K6OHXjc5ijUGg-CmwXCYzlTqyjYHQ-65vqryQNqtCjpPyeHsO5LZxY86Vpe7NMtg1ZySdM5Ciseaf4LIIe92wXmg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - TH8Krd6LatMIGi6ZHhuMGQ Date: - Thu, 10 Oct 2019 03:08:18 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "http-01", "url": "/chalZ/WZnFEHMKIVGUfFw-RUtCQvfnIycxkY2iSBX6eWyil4o", "token": "4UGWxqSi8If8_QG41sKyqglln7fJyNNTw-gcx0NeDII", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/ZwBJTf-J30Mrt5Q3Wlw7KUor9BFvYoyrjwia3xTB4To", "token": "2t7SK-ZlP7Br6mCKSh2xgrAe7F5PbtO5FWXOat5ghWg", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/Gbfn8N_UDiUhoPoSeA217_9iJKE7MjvmrH38DMv_HA8", "token": "tPtbSCOXPDs32Y_c_RcbylcQvpOpj85CrP7_sFdRymY", "status": "pending" } ], "expires": "2019-10-10T04:08:18Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:18 GMT - request: method: post uri: "/chalZ/WZnFEHMKIVGUfFw-RUtCQvfnIycxkY2iSBX6eWyil4o" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiVEg4S3JkNkxhdE1JR2k2WkhodU1HUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi9XWm5GRUhNS0lWR1VmRnctUlV0Q1F2Zm5JeWN4a1kyaVNCWDZlV3lpbDRvIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjQifQ","payload":"e30","signature":"FsFMlegxOClT8Ee4uK7sgOTo0ryPNs4f4LKqKWgHu-4AX1Yu3WkjFDnJQDdQjXOzbt4dSdlSMSVscwm0y_3cV2ylqJ00k2NAizvSCoI-mSgxMMW2QV7O37eWQDmqi8ZjiHh4L5wGiH1gv_Ig-Xzl2-cHYIRhdMqv5GSBOlVzGj7tGA3lwRtjZq013fFFmqOroA_R2KGTPQgrAmvfst_RltXrvnwAuz924ODvPCnasY8le_HvRq1isqYXoyQx34L2ddpR9siyRy0x33OvrCO8uQptTarW7ZjNpicCVgnQinpWZEo5-RXqPJacWu9tst79o3kzqjjMo2jx3iz1RFIHaA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/DQl_qQdol1ly9_vDLHcBL9nwM-i4j0kr9RCluzfXuic>;rel="up" - <>;rel="index" Replay-Nonce: - aDkk4qNPps3YnooQNddJRA Date: - Thu, 10 Oct 2019 03:08:18 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/WZnFEHMKIVGUfFw-RUtCQvfnIycxkY2iSBX6eWyil4o", "token": "4UGWxqSi8If8_QG41sKyqglln7fJyNNTw-gcx0NeDII", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:18 GMT - request: method: post uri: "/finalize-order/OY3TeRFpQZCeVlpCjQ1xK83wJl2xHjw0rhyyj1Z948U" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiYURrazRxTlBwczNZbm9vUU5kZEpSQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9maW5hbGl6ZS1vcmRlci9PWTNUZVJGcFFaQ2VWbHBDalExeEs4M3dKbDJ4SGp3MHJoeXlqMVo5NDhVIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjQifQ","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDNnZwSm1ReFllSFZCRlQ0X2gzblBsd1BYWnJqdGgtTGlob3loZVFmY2szZXF6SEVIMzVCczNkdnUwdEhOM1VpaU5ITWFyM1FnbmI2ZVhtT2lJZFBtaC1QclFvMEZuRUx0TjR4MUM2QlRvcDhDSTVURXdmSlR2dVNXYVE4REpyd0hOYlEyREQweENlY0c3dlByZHhseGhrcUZJUm9tWTJUYWxLZjREX3F0d0FSaWg5eWFPdWpkV0dqeXM2VDlUbnhoUmFOekJVZDZxdEN2TlItZ3pFV1k2aW5zRXlVcFZKUWtPMGtJWDdpaFNTdG5qYkdiRWtuV2dPbnhwUlVlYi1Wd19OLUFqUW10MUcxLWVkQkYxdkZYQ0ZVVnRBY3MzY2lkblFsTy1FWTN6SE5hdnBRYndTSFFhN0ZaYkRuN18yTm1PYXRlYTRKbHZpRjlxdFhHbmdQcnRBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFDcm1sV0N6X3ZWVEpKUjVTWGxadGJHcjNBeGxsaEdWQXV6N2UtTFRHckVCUmllRDBNODctLUR4QWNNV19uS0I2UFgycWNST0swVTJGcXVrOU4zcTM0eEFuTmhyM1hSaFJ0dkxmYVJnZnFoWFdMR1RPeFJtRllBMGRRcDV5ZUItcXpnTUZrZEpiT0M2ZTZldV90TkpLaUhfM2VQeXRlRzBHMlF0b0lTeFF3WGd0clpCOVExeVQ1el9ETmFNNTQ5eFRINjBOYzdIV3V0MjJRQTFjRDlFMkF5Tkx0TnUxVVEzZEtJbE0xUndYa3hveVBzQ1g1OFJybmQwdXVXckNCVmhnYmp6aDYyTE02YWtleWYzT2ZYc2xjTHpDNVowQmI4T2JrS3JmLVhrVzFTY210WVBDUlVHWG9iVy1xT3l2SVRqeDdneVlkc2ZiWmhQZjRtbHU5QVhPdmkifQ","signature":"QAe6qcKEGtEDHs5oZVox8CkAI1_ft-bf4Lyp1wjOX_xp9LNtldoIzZX755l7CnFBdZnqyRCA9DlaL29IGh4gXA-n1tzX7w9yhEpuuRn1Lhnq11MVx_2gao4xB1puKJLCNky4An8OG8vwSUH9mkPav1Bz4FFQ6yIYsmYvlaAlR5IWQsdC-EcczvdGmpX7YINBZOG8yiEki-7qDlmtbhOsiflD_aqtDeXM67Bezswx-B1mbfEOmk0XRE_j6Z1vVoBb7hX8e-DqwX6aFpnGEqS6HVP0LrWxfrrykJByWTAnFejd5yeEC3w-z3Jt67FFbjNw1m9RUCmr5DoCjK0joZ7mSw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/OY3TeRFpQZCeVlpCjQ1xK83wJl2xHjw0rhyyj1Z948U" Replay-Nonce: - uEPWBeuh1BYmaH-b61A5nA Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '385' body: encoding: UTF-8 string: |- { "status": "processing", "expires": "2019-10-11T03:08:18Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/OY3TeRFpQZCeVlpCjQ1xK83wJl2xHjw0rhyyj1Z948U", "authorizations": [ "/authZ/DQl_qQdol1ly9_vDLHcBL9nwM-i4j0kr9RCluzfXuic" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/my-order/OY3TeRFpQZCeVlpCjQ1xK83wJl2xHjw0rhyyj1Z948U" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoidUVQV0JldWgxQlltYUgtYjYxQTVuQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1vcmRlci9PWTNUZVJGcFFaQ2VWbHBDalExeEs4M3dKbDJ4SGp3MHJoeXlqMVo5NDhVIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjQifQ","payload":"","signature":"JWM_GKvH2Kb-rsv52CmFnRNI32vpGqOJ_6M1DVv2l-HFn6auBedKvHiBPsxYgL_57NkX2rTkLKbSNpqzwsdBa6Z1aoJekX-SCBgkp7xyh7Zd6iYb7sNI4JJRLpSfXiXj6O_p_t4jL2YJuhV9088s8OS8XWVLswjVzsjeCxUmrUFWpCq9nZICezkggFCJVz60cN39yrEdTfuycrQyJd5JxbRsJZ0f_eWmRQtdsrdNZxgsymf-jp9zQouuwbS9xQbJUtM8McEaTUQ5FxXfkz7Qpo2FOFTEzTzBF5ZOMbC0DfEPUl3NCJMBEea-HR4O9Zs3lmjgfhGZpAlVly6EvYPsMg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - "-_gyW-MwtP43DGyw1qxmig" Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '452' body: encoding: UTF-8 string: |- { "status": "valid", "expires": "2019-10-11T03:08:18Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/OY3TeRFpQZCeVlpCjQ1xK83wJl2xHjw0rhyyj1Z948U", "authorizations": [ "/authZ/DQl_qQdol1ly9_vDLHcBL9nwM-i4j0kr9RCluzfXuic" ], "certificate": "/certZ/24c68d31ee7f06d8" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/get_nonce.yml000066400000000000000000000034361463311421000214000ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:14 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - hpHeIywErqvdFwQwSQbM2w Date: - Thu, 10 Oct 2019 03:08:14 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/load_account_unkown_kid.yml000066400000000000000000000253331463311421000243220ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - wTrCXDiiVZa4RYUFyV2vyA Date: - Thu, 10 Oct 2019 03:08:15 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoid1RyQ1hEaWlWWmE0UllVRnlWMnZ5QSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiMFM5eWY3YjlybmVOUGFRdFlTeG9JemhoOFdiU2RCYW10Tm5PM1YzZnB0LTZrZmVJUXJ0dWItNkNJdVAxVktSayIsInkiOiJIcEtfV0FlTXdnRWhkRUpEc3dpZWxQRFMwSFo2dzV2R01Jcm45S1VCcFF6YTY1OG5XeDVOTWdnUTR6ZkdhVFNvIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"Pe_Dw3cmivDoaI6G5AOI5e34nDYfXtO-ynKXP-hyEjFOLXHKAm_T8YMzbgvi8Rc1I2jRbOlItkX7WnA6QQYGhYCz5h1H1Z-SGwzdekqtFJ0Bw_qpUOAkzZP1-4_hxwfe"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/59" Replay-Nonce: - PZS156QXCqPRA0xFEMnLrg Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/59", "key": { "kty": "EC", "crv": "P-384", "x": "0S9yf7b9rneNPaQtYSxoIzhh8WbSdBamtNnO3V3fpt-6kfeIQrtub-6CIuP1VKRk", "y": "HpK_WAeMwgEhdEJDswielPDS0HZ6w5vGMIrn9KUBpQza658nWx5NMggQ4zfGaTSo" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - aEVM1B8IwvKPpaYLkrYvDA Date: - Thu, 10 Oct 2019 03:08:15 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiYUVWTTFCOEl3dktQcGFZTGtyWXZEQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiMFM5eWY3YjlybmVOUGFRdFlTeG9JemhoOFdiU2RCYW10Tm5PM1YzZnB0LTZrZmVJUXJ0dWItNkNJdVAxVktSayIsInkiOiJIcEtfV0FlTXdnRWhkRUpEc3dpZWxQRFMwSFo2dzV2R01Jcm45S1VCcFF6YTY1OG5XeDVOTWdnUTR6ZkdhVFNvIn19","payload":"eyJvbmx5UmV0dXJuRXhpc3RpbmciOnRydWV9","signature":"ZKXwaOLsTQnSIw5CGTl3tM8u-5_lTNCYSyvfDJGbz5nCsBi7cXjjPHydME7Bl2iVU3bKos0k0haptvTrYcheMmR6KeukQVvnTF_GPd21KoOHA2T7uQjHqvcwx6hUYnLS"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/59" Replay-Nonce: - pV3Ghfe-5Y5kbSb3NQSdxw Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/59", "key": { "kty": "EC", "crv": "P-384", "x": "0S9yf7b9rneNPaQtYSxoIzhh8WbSdBamtNnO3V3fpt-6kfeIQrtub-6CIuP1VKRk", "y": "HpK_WAeMwgEhdEJDswielPDS0HZ6w5vGMIrn9KUBpQza658nWx5NMggQ4zfGaTSo" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/my-account/59" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoicFYzR2hmZS01WTVrYlNiM05RU2R4dyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50LzU5Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTkifQ","payload":"","signature":"b7NMxbLPItmmHc3e4EM7R0fcyX6K9XZYEjQIUO95E4WbFy3LpJuYN_rcq1e5IthkX4HxVbm4DoJjCalKwNxN6CLmsPxOeFfDFn72QATrLna6fVHnPEww6kBKavnr2rYT"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - DqngGoyWJ1gDlwouO4kKnA Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/59", "key": { "kty": "EC", "crv": "P-384", "x": "0S9yf7b9rneNPaQtYSxoIzhh8WbSdBamtNnO3V3fpt-6kfeIQrtub-6CIuP1VKRk", "y": "HpK_WAeMwgEhdEJDswielPDS0HZ6w5vGMIrn9KUBpQza658nWx5NMggQ4zfGaTSo" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/my-account/59" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiRHFuZ0dveVdKMWdEbHdvdU80a0tuQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50LzU5Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTkifQ","payload":"","signature":"KPk1wyOe6fVytUwEtubmARc2xMwzKi9eto5nXVTrTsUDxDxT8SWoejgxe_ezPkn8xkdliQfwBUSXIZHqk7kwDmM4uvKrhvVqgfwr7bVQ1BTD4IGqFTfAsOiJbm-oIeSp"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - 7AIuBsSX3qEIyHX89NN0mA Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/59", "key": { "kty": "EC", "crv": "P-384", "x": "0S9yf7b9rneNPaQtYSxoIzhh8WbSdBamtNnO3V3fpt-6kfeIQrtub-6CIuP1VKRk", "y": "HpK_WAeMwgEhdEJDswielPDS0HZ6w5vGMIrn9KUBpQza658nWx5NMggQ4zfGaTSo" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/load_account_valid_kid.yml000066400000000000000000000170521463311421000240770ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.16 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Tue, 13 Feb 2024 21:25:24 GMT Content-Length: - '396' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "externalAccountRequired": false, "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Tue, 13 Feb 2024 21:25:24 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.16 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - Djh3JqTrVmyiJxHhtMin_Q Date: - Tue, 13 Feb 2024 21:25:25 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Tue, 13 Feb 2024 21:25:25 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiRGpoM0pxVHJWbXlpSnhIaHRNaW5fUSIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiRE9tcjhsbDJydTlvTW1DWERMeDB5b1pJbDYzN1BLM2VuMUV6enFaaFBKc3RQSnRiVWM4X2c4b1hGV0dpeTBDTiIsInkiOiJmQnBoRHA5LVZLamFubHRnMmpmSTJlWmk4NDRpMk53cmkzMjFDal9zNnJ0UVNkWnZ2R1NoOXg0YVNoWUlPZThUIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"aZMiCi8pWCjleLBNqs8TeFfcQuDps9WRDqQf-MAp9djKdVn70gxgKVR4YeDCHkPDghe9I_9cXQmDhGTj6FHf-Cusm7vUMA-458WnZ-VDCPxNlpQLky2Le6chPYuB4xfc"}' headers: User-Agent: - Acme::Client v2.0.16 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/31c1ab2fa9778b24" Replay-Nonce: - "-XIlkoPlSCONNXRgQfgL4Q" Date: - Tue, 13 Feb 2024 21:25:25 GMT Content-Length: - '361' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/31c1ab2fa9778b24", "key": { "kty": "EC", "crv": "P-384", "x": "DOmr8ll2ru9oMmCXDLx0yoZIl637PK3en1EzzqZhPJstPJtbUc8_g8oXFWGiy0CN", "y": "fBphDp9-VKjanltg2jfI2eZi844i2Nwri321Cj_s6rtQSdZvvGSh9x4aShYIOe8T" } } http_version: recorded_at: Tue, 13 Feb 2024 21:25:25 GMT - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.16 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Tue, 13 Feb 2024 21:25:25 GMT Content-Length: - '396' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "externalAccountRequired": false, "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Tue, 13 Feb 2024 21:25:25 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.16 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - gIK0Dsp3b7wF1cLPnuUjKA Date: - Tue, 13 Feb 2024 21:25:25 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Tue, 13 Feb 2024 21:25:25 GMT - request: method: post uri: "/my-account/31c1ab2fa9778b24" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiZ0lLMERzcDNiN3dGMWNMUG51VWpLQSIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9teS1hY2NvdW50LzMxYzFhYjJmYTk3NzhiMjQiLCJraWQiOiJodHRwczovLzAuMC4wLjA6MTQwMDAvbXktYWNjb3VudC8zMWMxYWIyZmE5Nzc4YjI0In0","payload":"","signature":"zmGzRq85n3YbFuwo9glhbUwAL_Y6k4NcCKlP1TKvXHa1haQLDH7kJFPiwempsQLIhOtvMcBJrOCOMmoe4VpiPF2pnDPY0qZs8W6YzEKe_7nMXjdnK7QAiDeccjd_bbd8"}' headers: User-Agent: - Acme::Client v2.0.16 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - DQ4MtcsHzkDSLfq2yeDQsg Date: - Tue, 13 Feb 2024 21:25:25 GMT Content-Length: - '361' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/31c1ab2fa9778b24", "key": { "kty": "EC", "crv": "P-384", "x": "DOmr8ll2ru9oMmCXDLx0yoZIl637PK3en1EzzqZhPJstPJtbUc8_g8oXFWGiy0CN", "y": "fBphDp9-VKjanltg2jfI2eZi844i2Nwri321Cj_s6rtQSdZvvGSh9x4aShYIOe8T" } } http_version: recorded_at: Tue, 13 Feb 2024 21:25:25 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/new_account_agree_terms.yml000066400000000000000000000106431463311421000243170ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - yFZPHjvjLZq2aBwFbGoOKw Date: - Thu, 10 Oct 2019 03:08:16 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoieUZaUEhqdmpMWnEyYUJ3RmJHb09LdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6IjRSeEQ1UnBMT2JjNURRcHp0UlZ3YkNsaWdWWmJnQktoaWx5MFRXbTJpTUZYc0ZRRENlanJ3bHhqLS1nUXQ1UndXX3EyT0FvRVpNMHBHVjN1eWN3SVlsM2VmYVYyMVpjVHA1QVM2OHptdllEQkoxTFhoVGtwdkJxOHEwMmNJd0tuOGxTaExHdUpWTFl1YmMzZ0lyU3Q3ck5jckJzNEh6cThqZ3VRaHF1c2xRWkRBS2tILS02em1Oc0t6M084UU1rYmNqLWx1Z2xEUFcxcU91SlpRUWpoX2U1WXludmtqR3I0cjcxNHdVbjhKcEJfRWl3TG5BMkM3MVM1ZmRCeWN0QjNPcG4zald5ZTJlRGlLZmJqX1JSOEZ0czIzcHQ5QXUtTGtDMVdVdEZ2X3pGaXA4Qkp4WWNjd0ZPSGhWYjl3b2hDWV8yMG9DT3NERkhhcHJWV3p4M0s5dyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"HYzqegvAYrBt13T11BB832WldifTAONqmZB4xRqoI9xcsMVDDTICqJo8FUJpiSvqn6jKN8yBkW8_OEbiuZKe3Ob1wQ0EGL0O0HX16kHjkS0qkrMVVDfSuxOM5LT4CrpbnqbiU0tAifD9tl2_S98nOAM2Oln6xJAjZt49gJAJCSvmOyei42XnZZjFPVPQOsrusZzliEPNZHokgNxqn4TPmVSImqQykJluV_tZaKOUVYJxzG36twPNMOqz2EjVVxxUmgFmDGIpE8qQf3voRddA2Okb9gdcb6GPRMNH1oQmlDmrq1SzQxXE34uRl1dXWf3oIh4tApTVoGC6FJwqqcfMYQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/61" Replay-Nonce: - _ClcKhAQfQ3NUANcKCCKfA Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/61", "key": { "kty": "RSA", "n": "4RxD5RpLObc5DQpztRVwbCligVZbgBKhily0TWm2iMFXsFQDCejrwlxj--gQt5RwW_q2OAoEZM0pGV3uycwIYl3efaV21ZcTp5AS68zmvYDBJ1LXhTkpvBq8q02cIwKn8lShLGuJVLYubc3gIrSt7rNcrBs4Hzq8jguQhquslQZDAKkH--6zmNsKz3O8QMkbcj-luglDPW1qOuJZQQjh_e5YynvkjGr4r714wUn8JpB_EiwLnA2C71S5fdByctB3Opn3jWye2eDiKfbj_RR8Fts23pt9Au-LkC1WUtFv_zFip8BJxYccwFOHhVb9wohCY_20oCOsDFHaprVWzx3K9w", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/new_account_invalid_external_binding.yml000066400000000000000000000133661463311421000270510ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.12 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 31 Jan 2023 22:10:06 GMT Content-Type: - application/json Content-Length: - '645' Connection: - keep-alive Access-Control-Allow-Origin: - "*" Strict-Transport-Security: - max-age=15724800; includeSubDomains body: encoding: UTF-8 string: |- { "newNonce": "/newNonce", "newAccount": "/newAccount", "newOrder": "/newOrder", "revokeCert": "/revokeCert", "keyChange": "/keyChange", "meta": { "termsOfService": "https://secure.trust-provider.com/repository/docs/Legacy/20221001_Certificate_Subscriber_Agreement_v_2_5_click.pdf", "website": "https://zerossl.com", "caaIdentities": ["sectigo.com", "trust-provider.com", "usertrust.com", "comodoca.com", "comodo.com"], "externalAccountRequired": true } } http_version: recorded_at: Tue, 31 Jan 2023 22:10:06 GMT - request: method: head uri: "/newNonce" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.12 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 31 Jan 2023 22:10:08 GMT Content-Type: - application/octet-stream Connection: - keep-alive Replay-Nonce: - PaUv7Esm7LPHzke0mDzpw3xD0x4NFYVXEtJws7fNolI Cache-Control: - max-age=0, no-cache, no-store Access-Control-Allow-Origin: - "*" Link: - <>;rel="index" Strict-Transport-Security: - max-age=15724800; includeSubDomains body: encoding: UTF-8 string: '' http_version: recorded_at: Tue, 31 Jan 2023 22:10:08 GMT - request: method: post uri: "/newAccount" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiUGFVdjdFc203TFBIemtlMG1EenB3M3hEMHg0TkZZVlhFdEp3czdmTm9sSSIsInVybCI6Imh0dHBzOi8vYWNtZS56ZXJvc3NsLmNvbS92Mi9EVjkwL25ld0FjY291bnQiLCJqd2siOnsiZSI6IkFRQUIiLCJrdHkiOiJSU0EiLCJuIjoiM1lILUFIZWw2OFRZZkhwSk9NWHQ5UDh6NjVGVGhQZVh0cWNnYkFyZDBvd0V4Vkd2LXZJUjN1c0dCVjdyRDl2RmdQNmZJQlpkanBCN1JZVV94MEhVMG5qdWI1UFZ2UWVkY2FuWUdnTk9KQ3lERi1mRzBaakZDekFJYXdHb2stcGVHTEx3X2lHc3JvV0k2S0tyUDVlcXNYdDlaV2xFMEwwMUlrV3JIUFQ3Z0ZtNWlrcTM5TG54cVphZGhzOENoQmY5T1NYYlR5Z25uVnE0UHpZbXc0YVA4eTNESDk1YXAxbEF3aU05TmZfMnppN3FRQUZka2MxNWhkNTZiYWhsSl9ycVFncDN6LXI2bTV2YkJ3UVgyMzRveG5tRzg0Y1dmWnJQTmhiTkMyS2g1enk2TlRUMGZqOEFSaDBvbGJIczBHdWZILUFCdkc0Wkx6dWNZbEtvRTJiRDd3In19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlLCJleHRlcm5hbEFjY291bnRCaW5kaW5nIjp7InByb3RlY3RlZCI6ImV5SmhiR2NpT2lKSVV6STFOaUlzSW10cFpDSTZJbk5zTmpGVlR6ZHNTMmRUTUZaUFUwOHlRbTVST1VFaUxDSjFjbXdpT2lKb2RIUndjem92TDJGamJXVXVlbVZ5YjNOemJDNWpiMjB2ZGpJdlJGWTVNQzl1WlhkQlkyTnZkVzUwSW4wIiwicGF5bG9hZCI6ImV5SmxJam9pUVZGQlFpSXNJbXQwZVNJNklsSlRRU0lzSW00aU9pSXpXVWd0UVVobGJEWTRWRmxtU0hCS1QwMVlkRGxRT0hvMk5VWlVhRkJsV0hSeFkyZGlRWEprTUc5M1JYaFdSM1l0ZGtsU00zVnpSMEpXTjNKRU9YWkdaMUEyWmtsQ1dtUnFjRUkzVWxsVlgzZ3dTRlV3Ym1wMVlqVlFWblpSWldSallXNVpSMmRPVDBwRGVVUkdMV1pITUZwcVJrTjZRVWxoZDBkdmF5MXdaVWRNVEhkZmFVZHpjbTlYU1RaTFMzSlFOV1Z4YzFoME9WcFhiRVV3VERBeFNXdFhja2hRVkRkblJtMDFhV3R4TXpsTWJuaHhXbUZrYUhNNFEyaENaamxQVTFoaVZIbG5ibTVXY1RSUWVsbHRkelJoVURoNU0wUklPVFZoY0RGc1FYZHBUVGxPWmw4eWVtazNjVkZCUm1Scll6RTFhR1ExTm1KaGFHeEtYM0p4VVdkd00zb3Rjalp0TlhaaVFuZFJXREl6Tkc5NGJtMUhPRFJqVjJaYWNsQk9hR0pPUXpKTGFEVjZlVFpPVkZRd1ptbzRRVkpvTUc5c1lraHpNRWQxWmtndFFVSjJSelJhVEhwMVkxbHNTMjlGTW1KRU4zY2lmUSIsInNpZ25hdHVyZSI6ImV2Um56YlBCV3JIemhIa0QzS2hndDJ2SlR5YVZoZXlkNC1NbHJRblBkMEk9In19","signature":"K0wj-1GReDCQBZXcICcLB_9jwfTIGL3-2Qe5dLBp_w7iU9GBdoP0aM2uqt6iKQD_kDrVbFfoAMMuxYL6dkNR15-G_ZFUaPQBydFvi0zF0gLK-LFUNgwa4ccSV8coFBCMlVT8zzoxwcCh4aXkb8-rYcqvRXJsPmlwYegJK3Cjcq0LriSjRgTePBks1gdJASoSqLDqWxO7BGCTHXrr0AG3V1oBcQDbYIqyvoWlT3lDzN6zfzczfS-zEU6-h9x0XMGNfLC2x_siNHNbAXBEeYW1TjNzxyu_x-E5_cQqncQafvBjvjYMQFN34M8fjuK8EiAAcXMFOXZEdLfcvRcSnwK-Vw"}' headers: User-Agent: - Acme::Client v2.0.12 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 400 message: Bad Request headers: Server: - nginx Date: - Tue, 31 Jan 2023 22:10:10 GMT Content-Type: - application/problem+json Content-Length: - '99' Connection: - keep-alive Replay-Nonce: - L7Ph5DdMZ31weGODBte1Bb7yP8GBBeXOeDOSNbYFm_0 Cache-Control: - max-age=0, no-cache, no-store Access-Control-Allow-Origin: - "*" Link: - <>;rel="index" Strict-Transport-Security: - max-age=15724800; includeSubDomains body: encoding: UTF-8 string: '{"type":"urn:ietf:params:acme:error:malformed","status":400,"detail":"[External Account Binding] "}' http_version: recorded_at: Tue, 31 Jan 2023 22:10:10 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/new_account_refuse_terms.yml000066400000000000000000000077221463311421000245310ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - fllAWa2hcoxWw_V2i5yY2Q Date: - Thu, 10 Oct 2019 03:08:16 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiZmxsQVdhMmhjb3hXd19WMmk1eVkyUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6Ind6WG1pbWJ3cElfdFhva2lqNTNpNTlvYVRTTks2QnVPLWt0cDhwLXFBVG1YanBUdUxFRUF6WVFxVVIyUncwZmJ6TG13bk1qazFLVFJ1azZjdllFREhJd1VFdUU4Y2VUaVg5THdnTzBzenpLemNMMGdtZERDZnc1WVFfcjRlenJ0VC0wTmlMdEdkT2JLZEZ1b1VGN0UtUzk4UC1OOW0yZU5CSU1xVDdXQmw1RVRPeFh6OTRjUXhHNy13aFhhWEdlMUdpM3V6SGlxaHVBcTVZd1YyX1JROW0xd2VxUmdpbUV5NGc3NzNOSXpTMTZQOTMxRW04alFLYTRSQVBZWHY5SVVyOC1VMVpydVVTUWk4WGQzZnBNYVhhMnBYREtXWjc5dnM4UDBycVFpMFBCZ0tLaXBRQ1lXZS1pVDljMlh6YUR0WE1MSzVWUEY3dTNDLWowLUlkaXRDUSJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl19","signature":"WmC99gSTvwIILpo7vzgQX6RY15lQrwQ5_GiqLJWkI7yPpnDjFM7RzTg-fdDIdEBKUO_SmZquyq6DeWTGeK5Sv05pa35TzY7RG8KeUVUBn2TtNmvksBvufvzzSZkZtwyiYOpaGS9wtmVyl5K92trzgQKfEbhbmkX1G2C48FErcIPASExxRXGrO7Ow8xKVWqIjNzdIcB_xaNIF6cqoDIaQT0QbtCLcMDum732CWbGtGfyNcbXwzFfu5g9X2qUSCs6YsNa1ScljowKLFAxf-fa8F7ztkUkAUh68LS-oNY2MkXjYHdwtmXZTMlC46nPUz8yoAExlewpeKPrJBWEsY_mY5g"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 403 message: Forbidden headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/problem+json; charset=utf-8 Link: - ;rel="terms-of-service" - <>;rel="index" Replay-Nonce: - s652EIBYhKFgo3BZDe-88w Date: - Thu, 10 Oct 2019 03:08:16 GMT Content-Length: - '150' body: encoding: UTF-8 string: |- { "type": "urn:ietf:params:acme:error:agreementRequired", "detail": "Provided account did not agree to the terms of service", "status": 403 } http_version: recorded_at: Thu, 10 Oct 2019 03:08:16 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/new_account_valid_external_binding.yml000066400000000000000000000253231463311421000265160ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.12 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 31 Jan 2023 22:48:52 GMT Content-Type: - application/json Content-Length: - '645' Connection: - keep-alive Access-Control-Allow-Origin: - "*" Strict-Transport-Security: - max-age=15724800; includeSubDomains body: encoding: UTF-8 string: |- { "newNonce": "/newNonce", "newAccount": "/newAccount", "newOrder": "/newOrder", "revokeCert": "/revokeCert", "keyChange": "/keyChange", "meta": { "termsOfService": "https://secure.trust-provider.com/repository/docs/Legacy/20221001_Certificate_Subscriber_Agreement_v_2_5_click.pdf", "website": "https://zerossl.com", "caaIdentities": ["sectigo.com", "trust-provider.com", "usertrust.com", "comodoca.com", "comodo.com"], "externalAccountRequired": true } } http_version: recorded_at: Tue, 31 Jan 2023 22:48:52 GMT - request: method: head uri: "/newNonce" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.12 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 31 Jan 2023 22:48:53 GMT Content-Type: - application/octet-stream Connection: - keep-alive Replay-Nonce: - 1om1hqPzu4_sm6EcyHyZRfuc24SOqjVZV_pTE11J4Co Cache-Control: - max-age=0, no-cache, no-store Access-Control-Allow-Origin: - "*" Link: - <>;rel="index" Strict-Transport-Security: - max-age=15724800; includeSubDomains body: encoding: UTF-8 string: '' http_version: recorded_at: Tue, 31 Jan 2023 22:48:53 GMT - request: method: post uri: "/newAccount" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMW9tMWhxUHp1NF9zbTZFY3lIeVpSZnVjMjRTT3FqVlpWX3BURTExSjRDbyIsInVybCI6Imh0dHBzOi8vYWNtZS56ZXJvc3NsLmNvbS92Mi9EVjkwL25ld0FjY291bnQiLCJqd2siOnsiZSI6IkFRQUIiLCJrdHkiOiJSU0EiLCJuIjoidU0tWjdSMHY3WGFKUXZNLW8wenowQTlkbTBnQWdHcHBWR3RwQ20zMXJhVWtSTF9nZ2gzMHhBSWg2NjhaQW9CYlVTdVJrM3pQMGFCY2xBblJIeElEMjROZDBfNlFuVElGaGo1THJjZ0NobFNza0l0djV2VTNma3ctNFNQUDJPLW9HR3oyS2pUOURweE5sYWFlLXktSDNDZEc1aWk4NEEyX0hwTVlPM0RlYTZ1OG5ubnhEYlpRak5MQWdXWGJTVkRtWVhtWWhoU1hMRi14bmZ5RUp6dE9nSzh4c2hFd2lTYlpMUzFtSTZublhFWTFPVUxGbE9HUkxPOEVTUFMycHhFOHh4aE5FTEs1dXBWSk5POXA4MVlwSDN0VnMycl9fM1JmVGdVVDVSc2EzNzEwMEVXMVA2bnIwb2E2WGgyYkpWSFM1SDU0RVhrcFFQOXkyT2g4Z2oyUVhRIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlLCJleHRlcm5hbEFjY291bnRCaW5kaW5nIjp7InByb3RlY3RlZCI6ImV5SjBlWEFpT2lKS1YxUWlMQ0poYkdjaU9pSklVekkxTmlJc0ltdHBaQ0k2SWtGbVFYSXRlamxwT1ZkMlpFbDZOV2huWkhSTFFrRWlMQ0oxY213aU9pSm9kSFJ3Y3pvdkwyRmpiV1V1ZW1WeWIzTnpiQzVqYjIwdmRqSXZSRlk1TUM5dVpYZEJZMk52ZFc1MEluMCIsInBheWxvYWQiOiJleUpsSWpvaVFWRkJRaUlzSW10MGVTSTZJbEpUUVNJc0ltNGlPaUoxVFMxYU4xSXdkamRZWVVwUmRrMHRiekI2ZWpCQk9XUnRNR2RCWjBkd2NGWkhkSEJEYlRNeGNtRlZhMUpNWDJkbmFETXdlRUZKYURZMk9GcEJiMEppVlZOMVVtc3plbEF3WVVKamJFRnVVa2g0U1VReU5FNWtNRjgyVVc1VVNVWm9halZNY21OblEyaHNVM05yU1hSMk5YWlZNMlpyZHkwMFUxQlFNazh0YjBkSGVqSkxhbFE1UkhCNFRteGhZV1V0ZVMxSU0wTmtSelZwYVRnMFFUSmZTSEJOV1U4elJHVmhOblU0Ym01dWVFUmlXbEZxVGt4QloxZFlZbE5XUkcxWldHMVphR2hUV0V4R0xYaHVabmxGU25wMFQyZExPSGh6YUVWM2FWTmlXa3hUTVcxSk5tNXVXRVZaTVU5VlRFWnNUMGRTVEU4NFJWTlFVekp3ZUVVNGVIaG9Ua1ZNU3pWMWNGWktUazg1Y0RneFdYQklNM1JXY3pKeVgxOHpVbVpVWjFWVU5WSnpZVE0zTVRBd1JWY3hVRFp1Y2pCdllUWllhREppU2xaSVV6VklOVFJGV0d0d1VWQTVlVEpQYURobmFqSlJXRkVpZlEiLCJzaWduYXR1cmUiOiJia3Z2Y0ZDRFRWblA4U0YtcDhjczY0Nld5ZF9vdHRsRWpneHhyNDBmM2ZBIn19","signature":"B6XywHSaSjVF4IlT2Rk1MHBlTWx_DdBJC1MiCBTzdzrmFsbWZ6zY0dqu1tR16lmLeXQx3u0OW80TEsACyVfWQTrpO0mEXhjD5Ibycwdj5EIMMjxnMOPG5pHfq6-3WqfKL9ue0ql0eS8rBENquosDW1j37u2w4uQ2OAFF1_eWJBmanO5inzUEzIbecG8Xfdy7bArTO9WPNVPQsMlWWTPOqekYqTewJi0-hEdgoSxzIaSwsGLgfMUAgSFRhOCr0hgPnCQsXXXeuGzcGYR_baaaNpTKFEyvikxnfOMhpwF7C_lkkOGjA0nnJ_ozJeJwEd8gs4YzD_wkAt6C-1yXlrxb0w"}' headers: User-Agent: - Acme::Client v2.0.12 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Server: - nginx Date: - Tue, 31 Jan 2023 22:48:53 GMT Content-Type: - application/json Content-Length: - '924' Connection: - keep-alive Replay-Nonce: - W3Lzv1p7A7xavnTPEGZygyIH7cAcxitIp1w2iai1AnI Cache-Control: - max-age=0, no-cache, no-store Access-Control-Allow-Origin: - "*" Location: - "/account/tvzD1IUNIZSHtBJpkkgKSQ" Link: - <>;rel="index" Strict-Transport-Security: - max-age=15724800; includeSubDomains body: encoding: UTF-8 string: '{"status":"valid","contact":["mailto:info@example.com"],"termsOfServiceAgreed":true,"externalAccountBinding":{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImtpZCI6IkFmQXItejlpOVd2ZEl6NWhnZHRLQkEiLCJ1cmwiOiJodHRwczovL2FjbWUuemVyb3NzbC5jb20vdjIvRFY5MC9uZXdBY2NvdW50In0","payload":"eyJlIjoiQVFBQiIsImt0eSI6IlJTQSIsIm4iOiJ1TS1aN1IwdjdYYUpRdk0tbzB6ejBBOWRtMGdBZ0dwcFZHdHBDbTMxcmFVa1JMX2dnaDMweEFJaDY2OFpBb0JiVVN1UmszelAwYUJjbEFuUkh4SUQyNE5kMF82UW5USUZoajVMcmNnQ2hsU3NrSXR2NXZVM2Zrdy00U1BQMk8tb0dHejJLalQ5RHB4TmxhYWUteS1IM0NkRzVpaTg0QTJfSHBNWU8zRGVhNnU4bm5ueERiWlFqTkxBZ1dYYlNWRG1ZWG1ZaGhTWExGLXhuZnlFSnp0T2dLOHhzaEV3aVNiWkxTMW1JNm5uWEVZMU9VTEZsT0dSTE84RVNQUzJweEU4eHhoTkVMSzV1cFZKTk85cDgxWXBIM3RWczJyX18zUmZUZ1VUNVJzYTM3MTAwRVcxUDZucjBvYTZYaDJiSlZIUzVINTRFWGtwUVA5eTJPaDhnajJRWFEifQ","signature":"bkvvcFCDTVnP8SF-p8cs646Wyd_ottlEjgxxr40f3fA"},"orders":"/account/tvzD1IUNIZSHtBJpkkgKSQ/orders"}' http_version: recorded_at: Tue, 31 Jan 2023 22:48:53 GMT - request: method: post uri: "/newAccount" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiVzNMenYxcDdBN3hhdm5UUEVHWnlneUlIN2NBY3hpdElwMXcyaWFpMUFuSSIsInVybCI6Imh0dHBzOi8vYWNtZS56ZXJvc3NsLmNvbS92Mi9EVjkwL25ld0FjY291bnQiLCJqd2siOnsiZSI6IkFRQUIiLCJrdHkiOiJSU0EiLCJuIjoidU0tWjdSMHY3WGFKUXZNLW8wenowQTlkbTBnQWdHcHBWR3RwQ20zMXJhVWtSTF9nZ2gzMHhBSWg2NjhaQW9CYlVTdVJrM3pQMGFCY2xBblJIeElEMjROZDBfNlFuVElGaGo1THJjZ0NobFNza0l0djV2VTNma3ctNFNQUDJPLW9HR3oyS2pUOURweE5sYWFlLXktSDNDZEc1aWk4NEEyX0hwTVlPM0RlYTZ1OG5ubnhEYlpRak5MQWdXWGJTVkRtWVhtWWhoU1hMRi14bmZ5RUp6dE9nSzh4c2hFd2lTYlpMUzFtSTZublhFWTFPVUxGbE9HUkxPOEVTUFMycHhFOHh4aE5FTEs1dXBWSk5POXA4MVlwSDN0VnMycl9fM1JmVGdVVDVSc2EzNzEwMEVXMVA2bnIwb2E2WGgyYkpWSFM1SDU0RVhrcFFQOXkyT2g4Z2oyUVhRIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlLCJleHRlcm5hbEFjY291bnRCaW5kaW5nIjp7InByb3RlY3RlZCI6ImV5SjBlWEFpT2lKS1YxUWlMQ0poYkdjaU9pSklVekkxTmlJc0ltdHBaQ0k2SWtGbVFYSXRlamxwT1ZkMlpFbDZOV2huWkhSTFFrRWlMQ0oxY213aU9pSm9kSFJ3Y3pvdkwyRmpiV1V1ZW1WeWIzTnpiQzVqYjIwdmRqSXZSRlk1TUM5dVpYZEJZMk52ZFc1MEluMCIsInBheWxvYWQiOiJleUpsSWpvaVFWRkJRaUlzSW10MGVTSTZJbEpUUVNJc0ltNGlPaUoxVFMxYU4xSXdkamRZWVVwUmRrMHRiekI2ZWpCQk9XUnRNR2RCWjBkd2NGWkhkSEJEYlRNeGNtRlZhMUpNWDJkbmFETXdlRUZKYURZMk9GcEJiMEppVlZOMVVtc3plbEF3WVVKamJFRnVVa2g0U1VReU5FNWtNRjgyVVc1VVNVWm9halZNY21OblEyaHNVM05yU1hSMk5YWlZNMlpyZHkwMFUxQlFNazh0YjBkSGVqSkxhbFE1UkhCNFRteGhZV1V0ZVMxSU0wTmtSelZwYVRnMFFUSmZTSEJOV1U4elJHVmhOblU0Ym01dWVFUmlXbEZxVGt4QloxZFlZbE5XUkcxWldHMVphR2hUV0V4R0xYaHVabmxGU25wMFQyZExPSGh6YUVWM2FWTmlXa3hUTVcxSk5tNXVXRVZaTVU5VlRFWnNUMGRTVEU4NFJWTlFVekp3ZUVVNGVIaG9Ua1ZNU3pWMWNGWktUazg1Y0RneFdYQklNM1JXY3pKeVgxOHpVbVpVWjFWVU5WSnpZVE0zTVRBd1JWY3hVRFp1Y2pCdllUWllhREppU2xaSVV6VklOVFJGV0d0d1VWQTVlVEpQYURobmFqSlJXRkVpZlEiLCJzaWduYXR1cmUiOiJia3Z2Y0ZDRFRWblA4U0YtcDhjczY0Nld5ZF9vdHRsRWpneHhyNDBmM2ZBIn19","signature":"ZxuvPDT6X6mRCdrbDfoa65gXq8Y413ZAeQrN-U9CDaclcEe5z82uiLg_z_n1K7GaXLOsckdqa2WM2dw37H6LpLm1fNZHD66RVxNqvNuMmyNJRH-9yIDggGXnR36ekrxL214Hj4am1sPzlOqZQ_w-EkuPoB7VLpBloXK2xROF1SK_eTEZCUoLCWI7ifr44CDv6iyCzvP4w5LjpOHk4ZgdktFWVOnGO9nqhX7KWzP3RD6NoNH5ML4Y_DpZ8B49vQjAYEdVyxUHaO-rd8L5FiCwWFYHVNKISKFJd7yIMysxoI-Fm10hRYM7nKqdtZIOEDniQbUI1BfJlGCJpd4CGWf4Yg"}' headers: User-Agent: - Acme::Client v2.0.12 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Server: - nginx Date: - Tue, 31 Jan 2023 22:48:53 GMT Content-Type: - application/json Content-Length: - '924' Connection: - keep-alive Replay-Nonce: - CrmUpRVB-XZC-ywQaKRlN5Pzttv6yOIlgl2Keckgl04 Cache-Control: - max-age=0, no-cache, no-store Access-Control-Allow-Origin: - "*" Location: - "/account/tvzD1IUNIZSHtBJpkkgKSQ" Link: - <>;rel="index" Strict-Transport-Security: - max-age=15724800; includeSubDomains body: encoding: UTF-8 string: '{"status":"valid","contact":["mailto:info@example.com"],"termsOfServiceAgreed":true,"externalAccountBinding":{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImtpZCI6IkFmQXItejlpOVd2ZEl6NWhnZHRLQkEiLCJ1cmwiOiJodHRwczovL2FjbWUuemVyb3NzbC5jb20vdjIvRFY5MC9uZXdBY2NvdW50In0","payload":"eyJlIjoiQVFBQiIsImt0eSI6IlJTQSIsIm4iOiJ1TS1aN1IwdjdYYUpRdk0tbzB6ejBBOWRtMGdBZ0dwcFZHdHBDbTMxcmFVa1JMX2dnaDMweEFJaDY2OFpBb0JiVVN1UmszelAwYUJjbEFuUkh4SUQyNE5kMF82UW5USUZoajVMcmNnQ2hsU3NrSXR2NXZVM2Zrdy00U1BQMk8tb0dHejJLalQ5RHB4TmxhYWUteS1IM0NkRzVpaTg0QTJfSHBNWU8zRGVhNnU4bm5ueERiWlFqTkxBZ1dYYlNWRG1ZWG1ZaGhTWExGLXhuZnlFSnp0T2dLOHhzaEV3aVNiWkxTMW1JNm5uWEVZMU9VTEZsT0dSTE84RVNQUzJweEU4eHhoTkVMSzV1cFZKTk85cDgxWXBIM3RWczJyX18zUmZUZ1VUNVJzYTM3MTAwRVcxUDZucjBvYTZYaDJiSlZIUzVINTRFWGtwUVA5eTJPaDhnajJRWFEifQ","signature":"bkvvcFCDTVnP8SF-p8cs646Wyd_ottlEjgxxr40f3fA"},"orders":"/account/tvzD1IUNIZSHtBJpkkgKSQ/orders"}' http_version: recorded_at: Tue, 31 Jan 2023 22:48:53 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/new_order.yml000066400000000000000000000131501463311421000214150ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - Oro0Rhbjrz15xEYyE3bWYg Date: - Thu, 10 Oct 2019 03:08:20 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiT3JvMFJoYmpyejE1eEVZeUUzYldZZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiZW1CYXd1bF9lRkFqeXZGZ2ZRU2JlQUpHTTZnbDVFZ2tDQkdHSzk3RjV1c3FSZjZXWmtJLS1KQjgyWXFBNDJDeSIsInkiOiJTb1VaMzVOTnBNVG9XdTJZMWdkVjgwUHJBZ3UxVFRnR2s4eDVTSXZ1WmNUMFl0bllDNkIyVHpmdGg4di1VX2hPIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"ZhYDAXx1fRqjgQhlSqq2vWfE0Tu8GIBx5VED5AgsTny0LFxr0VTTcfV8g7qsavCoGipRRZcrNfCL326kh5mq1XPHzXdG0iNWwtGHRrbMB4XrsaTC4E5js3RMtxF9CKxc"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/69" Replay-Nonce: - fSZVUdObtWiKkOeoBuQDPg Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/69", "key": { "kty": "EC", "crv": "P-384", "x": "emBawul_eFAjyvFgfQSbeAJGM6gl5EgkCBGGK97F5usqRf6WZkI--JB82YqA42Cy", "y": "SoUZ35NNpMToWu2Y1gdV80PrAgu1TTgGk8x5SIvuZcT0YtnYC6B2Tzfth8v-U_hO" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiZlNaVlVkT2J0V2lLa09lb0J1UURQZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC82OSJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"_Xt5PHogrITBJFl7q8DHi6Mzl3nMr-K43QNQshDVmmcdVp98BF8xQr3XM39RH_hNhze5awagBqVrA50ELUJSW6XG3LBCR5N6fyhsVbWoDnx8rCwfY0F0YqGzTZacSjlA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/6H2x8Bin-qxPnVerW-k4C-2nlYzbW3SWpBlw-o--_Kg" Replay-Nonce: - BoTL51TdVcVh6iD_cLVPNw Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:20Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/6H2x8Bin-qxPnVerW-k4C-2nlYzbW3SWpBlw-o--_Kg", "authorizations": [ "/authZ/AnWQqpbBeqh-Vm-5BAEWTRnb3lKyEtfJUxdTllcdGbo" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/nonce_fail.yml000066400000000000000000000066051463311421000215350ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - Nr5JbswLJWa8FwbDW5spdg Date: - Thu, 10 Oct 2019 03:08:15 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiTnI1SmJzd0xKV2E4RndiRFc1c3BkZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiS0dhMzVHSFBuN1owWkgycjAyUE9ZcVBzVmVoLTlEaW5GSUZVZlNKeUFMRSIsInkiOiJYa2V1MmRXTGo0SmhJakhXMThWSnFIbnBuMjZiWE52SEJYT3FTOG5oTHhNIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl19","signature":"Bpn4xFJAMVIplSaZw6b42B1WD1tieAGNeAqFA1kl9npDkPfUG1vqO86xelHQZsRxrA0T-yWYGRXz2bu3w1gYiw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 403 message: Forbidden headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/problem+json; charset=utf-8 Link: - ;rel="terms-of-service" - <>;rel="index" Replay-Nonce: - nA9fzQ2E9Chs1lpyLoX-2Q Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '150' body: encoding: UTF-8 string: |- { "type": "urn:ietf:params:acme:error:badNonce", "detail": "JWS has an invalid anti-replay nonce: 063ziGbuwwDIznTSUpOaSQ", "status": 400 } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/nonce_retry.yml000066400000000000000000000136301463311421000217630ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiaW52YWxpZF9ub25jZSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InluSkVQN2JyQi1sMlRXQUtxSkVOemM4U1NNRnJpTXhKTjRRU05qcF9zeFEtVlZzZmZkbXRFNk1aNDdEVmI5cEo3c0ZoN1p0bmNkckdhX3BheWdmci00aUg5MGRCeUpNeDhBWTJDUmxQZHFlR3ozLXNEc2ItOU5OQWkySnhPaXl5RUxtUXk2aHNXcWVhdkJfSnpsRlk4YTJMbFRzM1NOQml5amVBOVhwWnlGR0dFNzNoNkFnNFRfOHZzWWRINFpTaWVMVVhPMC1FWnNTdnA2aXhUN0VjVTVLUlJpWUhGNGVzZk9zTm1ja0Rna3VhcEh3S2hua1Q1VmlKY1k1clVZVF9kZHZ0M2NZZktGeDNxRFcteUdGUHVFcVlHZHlmaUllTWJOdURPUGdfdVNlOWN4aFJvWnRtS1lDYUJtaDFZLXRXNG5vX1M3ektvYmJNQnU2NHpwYjNLdyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"tp6zGSHndIi8tqYSy_IgI9xzs_y1wTsWdpBrtlk7vqSt8ZUX16VsTtev7hwoykOSM26Tj-M1yiTX5M_dGQET4F6HNaq3J9V8JE-rUT7go_ybf-q7JE33W1OTU7JvCayRaYSvxG9sPDthtrUFQnOqGja2EzNYRPcFpXVEHnMil71oaAxYGpBi1BSeHL4yM1b3JRW28LUHhtm4fS4E32o9GL891y6MinO7yVbwwnS_EW12kP61kV_qcOWgLF_EIaCzhrs-_3rflEXTT1b1Dta0FdIA6oyi0j_GBc5SFL1eGAnJmgsj9y7t_34Unva4ZUZwQwLepA9RIHRTOBUtwcAeYQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 400 message: Bad Request headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/problem+json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - X2B9trMSP5OkXY_arjvAGw Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '138' body: encoding: UTF-8 string: |- { "type": "urn:ietf:params:acme:error:badNonce", "detail": "JWS has an invalid anti-replay nonce: invalid_nonce", "status": 400 } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiWDJCOXRyTVNQNU9rWFlfYXJqdkFHdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InluSkVQN2JyQi1sMlRXQUtxSkVOemM4U1NNRnJpTXhKTjRRU05qcF9zeFEtVlZzZmZkbXRFNk1aNDdEVmI5cEo3c0ZoN1p0bmNkckdhX3BheWdmci00aUg5MGRCeUpNeDhBWTJDUmxQZHFlR3ozLXNEc2ItOU5OQWkySnhPaXl5RUxtUXk2aHNXcWVhdkJfSnpsRlk4YTJMbFRzM1NOQml5amVBOVhwWnlGR0dFNzNoNkFnNFRfOHZzWWRINFpTaWVMVVhPMC1FWnNTdnA2aXhUN0VjVTVLUlJpWUhGNGVzZk9zTm1ja0Rna3VhcEh3S2hua1Q1VmlKY1k1clVZVF9kZHZ0M2NZZktGeDNxRFcteUdGUHVFcVlHZHlmaUllTWJOdURPUGdfdVNlOWN4aFJvWnRtS1lDYUJtaDFZLXRXNG5vX1M3ektvYmJNQnU2NHpwYjNLdyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"feFWQErflM26yux443Mb0WAzP1_meo-SpdwGiXsQ35D8nFAZo6LcjowluK7vDwKpSJkPxb7Pgy3fEKqr4CvZ70G8HFAUbYaT2PkrTw1jIBxJCcK2O6iQ-e4ZmEAR0gz1HNb-QI9KEO3lrBbNvZtoswZXv4yA2vzvSwugXZKB8jTfNMUJjAMLs0WCBqoRgSfNeVGd9Hty0CDknK97jm4tYmxStYYpXZQ9pYSEq5uWAFCjvjdQ1yiQPdEV8YjSTN6agYVx670kgt1TVZIORhGwOOwQwWXK5-BhI6h24uFAzKHWCLBYWj54Fjod-DsrS1Z9-dTZN5IBodE9Lz4l9suOXg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/56" Replay-Nonce: - IKA3e6VXcs73cg6wwe4q0w Date: - Thu, 10 Oct 2019 03:08:15 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/56", "key": { "kty": "RSA", "n": "ynJEP7brB-l2TWAKqJENzc8SSMFriMxJN4QSNjp_sxQ-VVsffdmtE6MZ47DVb9pJ7sFh7ZtncdrGa_paygfr-4iH90dByJMx8AY2CRlPdqeGz3-sDsb-9NNAi2JxOiyyELmQy6hsWqeavB_JzlFY8a2LlTs3SNBiyjeA9XpZyFGGE73h6Ag4T_8vsYdH4ZSieLUXO0-EZsSvp6ixT7EcU5KRRiYHF4esfOsNmckDgkuapHwKhnkT5ViJcY5rUYT_ddvt3cYfKFx3qDW-yGFPuEqYGdyfiIeMbNuDOPg_uSe9cxhRoZtmKYCaBmh1Y-tW4no_S7zKobbMBu64zpb3Kw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:15 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/order_authorizations.yml000066400000000000000000000220451463311421000237120ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:14 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - mZhTCXL5rSW6dymZSqdHAA Date: - Thu, 10 Oct 2019 03:08:14 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoibVpoVENYTDVyU1c2ZHltWlNxZEhBQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6IjM0Vm1EVWZCcDNEeTdHY0xQaEdXRFNwaTU3SWFZZjFIckpsMlVJSThYTWNiQ180MUdYUkhZUU5wNTVzQ3JGSFB0X3VjMVU3ZEhfTDBmejk3dnRSd0U4dDU5X2xFUEJJUVZ4NElqM2pGX1RRdWdrUGFRcHlKN3UteTl4YjVkWTk1NmZyNjBPQ1ZfdGpsYkFfNl9TRDF5X2V0TzRnN0twa0VPSkVwc3A4ZXFZdG5MU2Z4LVFEN2VyT1dSTm9BQ3RJZExnc0JTdDUwNGJ1ZF82RzhhRElQMV8xbENZcmpmYkNjVXVPd2t5UVlSWkRvTHEtOUNMQ3NuUHo1TmtIQmVzaGhPZENTQmw5NTkwMmZrazVLVDdlQ3NRNDY1Z3ZiV3d1Zno5ZEdqV3p0dXNHN0pjeGhPU0NsMHJDNkhTOUQ2QXlQbEY5NVpIcVJoY2RvZWZRNTJ3THV4USJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"31Aoa8SK76XalC1zGq1dRBxFcmTbYRVtShsN1r_dzc4oy3CgEQV0loX91CuZNnpDMob0bd9R5BZ8hOkvciY0rELF1m07-yDQ-hmHMapMMiQ3HBZY0YVztV0kCJbveFWl_C0cyEqxQ9uiQeNbq_BeVRocjbz9unn1VJP-1T6Nt6_tJRAsE3JfxDfSMJLxG6DJxHyauBesNrY-vYWBR7rNdw59FzvenSI8E4te2nV6PAZL6e-x02WXdFyo05qlS9Ut-CX8r2MSc2jEBD0xakQCPI-DX4VDpvWFBRCd_8OwpODonY28NBuuAUS07Hna8l5uOH6DcRy5HPjflme2hjPaZw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/54" Replay-Nonce: - q0Q_Ge_VjL7ECEF33zhivA Date: - Thu, 10 Oct 2019 03:08:14 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/54", "key": { "kty": "RSA", "n": "34VmDUfBp3Dy7GcLPhGWDSpi57IaYf1HrJl2UII8XMcbC_41GXRHYQNp55sCrFHPt_uc1U7dH_L0fz97vtRwE8t59_lEPBIQVx4Ij3jF_TQugkPaQpyJ7u-y9xb5dY956fr60OCV_tjlbA_6_SD1y_etO4g7KpkEOJEpsp8eqYtnLSfx-QD7erOWRNoACtIdLgsBSt504bud_6G8aDIP1_1lCYrjfbCcUuOwkyQYRZDoLq-9CLCsnPz5NkHBeshhOdCSBl95902fkk5KT7eCsQ465gvbWwufz9dGjWztusG7JcxhOSCl0rC6HS9D6AyPlF95ZHqRhcdoefQ52wLuxQ", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoicTBRX0dlX1ZqTDdFQ0VGMzN6aGl2QSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC81NCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"I4VidBAochvPBnMZQOyu2d5_Yr48ZW15Le5fOKTDe_rVD08VODd9WYTyx2aR2nZ1ccOprYG8LHJGHnAlrIb5eCsKuwkaLlPXaSUmuKb2rtohqEXGg9e-jmJrTQtKLXIHwk25fTx9vYy0rh2f24X42UeB4rhEFF0niOqaXTq-SNvNPYfmtt98hBSfMhTNTH9Pq77lWvInciNIZXrSAFNjcGo6emHsNcMCslfr0URb1Vwojm5C5LpgYEjdhravjvj1FBgRaWBTI36_WWaJWyRizL-Mt4_VTw3XhdtrN4LKuXDy2pOBLS67yPQkzxSn3S0KFQLhESOByxKlb9JtSDJihQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/qqhqH4Oxd9lgv8Lir9fwngfcl_5K9aUz2wXv9a6IJm4" Replay-Nonce: - GohgOlvKXnpPUjwt1xwYEg Date: - Thu, 10 Oct 2019 03:08:14 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:14Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/qqhqH4Oxd9lgv8Lir9fwngfcl_5K9aUz2wXv9a6IJm4", "authorizations": [ "/authZ/FEYgHj9-jWaETKuBx2yOmPuuVOewz3ihBl4jgqt9Zpw" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT - request: method: post uri: "/authZ/FEYgHj9-jWaETKuBx2yOmPuuVOewz3ihBl4jgqt9Zpw" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiR29oZ09sdktYbnBQVWp3dDF4d1lFZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9GRVlnSGo5LWpXYUVUS3VCeDJ5T21QdXVWT2V3ejNpaEJsNGpncXQ5WnB3Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTQifQ","payload":"","signature":"kJ-xRuaw3pkwBeYscuebNyHXhXfeOhQYw_ckEIpz99CTRFMhainIgOGfbcu7p-WeLZTfzjER_tVIk6oiUvOiI9gze5K8odJ9FpP01mViELOyhoZthM-jkCdpM9pccEEc7XSKv1obao5ixp2-7gDMoVJKyBeGO30acrnCwI3yl2jYrteWgywRNO3xWRQfSiGyj_z5Cqu47K5zBaH_gUDIZgTh93Uj0C8MSYOmYR_dxTmvGuB4HsTmsD_C5kOUD27QaeojPiTqMcpamlLp8PTB-yFXrFCobAU0c2LDp-GrNOIc22en7cUYcxPWHgLSR2tlOaRQC-k7wezG5xpt5PRR3Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - ljVZHoAS1Qj2t72VClVLLQ Date: - Thu, 10 Oct 2019 03:08:14 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "http-01", "url": "/chalZ/S4LV-WpJAr_5mmLBn4rtQdoFzKp4SgLINsq0M1T2m7U", "token": "mvKMLyiZmfwIZqt3oWyD4u-LnObSrnhqzOi0sa4KTbY", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/QbGcd4s2SprlUoEIt_Xw2PHtw78aELvpcdtgAlKwPEk", "token": "9Vg_L4DQ9qEFkcyLRXXwopoFDLkO10iDZI0JhK2HGJU", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/gl1_jbOYJVOxnY2z3CMXLknc7r8QtntQLJLyToIQQnw", "token": "ZYyzndctKmISfYGlMTgE7GOdK6mi5Zh9NJM0jc4N8SA", "status": "pending" } ], "expires": "2019-10-10T04:08:14Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:14 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/order_certificate_download_fail.yml000066400000000000000000000147431463311421000260010ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:11 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:11 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - IY6aQ3HI_w0wWQfW_25iog Date: - Thu, 10 Oct 2019 03:08:11 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:11 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiSVk2YVEzSElfdzB3V1FmV18yNWlvZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InpoT0F1eUZJdDNkWFVETi1tU1BQQWhxcjdmLU1JMnpORmtDRzgzSDhsaU13MFhOelVQaW9HOVlySm1HRF9GYy1CcHd4M25yRjlmOWZWaWlRUnp6SlZGNEYybVd4TEx2RGU2UlVNRmVqVktzcXU4M2lpUk55TmZhXzBvcTUybHFtQjZIU0g0bEtQLWRIc0doOEtIOTFKMFdLYUtGeTNWQi1DSTlFZmtrZl9sNS11eFRrdGQ4Rjhjby1LRXpnLUp4YUJfQlZSa0FMQU5TNTVPRzN5b3hzLThfdEFaeDBuYXlYSXJpZ1IzSUNzVTFKWG5IVnRvT3lWZHpLNlluaTkyQzY5b1VvdTdtcUtoWlJtMk1OaXhPb1ZWZ01IbWFIYUNuWUQ4ejBlVGJuTHRIak5IaVNsSlk3YzlMNXI5QUJHZi1GemlRa2hPVWVTUDF6M0l3UmNQN3A2USJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"oFydbJkpA4pTvrCflffk6djUj-_p0D64-HlPX6UtdzfF4kiIOPlzm-s-4RQlEdqq7xb9D3WhdYxmePcVrvu8ktQ-laRE67f6egLQ_vZNdFsYXyOMYpwu-vdo0f7BIHCBYIEFPoE47myhva-kIarQEFwKXrM0sNQkulF99UNhKbbwDWd-ec5rpArm6KajbthZcG80DTuqgP-x1TmANlT4ukWLEReuvbHYQpRcyxXGWPb66xg_9MoHwPRdkKwDAam4n4qMZLOVe9c-DmmubBpNeTsqBfWZfa4rZTiTG3cfW3zVOchney9Q_1nOQ7t8QodpizQIs4aSWsABpjzh5nvwcg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/49" Replay-Nonce: - olgUCT19BcyB-N9AhU06Pg Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/49", "key": { "kty": "RSA", "n": "zhOAuyFIt3dXUDN-mSPPAhqr7f-MI2zNFkCG83H8liMw0XNzUPioG9YrJmGD_Fc-Bpwx3nrF9f9fViiQRzzJVF4F2mWxLLvDe6RUMFejVKsqu83iiRNyNfa_0oq52lqmB6HSH4lKP-dHsGh8KH91J0WKaKFy3VB-CI9Efkkf_l5-uxTktd8F8co-KEzg-JxaB_BVRkALANS55OG3yoxs-8_tAZx0nayXIrigR3ICsU1JXnHVtoOyVdzK6Yni92C69oUou7mqKhZRm2MNixOoVVgMHmaHaCnYD8z0eTbnLtHjNHiSlJY7c9L5r9ABGf-FziQkhOUeSP1z3IwRcP7p6Q", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoib2xnVUNUMTlCY3lCLU45QWhVMDZQZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC80OSJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"qeUAzjDdaQ6xi6s-0AziJX3ofrpcS73wpX0skKzASiKgA8X5ghEyUgdauDW5rJY-7ApAZg11TyGud_eInlGzuhJwt4zCFSnJn10-14crfZ3DB27JpSCvT2HgEaWAuUnZypbNpybHh4cR7LsPS7H-RynaSCmxtaGFOsbzs43pu1_Y2hGY0Oc6j66qMtgD2jgcO-N34UU2iqVvfRJAsbrSIf4dB7CJDo1rLZYGgRv1NelSOUkpeZ18oeMNyoWdAwR_XRIKjmlhr8weOlzVorhpOLOBqCEXeCq-qstzWRrgfoA3WWZEs9Bny0YKbzMpbRFkRNm2k3pmE_dCONbpjwGHzQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/XojARKX5NhF7DEEikmTCSu_9DUOUwQslNkSBZ6ziOic" Replay-Nonce: - fAmGEaMoBNwP3lyXEUAWeg Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:12Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/XojARKX5NhF7DEEikmTCSu_9DUOUwQslNkSBZ6ziOic", "authorizations": [ "/authZ/KZs2V-vGigo8huJ_tGXFn0GFzgKMi-T_diKGttOXx5c" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/order_certificate_download_preferred_chain.yml000066400000000000000000000541221463311421000302010ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Sat, 12 Sep 2020 17:42:58 GMT Content-Length: - '396' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "externalAccountRequired": false, "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Sat, 12 Sep 2020 17:42:58 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - KRW0UyiHYgPswl3QjrsF9Q Date: - Sat, 12 Sep 2020 17:42:58 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Sat, 12 Sep 2020 17:42:58 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiS1JXMFV5aUhZZ1Bzd2wzUWpyc0Y5USIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiS0pSc3BkWWk5RGxiZC1RNlI0ekNTOVNSVmNhSHY5a1Q5Y0hsbm5EMnZVdyIsInkiOiJOS2JFSkF4LTR0THFDdzdnZHZna3Z1c2p5WlhsNkVQWGQyQnhpam5pc3FVIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"pXr-n-I4yrgY9zckBDZiBvPMJwvJi54ABWN70RFyisYpiCUQPULlG6eSyHUIUpOJukXJdCjxBr-eBd5pmqGuXA"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/6" Replay-Nonce: - Xzee7r92KRN4mBBAai0Smg Date: - Sat, 12 Sep 2020 17:42:58 GMT Content-Length: - '304' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/6", "key": { "kty": "EC", "crv": "P-256", "x": "KJRspdYi9Dlbd-Q6R4zCS9SRVcaHv9kT9cHlnnD2vUw", "y": "NKbEJAx-4tLqCw7gdvgkvusjyZXl6EPXd2BxijnisqU" } } http_version: recorded_at: Sat, 12 Sep 2020 17:42:58 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiWHplZTdyOTJLUk40bUJCQWFpMFNtZyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzAuMC4wLjA6MTQwMDAvbXktYWNjb3VudC82In0","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"9bMHCdzVKSXY9PYdqXhYcn-AsiJTrsD5IJdJ9e_gKbVlRDrQ0lmYplOtYwyQ_1pBJQ2MrXo1gsytJ7MGp71gTQ"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/G0gA0QBqAXVxYCXkEl5DWsfoxMiU_Gfro2ynIUMT4NM" Replay-Nonce: - "-hu2koDUfxXlEpuLYzoyXQ" Date: - Sat, 12 Sep 2020 17:42:58 GMT Content-Length: - '370' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2020-09-13T17:42:58Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/G0gA0QBqAXVxYCXkEl5DWsfoxMiU_Gfro2ynIUMT4NM", "authorizations": [ "/authZ/ZSeU-0s3dvj1yPcRP7fuMLGXrdAW6LOLDn1vlXd-F8g" ] } http_version: recorded_at: Sat, 12 Sep 2020 17:42:58 GMT - request: method: post uri: "/authZ/ZSeU-0s3dvj1yPcRP7fuMLGXrdAW6LOLDn1vlXd-F8g" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiLWh1MmtvRFVmeFhsRXB1TFl6b3lYUSIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9hdXRoWi9aU2VVLTBzM2R2ajF5UGNSUDdmdU1MR1hyZEFXNkxPTERuMXZsWGQtRjhnIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvNiJ9","payload":"","signature":"iJmBSqqxqQsVfuFCZSyuLriFliKZbHpNJ0O8ApAImfKHx8ePEwIu9gbxYQaJDvHOfGJXWhpm6mlQGFV00oFWTw"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - _C_smvfMxgmtClYJo-WZ7Q Date: - Sat, 12 Sep 2020 17:42:58 GMT Content-Length: - '856' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "tls-alpn-01", "url": "/chalZ/BGxDWWmrd-pqjq5sFJqkMWrwrLYcnKkO_H2MK1bEOWo", "token": "Ah6g3LFOuRsXOnmqWvUA25Qefs3fQQOGiGJgVVnw4F0", "status": "pending" }, { "type": "http-01", "url": "/chalZ/UjpMC-g6QhU2R5J7Pp7Zc5eNxMZl_LM4YaReBKalYBE", "token": "6bENpIdLyo4ilUo554q0ZbGuqwQ3YcUZoAZxAf70e-c", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/vI3_joXk9GmuQXajwiicRa8NhxM66RdvxlTET3Nezbo", "token": "XgiqVUfq1SmP13-Ja2aPwXJGL0E4F6T4hRw7iT4uls8", "status": "pending" } ], "expires": "2020-09-12T18:42:58Z" } http_version: recorded_at: Sat, 12 Sep 2020 17:42:58 GMT - request: method: post uri: "/chalZ/UjpMC-g6QhU2R5J7Pp7Zc5eNxMZl_LM4YaReBKalYBE" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiX0Nfc212Zk14Z210Q2xZSm8tV1o3USIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9jaGFsWi9VanBNQy1nNlFoVTJSNUo3UHA3WmM1ZU54TVpsX0xNNFlhUmVCS2FsWUJFIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvNiJ9","payload":"e30","signature":"HcqMmGDobsHtS6t4Qq80bMJXyz5HUefLomyjwL3JGLVmToUSEljREiDKIrhvIU8tl-RqtlG2j-WVjtON6dxSIQ"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/ZSeU-0s3dvj1yPcRP7fuMLGXrdAW6LOLDn1vlXd-F8g>;rel="up" - <>;rel="index" Replay-Nonce: - 0lfJaNwx4PYgtGnVTNSurw Date: - Sat, 12 Sep 2020 17:42:58 GMT Content-Length: - '192' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/UjpMC-g6QhU2R5J7Pp7Zc5eNxMZl_LM4YaReBKalYBE", "token": "6bENpIdLyo4ilUo554q0ZbGuqwQ3YcUZoAZxAf70e-c", "status": "pending" } http_version: recorded_at: Sat, 12 Sep 2020 17:42:58 GMT - request: method: post uri: "/finalize-order/G0gA0QBqAXVxYCXkEl5DWsfoxMiU_Gfro2ynIUMT4NM" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiMGxmSmFOd3g0UFlndEduVlROU3VydyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9maW5hbGl6ZS1vcmRlci9HMGdBMFFCcUFYVnhZQ1hrRWw1RFdzZm94TWlVX0dmcm8yeW5JVU1UNE5NIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvNiJ9","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDeGtFTG9iUFdMZzNSalRUTlNZbGxHU1c4X1hqbVA2eFZPS0JJTVFwNHVOVGpiS1FzQVVpMHJOM3R0dUYyT3NDbDl0d1VmRWYwbG5ZaVlhdkYxazJIMGlpb3hLRE92cWdGZnBicEVnTjZuYXNDV3FENWs3cVZRWTZtMTF2eHFWWVlqVFRhelVXMVhZSW5aaUFLaGYxQjZ1MUF2RGE5X0pDSkVjQ193VDRrVmpnZTBBeDZ3MWJ2eV9wUmFpcHA4R2t1N0ZTU1Z5dXFXZXJDRWlCb0ZXSm1aN1pLYUw3ZC1nUUo2d200bmJkZkdoWXhWZDFTa2F2ekt2WVJOZ3E0SDR4dGEzNm9ZNWdOY2F1ajZkZkZjU1U0bkhPT2otUkVRWkVEdTJSR0lXOWlUNjlFb3FNQTVHM0RqOE9JamlDLWxmVUpPNURiZmxKTUhxRFlhNWJUdC1qaFhBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCNmZubVFqMjlZaF9IVm5UTnN5S1pCOW9SWWhwcnFzaFFaQkY2OVB1SWtQN1VVYmEzVlhPb3YtOWxfSTNqeGJ3cGh1WlFpSnVpSjZuclVEYXIwb2VOaWJtUDRGS2t3T1hEWGZWTkFYWEF0N3NvUFgzZHRqSEZvR0JHVHg3U21oWWRmWHg0T1hiYU5GSDVGeUNEMC1aVFY3dGEwZmo5cjFMRUlpMEdBS18zb0R2alVlYk1CcEVDQ3pMaHotSUlVS3hnT2dZWlE0RURCSVFiUVVoZzVfLWNsN08zNEthOW83Q1hvc2Jrc3N1QmxWYmpRRVkzaEpGQllGcEVVX0hSazB2NHlGY3FVRVZsT2doTTQ3S3dSdVYySnY2ZHItQVF2VVJHMUxuYk51bHdXNk00SWFFNE9HbHB5N2tMOVAzUG10ODcyT1RtdGVXVmhwTEc2aFg0TEx3Z0YifQ","signature":"26EAgXh5RVtb4G-JpRh5m6tE99JNRqJg7dnw2u9qcU3X00aCo_6uLaYkH6c8c2LP2vtNZ9W-3M13jzK8AmzjzQ"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/G0gA0QBqAXVxYCXkEl5DWsfoxMiU_Gfro2ynIUMT4NM" Replay-Nonce: - 4DYyeBRbxk2kBPrcNZJKJw Date: - Sat, 12 Sep 2020 17:42:59 GMT Content-Length: - '373' body: encoding: UTF-8 string: |- { "status": "processing", "expires": "2020-09-13T17:42:58Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/G0gA0QBqAXVxYCXkEl5DWsfoxMiU_Gfro2ynIUMT4NM", "authorizations": [ "/authZ/ZSeU-0s3dvj1yPcRP7fuMLGXrdAW6LOLDn1vlXd-F8g" ] } http_version: recorded_at: Sat, 12 Sep 2020 17:42:59 GMT - request: method: post uri: "/my-order/G0gA0QBqAXVxYCXkEl5DWsfoxMiU_Gfro2ynIUMT4NM" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiNERZeWVCUmJ4azJrQlByY05aSktKdyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9teS1vcmRlci9HMGdBMFFCcUFYVnhZQ1hrRWw1RFdzZm94TWlVX0dmcm8yeW5JVU1UNE5NIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvNiJ9","payload":"","signature":"qUmNckOq-kxTw0smfxE1EzXIWngMkY2972bBVztMHjTI4_HnnZIo8yZWZgAfeVqAzwYVQ6WqGMqRgfzSQQy_eQ"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - ByQHhZTYcCzhscHd3PMMkw Date: - Sat, 12 Sep 2020 17:42:59 GMT Content-Length: - '434' body: encoding: UTF-8 string: |- { "status": "valid", "expires": "2020-09-13T17:42:58Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/G0gA0QBqAXVxYCXkEl5DWsfoxMiU_Gfro2ynIUMT4NM", "authorizations": [ "/authZ/ZSeU-0s3dvj1yPcRP7fuMLGXrdAW6LOLDn1vlXd-F8g" ], "certificate": "/certZ/1429431d2a4fefd3" } http_version: recorded_at: Sat, 12 Sep 2020 17:42:59 GMT - request: method: post uri: "/certZ/1429431d2a4fefd3" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiQnlRSGhaVFljQ3poc2NIZDNQTU1rdyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9jZXJ0Wi8xNDI5NDMxZDJhNGZlZmQzIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvNiJ9","payload":"","signature":"o-1Vcb4Jl6AdTpNjiBM6PNqVbz-FFOi5-2skvpJ-uzlsYNYQaJXiRnC-TNHStkWQ6g3AIKV2m9R0VYLrrhufDg"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Accept: - application/pem-certificate-chain Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/pem-certificate-chain; charset=utf-8 Link: - </certZ/1429431d2a4fefd3/alternate/1>;rel="alternate" - <>;rel="index" Replay-Nonce: - 7WYRvRPzJmNztiZPQFedyg Date: - Sat, 12 Sep 2020 17:42:59 GMT Transfer-Encoding: - chunked body: encoding: UTF-8 string: | -----BEGIN CERTIFICATE----- MIIDWTCCAkGgAwIBAgIIFClDHSpP79MwDQYJKoZIhvcNAQELBQAwKDEmMCQGA1UE AxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA3YzEzZWQwHhcNMjAwOTEyMTc0MjU5 WhcNMjUwOTEyMTc0MjU5WjAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBALGQQuhs9YuDdGNNM1JiWUZJbz9eOY/r FU4oEgxCni41ONspCwBSLSs3e224XY6wKX23BR8R/SWdiJhq8XWTYfSKKjEoM6+q AV+lukSA3qdqwJaoPmTupVBjqbXW/GpVhiNNNrNRbVdgidmIAqF/UHq7UC8Nr38k IkRwL/BPiRWOB7QDHrDVu/L+lFqKmnwaS7sVJJXK6pZ6sISIGgVYmZntkpovt36B AnrCbidt18aFjFV3VKRq/Mq9hE2CrgfjG1rfqhjmA1xq6Pp18VxJTicc46P5ERBk QO7ZEYhb2JPr0SiowDkbcOPw4iOIL6V9Qk7kNt+UkweoNhrltO36OFcCAwEAAaOB mDCBlTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUF BwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFGDX1vS08T9ANMeTFQqLEZpCwlWM MB8GA1UdIwQYMBaAFGnRgEZnF6ZdOw0D2IttAHN/g/+4MBYGA1UdEQQPMA2CC2V4 YW1wbGUuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQA+G4V0jwP0NbSGyDM7n64IxYZ1 ImfukafTdvjhim+sA6pnHt6IkWDDr45uP2lvPP3eg61UZgYiuqzWV/CDeZRMK6Pa 8Sryg2nbpD2ojqNN9k4Y47I0nHtrsIL5noS39c7vcX596HMGW5Qqp5X6Gx5wzY+Z rwkin3jkgBpoT7eCagGy1m0dffJsN/8Mk9ZLR4o1rlJvzqXCQf6IZo00GqmHQhWh e1BpdDUz/42TVNgS3voyuTagAB7pj2fEThP0e86CUJ1bP7p0VwvwwSeXmJOcEt1q bfiWti053Nv7Lz7tmYkxqkT4Ucn1UwEGIkeiDDhnZvTn2XUcjFgpSPZ2TJWk -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDUDCCAjigAwIBAgIIeEmZ+cfJIIswDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UE AxMVUGViYmxlIFJvb3QgQ0EgNjBjZWM0MCAXDTIwMDkxMjE3MjQ0M1oYDzIwNTAw OTEyMTcyNDQzWjAoMSYwJAYDVQQDEx1QZWJibGUgSW50ZXJtZWRpYXRlIENBIDdj MTNlZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOD3cZac4SO+SVA7 YT37naFSRImuyZVpwrHwmPof0h9AYJM1yctchYZ/ncQ7r3/rhmWi3oDh7zrP4dS5 Sdp8KB+WcF2QdP7XkK8nuq1wjTZCOhqPv+0ccX0AwoUZOfzmODPBasqdlW82QlPJ ITc4aFzSE8wcE222BKq8FRojza1uZWf1FyoPyBHNkubSfLRPENa5LSsQ/NJZR3mU jPZUBaTlegsWVShPfi9m2RQQVyE/+dtjfvWVyxvdeOpy5vSwFqU6o0z+uq0hy7B0 4sU9Trwl4e+JmCDMFBs1obfaSLi3DvZEJiRPajQIVK1lfB5IumUtz7OBx0fapF/d EpxuBOsCAwEAAaOBgzCBgDAOBgNVHQ8BAf8EBAMCAoQwHQYDVR0lBBYwFAYIKwYB BQUHAwEGCCsGAQUFBwMCMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGnRgEZn F6ZdOw0D2IttAHN/g/+4MB8GA1UdIwQYMBaAFGqsx6g+EhRnknk3uKHNnXyG8PzV MA0GCSqGSIb3DQEBCwUAA4IBAQBKNHm2WbIhd93fZqC64H34LvTdXwftFmPtQeIB 9j0jByJAowJoOPHzQuVjKpgAxWRwmD8ETq0Ahk9LduBzD9J+gXopxM6vdvV0l2up IFVG2s3oOwOtiziE5X/+bEl3K5n0nWQS9lHQ91+L9NEXFH1QhqbQDifZTIXhjFS9 4LQ6GRNoBK/XiqcE8zp3FkSriiVwACKWSH6O+dhq0uz+Mr+ce6pgPaVRBycDhNNA Ucx2SZSXqeVkp0AF5I7J1/DGOeRYIzc0a9z6+OT32xrtFsnC/0TuxDT0RdSdKPsQ nFAMSqkGIzVVUX34YfMQ7HKyxLs9mTbwl+8Y+06bk7AKQJGi -----END CERTIFICATE----- http_version: recorded_at: Sat, 12 Sep 2020 17:42:59 GMT - request: method: post uri: "/certZ/1429431d2a4fefd3/alternate/1" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiN1dZUnZSUHpKbU56dGlaUFFGZWR5ZyIsInVybCI6Imh0dHBzOi8vMC4wLjAuMDoxNDAwMC9jZXJ0Wi8xNDI5NDMxZDJhNGZlZmQzL2FsdGVybmF0ZS8xIiwia2lkIjoiaHR0cHM6Ly8wLjAuMC4wOjE0MDAwL215LWFjY291bnQvNiJ9","payload":"","signature":"pLq2MYqa24947OI8T9EQ_tmxrFE3Pf2_Xmc_qTt0x1B31nszyM7XucP1pOUIYrq1Uvz40N7xE5xOTKGkbfNfOw"}' headers: User-Agent: - Acme::Client v2.0.6 (https://github.com/unixcharles/acme-client) Accept: - application/pem-certificate-chain Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/pem-certificate-chain; charset=utf-8 Link: - </certZ/1429431d2a4fefd3>;rel="alternate" - <>;rel="index" Replay-Nonce: - rA5qxa-R_xE2QmI-zNdt5g Date: - Sat, 12 Sep 2020 17:42:59 GMT Transfer-Encoding: - chunked body: encoding: UTF-8 string: | -----BEGIN CERTIFICATE----- MIIDWTCCAkGgAwIBAgIIFClDHSpP79MwDQYJKoZIhvcNAQELBQAwKDEmMCQGA1UE AxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA3YzEzZWQwHhcNMjAwOTEyMTc0MjU5 WhcNMjUwOTEyMTc0MjU5WjAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBALGQQuhs9YuDdGNNM1JiWUZJbz9eOY/r FU4oEgxCni41ONspCwBSLSs3e224XY6wKX23BR8R/SWdiJhq8XWTYfSKKjEoM6+q AV+lukSA3qdqwJaoPmTupVBjqbXW/GpVhiNNNrNRbVdgidmIAqF/UHq7UC8Nr38k IkRwL/BPiRWOB7QDHrDVu/L+lFqKmnwaS7sVJJXK6pZ6sISIGgVYmZntkpovt36B AnrCbidt18aFjFV3VKRq/Mq9hE2CrgfjG1rfqhjmA1xq6Pp18VxJTicc46P5ERBk QO7ZEYhb2JPr0SiowDkbcOPw4iOIL6V9Qk7kNt+UkweoNhrltO36OFcCAwEAAaOB mDCBlTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUF BwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFGDX1vS08T9ANMeTFQqLEZpCwlWM MB8GA1UdIwQYMBaAFGnRgEZnF6ZdOw0D2IttAHN/g/+4MBYGA1UdEQQPMA2CC2V4 YW1wbGUuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQA+G4V0jwP0NbSGyDM7n64IxYZ1 ImfukafTdvjhim+sA6pnHt6IkWDDr45uP2lvPP3eg61UZgYiuqzWV/CDeZRMK6Pa 8Sryg2nbpD2ojqNN9k4Y47I0nHtrsIL5noS39c7vcX596HMGW5Qqp5X6Gx5wzY+Z rwkin3jkgBpoT7eCagGy1m0dffJsN/8Mk9ZLR4o1rlJvzqXCQf6IZo00GqmHQhWh e1BpdDUz/42TVNgS3voyuTagAB7pj2fEThP0e86CUJ1bP7p0VwvwwSeXmJOcEt1q bfiWti053Nv7Lz7tmYkxqkT4Ucn1UwEGIkeiDDhnZvTn2XUcjFgpSPZ2TJWk -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDUDCCAjigAwIBAgIIHFH1QZ3HDNwwDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UE AxMVUGViYmxlIFJvb3QgQ0EgNzY5MjIwMCAXDTIwMDkxMjE3MjQ0M1oYDzIwNTAw OTEyMTcyNDQzWjAoMSYwJAYDVQQDEx1QZWJibGUgSW50ZXJtZWRpYXRlIENBIDdj MTNlZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOD3cZac4SO+SVA7 YT37naFSRImuyZVpwrHwmPof0h9AYJM1yctchYZ/ncQ7r3/rhmWi3oDh7zrP4dS5 Sdp8KB+WcF2QdP7XkK8nuq1wjTZCOhqPv+0ccX0AwoUZOfzmODPBasqdlW82QlPJ ITc4aFzSE8wcE222BKq8FRojza1uZWf1FyoPyBHNkubSfLRPENa5LSsQ/NJZR3mU jPZUBaTlegsWVShPfi9m2RQQVyE/+dtjfvWVyxvdeOpy5vSwFqU6o0z+uq0hy7B0 4sU9Trwl4e+JmCDMFBs1obfaSLi3DvZEJiRPajQIVK1lfB5IumUtz7OBx0fapF/d EpxuBOsCAwEAAaOBgzCBgDAOBgNVHQ8BAf8EBAMCAoQwHQYDVR0lBBYwFAYIKwYB BQUHAwEGCCsGAQUFBwMCMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGnRgEZn F6ZdOw0D2IttAHN/g/+4MB8GA1UdIwQYMBaAFBH2SDFcPxGK4EhVjcjBEQGX9Jav MA0GCSqGSIb3DQEBCwUAA4IBAQCESm3u8dK/WvHSYGcb8arN4AMnEArVukP8oPuX xWRSgeVq5nurtAIP6skDjU/anGVph1CP7lEQ/nkCDRZnxp4ad15a1vt5IsMzztTu dTfXxdICHp5roB8hgTx3R5hTseBgrAtW4aeaPizDas41TT+cZNWOBrmWEir6xhoY iztRmEXf7+WhjSFtkYah73uLfEhOaWKyMaWcx/I216XUUBOKfeB4r6D09e8J8FYG yzluRWeJSQBInns0CfkGxIbJi+H3OyGMPtGcHXVLdweZarE1fhsXIGAFjrNytD5r /FNrsit8gt5COknW3JtahIF7j/l3YWpmSx+9D1bDF1EHIvsm -----END CERTIFICATE----- http_version: recorded_at: Sat, 12 Sep 2020 17:42:59 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/order_certificate_download_sucess.yml000066400000000000000000000505521463311421000263710ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - NK_zVXPWY-82c9aq5M2Mfg Date: - Thu, 10 Oct 2019 03:08:10 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiTktfelZYUFdZLTgyYzlhcTVNMk1mZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6IjBvNW95d2xrcU1OUnJkM19oWkhMZWhOd2pMT2Rpb2dQVEFhXzFNRUJ0RTM1LTMxOHpDWW04Q1J3dnBNVzFNcDFIT2tTd3VFSXpTU2V5ekxMUHpBQ1ZlTW5rcno5R3NlV2RscThzMTVnTjRmMVNacnYyMXRxZmFySVpwN3RGUlhMaEQyVExUX3d5bk5uc2dodFBHbTJ4QmF4YXhJWVNoRGlMYWZSSGNyVG9GRUVkdjFiNFlGQzlKaEgyekNmYmFmUU8zTV8wMlpEMjFkN05mVjRnZU52dURWSnhQU2p2VUVERWRnZ0FJMktPVUlxUzRGR1JfZ2xYLUtaQW5OSV9FWmVFMGU3NElmdGxMOU9hUXQxNGNfU3RZZkVUS25id1ZpUHJ4YTc0ZlJDNFNCdEZBSTFZc3FETEpOT1BTV092YnRTMG9FSXc0STVFNkVKeVpORnp1bXphdyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"Kn3nwuJpBxb3CDgSNuzgH15PhSzMyQXp92Un810pZy_tDD_-U29bGZnmyPfWIBKOhw75q1AGzq1BTS0gcIT0fOPXyEI1McnCD1G4QC1abLtYC0VvsAn1sYYm0GycO1GqZVmjb1X-ERpWsvZowD4uScu4hJFRJNEqmE0aGNzxN1WA-CYTMwUhETLnhRGcqv7lm-S2lQQmFyWzhikvfhMHn0X16DfIGecRreB6w2ZLSvtqKLWV6nLrn-lvT4QlD7auXwtprH58f7BUwVtYAXIeTgvLOK7Mj2Kn6LzRCsVmCdP4ybvnEyaUFSKmoLBgJaHhXPsP6T4gxrWCJOhzBgOJDQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/48" Replay-Nonce: - fADieaXWdZsHD94HKoAIrg Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/48", "key": { "kty": "RSA", "n": "0o5oywlkqMNRrd3_hZHLehNwjLOdiogPTAa_1MEBtE35-318zCYm8CRwvpMW1Mp1HOkSwuEIzSSeyzLLPzACVeMnkrz9GseWdlq8s15gN4f1SZrv21tqfarIZp7tFRXLhD2TLT_wynNnsghtPGm2xBaxaxIYShDiLafRHcrToFEEdv1b4YFC9JhH2zCfbafQO3M_02ZD21d7NfV4geNvuDVJxPSjvUEDEdggAI2KOUIqS4FGR_glX-KZAnNI_EZeE0e74IftlL9OaQt14c_StYfETKnbwViPrxa74fRC4SBtFAI1YsqDLJNOPSWOvbtS0oEIw4I5E6EJyZNFzumzaw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiZkFEaWVhWFdkWnNIRDk0SEtvQUlyZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC80OCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"pznNn1T-buKIIaEuoJUmJOc1w3SfONCA3sb5N77-k2iz2_aL8JT-KmxF4Pt-2hW_ct5ZBqS9K1oM7a1X4kXsMq7EvJ7sTEw_vJaKQlou6MxCndkRZbdiCR7A83QOf1w7cs6619glLVr0LHfC4QkjtNUyuJddR7BxbhbMID9jjvoTsB6BZNWVrGUGVAQAnkBtHsHxd6jHdCb0OW9Pkg_9nQdvFXMB63Sdzv_LtwW1JudgxxhIDR3lNMykkiwMGDrsajm_5PdC3L4Gqc0lCSBYSeScqWQJXmfyZ7UAhBRoNw2JyLCfSjKVjxY8ovBzzRmfJ2KVmo-ROG8Nt8NOp0ilNw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/QGSOVFW8rFp3qcIXzAmnM3hgIRoFEGJplbHJuQSeFU4" Replay-Nonce: - 0hEH7lx7NvNfiMkF07aHpQ Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:10Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/QGSOVFW8rFp3qcIXzAmnM3hgIRoFEGJplbHJuQSeFU4", "authorizations": [ "/authZ/XWK5M15onI-oajDO7l4U4y8kTfCnfCyLfqjqQ2IT6ds" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/authZ/XWK5M15onI-oajDO7l4U4y8kTfCnfCyLfqjqQ2IT6ds" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMGhFSDdseDdOdk5maU1rRjA3YUhwUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9YV0s1TTE1b25JLW9hakRPN2w0VTR5OGtUZkNuZkN5TGZxanFRMklUNmRzIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDgifQ","payload":"","signature":"lF9ASHls_lBS2e2SxqEFT5yjkOx59nCo4pSDYfrNsgOgyX1V-CvnbVPYTBTaPDrZUh7xSziv9BjiZES_C7GBh4TdHbbs-G8IB0thl6v93bEntSG0CFx3gSj0QbAZxVscYQpV41EUlin2FNT0K7VFetSdrwYAlFGLgPVH8P9z5z4WGy4M0gm8zRWwQXkRmfNZOWDpO2RMZ_gPRL-yM3v_ufeALr4HczwjuacW9F56EAbROpjuRTfqsxkA--u7mKGh0Mowa0jJN4IBYvr5c11iENttP_MUvlLCylWHvZCiNkvao9edAnPX_zU75z5i0zdt88K5PKgAQy7CoIXArb046g"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - rID4TtTPxUNaqtNpsTS1cw Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "tls-alpn-01", "url": "/chalZ/p1g3yOWyQOtj7HINAgLhEl-WVnHKRIJ0FKsWwdqsyT4", "token": "KvLfL116MtA2Jf5zVwhqqLOC9EktWQR9-dC6yizGVcA", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/8yIOURvWw5u8MZpL02OO8MMBsFZDpGYgym7MtYRGunQ", "token": "6wduqbAs_oof9YQ3iUXE3pjSx2nmfel68lnvbVz9ZXU", "status": "pending" }, { "type": "http-01", "url": "/chalZ/8sBBcMuzFejI1CU5RlEgXuEROnJDIRjcoMNX_64-syY", "token": "U04vI7bbzKyECL3sHOT8VWg44op-nk2g1AIjz9YkfXw", "status": "pending" } ], "expires": "2019-10-10T04:08:10Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/chalZ/8sBBcMuzFejI1CU5RlEgXuEROnJDIRjcoMNX_64-syY" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoicklENFR0VFB4VU5hcXROcHNUUzFjdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi84c0JCY011ekZlakkxQ1U1UmxFZ1h1RVJPbkpESVJqY29NTlhfNjQtc3lZIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDgifQ","payload":"e30","signature":"ey9-wf4D7i8csQIPY8Uqanxrwfoh8lbWjBJ5LYwfdYxm7yq6UsscryDLIhpx4j5YsfRTfzt9r4esAiA4sBkwTYwLcwjCOVU6TPnGi-lrQHs5ZMiEcCqsryTc0bszenEDWDtJOSEHoV6b3PMPTtpAKmTB4bWaiOEl8nK5QHNCRzaFt69BtHPK0G5sDwatic1GqzzsuQ7he9aZbnrJ9mN7hGn3brL1aJgklYdGncxE23GmLBPJPFDgSJkukaz8yMj3DrJHLNjzzu5MJy7oUcHZcg7CcEXqdOiOqLZ-EvtqCHlnQ2wJyV3YeSOKj5Qj9tvn6CHs81FiLWRoc-bZVdJHfw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/XWK5M15onI-oajDO7l4U4y8kTfCnfCyLfqjqQ2IT6ds>;rel="up" - <>;rel="index" Replay-Nonce: - 0j-rF130w_QUu6EsIDlbjQ Date: - Thu, 10 Oct 2019 03:08:10 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/8sBBcMuzFejI1CU5RlEgXuEROnJDIRjcoMNX_64-syY", "token": "U04vI7bbzKyECL3sHOT8VWg44op-nk2g1AIjz9YkfXw", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:10 GMT - request: method: post uri: "/finalize-order/QGSOVFW8rFp3qcIXzAmnM3hgIRoFEGJplbHJuQSeFU4" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMGotckYxMzB3X1FVdTZFc0lEbGJqUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9maW5hbGl6ZS1vcmRlci9RR1NPVkZXOHJGcDNxY0lYekFtbk0zaGdJUm9GRUdKcGxiSEp1UVNlRlU0Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDgifQ","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDNzRIRWFuZk5lUHNsR18tMlRoM0lWOU1ib2dZaF9QV0lRNGdRQkJibHVZRHNXRndBRldOV19hZ0hheDV6eEFiYnhCcXBieko3d3otNFpHcS15UU92YTAtcEc3ZlQ3TTlvQUVTU3E2YThkM2R6bnFmQ00wdFJ4UkNLbW1IWFpBNkJYVXNEYVNpTXVONnBpUnFSZmdBek1KSkprTlBpQWdrWXQ2NVluUlpWdU5WRV8zQ0F6RzJhb0xUZWRUeFZ0RVFBTlRpT1RSeWdyVmdxckNQMnU1U3dFLUx1cnRJU0N1ODFGYV8zenluay1LWkpMckZjcEpSQkUwbHRjdmtzQzNuNVRwLTBqeEFURDA0c3lxLU9CTGRKZUQxNzJ2cFg3OElDMjRnNE9zYW9EOEpvcXQ4cmV3Y3g4ZjJrZnluUFk4TGJDSmdyWVpYZzhuUXpSS0R1Vm9XcWhBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBY08ybnJ6YzVKeWZISmR5Sy1PNml4UW1GbXlNMmJoVVFySkpxY2x4aUxVbm5yUUNkb1cyTEpodzFUc3lEbVMza0ZzNTR1eHQteHFXM0FoMFJ3bXV4V3dZX2VTSV93TDJERUZ6bW5hUHQzMzVQVEJHNEVRaHpqRlVXT29sdE45MXJwRGxibkRvN0hFY0F3NzlYOE9XNW5Pak9kOURZSWkzbUdYc3NhamhlWlBEcnVTMEhWcmg3cFNaLTg1NkF4VVY4OGN6YVRRNlFOaXRBcmZTRzNjNU11X0pabEdiX1FyQjY2YUgzNGxUMXU5ZnZGbEtER0s5YUg3R3VZYXBGeXJsN3p6ZGdTRGFITHczb0ZQb05jZWNueTg4WkJoUDBCZFVHMG9jWmdUakZFLXBqOWpGZnBEbGUyWS1FZkxYd1RaNl9NNWJsdnYyR250QkdCcUIxTk5MZmsifQ","signature":"z7yk5Oz7DlgjEegZb9gPSyvfBYK_MZ5T_1rKFKZgkmJhINrMOnFJWCNqFnyULlWM1jqqRJRtnmoVhfddzoe7g6HotX7G59nvRHfCWRILw_TvRHZAXpt5JdRetzagHyb81iQIxVZO1eWajZmFv3FmBuo9_M-0x-epjmb-CmVsi_S_ZENIs7eihP2L5RdHjqXr6iPqoXhvlXFWhry9MOE6n2d_pckjRIfHh5m5MgGQyTSzCbzN6iZJDWeCLRPsYZzlfwiBpSj45iZtFLKcP61vlU5KPLHQXK4tYZ9zHDMbjKZ4_ZcDxcgEkZmjdVnEnO2JTeEIFlBOYVHdzP7TvpiNdg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/QGSOVFW8rFp3qcIXzAmnM3hgIRoFEGJplbHJuQSeFU4" Replay-Nonce: - N82dUFquhYQJoI5rPCJarA Date: - Thu, 10 Oct 2019 03:08:11 GMT Content-Length: - '385' body: encoding: UTF-8 string: |- { "status": "processing", "expires": "2019-10-11T03:08:10Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/QGSOVFW8rFp3qcIXzAmnM3hgIRoFEGJplbHJuQSeFU4", "authorizations": [ "/authZ/XWK5M15onI-oajDO7l4U4y8kTfCnfCyLfqjqQ2IT6ds" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:11 GMT - request: method: post uri: "/my-order/QGSOVFW8rFp3qcIXzAmnM3hgIRoFEGJplbHJuQSeFU4" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiTjgyZFVGcXVoWVFKb0k1clBDSmFyQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1vcmRlci9RR1NPVkZXOHJGcDNxY0lYekFtbk0zaGdJUm9GRUdKcGxiSEp1UVNlRlU0Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDgifQ","payload":"","signature":"xL48N_hKCbPpDFZ-uvVMVXSFpa5evFJ_qGLIJ9ugvf2lb0oncKT4DOBKIGtrpcSpOmUXaoABvkSRCKUippxDldegfhmRtClae-r67Jh3srI8FZc54K2xYoGCuq-gEvrFGZXXLAR6HKeT-XrgmqUHfHKU6jzpzyliYiMhsVEvq_kacTrQGu4fNX8QWOOKCOv6aBNm-1C6QLWWxSBfkgMRGXu33B8DHQJphyP1XeA16eCfBTVSMIfXYVJICOsVHij9mR3iLJVVZU8QwUkcONtYgAPtn-SoxiN3ky6fdjQRBC5U0oSrK6vfe-VvzSX2IbA5eveYhRp3sbVjxE-PAMF5Cw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - pUWSIRPthpg-nGz1Eo0j7Q Date: - Thu, 10 Oct 2019 03:08:11 GMT Content-Length: - '452' body: encoding: UTF-8 string: |- { "status": "valid", "expires": "2019-10-11T03:08:10Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/QGSOVFW8rFp3qcIXzAmnM3hgIRoFEGJplbHJuQSeFU4", "authorizations": [ "/authZ/XWK5M15onI-oajDO7l4U4y8kTfCnfCyLfqjqQ2IT6ds" ], "certificate": "/certZ/6b612c23b90317c9" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:11 GMT - request: method: post uri: "/certZ/6b612c23b90317c9" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoicFVXU0lSUHRocGctbkd6MUVvMGo3USIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jZXJ0Wi82YjYxMmMyM2I5MDMxN2M5Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNDgifQ","payload":"","signature":"TUoLKoAIAPfpjZhuAgQsf4lDbcFf4YEsaaJWcVhw6ZYZNBUaUq0Cgm90Y0cxUeuixcHu-RKQKAjX5Cb-mdErD4UqamFlcrK-yGjwlFfyuOVzyjoz4JfkynWl6dbyDKosCV9TQ8noV92m2NF8ksgfHTisk9ByuXMfayujASZXKGgZRi1P2V6bv3lIjoUuonvkQkvUJeQ3yRY2liET6yku8j2m9efO0-N9dpWvV-U4Oor4a4jjeuALhfIhh_twEKrkp46OgX9XuWob7Gxr0jPUPnoUcjIDTs35k_8G2xxdLScGjehxtJZYJmw7Idrbf0OzxaRooeSj50Ie_XMJAnWn2Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - application/pem-certificate-chain Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/pem-certificate-chain; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - 5PtZN80mx9l6RhYY1SFP2A Date: - Thu, 10 Oct 2019 03:08:11 GMT Transfer-Encoding: - chunked body: encoding: UTF-8 string: | -----BEGIN CERTIFICATE----- MIIDWTCCAkGgAwIBAgIIa2EsI7kDF8kwDQYJKoZIhvcNAQELBQAwKDEmMCQGA1UE AxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA2Nzk0NDAwHhcNMTkxMDEwMDMwODEx WhcNMjQxMDEwMDMwODExWjAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBALvgcRqd814+yUb/7ZOHchX0xuiBiH89 YhDiBAEFuW5gOxYXAAVY1b9qAdrHnPEBtvEGqlvMnvDP7hkar7JA69rT6kbt9Psz 2gARJKrprx3d3Oep8IzS1HFEIqaYddkDoFdSwNpKIy43qmJGpF+ADMwkkmQ0+ICC Ri3rlidFlW41UT/cIDMbZqgtN51PFW0RAA1OI5NHKCtWCqsI/a7lLAT4u6u0hIK7 zUVr/fPKeT4pkkusVyklEETSW1y+SwLeflOn7SPEBMPTizKr44Et0l4PXva+lfvw gLbiDg6xqgPwmiq3yt7BzHx/aR/Kc9jwtsImCthleDydDNEoO5WhaqECAwEAAaOB mDCBlTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUF BwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFDDuGNC3NaAvNCEXcSEBbLaz/NDg MB8GA1UdIwQYMBaAFIiN1hLypsnm8KWVi3ItK0Unjae0MBYGA1UdEQQPMA2CC2V4 YW1wbGUuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQBmqbvbeCWhmTJrtt+q5Zlz5C9z ftpuUIMhAo8iTCOlXASlQ1G/6JmUv1SY/tp93rGIzFPU/wYKZsbw/qzu4eTmS6DZ q3U1cvb2zjUH7aRAl7etu1H0KVQG4gDw961zM4eUuHSybIgp1FKo+J6X3hHHVM6u sUAgYvLyyrVYpZxMKP/UCvbA4hZ/sbLJGfI2wzU/FKQjt41W3b+zpEEw8VcFkOfs eQ5YeUVIHAZ3HFNz0QB/2RTmKLtjZ7UpnmxZUeVMlJXKrYjhAcCBR8vb72BDdaWk fA/1pSyT7mbXyuxDJCvrwzzdHWw7PL2wzaCbultcuDn4oT15Hih28HjorEtU -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTjCCAjagAwIBAgIIH8F+H5a3JeIwDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UE AxMVUGViYmxlIFJvb3QgQ0EgM2E1OTY4MB4XDTE5MTAxMDAzMDU0MloXDTQ5MTAx MDAzMDU0MlowKDEmMCQGA1UEAxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA2Nzk0 NDAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1TkMbn1tCv0QXFen5 Was596VScGyD0ifqoq4/kb4WQ/debH8coZzz9pVKTPbZySY/X1ltStYBI/2GdIZg t/uw9hOW7ko2Agy4bcd6tD9S+eZK4F3rH1EJutUjuq9WLmmckT8PJEbToazvDTL2 v9YGcf56v0SCuCYQshNlx5ECKb7kWWqy5D6OzJPB24BRFX7MTD8ckkdhQmzafyI7 vVkDrHFUZslx1BUQ6lfJEy0mi/UmTgxrjPwTfe5UWF6N3AZDEUng8eWAnKW9px2g 5qTUShGMZG6E6OkFHX6rmT3MVuO+rWVpyW1zKbWxvlcAyyBR91Ju6tsJFF/1Y9t+ +XHPAgMBAAGjgYMwgYAwDgYDVR0PAQH/BAQDAgKEMB0GA1UdJQQWMBQGCCsGAQUF BwMBBggrBgEFBQcDAjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSIjdYS8qbJ 5vCllYtyLStFJ42ntDAfBgNVHSMEGDAWgBQECikuQVoCg4iOTz+f+0K8SqRdsDAN BgkqhkiG9w0BAQsFAAOCAQEAeyRyz24bmQqWGYXkM02ZWHlom1FNXVtfNOlzgzjC 8sUbFYJDaXefS7x1KJwGparNWmn0jopBrSjOJLCDDphqk1DcS2YPu+7CcyodXyGw CxRSe7gYGx6I0Z/wReeb5rscJ21kJK30Tt3z2hLXWBkxfdcHit3JNLn3HA5HQRph HUr3EUzoFHfNCBecY8lWkmLeN39I0MMCis49DTact6M1jT+q1c+MzjuWO+Bst6mr 6RebdTn4monMOHvmbaVR7+klY05dMjatBF5gV7sf8mPJwUZP5NnEcTLe6zgb+dh4 kDc7qJ6UvkuoDJmbHeSd27GdCJfK+nwc49UG/Fmd8+Zeyg== -----END CERTIFICATE----- http_version: recorded_at: Thu, 10 Oct 2019 03:08:11 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/order_finalize_fail.yml000066400000000000000000000225321463311421000234240ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - kVLaKJxnOiO-VJSMXXPRnQ Date: - Thu, 10 Oct 2019 03:08:13 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoia1ZMYUtKeG5PaU8tVkpTTVhYUFJuUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InhzRlUySjlBY1BvdFVwdE9UeHphQzlPLVJ2RExQUTlyMmFGRlExVmhSR0w4eE56Tm9VblMybnlSMXVmX2RpQW1fRmpoVVFzXzlDUjVFWE5qN0RVVjM5ZThiTHh6MTJMQmFnSzREZnpfVlVqQUxpbmZzYk1uZjFQQVdJcWVhRnZkMnladDROR29tNHp2eWxNcllPOUhfSTN3cnZidHluNlRwVlAyQ2RQSzVITm9wY0xiVjlwaE5Od0xVTWtQV0c0ejhTaXpNT1o0RkZhRGFRN3RzUW1qZEdlajVmaTFDVGdneVowMVdSY1pWbHFTbXJTSnhlWnk3bWZmX2FRR0U1ckxDdW92b015Sy1XNjIyWW5wTHhCR3ZydlNaVmFaM3hnVWdBVVFaYWVQbmFWN2x5X0dvWnE4enZwTzVIdjEtSzc5SlVHZnd1TVZUbkhCanI1aG1VSW1kdyJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"gnJXJ9-8EP2B6ocY9L3cIvKo_HEyOzSfzgEMpMLGvO_8T_letIULYQG0fUiExCVEq7CCPD1IgSRUFnDriqtwBRUiqwOUFhu9lUCj0WFa26DyPRhRV4MyMNVEMdUP4bvtjnD3zWwClOZS2Onr3R7vBM7zys93DDbl6Zn0Vxx3oSZBKXsc4iteZQu_1J6Ofu6WEOGoGS2TLGUgJ79DAC3ekZP1eX__sFueDCPgkga-mt6w0QsR0NW7LkBu47wsuO95124Xkmuh-KSzS0wwlUPVEgf9K5mwmGDJBINdQzlEzdaUw_JYo0f2RBwj6gn6DhwS1tgbhfEfYmfoFuvkVyyWjw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/52" Replay-Nonce: - X1wmGhynmQeR_R4OQNpKUg Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/52", "key": { "kty": "RSA", "n": "xsFU2J9AcPotUptOTxzaC9O-RvDLPQ9r2aFFQ1VhRGL8xNzNoUnS2nyR1uf_diAm_FjhUQs_9CR5EXNj7DUV39e8bLxz12LBagK4Dfz_VUjALinfsbMnf1PAWIqeaFvd2yZt4NGom4zvylMrYO9H_I3wrvbtyn6TpVP2CdPK5HNopcLbV9phNNwLUMkPWG4z8SizMOZ4FFaDaQ7tsQmjdGej5fi1CTggyZ01WRcZVlqSmrSJxeZy7mff_aQGE5rLCuovoMyK-W622YnpLxBGvrvSZVaZ3xgUgAUQZaePnaV7ly_GoZq8zvpO5Hv1-K79JUGfwuMVTnHBjr5hmUImdw", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiWDF3bUdoeW5tUWVSX1I0T1FOcEtVZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC81MiJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"J1m_XnAKLSUPIZw9eUH-nGt5KWU5hTHeRpBPEo3fad1M5iMEPLVSiWvh3ve8P0DDQXINva1a9PC9L8dqXqYkiRyVBcDjXiTfzGc-L_GI3F8yMgxRLc7BwAchLplHUyDLV8hZhXzu-1x3voEh33HGgdqzbUGVg9gn8RyABnKPEkIjPmT1Qq9plD9_azysIzk9_bm7ZgOH4Fh141SPijCr-NAidY0bKyOvEBjTnJXVHuxNtYHZQQ-zv9A161sJL8ivnF9hO5-cR27XrzYWUM3BwW3KplOcZS-CkFtYoXb2CPv1bOxqds-IjOha5qW7BiEha4vESJtZJhxP9FbJKPymFg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/vil5ixnNBUeuUyCgpTVJ_9j-3Mf6CgmOn_iWXD-KbGo" Replay-Nonce: - Url2LmypRkL4HRv4fUruUg Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:13Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/vil5ixnNBUeuUyCgpTVJ_9j-3Mf6CgmOn_iWXD-KbGo", "authorizations": [ "/authZ/pMOoDE6Fa1hXkXgyL_LCZC61buGx1eUJX7VaSo-C7GQ" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT - request: method: post uri: "/finalize-order/vil5ixnNBUeuUyCgpTVJ_9j-3Mf6CgmOn_iWXD-KbGo" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiVXJsMkxteXBSa0w0SFJ2NGZVcnVVZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9maW5hbGl6ZS1vcmRlci92aWw1aXhuTkJVZXVVeUNncFRWSl85ai0zTWY2Q2dtT25faVdYRC1LYkdvIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTIifQ","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEQmNsMmFLbjhVenpPcGpuUHkxeXhIT1RaQURVU0xmSVdIeFo1S0lXNU9WMHF5eG1nMV90bG9hU2ZjMXNJOGttRmRaQ1FYdURPQ0kyWVdXeDJqeDlMaldfSHo3QkxEcmFOVFoxcGFSakhmbm4wQ1hVZEdNeTJreVBKUk9iR3hxREQxN2cxVGtTUXdvbGJVc2tMLW9ucDNtME5JMl84M0ZjRzl1dzc4U0NHQ2ZzcVhzaHBmbVdHakMxNnBYbnhuMFd0dGQzS3JHZXVMUHUxNEM4dXRYYmhyZUxnaWhGYXFwN3AzSFdTOFppRTA5M1ZmTG84UXlJY2NIWXRsNGF2MzRIZDkwLXBmX2NPM1ZIOUxxVmQ3dkRGM05oLWQyelUwS015ODBFY3BvdVNnNWJ2Q000WmZTcVRiVGw4SnZYMVl4LW5SOUdLRXRjUXNPdDZEQkY3WXhXVGpBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCSjhLQ0tQejB0WkZERWdsTTc0WE5uRzhoV2c0aFUxNUNOWGRsX0FuY0JTdlBVRGhlOGNFR3JPN04yNlpzdURXT0FFcWd0UnB0UXVjeFVwd1Ntb3piaEtvNFBSTkhkNnpGbkU4LTA2VDJWZ1AtazZveFBlWlJua0VES202Z3h6am1IQVJyczVuVjJEWkFFVTdPak9BckU4WDVMT1NjU2xYTjMxOHlTTno2dGY0enVNcDNwQmx6NnBkbUs3M3VSMXdtUG11SUxMQnpsOE1rbG44TlVYTnMxenVyRy1rdzR3M1VuWjVWRWswbVVYMGh1eHJGcDBtMjBPc09IZi1yb20xbTI3LVpWb0pzcmxGaWcxYTc5UkNFRDh0QlpjTDI0STF4Y0tkMzEwT1R5LTR6bFI1Mk16eVJpMVozTDY2NUEwcXhsdE1KenV2LTNHZzYyQ19uRUNOQmQifQ","signature":"um5uQaqg0EptwWcwZZFLSYGPhjmfZVlDg-b697ua8suI5ShXoSL53DSL7o5wAZwzw-543REtwift9SYVBVfWhkmrbvuJs-EN3ZzCkLGsZ2EuMWG61vwx5NkbVCNbaoKN2rfwOVB6a_WTQaN6d77DgnUlPOOgRHd2r3aESepd4etu0RolMkoCmg2RTKASrApbP29F03fHhO-kc20PwPSXUJb3jCPAhBDZpie93ZwCDxU3YTHGQ-hMo04ikj9tS13nGTVimMjkn3ftIiFyubL0aNniYWzZ68NSeC4Qii-o_23nY9l6zIIeczagUE9aAziGY1EXADTqKRAIK7Y6wLW5iw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 403 message: Forbidden headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/problem+json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - sBJfAMB4HHDijXIoHvtXVg Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '134' body: encoding: UTF-8 string: |- { "type": "urn:ietf:params:acme:error:unauthorized", "detail": "Authorization for \"example.com\" is not status valid", "status": 403 } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/order_finalize_sucess.yml000066400000000000000000000305041463311421000240140ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - eXgdB5U8vwq3aMiy4fwRPw Date: - Thu, 10 Oct 2019 03:08:12 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiZVhnZEI1VTh2d3EzYU1peTRmd1JQdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiOWtSZVdTVUNicEl4M1hQSElUenlsN2pPUXBoektWWkNLODJRVHc5NlNCZyIsInkiOiJKakV5Z0ZlUGhsRENQQnBRenZaYTNwMjB4VE1EaTNjY296bTRxY0wzRTYwIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"6cXSYno0eMy1x3iNFVGxYoqiA_sRDI86EGAVZsixMQo5brYjr8jBj-Jcn38oOe97pjQcq14JoCQ3XZyj-0rYBA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/51" Replay-Nonce: - y-XI6fnOizStSUGLsoWq5w Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '311' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/51", "key": { "kty": "EC", "crv": "P-256", "x": "9kReWSUCbpIx3XPHITzyl7jOQphzKVZCK82QTw96SBg", "y": "JjEygFePhlDCPBpQzvZa3p20xTMDi3ccozm4qcL3E60" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoieS1YSTZmbk9pelN0U1VHTHNvV3E1dyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC81MSJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"vHUIiVY4S0zoV_nmG9rgJY_dfN1qi96byWQPS2-XY4TZ-Zb3WplqRfwnIoOdT1mopZOifsJMM-eRN5SQ_DGs-Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/ezztlDTlLim0DfYhBtnnHEHmn2RSPStum-0DgsjsFSU" Replay-Nonce: - FRIoCCA3rdd23u2pA8rGvQ Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:12Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/ezztlDTlLim0DfYhBtnnHEHmn2RSPStum-0DgsjsFSU", "authorizations": [ "/authZ/pHqgtLvHeo5ysrFo9l0a1v6cjRs0Os5wEoXetY1qu2s" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: post uri: "/authZ/pHqgtLvHeo5ysrFo9l0a1v6cjRs0Os5wEoXetY1qu2s" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiRlJJb0NDQTNyZGQyM3UycEE4ckd2USIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9wSHFndEx2SGVvNXlzckZvOWwwYTF2NmNqUnMwT3M1d0VvWGV0WTFxdTJzIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTEifQ","payload":"","signature":"AtkH7szzgwciAWZ__LwvMOXxyvY1P110xPhuOANKYAcEgjErA0rFlSD-IsaH3ydaF8P1drOrXMX6PbCoCIrROQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - vYh8pu3PdWL06-1yBOt-uQ Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "dns-01", "url": "/chalZ/BPyUxpHk9VBUWETLpef422c30YnUpQq1AhYwjBOx0ow", "token": "Pew6mGqNbQpG0L2k5I3AUsvHhNL678x7cYTeJiwgnB0", "status": "pending" }, { "type": "http-01", "url": "/chalZ/oWTgx1IFDdWMcUiMoi-kca0ivlxn7EBI57Gm0g1D4iI", "token": "qffs3D2NoE6NWoMJNZVE1eK6K-LxhXgXMlQB71H67yc", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/XPg8hOxVlHEJCktqbhhcWbA2SJm-qynJJBJ5Dbu1bW0", "token": "p9-aF3oU7ug-5H-CzBMXLJPBD3r59H0k9kKkuvuihhE", "status": "pending" } ], "expires": "2019-10-10T04:08:12Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: post uri: "/chalZ/oWTgx1IFDdWMcUiMoi-kca0ivlxn7EBI57Gm0g1D4iI" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoidlloOHB1M1BkV0wwNi0xeUJPdC11USIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi9vV1RneDFJRkRkV01jVWlNb2kta2NhMGl2bHhuN0VCSTU3R20wZzFENGlJIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTEifQ","payload":"e30","signature":"dgAwKcDCsVVqsgKBIx2RhES9EKmuni1VDbfgZ3uxChv9ZUCMv8852fJmWe-7CNPkEKQsnNp44MB4V-2qPC9zuA"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/pHqgtLvHeo5ysrFo9l0a1v6cjRs0Os5wEoXetY1qu2s>;rel="up" - <>;rel="index" Replay-Nonce: - Vfwg7uOlfBhXqlIlHLo5ag Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/oWTgx1IFDdWMcUiMoi-kca0ivlxn7EBI57Gm0g1D4iI", "token": "qffs3D2NoE6NWoMJNZVE1eK6K-LxhXgXMlQB71H67yc", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: post uri: "/finalize-order/ezztlDTlLim0DfYhBtnnHEHmn2RSPStum-0DgsjsFSU" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiVmZ3Zzd1T2xmQmhYcWxJbEhMbzVhZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9maW5hbGl6ZS1vcmRlci9lenp0bERUbExpbTBEZlloQnRubkhFSG1uMlJTUFN0dW0tMERnc2pzRlNVIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTEifQ","payload":"eyJjc3IiOiJNSUlDaERDQ0FXd0NBUUl3RmpFVU1CSUdBMVVFQXd3TFpYaGhiWEJzWlM1amIyMHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFDZHRHQXY2OXF5UlBpMXR6SlpXc3pQN0x3TXZNYTRFOS1RZ0w4Z0JvRjQ1Z0xiUkE3UzZITl9sLTE0UWNUYmxOdGRNcU8xOVVtb1Q4VVF1Z3RqSjZwai1DMlVxVFFVWDNYLU1Wc21pLVBoa1p6dmFzQngxT3ZPcjByc3RxQW0tNHRPaGhoOWRCcE42ZDlZUEJVRmZFbjhDcnlrckRaZ2xNWGc3cVYtSTBENS1ZZG5weVoxRGV6Q2s1ZTBKZFBsWVpFRmlNc1ZzbC1UakJLSTBfSVJqOU9ZamVJRXN0bFVHTFJkelRubEVBY2IxUklrd21tYjVXVkNjTDdDV2ZLM3Q5OXpEblROVGFFQmtxMGZsVGhMM1FEQ3Q0enloWFFxSm82VjQ4ckhZMS1sRUlEaTVmcXQwTlplRXlyM0pJaXVTOGpDYWJKOGQ4OWo1YUlpM0EwVGE1dlZBZ01CQUFHZ0tUQW5CZ2txaGtpRzl3MEJDUTR4R2pBWU1CWUdBMVVkRVFRUE1BMkNDMlY0WVcxd2JHVXVZMjl0TUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBVUZvTFJiZnhUSjBPLU90VndyYkhlZllIenNOcjZlTE9YdGVxWm9oaE5ONlc2R210ZnNuOUdZVU56Tk1MZFlpdzI3UHU4TWhzYWpnaUk1VFNTMnFTN2V3UnpncFFLdG16N1FwU0VIZnFWd18tMzZqQzhteVJaWXp1S2lwWGRaOVFldmpqSVc3Nll4RUVHcy1mdnM5ZEd4aGwzRTlWNlJ1b0hWdmpWME9PRmZDRF8zMHU3UzV6Ylh4eGgxb2pVVVd4R05tekRfekRqRHZyR0xSQlNOSTVFd1VnSkdCUHBUNUNEQzRaUll0eUd6UzdqUHBRVXZNbEdfdlFLLUxkTEZBQnVsV2ExRnBaQl85WDFKcnN1R21BaEN3RUZmdGo0aDJ0bWdKYkYzTTRtcjU4WGpjSHF2SzZ6SEYxdEVBYWdXTU1FMksyNTlPWkRPaE41T3hrd3o3MXMifQ","signature":"VN6wwNrtFVeZMQIzLFMFvw4Yqkcf9NqRUW8DQ4UNe8VPN0wMxJ9hSVWAJgHbla0_lLmLcok9igKC252e6uKrOQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/ezztlDTlLim0DfYhBtnnHEHmn2RSPStum-0DgsjsFSU" Replay-Nonce: - Q_rbNRH8Js2tydNzdk_gpg Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '385' body: encoding: UTF-8 string: |- { "status": "processing", "expires": "2019-10-11T03:08:12Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/ezztlDTlLim0DfYhBtnnHEHmn2RSPStum-0DgsjsFSU", "authorizations": [ "/authZ/pHqgtLvHeo5ysrFo9l0a1v6cjRs0Os5wEoXetY1qu2s" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/order_reload.yml000066400000000000000000000207271463311421000221020ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - 2ef0wBf72l6wQkRtpUVhOQ Date: - Thu, 10 Oct 2019 03:08:13 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiMmVmMHdCZjcybDZ3UWtSdHBVVmhPUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6InZBNGg0R0dvaFJJcll6dFJBZU5wSlVCY2ZKTGlCSXEzR2tjdHhWT3NQeHRaUVNNbWRDbERwWHU4eS1rLUtnM0NqTzZzSXpRVy0zRDRQX0NTOGlhcko0ZWxwNk5BNUhNMXhyLTNJNmYyUDdCQjhGaXBzeDRuN1R0QzdBUy1MYy1ia0hjajk0YW9Ea1FCeWR1WUgxaHJCLW1hbjB2V183ZmFFbkJzVE1yeGJ2Zl9uX2lPenBWSU1fQnNmaDVCeWxaT0JkNW9iTDhwZ3JJTkViT1F3clFlRjVjMmtSOGRyckF6bmlpVXE0SUFjXzFoN3AyVzRVT19FLWpibGxJS09sSTNMWTh3b0xuMExrTDNiSFh1dXhjVFhDVEQwYV9FWWIwMkZhT2VHeDQ0VVBKOXI4MTMwdUpsZTVLNWt5cVdGaEd6WE1WWWUzby1HaE9KcjI3NHd6V3BpUSJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"P5b9rfG7CDxRmynq55dXfpqE9pqqHxqXJVjlk_7sdJRuTxUpTyGTeKk0pIMtRQs0h2uVnhSK2qHrNctULPhAJwhPEy3yv9QeJC9SpJxxVAChPP495D80GXW9mW0T2xslKs4S1Kwjx4A4A1HT2y2LDOM0b3BzfnnQLPww35PMXBLNF2x_oR8GfdTtK99ZYa3zFsxGbm_z8QC0fCxKsZrfMLGDXnDFQ7WFB08Xr04X2N9Ps4K0ccbMXNbU7zALw7xcmotRbFD4mBdd3p2BiaAm15nJE7mR5-GVDOVQRcYsOEnc9veB1icYsBNFA6J3AyZRAMDdQS_3PZt_H9GZXYjpFw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/53" Replay-Nonce: - Vmt522LmOWDMVsDBL9ihUQ Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/53", "key": { "kty": "RSA", "n": "vA4h4GGohRIrYztRAeNpJUBcfJLiBIq3GkctxVOsPxtZQSMmdClDpXu8y-k-Kg3CjO6sIzQW-3D4P_CS8iarJ4elp6NA5HM1xr-3I6f2P7BB8Fipsx4n7TtC7AS-Lc-bkHcj94aoDkQByduYH1hrB-man0vW_7faEnBsTMrxbvf_n_iOzpVIM_Bsfh5BylZOBd5obL8pgrINEbOQwrQeF5c2kR8drrAzniiUq4IAc_1h7p2W4UO_E-jbllIKOlI3LY8woLn0LkL3bHXuuxcTXCTD0a_EYb02FaOeGx44UPJ9r8130uJle5K5kyqWFhGzXMVYe3o-GhOJr274wzWpiQ", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiVm10NTIyTG1PV0RNVnNEQkw5aWhVUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC81MyJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"ikxhHNLXGAaCd5hDRkVooALz2JnJoYpl7fp1ZxUzFuOoCd-zHnWF6vL7fsiL_38EkCzKfw-4eE2f8rvUHx45bShvMMzPocfaWkc-n-NudK5Kgujp78eQnRCO2_CcaQtaUXiUG3u-hLnGfxd9DDQUT7txwtCCUrLpSTWm0oP6cd6hLX3rSm14XwJBPpI6v7R_Y4-mQdED-X607KDTqoIQvc8-3mite5hlMBbXfCbmEfLnmQBdKRWfdh9NtJ6tR8p_9h42IGy6GtKvFpCxskdRcRsAgidmyibU4OjJ_0cAWjviXDvBaJDOKcjvIJjX_ITdBXw4qvBUQODMVMl1I6cf9Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/2rltAtUQAfVWLtdgX_P7nl59Idogx6XtBfgV2tuXSOY" Replay-Nonce: - CltoBpsxaaWMmcCfdwjjqw Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:13Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/2rltAtUQAfVWLtdgX_P7nl59Idogx6XtBfgV2tuXSOY", "authorizations": [ "/authZ/gJz0NmY9ymZdsoKXZm0NFN2vQICwDSozJCIwihcba90" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT - request: method: post uri: "/my-order/2rltAtUQAfVWLtdgX_P7nl59Idogx6XtBfgV2tuXSOY" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiQ2x0b0Jwc3hhYVdNbWNDZmR3ampxdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1vcmRlci8ycmx0QXRVUUFmVldMdGRnWF9QN25sNTlJZG9neDZYdEJmZ1YydHVYU09ZIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNTMifQ","payload":"","signature":"amB7sMcuX0h69xUgWYNZJQ2_9IVK7QasiSpwN1jQumPjoOksg5A9_WbxrEq2i36x04JQprFCTBjk7QBn97U7KsMJFWVC7cbU120Kx7P7WSaW8zPCVRYUl7wAXzT0QPZXBvsT_axRoXO4eQnnDBge6oPah6HUQQ_Vi7VmKMZ6P1pwNgYrw2fgeLKINnLcO9Q8_Y7209iKURpDM3_4pqZAuIkGVSdytCEp_Uiy059MX6SVvUOaeZZuo8dK_PRVYLwWJwySKyvVKDuqZWlBxyKbPySpWqGMzG5gBQA0T5bv4j9Zq8h5kWM3wFHRVFn4FDuQVx-9p8ojZWHIWcb1DPcjGQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - 3ShM2nwQQNYg20lAQ6xChg Date: - Thu, 10 Oct 2019 03:08:13 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:13Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/2rltAtUQAfVWLtdgX_P7nl59Idogx6XtBfgV2tuXSOY", "authorizations": [ "/authZ/gJz0NmY9ymZdsoKXZm0NFN2vQICwDSozJCIwihcba90" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:13 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/order_status.yml000066400000000000000000000126621463311421000221560ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - iX8A1ZF--iuYUR9_hREK-w Date: - Thu, 10 Oct 2019 03:08:12 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiaVg4QTFaRi0taXVZVVI5X2hSRUstdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoicWQyRVB2N0ZKTnpJcko4MVlFcFh0RWM3ODNfVGtWRk9sRlNHMlpraldRSSIsInkiOiJXRVlYUHFkdlhmLXJGVk4wSjJKbzZWOXNfem1HejkxNDlQdVZTX0tndllJIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"gs03FTPoqqRRGSGZUqN4DWPC8fw--mEEGr4CJ4F4zvDxjzijvIJqIZFk-gad4Iw-vnoYgqVnfEMxYLpBQybrwQ"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/50" Replay-Nonce: - CWTu9fWwwRSx6S0rkmrlgg Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '311' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/50", "key": { "kty": "EC", "crv": "P-256", "x": "qd2EPv7FJNzIrJ81YEpXtEc783_TkVFOlFSG2ZkjWQI", "y": "WEYXPqdvXf-rFVN0J2Jo6V9s_zmGz9149PuVS_KgvYI" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiQ1dUdTlmV3d3UlN4NlMwcmttcmxnZyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC81MCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"PYswmghKoB1wfPrqYItB_XmUKElIW_1t8Ui_FOvEQezc_H8_s2c8VRCD4cEnT0UczLSNHmwCg8KH-HO9GlN18Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/pF2bujKOeAqmFbop2GQgy3GA0AahpSPSMRGikDcCjNw" Replay-Nonce: - Vrl3vsP3I1GJ6JGkHffvOw Date: - Thu, 10 Oct 2019 03:08:12 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:12Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/pF2bujKOeAqmFbop2GQgy3GA0AahpSPSMRGikDcCjNw", "authorizations": [ "/authZ/K0e3DRXwAH_XLhLKQSByTFf3JjEcbMMEFJrrA4XPUkE" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:12 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/registration_agree_terms.yml000066400000000000000000000126431463311421000245260ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - 2ypJmsMoJqIBfkTovMJ6CA Date: - Thu, 10 Oct 2019 03:08:21 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiMnlwSm1zTW9KcUlCZmtUb3ZNSjZDQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMzg0Iiwia3R5IjoiRUMiLCJ4IjoiSV9pVy1fd3hGZS1NY1VZWU1TN3RuVklUMnZCenY0QWdhNHluXzE3QjhFMW05SzdGaUs3Wkg5YVhDX0pRakF4LSIsInkiOiJ3RWxVUEJmS1owSkJscHVFbkVMdGJFYTRTTnl1VmhObVNwTTVXZUJGZmpObUFIay1tLTI5aGxHTFBWdWpQdVR4In19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"dcY7ek129KQXqER1JrSltKapkGiP6IEvcQ59Zck8z1RazEgjD7NIFkl25xNXf0hs_3q601DOT5iEX8t7c8WvWm3SpqbsjU0lLY61s1PofqEoFIGjIiaj0OIOCQLXgqTU"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/74" Replay-Nonce: - 9C8wBG9HcZeC-7pFjabZAw Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/74", "key": { "kty": "EC", "crv": "P-384", "x": "I_iW-_wxFe-McUYYMS7tnVIT2vBzv4Aga4yn_17B8E1m9K7FiK7ZH9aXC_JQjAx-", "y": "wElUPBfKZ0JBlpuEnELtbEa4SNyuVhNmSpM5WeBFfjNmAHk-m-29hlGLPVujPuTx" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT - request: method: post uri: "/my-account/74" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzM4NCIsIm5vbmNlIjoiOUM4d0JHOUhjWmVDLTdwRmphYlpBdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9teS1hY2NvdW50Lzc0Iiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNzQifQ","payload":"","signature":"QnlziDAwDfycTS2RpoZRqQzZwnVqwraV9qH0eDkgDsn-awJIFwRDlhLKsR3Aeuflj0yAstSPpZK9AEgmBQhD8isFqSJ32IdxwBKwYUKLWIhoyi_eekxaWX9gYjgtlTuz"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - LsGGR_TRtJ2fycbdvHvJ6Q Date: - Thu, 10 Oct 2019 03:08:21 GMT Content-Length: - '353' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/74", "key": { "kty": "EC", "crv": "P-384", "x": "I_iW-_wxFe-McUYYMS7tnVIT2vBzv4Aga4yn_17B8E1m9K7FiK7ZH9aXC_JQjAx-", "y": "wElUPBfKZ0JBlpuEnELtbEa4SNyuVhNmSpM5WeBFfjNmAHk-m-29hlGLPVujPuTx" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:21 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/request_validation.yml000066400000000000000000000255111463311421000233370ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - Pec3ptlYfe2MNbIRaIb-ow Date: - Thu, 10 Oct 2019 03:08:19 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiUGVjM3B0bFlmZTJNTmJJUmFJYi1vdyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImNydiI6IlAtMjU2Iiwia3R5IjoiRUMiLCJ4IjoiLUtIZ3FhTmE2SjBSSzhQMlFtWVlJRENaU0RPRnpvUFppdHk1aFFDa1BTbyIsInkiOiJCbDU3WmdUaV9YYWlpNDFBMUxHbVhFSTU1OHpFUjhmNVNteDQ0SmpjN1NVIn19","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"ECeh07I7ootmz9Zc8KjyZ1IK7Iqx27UpO0d3NJWJEyZCUc0igKDIKtItnzcbJtqXkQ8-EZQEgNobK9ZEn-sk7Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/67" Replay-Nonce: - lixX8T7bs2d_gA4UeYHgFA Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '311' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/67", "key": { "kty": "EC", "crv": "P-256", "x": "-KHgqaNa6J0RK8P2QmYYIDCZSDOFzoPZity5hQCkPSo", "y": "Bl57ZgTi_Xaii41A1LGmXEI558zER8f5Smx44Jjc7SU" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoibGl4WDhUN2JzMmRfZ0E0VWVZSGdGQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC82NyJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"DiusmNQoDz8ckkrSv21HMD5H3BitPESynLrjtxFwRdOI99kpki8IDvltYqpsLbgzBYhnjn4st0pV-JdtpDukNg"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/OvusK_wkm_0tLwJ6Ydibbn7AmWugSGxlHsKwBFZOP6g" Replay-Nonce: - _DZ_JAyT_vCTJ0rQ1uEe6w Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:19Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/OvusK_wkm_0tLwJ6Ydibbn7AmWugSGxlHsKwBFZOP6g", "authorizations": [ "/authZ/XEJCSSJM-J6lXEHRxlHqcDunMLUFPV0KvDC0t9a-cIc" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/authZ/XEJCSSJM-J6lXEHRxlHqcDunMLUFPV0KvDC0t9a-cIc" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiX0RaX0pBeVRfdkNUSjByUTF1RWU2dyIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9hdXRoWi9YRUpDU1NKTS1KNmxYRUhSeGxIcWNEdW5NTFVGUFYwS3ZEQzB0OWEtY0ljIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjcifQ","payload":"","signature":"4L_Nhvr0oXvqotTtHXER38c4cVRG9ZfZABnk-PCMnm-5oys22xkGKq4S4pOaNbC9dgSKCpNVQNC75rcLq8OF_w"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - Q2ZYoMRA-ngVgt9UBu653A Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '874' body: encoding: UTF-8 string: |- { "status": "pending", "identifier": { "type": "dns", "value": "example.com" }, "challenges": [ { "type": "http-01", "url": "/chalZ/vVJAA_BVZt6tYPeFCMSJKgDPyLYpVASw6S6ZXoMA_8U", "token": "XVDi-tWOf7DZrkgb80kC0D7b9DaQRygePlnnP6189CE", "status": "pending" }, { "type": "dns-01", "url": "/chalZ/eV39IguLzar50MDBWJXRu8o8ffPvcQeXBMRn12qQpgw", "token": "euxMnb2N-WL15PknqfeyrleZdcbxYfwAno_1-yBtIdY", "status": "pending" }, { "type": "tls-alpn-01", "url": "/chalZ/6iDQKtmlJo7PYISnC-p6j_dbzc27hrLcLFJEZGLFxoc", "token": "9bYvWJr4j2LCztxhOLUrSxdWyzngr-epw2dR06w04Wc", "status": "pending" } ], "expires": "2019-10-10T04:08:19Z" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/chalZ/vVJAA_BVZt6tYPeFCMSJKgDPyLYpVASw6S6ZXoMA_8U" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiUTJaWW9NUkEtbmdWZ3Q5VUJ1NjUzQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi92VkpBQV9CVlp0NnRZUGVGQ01TSktnRFB5TFlwVkFTdzZTNlpYb01BXzhVIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjcifQ","payload":"","signature":"i5GXqBsuGHL0R-bY2jYQ_Hub-10kJIXL8H1cinzx_9bokGeikxgB1PcW1si8bP_Ezxv3mv0j7zpmELUPshq07Q"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Replay-Nonce: - W6zQbLFxBt6jPoL6gsbSsQ Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/vVJAA_BVZt6tYPeFCMSJKgDPyLYpVASw6S6ZXoMA_8U", "token": "XVDi-tWOf7DZrkgb80kC0D7b9DaQRygePlnnP6189CE", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT - request: method: post uri: "/chalZ/vVJAA_BVZt6tYPeFCMSJKgDPyLYpVASw6S6ZXoMA_8U" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiIsIm5vbmNlIjoiVzZ6UWJMRnhCdDZqUG9MNmdzYlNzUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9jaGFsWi92VkpBQV9CVlp0NnRZUGVGQ01TSktnRFB5TFlwVkFTdzZTNlpYb01BXzhVIiwia2lkIjoiaHR0cHM6Ly8xOTIuMTY4LjU2LjkzOjE0MDAwL215LWFjY291bnQvNjcifQ","payload":"e30","signature":"Baj47lYbJ8MRsY70TUi3jpz6Nq-n4GVN12_rBRfzUSGkFmJndDzdCGLuMFXggSw4CjJK4jIkWMSMtzfVrAu85g"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - </authZ/XEJCSSJM-J6lXEHRxlHqcDunMLUFPV0KvDC0t9a-cIc>;rel="up" - <>;rel="index" Replay-Nonce: - Nwj1HHNZmduOe0BKHBeB9g Date: - Thu, 10 Oct 2019 03:08:19 GMT Content-Length: - '198' body: encoding: UTF-8 string: |- { "type": "http-01", "url": "/chalZ/vVJAA_BVZt6tYPeFCMSJKgDPyLYpVASw6S6ZXoMA_8U", "token": "XVDi-tWOf7DZrkgb80kC0D7b9DaQRygePlnnP6189CE", "status": "pending" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:19 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/cassettes/simpler_identifiers_order.yml000066400000000000000000000147431463311421000246750ustar00rootroot00000000000000--- http_interactions: - request: method: get uri: "" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '386' body: encoding: UTF-8 string: |- { "keyChange": "/rollover-account-key", "meta": { "termsOfService": "data:text/plain,Do%20what%20thou%20wilt" }, "newAccount": "/sign-me-up", "newNonce": "/nonce-plz", "newOrder": "/order-plz", "revokeCert": "/revoke-cert" } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: head uri: "/nonce-plz" body: encoding: US-ASCII string: '' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Accept: - "*/*" response: status: code: 200 message: OK headers: Cache-Control: - public, max-age=0, no-cache Link: - <>;rel="index" Replay-Nonce: - zXfGZ7qMCxysCz_4Qg-DYA Date: - Thu, 10 Oct 2019 03:08:20 GMT body: encoding: UTF-8 string: '' http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: post uri: "/sign-me-up" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoielhmR1o3cU1DeHlzQ3pfNFFnLURZQSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9zaWduLW1lLXVwIiwiandrIjp7ImUiOiJBUUFCIiwia3R5IjoiUlNBIiwibiI6IndsV2ZQcFJwUlRsbUs3anpHYjFRUzRCYnV5RU9zVU83ZlFGbFRMRFRIblVIWG5ld0I3VDFVTXpqNjNFZEJyLXdDQ0lJNEk3ZWptcVNRbmZZeHlObGlDNkIxVEUzTE1WZEFyZG8wSmdHMF9sLUlmSnpnT3pFWVdVRHlPWTY5Mnh4ajdsRVBTVzEzYUpFNTJSVHg2cDRyZmJYYXQ1UEV1bnk2VElxSmV6SVI4YmlCVjdmRG9KcEtSWVdvMElrT1V1MkpfZjJaVmxIZ05ucU5zWnVISEgtYThFNG5YZUM1ZUo4Nm5IbFdINVJFb2k1N1lhbm9ZOFpabU5LSGQxNU9RTEJ0UnZrNGwwTkp2cU5sd3VaX0g3NDVPTl9ET3VPYWZ5NGxucGpOaDJQMklpeWNaZWM4NHNxZ1l6WEt6MjlrMmlPNHVZel8zMG54OVN3bWphT3c1TF91USJ9fQ","payload":"eyJjb250YWN0IjpbIm1haWx0bzppbmZvQGV4YW1wbGUuY29tIl0sInRlcm1zT2ZTZXJ2aWNlQWdyZWVkIjp0cnVlfQ","signature":"V8BzJKt4lURIVcblFYT1w4Rx7CvIoM04NlJSNlXyQqmMUmhJk9BlyWD9J3hna25Wavpki6yMskLmtn7r72lIuuOcbCavAzLSit5ATtusuIg9KymQ0yjjupyaViUd0-xdhmkq8F39GazoCk1QMQpXCT7g_j58uUDIX3tuMcaCR0Rbv-ay0vKvjssdRr96K5CmWeWddqEjNxiLjMXOw5CBTKXe_lrsX-UhUtrsykGjDwbbWVu4IZGSpIPsQWery_Whr1AhZ-0zf6diPAYBJhGyPi7VAo4t6hHT-NQVsnX9G3wo4wmwGVQ-fFQSKzdU2PLk8Lre60nPBmvUKYpzJG7XZw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-account/68" Replay-Nonce: - bYhTDj52cvycxsqvSYlUYQ Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '550' body: encoding: UTF-8 string: |- { "status": "valid", "contact": [ "mailto:info@example.com" ], "orders": "/list-orderz/68", "key": { "kty": "RSA", "n": "wlWfPpRpRTlmK7jzGb1QS4BbuyEOsUO7fQFlTLDTHnUHXnewB7T1UMzj63EdBr-wCCII4I7ejmqSQnfYxyNliC6B1TE3LMVdArdo0JgG0_l-IfJzgOzEYWUDyOY692xxj7lEPSW13aJE52RTx6p4rfbXat5PEuny6TIqJezIR8biBV7fDoJpKRYWo0IkOUu2J_f2ZVlHgNnqNsZuHHH-a8E4nXeC5eJ86nHlWH5REoi57YanoY8ZZmNKHd15OQLBtRvk4l0NJvqNlwuZ_H745ON_DOuOafy4lnpjNh2P2IiycZec84sqgYzXKz29k2iO4uYz_30nx9SwmjaOw5L_uQ", "e": "AQAB" } } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT - request: method: post uri: "/order-plz" body: encoding: UTF-8 string: '{"protected":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiYlloVERqNTJjdnljeHNxdlNZbFVZUSIsInVybCI6Imh0dHBzOi8vMTkyLjE2OC41Ni45MzoxNDAwMC9vcmRlci1wbHoiLCJraWQiOiJodHRwczovLzE5Mi4xNjguNTYuOTM6MTQwMDAvbXktYWNjb3VudC82OCJ9","payload":"eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoiZXhhbXBsZS5jb20ifV19","signature":"SHqLSudSSQg_y-gYfZ1maiukI4hVThXgc5fWOqZAxwvfdcc0tTdNrwABeGQjL4def9JuHzCDDof2Pg43yhYpKZsUjfv41dKLTSB_Y3Q887cZeIw8wh6l4L44QTpp-trkLN4tC4ZpHpel8Y7yAsOB5-5Yx3QetA4TsSnxXJuVZx-2lJE8D5B81XFwszOJH-ngMnE3ap-WazG1R_DFu7VNl6UEUFH3wZW_YS-WTaE57pCpFBaJZ3CbaYITGRzrA0WmfMUI90vGwVFrhzrywFC191pIcXPqO_2dN8gwPC4yjVwyeMkWYPy7SqpWPPvX3ZfpoYptFPK5jnxodVNjsh7Wuw"}' headers: User-Agent: - Acme::Client v2.0.4 (https://github.com/unixcharles/acme-client) Content-Type: - application/jose+json Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - "*/*" response: status: code: 201 message: Created headers: Cache-Control: - public, max-age=0, no-cache Content-Type: - application/json; charset=utf-8 Link: - <>;rel="index" Location: - "/my-order/YkH7utCEsPA9QutahVZh5Osw9Sg72w0HxJG1nnN04IQ" Replay-Nonce: - QOwgE1D5hYw0laVP8Re8ig Date: - Thu, 10 Oct 2019 03:08:20 GMT Content-Length: - '382' body: encoding: UTF-8 string: |- { "status": "pending", "expires": "2019-10-11T03:08:20Z", "identifiers": [ { "type": "dns", "value": "example.com" } ], "finalize": "/finalize-order/YkH7utCEsPA9QutahVZh5Osw9Sg72w0HxJG1nnN04IQ", "authorizations": [ "/authZ/xtMqT6H0eM9s5PX4NJtzOx4DDBs1zO4wtbxLM-PkZy0" ] } http_version: recorded_at: Thu, 10 Oct 2019 03:08:20 GMT recorded_with: VCR 2.9.3 acme-client-2.0.18/spec/certificate_request_spec.rb000066400000000000000000000123571463311421000223110ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::CertificateRequest do let(:test_key) { generate_private_key } it 'reads the common name from the subject' do request = Acme::Client::CertificateRequest.new(private_key: test_key, subject: { common_name: 'example.org' }) expect(request.common_name).to eq('example.org') request = Acme::Client::CertificateRequest.new(private_key: test_key, subject: { 'CN' => 'example.org' }) expect(request.common_name).to eq('example.org') end it "doesn't modify the given subject" do subject = { common_name: 'example.org' } original = subject.dup Acme::Client::CertificateRequest.new(private_key: test_key, subject: subject) expect(subject).to eq(original) end it 'normalizes the subject to OpenSSL short names' do subject = Acme::Client::CertificateRequest::SUBJECT_KEYS.each_with_object({}) {|(key, _), hash| hash[key] = 'example' } request = Acme::Client::CertificateRequest.new(private_key: test_key, subject: subject) subject = Acme::Client::CertificateRequest::SUBJECT_KEYS.each_with_object({}) {|(_, short_name), hash| hash[short_name] = 'example' } expect(request.subject).to eq(subject) end it 'sets the subject common name from the parameter' do request = Acme::Client::CertificateRequest.new(common_name: 'example.org', private_key: test_key) expect(request.subject['CN']).to eq('example.org') end it 'adds the common name to the names' do request = Acme::Client::CertificateRequest.new(common_name: 'example.org', private_key: test_key) expect(request.names).to eq(%w(example.org)) end it 'picks a single domain as the common name' do request = Acme::Client::CertificateRequest.new(names: %w(example.org), private_key: test_key) expect(request.common_name).to eq('example.org') expect(request.subject['CN']).to eq('example.org') expect(request.names).to eq(%w(example.org)) end it 'picks the common name from the names' do request = Acme::Client::CertificateRequest.new(names: %w(example.org www.example.org), private_key: test_key) expect(request.common_name).to eq('example.org') expect(request.subject['CN']).to eq('example.org') expect(request.names).to eq(%w(example.org www.example.org)) end it 'expects a domain' do expect { Acme::Client::CertificateRequest.new(private_key: test_key) }.to raise_error(ArgumentError, /No common name/) end it 'disallows arbitrary subject keys' do expect { Acme::Client::CertificateRequest.new( common_name: 'example.org', private_key: test_key, subject: { :milk => 'yes', 'serialNumber' => 123 } ) }.to raise_error(ArgumentError, /Unexpected subject attributes/) end it 'checks consistency of given common names' do expect { Acme::Client::CertificateRequest.new( common_name: 'example.org', private_key: test_key, subject: { common_name: 'example.net' } ) }.to raise_error(ArgumentError, /Conflicting common name/) expect { Acme::Client::CertificateRequest.new( common_name: 'example.org', private_key: test_key, subject: { 'CN' => 'example.net' } ) }.to raise_error(ArgumentError, /Conflicting common name/) end it 'assigns the public key' do request = Acme::Client::CertificateRequest.new(common_name: 'example.org', private_key: test_key) expect(public_key_to_pem(request.csr.public_key)).to eq(public_key_to_pem(test_key)) expect(request.csr.verify(request.csr.public_key)).to be(true) end it 'adds the common name to the subject' do request = Acme::Client::CertificateRequest.new(common_name: 'example.org', private_key: test_key) subject = request.csr.subject.to_a.map { |name, value, _| [name, value] }.to_h expect(subject['CN']).to eq('example.org') end it 'adds other valid attributes to the subject' do subject_keys = Acme::Client::CertificateRequest::SUBJECT_KEYS subject = subject_keys.each_with_object({}) {|(_, short_name), hash| hash[short_name] = 'example' } request = Acme::Client::CertificateRequest.new(private_key: test_key, subject: subject) csr_subject = request.csr.subject.to_a.map { |name, value, _| [name, value] }.to_h expect(csr_subject).to eq(subject) end it 'creates a subjectAltName extension with multiple names' do request = Acme::Client::CertificateRequest.new(names: %w(example.org www.example.org), private_key: test_key) extension = request.csr.attributes.find { |attribute| asn1_dig(attribute).first.value == 'subjectAltName' } expect(extension).not_to be_nil value = asn1_dig(extension).last.value expect(value).to include('example.org') expect(value).to include('www.example.org') end it 'signs the request with the private key' do request = Acme::Client::CertificateRequest.new(common_name: 'example.org', private_key: test_key) expect(verify_csr(request.csr, test_key)).to be(true) end it 'supports ECDSA keys' do ec_key = OpenSSL::PKey::EC.generate('secp384r1') request = Acme::Client::CertificateRequest.new(common_name: 'example.org', private_key: ec_key) expect(request.csr.verify(ec_key)).to be(true) end end acme-client-2.0.18/spec/chain_identifier_spec.rb000066400000000000000000000006551463311421000215410ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::ChainIdentifier do let(:pem) { open('./spec/fixtures/certificate_chain.pem').read } let(:issuer_name) { 'Pebble Root CA' } subject { Acme::Client::ChainIdentifier.new(pem) } it 'matches certificate by name' do expect(subject).to be_a_match_name(issuer_name) end it 'fail non matching certificate name' do expect(subject).not_to be_a_match_name('foo') end end acme-client-2.0.18/spec/challenge_spec.rb000066400000000000000000000040701463311421000201720ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::Resources::Challenges do let(:private_key) { generate_private_key } let(:client) do client = Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client end let(:order) do client.new_order(identifiers: [{ type: 'dns', value: 'example.com' }]) end let(:authorization) { client.authorization(url: order.authorization_urls.first) } let(:http01) { authorization.http01 } context 'reload', vcr: { cassette_name: 'challenge_reload' } do it 'reload reload the challenge' do expect { http01.reload }.not_to raise_error expect(http01.url).not_to be_nil end end context 'key_authorization', vcr: { cassette_name: 'challenge_key_authorization' } do it 'returns a key authorization' do token, jwk_thumbprint = http01.key_authorization.split('.') expect(token).to eq(http01.token) expect(jwk_thumbprint).to be_a(String) end end context 'request_validation' do it 'successfully verify the challenge', vcr: { cassette_name: 'challenge_verify_success' } do serve_once(http01.file_content) do expect { expect(http01.request_validation).to be(true) }.to_not raise_error expect { retry_until(condition: lambda { http01.status != 'pending' }) do http01.reload end }.to_not raise_error expect(http01.status).to eq('valid') end end it 'fail to verify the challenge and return the status', vcr: { cassette_name: 'challenge_verify_failure' } do serve_once("#{http01.file_content}-oops") do expect { expect(http01.request_validation).to be(true) }.to_not raise_error expect { retry_until(condition: lambda { http01.status != 'pending' }) do http01.reload end }.to_not raise_error expect(http01.status).to eq('invalid') expect(http01.error).to_not be_empty end end end end acme-client-2.0.18/spec/client_spec.rb000066400000000000000000000373251463311421000175370ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client do let(:private_key) { generate_private_key } let(:csr) { Acme::Client::CertificateRequest.new(names: %w[example.com]) } let(:order) do client.new_order(identifiers: [{ type: 'dns', value: 'example.com' }]) end let(:unregistered_client) { Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) } let(:client) do client = Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client end context 'nonce' do it 'fetch a new nonce and add it to nonces', vcr: { cassette_name: 'get_nonce' } do expect { unregistered_client.get_nonce }.to change { unregistered_client.nonces.empty? }.from(true).to(false) end it 'raise when nonce fail', vcr: { cassette_name: 'nonce_fail' } do expect { unregistered_client.new_account(contact: 'mailto:info@example.com') }.to raise_error(Acme::Client::Error::BadNonce) end it 'retry on bad nonce with bad_nonce_retry option', vcr: { cassette_name: 'nonce_retry' } do client = Acme::Client.new(private_key: private_key, bad_nonce_retry: 10, directory: DIRECTORY_URL) client.nonces << 'invalid_nonce' client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) end it 'rescues a timeout error', vcr: { cassette_name: 'get_nonce' } do stub_request(:head, %r{/nonce-plz}) .to_raise(Faraday::ConnectionFailed.new('Connection error')) expect { unregistered_client.get_nonce }.to raise_error(Acme::Client::Error::Timeout) end end context 'meta', vcr: { cassette_name: 'client_meta' } do it { expect(client.meta).to be_a(Hash) } it { expect(client.terms_of_service).to be_a(String) } it { expect(client.external_account_required).to be_nil } end context 'account operation' do context 'new account' do it 'accept the terms of service', vcr: { cassette_name: 'new_account_agree_terms' } do account = unregistered_client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) expect(account.status).to eq('valid') end it 'refuse the terms of service', vcr: { cassette_name: 'new_account_refuse_terms' } do expect { unregistered_client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: false) }.to raise_error(Acme::Client::Error, 'Provided account did not agree to the terms of service') end let(:hmac_key) { 'ZzAJzgctYHnssCwf5swk1z1gC-bplzulO2fF3uwYUvyPsfug7OvSmp-xmZTy7uPqM1qP54gwj_CJM8sjpDJhfw' } let(:kid) { 'sl61UO7lKgS0VOSO2BnQ9A' } it 'use an invalid external account binding', vcr: { cassette_name: 'new_account_invalid_external_binding' } do expect { unregistered_client.new_account( contact: 'mailto:info@example.com', terms_of_service_agreed: true, external_account_binding: { kid: kid, hmac_key: hmac_key } ) }.to raise_error(Acme::Client::Error) end let(:hmac_key) { 'FEkpgzzQZUQ7qgBp3Ewa7VodVjFJMkX1l0aVXK2J_o3cQFZhuoDatKIymXJCl8v06Q0Wc56BASDtof2MZPT3gg' } let(:kid) { 'AfAr-z9i9WvdIz5hgdtKBA' } it 'use an valid external account binding', vcr: { cassette_name: 'new_account_valid_external_binding' } do account = unregistered_client.new_account( contact: 'mailto:info@example.com', terms_of_service_agreed: true, external_account_binding: { kid: kid, hmac_key: hmac_key } ) expect(account.status).to eq('valid') end it 'rescues a timeout error', vcr: { cassette_name: 'new_account_agree_terms' } do stub_request(:post, %r{/sign-me-up}) .to_raise(Faraday::ConnectionFailed.new('Connection error')) expect { unregistered_client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) }.to raise_error(Acme::Client::Error::Timeout) end end context 'account' do let(:kid) { client.kid } it 'load account when kid is known', vcr: { cassette_name: 'load_account_valid_kid' } do client = Acme::Client.new( private_key: private_key, directory: DIRECTORY_URL, kid: kid ) expect(client.account.status).to eq('valid') end it 'load account from private key if the kid is unknown', vcr: { cassette_name: 'load_account_unkown_kid' } do account = unregistered_client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client = Acme::Client.new( private_key: private_key, directory: DIRECTORY_URL ) expect(client.account.status).to eq('valid') expect(client.account.kid).to eq(account.kid) end end context 'account update' do it 'updates account contact information', vcr: { cassette_name: 'account_contact_update' } do expect( client.account.contact ).to eq(['mailto:info@example.com']) client.account_update(contact: 'mailto:updated@example.com') expect( client.account.contact ).to eq(['mailto:updated@example.com']) end end context 'account deactivate' do it 'updates account contact information', vcr: { cassette_name: 'account_contact_deactivate' } do deactivated_account = client.account_deactivate expect( deactivated_account.status ).to eq('deactivated') end end context 'account key change' do it 'changes the key', vcr: { cassette_name: 'account_key_change' } do client.account_key_change(new_private_key: generate_private_key) expect(client.account.status).to eq('valid') end end end context 'order operation' do context 'new order' do it 'creates a new order', vcr: { cassette_name: 'new_order' } do order = client.new_order(identifiers: [{ type: 'dns', value: 'example.com' }]) expect(order).to be_a(Acme::Client::Resources::Order) end it 'creates a new order', vcr: { cassette_name: 'simpler_identifiers_order' } do order = client.new_order(identifiers: 'example.com') expect(order).to be_a(Acme::Client::Resources::Order) end end context 'order' do let(:order_url) { order.url } it 'fetch orders from a url', vcr: { cassette_name: 'fetch_order' } do order = client.order(url: order_url) expect(order).to be_a(Acme::Client::Resources::Order) end it 'fail to fetch order from an invalid url', vcr: { cassette_name: 'fail_fetch_order' } do expect { client.order(url: "#{order_url}err") }.to raise_error(Acme::Client::Error::NotFound) end end context 'authorization' do it 'fetch authorization from a url', vcr: { cassette_name: 'fetch_authorization' } do authorization = client.authorization(url: order.authorization_urls.first) expect(authorization).to be_a(Acme::Client::Resources::Authorization) end end context 'deactivate_authorization' do it 'fetch authorization from a url', vcr: { cassette_name: 'deactivate_authorization' } do authorization = client.authorization(url: order.authorization_urls.first) authorization = client.deactivate_authorization(url: authorization.url) expect(authorization).to be_a(Acme::Client::Resources::Authorization) expect(authorization.status).to eq('deactivated') end end context 'challenges' do it 'fetch challenges from a url', vcr: { cassette_name: 'fetch_challenge' } do authorization = client.authorization(url: order.authorization_urls.first) challenge = client.challenge(url: authorization.http01.url) expect(challenge).to be_kind_of(Acme::Client::Resources::Challenges::Base) end end context 'request_challenge_validation' do it 'request verification from a url', vcr: { cassette_name: 'request_validation' } do authorization = client.authorization(url: order.authorization_urls.first) challenge = client.challenge(url: authorization.http01.url) challenge = client.request_challenge_validation(url: challenge.url) expect(challenge).to be_kind_of(Acme::Client::Resources::Challenges::Base) expect(challenge.status).to eq('pending') end it 'request verification from a url', vcr: { cassette_name: 'request_validation' } do authorization = client.authorization(url: order.authorization_urls.first) challenge = client.challenge(url: authorization.http01.url) challenge = client.request_challenge_validation(url: challenge.url) expect(challenge).to be_kind_of(Acme::Client::Resources::Challenges::Base) expect(challenge.status).to eq('pending') end end context 'finalize' do let(:order_url) { order.url } let(:finalize_url) { order.finalize_url } let(:authorization) { client.authorization(url: order.authorization_urls.first) } it 'finalize an order raise on csr mismatch', vcr: { cassette_name: 'finalize_csr_mismatch' } do expect { client.finalize(url: finalize_url, csr: csr) }.to raise_error(Acme::Client::Error::Unauthorized) end it 'finalize an order raise on incomplete authorization', vcr: { cassette_name: 'finalize_incomplete_challenge' } do expect { client.finalize(url: finalize_url, csr: csr) }.to raise_error(Acme::Client::Error::Unauthorized) end it 'finalize an order successfully when authorization challenges are completed', vcr: { cassette_name: 'finalize_succeed' } do challenge = authorization.http01 serve_once(challenge.file_content) do client.request_challenge_validation(url: challenge.url) end order = client.finalize(url: finalize_url, csr: csr) finalized_order = client.order(url: order.url) expect(finalized_order.certificate_url).not_to be_nil end end context 'certificate' do let(:finalize_url) { order.finalize_url } let(:authorization) { client.authorization(url: order.authorization_urls.first) } let(:challenge) { authorization.http01 } it 'download a certificate', vcr: { cassette_name: 'certificate_download' } do serve_once(challenge.file_content) do client.request_challenge_validation(url: challenge.url) end order = client.finalize(url: finalize_url, csr: csr) finalized_order = client.order(url: order.url) certificate = client.certificate(url: finalized_order.certificate_url) expect { OpenSSL::X509::Certificate.new(certificate) }.not_to raise_error end context 'preferred chain' do context 'without alternates link' do it 'download a certificate with a preferred match', vcr: { cassette_name: 'certificate_download' } do serve_once(challenge.file_content) do client.request_challenge_validation(url: challenge.url) end order = client.finalize(url: finalize_url, csr: csr) finalized_order = client.order(url: order.url) certificate = client.certificate(url: finalized_order.certificate_url, force_chain: 'Pebble Root CA') expect { OpenSSL::X509::Certificate.new(certificate) }.not_to raise_error end it 'download a certificate and fail preferred match', vcr: { cassette_name: 'certificate_download' } do serve_once(challenge.file_content) do client.request_challenge_validation(url: challenge.url) end order = client.finalize(url: finalize_url, csr: csr) finalized_order = client.order(url: order.url) expect { client.certificate(url: finalized_order.certificate_url, force_chain: 'foobar') }.to raise_error(Acme::Client::Error::ForcedChainNotFound) end end context 'with alternates link' do it 'download a certificate with a preferred match', vcr: { cassette_name: 'certificate_download_with_alternative' } do serve_once(challenge.file_content) do client.request_challenge_validation(url: challenge.url) end order = client.finalize(url: finalize_url, csr: csr) finalized_order = client.order(url: order.url) certificate = client.certificate(url: finalized_order.certificate_url, force_chain: 'Pebble Root CA 769220') expect { OpenSSL::X509::Certificate.new(certificate) }.not_to raise_error expect(OpenSSL::X509::Certificate.new(certificate).issuer.to_s).to eq('/CN=Pebble Intermediate CA 7c13ed') end it 'download a certificate and fail preferred match', vcr: { cassette_name: 'certificate_download_with_alternative' } do serve_once(challenge.file_content) do client.request_challenge_validation(url: challenge.url) end order = client.finalize(url: finalize_url, csr: csr) finalized_order = client.order(url: order.url) expect { client.certificate(url: finalized_order.certificate_url, force_chain: 'foobar') }.to raise_error(Acme::Client::Error::ForcedChainNotFound) end end end end context 'revoke' do let(:finalize_url) { order.finalize_url } let(:authorization) { client.authorization(url: order.authorization_urls.first) } let(:challenge) { authorization.http01 } let(:certificate) do serve_once(challenge.file_content) do client.request_challenge_validation(url: challenge.url) end order = client.finalize(url: finalize_url, csr: csr) finalized_order = client.order(url: order.url) client.certificate(url: finalized_order.certificate_url) end # TODO: find a way to record fixtures for this, unsupported by pebble at the moment. xit 'revoke a PEM string certificate', vcr: { cassette_name: 'revoke_pem_sucess' } do serve_once(challenge.file_content) do client.request_challenge_validation(url: challenge.url) end order = client.finalize(url: finalize_url, csr: csr) finalized_order = client.order(url: order.url) certificate = client.certificate(url: finalized_order.certificate_url) client.revoke(certificate: certificate) end end end context 'prepare_order_identifiers' do it 'accepts a single dns string' do expect(unregistered_client.send(:prepare_order_identifiers, 'example.com')) .to eq([{ type: 'dns', value: 'example.com' }]) end it 'accepts an array of dns strings' do expect(unregistered_client.send(:prepare_order_identifiers, %w(example.com foo.example.com))) .to eq([{ type: 'dns', value: 'example.com' }, { type: 'dns', value: 'foo.example.com' }]) end it 'accepts a single identifier hash' do expect(unregistered_client.send(:prepare_order_identifiers, type: 'ip', value: '192.168.1.1')) .to eq([{ type: 'ip', value: '192.168.1.1' }]) end it 'accepts an array of identifier hashes' do identifiers = [{ type: 'ip', value: '192.168.1.1' }, { type: 'dns', value: 'example.com' }] expect(unregistered_client.send(:prepare_order_identifiers, identifiers)) .to eq([{ type: 'ip', value: '192.168.1.1' }, { type: 'dns', value: 'example.com' }]) end it 'accepts a combination of dns strings and identifier hashes' do expect(unregistered_client.send(:prepare_order_identifiers, [{ type: 'ip', value: '192.168.1.1' }, 'example.com'])) .to eq([{ type: 'ip', value: '192.168.1.1' }, { type: 'dns', value: 'example.com' }]) end end end acme-client-2.0.18/spec/directory_spec.rb000066400000000000000000000024461463311421000202610ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::Resources::Directory do let(:private_key) { generate_private_key } let(:client) do client = Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client end let(:directory) { client.directory } context 'endpoint_for', vcr: { cassette_name: 'directory_endpoint_for' } do it { expect(directory.endpoint_for(:new_nonce)).to be_a_kind_of(URI) } it { expect(directory.endpoint_for(:new_account)).to be_a_kind_of(URI) } it { expect(directory.endpoint_for(:new_order)).to be_a_kind_of(URI) } it { expect(directory.endpoint_for(:revoke_certificate)).to be_a_kind_of(URI) } it { expect(directory.endpoint_for(:key_change)).to be_a_kind_of(URI) } context 'when rate limited', vcr: { cassette_name: 'directory_ratelimit' } do it do expect { directory.endpoint_for(:new_order) }.to raise_error(Acme::Client::Error::RateLimited) end end end context 'meta', vcr: { cassette_name: 'directory_meta' } do it { expect(directory.meta).to be_a(Hash) } it { expect(directory.terms_of_service).to be_a(String) } it { expect(directory.external_account_required).to be false } end end acme-client-2.0.18/spec/dns01_spec.rb000066400000000000000000000011641463311421000171760ustar00rootroot00000000000000# frozen_string_literal: true require 'spec_helper' describe Acme::Client::Resources::Challenges::DNS01 do let(:private_key) { generate_private_key } let(:client) do Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) end let(:attributes) do { status: 'pending', url: 'https://example.com/foo/bar', token: 'example_token' } end let(:dns01) do Acme::Client::Resources::Challenges::DNS01.new(client, **attributes) end it { expect(dns01.record_name).to eq('_acme-challenge') } it { expect(dns01.record_type).to eq('TXT') } it { expect(dns01.record_content).to be_a(String) } end acme-client-2.0.18/spec/fixtures/000077500000000000000000000000001463311421000165615ustar00rootroot00000000000000acme-client-2.0.18/spec/fixtures/certificate_chain.pem000066400000000000000000000045741463311421000227220ustar00rootroot00000000000000-----BEGIN CERTIFICATE----- MIIDWTCCAkGgAwIBAgIIa2EsI7kDF8kwDQYJKoZIhvcNAQELBQAwKDEmMCQGA1UE AxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA2Nzk0NDAwHhcNMTkxMDEwMDMwODEx WhcNMjQxMDEwMDMwODExWjAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBALvgcRqd814+yUb/7ZOHchX0xuiBiH89 YhDiBAEFuW5gOxYXAAVY1b9qAdrHnPEBtvEGqlvMnvDP7hkar7JA69rT6kbt9Psz 2gARJKrprx3d3Oep8IzS1HFEIqaYddkDoFdSwNpKIy43qmJGpF+ADMwkkmQ0+ICC Ri3rlidFlW41UT/cIDMbZqgtN51PFW0RAA1OI5NHKCtWCqsI/a7lLAT4u6u0hIK7 zUVr/fPKeT4pkkusVyklEETSW1y+SwLeflOn7SPEBMPTizKr44Et0l4PXva+lfvw gLbiDg6xqgPwmiq3yt7BzHx/aR/Kc9jwtsImCthleDydDNEoO5WhaqECAwEAAaOB mDCBlTAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUF BwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFDDuGNC3NaAvNCEXcSEBbLaz/NDg MB8GA1UdIwQYMBaAFIiN1hLypsnm8KWVi3ItK0Unjae0MBYGA1UdEQQPMA2CC2V4 YW1wbGUuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQBmqbvbeCWhmTJrtt+q5Zlz5C9z ftpuUIMhAo8iTCOlXASlQ1G/6JmUv1SY/tp93rGIzFPU/wYKZsbw/qzu4eTmS6DZ q3U1cvb2zjUH7aRAl7etu1H0KVQG4gDw961zM4eUuHSybIgp1FKo+J6X3hHHVM6u sUAgYvLyyrVYpZxMKP/UCvbA4hZ/sbLJGfI2wzU/FKQjt41W3b+zpEEw8VcFkOfs eQ5YeUVIHAZ3HFNz0QB/2RTmKLtjZ7UpnmxZUeVMlJXKrYjhAcCBR8vb72BDdaWk fA/1pSyT7mbXyuxDJCvrwzzdHWw7PL2wzaCbultcuDn4oT15Hih28HjorEtU -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTjCCAjagAwIBAgIIH8F+H5a3JeIwDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UE AxMVUGViYmxlIFJvb3QgQ0EgM2E1OTY4MB4XDTE5MTAxMDAzMDU0MloXDTQ5MTAx MDAzMDU0MlowKDEmMCQGA1UEAxMdUGViYmxlIEludGVybWVkaWF0ZSBDQSA2Nzk0 NDAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1TkMbn1tCv0QXFen5 Was596VScGyD0ifqoq4/kb4WQ/debH8coZzz9pVKTPbZySY/X1ltStYBI/2GdIZg t/uw9hOW7ko2Agy4bcd6tD9S+eZK4F3rH1EJutUjuq9WLmmckT8PJEbToazvDTL2 v9YGcf56v0SCuCYQshNlx5ECKb7kWWqy5D6OzJPB24BRFX7MTD8ckkdhQmzafyI7 vVkDrHFUZslx1BUQ6lfJEy0mi/UmTgxrjPwTfe5UWF6N3AZDEUng8eWAnKW9px2g 5qTUShGMZG6E6OkFHX6rmT3MVuO+rWVpyW1zKbWxvlcAyyBR91Ju6tsJFF/1Y9t+ +XHPAgMBAAGjgYMwgYAwDgYDVR0PAQH/BAQDAgKEMB0GA1UdJQQWMBQGCCsGAQUF BwMBBggrBgEFBQcDAjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSIjdYS8qbJ 5vCllYtyLStFJ42ntDAfBgNVHSMEGDAWgBQECikuQVoCg4iOTz+f+0K8SqRdsDAN BgkqhkiG9w0BAQsFAAOCAQEAeyRyz24bmQqWGYXkM02ZWHlom1FNXVtfNOlzgzjC 8sUbFYJDaXefS7x1KJwGparNWmn0jopBrSjOJLCDDphqk1DcS2YPu+7CcyodXyGw CxRSe7gYGx6I0Z/wReeb5rscJ21kJK30Tt3z2hLXWBkxfdcHit3JNLn3HA5HQRph HUr3EUzoFHfNCBecY8lWkmLeN39I0MMCis49DTact6M1jT+q1c+MzjuWO+Bst6mr 6RebdTn4monMOHvmbaVR7+klY05dMjatBF5gV7sf8mPJwUZP5NnEcTLe6zgb+dh4 kDc7qJ6UvkuoDJmbHeSd27GdCJfK+nwc49UG/Fmd8+Zeyg== -----END CERTIFICATE----- acme-client-2.0.18/spec/fixtures/keystash.yml000066400000000000000000006310021463311421000211410ustar00rootroot00000000000000--- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIE2w/OEtui5G5wwM90rvZsnhK6+tnipwvIIhU5zAW9RyoAoGCCqGSM49 AwEHoUQDQgAE6DyElKFyz75vkbWAgrKKV2bmb7TwUYMNdSw+JLaD/VMGM/x/x4jN Kzk1Jqjr2x1HKNYEBheJ7MWiKGfSrZBqIw== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEA0UKSsnAbGLpk2xFjTfBrb+/Ddwd1PPswWk3x9Wv/yEF7blU7 VsBNbKNUpzgDhbtFWRaXIdtDBxTF4kDLD+XMiX3Iwy/m2L2VbSdouk16mABIjOCn kItV9xJxRYcup8H4fr3GkmR8ajnOtllC3hKrmZxYGk3PdDXChdGgcutxrIes2xBb dv9JJT61wlB5RDRBaTB+4xbC75elN6+Ldrrg/9j8ppO1D5ee0BROGkkXngBcU6IY GaGYew4EWYDQakpS1/UGzt5c4g3mA4y5ZNVZXC1qhkSuhFOAn3iExT+tJmIcE0AG MaUDu+SOL5lX12BKMVgU87MQHV1yTOHOrsRFeQIDAQABAoIBAFRQG/YsSCai9z7y 1w2QmGEt/BYJ2blbxeQksp/9Rz5C7/4I9lMiQS/L8TA81+J6jVrzSKp6AxwnyQE7 tPVvVAVzuj+2na7nV/z2W3JxBDuZJaIpZCpPka/ubNgkOu6Zr0s1oHvcY+qS5xA+ j7wVTrGiNjdG8ZazkHBFgX28En1+JGif3Em1a0SPu2Ez6vHkbEFL60vibr01F32G bCDTeFMgGubmHHJdF3eZBqdS5ZYuU1whB0q5G3llv03euFnEFlNZMVJquro1yUz3 w0Y9ZogYloyqziq842xBmwpvIZcQ/u1wBH1IunjSSKego2oXs6rDa6m3Lr4zdfz0 TQtlcycCgYEA6ZjqtyTretTVpSrIna0+yywDbGOxxr6CA2UFiu188eYbpPsD5DH4 HsVXWJqk3OK58BDTKUkkoaLx6VOZmGcO8lKM0qbPxyYyIx80V2Hcrrc2vr2gwsiO 39s8T0ncfqxrvfc4tjXOnLVtmkxYvb7rIbuqfXvZWdoGHZjriVlX7/sCgYEA5VQl 4BqWGLkYsvfqPZ3+aeogn39/t7548f1DuAjsaF5wT5vYnKYiNYjPsma8Fa+292EM R0dETNkYtdrpJB+iR0G3e4eV7gp1yipiw4h4GCiYd/ix2qVMq7rpyM+XXApviQAm uYtVz50n15WLY2xo8dpsHNmXcUoZ9IUr3o96AhsCgYAI3ybi58MNujGXAUX3PxIo czZ6Els5Ghkj+d05BoX9Rej83g+qxf8PZB1KHy1tuiqnpGvwoHeEsASSAPvPXvKh X2M7yNwRSzESRmgdfXj9JbYtjlQhsa5DcDcdJ8f5A6Ff6Ji9ytNa/kT4XDfulOan NFJoS6DYmcArtZgUclE1qwKBgEx7iPo5w69RJASkHBIavDvUoravDghY1PtXzRr2 lumj/W7/efmcirIyA5rrGnVdGfdc/XxUL1o12UDlVnX+ut9q8meXa5BtGqWnBzNR M0RTXa49Wguir3RirQ+U9FT1Age97ixZZPAN6LjEni01fbaTcxUYGKLm5MshEuVy Em3bAoGAEbIqXGYWvqiYx7mzSpIKZ9NNACV+mgyMMM6QgRp/t5OoIlTI6tTcdSzn xjFlzDaHToxzzKf6tSYaub9FbJAFWvZByowKjqBP9IE4lPpQakNn/sUD7MKEQcf6 F1/U8eFUEewFTh9I/E2Wwhkdw9ygsuQG1U4PoUsbEhWi0/uFCR4= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA2y3xuNYFi2vmfZ/L1OS/O4W7RZ8Grzc8nhtKCTeBexx28bRM 4Z0P27otPLCh4ZI+Q6uG+5FJcYlKL6Jd4G8naLUK7T8oPDL0JRB0fQbUktaZEpwH C15xqWTLH9K1DnmLShJNo5633Hn5T3XbEs2Z/YocYFWNFQrxF/OFfN9CWsPAHrh3 VfsSNguLWStlUIN/iksK7A9lLtPzuhrQoGiMgf//OglcwREAqLiQ8ZTz5abVrOGK Fp27wJf+xa2BF7D5pLNFusfq4oIWH0TxnZgaGEIH40HSUrQEnlwquP/dyYVOQNiL gUjRsq6cBcpIogc34IBz+anC5GQDuRPPgmCw4QIDAQABAoIBAB8wqRLau1xCpRYL HOMKuvSZ9x3qX6BPNdGcDuDuj1ROfICwiIucobVCMmN4u/imf996XnxDNGvd6SWL 2gcbr5nUwEglsjCVjFe6lpEfh+BDffH/gSMgNAAykeimlVGzgIZbF3BUIFRViTcX uEQIkm7ZmL3UFCkX7wTaXeHOFZpmYxoAj1KU0VjpUQWW+5tJcWFzgeMGVAGD0p0m j6cEgU9hp9g4u9c+NRZ1JVuBOEQFtlw6SS3O/KskHPci7UF74hSyo4wAyPhJbTyP RpQU9Ak2J79AzMGeuot3S3HlpfkhDTE80fCNSQWaIOF2d6x35J162dV+JxFx0LI7 wAKTlEcCgYEA6oD6kiLfkXkjD2DVcdY5lBSrb0WdboK8yJ05GJcyfBvnkO46KiYj bWflfKN+im0vkteF5bdcHcVOkfr48rIeXBtdT9uBWb2VcquAV3epZE0kDG0SHlCf YG9aIOhxOZx+KSN9MERouFYUzC53DFYSkHcFusvgdwCJOk81D1h+cxsCgYEA70Va ozrMcymQJgcc2Imgji8TjPWLacJaMBF2Yeftwdv88DpTjIyWvi4QwAHx1km+GkmR Dp0Fyo5p7VA5LXch0YPFbT8uIN0yWvnzX1+MZDMLnp2hVKn6EMhmqFAV8IrXSppb jrIXytmD9mHrApJk67Sms+rZyGmoFVoHUIWA77MCgYBOq4pkMDLUeNEcPZ4dnIKg fPauU6pnApEWtDgNWdvj6vCanHEC5tyHvY0tbSPsiIinOIqA8CyFCEY9jvapZLvu pnd9bOROGN3kJEjgDxLSxVZMnOKxLNbq4TBZTeF+NFPWtUMwSCLhhG9huEzT5KRB tsxDSFY7VgCzgRMJ3OQ+9QKBgQDnWw8179/KpvCr5Iq+0ey+LsTfsnk4LOXZvrjS GFlr7pPXkP5CU5paj95AWmEFy84WSvYIxEnaPvQrtDtlO+EmXhyi8slem6NaFn99 w7zTEgx1NYPOgoC6g5vHuZBNQ2LCzxgilQ+uY75WmP2NQhJ1Wvsp0rb8MzWEV8Xk 1QIEQwKBgHdplGgWu9joGqycsJTxWv1ELy4WqkOtpw+/gwv/Z4sDdmmLk4gvgTZm 4e5D3wFM1A11vSWGDu+czru54p5pcDJvB/2xQ+pvwtyL6mAokwq5HPpsJ3YfqnpN WuyPSKMKVmuyV5SFoL71HXRcA5bYHuWuhght4RQqdb40iVzWpu/p -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCX+v2kn4NUyyrUTlOFLX6qw+QTNZIzRS1ZEjFbhfyg+fILZIVmc6PL Y42LOk4+erugBwYFK4EEACKhZANiAAQmc3kJ1bNqlAJqe6C6kzKh8SEXiezb0+YU 2RWp9/8vrCNSwMyl+PRzdqQX6ZKDEYIQf6fKr/nU+kcaZ4JNIg4nFQ+2RUsGp1hB fem3cPyxo/fgh6kXyFMXmzDxTjZ0mIA= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA2s4bZZ3L9rnpxsQ10hSxM0JxkTJ0doUSlYZzRu4SNYL62rgS wmyVvlZRWr3WxKAEGvcdQHrYaQkn9sqjnnuUrXaSNxjryhvuhGF8Esm2Pzecjd9q hNj0GJaokjpgkrzAwrT29By8m7BMabS0skNiskHp38A9bSxoYgffEEvxudLOp6ml jYGt1bzvX8+w+LyoVzDvsfuZjTXNqq9upnfEmD99It1N0wUXR+QDQSegDCgn3hnJ Pd+NUb6+JdYx+VHuU3okGA+fFMYDBn33vhwhi9424lTRwPbMCFbenz9XFK9c+Ir9 q++E1US214CM9zBFhTpsnwXwuh/N80ALSt7I7QIDAQABAoIBAAarCdQ0tSLRgyGa 2K4MkeLnRzk+0aRMBWc3p/s1JapqUbVJL08sCns4u7V5fBpVaxKcTdCpfb9jt0tS 3R4nE36e0rFpqcPoyoHPy71x1sNB8Vw0fxVJ3FSEgOIl88v9Ax3b8Hu7hXb0Ljv5 dRlKqu8WSaeXPvf9BrhYF5DyU41PZCwqjeYpgs2m+bizmrh2pDzT2Vq4SCbwuTjq 06yOryE52xlxgny53g+o5qfJ6O/US1Vh1/8foE68EbuNrp5WFHiyalWSCsr7+Nvw BEKb9M3AptmUIophCTFPz/hYDAHbNiKeF4SMlV0IxZwD56juO0fafG3yb9Zdi4kg jN2tZpECgYEA9SS4x6x8tRBuQNI6xzTXWohMYdfriaR23HaPAUkuTbLiIMbZa7NZ EonYgl1GcsHfQZB9FwRJAze+NISc2qRs684GdjmPr8veyyzLlyvFmQeg7iAa6Mm3 I0WIdxPFi0JjBoI2XWVLT29YLDmDmJmYXQOO8lMAi1JhExfCR+ETFf0CgYEA5H7H M3kUfEpqKOgYsDSUjyZk3gRoU/E4sFQRe6OLtSMVWR3eJO/6GunSbLXKt5f+ePI7 VG+ppYRfQ5kIGXPCdX3vnyF0pAKIUuAGf+UEGFXozY1CYux42UNdzCzY9D3PXfNO KvoC2I0pHk2vEKZIggz+yb4lqPq/B+7uVcLoebECgYEAkLHzK1Chb1JacYJlVU3Y S0SmKR6ElYLw8aI9OJoUbaJHnOciUFLVIX8hv5kEyxmqCI4bd6l82xxc9azM1LU2 4VyDLec965rfT3eKWBlrEa+SCtwCZiMiKPyS1w5hjJhL0Pys0CXI9QMYvUnZZgpL B6PhDSF28cVXLSjZ8Qll9ZUCgYBgOV+MNq5A1Vm1lmBnPA1f52xM7xA8YXZdE1o1 dh8sjfS8jc5yQblSwitCaqBPBqw8pM4Fdey8bm1r2zNE/LHkpr9VhVJIi2R7eipi i8BYuz0J6zYM0Mbnv+3tQOmwmaMNTpwZjyXJqlCpmU9jNJOOaQiXTwMvEUGHhsBJ z4X1UQKBgQDqfLiNnG309cKvTzwe99Ze5jWT0fgGqbWBgt+9XDhRSVq9JTKIC355 x8RgjrDA/t03BBzBpiJ3nf7y3eV+Pm8BybTzmCbVfgmFE4gjrEUTGQ3HiJ+lZ0Sy 2uwOmKXt8307yR9AKUHVI8pjaHHFTYFv4ygjRLAqen3tlg/n3bCUDg== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDDRRJpR85ME40b9jDqFmj4XcyAQG9kYXKS2h4fbiMK54eA+eOz+36JH bzayug+dirCgBwYFK4EEACKhZANiAATW1c0MxDomiXJ8HgqaoY0jwv+eCsoiyqkj VRrw739jloTOJ8O80RPD8zP07zTfANehpuxvU4YEcHbeWHqCId4qKlC4jMg1Q8o+ xi0LYHXBc3mHuihvXzKjGiUl7Bk0rxY= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAleHPU/5Gp+dgtoBqxhUr2M+PJcmeTHJ0iToecjFsq0tC04L5 s4emL+UCRVY03IvgLPesK4bwIZ9HiGOBI8C95qzF0OV/dDNKWWCMqHd80OY2tLMQ 8hK0HLQj4GzqKe6suJFlvp4L5GDb0UDt5OeVgLLY+qUNTQEtmWgnXF4U5vucu+T3 At0CN1j5lt+23QG1RZq6mUF4+P5YnBNByyvzF/2pd2xc+NjAR4+0xUVFjQ28hPk8 1gBjMs0M9tqV4Zj9/J2DH8duhmebNnEpa5JVUmoNE/x3k/ro89f+i6gPD8zOtFVo nHDKYUuPD0g5FSA0u8RaKddQSWnaeYBKUI2YPwIDAQABAoIBAAKWEQ3vIx345pjP kh1qi8VOc4xgibw3n14neWiur07XWhxXNA15J5DHqqiH9RqMc/5NTxRjMYKLAot5 GBHbXLYoa14QOl5GwkoqLyh7A1WBcME2c8eRiLe+vf28iLUs2qBxVdLvsYnWcq84 0myy4vKuY1hpKlfBT52dh/cBN+rHtug/RA//ExdZeSGM9bCYV2ub0laVgsiKTtyJ vyuCNNzbzmOf0p+veD5x5zT3UWTowESbJ46N/2JUUFKbYzfla3Q3BP2rcyloJyT0 Qp1VMKDLg7yu+qnwpwwOghSQ5YJSAzzbRPbHqZHHpftz/VQSFi9Tu/g/iVheolfh h89/Nw0CgYEAvVSNmn9YwLeyutw3w4hsnEkQ8v18+XvFTtVQh1QIC49bWxJ0atZv qqlk/OY3SLbg3TDRbc6qYGDlpeJYhLHkNYnC0iG/Xpr+XBYz0v4jZtTINli9lmW4 fADBQ41dZQ15B4GBkcWb3wYu1mlUGwuGWvmfbhrISYC7xgZsTQavhzMCgYEAyqkk NFjZsfO7HUHJD52fBGWjQnrJqMrQNT0iQInrkINQQyD348HgEGSE+PKrNCKyeRMD SWDbjWecUpxKHWwUw9pRFIULO2Er7FvzVTyd6ie5yk+grGBoKKXq+FN0Q3wKTdmO V8pG0s561jSxkqXv0V0yP8lLQriJPqDpRenDOsUCgYBOPYHjJds8kO1ocRcOU/Nm Rn+dmwmpY++u21JTCnPkqxJ6uU6o1AMDiMs2A8E26HRWlBUIBs67028ztS0VcRo4 0bxT8CRQaUbSMU6rU+C3Xxl59AQtAc5SWFGFpAbDeuTYKDmuTvZSHREABDkAkCuu rtemvaSlU3DFrePVlPy2pwKBgQCKsKoYMN36TGQ3J3gjeakDZ1MNAd7T5sgKRyYT qM9O/K6G4h8C/QEL9t6RR/EmIsCk3wAWzXQzFz8BwfdunzKuvc9TDaGcJ2nZvSuP n4YqYrlg3JGGpgtiFfnxq5sbO94JXONu7Pz+81NZGIKVa33td6wVvvoEVSmHdLNv pwR2SQKBgQCtnowHpXIDkz5llpdw00D+0x6nKHOJr6QyPZMuxTxwmE4sOVGvkOoB VfUSEiDGV2SB5nmSZK97tIaxSkWfaA68Fsb+762Hpee9MeDfJ578X+eFluuzZ4Eh Yx4/JQ5rNjVH/j/ndwdjFn7bKErvDL1lsf1u5i1c0lsrHBZqb7AOQQ== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDDg2zqmUgzNLcvJMj0hxnls1vK5enBzviGDGiKQjPakmn8ysB36NEUE jKPI8knzTiqgBwYFK4EEACKhZANiAATr38toFtVqBX2ci7pyJlvGUdA5r1fT14PA kdOy9Mu58QpyihO9VilnsEE3Aq2SVyfHRJk438zCcGBnLTYNa6Fo92RnMEfbQ/0D HYHsG7qLcDM7Iw6Y0HfcgMnXYcqPZHA= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIO3/c9Jf+6BCVKi1Yfp08/xYBesAPqWrLBH1bHKax0HVoAoGCCqGSM49 AwEHoUQDQgAEnpwhniK94iE7JKLCHTSmITHmSWxSNb/Ak3FR+1pZ28G3Psm4FABr Se6N5eO06Bax3SXF9x5faeXZ5znYTLXnjw== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAmUngAm5tFUpUJD8/XpkW1uiLk1HVTUZqCYPLlri1MYVD+Kaa dm5qacBQ9EXEB8wzv5QfbS78vAq5OIJB9qBMe2xcUzwkuFF6xuQ35++ZcoA8tbtj gmWOVQpIQmfoAF9mKRhQ5+o2kmJ8CAwtLZEB7sn5i/a+oYsJP8UgXVfRnqvAhlGk 8X52lkiiY+TtKCWSNDd7gdFZdb62xhreRmla4p2BO72ecY/otY5c9jbKf1GaiTK9 Kx4CIIQdAAucZiHNZY3ijXzqrG2D52u83vWzeHMriA8+2ArTe29qbGLen61VDte9 OwK49/VFY4o7ge+J+zJ6h9c7jwFy9WwGdJDmCwIDAQABAoIBAANGe9MxeYKMnbL5 6FMPdwMijDuanQcoq61bs+bwOBbrH7euv6WA2Hnn/RLVxsmFMySIeAoaM0DwAw3S YrHFXRJUuhL2jwZNNLq5N6SXZFz49n3KQjxlX8mGDbiK2yne3/edfbpm28Gm+brQ 9R+AdgfHKF41kynafFkbei85vXs5bHgkHrUGzYdg/gEVe1dtoKIkz+5huOw3pO5x 9kyzmrMtCQNGKZH3ecgk0Dphbs46/oSyNmXHfAHKpEjACD0j12DJ0HyzyM9ikRqV zP3e/mRpKqVn9VDWolXaYPk7HBivPHolMEaceJLSL7bt/l8JXbpJwQixS7qcZCyr cN9IH2kCgYEAxPhW16RlKLXo6wUUzk+v4iPZDqrr1ZXtFFPbLygk1UUyoLgKiF0l 6Vd+iZSu1//56XOD8XSRoUWpCMFi8ozFhS8Gjt/YPARzKRdGeVfv2bkDCxmbK4uU qRzfTHRCTHmsHXTitWSvv3cSAGpX2OHfsSSmcw/fS3mn4ulLZ3yEkW8CgYEAxzpD 5OsUFXnH+M3Av0+4hnw1Vt3I8MgCqY9GT991UhoF3lM4z/pDaK07saWZhjYhvygy OLuBgnExWm86u8tUglrAYBN7VWmCN776gHbggirE8RmUDsP4TAo3XL7kLrxHFVhy +SB4ih3YwEpbxJuZu0kVQ2kpSAinHWl+XcFTryUCgYBsAUCdPie6CwWM2VxvRILN HZsHz/FBTNSTMOgfE4Qe7bK1LjWYUHtZWACqsDyvdE01FYJkA+dW5zuo8WGwXkBw pziRX2zSfB4pifm6z91VJX3luES9u+voT0yiP52bEZyvCkjF7k/wTPoyAB3rbu+Z 0t7yeOGYIT1Nz17pf/2xQQKBgGR83wH4EIlEg7jbDv1wGIK846qM821/dNhRjAV9 kI940Lzy/RTqBlYmCpXwER/A7gSdIbe72/cPYPVcZSOTy2x0mdPb/7l1Hlk/2tox G8yMBgoV/Lf14Kd5/7KoFi/8h14c3uEJn8MKiulymBby5PeyRSdbQ5cxxhjvvO1N NgiBAoGAMreq6spio9CtzmBTDCsEN6pfTdXHMxKXOQjByw0yD0HCbIZ0ZYqE4M57 zcrkc8hNFEFq3GcEt75bdsULbiFA1X1PiixQJGx47cLebPzSGSD5DrlitmE3TaJX lLLNzNR3w8XStUUKTWrDdoDfdw3Cl8+GyfX03At9MUr8tNxD/h4= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAswVTrpGPsDRCqoAnYP6C5aLgacokLu4cT+EUmjbxPYo5BJv+ gfLgCQvIn036v7nFzCBNnTRbkbcy0FZICdqHTkVmh7QiWiWzm59Hwtd3n8AsRa7E EGcXBQiLaOqVpSzc+UaFlWG9c/XeDW+jstLK8d2G9kgUeeLnA5k3xaysiCfyxLfk gbC0hxJg18MG2WlNV975J8wP45fEJNEfnnAAs/8Xq4R/rx0KkbXCZKBEHfdPbA4N bLCZeJ7voR4yNLlAxl2SQI5xG9CSsuMhtLqV1LSqMQCC+VzM6392b07D0DHxAo9v vifOWV0ZNf91YQUtxaC94Tjusw7ed/sxN79QxwIDAQABAoIBABQrM/fVZ2pTIPWj lYwscGPdu0m/3963rdHkClWrffdQdMcLqhtK2Sm7vaERAICMNfge5Y+h//UFPkDR j7EogRj04a3FQh+E4tzUD5ooe04wsOwy2dz9OE81XLt3vl9LFCQzaUZgqh7/4sIB w2AYtouUSSnDCieHRD6YCvwGzbNTGI8P1DZxTLmf5q+qwdACpZgFcNB4czfJyQk8 jAHZccJ2DwIbUYMT/Rh0c33ieIOo1l2GF/UBHQWXBnqVFo5pJgZzo8TnWcpbYGc7 HqcYll6YktGMLq2kT3N9xEmTXoF4vJSHd10bWehyB6T8x650v5+YeTO9feQrsGUZ FYj21pkCgYEAy6MH4l5IvZ4MLn7SzblIgrU2xMKBd6CF4aPnUOOYewgeBsmK9ObC 7xIwdPbsGqebHH3jWYEHNnuS90JvxGoiDTKYZNeF6L9caB+cXx12xtq+Cwb0MIut BYWgIzcJK2y3+xhFpPcJz9+yykB+nNdN3jdH9kC3bjxSLbqvDL2kr5kCgYEA4Q3g XbtoRU5ZNTAqisBQTkddXv5BMTEF5Pbqj9avYrmzxKaa6xrRr05w5l86wwUKSSR7 VT7avcChG+eiEEOSNgAzbScv7jhR4lUpMGOqLbGWdlEJYmamDNpGle8b1IPi4EDc xR+t2OXg4P8Xu2w2cytjy44JTp4I7n9bV2z3v18CgYA2IwaCkMxH1M+qQL8sQBjd 3u1Li+Y9dmiBX0CsyYUNGFBbP5N4niyuwCgvwEFuqKZdAb7CWcIgIuQkZf4uuoSI +612CbIo+U7Iw7aftsaQATFK3zNmAIwkDq1PD1+ZstKKp55ESATMxczTZigC7F5g OFQiTHw3i0PRsnK9MWGp6QKBgDk6RxhupFgjUSnmQpsfxgvxt7uFGdzBY4dShljn NZf8MstJtlEcc7+JSco64v1eVbw9q6MEpajkx9MJtrs+A3r52BnkghqodaIBF8U3 Qrn105Xoi2NbSNQx2QsdT01d8B4oQDtcD9/8rI9qLoW5QatNmEXVq2YzZ4AGIJr9 mY4vAoGBAId965DaJPeWnHGK5scRFwj1s701C4LCJyed0QevIQF7qEBIlQPT3yJU 1AOpbsuIPN3DaA9UbWvavwwcBktD6/6kIaOgs9UJFCUTjitcMdDbNHGqS0KGx0rH wjBpSCZ1cX9IGQPeUxEoGVouJD4YBVD12NXfo0u63BQPRJmtaH/a -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAj0TCUvAXpW5xjO2bEEgq86uT/mJ9BRK7jcj9RcosHYn2y+9G 2dpN1k97gq8Sw8QWIA7d1ERCyjFRoRsGkPskml+y6Oc9D9OIc3q5oKqRd7W4+EIb nzvPWSDyJuxSXqrOy+yMK2FLaaQBWH3i9KAcaPTqgNOCZP07jog+YLiQfSeBbq/r POHl+2s+nXJiAVNRDuv7z4WuGF/1I2W6W1utbPZl5uDI9P+QGR6aVylNliJ7Yq3I 1XApHzYwWdDifUTgDRK31G9SC9QY7zGWjHxyM2v7Elmho98BO9BNdWRbr0VKEZQa 0EEgJNikl2LL1VC4/LYk4RWecmKWGsGAN00lhwIDAQABAoIBADATwmRDpqPAxsEk oSMbHLLNkqnMkiioKyE+3+NSH3DAMf4oqy2DKRiwboGhz5m7TTNv2bgYOhOQ7lQy dgckCBn34Flw89hCQ6mA9xb39j3mUQ6aXJuYXhIKUMiICHI1PpVHKZiLG1v1ifAQ up8dtbrw6VrW34yVQC2qAcjCVtZwcWFdULIRJJTSf6nM0WLgTNZCnwOHigpU1nML evlBQBzhwruZpBlBDffggEV32Mp3CiJwUSo+5SYURtoRv/Fe/niigDldPSXKMiBz erDoDgfX5rjgGsSRRLQhy27q43Db5y3d7cR6Dwk90IlEVWxd/VgA77PRGzt/sZOc je6N8akCgYEAvvka/fiX9VvO2YXt4P4cFzimXulFwhxOSADg9KuaIp73ZjcGFdWR wzOrf9k+LJ6Exk+mowNSEMUj4JpJBg3VB1hkNmCApadqa0PaBrndvXvH8MWI+0yn iXcwoVPla6oTilFTq1PRa+vO12SmaQZ/mgNnrPieTxiAq0M1qhhwmVkCgYEAwA1P qoi64+Iv1lrJi+HjJTQsyuH+me15NrsSY2YO+Ct8pKfEByBet72j2fnGqxIBs9LA JXWNjXK0DgLc7y4+9vsVLM/PVOizgJof79PkRm0ntAlBrnmr8BbqQc46k1fIyCnu 2kgKFu3oUhtGvCOnEts5gfBoMEgmONEnd5aQ+d8CgYBTQg8+gk7drXT06KrY2HAu v4fpARJkmiqWwatRgC7mwR9i9MI2arHtxG0UhAXTNhj0zGz9zMjOfuQxW5JSjV0+ oo6uFkx/7Ak9UouPOyEtJvX4RmZ+COFR0SDmdMkkszVprCMqIpS+1EONLFhQmYCw CKP+iTWbjjcqc1bGHXmZoQKBgBCJVOG/MjBrCmlvmckUoyVR78VsXirM2tIOm4+5 evJ9dBcNZwCiFeXGS3R6YFPckg70x5yyGYUjakOGlZV2qu9DQViBcD3EZ6hcHQHe gdpajb+fyGsIiPh8UKFn631CYsRxb+KVr2C4DXf8Z0PN4hXqkHISzDXUEI512+sd KNCLAoGAKHrn0DX69Ei5BMPCcZC/p/wmOThlUMBUy7a0bpCVBnXsxxaCjC4XMuWF G3lrPLZtDwjv/LnT96T+PRAdQQYujb8qeLMZSu6PgHp2fvlKTkccb3Kd2qoYGbN9 7Q/6MEugkp/uj4wTVATWaUGqa5erHiKchufqYmmXRIB1LrEaasE= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEApmakukk5XmcySuBskZZm5TbdftdwiFVI7P8Uqv+G+n34Aqe9 VCQj4O4QmivadL3Qpgo5Jfa5p+ymsN5jid0Ep6fPmyVIRfS70hTJZm85wjHrcPGt lIrDLPZNpgKvwXy8F596Hm4xecGNveyzjmyP8nNKDvW3DDyVEwtVYE/eeBYXaa59 WXnkdmB979iRUETDvBU2+GSEhqMuw10bAfKWi/+Y/VrIs4PifbUagqZB8I4QwFRr ons0zyfN66tsW/0Hlya8s80x/vrVfZTOu9yN0Fa98tAe+hgzUo+smAusUQM3wVEe F35v6yNn5zfvnaI0RVjjyKMbk4DOjGZPZwfrowIDAQABAoIBAAkoZcrcZzKrQN9S Ec32L9xP9EmCZDt8kuWuj13VCYHiF0yK6SaNhQctOVV8ZSqlNhINRsiwfXAHQpB1 WZd0X681n+O/94XlSpKGeYpDqmZ/oAXrpxi66+brknZsEdQqOaFrMdzyEsYxDf+O QvHrRtJnE4PwDfTq2KF44psvihgKhUeJGk3r7C4kit/uBSWk/NjsHutKcFrQijxI x81QTDr37o9Pjqgx2e6mpG47+cXynGlky1OwtyO9vfL7N58I9wTyN9gs27/dx7BT QDw6xp9IbngGb7OLTW/zlfpoe+OHDM6rt2u9bxWd7iDjVTQodL4Apcl09ud3rhv0 u8AUcPECgYEAyIwtllyaHC/JLMLnzb1bAOQEIe6Dopa9R8Ay2BZOPEXlcTHvBQaQ mXiLMC2Pml5CX5hNURC2qFkRv10vLjPeTHxCkGOMj0eRVQ/MarjE68GSyYeT9MUs rJW0ZXwRmGkJvqX46aX5gIWE3miZKfdjw/83oMIExL4dYebLKaiziQcCgYEA1Gli 55FtXC/w0WIjXXnVoCDgktLCunERziPpqopPqrNIIBG8mGWug398xKb+3M9Hv6Kl s1WayJ4N/MoUfQZD1XVBsXBBfiBDsDP/X07EanbbR/9XqqXt7TmIfsF2aJEWuGGh pTjRpTjqukwQ5Yo/DlmQbUOTuUpm+ZOL5N6YrYUCgYA1f8etg/iMqmbFbR0/clMz kqBTmPg+yG2oFWq64IBwbcj+gG6d7Zlnh5PB/3V+ncShEdUWWhoQIOquHSK39ZhI 2SE8uYHGuzXW9kb29WF67wHEh0l+E5eOVsVwCT/8Y5D47ffQBLnhgjzmxAqP+nH/ 2DazyO5SudDGzDXIYDu8wwKBgBHmi7o+LDwvohjTL23KPbGP870L2/NAYiLALgn8 O/iDwVlKhV1GfG2Cie48sI/FPCOvPk2dsjyj7UPXd+CNbZwIlK+yaSKK74li6GuM xMrAF3y6zRWJhEKQrasY/LSVPZfuSmQVJL3KzSVEEcx2WRgJfj1nC4T6+zCfOZPh GnbNAoGAVHahI2GFmNUcV9p65Pl4p6Js3gue7FL0NudmtjnqtyvaBsIcrbJnM7Vq D/OibjdXBDLRwk+OxU2sXfdXDigL16YpKnhmDa6b98+x2GKjO4S5haOblSWR1IGh O6M8VU/u65v/iQ2xWLuUrfFCNagRPZrcsl6Mlq4EqOoH2/6dZrs= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAnkNWnQ8Ss1sy7t3zMoAXiwGipERIRKumEcOcaI/vtGQomI5q iBYrVAzBuL5QSKPktgO7gfAznyDm1fumu3oUQU5Na4zfRv971UHcb2GmhRQJm5i+ FKex0RyBsV21Gh93OdBJGXc/l8C+DbJ02WpEfTzcoiUeeVHD/yj3gGdA3ISbY3Vz LOs2iNN8PGfvUY6KazbXNgrAQBwAxPDkziMNu+01k1BIJJc8ZHmcaKABrKlaNOQy saNV+OSrcEqomfpGfw8S7taYrlI+79UR/q3B1MY1o/BNRYTDqZgkBjZgVzGjgayC 0df5vpD15+judsYatUxodEo6Z1Ol5WkSM7EmhQIDAQABAoIBABDaWodSuxWRW8eh p/ZT5e3osyvrP4eHKyHkzYDkTvd2hkzUjECd8mg6tt2tmnlZxo72r8l4TYRKVHqA l/KKifdNrM3hTEd7CPHz16hJYu+fQMn/xmyxp4Gn7Pb5DmzP4U+ClWjaUNHKoGfE qKUcUrBuwjnxWkuQqvPpe2MCMR8qRE6taHmM+EYHFf0pkRhc2vUX2xn2cJCDgIZf JyItts2rHhi/o3EQPH6OAW5R3IvdE+E6PLzJ3dyOmJpUO0unpcFTUDxGHkoM4C6B tBlMb8+TV/u/V5bTfXn2NqAsvLudItaJvrrDmfkl2JWWwE5htspNDdhJ9mRfeusX qk0FSwMCgYEAyVKNwW/etcIKcG+7d30JzCYXnAhTxj+uBFLr6iIb4+iK1cRjehlH xwxnEQlYYXJ3D2slWLoFmv9gNuO/I7+EjUJyGXmqM6pXqkTl3Pbpg/fiyuW2I33t zGSMHlRa0SbDzb5AWv2/GynR8PlSYsscp+LshQLrWTTPjGKoB6TNmusCgYEAyT74 XfBsrBk0GMg1aYU/8ivazipQYyQgDyVShoYEt/MeDk4Whihf5vT5non8U/sd2eSf jnrqslhLPke8J7omojUVrOxDDLu4hQCnLW/gOezW6YhC+qSMjiuhoMRyyrSkpXVj 1MLQULcTQ5TrASKBgFIBGI1r3V0riBr6BNp1CE8CgYB1wgIEyajda/irN8/R3qOi dA2PSReneIwTH2W69+SUdOrwiwUc4Dip50lKH8tAhLG7pRKdSYIJ3aKruJ+PC3E/ J0SSPiYePl80y0Qg8ZQ5iv9vatoU/I3h5lZHT1QnzqLtb4E5N/9WpimU6GEWRHQo h4WNb921ujxEg1iB0BYrrQKBgAgC8r5CoQDk6/cEmWO/A0Gvz0Ef3B1mRcR0lul2 EmAEVLD7GNh0aQT3waw3EA2D1Ldk65kveYJqE2zCTFJEjd8tP9Snfy/VlU3uLbmY V5PWwuN/IjN6M4JBaGjPCUbalCdmGfhRXRupfiHVntlnt0IVgaepkZ65Y89CS6u/ yqLvAoGAHbQT793lyYncJxbab4Tk32lKUs477JGSlKcy2YmlcN+tw/f7QHKIkUQF H/VjYZ+nn8ZBkZdFfjhA1Fm//TBnIFeln7B9M3N28s9LgrESaPXV6+jmwsWhy3Qk AnNbvf6vKo52pPI5tm+rYhWXvZMcO/2nQQxqepI/enspLD2xGS4= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDAHccuIHhbE1pX2VcdNk3VOVaZMeum0DCYzI635k6fglaohQ5O5639x tGof1agOTTmgBwYFK4EEACKhZANiAAS4PQo2aNAtBak3t++r2JH2UhGsIX1YP/LJ SYooNHpfKPLUKXOHmtn36NMuM0HzFO4Ryn7CYl/m7o/32BmQhuSuakCIQjimOGS9 QLueOzeIfX61itTdN5RYZOmEN9vcJQE= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAqtEWVAZ2TGe30SFKf7i8n4RCbl1989v8ZqmRVRlDTZI3Vhyj L6pA/br7ydc7SsqbNbIuGMHwy3udXsqrX3Q2zCdiZSuwNKlNBg9bvCMTsG6HPK5y LFdq3ImM8F0pCvam5KXSTeFSAt7yu58rjhaZct8q65XR5G8T66fuAmF2DIJDAAg2 Fe8MDQD2GYT+EWcGOf40JPGFyXLpIHsdtipRBQ2ce5C9rf2CcrqtJWuxkwiyfTiG GgK7VxgTDbkiK/ym2+8AIn2Gg24HxWAnmra+VH9xdkSIRrkoGYN0c7hJwNBUKKb9 fI43O+OqjliIDFcuvQ7RUpz9h8HZgNsrgavU+QIDAQABAoIBAAgGcL0b3Jz0Vn99 x+k+PaZk6VYUEGHPmQkduFU+LZpMX0stZ0FLB2ikS0YNVZzK7gXUzDOfkPeOZDNa 5DhE1no683V7WvjuZ078k7vADiHA35urOnP4221nDPcR+WapdefSHpJIHrlBzjeg X8R6LVVnRLXywPyxd0cgCZ+VAp3NwTmPe8vbpUZgwR60oUNlEu1Zet4BEnCovK3d vocrZd9H5W5JWGX9MuHh4BuCv9UXAzuqPSDlKC17WdkWW7wgmmAkP7/28cUlOU82 yq5W3Xw9tTfXjxqTdSuDE82WJy8YIBz+mJqzf6d5rbYYjGRH+azjNZsxez6k6hBU YVEqlr0CgYEA292I4DlsB+R7k5PEzEXbsg4FIChGZXrv9WdbByJlo3UpwJuDpL5u Yu6hmlR4wYS2qo7jN3JqWGulS3gPvj6CHkdWs/aYuga0O9udDBw53y2Jb1SdWZZe aIqDdKSZ1pB125sRgZ9IP9vIO33VokIhypb5bJGH2v1turDZt2G6CBsCgYEAxuPq D/37ZcRp0qUzL2HB2CtGImnssJVrJQ96BGA5qG8RR4gFOZVhp3MS1qvLqk/EfkWD DbVKTul9+gQ503di4PvOxAwTNxH4MyQ0MRnBUE1bfSOAMUFPi4NW28Cn0p4T3VA/ dpoAWGgPse5RTaaXq78+gjygh+HdqiQxikdc0HsCgYEAsHlZkvgkIRWgpuyVqoxr 8bfVH2GUV4HctvH1m31dbVzuXV21xXbgbWIyrggdQN8AK1gzQl8AwuXsL+43XLEZ iaojCqHlJnOZGO6GWKETRnJrfMPC5JSQRILhTq+LlzAumU0XOR6bRD5psm6nGezQ 6KZTn3QUQo7mE1I9/jZftn8CgYEAtHv+26RPjno+zbi8SjMcBV6/tlsJPvVY1bjF sVLg/8hKle8JTsgQZjQ21DfyCgt49F2AH+B0Hkgk2c0b7JpaUHAxohaTGVZlNYOV GTmWA5kvfM/KdOgflysIl0KtCKQKwrsf3DDEP3WvSHhLr3uOB3z07Jq30pdU4CEY E7POtiECgYB7WQWquB9rfTbIF7mCv3OHMFlmrX/69wrx2qfWLyZ9OxuJA8Mu+YKb tz+KvBb1jYf3tdqgbC/1RSB4OVI+p60S4vc4cTzgpI+WU6+NK1uf0ogwMmY3aWh6 hcEa6rR9BK8O1HTB8ppE/uGP3Whjxt+eF8y8frhAXVoVcaKdM+XqkQ== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA0oVin9X7KfMUGgqdLwfmpJRBVm+3s0PIgX77RqJw2gptE3PZ GSdLmqK5yHEpPrw71z4akeDR652vrU8jtJ1EjCiN7q/Sovl20khXjpCzHDpfdhPV IvXy8Z93bcU/iUJ3+CKUhgMxEHvhZy74B/VAcpebsJLk3cGwh5NfPGcx2TQYHWoL yisTy24MzdNNzrKf1587p+aZKMnyLADytVIBds11fodRB0G7vB0D8CQNg4ug6Qa2 5Hhmo1tIUbJFKGV8Pb9Yb/Oso8TnPcufS0Eegq37oOsmoiDh59asZb1vUobMwt1e cSwXGX+ThHi85Nk36vqA4Uy3LJQfWG7Rl1DvGwIDAQABAoIBABbHLeOjcHiaf3tN 2LIFBdSa4fLrRZIU7HXuelurKdC9vg2TxFKvaMPDhZyFefP6w/LHGnLcQ3pd5ms3 G+Ln/Um4/Zps1bqiiVO5Vhfr2iVcv4V0IeSVfgLcwTxUUkqUsYxcmXtijwV8kefr MhUSWTXM56CUVEUWNvaEYJKVi9Q3V1RQTXvm8mlhoWpOAyUH68NngQOVdAsH566l nSnI3TgWtLRMUun5mit9Muqdn+klH54JUKjEGFfuA8FIyY3plMK3chj61AOmH4zU vd4r8YKjHtoydXhxzFN/29haXtqaKbbNktB9/+ZHkukpqCdXEz1V3gLIlFP6zv/p ShyuwjkCgYEA1QTIBcLJAZXnjaOx7D+kTA7ka5ljRKhBiB8Do2AZL6tG54wy9OwI GBPUGLlnaiutTGWIV9kYF/+SG/WmR+N7JeL03RrTJV6rM4ZdCArru0jREYYDiH+4 pOAkXDX9gvLJuiOxtmfRB3HW/GosVbBjvCnjgqbIuRKGjDgTbeOVcF0CgYEA/P+X YXfTWSNK08pMy7KKvhfR3equz3wFoG/KTfJWWdRWVF0VGeufuxWWtEXqk7gmy65Q K+vCdwBEOHqkT1cR4YR7Po6tLrG6BjYjzFMTzTNp+9sZ4kM22+eYV+ecI4C8OyEp 7/MWYX0BQAiyPFoRrSCKN+6uDClRvHkxnlU4xdcCgYEA0HpZeKnmJ5Mah9jJbTns BjQdAeGg8bTqTdpsqRyICctLHZps1J+cXFQro/bwa0xL0xUblz51AieyS4LjNkBA ahfxJeP2+f/o9ghuTEzD4Qum8cuC8bhucY6ch1KfxeTv4SjF6Is6XFrh2S/gLAzx z1n/vAKXN+oVnG3VNhsiSlECgYBO+s9cOxb8bbsPUMkWkf8kBrWabIfz98id5Cgo my1/z3y/y2sp81ejBMNONcFcKhHaZelbPLcxhSDG7OpcZlcLqtr6lXnU6OCkzcPx JkI5PgKpACYdb1Qx5CO31XL11ltsrha0dJOZDXgVcGGL26ZHALCFc3pcC44bo03t GrelcwKBgG1qqRUXaQRPTvkxLKMCGfgTLjCZ7iNNwmjZ6P816eKSJxBvsNOwq6kT yLpiWIfR0/WPOL0B6BubR+FVv5YtiWnb9Ijys74EbNdmBeWaCk3EW3qhHNvhhEFm YZQlTRoSxMgUGu6vTN7XBiosCrN5kK2HGMvOKm7ktx5k0sVezeYG -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIP2dmffCqLS4iq4ovCEAK4ZF5gDgCr5MRe2J7LlVHIMcoAoGCCqGSM49 AwEHoUQDQgAE47urQkxNyz5Bg2TeWuRSxMXDjmmS/6kP86pJc6vV3T8/BnENUdCQ C1I7kPsWF1Al2wXn8J2A9inWw7G8kvVQkg== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEAxYv8qPmfbTxIxiiiEAyI1SiCJ31KtPKES4RnwfuPe6TgZy1D lIhdfw8qI3avYLi0wJxTxlQ8owpYbJE/zBdcG+bu0kl11MxF+07MT5fCD37t1riY 3rzxx3wSA+iZ1aSWkp6+NU8OJNd5LcHpOab59CNgU8yFs+j2WNsK3IOLOUpHtSby jD0EioNGS9u+VL2FyCIz1tM3iH29cqPFT5FIdqu7zp8gsh6VRLv8PzWuOcVBQqey kDv1WzpnksVIAP+dF5/zuUwFo/KCRJz1vQIb5s14C5eRj0dHhjpOzhuZpniCQBKX jQ1921Kwnd78tIMP468ciFBOfW19mCTIg0RGiwIDAQABAoIBABSKckqlrhifKJgG OJe/nejALgxqID8BapUpntpSTICYS8ces0S6CzK/gmuulxzRB+ZxOtrH/ogbdsdP MRmJIkg6coHGJqzqUqqHboImLwUKdzOY/ThH4EIUWhEy+e/3jbqQLAoB/uAA0bZa z+PxQ1NJ7GW6QfrLkfX6TL5SJUNfEYXFwl3HBtqlKa9tDw8fNmcCaQOud7ZdFn+o HAiNjzBMutUvj4sHJgXDSumseioKJ81DyCRRvcweofzapBwfePsR8tLyq0JNscV/ ZBiSMSSOhl/IYkQehz8RbV83WItavKEEbePEhcTw3tDvwpxQArapS+XvW5udsjOY +738faUCgYEA0dzDoYJKjXwnELp26bKD3PtQs3aZ8YaOJs+aCxVs+YD3mZ5JPPg5 WJWx7rY7i2GGcPuabLmHqkdIq3tMf38woQ3BMvF8vvVqYjrMS3iFiPQateUzeumd mhw+Re8BhyF4aHxwPp4z7N6J8dhxVLWAcMdjY1xHJJB73iAR9fV1Sr0CgYEA8PoX /VabRGjNT5k3qCqaEvS4tNWtbzmPr2cwlVSMRBIWqqw3btVP6BFIps87PugWLA59 3U4KQsfkgdNqGI1lFFLwxTegwqwqsX2Is7xe6CjJ070P9JeyFCMgcHT8XaopjnAG 160vpk7c2kcIDfzYeG3MAyH1TtrYC/OMlT7tjucCgYEAvjue/jWL/QrQoqJUDm1q iJMrSTK2QzDUhKvlGCz41oaoaxEHlIPx/7HaU+fOu/7QjnQUPIBFUP5DCma/JkeW PjeorNQoXzU5lQd1jugWK9oSqFW2v7Eq0rrNXDlWKjcV3akHWkuwCASGCLtJqB7K 6fBj0HqiZquuDOEHRuyUwQUCgYEAnOoNgv7JPiOMRZ+8mTmceGl4ePCG7d0qjgoA ncyfRZgNwHdB5V7rmG7gwxZAOvc/sNKC7P9rOQ8W4d77wB8aScC0XYeanAkmB8t5 n6gymLQusDz1Tc0VvX0eG3xh9M/gHYsfOYPhekbyEwSb3xfdEZZVeVi8duuUMTwX N/vxDtMCgYEAtlQL/j1rxjWod025x1iAdM1DfXoPfytJp9xIRKUv2k3Gmj5vr4AE TIDVcE04JcBNVq550NG7AfEC+TMXoIK9NZiyHfTgAopUSsHG1dk2XIV07b0pBQBF ItEdq71QGheuETlCQJqg65iJWOi6BZZ2FruX3COmnmiJQokIWZRH8Qs= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCpKvpbqRaSS04pn6lM/VBWZ/mUa34j11PmPvP1mwHLQGY8EqvDl7Zp idaDXn8E4EKgBwYFK4EEACKhZANiAAS+VrBi/0BcLpyIECPHJWHiHS0RQ4LRvX/Z zHUV6FSNwHQ+vuu0Si3Ws2l/wCF6icIY50YxXtCUjKHqEcoR5RPIdKHOxJnYVeDS AvYOvO9NWBuFbhO11+QXPdy4ZYiPeh0= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIF9Yg0tLeW/qKE2w813XWoxViKnaunq11yW2mCW0AZG1oAoGCCqGSM49 AwEHoUQDQgAERe17AzMXK+z6Y0ifjPtIKcOH8ybApjjDH6JdQQhf2CL5Jb7WkAGS DSbk/ZBvDFau7x71ULiJQNF7xn/PIlBvFg== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEILuqClaDpoIZ4UrijzmfccFlgeDCQNEXNseaXz/HyaAJoAoGCCqGSM49 AwEHoUQDQgAErRnINnl1h8lJGCMLk+J+nwGCgAqOjbZ/t6+6zfShjGRaNshJbfXB n9ymd9DMsNgxs370ibmLA9GBsGDZ3lbmaQ== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIAaR4FptAE/nhpZFEzBadHjvM07Elbn1fmxZGbCvc1I9oAoGCCqGSM49 AwEHoUQDQgAExAdvnmZOXtgGXXIz4nek7+HXluDbh597nGd5PdG0V2r7aPZJvuhB LMHwLrvy8Tlblhc9+mGb2rIan0dY2H1msg== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAxuER8Ym0jwwRIhF2DJKWBFyxykYZakPP7pW1UlqHGJRQChmY MBsA6hzI8K/lYjuRcLm4DX5EXYvtFpQPeGJ5Xei8FeyZ4biVNm8yGV0kqnAFLbuM FDdWaMwDf/h3F2yE3Tq9neJEMw+VPJdhQixYGbIfWv7nDMndZz/0NyTwU1VcMM/H C2+oXRoFRf+HZy2GjzamDZGUxGkeYBFV+XvWpKWAcQv55giJK15ViSvN4cyGufGt 95U4NCyMDglOrMlfWjdbeQJDc1gWBWe3Zjt33qlRQvo68+CqdJYbF8rpitAHvin7 ShpvMAi/1+JqaA/UMUT6Khm6r6sEblwy1yRHSwIDAQABAoIBACrkhuCvoOwLH7TX zDyI7ubw8P1dogSbrIBZ9HnXAXUJI7wR6hNR96AGZkYWwaOukj8cJvhuB6OfVpp8 g1uk7WUWGV6nIUcf7rqHP+hdgNdrgopq/RqtFqtSeNzEQzcflgY6sYOYNbpHfZnM UlMZykR8eKvA9yb4cJJgpjSweE6YZIdxeAG6/U8IUHqbFi5GP/zmn4tkcCrSoxwt ViSv+wCzb/iAI2iCWskEJWRqPHj7XbDMrbO3cMdwG/VIN4gb8CYh/tdCCqG1yI8E rPjWgGnvJayTo86y8d9TIPK6qCBx25hod1zRpGi20SSZ8IQ+joXoc0dVqMgTpdea qGaBkUUCgYEA5s54IPek6zL2IyN3L/iVaEd12n+Ql1BLC1ESwswdcAFb1NIQP2pb 3BIbCjy8yYvAn7OyZs92F5F+ZzO2IGyWnG/XyJMqGTbPDzMKhfXnuxqHez+bdoii msBS7ynLKeSim1Jz3V2ms6ggY95nC1rSOqN9h1LT5myOnKidSM2kRwcCgYEA3JZw 1X/NHGCi1lGFsSjyZoHO5WZbjnzJl/TlfAC67iMoVSp3/EoSIfUx07lT+BkDUHoS 7nA7FT7SxtriGoMc0HrbXiuIBczZ1hPhAFQgrQc51QEAPDsWfrlcXn24/SCj2vOj gJBc7P8fuGZsIM63uOWTe5McR13q5gGrGZPPiJ0CgYEAmk55Y9kNCi3U/yML4Sd5 g/EaqszUN0V4FoXKXC+okqRl57/VGwCZj2UPbOW0da6YRm0WHcQfuJwN/SNGZSEU BFyF0FQLNjY9cnT2WR9RIPcYkt6wqiupQnrIN5sid8yipeMXEW02MTB7Dym2jJHY sVlyaBGJF6mGIthb5zuM0+sCgYB1C0Y3oqZcxlHg0kTT6dwk0//J7PPruP7mqEUT 9Pc64GDIP86GiW7xob6cjxuk6vC9ROjCp75R2ZHRfda3JpalcGrxnruACGAVnVqn 5/umk8z13qAXVWrsNsJySNddSHJo/RnmX7NO9VgJah85kTYe34HP8hDxNT4saPo2 ih12aQKBgQDHJn5a3+OlsA7b0JGtUc2GyGN6WdaZrN4zf1vtCgJ+xEJO2+z0+oDP FQgxLn5YSNSZG/9CitjxO5Ng2LhYGdgMTSREekiLYJO+jp/hkxEXS1IA8gfisRiL oISk87JjHy29Ocsnty2vJHkbKiy+safgyyek6QIRVu+6J4+EKlrKYA== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAma4KBgqTTsGNmpydt060SRdhEsUZ+qPlJVVKuvem5MHGZPcU 0wEeMd/unVxoKpujLSOaRhPRGpPMNfEYBfrXMdenpncqP+Qcvfa5Y9eWm4oFpAwl 9y0S15EQ5vY7WQyglGuh2GD+UB4IKRRAOQs00DF0dzJ/CdzY8GJ2ynzBgBlooYf7 vK7oe3+YBwhlaIjExPvOXeBy4pekP3eYlZtl0xK41bWSGH8gMohGvgtFsYsi5whL NLkHiNnw348faeGX9NWyBjO/aTNN/7KgUVbJJKtancubWloM8Xivvql5fO2ugNNJ 551mUAryCBwAhXsrPJRNhkcBGeJTu3Gf4mNYGwIDAQABAoIBAD9xMKQj04Istzd/ tkBJVnXiF+n2wm3NITjTSCF9QUGomS1vLwKYsI1oY4pE7p/AVpG44+RQI/+zyhbu q7s0PYhO/d/jy+ZKVm85nnkQNBWL2h5KAZZT3jZtpaujNQbjBpue/1ZjXDlY3IeQ 255w+OGFuQ3II9e/ezNpgp6+9+bYcojirm0VIlI6N2BlGyR2vAUBD3KV9+lt+Tcz FazsaTYiXZmZoMC8zyLuCpXCmnY6HMicuSfDqGNH0conGSWWlGkXZWKGQZVO1ppW 9GWjDY4KDSRPcxE5CMyR1wOG6Zx6Hug0N4W9Zfp/8fMqhUiFoNk0rSU4xRf+4lmH tg1Sc/kCgYEAzqLCm/LA7T3Ll/5wC92mEmTqkvmYq8n9igH9KBFqBFSDRrhZjAWN dgdfIie5jsCnrS9vnio29DcMxYvo5W6wG8HfLDNdfrgohlUer8HkSSkY9syoVhBt CkwqXCA/J7+jyyklz4woGiymlSMNhwo4dHO4N/anP9nBpKyWYa4/ImcCgYEAvmSm Bd8l5jP/0Kj0vj5PHqAY6TmrCoBHy0uaPkDIh2KmnJwag3a1TAqBRN/FxDfSPQ9h x0ZvHJyshiLExIU2Lazipcmkn1YxBH9GB8ZmRd/Z7pOn/lNIcYSlVee6q8mcZ4Hs 28CNm8Xs0pM96e4Q/v4F20ZZeeEZVBMy8VKr1C0CgYEAqmu8O2gry76Sgon7mR22 ESef+5XVX6GY9NCNHRW3rViSaKo0WHJf6D9OK9o9hMnJwOEFmpnQdvxMEUVB0K/I mSv9RvQaIR/7dEcRpv0vrVMy3qGOGGU1uS92JEMIM10v1qfaImHC1UuMHCYryvsX 8ptaDPXlnJiYx5r78BYIxfMCgYEAob1q9K3+yjL+bMo7L6pLGF81Clv9G2yikOdm 3t+1+p0poP1T4L5lgXWjH1lh7jDlnw2EKP+CwLGwNjsvIStxPRgTaneEK//SoFlm qpA2rcFep7g0DG+/qP/gXLwA7pLVFXFgP8ayBdT8PF7tR97//T7axs5akJlTJQMy UaPDaPkCgYBj3LbIYlDcoud4Xo6uT05bilHx6kGd7CwyOu0t4Q3Ypd8MM4w3gFAS +GWlsT7yhXf0gG4b0KCamaWbEs/xJMmznUE1v/JbaAHj2kIhXhPwS5rmA0mGn4to q5F1NvMWKQMjIAWSBqhKnCYQaEzpx0He7Ru0UvJroeFACHSYBFQKLQ== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA6dBBt3MRRjK9hd3XC5wBV3c1sB3z0ZhAhvh8Jqwqqn/NUffN /PRmfveNXg+LdM+5iXzbP3etVxzRlVbBBoNzv4LK2QPqgAg2TdQ7zv4sqBdRcjou qZVA/o3pI3Z8q4qWuZYGtNsL3OiiKp7gOzqglUmg/dTcu2ml8bP8NlfAvp6hV5un gMJeOVkg2oFLgeHuKoWHlzzskk7YjH19F6U0eTtgQ6roEmKnNsj2tXPkNHPn1iGa CQcIuOz9p3zDngtkp1RP2IGnxgQIEZsqzbbsXlPYEsJYUyVaD4k6ZJ1Mm4ai8LI+ 0mk6AofuHLyBC58wM4fTP9IvWbu+w2e6YpZV5QIDAQABAoIBAAEw3HUXpSXcnxB7 yadP6VnFbBehcxF6iSVgy7IELG+Rr8UfJUrjl6ASpbIQGUiQXTI/0mNRnca9ALt9 6oI47ySG4dEbn7Qkjr4dgQ1B04u+wkJPUazj2jmv6AabbiiO9MXqjdnBzC/8qFcZ k5mx+6R0WEEvsKrDc/kRqc4s/BPIMTySxNSYBRynikd5ayGlqNNudSUTRZ71aH4s E03I297DE0yJdEKPinasH510r4yKUBlFJ4nCV6HiWEVIZ8xBe+eWXfxxnJTvOLcA jOmJplMSJ3M6BN7LTb6u3mtu/64klmd4SbQD8aUcvxBcFlMHF2zA5WVYTUVqGn7j ydViEaECgYEA6fv2LdYhTxWUJFX+5iUeksVoHpyqjqKuZExvuEbutmYuNGM3ytjT 1Wwm/InwCZKDZLwDIUHvLU2iiRSI0LUNwKez8MDb5MT53aQ6xnBOcR7XFHPN+nTG A/8wvPkYqYIyPGSycBwc0EoHFaHyBhEarR3xZ7WB3+dGAUBj/+MJomECgYEA/9Au zjutpTK8aMKOd3ImkHG8M6FIbJQCuBr1UU1lBdlnAFkICf48Bt/3wq9eSZJYMH16 Us3FpLuruIq/er5R/MW7PkE2i2MNTnNx5rt4+VwNCxjtAaSDl0xDT9CpyxAXbDDk mPfrvalkiuLm7dQ9Tu+xexCeiMjbpnL3yfpqagUCgYEAzDRliWNT9p0yiPO0Xk8O +7DlSbIY+BrqcAZ1ijH9q5pJwNbGnnXVinG1JLmNkA0aNxQO9zt/7d3PeCs/rEYX FohF9luajXGLT/BAi2cATqFHvEXFAkxfdKWGd6Y969IA3cxUHpuqWe4BeNO5Uaoj yepUANrb2fkRk44KuAwBIIECgYBhjmIbMjUhl/y0MuYj9TtxwH4Wbn5xMezrixRd AhfxqBwYzNs8/GCl+onBDCH4CsBpFaEtrN2f2hY91WP6ilQ4AqxKrJIBjC/J6Era xEn5RrqOrd3Mz5GDhIjzCk+GakeUcfzrvTiA5vW55ZhNwK/0x4I2vXrIDVl+279V npMwhQKBgQDlQXrM7uaOz8A6XzdlqVoL/Orez7t7E63r+5Dooo26VMtpnJRiMnt7 QoesHfGfhvDZiWkRFjIR0cqpCjiJgoBkUPVgz5F+bfvWdRzcvqcl2+YtV9IHPuH2 2PdG8nS6eLWHSgdRvZGsmlNHgcESb9pCS7D5Q7cSJYuBuSpqUeH7qA== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEAxuOxhOMCUdRQeFROgGI/8zKnUMyK7RFV2zNNNFtIJENp6Fvn 0Ztw6isY8v7svDdPgMi9ac9vfcP9SYlVHBqSWLDmDWkGIUAg7HocbY6jCztE88OG dUxu4aMi6ymzggIgQ3PYJxdZ4pGZTld1yPnVbAxvD2PARMMtc4TC+HDtBo/3gBPT iEpAnUeERiUJC7S2HN/G0n99yR5KmV4BFNKs0sxzQBGEGko1+HnIjtPOY1zpNpxL /UDcO6SsVbLzM3HRT/PC3BWZTK+qa1Fc1U8oO5p1lHA3bXtXt0+6X2C19b3iT7HC 6+P/eULJB32F226xFvU6UwBkigWnHgr15xzKiwIDAQABAoIBABhzOV7gFr2Uij1L Wp3cdjF26AFo2SitBDmppDNsMqwylWcj6pW8CYo1Y3XL8l0ZDO8Evomuye1Ta2SK O3+e90rBRHwgOHQHUYTWENSZv7V2bdLsay/UW5/lfDoeAEav7Y4dRFSvQYo24qUy NJ/7sUmn0FIQrebwz4+Z90CvhpP9u1bVhYiG6I7q2W9PzZ5x0ntqO9NxNLcCnmzH YG8xcH9sdWwRug1s5hV0Z9xSaYOxPw94YUAJZYFsb7khYiviPznyHMH5ybSIkXBz sZQ5TetLavd5UXZrBxznypO7+Dd/AL47Dn2SrAwiQoC8cDswpk1zfxIBS9yi7P7P /9Z7oxECgYEA25s4r6ZsBr4CEKjHXcZMp0R3u2m0OwO06Dj9B6ezUNMlnALPUVT8 EeK9kVN3bmLRSzk3gWEJUpADO5LZIlYzMb25xukD4anaX35N0OhRdkPlHur8R2Oc Cn36lpdikEzTChMGOapy5zY+r+f8Uooa+Tk3BSF5NI/Qt0iiZLeaNAUCgYEA59mP JOBZmvtbo/iVisoNgypynjLZiIrBUBff7fgcK6bytq9bjQRsIYKvvUcb4In6w1sF O2B1o/mmh8eqqbLNG/QM/V2wQ186h0l2zcmF9nSQAVmE8HMNidpGj5kYxqt2hQg/ b6Vuq7bWIaDXUngLE1/xHadLpTqfDj1t3Qx9WU8CgYEApEseP5rcGrcwSFJcxPVE B6ebg+Ry5+u//jQUaRO3fXJaIrufapOP+bmOZRjysuzO894cfnigRtpi8MDOHXgr 2Ly+LefJ9ZvjOan+gZosx7PHyDe5AZet99OEFAGxxY8UG+dbsuyoBf55K5T9Gqsj vuxlEzuVuBMX7Oc0RvFtNhkCgYEArlD6uOUdOdMmsX/jH3iO9EFj7+GXgHuioI9y w765n3BkKEpr8PiUPBW///WI1ienrF2w71W03VaEiK3seK6AXDX/1jcsoVrl7HWl p0+PMx+sbfdaZlZ6pVzBlJGs+SJNd/Qdjdm5/cz37ky51719xlFqPbtcupv6noA9 K+eKDy0CgYEAyMVx9oZyAVRPQOzEWTFq+7yWP5EV6Nh0B5hHRUea7ZLsKOeQT6Q3 O1Sz64mujvPGjxa/GHPn2wemS/MESDD57yWp38nCvcHWrx1BjL0mcuMnWT2p+Z+q 3FrDo4/nbMHBym6rOZq2f9/INj6V71GnDxJRtNMbLcukCxoN3nqkGXY= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCMSC3EJ6EIR5GDiRwGbls5ogOELogIxJPZkuh5wEbcxF+5x9TbQrCF pug2uYr6v4OgBwYFK4EEACKhZANiAARp1kJWg7Y8IX1fZ+O7aBEitDwBc8xE+W1X g7ofBXeshe4DpYLKcZbj+NWNvh/fyboy73jU68K4Vorr8FENRkQACPFqCsMqGRyJ zh+zOjjA8JDAfqTGhQV6DzY2fSdu0kc= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA7IkgH903SLFhyQW2d52H5220GZ3LSWqWjQwNkP24tOmlrZ9V dYWcNkCFVbOFyvlgeWxtqXGVUwZuVBbZ5/h6zgvwaGswnzpWERtlgqtYATIqrw9+ AL3XzsbYB2r2otVe6GTEHiTTjHebIDfTYPlgotu+5dRkOjj+G79rc0lXH0ZtYuOJ QqVND3O7TPYgzIXrsYP67iILEhFKCragskoOkWOLqaDpy8zi//uGru0+lIc+O6B4 HkK1o5rmNQEzv3Ar9KaBAJO/5nhZMwmaWtL/2k4S5CWSJVDDWCOM+qbf9LFEC8Rk 2IIlcIeHYGdtFTB8D45AlPu7GFKHt2V7Y/47EwIDAQABAoIBAF1BkQtPDeFYoht9 55tQXgkl7OhemIv4/KNeeajNB7o4FiyWUby0cUrIdGk+DsVgPaOR1siD8iIaOnxn yADXrB85gM7CWBinCNDU0thKUreh/kcn3f9P2dp59ikyiEvZwQHx3Iqf7VIHw/7X U7z7hRigd6qoat2zo6fv996rrzAyM5u82BpcbBpjCmeFf9oqEX/wu2dpnxZGbz5Y GVYroOha9/uxx25rC7tvhwkcUaK8DgI7+I8iiU8hSbau6Lto2y5bMUvxFdjs+U/a MClbglejhCk4pFU7Yv8VQz0WkWNCCndqCAp1WYMyF07IQTypwtJPgnevlr2yaqTs eamNr/ECgYEA9gg8Uy+W8ug4AFEU019IQHKWz/FU7zp9zS6OJjM/nPicA4iwTkbh oCoxOnUMzOtYuQRMtGktrtx5r2AYYQRPpDJ7NtosAwSuJd5rsOdh/IXPQb1AkyJm cnHw09qcXtiUBXsc+OdAqgEw9TOo9GRkb5uA8L+PLywwEoOaBzHBcLECgYEA9h5l IOPGutMUtMBYf4xSdqun+V+PlPwJRnL5gRtic/mMkpl4J0e5bce7zFJBjUSkOK0i hnjHKtrmS29dQRl7bXTV+RQ3QvUw3d0PiII2TtSHazqnBJxIxM4AQAor9TmLtoXe lpC++nDzvJsSD/8ui9DomeB9h3I9GKLkvMtquQMCgYAgmb7Elw29ah/hitzjlUCR qZ1qOGQ0vt9kjMKxNSE8v4SMw1P5S1MiUfTr9g6YKKc8/ODdFwLCpNxK7MTONjAH ZdkFz6r9S2V4Bxzl+AL33xMzdsxTsr84cviiWdlWiAQ1JbcVFC9xV28RTqMYnyTf 1Q8k1301lvlXurByO5mSQQKBgEIJ+9asZ5mfo9GwPs7Spxnii2rVYmB2lEKL/TjQ UUWPM1Huzhe0HiQ/0LtNYvt17J6sjjQI2mA8Zkjdc+dQ4BaJoBR6gS19PwR5GX7m eY4DZua10TTifoAYSmbkk9D0BPIPz58U7bmjbzMvZNRYA3ROtOr9GpGqbIxcwQWL i3JjAoGBAO1T29Ca/Hz2wo8q6UdMydkDlIL9Z2Ggs3GZ9WpxzVRiPMF/8R4NAmVo 0u/6YiHsHoApNLH0+VJWu9GxnzI+x7GOVzN2CqkFJlq+5gOJ7nzTV/rL5M+xB58K I28jCljT2Jg5r8hL7iMlII9x0MBuWbjGkuym5g9zSok3GPcKw1XY -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEoAIBAAKCAQEAqV+Y83x9hgdxwU3zuOWE1hjcARS6LqlwxfcPB6ira2v1ZFg4 oKPo0pfgBMHWduckNzNcB+prHXx3DBWQC4/4bmk6uHfr4n0+oe/O/AckaiMj8joo 0Hixp5FhaNnYBMPuq9UP7QDqKfMAywVjkhAaOKIZ7+Q9KQeEhITUrcgA/4kiR4gu 4E0RThxkbwE1nmtXE01zXKWFeYgHEzQ6uGdYQDA2/wxaFRBVzKfT7XB/6oaxoefI csffmTkIjy8GCklOqdyF6BQkezCGks3kRs+W69RGVWdGRLeOBSrqfse+83TVh34T iKNlypSMpC0WWDXXxFpmaBbZzU47+vFEAYzQfQIDAQABAoH/fdCwTYQBumN38krK 67jodCGt9nTvLg+v4LPQS7V/oMxmp6OLwnNU/8V8eLbaGSPvmGcOdigsaZA2M+57 PMY1mnmQpSHFQk7HDS6WaEuQlpyD7JZHZepCDbfGJEeuWoaGmh4rNmL3jzHJOlvx Gw8wazapuF79ulIF88ANkbSAXqYeEl2j+HH2wu1H14TEbCL+eHS/e7pYd0lxeSyb nU3ICqaf7vr+GH+Kptj2qJAgwM0QRc94qYvFd5VuiDQYArCE0ASb3hiBFxawXu+X kW+SSyj4EM2uEOHd5LVg7BP2hdHfOsW/H1wBLumnl+lmqKG2ET/yGXvw0FZC1vd+ 40IDAoGBALxqEFDBl2KI8Hk84JVLI8dzEmFWvB4t2rpFHGN270w5082ijGCM3y/b hnMOmU+bnQ+ZoquYytAaElymqFH2XMJrJTLzUciF+KcWO3HlTkO0wTIZNpGANlxp L4+dHvEkMaRwU3qBuEa0GyWBzYl2TIxXPbAmVLsAOFgIvx8iWSH3AoGBAOYhBkce Xrew5sH/6mhQRIhNSHZlTJQhxE6yyW2j3AeFcUck8LSMsRNXlwPASpNGtO3+Hmr3 lNIAzfWRg9d2tjZPfnDzXKuU1z6r+CJG/hu2bST7p7zL0y1siiIqaXae3iUh90AY gCcbhYMr7npjxj6YBK/z/4rEondXE9ohRcQrAoGAOdRIC7FPmKO1Q1DnEYuNgMMV 6iBn/s9OKgvaScEQc5HwK1ZvxZaXTiYP3zKk5aU6kLY0En0ECtllt2BDm1yFXfrq 4PeDq4tLJWWSe0PJQMiy34CTmhcDGFwEiAzOmW7lebYsORali7Xt+xYbEsznc8+3 FGC/cuH/aS3OE21EdEMCgYAdrNaFZzopj8tB6wFMMEWWGfklI0zrsSsCRvXIiJ+/ 7Io99VqAvb+70ciseChls3FzWxiLDKAJMIdeikQpDarTeA7C++7QRWI4N67IpMTx x+VtJnJr2xDBQ8TQQQ3WeQgGW8npXv9vi5H85zZaW/FdcvbvxZQHTfHxV648q5u2 fwKBgFK/r3Y7TOULYbZomx5QeU36u9e8hsPGqnmPKeW6o9/Gvg5qMCIWAEMmgb1W 4DOPTS6IiJR+1P9XFKyw2C6Mb7G0qOY10o+aQkkWts7ObWObSx5IRYh44i0x9QSq H/Kvnis4NZEc/EUpYYhDLbwLSzB0yzhWQPkPYEXe6IYByk3b -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIO8xh0Xsp/xLFEib7lYbEw+QJahLoWW8UWdXEA9UKbqSoAoGCCqGSM49 AwEHoUQDQgAE1Z/jwO2QRjEiMAHbm7PECG3HULfB5q8+COCyq8bT/EsIUpmWQhS2 ljXfJaPKhiB4rRi+gJcvI9snhDiYL0rM/A== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIK7kFxifHBJaeaL1ucw7ZLQhPa2G8e8pKsp05ohcEMSeoAoGCCqGSM49 AwEHoUQDQgAEoFhY9/BUdu/fqmkzXDlBPS0JBFwObVrcyp0YdV9us48iCTknww0a NSS60s4JZlf26sRT02+kIAfOU+/nYocPxw== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEArh8hGrhF9V3Ux6B2zsj4wl7jr5QKDomKt6uCyBL+mT8qO91N Mhpx6q6jyHwwW/Fkg4WDtN4AfydzdynVqG2N4WXepIXgddGnvQoG90yNLn2wxI/4 xJ8oJGbI4o3RxWQqdoL1ZLF8gr2ixMP2WTZMEiKo4uNOPwoMNfzN9CoGYSGp/CvQ ojVEXeVPt0+H7uM6Wa9XH2+U820AYbB+3qdSzv564kU5bK+nmdVvE9jaRr5kwrjm 5T6Aa/LiTummXUCxt16bqJWnf/t8DXZU1kh1AR3+tf7iXnzfRfWwYhsGdgqEYFQZ gVASI+lhgEWH4Hqq1zqQhUp77y0TVuJsogtZ6wIDAQABAoIBAD5PRHz32Y0jTVw8 t5drQt3nsAnqa6jlHn94wF3Rsktr17TBjnjyDrcBVPoPOw0D9si8FDQ6x6m5F/Ba R6u0vLOezUxJ3le7NZAIERMZUWKENyg4LzlJjUdtgtDUGG/PVwS++4rTmu98Zk2M pNErBZDt10sONbeIZHNDav5Hta23E5Y7044h5UMgFSUy5TZBpEWu+Q3aVkocHIcZ DT1eR4cNZSSs2qG0xvRgBQH1y3LFi5faq6+95V6eCBgll+5/O9zYjSyxDsntB5k5 kQdkd07ix3Zxv6CGP6xZZw6UdlhX3dhR+EsDFbrXaJlsjAY2ekD0OBRdAk3IrzjY i1jx8cECgYEA2r2hvG9xB2yDcYM6Fi6odqXI3O6WTMkxlQWwb+2W8MYOxEmAYmbQ EheGzHHTWseIakwUTMqqo+uWlkMap/3gIv7TSPJQc/rcsamQIE3WDbgxwlPibLWf G9SPzVFf0K4rVaF/G57F0zMOPyrawLiMNsAAzFW0gYSgupD3aO/8oMECgYEAy8fX 3GMKrDH+cIZrmOop6nHD1XQJNKSSGAV1uGL61ib886y3o7f1T1djEhqi7jEuIEKV TZ5cmBIj+ayo9QRPsb4zEdDMYDQZwhjUjqc+24ARX2ddYT0m1LMX23USzyoggsnn C4ebuB9AZ61mvsOyvVdVb+6rWWmETquaVaPBOasCgYEAm2UoZ1PMOnfukU+mjmer Kk7weXPNttMftDyMcZeaKYaqquuEl2Nu4ctw6gDbI5yo3ssZiMxZmYYePrWBVGLZ PkNGGoZ6fUp0SoqpZymkra5zOxiYvJ3yYLULS9NJfFifVIAcaqTK6RVWQ63QJiV1 Btg0OPWR/IkaHjAqc5Q6JoECgYAJZLvpl9MtHtzYuQmKsfieqwHY/BFUkOV/H/lO N5nSd1efr+2DKX6wWpnhgsLR8ghrSkZxnoQsKmHoJ3JeYQV/bwIRpytUn/I0BUr/ DGyUV7H1UOF4EwaQNXU7E4l7bTi0brQszuJ5uU8RuGeNEZ5Spgz1LO5PH9MOgVCK 9BJ7IwKBgDtFhyopxpWDq0hY6WyuyjL0s+UExjzGML1fNKZOCCj7IV0eNKc5cn3u wiLmRCTQ+44CQT2iKNqtYx01qZnqteuvgPDB5+jKGIcac3iZO1AiyUgnt89p58kn vpcr4yfasuLDScWGbgqdGNd2/nuwxLpf9ABI28O9VNkZxBZLpXQM -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDAKusi3bnkvWH9vYrnuw+ecbRIg7h+KUhFQBZlKtBeeen0ePMk7pEgc Se4gv5jlcrmgBwYFK4EEACKhZANiAAQM6avyWXau72gyYJcMvHTKhkiXrfs8rd6f UTPOpmE8my08m1tRzz+DyhcVYaLLQI18GmEOn35UqNqeW2DaN8jZ5mLzjiLY3CuL fbUKP+zqu1BJ1m+8ZKH3HhpKFgg57xM= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIOsR2D2UrYgKFHlaLr8EQ851uSHixvg4lMKIWzKXd9+foAoGCCqGSM49 AwEHoUQDQgAEo7Miq49ZArrXBGUy93bPBn4Wt8VymXGtNzLBaYedqU9B/OQjXvAi 0wtEVFQQReBt7LrWwNBeRkPn0G8IsyZT1g== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIGstl+OvaDBcANOSMgq38Hf2zhNqzv8qPRohd8M2l70ooAoGCCqGSM49 AwEHoUQDQgAEokB1itCinA7p4yKoQRhkDnXpKtWGiCKjAEydKO82MVARwOnUfWgx YMVu055Cg9/aRT4X0IB0YVUGYtIMSOWZrg== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBjxqoprluomFwFPk1s11o5A5DdQzcTruiFpVVLS3tQVzBLZHJOuelO +wN5PYm3tYWgBwYFK4EEACKhZANiAASxeWHJQzKVvvXHEUDivFbzXFJX8+hzd8dq Q8GzsTwSUJqCXAoaQ0c0+GwC8jXubZZFMJUxQiiLBAa8RIN2VYiHAT5EL9bbd+Bj /qqqIsyXRv5TOxeEw2zGfAe8iCI3DiQ= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEArS9c9Jfjg1Zjhscg0jcJz2OM0sFIZTsD2WXMaJd7XgOazBtA Wdih2B2uxspWJti3ZXNaKE1ac2h3uBfL8mw3n8iViBvQiOQ508Vta1wjvsg1zZOd fSUai0fYSzWVk9x+DExXTz1rVDjjunu/qK1ctzG6vd8Iy57gzVlg31gUCVnlmF8z iFuGmOmmcjkLwwLC+pYinZ4Tax3x7AOxl317IV7xTm9g9olsuXHd6Y3VbTBIBywB tJFk1tDcX7EKortg+eCY5tZHvDidYKyLcYYQww5+9qcXKmMlZAcL54zoDWyvjp7A offUTkCFj8N9QC4alNpnADrABDzSuuKvgzZX6QIDAQABAoIBACmNhiunr+6I0Ut6 xry5ePCaLaU5u/GSBdvpCXEE+5Q0oDUdysRj7n0orhFDZgVfFS3Rzg2CddPf+m2g xA3v+i6r1Xj5V4Eo5VkS8yyByI/TgNlI9E4dE2/ctqBhBHkcO+Aehwpbrb9hAP7z ByrlIaxQ0cIR3A3jGoQa0Fv2SaRuWBU3bcrm5QgE8TBSKkjhqo08FOGF1wckNTDt jJzPRvxUxVP/+818CwXITUzYIOOWX5cqNpKenk9eiHBQxosB90BBqCht63NY7ewI KaZsKloUQuCgkJ8DhaHp7CIV2Q4dOSRTvwphZKiLq0hnzqJtZsPflLJHP4PaRkw3 sL0CRIkCgYEA7eKM/lWgvdn0k5/y1xfb7uuVjVDpYTrEER4hswbvvssSyElqfAW1 Zl91JcfRnBDWj2CbdPfS9Mnqg2QNJBlMJI5eBHOay/xJfSz0A6sZfFgmvnIksfu0 z1pqUMXaHqg8uyTfgwOip2OVfAmdT3fzUehB1qk90peSVlKpEQIERq0CgYEAul+E 1/J8AiCZWMYO6Gs8ZIo76jt+cv0rh+D98nI90aNdSNfeYusdyGAJxlV/7RNk4OlI 3RVax2DV6FeDyCD0k2kHYUFXDEYklgPndJhxgAXDDHms/RnXAIBzF+Fqc2+NqP5f OLMj2oPJkuFCsXQf95CxqKghSvxiS+qS3l6Aia0CgYBAWjYsI3vtgAXC3dUyzNiJ ZJ+7b/UCgYRC4TTamnjG02bMWdf9nwm4nQAy7UBOCNwSQ18qoFQoNmtDihBoAJPx m7XhXGi24BP9UejdCS9GzQ4GHRjCMUZzhZEXMr7T5k0vj0ULyzL4N19cA7nToq5n LP6KlJQN4UUMJyZnXHVNrQKBgQCCUEeStvn+gsy2RcYmvNR9eCpsnSzNOjg1yhvG ahrPemq/hDD6+WrZsE0lYKMSIX1nxbYs38GZpxvqWUbLqD9a0xVV61nyOxlZy2EL JYw299Bp6KoMTwUGVMok6HiGPnnOsA3kl116bKuFB/yaF5hCgem3A9hDljUk39/R nEJEAQKBgB1Gr8eY2JfX5Op9rPQrRoXAebR3R3beGmZF4I8uP//6FJ0Bl/94Z6oi 1wSiMSX/b1tD26yd6YNTwY8ftOWV3jgUd0CdzV1gK9xow5ZdNS3RYHBWr6Kc0Cmy rh+ZdxSjeNUe0cTKtEmlBnIdR1da4IP+43C8zTbZDKnQ9joj/iS6 -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEArezY6AfBTddQz3QLiyMul48VKRzYPWDBcUm4sUeXdjTEbn86 L+86IQYPkMZ5+A2X8YxUzJ+b2AAZmOXL2hzIXHdN81aSmOry2vA06I0ZJtJCgJHS ZJZhXKRcOGKJlzoqEKzpmRNHXGe7lNUa3EjWtGOi/CFIuWYuHbaH2LJEZfgJ1foB SwF5VCi19MlOIs5a0xUrj4t6CXKhlmnHsVZLQhKawMy55WZ1KBseFEZv+bIm97+m 5d+fw1mnl/qva2lZFgSX7SmfQydm+lIdtfi+CB57R5eb63Hyzw+2z5NWHAjmpB2F g9klN95IGvpbl0iay59khTIqenKKjp++LTycDwIDAQABAoIBAAeElYr7YYAss/Sx AUS7jxUvB/egebphdyB0qClFknGiGJw8H0xDd3bw96BG7APBtqp9aeGfGTyYzdfI QGuw/c99ZV8E2XkHAttdhwlG/BTWVtiO37zIVp9gsrnJ4e+prHgkY+6MIPQIvy4m Q1nNQ4vwQ0h0ZIaFuQLrc8DKp96ObA7b6wIKxA6q0sBMfhX50UAuRGTSnZtcHMuH FdWNvIyTq6c/s2VO4SpjySOC7TV50OWuA3NRZcWb/odO96LcKcSYukiEBlVRT7pt 4sl9+JLOC3oDDpQ3Pkkzot4Y+PLrRbWi/AtL6r9yiFaFKbDqpfqmyCZIwcGVe2bK qv3m9hUCgYEA4fUNFTZcnbBpNTYjAIsBtBurMYS6xApqdjchGlfSr4sY2xFiVdtr 4WevCp+eBNKRtNtNgxyNf/PfP42yY+f03vKLoqRrUB82WJf5T4nZ2MVC9nk30JAl gmlaAwUOJ+b/7tUXDddoo9OeVgpbwYe8fq0A8fJdfH4UMB204U3fvnsCgYEAxQzF iIr8xyWiTlpg3XKyWTXSyGgTOpHQ/DeT3IovuLmXa/NfAZyEaDrQ8K6X77uZv1EQ Tb90RoxHpt1HcQRiZEp/R55LfnpSOo2Ekc1JC/WU1wWKl0OywGTQKLjthbGtzeab 69j2+GeVScsUonU2NWVS9lsFeaWApkvMttX/rn0CgYBjMjRLIrFoHMEjNiAJpfza d+cg9xcS50uzmCI1MWbx38vKqIgWDxz+OIl0zXwOu+5xinEt5QQNrx9MBEXTbEpo 8evxO+NMqlcub5FopKj5bCgokjC5o/6DkQKOHtMHG3cx/2R+lBmBCm8RcLy1aoSK zCKFFRSLicINGY2F960JLwKBgCObujqBe0p1l433MRfzeR0757pFbGwiG5ToajTp V9RW3XEpipqc8SRwtH853cT5rr/u4zZZiaaSBQS3agiXVTxwZe3IQjY53pAsMK+0 XCXoHBx7KN9K4Yt47FDfkjSdth3GNZj6HS8ocMbkBveQnNorVEGmkye3a7chbX4A z/J1AoGBAN6TNBXR20aNsP6OZKvprZ8XuHGIHiy0fbwF7KHID6SqnBXRYUL8x6TE ReMkTxl+BCA0ncOKSwuN+9R9yDXaLR93rugvHqigk/PQwmzV1ZhLn6jKCcDPEJ4f G/89NnVzXCnnW0PWfgp2tIxqaTAxjE5fOrBrG4/VIEinIbNqYYec -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAzsddv6xSDQvM7BSM134FlNM8EJ9TqKrnbfGTn20z9crSCMGV a3T2GmEAgXp3hXdhduwS+yBz5w8w/GmrJQkZTxV9cj6AstkVqT5bOVKQelTMkqKK UNEnUJZxiF2+3dfExRiGVkH9nrK2HZbtIa5ZrvG5UOXWsrDXihCFpcZ0OlA/5Q08 fUW2FpovZ6bws3eqns6POlKnHI4CjXMTMiP7ToQT0SBfhPhtxMpHu2B1cYRJ4wzP Sl6DXUgGFzOtn3OX57TUy8+J6MmN172ygWCXbZoM5tEesvy0Z+TvSfwrEua1oRoy BXXMch59L4AGZjSXbNc7xoiA1N2je2iH5u7ENwIDAQABAoIBAATwE9gI6GixWHJm xzo6Iy37oVqQQ3Iqqp4gf7L166C5+CwHW2cWgu38VQPCheolAKnTV1yx2LKy1Suh 5llbD0SpMbaxsWcT8gV5nLoQs6yIK95wjTcC15qADTQBcRZhGazPOh4DM2g/wkOQ oBcGz9NyqEc7RdY8jNkaLebYh1wBFZb0E3/eFVbmo2YM91IcQZG0wFb31Eq0B+1V 5KCX5lK4YR2gmQJaJzatNgG6PBsVms6L54Kk5hqujGKOpP6O6XEO92nJm/2dBuiI VQ/0XeCL4W+tkyVl6dYKezo+MWwdWryZQwAGH/ItCmt71UqV18uULPWqsaBgSHjL B95MHKECgYEA7cOsvj+p7qGIjXlxz+riimCa+hwDozbVgnqWllXLLzxCPf+dw4ii BRZKqV+yCY6WNbeDGNejMxZ+l+L0XG61hyt0yiC21BW7iPdA/Xtnoevc1zCDCDXV 38+vfkdwxUaqcXgi59ZAGTaVZLny2A/k9uJZbKENkRoID2CzqbDegzECgYEA3qNQ D6vD0mtr4PWCRrie/jmRoexjv0Vcd1gVlSeBtJQF/g68P5J50BdIYYRfcL3YVzZh oHBf6hvSlHbRoSWia7CRwO9OErNRU/UPAyq1Gf+7524qSwB+zBiQ1nk7yi88niLA EOKifA63ni4woeslMrYCDlA7F8uIuLu/uDUV0+cCgYEA4QIuBzlukvNxrBlDOPXb gAMehxVd5+brtfhXbFwy1jfbpJq0bahvVAsdix6R+XNj+d/6g9cGjkF6ejkA8jyf NBVPCD5fZ2RNvrfnXDud/mGc9FTnnCx+g7kjJolrUnamtI1x0x8yN+otBU7oX8ri 7zWUVTYxBaGyAQON40gLu/ECgYAsAoaCAoc8IiX6Gy38guRTBthF9O+m0LQ9lzj0 +hFGu/gPR6RowLC5tNCHDl67b5vDaamUyIH9SjCvTmmT/FeGCCpXxDZftfi+qvOj wZ55HDdtwTY1C00FVVnUO7TY+8t0yxPCgrpx4YrkhubwKwZ4ZsgzQiLcSkylj9+P L1c4QwKBgH0r9cPyigV4TH4amA4NIvgjOr+AcV9JofcF79+RsPogozf2KY2I119U 6BfOHSRZXNSXfUOzwZPOvT0pZrw2L514ZXPE+dhlqXK25p9xQQKaoTJEDD9Unt4v 7K9vtaBgqrSdync7B67QITO9yptywz7Rp3ltmTHSAJJGywzR8Tj0 -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEApBCKzGvPV44fT73xeZ7xU9EhuGpmJu757KA7Zwgzo/DdvwiY 3SLUDKuq/vTRH9e7G6a1lS5sOfd09+Ihu+pbCeQSofpHeI7+EGiGckGaMJOpAOfO ARI7ceFto1Q+FbocNbUIFlrQl23AZst+zFme2igdL4H8ZfmdCLzJiz8Wid5QajMm fhgexBoeYjjixNYuHol+dP8gGK9X4f4+hS4U0laKawehdGjwZwNzfYtPHcAwb/j7 jxYkgoyV9rcMH2ZAZ29rD0ayI/YPvXsrDbNJ4czqqhZT3rKquPomgiTD0ASixDPE lwCknWMm1vAn/Hn+aIqsntlEM4krNzM3Xyi2qwIDAQABAoIBAAW41MZvAIyN43yt MLwfqLLWKX/PjvmCCzICbDmNmS0S32dkV6rnjI+JxM1FYS4w092rUX9YkgpUtzEj PPvBuP23nrvxSS3X7hEV1cT4kcKdwit+A8eYyOPE/qucHaacI5Puv0+Pe+GHWko1 HbQao6yTJC8K49bApZ/vSafM6JUG7Bq0ckWHr/vbCOdHCED0USq+CjK53v/jUaq+ LhhAQSudU2xYy8ab02v2po+zAIWOui53+YGD7CIAazcRDEK9rLlU1QmiHUJg2I2d X778BkNSLjFZ67cySuo1q7fUtn6ZeYRA3ZQhlxt+jAUMsQzR3o+hDjB71fKnO7Ll berHlQkCgYEAxhAu2LH2sVgxOvCZuwDQfH/FXgihZ+brEzUoTYBLHcT5HoJ71lI/ bPb09yap71XkfzNiPcjOf7mwhR3r0il0+M4O9VSKRqMXnQjbjvcELMuYV1A7mDAl g/ZizMreCOoTNSSCD33vxocY+tFgsHjsNpydRX2EXJEqmEDDM6OpjLMCgYEA1A5m QyjzPJ41B/dEpOIZAvWqrPF1wIJqkmtJok0wT3JVf7OztT9713v3IXqUP4SQCu1j CI77YIR6OFnj11Ks1CunlXOwKvsJ6Xm6/4+jC7uUq69pBcS0RaCUBVtXt70IXTlI YNzQIHXdc4jYq6j+VQS4l6q7NsOUaw2yaxXtGikCgYEAsIxoVbx8u6RzbaheQDT/ opp6IdHrniRWUq7FmB/N1WFo9ms1W9vAsa6IuW37eF3F6iSxY4WFnJC26lG7jYBq xgVXjBOplkF2oQHuREenrw5kYyAfnw77wd90PjxvIt8T9ADw9kI542s1Nw4/8842 MI/2GKVDwQedQk4oMfWnAsUCgYEAtOWPwS0WyphfvurmKQ4jrg2qSpw1CkN27G8P wp+8XZm4bBb9b9m3KKy8tleeTc0lH91ARVXMBZsdtCKipdYGT3zqGik1mITNANny dv6uZVzgx9D8c4pJCrigbS1t1/UvRG+QWekktvw1LNEJnO6uABLl8aQYzu/rFaP6 lzV+LXkCgYAgY28m0gwTArRIYBuIqhC5IQ+DaSPgc+P4xx6mPEdr8wxhENj5lZpm P4pt4YRLUTqL0QOF0vGeQ2ICPgzBAKQQyVZh5yk8o6vLHE56DhbUg2nF5s2K4Upz Rylss9K2hBOiuh/x5MFNWIqoCul5tdTaRH/vrNr+Ymz/kd97biw0Ug== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAqq6x916sM0uj3OdEa9craLX7MckyOCN4R/O3zXrvSlZhu31w ZZ20XlezCH+DLegyA8AaCa5aK3St9uUVHwwm3+rpu3dlUyhMzvM9+nk140oMi6cC TDP5qy2hnVy97+Ic6JouTx1AIy+lFcjAA7ifHa7ShUxcR05wYoEEQ6YArIkOuHGS Ku2DhS0TBF6tT279RprPPxVvbbMS+FWjOsd/KH85lom3LE8b+JuPC6HKu76bn9Xn yPCESJTJGRr+MKcVgijsSwVbssZTl7Cy4JxkzgmAPsA8QSbPdCrqIt2YviEQfTCP 2F2iIEf4e5KDnM/6MMD8O09CVTVUqKkVY8p4AQIDAQABAoIBAAxxFBF5YfmSQbVc WVk4E9a77z3jkejUMxQhoKwWkkNbtR+W5v7NRmTbJTaRHvWVd7Hcyrkab8G7rWOy Mr4y41GOvO94plbvuNucERBFTieNkgkLCUiXQFOZTa7cIA9QrvVIqegD9JUsB69l FRQgXN7ry7ZCSPa8scYIbBBnVSS+cW2mI802eYUloYqcXVxRV5AIQpNUrBhOExle vkf++l+AQfta7WM3lYZQtmrvXoKYnWBMKvtVFZeVAzBhU0SvtFFkR0w+kFD1odgl MJpJOmhf1OqvTgXUCww5ofvPk4MFS52Rw28+dCBU17R/5GZ9SRkq971yo/6nvls5 WOzMb30CgYEA0tHMZXJkvkh9TKoNIEdAy6osURXQk45sb8vwql6MGcthX7NImHZR AXkDdQ67FKgAalrOSvZJ6uGxFhTGhKMlPFJlFrZpotl4oQIHcFYUXnmcac+c8N8m MNrah6liWhysQnRBx5dmwUXYgpJn3uWdFqBr4b0ZsHKjyRF0y0JwZM0CgYEAz0La GEWTHR0dl4gFKemVqfYlcpFt8AJCZU9QpBlf6MmqAnlbeM9r2cwQXaJL5oIuAP3/ VO96Kn55xPlzdCc5UVZsTXsbr3Fp8tkEwqgDcHelnruKoGDp6yW62fouehgRmBD6 MjV5022B5/P8apRpIMNUo7ijpCtTzHW29En6gAUCgYEAih9+pTCvpKPlxCbd9rn4 T/eslWuPfj2f+hdKFLVhYT0JDSRvecR7ClX41+bQ15XCv+vCoQaAI22/ElKGRjyF luH87UaSK2oESKkFqqobKlLPEdw+XOo3IWciKiPmFlgW3GtC9bvSTOqwEcxOVZFm vH5acEnu3NYfTQss1EcxUDkCgYEAsw7TcsKw7ScZSK+XnnUR+ssP4SHpM8AP8oyK Y6sUY/3NpeOIdh/k0j3tKaesIRH4gpzteUiHZ6zqsJS9/OxiJXYfjPS9n13BJa/9 39ndVs3XRQJLKnFvxdpLykPM4Whn0tNgA/6VKGbkIytzt/RNuqNmPSeoII3aELrl +7jp9K0CgYBpS8GXW3H5Rd0KEJHEPaG+iV+a7ZyZqSskGtNrvlUcfRzBXDbVLB2h P6kUKNr44Q04dS0xUFtE2R5UzhKEL9diQZYdLIC6xkiWS1Z5jgWbv2bZI6hRnbYP z6aPjZy7tDeBit5n3fJLl6ZiLt8/BT74rsdfPU7EtWyuqVDJ/jYSLA== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIFDB2YZ5/KwjzW4KA4ss9BIqn4OoG9/K4LgB54xtsIbQoAoGCCqGSM49 AwEHoUQDQgAEnAf2vxDNq8tSDl9NVF3tX2nN3BMnPUsGnus6ijdkEP8xxwn6wXy/ bDcYIzUmmSn4AQZgyN1L5zdOlacCXrzyMw== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDDJmnmzOBH6gFWsWL0jPW5gxwjMcAoaOBjhQWflk1bJbfrdFXqLj6wA 5i5zeQ9HkGygBwYFK4EEACKhZANiAARdyT9H4wcne5OJROsZV6fHXWgMQeUCE+vs qarXmfNKO1PCyq01ZyHoL4nlNQ/WHLcAPWUmW3w1B045+LmZtmgMPsDghtbIcVHV AmVSIxFKM9FZElqgqkBxEcJgsWkUHws= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIP6PKSuZpDU9mzfdf4XygQPbhPEGgA4HKijvfm4AfkBnoAoGCCqGSM49 AwEHoUQDQgAE/kc0NEYX06MIfzAVWoM+CCrqNcVDQC5IpFvcBTIiNDlzgQOjUj8s VKDzEF9gakZMq3oWThnpnLTi1Dh0PE2Uug== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAwUppdOOMXuENILDUaNXE9GnIpVDvlkEbmQhT3bLDM+JFkA4s oSZ4/3y1ATjUv6BLVDeoSebPViejR5oo6gXXdiQCgoWsrCHeEkNH+EPVOwCbzTF+ RWm4bnrsA9HjE0+8Ll/lHzXAjxyAGUBaSWf4jVfGq92AAOzDkfyYWrxnKxixwguI GvxkitLNEUUuNEuogYePanSRpJJwZe1cKzDwKmOL0javQlCSRGdzNY/FnkCJzKNh L3GXEYUxRTtC7VGILq0xltcbY27gM0Sy210JlEGEJz2SHECN2oBCFViVrozAbJyq MoFMBMv9njPhb+yzO5fAssC3G5MEHi1FcPruuQIDAQABAoIBAAF5B5rReMFECCal i2w2f6AvIU1S4VYs90DLnIUfJFxWWD7qrd/yd5kf5sYGrnjhUQGfDhZs7EunQmEF pXhN4BcxSOfljLUyMt3DL56zAZ3aQoyBfWS+t/mJPmFF7aKmrT0I704QpSRSA1gk xL2hu2O9dWfbsbPrh6EYWUNoTIXMviutx41IbLrg0/Dhq3osyClM69t0O8wFVm+0 kj4OkJ0fq6L/WxehBzFcHl6iEq3hdeP5Nabs1S9+0BHas8hHTIVDnAvvHOya+I3t O347C7wQYrlUdGpgjW49BC+vm8tqI0b1e/wisU3mTycHTPv67xpaqvi2a7SrEpGD tsWsPwECgYEA+gP6NVau99RQyaP57ITmBk77axUEbrs8n0/XiBvZxPNnlcAjVIQy RQRE0h4YMVBW9lUzN7IVrrbzL6tjjAKmSZeDDObz0otTG32nXrxUcncd325SvOx7 l/S25XSBheZnX6VCYf/Ggb6YGKQR4D+f+btiyDhmObZSE8SX6lunKnkCgYEAxerX T6iq3lTRDjtc3odQOPND0BCx9SeEhvwnzFdI6PLNI5x19W1QFZx5VYdK9t5WYIcF 3g9Ko+Rd3V9xcTRzP3lA+v4rbCRwRnb1sY3SOsdj6GSHp2PIuI8Z41E6DSuG1Niv hafkIG1KKxyKp12s4Plr/Nw3fN+1tC1/F1xI1kECgYBTAv8Qtrdhkh1A1jElVvsJ HTBdXZ0bJw/51Yi6qISl4CuEjUctyLboM4KmQVfHB+XX5HIdDAQm/pfAPCfRVQ/h X20j24sZXSk6932a9u0TFHnWtcrC78IZsicICKb4zoeEOlrQLxy5946In/FPg9Ca Gp2x3QgUIXUfGydVqRjYAQKBgHr1p8bptx5h+2+oGc52qrR3Dg5aEPWKE5/5UJB3 Oejfz+rr7a0IuNR0Xj1wzHYLNAbMXCzVuz2PR3GdNlFqkJ9CqchF2JxbFxXwGjyx K4cxETT0IAMyzyU6Yo8Di9lazW23IXUcFXK/83BNTycj35/11c1G04JVSgIise7F essBAoGBAOecSG2A7eV+Oa0+T/ofNXwVSnaFcBY/n7YeRmCxMFTvjBzDyCCXJf3c ryzYj0i+Fr4V1zpfqM+FMxvHsX3kK4XecyFvaxjwTte+tFyvDyZK6vPH9UHkqpdK fosMajOWcQqI11kwaizrSjUy54ag8bU+Q0InfivTFIRn61tr1Dq9 -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA22Lh/em7V/PkULQSFzSWKB2C/ld5nKDtE03i/WU/elHfL7Ni ImADRzUVopc5nYvlvZ3bNY7FcOvggN1G0LLlNwA0teEhnM59byiLHL82SGwwMGw4 tUK9Usw56cokOyayrvj7hjdAvzkB5/XwyclWxXYCHcv2ewxiPwMjbc+4y1eFUNmv o4gnOzWpkj/zKMf6GwN+P7le8UZ9xX9oa9xy85nj7BS22fZ6Oth0WQXOhyoMJrMt COurzhyRW0zaJfJw9DDCn9tB06RxKbxtWgioazoeJAHP8zK+RmZyt4XAfOExh0IM zvGmP7bDZUCh8IuCV7yXtSBp0fx5jNNlrBtRqwIDAQABAoIBACN0iiBuh0PyGxp9 15Sff4rxJgvz2Cgbi+T8R+x60fTzSVYcsAXtLWpzJlF2Di4rf1ATNGul7LvQqyI4 YKr21nt6kYo5XaTJbFUsILtfHac7sNgKjWmh5RX+AngJnqxely8W9xNcV57v2CKE SUtbOiZEaZgmL+n3+OLFH5MuKGfYKwknoWiBeiHGMRuzjceWcxpk5HuBL19t6jUY Al+FGpjoDQSZrgcg7EO0dWc4cGKF3yDoCKqYocmGjjMOmGxvAjSqTyghDn4UU1nS eDmNWs+m+7GTTBZ4K1CqF4Q4br8x8TzS5s6akORPri73kBbDBwxksfUdfE2/c0JT 4hDJKUkCgYEA56RkvvYtJy5MHBB3EAoU8s2w7eJBLkbIg2tEXxMwAhqJEDym7SNX uuoLJsWdkc8LxzWK+Rh0D+GcYd7onURXcSFXjU+h7v77s67Rx5YFUDKiFnMyN72z X6j///kygSeB1U1DFLbqkFn9AP48FlUykSFKp81UukeLvkXb4uPCSYMCgYEA8nSS LDF8Pj8nk5/ou2eXa+DoGLyQR18JmDJR9n4pjkA4mdqnF7pLkVcwizSv/w/HHpnl 80S613avr9PecYYGlxPLNLLSVLNbWTS69VV32VCKH62lEzSPjoxya5Tcup+L8a1k 0dgcwRxfe7ylsxr53FsIdiC68Aidiwz6kizOZrkCgYBztbHBljUt6jmIl0zyTSbz tn3YBnoqxJ7qzs1jdLE5i8nFu5ZixJHRQ5H4dyRjrnois4NNNMLdIAS++ttVm8rW LyKN6yZnvSU8N2qA+VaEHhbLghWmtHMCqOfgFLn+vB5lz2df1JNNMjZopZacTUiq KGgjdDULrCuJC1pwdvcZQwKBgQDFhG3ojs/WrgCB5U3mDjhvbCPoswUe/6+DS8s1 8gXMm0kBHf3t+JjDaLJlVaDjO2lN5rZMfntwOIJbzVB0T2li/n8XCW8MDamnfKuq XdxrL4+2yvGmObWRvZ0hQ36mkn+hfU6bHWIfeAvZdA/RX3KaL5cvFO71yS7/Lq2b E+F6EQKBgDPl7SkCnNBB3x+5mYvzBQ38fnwnVWVNTJDsLcjX3g76d/gKfDO4Vqoj GwEiDeGwZystH0B9cpr52aGeSmkqJ7ihekaV/j8psJN+TOyWQ3ThvpdNK1mNZ5QE rT84So//VCr+kEq2UukoJtryspeMJqNWyf6iJDk0bW5SaAou2qIe -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIIzBGlUpsS73cbyTqMOYNpuuBLO7WuakRsrsb2rKlNNjoAoGCCqGSM49 AwEHoUQDQgAE42l9Bi9hjuF3+F6aKCmP+R0O8VNnESZftkUOAXM6o9WyBeBwrkCw x7IahQB0QSWJE3QAbA8Qm6AR5KuGV6d3hw== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEAylMVQdfCN0vTin1Nux1qJfbbexYu+GUg5rj3+Zur64LmHAyT BIA+yiSNmUJeZcP23K6KrtR4BISUoNXiFr0YpfQ+kPe/CJ+K+to3vAtqOjyDylxw gXpr0P3NM9leenLHBxjVwfOR/aKBKz6Ih09KGG1nHV24ZLOAQNnUIP/P1Fn62N5c qelyoPehjFZTWjtDpWjMKiQxrKEPULnCK3HtpTsUdyqMydxGmGHjHB6hYlbJXmDm oKkBaMPRw3uCdn7GtKlBP8BCyyLL6p1uLHKcnUx8I1vONbTnvwcbO7vczweAxRjw UNRC9bMFdZI4DhHRmYTNg4VyB6SbygTa0G7FTQIDAQABAoIBAEXjOR6LVu0e5i2a ZvVRjc8bXGlCGmt3E0xfbFjuaw5pIu9hcI9HdWkCA1+DS3Q/otBMAl+tyN9WpLiB 6R0NqKv6mHoe+gASjEFmi4YLM2B2cte94qb3ELMaWH2mgjot144eCAh9CFrifVfg u+xxeRjDAbFlJEK0toKwO9RCSRoCdTmaXGPQHaVp4aUUyG/MHIXT+2Scxj9zZUmy NbBU84RgEpp1NAewexrbvTNBtZz08KmxozSr8OLyL9XOJxK1+s0RUk6ZsAmxCqBz bh8sRfqQGPAJ033lw0UEO57zWyZXH9smyl0u9eQmHyTM8KXgNB3Lo5DD/UVQmhWO tQH0zckCgYEA9QR7WgMARBtDlnbzSgrw1jUoczBCfq1PQwIpG5EdSytFnWXwWnju z48GTtacuArljWMxxyf+370nlxsRbdsJqLdiQ3qUHUK5rs56ITkCQtKzdnidzBO1 L+s5ggozu2eXzLfk/rMxj6i2uJx/PSD7sysWKq+bUn9K9KjmcFVtTAsCgYEA02S1 oTd408+7yfVycaJ4IevqHk0h4EYRq8WDPvdkQ7346hctgMOLQPHN1rssLw/O/EMr ig+ed1sDq3K43h0QDEqI+MAJ2i45nWAw+jBozmq/KOcHswWw6GZGgDYLSM5XAOaF Ux4EMH64RtgT+0dc+j6T5KksewaNuT5gRRCSswcCgYEAvkEZq15TMY9eHxMEfUUb l6m1XCRoLcdTmbuuweofrgPOzZafWRE4ltD/W+6HyN0lPHF+8J9c6M0PVeU91mjU Cj9DvRQMuN/cISHRccS7vbmwgtjL5vCSq7/iatiTLP0WwW82EJSCcoPWRmm233ei GpDlaIXtfNS9FlekgCvFb9sCgYEAjE79CyuRhC0OfKbwNiJbUFCQzVnu0ThQxE1N pr53i0sNavrFVgD0bb/RGuSTGA2LGf7PaEyjpp7/WY3EzJBHtZDHRyvXnjwuO5m8 CGOXPOK3TMPDZXyyhh5UTwcQCFwEfXGELr3uk+2YDFWhNZiRSvu8F/p9ro6UBM81 AMJWTIMCgYEAgKJQ6MoFn6l6p0t0XG1jEmumyY0VbfozFJcwGbhqDrMOcXSHcosh qM7xyPYW4+uW3wPnhR+qiPk5IalJpxtnhTwY2CgzWaMXiAsptHISHjrJFUUZVuDF B2Mc+DgSmNoraZ3jBtrEwoVLYtgXQQbGqrm55dAV8BrdczG+Ual/eCk= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAwgF1om/0EEFplLHxT69JHY5jQlIPPm2q5A+0IWMO6kJhIFk5 j+2dcDX3VcqaVnUmqufVqbZtDntN5a4Ml4Xnam6WXpb1aIr8ODK6KKUdZpLFVHqA xlNrGNYLKtuRMo5VoM0DJ72pHoFXsKHOAVGDa/EsoGf/S8LoitsHl0x6MSWgAgGV Rq6tm3E/8CykXXthTaXMEMBu+mrPJJvadOE25GeaCXzMzqc/dpfWBTk/QlM2Ruai u5umFsetp9/i8VLfpcdJpkm2FZd3ZfippbryzqkmZJFT/Kbn75+gfS3ukcTHriMO QOf3PtmEHFmbKbudBm/yHYl9O/fiQVHf2NVwvQIDAQABAoIBAAos0+vfVcxldeFl 3MtqXNoXPfb8QU7rpw8bkL3AiYd5UElHTLjTBFMejXibLfGTZuIHU0I5rmoYRvth H8lxrTO8lZfj8H6ZbYWQCYn4sPxQfdeCrk7YkLEmhsLqbajaZLzQi9YRgTV3oK8D qX+RtCQc69OE6NOjJxmjR7hkezMpF+SMv71PW78S5JH2Da952ymUW9yBmr/Vvmf0 VK17Z8NVmUMW7c5aWVV8nXnHX3Bxx9eghIKLvzSzHfNXb8+G5/tD+z0OTxgT+AbK lXgWNvOLqj3AbFtXco5/bjxiouFiWPA/tY3y+w4yUtBlIjY22xcrURGQfZqkSkQJ AlCpNGECgYEA4beAQvd8/bu2KEMS9x6PPlDerYwJayRVnEu64RpeImaSvVuvUhJt JLU/swB21pn3jsqyHAoY1EiJ+TGG/IWIxt4+HfVdwGAHuomtwyMgJwxrZ18a7lxC g7M+1UeStkmBbO1A0Wu2Y9lzxbLvbCEqp9aSWIH3JRQzODo7F5NjCiECgYEA3AjO DLlH6h7z0MPmZ/9e7zYWUAAldzUZS6u++8m9LGGTzFXneuaE3dzscbZwNLkGVjfA Z46LAxOvvQfGNDwbdqo7P2NGU+64AQagC/qE+JNBZJLnIVQ3MN5ed7Ikr8yv2FqK Lo71SQ2+5LIlhom5lN3CqJFrar8UFVhXwcwx6x0CgYBD8SdjgPmXqrwfDGmWBxXZ DSCqHp/rJ0m5vTXocjZppnR/GS0ByFggF4qwB/C9kiTpT2wjcoqcw6T8ZIMcWdmc +uK5w9TPhlhtNuod9eHEv0FJIWCK5SyEVh0Qt/Wady/FKPk80G5bSeZGWSEmbClZ 0gXFLIHHIHh2cVi+NPg34QKBgC5nGPUr+dOQ9YA4YBXckCvIb0otzbjnFM+Vh7BX 6jI63c2A7FFJ3glf9ulAPUeRIZn7JfNw5zYd57jos87+QhhzbA1BJWq79EgbGpOM IJC/lVHdfSrVNNJ0gt2hTwVYGFl7Npr9AROH95MJUsqdruqLHesox8t6QoUB3Xf8 VSatAoGBALlvGGXB4LppQ8iOCkNd672sphnaw+z1+gAN6cQ55lGiC8yIQ3KKAMpP X2LYKUBlEdaWsCu+sLFKn4vmgxG7Snv+wrMI2fjNrvUDTl6JS/0Qw8NAlWTGGuAa J2BMJKDIh01M5VKkZZfTM/dN5b+mFvt9Qg3m1ususBWN2Kb6XxnM -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIGNF4cxRnhYjh6HbS2jpdB3RHZ1CILHOIf6My5K86+HloAoGCCqGSM49 AwEHoUQDQgAExeMqatwW1v1sjYRXqLg4fD9YTr4lSkNCk/GvoiOZgouSbhdn8dvC HrHMtrzr5N8j/sNlgC+eYL7sTmXB82xacQ== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDD8g61Es0jqfi77m+M5sMn2BF5vJEUxA0b849JCJFc8Tay4AVGUFmkX HbDnrJcmKCCgBwYFK4EEACKhZANiAAR4lo3udKPo0ny99WWRFUhWH2d5qC1bET0N CQi9HHa0ti5icdmE1a2c2Sa/PvEk4TW3vB+GU+PkXko9lG1QWAF/sPCv6g5kEYs9 eFNaY7PSB9oIbtl4mtVUsHHagUKd9oI= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAvyXvJdz2jfufeWa87/J67djIgkTvim0KAjYzl9h/C1WL5Bz1 QDUvQTcrMJhzoHSqUDiW7ARJ9J62lWuJdSSA9gpqtx56eTtnf7lL9rFGY2eYIZar aY2eTaG0yH9cfHQct9duoE36Fj0ThhsfK/NinVxmL6daXVkYJfnuKUTHKXtqgH/L jihzZuogwVcxPf38bIkjVOmZEwyBZNHrkpBUkYcH0VKQvQlxaMY5sWJPZS2dZz8t Yhm2C4mUZRHxIt3yBluJXN++perIfpn8BGBCXBdH3Bsqr2wKwBCKCaP9ZIc9GlFl J0/beFeibuRUF1V1qVQ1PoHrFA05vb2p/6TiWwIDAQABAoIBAFVvkqMlTsxqbb64 9XT4OArMTN6xCjIgh4syh7/0g+BghazZZqMiwnLPQk4vrerHioJdsNNgHWApemlx zdgej0epo0Yi6NH8A8g6XaIvXUs79+r3abk9k8aWIvREvOVhjp57O5aKE+BRv0K/ J6Eg4XB9Zq0hC4pSsrDys4kdlTlMCy+pU7GqmK2PKTfrlYF4bEzFw+1s4GiXwPXg ky/Ki/pLwE+6lF6x/MOxpJoUHLNO+gEbrSEWfs/0PzMCWNkaIaC8zh0ShF31L5dM ogYrobdAeKXhL1G2NsR3/JhcNrTpIM9w3IPB2HnWzaZBXa8ez3th/5LBdinJqsim rlGmuVUCgYEA3madXol2j/All76JP1xyUnZBICXUOmQ9fjSoBbW8xXW6w17CMUrF Mn+hRhbZCJitGFrXxku6y6IkOfLr3csA5qSkzysfot3KvVm+Jy5w9W2LD30BPVpG yR5fRmkUQzIBnfWiaZ28dA0zzhtR5q+PTYl87HD2IC7CHX5MGCfr390CgYEA3Aae RufcZgVjVS5WXADpert+sX/EhvIZ1I/lKWJ6Ag0R6TiXgxizonXHutJTsm4Z9+oe FeDSuQwkJsEWWaXoJVoiBdA68jwTQMB3gjBDpVUPSVPKHwRn68YV6mzSPhv+Pc/C yngCwEnKzQPxRK4BFN2GuYEmY7qSd5yLkL9RQ5cCgYBUXb7i5uiYD7RjDP+Jjqs7 huqLpG4OvInrP1Rh3iA/E7sGdALcqg2Ga44lRXONZEV9kLB746x3pQlzBijdmS29 UMXIZQZ6RQKss8eDm4V0RNrUxEndGUry7lecIS5zkxuz7UNwJ0sfBwcY75oxFXYa JsbB9tQXP0WZ5Jg/LZ237QKBgQChmxrV6acwJ/T1s7sqiGD1DJHZvYaTt27ReX9Q DkyfBQqKyk4+s/387ZVt2t4uyD+6n/LJDwC3eftzm47W+cyw4qrqqi8hjI53mOYu cVS+MuOvcCOc9Jd/zVZ7gMJLbDQpIlhobg1XPtv+CU9EqqmQscUqq3mO9pJt2EWK Y3tEsQKBgQCH0Wz+gyG4Jgm6dUKbXdMs9wUEJqBSdwUsXTveJfHGwJIL90n9np2L 2NaWfQiGr0n6zXOw496EJazuCmzO2SHxHFZLhMegjgiQi93cP0/ckcct+HvlQJtK NLuSAzvNEa6TLfuj68aBTbYtlY0EPwbOy7vP/ab4zZeKv7qWybEJdQ== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAuf4laWRGasgv3Ei/+ooDgScv9rdAPr8NP9q5P/+KiQ8miapX 4nI2KGeHAMz5L3wlzmN/6x+9G1lJJ+HvAm8Q03Y4CjQEdmBz5R7XC85GwuIxJJE+ x2RviiE1dhGAd070k0MqW3C7DgDBQrk/T8uQdqoLXBgQYba9EfrreZ7guN7n5r0C cWkZDO9z7a7zVQSNYU8NUwC3wejLy1RLmQRXL8Uf2XKEJq7cfZeBmYQO/gy24L0W JUf4y1WymrRyR4oeLPc0ZzOCW/n6izlxHbdGDxPq0d5LlTygJt5QGyZrBrLK1jwV sGv1G1UX1Faibd2wlaMryJomimhFfb03nn7fdQIDAQABAoIBAAL5wm53uLqvnjhn f47KE3lG/7jyQJhgZR1e6fTQqU49DFBKheJtElm+IkZMgTYVxeMR63N/C/76hDWb oz/GOB4x936OS337WA9T2XvqXm5ywPeFTVxSSoiKtHjBme0OudH7Upuo5403TOA8 53rm1lZXrRvZlLWDf23gtlC5Tn4Wp9hxyRJYDnJ1wf0RJjrSgbvjIaRvwpEBvp08 07HLgvcLshrbjNldWPwyF8xI1CEBxs2IQI792A+2MzbMUdGKYWP0GBvidLxBtHc4 pjspcRIWNTZwkfRcLwe1YNk1HXHkFdV3brDYZ5spkrnIvZevWk1fkUjorQ03Kzi7 CPn8BEcCgYEAxAad2djAXd5btWTXYApkyLidRXM7EO1YgdceSgredrVvSdq1gVY3 sqS76zMpHZexheQCOExqCw5NMt9urauK4sG/v7sz/1dhZ+FLTVkRdC1PN80uFhHR qw5ogk91rO2TtKiW+jZPVQI7BZBA5YVHXYAGsz/UAoov+7P3t0RJ6ScCgYEA8uW0 lFxSGyHUs/TZNkYr5r6zms9v842PSF8LasH7NS/T6Cv96BmK+hqEbK29mqRF/vtA ZiZpNUNg5wLNfdZsocL+y7gwri6bFQ/116MIpa6r2Bgm5VMKa2qkTVjx5Ui5lX6E t8rnp6aMPiCRbymL83D1Tkz2+1//iWp8sQ6kPAMCgYEAwud5R8M18Z9HPCKZ6soq z1CQPx+FmR0EpYTIfwIzk4BuuNYXJhQdqSgWGJNzzBKp1eCRPHzt6zQ7GdwCZfds Tm4qQ27VEotFNE5T2wI2UndCjs8ZhaQN/rCCxR5QeLJ37Ga8Ruh9FJ71JGD7xbow 7QyAnPVXzXasou2b3cKuYn0CgYB3hA1Jnu+LiCb38Tdb3EVHwXfwabdlOLdS3elp O0+XCRSUveiuZrsaeyfDre2IhOIoJ4q1eJr16VRp9tgT3gkPwznKFbRmUGpgf7zw wLjFhV/q8V9aIXUUC6ISqPxFXHZsl5dINB+uP2XsP+wvrVq+i0s4nug8Ii1DeVEn cdPf7wKBgG98vhT4kUbG0I72930P7nk9wx+1YcmZLE8TERso1kjw1GBX4RblJZCI +H+4JaBUsdfreh+YaQVkAyP2jNDbsmBVGJkVi/2rFbKpasN0n33PxuArfScAtrdt gnlsf2SEITl4TnToSlXwxZrMas3Wt+KQaEYe+n44Ff2ndYAI+1+V -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAqPJ/AmyL0zLFCCeRYN0QVrZ56lQ7RjoGq7GmxbezqLdk7SIr 45tlFJ3vPVhvVd00dW4N8MUKLGC3BzgpjxLbmnvYQDds8PSZENBYD5LlO2+77nAt QsOkT5qC52ts5HDy2GwHsEdRPm4CJuFi0zQu5TItUXS8Ho/q07xWwUA/H+HudCsj 91mU6zEiu+pbNCgf8MO/JSGBgoM9KD+llvOFByMwemo6X5aOIMSopySqcd0vr8C/ 9r8/Zxp8wGdGPZClNYcAcMT9bjiVJ43y6W6TnXWyk2CH1h9VJczHH7t4Lq9fSENs fniIPmYQpCm+AaesWRzlVLH2vFS2DKZa+tbE6wIDAQABAoIBAEgeJ7BZtIBFmkzm Uw0FoK1bPISWSy0ppOJStc2Nor/g9VCydwi0MzxPRKorn28IO5XrEkFWYwbZjBel VjwwQRTbS87xuevLhbFjNkwDmR27jv3z3aYzzGZ8nud5eGS1gDx5NPj/IIOlQv7k 1CIzEteciTLNwWXMamHS8jeRHMEXJoTMeqtiAfMcWKYm/p5liIFBDknrOrdBdDNV qnZp5TcQA7Hv9GD3Jb8GRe1eaKJvP+yjkDNsBWzH/IsX5vftepBaUXcvGy5uodH3 +wGOVAYdnwCyjv5bRzblWlPFq10azOXjw0PwCxnpoq5jx0cVOy6wCjnfDJ458h9Q 4luRauUCgYEAu1PQQbBeKzinW32Uzy8YnEAP3Ie1/Yc38e93IFcdcvev4HOa4Mql RlsRGH2+Hkpa9PaAzwCzD5EG4vZVTA6iFea0Czi7RwSr/j+XZ6blPS/2lv8iSNzo byC16mDdstEPTvi/envlBIhsIZYQSpLWYnlPa4NCqra65xpmr0R4+q8CgYEA5uHB BFjiViLoeUAtP6b4U7gCU3avKFJ2tLgv+jqMXkmVcpJRbl+QtZhEZ0iUPgaTaCd0 KFVIfz12viihlMsWV9+eh5iaDhBBuoCGBUb2YhYgl4nQr35IqOGhDCVZ9xpNA9hr hlyulRfjbSiINPTlWp79Vxm8355Dm88RcrnN+IUCgYAjABz4ORDPOI2kfYlRULZj c2DDTqQFU79zN8/lPgGlmnvFDzSP7a0FwTwnfE8Kb9Ag1vHoO3Q5Y1qLC4WSaWWF fA6FzjrHoSrVnWIXnspULWMAgXkRbh0Lrmvu99xUbdVTZwy3wPBgcXDqsZQnqtnd mlbpeqP5K50uUvN+qeeExwKBgQCKmxz1Lycx7uMBZ7XCcMrD98Ptt2KQInGBLNIg tuVt9V7y2URprpWBb1ghaUEVu3zjGkxxqkFLoeqXXm0iloljV6wkW0ihCMFs5ZuP r3paiE4oq2PM91NHj6zPTd0kq3VwyYxDrYBhoWW3Mo4SvLK0JJ6Sm7D3zltoPneL GGC+wQKBgQCi/O+9SwCblocQ2KCnvSQAha+r/q6Y1H6oSCeey8H44RxolPI3QQfB 5TyC/cxQMneVGi/6nGl3YET9+F4HXfol2xTSOzyAgTKqN0NoRCrI12TmIlk608Gg pj0nvFTIXpq240hmvJi9F1CnvBvcC/xqAvU9DZSGkb4cvqNrfuL0tQ== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEINlGn1jU2K16gDmyiyb2roZbw2zfVRnk836EmPYG2WKXoAoGCCqGSM49 AwEHoUQDQgAE/4VB7OeXQWjcfLBeW3mM4QLIhGx9iPBQ09WaSFUn9ez6tCznfWFy ka7EG/7cbOs9/kqbjiS7k8BKZpb8TY60lg== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAzja/gm2dZWY5WAkYUFp9l+0P2BVB+ENXo4cpPd0oSfF8oKXB IQEF/L3spndnqnK1pZSr+WJAsCdvFUfbLvUeFOYdYS5psXu0cmLp0Okym7kJc/Ss 2qpwu3yD9PZ75PtwY+qpaK3ZGIA5PAmLvWgTanf05Mo7pz52e2hbHUZVlwyY5HKF ije+p/S2n6Xm396yT7Fi2ibYBadry6TE8SUrBtaBd9AcMOxcdCvoXTn96yH75yN6 8DydTL6urgbRuwmrf1AhzsVX34qOr2gS305mkwy3MxM3Jt55rMFGSXF4gvgHY/fa 7FiKYCtSoMPa/oOH9B3f5AXa0v3hjckeRghllQIDAQABAoIBADDiAojZEjAYyOwp D8XwhYgvrotTErXWxN4jaq/bDrNklt4AHOWFeBVfMkuNz5m0ooGzWgb+dwYq+uap B3i8q1pZ6EoCthRYFkDtWK7osNIATZDaxeT59UpEbIVzro/r2Mses/T4DRgFQUwN mT4Xf07ES922YOi24mBDryGj7CMncEi+nDP2Y3MJm0NR0faOkcOC6FktRN9s0C0G zdRh2U4v57BNT1lFbD6GXEF7N70y8brgjJeBPF9MhvyT9cdGjGuFgakBJwGo3rp7 WmClmAZxYLQw+A4KB/J5U7pWgyxaFzMXj+YQnrTsEURkhotSlOV60kMf2pl+h6iH Vtj1aisCgYEA/y6R9ye558fmsfov9yGYhj9MiN8CBM9sql98y3sfTl1Wav7B56dH O+2/8JYzGKgIz+fo6burQ/Nj7lFVJdBdtmwAb1p+jYy7SNjhXepvlZLl+Nxz6Jwh 6I3K09yq/Vnddt5d9srpC+11S29ysDLpeUmrBfkjvB03Ff0tmuugYysCgYEAzt/9 S5z0k2n2ItHJQ1cT4g7qk2+HXXAGPtmyUjXnDXIfClVH6xV8AUZRsD9T7areMmbb VLQ8pvH4gsOecZIxoHUvmB0Ck+5xG+DS574v9AIhXn+5i2m4gVOKa2kfE7QHWZJZ 4Yh9tdbpXyNyF48uhAYdRElRqq4UOX/dj34o+j8CgYBMw7KvWikHu8//bFbvjhC3 GeWpKwUNc2SqIA2HnOM/DL8JctfcGytHsO7Trity2GHGQWqEnasYxugh8h+eP39h eD3tQZjedh6E/JFXUkX9BfLemVrY99cPgVApybE6g8UmlCBKNKJEr0tgxQcIUFiB 3xJuupLwbQ18NOx6NTXLfwKBgCRR6vSFf+MJrW77iexKs3Dy0XhFEmzzKAWMzuPk FsajjJOR2WiKgxTuNZVN6PxHDW+n40YBxsxAmzLKCV1DH3deW5bHMRarvCv60sxg 9aZPYXBn2DmDvCLoedrVv+EDsG6nZSRVhEySiLJtVLCSMMZ5FFZS0QW4PlDCBDIX IjadAoGBAM3zlym3+BbcBrKod+8d5ggTf6Zo6GTy4Q4ebm5drWV1liPkPd6juH7A coMomE633ESSLNV7pf+mxEPHI1sT3/huOq1v+Qpc9U14Jx481Ylwf/GuG53rhZBx YuGauW//rvbMhd9DxrH4RsJtocaJdSxAhcDb10FmfBJyX/G5q5qa -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAg7yGsPmrZRE5j5xKmoaCfsurRJx1/3cddeFI2OGlqpJd+vhe TwOALJkJQ+5GjoA79YnheaaYa8ADTmrJ1aYYdwqOWHKhs3S5lLSXdGsQAuErch/s O4JvJ2kuNmQNVFtNTouB/aOFN13XunZEIDrX6ZtqmNZ8g4fGy+W+01d4XUkioNp2 JR5gpTw8Zatiu9ORixvRLSshgwy9RN4bCweVxQ1fdXGwN9HRA6s0Sn6ddW+gnDnz TnWj+O5D9inxEs1OWep/B+Q/h2JMIudBgtqMGoodS4nVCJq7XXjheiYPUpURIe+8 /p1qkVK9KZdF1GNOmWp194L4MBNlPvRtqYWvRwIDAQABAoIBABkr7EajpjLNHEUL FZw6KHQm4YZeKRPTxE7SabN7Rkb16bw7OfX6EsMyyLjwrg2rhglwO6OdiBFKorcY o5FNx+3zF+jhmnEqVA2MhkYJ8QjD0qPfYqmqTifnKpvc+UkNmxNvh7qZxKokJcTs tS69X6U0+6TRkwAk8QDj2NcUJx0XxrW22Ry8laU/qTO8Bwd8dScVEU4TXpTW4VAj 49jEdoBq1XgvXISFb+4mzK+IEImC0eZHUpIqOP3eDai6yuJ/A8uHLJ+wi6+LdQ2R VTeyvWdF6+jwgKA9IKJfnx/PcGBcpuIAMe9Uk2Bo3SVYC4rV+zIFh1lKxX5G7ecM NRjI7P0CgYEAuV0e/JrqalbWH6r4qiD2Z3LEz6OXdqY7ytti0Fo3tAa0xAx8o8YX cBemblDoLRxlZHE+aWFZ7gVqmW8NBBAJvb2k9+fg5pEWE3wczsoAWkJW0mM9nOVg ptx/XJqmcfllGr0jsURsg1r+PdjfpxtxHTqv7HFxriPKVXB/yXqoLGMCgYEAte/f hQmUnriDZesICRGwt9O1IPnjYeq9ImROKeWEvMEHDR1cmXldT9mddOvNxvbQNXXk Y9IBOS88+7OzWtNmKgaL1DLeU9GcB5Efk/jpdrUKqHK4bx1awDyl9R4qdGT+Iyvk TZBqRdV5uSe0TOFptAMjdu8sfkojTKqV9fdcjM0CgYAkMG0LTkdz6W42ko+nz3Wr 7rlD/KFmlb/YtApPuT1k1WZXXES9SMBsrwFcSkl5/TBCcuWHd20yTjZorEizQVpV hAAAMnIzMaJIvZN2P/Pfq1H+E0gFKLc8/JGVB9B1MgauOL0OL9irsIkwk/XeTzo/ RaTxGZjjMbOgCK26LUtGFwKBgEGDWdp/A6xPxsj5ZBBX9WmMa2mvceh9bZOnyNmf Uzfgzhgz3XdKU4aAVwmWK6gckgbeJ9ql8VjVIMGGCOyIuP4jE1Da7GIEVYoIAPX4 qKDdOjRD8xPX3yjf7eag8SqufzDNCk2/1fTFlSpOGMeiV7zBcJDQORZUvfdKaeuD Iil1AoGAUX3KD1tSqHiNNiUWSDro5d8F82vBmArRh9+bNfGGUYouCLQgkR74q4qk GIY3yKmH1A6c6UBDdghltyOTQIdQK5GKOa/LCtBxOw98vgHbE38I32tEGq9Q8bNc Z8f/u/TWV0o6/SCU2dm8/bWXwB1xeBXdx51c382qXTEfa4nPq84= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAwODFHaVuIGF7v6JTEe09S6EcE6DS5PpfLZHdMtulDQzNFYvU Nsnd4/I0+Nvnx3ExVJ2/jc5UGClCqGKTzzbm6SEuwQixpXJB9N+sqzMtWvvvuyuG Nwo8GAsfI8qDeiIc3W/hzcydyAJ2SxiG+TZf6j4bfRqFIxpfQPrN5yRWfRj3FqV2 T/Mk8ouGr9fD+q8Nhrn1cQTbYID0lD9SqCZawk+xeMoq7ciVbqwgPECP22v9don7 Ej66o+TkGuSJ0C5mbi3DdRZVyyk3ITyahjVc9yRPu6r50DhCILnzlHdmFdXuO82u LN2fKZZTSAqyJHg+8SlzCiikSkN1kmlGkp5eowIDAQABAoIBABQo6jF5ExOrXMXg 75HWHCwFgOvESYbJbJ1Uu6wPLSc6CU2ROfMoEls6+7JvOcCs4h0YB+eIg12rIl57 PzvPXz9Kypo+kGLcmGxB3MhgJwN1hc8oc3TZSwKwVubkye1AF4hFo3JhSrSXHUoo HCN8PXY8W58t4HCU1xPxowff0nJstSMwmvI0DkOiObQDy0qKwBPx50xifTJ6SjMi z9ltiVoMDCLbISFzka5QN0TKMT+BGF3H2n4YBUjhc0rtuQk5XZxDBoZo7i1Xbf9R hj71IeCx2kIdEZVmYc6oohSeZiHzTnwhYS3nLAGwTguEuGh6/Fd4KbEI6ekTj/Ck ILi5Q+ECgYEA3gW9OsQZq5LzK+GiLANRNAnr4r+S/2W7JLY3x5UIZ3r/YVlIHS2v oCq6HpqvQCRuhDBouoPWkUx8v1NJoTGcTJCDcuAN9iDCuBfNr+8v6YVzW5C+IY5T HOtl3iddYmyN+UIeOUYdajZBr/LZxCBC1oj9dRSc6ARbcenOD+Dh4dsCgYEA3mU6 hXA7OPSK7OwNG6dQTDHDHSWH7K+scsHQHukPDAjZiX48ndYL1eCJ+kTBS8PCNMZ1 QTsfTw3BiBncYt22/l+ybrmtiYMsmAxdvczJLPdrVL0mjxCjxgUG63KdYxjSJK7y J5FOACYSDPQRw5dnO1GnppzgT5hLYvNGB1ljhNkCgYEAyHImBYhGJMDnChcLcvEL vw+2B2EuNaaC7wIUGfxTOhmxtxIEKVO128S3hCnjTuWVYYLTCpE8hrGnbpSjRQSl N/rAslXWRQAOzGWxLcWkXBA/tctX3LPCFbnwnkCr7tBS3Vb0MoE6zUluxItcT9VQ gp/rNGkHv/EvHgkYIP3G8UECgYB6z838aFjb//dEFKq8ba3jFcvYqaQhKXYCvVLP 7wXXMH/o9KRGyTAqAOBRK2zPCSCTAlE4H40Pm9oW7akNk8B9Qp2HldPmT2Dt6k5O BOvHgC5uUjIb6SV3scj7doTBd7B8f3vMK+q2HE/1hUbWCyL/1/zL/m/EpKZk01EF t/BEKQKBgGg9nVKJaBEVygyFO617tEYcxZa4DZn4bGrlEbF3l5qKovlCRFCYgXB3 +/597d+f/PwztPHxwcanCBlmZKgh9MoV3ZgADPnGpIBYUSUumbvnUTl9CMQL9k00 ksXtZzcYN8cQRAfC+e1c7Ce2N9z0X0ym0LdJgyZiqQ4gRdw86LPy -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAqhI+URnCCl7xDAsUdRtDVNwuiZX7yWrFequuw5+5D736GrFO YVzVs90Nh2sWCcyrHFSXOzyMoJRVtBagq2GRGJn7lrmcFMbuh2AAIUxzcCLocleh MnRoHlYzC8T1YvCdPzqyTiBy6h9w2LHJKIykte2zShggyiubB+saVGZvzhtMmDib x1e04mdOCn5o8FVCP0qwYcRfhyP3IXe2LBAZV/+n9wx/A2HRRFMKWYi/0yyR/wQe Tdw6ebAxu6ql5To46N6Xb/IUN68jDc6A2/6fZwbc5dRGjAAkpdLoxXf7TKMtTb6o WSYlA6IDjG6KFJDGA/VQ0B7XK6Qn7GAWY4/EbQIDAQABAoIBABjC7uN0SnNObxkP n0BiTPN/hUpklb61zB/NUZ92KLBukAoFM6zATUr9OG7gJrAcO540gLpQBAeN4Uvc RDNU/BZRYQyJD1JabmMzv9ZuoPC8MbdoI8uf9YLT47sRx5/KpD0O/jlFcdsS4yVh qTCSsu6Gt7pmI0FcMkZnsrMuy5YogrnID0rgFIMF/DCqEreHLiF5gGT4/4oAGCZU S/vKzMd3oMEJPhxcWZEHIAjeI1PiuqqcauApGaN6LQr1YHC9IgBksN+n/qsbHEdn osjqFnYAxPuQJ/qDxSDCeLb9xkHwopoe0rj4vYej5LgbzaFqy7AIuLMwwW/r3R4i IriAvm8CgYEA4pbx/TijKpKyZexMFjkroBiMtdExAk51E48XUyMWr52zyM4BC9W5 vt7aDH6uVjDtsNUfcym1Alkr/WwGiwQMOUqLGuSjJ69dhmyRYnfGGemXAEZ61aQg BADD2WhionzMfsuqkrqpoE5s1/n2fhExp0unxiMQLWYkFp9kqdlJPp8CgYEAwCVS fB6RJGOJu5YclxP+mFYtVkSKPxHjlP20K6zO6wYlJGuIOEIzKBGYSCG9hEwCr9DJ YjDCVVVBFgWSeffdxc4k4IFJYSXCNU9hbnP5FAEgYpSvfX0SFGfGE4XsFx6FzKOx aShKjs/vpofKURn5Anbh3F1Ka/4Q6uLEciTLfXMCgYBgx8gkOAS5Ml8wWXVGKLUR dGrlXaxpJ8mpyPxVbi9KYzlfE14vB+KGO/k2TQV5mvxrAxyju7SshBnd7D3/MoNm FQjFO9LUKHrx531RaYcbmkH8xB3DEo76JrmAKq22aUePAL6iXUgGSHkE5qb5wa5L nmzSnDdUrMPNRddhFIXMUQKBgQCSlmadRnyYdE/JirX5FEnxUh14aQXHJBCpw/vG LioV5zRC2r6rnOWGNhYlQYhh+9M46mIYxPYdP9NNx6Z94nmQxLohhMDEmpfVL+A2 8cceWdWpH6HabKZ0Zs8Yad05rhGJk4Bvp0tqNHyyYXoZ8WSlWqjpA0sZpFSnvaT9 J9EOvQKBgQCFDFzrQbhrEddvIsCNqMc2ovDTZYmO7rIiIc8YFp31myBN9mGUF28v S/9yu7D3nlqO0sVi6x5Pz2golXYBvJ+X0bYG0zbNkdKcjIO2LT+QUzoE55B62Pbn Slx6irKV6MRznwrcbpv7hch4oK1Wl5L/iZY0ks6EoBqknaqAj0vfxw== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEA0E8jkNB4rM0bGoYZF86WWZFhtnL6vGSwHn4DQ4a081I04rVE ICZKqidrcf9amsvMYWCFImMVcmGAqfZGROsur4PzQI+YU0yGnHMG3lCftgx6OKQJ JZpGuTvHtElhpeJPGVMy5J5MAazxEmMHUWXRB5zgVO8NIR3sc1ZgVyr+ow1sHObS CbHW96EYH6NAXekTnPdeNkjLbgkxHhdKKhzRkmWt6CtmJ6wqp6wtYE1SieeSYFYi 76b84xtzh1McsoSfhXw82zMXgMM9NAqByBBZT5LWH77mXlzvFcl9137b4V5mAljN tZoKOk+wvQHl7Kg37/klN8st/eijLAKAXwTGNQIDAQABAoIBACzJ+1RxkqTbA/sf vqj5BShUg006qzFTN/ASeaqs/d68e/0L6w47lX3A9JACDu3uKG9+lJmocs3Ra5v/ xSuf4r2f0i99QIwWjfH5JI6sCK8YvzXLBWF1qsO8uAuKZKnJf2brVevEooSQthPV QZdNnFR19WElti269KJ2/cd4SeBuSJVjqAtLB0XtqV3vCTfRAdbDB77+V5ngK6km 6BDv3AHaJoCg9wySrn/avbu8qHIWHXHWhWaCA5FgbvZTCaGcwVE3Ur4kA6DpWcbx 1L7lDEb+NwZR8hYxPgdANnTAPBQ0IpuegbqD78wkX7OPzGsy2lRwy3RArwwI8l0G h8Y+LFECgYEA1zHiu2Qve6UpOVF26Z/ygw7HNoOxIdIOimE0QU/mGD+Rr9m0Z9BN dfGlAu3UH3cuR+q/WyCRRl/Jj9RVzkkDorKsSyjv06KJqy1JsueZOh8eUzL3nyXl aRLRzM9q7957CaCWRJfbNakdl4LCU6ns+liKuAPPoRkJQf53Uyq84BECgYEA988A jl61vLjtsGLcV0WGAZ6JWOhqfzUXvbWF+SB8enFS1tLc76SsExgU5hDaeRcL5/Ys WPqQtXBEU3EKy9vyQL88BawEgqasl+Ab/arKCxmcISOGsMr1Hn6S0FbJ6nyBV7VQ VGKcMXgCFvnYYaP2YRJMkbWak7LA7txUI0jR5+UCf1aUu6SpqnEVAoENRcq5j9kr GPvWAG6bFT6X3W5ptyoKaZNXBD7AkGnjz4BeL/p4+SX2TQddExY9c9tqkxtsRQow 2SFkVxnPS5STpBNXG09HNexDlV1y4dpkuASvb1cTLG2zLsJqVshAQqey9Hy04aPX +/gNkHxAlnj26QuNJnECgYEAl6gLwxWbS4Axlv0ptA9MT7lifRLf+jHX8bYh47FJ /PVVqTsrE05IMPdP8uzlh63fD3rM8TeHUEMAzcAkx1Y4D//5D8+SgxLWFayF9NyN AfYOYwmG6LONB7iWyQIUWHkR/0drfflLdcroHH+TOU5K/mVgjtwBWdrP0F7u7xkl vTECgYEAsgQ+1f/Iuj69ASeFdV/DHGVQu0ktNqke27I2M9fmEFl2D7Mr8RLOTVQf jG6TE4vx0mHiPJvpyHR0GQS5hCfGlLt456DIUISmGc2tSCzsa7Dw9zeTRTUrDYCs fxQCzagbYzgGR422TwUmVWSqaEVa2p9Zn27R0PSvt2aaI/oI5oU= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAyJZ8qRCAQSV5UvwTbfBN2m8nrfHA6vHW/W4N2fJkEEBPM1aA IdrnGoovevvMX0T4s7YjdXzsZb1CmoxMCYVCF6lT0lIFc2mMndwdJQCfQZDrnjL/ nFGAYI5nDXnlrh0fkFum0kusS9yqDbfleYi9br+17Sq0c+RZmCzCV4e/WpJBFK6+ EVIFn8+OoUx4ZJNUWZXuL9mN1zXymU2uS78/ApK+NKGzZjsdcr4obsDfyCSdRmm9 kG43avfkoHBaBF9JU9cfmnnHXlvF4ciq2JGZrtDC7fUziYNGR7pGBlr70pOaEBqi XAnqhkhWvcoSufO2iHba0+DZDnXVe6UNBni0aQIDAQABAoIBAAlTFKw7TAd0JCzp gPG38tL/OyX6j9BG1m46pntM4oVDxIAZrIfYJK0FDXio4shEUKWcsg7XyX0KmrbM R30Nz8yeAiYTIAdMcrDdRS4DD4Cg4pFViyJg0N9IpoESbQXoQju0RTpzasVY6+nu O1NvVmjNrjmwF7+gU1JY36Ww56zgbcERqFN/Loyluqh7zfRqcRQpphX/If3cqwFN 31sJrEbmo4b/KLeccUXWM0OLI2/TlEht05o1wFlP7wk7ucyyzbKM2h6XweMGnTXx KSW+ExWv/rGEkJx3bd69uIlN6fEec5cKgntkZsdfHA4rBC1XgJGnZnWOPmvQvCmY ZBnO8/0CgYEAyUaHT0cgRMtoYfOhzCVkBIRxcOxn+dRGu0/jtZ4R3JfPOSA4gYPN WKjDIuTS1/VzALfVhAmwKoeafmxniPlxAHclOrp+8IoEaVrwtgO+g7Qy9W36pwe/ Nttkyjv3juSnlvpwxutiOrECg9/rxURS31PhLsGuOF22yGiHm3paJC8CgYEA/yAY PwxWuOYLYSacgn5lxv3MW+fVVNABAQZcCE5bjP/sQbpp8niTZUVXsC1cbZXiGx+C 0/gbBhq8LtxPJXdCX8Dycm1Mq+PYNus8m00zhPR8I+xKGrzmgxIQlY61WiHPRT1a tEzLK5JDmmKN0fZZzldY7ZlXhL2zomBY89dlUucCgYEAl6xIRtuIW48Up8uaP2Zl ymmrurbLW541du2q4K+vMhZMF/ZJ3n9d/NOfyOm6YPcbpIzjn05VrJbnOyGhm7yt BPbD3U+wXL8EuAfJoL+Nj135kK1B1yClXUdS2nr6AHoaOFGdLqkuKqA9DvdsigkE kjp5VGyrRtqH5NmwZt96kg0CgYBpKkq0Wpq49yMDtg3YANBleaMu017t6hwv1vZC +kHk2m4CHhykNa3UlgPyfJBYH+uncJLWW7SQDJ871dbOQ93ZaMjIAGQViwNKiCdg gS9WhA1UJYfag7mll+G8NKpu7/bnvMXSAsHRQSaa0jtRrHISi5D9yDL6ZdRRf9PL GCQNSwKBgFJQMcbmgT4M85o8rM/NI8RIj9PyMO3UESg1vGUq8QyZRfj/hQIXTL2T wRy1IdT0A+gqhbGBXszLXwdd9Uhaod4fbipYqnoaFa0jafbAtX3z3zVC7/miBOvf FMIB040wnR7I9iKoyd0NMAeImZHcnSbhFZQRBEwNxUVLAjupsBz8 -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIJdZLEZ3tT3e5TthbfoSLFq9efdUA+KYsLFCfsZZ7EeUoAoGCCqGSM49 AwEHoUQDQgAEOBnHMQsRS3UmMaCd81qwVjwA/gkIyYdvJ2HQzI4XToM0q2E7NrDx P1FtOaMZgYMB5ScDa4U7docqL4oSlxlbUw== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAzc9thsIJw9hlE0ymtTkQGj9Pm6HSM2hwMchr8D0A7PiGIOam zeyXWKAP5tFPwq1NVHI8agmhZQ0DxmfocFxrz8MrkSejge2CWcNkHrEZ17vqtpz8 u46sQtR1nlgQHDeuElr/gsJU/rYYLmYDZKyGscq4T5fMnjMFUNguVNYY1yyXhzM4 QRQ7N9v+giGSP+i9TwdqZwz0dTnnBoQHa9jvafaYdeP2uuh0qhnGkwRktbXHUUs6 f4I16EZwkQ5BMFdRfNVgtyXj1OXPWjTlxf1z6Eg2KrPhTZEm/n+v7bn1NjyEEjRY j96tpJ7qsteXgTEt0xmGw+xhPu6dr67Ual1BiQIDAQABAoIBABXnCcpqEvz3JgaQ RTuLB5Yrf67Z4VNcPXhm0mneLB+L8UZGFaFbmN2zJw4S33Ch3dVrVNeaD8V/xZOT Uk7G3yhcpmHLvKBipNklrJ2BjnUBiCCIA3N4Ywe3sY6443oFSO6mJYQGZ2I2AcvK SnknzSvVnZjG2F1Lo7ivUPrxT/JyGOCvhsD3VteCWlBKRj3xhjWB1xeRJq/nsWE4 wKBBpMZKrgGlzVvUEbRnk3KB+nUbADyYAX5A33GaIQN3S/YgICDthJqEmtmc+/kH WIKfUAKYhEyNGnHHyHri/9VBwWXgZSQiqB3Z7oXiVKldRgQNsZWURq/Uvy7uHSuU /oGk/psCgYEA+qHYOarGtvf7ovNO8AoTJW7jQDcpo06bDaUJiBzUYazr5If+wELa x+lXrjpUQZD5jmLPQirqSJ/YKjqg136FPffsYvNGKrk/Veff6wGhkd5UJn1dBvOI 82D/f+ilkrZ5QtmN+8CFyIJnQ4YzxsfiLUfKKMGFQaatNFT/ZSAlqjsCgYEA0jfV 3f5ERiGyl8R20IYww2NqV2SRuwGk/J7vuINni9m6gnBQ1P5g5wqsCm6fQRLOamNm St7r9MDbj2CaB9dwsCy9Lrp89FLhFt/d42fG1j3VyIpAs5hncSB3Jml7uO9RNhSF ZF70TynItcaezzmtWP5ZXA9hak0zcQlqAPL8wwsCgYBO0JBPah29MfRmxL6BC5oD voAmFHK6kSB/RPPfYrmC0b8IiZ+Z1Cw6i21wM5WFXNKtbPMiKp6sId/3P6KOwZGi 8BDc+QWKr+Bz4kvu+f9WAKVTyT50zia16j3Oell+7nTpicJ1dZBcgm14tX4Yt4iv lpDDCkAeagyzlTsPEPHnOwKBgHNMTo/Qis/QYazeA7DBOPOhjkzaixd/gmdQIPkZ kWxiAerTAXKhBrMR5mReYhiF4RL26776333BXWsZN8I/Rr5J+4Uqoag74Nrz9DZq z+LnzV6NfYlDeNDSVqeJyWMYV3mK7dKsReE5cK1KgAX2g35BGu/kO7DbIPDJkgtt OncbAoGBANmATkxZX44CPpoVpx1Jd0AfjBWjABk93X3n+onWU4nm403Pu0rXiIFk xxh0I7YKOLdslqXa2M+4/knXB3ul4XgznY1gPfAPF4riibpvm19mvBAzB+sHQP02 5KcapWA9cniC+lLXNK+XlcXtiUa8EdCovlKlGS7eV8R5E53RjT29 -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAwKy6x6svgLnkQGQ5ZSHOK/6sffDBl2wixyQsCgI3QSXmoERw ntEWd8lNxJQTbWKQsH5/nayI7SC7cBEU6s+AU5YXBrp2qp+bViLi5B5aimMwvHVO plvfvhsORC2WzAlEBWxBkf27Uxvl/xsW4BKl3vn+7zEsXYz6ZZO4sbdmOCHr1Jho sSo5Ur5uS1wZiLcS9DsByQRkcB9EzIDeZJYR/7yufVxiTylbFNSuQxzYRPiweKnh BjOrCaB7IORccku748EUDWfibt1F/P7LzS//Z2NQLE2TzfyJhiGDky4H6cs/7Jj1 rm6T560EMy9n//qFpp+iBkzsUI6EAZUlOmtmSQIDAQABAoIBAAK8CNgX3MAa00ub KIngB5MuBYBxk+vMXfd90s6vDp3y9eGZKxCD9unLDnqfX+G17AgHOZQxLE3SQLrD 0UxOVtvI1emTaKb+Big8LURvzljntLu9/fhkNioWa/bJf1oEuSWLDmiuJVQWAacD 2Uijlx1Rpr26EM9AlpatuKm0CMQ7561QHtdd8hAQ+qolJkIVLsUWGdf0tzzMPef4 QTuCl9xjY6GxWBkrtgJ9IAiHl1jMvNtcp87afPMRemtc/PDWa2LcirRoQ3ooFdnF 15MQN5hcyE8fzslhyFoL4IGtWob3LDe2RVipdO5aXEC4w049/e2J5yhxjFwYmZ3Q LB1HfEECgYEAyS30UvEkU8KCdY/TDaI184EmAjL8nJlp1CCMV5HList7pUA9UGre UB/PeUDJDruGDAcCjAT1ehnuydp/98/Wip7PXXjAZC+it7qH4IfafdaNsjXdMXLm OrRUystZHeH8sg7OfAAD6kwX296OpFdDrr1O42nOAz4wT/vMFfYmTAkCgYEA9S19 0dcQRYwYIL6dMw6Z7yzu94UWWV0hezW7tFXz4gBWouYWAqWO8OSJwm+GkS3FuCFI VI4dUh7hwhuVrdwfdwg04s3GCpGBfqUVA0+TLufOlfjiSTBNzlVU+zvy/u3Yex0Q IJfvrVdh73AuZd9Vq5ae0mbEzf2Qi+oLjE3XWEECgYEAx8eb3hXbplX9abN2ug5A l1zEGuD5HKX4gxADbh65S06ArfzaJpbJyDWeueGNB9VO63i2ncd64lMIX2ldNQEv Ix9L+52jKJppcxyIPH+MiPRcaAG3c5iPavKTVYOULumxID017cuyF6SS+OPNMQP7 kXYq9gim7W9/WJ5K7/At3ckCgYEA2jwO9ZyIKE+mHmdtB8hkbsfBQeNd3FeQeNqA ZOnpNu70LvW8+8ggLv5OPRsGXe2vQ9GkT1dcc/93Fk91cRcxjsNoR8XAFSIlcPRC evr22NaPRWEPEvSDHTlJdoOLLS3K9vMMquZy+gmA7B8fvaAI4r4kSsYdQfoFEvVW KCIVn8ECgYAIYbjScOrzidGhd0RamDdL2/AgRBckS7nwzAxq5dD2B6OYovVazjlh T6eRibJ84Vayct2YpV2f+uRkpztmpidN81naSF7n6rM2d0VfsOrf9JC0IVROfIO7 SLpuBB70XdeOuELIqVDksDOljVn68+zo1hs+tKDqdOCY6SC3o9VEaQ== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEID8lndPEKAxDEu6OMyx947QXUFfAEVn/ScgPaAJmy+4roAoGCCqGSM49 AwEHoUQDQgAEx1mtS7DvZVePUBoVv7f/3N+LLzmhN3vLgL6jH3YZc/gu6mz/BjeY eey1SHCpTmpVX2D7lbONT80OM/zs5LTXWQ== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAg8+DKgIvBeIAwSSHwN5TQ3dqN1CeQQMwXoGYO0mw01TdDG/j Vz9b50eI4Gs/7GWReaqUTvejAj2QfCh+KOYAiQki/wCpYR5/j54T9ZvHcia1e5BW EfPkAy98mYZE4l3rzuX5YDYYMXkCU/igNJqdJmmHO+ZuPT1iO8NQY1dowF1dSf4F bfYVUeLgOW7TAmXXthTRRY3eacpusKjU2+dcK96PAFKHlzDsbEoIVAOctVD9wm/e aq3szJXnz7mJ6kjjrd6jmGrGkpWMez0S1e5etvCkEsuFCTAEvSsVV8N/53cfIPL5 UuvtAKLSard3NjBPWt4y3qF/HxBg7Nc1+JK6vQIDAQABAoIBAAw7Oecwi6+GkN5b ZvOJTf2xO5yFcSIESz1B1mAODwgVVGveiCClAwC7vSJiIWzs4eqB30BSr4A6OUmk MkzWRw9wVxyFsbIO8/ReTWjZu1DG8clVE/+Xe72l7vCKKqM85vBsm88HRgh1O7eS Fz+6Z0HUwhVXZTxukUqNbczCJDjRbwqaV2VYjSbzmw4jk+0SVTu4Go29fdrDlHKQ Bjr1WrZ3BaCPT4FT82WbFIQf1C8LsKhDWX+5SFreQHC8iWuyub3P/LrHDe53bYZ3 HtWsSEM6WzZ8EABAmv6zNz+Xn7o/Nj588ABu+UPiREYGXs8pq8LX3JQt+lBdhM2i n/YKqdECgYEAt4huJvRK74V1t81TdOiV/g8LHOSuRsYcr18omu1womco9EcFs2ax pOjq5IK1E4ABUXi+xx08hv6pE+9GrKWJfsPh3GbeKM/LqoR5D48rsmDax1tpEyFL cTRmdS6nYryvKBqZqSozCCDOvvXr5IwEHVLxkIFKzyCKt9IcRWBqyjkCgYEAt9r4 n0hw2KjYalUjd9Xm58Xr3nARWDEOnqr0JKyfsqQTc3eHjGlurzuJpo5BlC3jBH/o 4HMl6xIHtpmqx9/ccTRBE0TWe+UJ6MmtCZQKrd9PSDZaJyHPmkcR9MIhTJepfRas jmF3mLWrR4lPdpCklwl6CMI3dA7HHGq2qcNBhKUCgYAm0d6qsqVfAFWj6PQsGD4R nND27Y/HPIQ4u+H00yAt2bAZ6yPTjHcqsHFuoA747uxYdTe1GgQBccAFjWjff6wT eg899Swsabdke9y3Y8sUUdQ0sqsI9tPkP/cj9hhFlC9gRjAWTey5XWcdkRqyHsOI CFE8BXzzTqjItNJyAjDUUQKBgGnwZ+BIOpXtPL6Qjl5nx6R3nEDQ7H2XzufIc+OK AH9MIdUf4+AZhGi+csOhJtJ+WlhmZ8alMw0vl3g1NX30VS55wKGcwcYkJMCZLPbe 8gRcL2/ZubrgtaIdH5CcJ9ndbhEg9o8YRHSfAbG3wiz8jYpmMIZJevCJ71tFdjl9 xAvtAoGAYaKHVMEGFGtkPhFuj/R5EiUMMpZIVVjMI6dRzq2gvaO2OHjxAC+6s2Ny pVlE+KOZyp1XDYztjdu2zI62c0IjB8b/7E6eCXxsGXW/IwLEz1RSxgiip0m6rzgp i1afhF5P4xOcm98oAZTObpT+DX8IxGZPnQl6Kl/NFLUO8vd21aY= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCxao5UNtjiU/d9+TKgd7aiM1cNUOWDFaEKK4l4phEk2ybhUZiGInzv fBL8ug5hccugBwYFK4EEACKhZANiAARw9vGeyOG+yNNkrwZtVBAV8wwiyoSVQIyW oHFdMgVPbq4S7TDvY5Pb0wGqghkstJkyNG591ITjHvnvd2XHTFFzuoyBgCXPdU+f 4RrBHFtnrYRZ4UOGr6Srg3LxrF2+Ejs= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIFcNlgBS8T1ShA1zlnmmxNqB0p+r7hwg8I2PAad5yjlWoAoGCCqGSM49 AwEHoUQDQgAE8X7g6adhGUPRQNKO0Vb+FnKqsbFIMB5fegW14SqzK9RqhemvFedW muoRVvYlJGEu6rfqsAr6by4aGRsOvd+Y5w== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAyJIhQ4+WSySXRzdVU+0mrEdNQRkVLEQEnCLt4tjQukTOD82N Awsyvp6RWes2KJ5Ep70HLOefKrVI/IPJSIVcQdgsSYL2UiYhcIHA7fVIW5HzL8e4 H4LiWFIMMnfbdwPiVa6JrMzoEh2mzuh3NmYaIrytojks/PIYGYb0V/ZJZG96vMYQ yhY+VpnqHznjySkYFcp2w+W9KT56ejUWc7aTZc+aMgZsfupnC04HmPiqwdDyJNqL Y33BjKCWedbbJ3J+me84cj8zoqcC4rzlULWo5KY+ZedVooeNeIv2ktNAtIcjsBpK OS0C3MduPBxD+S+8tkxAxeOdZT8I1o5Ob5NIWQIDAQABAoIBAANTTZW3wiY9oCbN iiQMVPK7HZLe+4IioDtGJqYMcgzTOmG6MXnpBrQbim2QerMlM/OzrLRdTxRaRvBt hJnny3i0VhWjmXm8CUa61qv2AAyz8zF/W57ldg3ApymeDEeL9bB10Ua0wK3uNmy3 SiS0KtTucRLfuk54+sEk7ZUDb8I9wbkk7leg2iP/FPb8qWsmVOfEaE1UtDsGZudu qA8LUXw1Pp99gN/2LGQ7bdeBEeTxK6rOvoDDg9y6hkpKrYEzQaZsLZ5q03jDhSIY J4Mu+oOQbEaXv1s762m8O6Df6qD/9Fd3RTtm1YEYVnP5wRiAenbF7xk2R36LqRRe Fpf7KcUCgYEA0J/JPeOxh0aHy0MbmEavno3ZlSjuUWPsVW1GqaYCADOHOMZYHylN eLU91kqraB7/FKMpPO4zkb175epJNGsn302G+bNO3ozKCLwBh8QuQ9lKW1ONdZjG Su7JlP1F7mz7mZm4F85ram5Zj1Ybc29Qh0IxRLz7XuFv0TBAzBJhRH0CgYEA9h4r JGdl431WUQbPkU/C6QuMa6GFybi5ad2Kq3chobMGFD7J6zcDRnkhqyWaWGgZwbX6 RQM8LZeRdE9SA4Mx5llOu0cW/z8icd5VrbEChzdQOSQOEBrjhlrNEwFtUW9wrdHC DzuPxLOnj9vr8naxNz1kOkwVDtPMen6po2kNZg0CgYEAhvtLdrqyq4br54zE9vKN QHYhGIxCHfEcAW3RsYRSeRTd4dMbQxYzJO2HU/Y+DwE3I4Ap911bimliF7FNqhfG 1YlQ0pC8b+wB8ELMbq51DLszjAF0Xmj5q5PyY26353smEwzNesG46ET7t20MF9Um 8kzWmdX4gjw0X9Hrqt4dhvUCgYAZC3bebHsszBtVgXjr048FAfzXEwe3QEn14Op0 ilnsx3ft5XnMqrt1l2v6q4fqSSWd1bPTBAJCrXLKwCubWeVhCGN/oTtQ3A7YQYS8 eQ/FzLYoKmgX8XSHvoOx1GpYaBuyRG8X97qojJOXiwyWjsd31JJ3cDiQWrMrH+qJ S25mnQKBgQCe1nn+f6fQkJn7wubdbLPQ3BV85MyL96k+yCU8s09dxny8iadWi7r2 yp24697IKQYcQTx7FOtubhmrSeGGkYaDW7DBGcqH40Ynk5hq5ysw21E0lLscCDgt BMosdddOzSBeiWutJpqWhfiEh8L4JhlUh0uFH+GgmWRyRvpkcKcGzA== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAwadTxsewgZE5xmS2zBgNanpWQkxBOzx2KwXMr3Xf3CAX3MYA jAXCYyLlQdc19PQ0dluVN4pPEPBqoW/0gy36sBGriuynsjql24+7gn2qTUiYJVOd tCwLL0wSwcrUnCwazt7WsdeD25/+RXoQ6A+mq1hokgqvrzXQ2BDs8jU6Ayyh4cO2 5lDUHeFBedu383o0hzdIeoU6YXMIuxxMWT3XGmMb3WQ3nsMWyFMXqV4/4IUcDcN5 KH65VcrIccx0u387b33lrm/XTlEQanhLqyDhRlpd5d2pH3g3YUAR3iVWk7a7pq3R HUBIVbOWFCktkV4VF0Knx9zf9gl95P253Cj/MwIDAQABAoIBAAcagDQ2dv8JuLjS UPJDn5pcSnW8Hlhx61PArrVw+Xk1pCpxCOwZ+ftw+D/mCRCnNJVy3pJe/G9+oiqx 1KJLOXrj6wr5i106UYMwToyG14xmMU6NNqe5Rd/CRp3dNtdTttgHzJBRe4C+6bDa vWwFxvNaFtvkkHU44CRM2qQ315zuIdktyhk9rryO7nFLM/iF3TK29rrNl5EpGIL1 ZWGOmuqPX+K4VHMpdmQUGjtvUQrFemv05Y8iOtuj7c1MO0PozcNOjg58TGBiDqjH VAU1/UxkSirD98S14/DhyOq97OduZ/C2AmcCievoNoHO8NKeh4hA9oxFrKQVdOy0 1aIPUqECgYEA52v5BiQxXP7i2VlXkWfHBoki0BDRPlbpjHdtT0ScmnyIhpxMhcK7 jEXUBp1Ytz1mgoFU1gntRh11sRdYg9PTFs+eyEexlHyUyoyFFkHeHT+GR9hQ258l rv7TUQNstarJ6BaLBmdlZNQrIy+uhRF1kOm4yrRB91o2iqJtnczjlQ0CgYEA1jh+ GF546ysrPRTXE9Ux7nabxVKqyXwyaYQ50Hd0CPOnNTDiHNQoma4auH9KfOn8ZW3V +7cVSNnmMFqpjTdRqYLfZUb4vP8Nu44VoETXKEyEKOVIYTxrKzsNksuCkdteMqU5 406sXDedfVN/6ltYUFc6w2M8P74aZ1DbrkfSVT8CgYBA/pwT03phqdxAOs1TMxg8 h6tVUEPUBEjXgHsctiJdaPhXBfKf5o8R2FKyAOL3o7D0miofau5OsNtq/ymG7Kju USVBDpGbKFoJgOmn1JvzDvJBn0kmRU4qFbt3l0SiyPKn0hz9kXBynvv2h9+10693 IY0asQGN3LJQwUmT9gU8yQKBgQC/mEE3HG+7rZ17gQMoKtsAs7Z4UoqLsHgKJYfr 6pquUvWuvizNqfcyFCSz9K0zcbcbJJRpEIOJ59FYWA4jTmHMYU/abhKUPu4SXG79 K/TfhygAx6jnxrj3LlbifwAl4fSrCVnv8nJ3/AnwiFj0y4P+PzZAgKXnQOiulQQW KQh20wKBgQCHKszsNSTNi/1+ZNpmvvTw3awc4xbufld4AeeqQtG1f16kPrBmknxG XjloVCxU32mlzbXUc+yUivpveQZQosJM4sT6Pbz/Bdfqb3Q6e9NC6IsMO53qnEej TKdN4eTr6soKm6GQfwCMPz2Z0sf+bprW7lJQNviwd1FYCt/TUDDG1w== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA7S4oh/vtv1UNB5BAWWcmP+nJsF9/rtZtcn726INJMrAWt5xC zkNTWUuNdE/ZQ63/o6WEI6gg5mK1TnDTQby7qILpoZbFjFxEpEZ2i39BwY/D1CQH nbEl5B1VPiT13M9b5gycPzyl2byGzEWJOXPmfVcJahGDy/U+qNbi9FTl04PwCfiN CPsYDHTfppVCF6F4Ma+0E/PMpj1SA6NG0XYTrwFE5EMCRc2j+DBeqQTHzAKOqaM7 2Z+Gr2gHCnORSeUbiMhX6k9VXvkuzg7uBrr+RkBAl1nYn8wc1L4K7FI9oAjL+Loz OsT1l3AI8++oLkWHUPUfq3QT8mE9BKaKD9ZNHQIDAQABAoIBAA65gOFVrfWPmCwn XndZGgd5wisQTWL+A57KFxYUSyUPHY9Emjkn9jK4UriChIsucDfT/MIh8U5G7oPy KTYO5i+Yq7HRJG6JrpFBoUvDw2ylj5N0sSxZum/RCmETS62WX1mG4Dm6JX8WXzVV /nucoGtDo11RvQxFK3YGm+HDVjQCrErfkfLp8mx1dr+UO3L76UhDCx/RBKUIKqbR ak51S7G8eehnp/1H3Q2NyoxDI9U19PtoJ4g+AMShQk/RBaNuqN6e/Wc19a0ZnpA+ f4F3u0ny1h6dkSbNtvbUFiyiHTaGFB7j+EM6lkUi37KegcEYwZojifohJqZRnaRV 17g1u5kCgYEA/qzMYSjA5s3jI7iYKAkLb0b1o74TOy9pgekja/d5ga27fzP2Gd/m LLPsJcclHYHTolJ+VI9ypScmAL7b8Ws9a0aRsGQUpU8ICeH3Mn8eCty0J2oRevFN J/dt8YUaNk1IZQ5fMmdkap0tWD5rapZnyCzlpavC2VqrxdURntLIYKMCgYEA7moP DPkGOGRJTN+UzMG8/IghwJ/yKCIWEQRONAm0dF4hrblDMX5zwZc5xWZnEBJzEwNj o2/qH1Ja1vQs8lmfqGBBjxlKyAfuu4ThF4VP46kWpMSFE8pV/UL3nNxGDGaNkGxt F/JdN/uSoUM9vzDwaS2Nb1LCa35l+rEE9Gvmtz8CgYAIZMmXqjAxazfBRaQ+LY4i 7MPL0cfwe2+OyJBSTqXCkGdNmfjSgX6kmol99UJT5qODBhUD1HaC2vd1rtSw8Efl 8T18AtBrYl9xc/EhyO7EjOGjKuvIkYtpdc4515k1kPaB3idlEeNNYEDOV8BSkwJ4 poIrI64YW9StgIhEI85W4QKBgQDT1+ehtlCBoRLEvNHiErATj/61wymP4aHL4xB+ CrWOxOmWDM0Y2GyQ8wfBUFl5nXskxNkvK01UIYBYCcU6XsqP+V+ngGjDTtEhTFQZ 6znuZ5uYMoqw6BP6IxwUBGI1uJZHYyCYq6GLEf3bTv05uomUW4aWCWp5y2lgFRT6 /jmWTwKBgDmrETZqS0EFQWT3ZMVos7T3EuagEQq4sSzaSMA9tnUvOAiFaYcyPAKa q9n1HUtOfMzTyVu7XpQs9EuO52JRZofmTXXh87w2nEXnN8BQzHOEG9SI6g2NB4mE PR2XnNCpMztATud6f7ofyDCrJyn6UEEn3fJNaqIA2z9htqx2qyz1 -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAzPgcCXULHNI1KKdxxY0dzzWVVb/I5afuNE7ulIV9ZDnFhp0J AlNhKLMqR6Ogn6DvhBqALq8ZuWyYhXm7oMEtt4yCX1C1lmpwubgga4UT7B5hFB90 3kl7Seye8u9+oOmP1aBb8qbCH49bO7slRRJRM4Y7H2qjdRJTbyeT7iF3c2xtG45c t84raci1lPqxlc0Jdqjduxy0xgFMGSm03dHZcvsPHAVSy4IfbR0RTljV+c3rAoQC mgbQDoVTEs7e/9CKu87xRM14Qzl5bPnEoSlk8dLKAbPa21wnB5C/gmaJNz99ki0G F6e+X+5hE2N0hBAp860ig/KemseOpttXhmHT5wIDAQABAoIBAAlh8iacrP2MwdIy mAqrAwpRMZzTQqcAoO7UDifOVIcZ/ejDl337wx7R1MWiv9+OxmgNroB0k4Dhb7ns cKJTNXyJeg5S630PMknOG+3QEbFlUpxRNFBYnMQtiLkmLW3AQ01MIelhqNE5Brwd PP+EbyMkqeAuSX06cYdNEIB+F7G419OLhx1zj8fCAgHJg1EY2wxrWFRJRcgM7SE7 R9P9dVmTm87c/CckNIdXAp+1dnDdfGcJzM6qPuDUguDMEVYKLExhi6PhkIM5Q0pt 5hyb28Vty8CjK1l6bRjo/VzRF5h8WSC0nvxFSZpI/e2TvwcSJRx0UdLIq/plj58n KFhbmwECgYEAz9P8R1idJWwmOtz4rx8x6cR62hj19KkJGIs5elTLsVvhWDSrGkif U6/efgvAlyWHsGNYQhzkt8b5KVwr1uU4tkNv9eeXPt+6IrPtm/QY/I6iXNUv3Tal AbOM8bCNaed474wk3fVlBeq5twhCUkzer8ycdpauQ89+lJFmYxYncNcCgYEA/Hp8 Ats1Wwpz6E3k5u8U96a2JG7Qjtkni8aQkJ0NjTUOVRJK8dgwToI7rU+O2JJnOusZ rKbbTqFeyl6prSEezGbOQTc4lHUYYgNbTVN3dT+OiJ0/YkgQA5fDGRmo9YjIdxB2 xm+4UhgkQxU5/9eFFppQTnpduA6826TryBs9g3ECgYBuyzpA5tLP8nnnA4poAZ9g WmiMAKaOidbZiM9Zkf8NTEgz99AHsROPT8CzPZysd0uBE1Un2bNs7dxC2mpco9K6 B/WWCKKu2CKpAXb4nwb7DSctilF8AvewkoHfDxo0jTwBqJq24W2728ip9PM2YNiO q+v1pJq+d82pcmI9DMB1/QKBgF6bz0iKuA2rdw9/0NywjlzWvb4dQE2nFeiMubNX BrL5RKugNTE237Mrng0tmMuS4Nf1LSPDSr7GPWz71/0mQhI6G+PYO311+3MO6vGo 60SmUlTjB9NeSZHvFo6bTPLlFKl5I+jsCFfK8BurIpa6PgbgQGOH+wJzk1WDEU9k 1cIhAoGASSZRqt9yvdczxrX8/oz1pxxz6CeMyRDuicOvFtAr3uqjVbm0iAV9fvgl nGGVPVG5ZAzRffiH3Cmrtrch53LdMSiSSk3WCnrf0QdSh1LEAIb73e2+VDmiC5/H ocR3SjlnpmjRZ7qyjUTsG9jyaWG/lvmgrTRJpdlKDzQKhMcGhxE= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBdvwUf2wkV5uohQaFTS6r/JGnWyeMRKBGn58/VrWO59XHywVkwDJi4 jQJmuZu6ALSgBwYFK4EEACKhZANiAASyCNn/U5HhrclbLfHICwwLt8fcXxBFDlG4 +exj/CUh4GS7QY7dkY4shB/WoHJY9v3YIUp41ZsoP0XGd2EVmI6TVu/hrOVYzwAy XUCNzOQDE2Sl3wI6THXLjU76vvTOPNU= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDDJSW3umlelXjxekGFKImaaQIfe0RK2slKAUIACLv4VyXHqKoYgg49+ yPMhbZWTmjugBwYFK4EEACKhZANiAARHmDSFuVKo8NGgR9fKwCbj/pSx177lL4BW 69bLGp2fQPg4R8Q+o6H/MFREePwjcNn7iIiZGA5k5s0w61uTWsR+PTbeJ9uiidGW N0OAMBwhxgkPPNWHxSvIUZ4rxUv91dk= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCLmVXGmL7cNTNgkYcHc/cNdEZ3jN3BYRRlA63w+FJC9GQw6ngKhNsh bixaMU9WAwCgBwYFK4EEACKhZANiAAQFwaUMsXb1w4DK2qN5G2oKv71DvgOwLibC SaO7tx69ftmRRBQy7FnD9us+kT86zeSUXKYQo7ZVPUzYvjiiJFruWTX7ABV8F7Xr g23qZjJcjCHEClWIdrDIVXYv4mil7gI= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBfzgZlZ6q+Ydup37OAHqz+7NYpOpr8sdQoM1LSve50nDUYUrHFYKM5 tjdU/rCbyU+gBwYFK4EEACKhZANiAAQhqCgJVkr1sdsZAoathMnqFSSCqXww5KzK bpuiyDMZg0lwgQUI/lch0TUmBMX7tkx7BlM8cqF+7/Jeq+RmxFCY7swFWSRenAO0 +we0EcNOxVNChJAnoZTa1x0hCoCI6QE= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAvUhgyKZhbdG35aIwuo6A/grrYjWKcppl8SRCyxheF55cTeTq 7OJlDgj7scdoc3+M2Sw33o18nQOS8lo1U8EytTl6qgQH64d63dXnPhl3XYHpoPUq G1x2uoL7Y4IcUa4mn2eWQuEekHeNyVVtLa0WOqNFKZAIoPp0pfaHUBvzbu+3whYX iPHrNLCOD4JfYAIDU7GGTT3mo6DBAr6DQQu8MrVJUNyw67hPXj3UFX3y5sNV+0rX yE3JTN+nkAcGG7WqIa321AaRm/tPM8xauxAkl4EHIUP0k0XhPwx5rrK1x+fYdSIR ONM4jgzOMYxzEDtW7CD+X1AQK9vRQyp4dkJcWwIDAQABAoIBAAiaWYvFGXiG/Pdl lRa66LH4h7+W9LabaIwP5y6ZP5g4jQlyoMV+JLRWmYSjA478T8fZx/ry2KRqR9Ys CMXIaihCdzNzAMkmXIyTREdWRk6XBlStJT9zxxGtvQSbd/NebvL1H6c6hCEczfJF /QhZGEGMr4AMGS2iidq2hxU6WqjCuHASMtExvXAQVI/NsSMz1fXvvUGGnfe7TC3M TEKBRomLA/A5rv37aXGBUEIX9CN1L0LnT3PSAsJQhKIEf+iBI6PK7IcCJIHatVXA Mk4Dz//9fCkH3ubni6KK/nosW0RQQKNF+RV7yeVNfJ1Tqm5kYGgpzwp6r4PbJMFv m+xcToECgYEA1fGHhCTVDcQk3IWrFLxJrrmUYMQCMIs0al/XlMuSA+C3FdxtCu7Z eK40SMfjs1ViTpp2ZqJzdF7EJqQU1856/orbYBUvm53ad6QwFHVNtG8xAY+dxriW z0E8cxTKlwR4fOGQemJD8GG0p4lejjft9gVmtkpkgGC1NrJgK3AkcdMCgYEA4n3S 2pr0arEjeZsQvHe/VdMmRNNit2IctEdqiUMJjw3Knx9iMZcif2dgtlOLC3qTcfEc NCUKH9iC9OaT0ffh2TtFnMR0Vpg1TygAbHiSQCj8szCWJFVuc3Hl8J0Z2B3j0RMd eeSUYJotW5YMrs88wE+BDbqzssFL6I2qNnOlzlkCgYEAlYQTiiVXhCRlAnykIHyq HeLyMGIriZNvkTvj5MgUBoPAUBXZWv+rmixcu9R+bHEqn/ZQ8s9rUpN8D+kx69QQ nt2aDN8hg2bhLCXhuBp2sLfYjte4kw2jz7ourdqE7t+f+N6G4xDTnCYcY82b+FZc BkimDJWXASUU3+HvVcwsnCMCgYAuTXbLxh3tqeUMuUzEmt581zvdmjF2OBKSMH9x LElJ+5HO0gWrCbC9xw6Yd5/Xaum1w4r2hhP5yrOLCZByvnBnjpx+nhMCmP9c/VqI 0mVjxH1UzLwFFYoNA930QMnFyuaGGZhPERHcZeib7qMNIcTTs+04N1EBXE7+bee8 VgwxkQKBgQCOUrlKtQC8ZM+b+6c7o819Fnkrnrvl/me2izEKpOzqfOoo66qzTPvr ny7eQC4p22p971bnO6icsQYjrn2bLqQ5vxyJYhCj8PDxLwAOW2+3kexwXNTjbhzs sjGetivNhuXhOBdnWcVg0bXmIcVu4q1vZJpFpjOnyLDH/pMk1QG67A== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAsWfB2f6FNN9iaDUXsroVQZxnu7ob+sJOBZ1vHRCOJW3FiAAX S024H/LItuFYhlMYcMtcXw7CxWjBTZpEjYc3+HTo2YOFQmldOoDeE+HdeiLE52fO tRwCv19a7ygz5IO51FTGrKcr8qXoTQeNnDdDHqTtQ9IZvqTqVJPT4kkp42sNa38k sEoj2Vb4LbYX2cgoSri9um6AGF47HZ9xuXSqpi8XwtujlveJGk7XN8X6Px5okPPo j78QVngh3k5srwkqohut5+FPlo6LgYsvyoyGnQ7+9dUU3ghVyPQquUPUkiarhZiA I8gME0Sn85FE7HpuyC2v3Swqq/BuhQC48OqRIQIDAQABAoIBAD1hS9Xz1PzVKUQq 0nc5IO+hgNaX7uRU5A/XR8GDn9rdXxHODkE0s7cCFmYIE8vt5i/ofJ47CjKpKvCB pqRdG4VwVbwkYC/5KpN6UNwKMsn2S7BQ31kURvMVt+21ODchSGNprY/BC1iaBITa Tym0iRmKMLldcSDgCF+ZAh9x9vdC1qJYLCGyGEEFSPmWTLcq18Z8mO4TOQBHGEt3 Bm+y3v8AUgf2iMoEd0jnBp8xWRWN+2i8kcvsY7lcA/Nw+NdTHRJSAs0Z289gOHhD XnE6/1pq24CxGYfkbwoZ0GCbhhKeOttreI5IYRdoXysC/SbfvrmkuyUf07CUzLyg GWEobH0CgYEAtvLmYhwcQ0wPdbGQonTNq9lzOtRgN5lkgAd1KQZxbaJeNCwUR8Qd VXqWD7CR2hSRzpG4gd+ci+mSH0mWkZo3HgfWSwFauskyU9uXLSSrX3IJciC4VMmY /JQMURzhfL9PBh1rk4g8iYTYCMRIZ/lp4sfTGzB3BQO17snPbfMZA6sCgYEA+D4y JsddiF1Y6zwVfbuCfzo0xl8GrEKBX5BUjgLxMGqvw45fZGXVY4ME6bv5J6+5lMjC GH/bWWy7aNcdh7C2f0rhCivfXdcJDqYf1Hzhc4R1Wwa2r75K+/fUHv6HaWC+F3CG v1w1f7Dr1KZQHuVNpxfJYgSoIcHrQEbc0kPUcmMCgYEAivfblK7xsRT3sVkeGqlL Cbz10Lw+Ej3Mn4wKrQ0d4D+z+0F4bkNEXQfvMR/YyqVRVG5QjybCjWzw+B835oYU VBVz7CmtN7FZL2XgYgQ2wRuonS7Jlm5Ebagv6vVbOx0+89ApRTn5ciSczZv7vC8z BXbwnvijkAWPj0Fw9X3xhF0CgYEA051ZbTtIXWWN1kGK5HrC3KgGsw/whUnQNWG4 4rJZXnejy2WDpfc1N7ZJquJFm/ItlkqpQu9DUnDhNZcjIjee6tYvDlel+r3Dh8xP l/i4y5uf2u/XLeteynpSRfWeA1On2B1hkKEPLgHol4cLB7tbPdSGJFtp5BUF8O43 cbrG0JcCgYAF22PATWmt/fK2YYlbo+wUIRden4Z0TrFeGAP3qyRg+slYbIyCyoN+ XcVyJwu+9my36Tltp1z8wZ7DF2zAvTaatv60uFUYPNC1JSFtR4ovGXVflMQ7ITaL UNylXJWJOzlhg2vwDNOY3EDeTwrGVR3ZtQeplKxj85AVxlf9I9dMTQ== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEINlwvyzqHypg496HooiLI2PPSzHRaH3NoUn18j1AvSaKoAoGCCqGSM49 AwEHoUQDQgAEiCxcFwTV1iKeRFlvkm1xoJAubvmP9Sdmelp217bJl7U7v+UssKe3 1/ZB326ABD2M6fdznVhfk3HKih5dNn9OPA== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAqHE6OZNCpt8fKb3aEiCJlYrPkja0jNT8a3Y3ogAUXBFD3gla pnXGeR0tePl0ZQy+tzyBLhk03+wy2c+b6h1Xr34rSdq0VElVIkEzUHj/WS3XgOz9 bUchAeIHyLFdOhgtJzL9FaY/LtlCbckLs3wPXrTAruShkBiuB5jRmriydbns/Al2 MXhxISvK67cPetfdEbRoxRjzaBNpr1Uirz+lVhaJJA+yREfbQCDNGiNSjJdtRp73 A0bxX4f3A/IgPLVl1ZCJe7GBUw9/ljYPsuuo3pZ1XxZ+OSJulPFRAIFLqhmVRTMy iazvVcIvE+Cp6S+zu20y1jM9s0kMT/gsoI60TwIDAQABAoIBAApHvTXHjtk5luC1 gJPiPn0AMTW+qi6wm3NBJ/+puseS5vrfKuD4usZ1ItHv6TJ3OhCO3C3grFraQvdx XBYVK/ilXgwud+dvZ+2+RimsKNF1iPu9lKRqier5s5K3ftwaOG9DBZhtQnMgH8jG U2hLf9ik3KzcsVIARgBnfqto7rz2iymHaChIYu2BPMRB+yKxuYxO+ixFnSMu1aOG zC1Pg3QjR01gWKs9xMrb17c30NT8vCscklJI2/MW8Gg2qkScEhF9bwpgcTKkqCxx bUc1ajAq0yBhGN/cSq08P4eHxNLLHERokcL6eEPIx+48jkW4gKg8G+i/J1HNqK48 3JwPq8kCgYEAwKRcJAGDrrdF/lowsXRSqyeqfARw0eh71JCBlCcGEMz/UBWomxSY 9e5cXf4+v4BUZhUNEeYYE+ZvFWLHtkTgSFN9kmqNCCulZ8WXA5qqV/Mjh11raEHm Uo6N9ul5JHEfQjz23f6aoedTbWQ76uN3KtoUprtZ5k8kPf7IuvIlW30CgYEA39da Q9UC2i25XQ5Vn3Ugc4Puzs8IYNYP7sdRou3u2jTDsjX3Y6h3tcasXtXgtJXbpykF 3d2ASa4cnOszMKEWIzT4I7B3fK51Kh0Kg38xIuPH0UtfdMhmQNGT1IeLDjZovSEK fIkphSLkpKPs6MKlp7iT+LBrornIDA+s4yauYLsCgYAsEi3mKtaGVPVVUCrNng// ie6NurJYwzf5FCogy6CunUdXeez9tYOc17AX7L9MLj6gr/YyfxJJEzGckeGgiDdL NJaItYmYMewARorazzpjLoOVR0D4NANOJcDCmP0W4i5FiA7uEH4txe8nGoQ+o1Uy 33tT/Y5+iuJ+sFgZtKXpPQKBgDA2jna11ttvpdFpWP/zln3LGRDqfv98nAnuXKMf ZKcTXmNwREzu6Hn6xP3YS4IaFSm4KE9VemBkZD1YW7pJuB71Nc1aISJ14T6k6rLQ HqFJNqzZ80GQOJYVjiXk3Aq/pWe3Si7wzESk82KS/GBWLKAnnZefSE/QfEo8xhxX JJApAoGBALg78IZTDthaNUPxXTxyggKYkuA8WGB7oFG/J5z3cOVv9tGz882XIznv 5N6IwvNG8o/nG3VWno4gLPuu9tHtSUO1BCzkhZNAOqlh1lCkbbFa2Y2vZZ2E62nl 2i0HpUEFyVVo9GB69SfJ3SZdJEjRt5xuRSCMm1jDFoV5qAyqu3ba -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIHfPzz8o2G5Q34SFFnLyNJYQjvS77LGUYkpiXIHY/GqUoAoGCCqGSM49 AwEHoUQDQgAEauDJNvs6HAmm5P9TE+SyBPBTkmWkz83AefpggfryYeLWyfk1HMyd TIj0y9dY5XpCywx+zFfSgBgLxVXpWML53Q== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIJTcqnGU4Y8o09p+ceEFrZGCukasjQgedCE9Pppd9vLkoAoGCCqGSM49 AwEHoUQDQgAECI3GnyoWsZke+NXLmv231JdtN7lkGDdTpN0onZ4Im/YgKwkQERvO 6UuJZJpB9NWOUqn6hgClPlWHS1pDB29L/g== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAq2p7ffwUcgJBXPTB3f/hz+ol/DQfnv82vs2KXDWIEQIsUZ2h 9AC8kygdZxXmgBHfDL55ynPbJuPq01eRZ5pZUk1p+ESdiFlUJO1gymoVQ9dmKflA /s1ZV7Y7DTTLyBBvPi8KExLb/MPh4eO6XVLMznEKLrnSgqMCrVw0bnrrTIVavoKH m8ZTTeZnd3hNXAzPflzxxMkpwXURGxtCLBsFfUO7WfdNrYDaZkte2jqw8dP7lb0x O8tGx336E0weFF89TMpMLKKF4oznL6cRT69cn8BvepHJ3NDnq+WOmVjQq9Fff42x 0AT5X1Jzls0/IYSmypPiAiNx9dDefd4KB4/oZwIDAQABAoIBACqc2f5DwEFnViBp qBgsGFK7fp3nx0SbZVyhdBfgJuczhxjy+uPRmw9qFYUe6KJFzxE3+MbfbkeIuUO4 rSj4MeRH4mQZip/utQBJEpq/LHIlBfzBPesZ2W/4mU17Jn2huEXZI8QCGDYJ7Alf t2CjyM45Q7LB9xcKtwuptE8St5PZ2gjdn/A+nL/VtAQD3h/ZquDv2FdRxApt+1Gb 6M5Z8wYifIhu+OIT7BlhPj7hRaPEuIivvFVNWe2Sx7jbmedrDyFQ0x4ZS/VL1nA5 u5SGU/QWY1g5WhPtVue9UX18xDg5wR2dHP5aaCe/cJ2sf+WSwfgqOdJcLdQJLmkQ +srq8yECgYEAujOC5F2l/ytGjgpXaN+7Dg4HcMOZmBn7Ig0HxCSz5arL0FY4NwhQ oIQu35dPeytLFtEr/AV24QhhLaLhpS3rtShZB7nV70ZNXQfkredoP5mK2xubiQd/ qN+6286gLVXTOky9aVJeHUnd51ZzmVnEGrRYLHBTFYVtowMuoXVPNCsCgYEA66wg n3EvhgCFA3KpUAgLcXLuV5kBYdHu4CpPKiXHxT/vO9xIVq0IR8DXTUqYLFTL8/TF bDE2TZCnLi5ePEM1BBUbZ0kvHAGiGOSxS50LVS1EW+NRux/+7SJ12ee5TXaVGNOO b2e5vTBs79sTms+xWA/Bnh3BhlvJlNIfilMvErUCgYBh0AtzYUqBB7+xf/c47UZ6 9J2t++Jkh0loMsYgoFMsU5NrZs9zAVgxah6hb//dqPlyDAF6C3jOb7N04Lp+JehL Kt3R9CpQ3nJna20SeZxGxKavwQnsatcB5D1pmFqGVi520rcxa4ZrBlGeY8ioBwLA MHqdJYhPpt7YIiTNxi0MLwKBgQDM31mMwcxaZWE8WhUt6ZBpE0x3Ah/dda5/WMhx D17W7nl+RETudIVaOx3vpwUapKyYaxSktTNLwpBS6SQqpxITdnXYGBrH8fOESGqI HQGZDjz61GZckbf/VZG12GeSG6AJcP/FgRpKiSpqaLxmPF8i+q+KULvHnUtkADZC /YVScQKBgDviErhd5ZYWwFmJtpSRrd/kkO1t6ien/4fxmMJ8P/jfY5SDJOTC//F7 hK6uwGbhsOenpfuuqLor3hdZxwpZi2zGTSI7GOPjoLvlnjxkw7V+VE9sFhfuPjMs EzTrWJMykUp6B25kw6bxAUcgmKGEOjE8U0hH8XSCvMfyKykD2xbP -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIMKBbthKzOAbWoHWkV+ijZKODHxL7ZSZJ12/NLMJrg5VoAoGCCqGSM49 AwEHoUQDQgAEbzHR12ch5U0BVBp3Ml14dYUTA+YZSYa6YtgQlDT1Jy66j08+PNOx va2n8Ws1KVKmyLdl3NoDMg+XJfkx591cyQ== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEApmq1gXSiFHbSOxWpCS96rAjsJ3ZgoRcMfGR9VamiRLbBRhgL g1LNDsm81PC5ih24uVa+sUWcAD9/S6jUyIbF4IXFWl4JN98LONsq1AvIK6i98rgI RAwtr85sGJ45grvTdyPTm431UbVrhaR7Mp1/QGEBsB2z45GbhWi6j8uhjLowbExB cl+PyzrYBF+lRVaLP7E6e8fF3Up1/H2NDrz6hj8V1E/ho96FMX8berom9aQN2NMe 0YjeHQFmX8dwoEmk15WVvZ1EXAEFnB8rc/dQ78k7fRlfYFXu9QOTenPGfFBNG9cr nG1JZlN+MYJBlx3/oAFOsg1Y9pjGoWUUYIEDdwIDAQABAoIBAAUKJOZUt+EoGq8Q tYZtBP6suSoWGvsF4v+UCM+ioXgJ6MnMn0dM0fTpWxSVGFP8bm7+bNaa0GHu36tU 44y8YsWtMhAjL42c7Y69ObYjh95P7+Cn02hBeNNizEHlQ2yYGjajbnG+13ev/MpB SZHQ1IezPa/YVm2afTvfCLdOErMGQT88Ngv+3VvnLSAShAElqexAcO5kuXL/D7ob v3zisxQvQjC7HpXHHzHTLDjsgdV2BBFeUJY1Gwn+ywGhK2VTfc5gHlMtw+yfj/rV PUPH5GiBYR4J9AdpCnk+niTM8+pSUmkNfi1VzIeUdsiLRaYSavOIFI2IAx5D5WAZ mOljKuECgYEAxcq8FtIUTJAThvpIzcl8vKtGMyvH32xwR0uzId6etGvOKWIUNfQH zXAg5AIERiUMEyJGBqsjWtryP0j59GOtCewZdKwyPeKNH3bG+LEXTay2G3wUJxF2 GmPN7qsxoUXDblh8yG7+RXoXj97rtsvWO47KadE4mRi4oO/TeEdqr5kCgYEA12Q7 /IHoMkcJmjrksrjyx14GF7cmL+ofOiYQ/Bb796ZkwBNM3xSo7icMxoz/IdRPjGDE ZLO42cvtUHumOfVho+FY9C8+8NcUMorUnfLLsbCSGUkduBbXVQDb8kcpoZDl3TW8 WKpiTkzvAbaBGuqStJhZBbEIQuI3Y93myK/odY8CgYBpl2jAWhjCIux506YITneM FXedm9LRYQez2CLigwGA2kiuaRDXGNcNgr3cW4NCm0aN9G8j4js2pspKpL/kC052 jJeuZLtRtF+Ym4VvgMMrEXgKxjvP+49sWTm4H6aYLTE++HhtXGvcVWi8wspdxQYy t3Ex+qLXgI4YRNBFVwMKiQKBgQDWWl1MVOgEqSeIQpX4uxB5kjvT/CPXyVJcZye+ CQ2mjwRzFoII/CGGKHyRWB5Lx2OHG4I3iZgrv8OjtfpecbJDCm+hSyeDPThPeFRS AB/w7Pzohxg5bRnM8XbyLRnkPTRVKjYPszj0HaI5/SuM4ucvLPJjNKQ5E7H2BA65 qD5aRwKBgDECSVOFGL6k4KUJuVp7OArHo9Ck3745xE3GPbkAeJAKyovn7ulalkVj ZOAKDAo0QwpKuQBZYcUgZ2bJFjL96FRTps1Q+7FUq8QEEmwYAgKQdGJKQMg0nnUq WqX3cDQUqI+2+Z+7Q9QJOHM8hwwCHzixL6OewIZIL0X5mynkK+Jy -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAr/i0hmXjzJdkS8T0NeQLqGFX7ZnpVSmPV3lpp5Z9svy5Dmmu 9beiyQFdaTqo4xFkSOJIVSq5NCC+YStxgAZxIk5BwxWuSfNRwv9/zi+o1aCfbHDM ccI0toCPEAlQmOTXHCud/ZN/jWvtJJHltp5VApks/xxuEC6Gci/wEpQ3r7eE/VWL VBqU3EYgpWpy1AOEIvn89bThOuipQBvzSopL0bIM5NrIWm5gSAj0p9ET9iRgHtfO 3pfpptq27Xnc766OYOiiBB416PmN4AcMuvPPFVstFrqINPxOhBkgrzshTdjqZkyl LwyCv7FpD4/GjUKiHKrbIFDA8wfpDUib3Es/0QIDAQABAoIBAD2KtVfremeq6qC1 GNNgFdOld6LZGQl3p3HoPFMoBn36dJ3dyBqXRo8Vsx2CLl57Tp9OxA1FC9B3Qx2o m+EyX46n38fiZTnnpsiTopbxhBJyQk8ig92lFdpdy6rIFy/hmHl5p59vXkSPYjhP 7g6YARMPjvUJdFSkcNCugz98Jp2E9A/N5z8r1zYU4MTXHFKCVSoWN9i3DnJQGo4y Et5J6Fhwa0fmPWoiQn0tK1l6xVkV2TFgLXtAsK1QZzTwUth6Upl1dNeLJ6myvVVV dCkRQ22wrLhyo+vkVglyXVy65UQzg2fP08fNDFfY0eJ8f/3m/OTDh39FgfQ3AMvn jKg0u6ECgYEAwMCTeZ28b2dB7s7oLZqgaAqDAdCHPsBi08FUahlKhO7+Py4JmS1P 6BjRq7Xi4saNgFsEaKvOHs7SrQ4cwVsN+vg4TaDq/yhhdFcgjH1eqIYEp4zVUO2R 4141LGvloneG8erGtMO10xrODk3SGMVbJSoIYt64SmtZ0ESD3jDm4isCgYEA6baG qMD3aC7qvdY9/aIgGQIWorJH6gk83dL9IveP8WRYzKNpBvZwFm/pinTx3maYi960 w3IpLcgGYTOKaarRmNE7kAUzC0Wdpoj1aArE0MqfliVhAxzKc+3zPz3Khvp//hMf DV/NeyNyCLFRWpCx2CL4eGdWJgCnsloOAVA8M/MCgYBV0mjXcYABKjyVE9MU2xAo wuVp3WsaaZaXKjFnvDMN1Uum3dywMxitAr/4cFfBGR7P07a21ChGV1g+bVYoUV58 LCEFj2ySh2w83L5FT1ziNCnGYFJqYhze24dZbAEmwYl4FUy8F5fRktHEVKoDFXxr o7dwLjJoEDxBGwCL4cIrWQKBgQDAisdVr+QjyMNLsn1Pv4mCEN5lG0tz3Dhw56n0 bNABpxIhRV75hX3CfmCA2OeKuiti0A9MFXknZmsbGUMm2rvikj3n4OC0oJ3I3XyQ Qo7zFHt1T0YlMkr4R0jnCRkZKrbXsxkaA5tdn04LK0pCuoJJ9kWNrFSk6lU98kMn gdqXUQKBgQCgDZLJtu09tgwznWr9FO/JZKVxTzBqhNY0OcmBO2pO6czLX1JVlNhy z9Mf/r2h6sS3z2kCTM9xpQ5gRyHDRJL9F2mvxTxXzPeiqkyc5DnkAICfS6HymbdI oIw4da/8TCnfCRAbGrN6q5pgi1bWFrE2qEW1mEfvEjAV4D1EFtYHWQ== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAoVwU4r+WJ5hpAzp66o+JKxNvP8zJ77AaLRLiQZaX3lEnu8NF 3iZaypt0By+LGQBKosPJoLRY9VKFo6I6tuu2s6W70Ygjmb/jmnKDl5z4IgYKsp3l LqZ/H+2zvEMNym1CbB7khh1RywQkrBDyvUqHoaVCesAWJGzlpVfPkcDY+1COE6nr ZWR06D+5DqMaRympdAG2nk5lR8CcbgJPJnchAfc2JshBJ93OHP0psyYOs2Yknumf FugEJCChBcNY11TzOzXQHqKyK2TJB0dyCgA94w4U0fL6Oo7n6t+8qFRpwAWqQnnf Yic7XV7nkN61/YkahueY45ue8HoibQoyxueIKQIDAQABAoIBABNcRbKXI4sIrGuT aWAaF26FscQelt7IFbvxbML121mfXycWMkc0pDwfFCLbP332clNpLm4Lyt3/KBhk GgC3SNVGk2x76y7taSpaMb56j63KunSH9rxMLytDjVyPUb5HXGrgoga9dII+swUP hjB+xXCjBYD46dng/wTXA7QMnCblvdVzrtbZIlBN96kiLY2lCEjVV5jBBI9/9mxI EfyuD0fHcVgprMpZAqr0SXCc9t15ubxPC9pkyI6YnifUBJk/j+sjMn3/P1dy1Zqf cDAKPrGn9vWrYcw2bDqdw7Wty7Cvf2au7IudXiA0EbQPeGzfmqxXIK60fdjiyVfo 2kUUVCkCgYEA3NoQaDOlgaaAWdNe3ktbv0WAiJ6g/uMfM+uUJgm3RVaV3Y8hVRJA g9uwDjGtQHrRupEzZWXvKoTS/tmHLkz4YaRu1w47Et/S4V5Vq7BSOnVr3RgU++bd G/mJBNBvlaNnPPlN4BhJCG1AFWxBOLbiBs/J+Eq3mN4Y8Ka5p5XJaf8CgYEAuwox IL+2nxW48t7Vf9CSiN1jBMeNXYVdbvgouGv9WN0weakcxCXrsha1Vub9liqrfV59 ozEG/e6HRt7rWQ34WDPFKWzk/CqH0lesCOl/sdLy3y9nz2p0d9lQAD6isemCqh3X AeAg3Fo/RYSTAx0yY4XrQx+BOvaZdzoT9jICfdcCgYAklVqyaBu6ZkJMnt7QI9uG y5SHDP/OOQEqMJPR2ToqmjUpBlSXKvbU4MdBEqmITNAA/5xr536+pFHvNUlXOhjK 09oodYsDjV/5RQ8b6ZE1bc34SczwDUYDJEq2KXDScMbhKsrjnCI86xv6cHw9UM4Q Istp/bZ79A5djsCiKgW7MQKBgQCOmRWdfyxPGzOXTtZ9DNo7KHYulaksbNowGViK SiKsFm63wnvg+3w3mWKFr7QUQdHe0iR9P4qyHKHcIWZSzfjR3h5qF9B4hEBq2Fab sNGfFFIAYFcH5oSHPxHkLdzCQWJSKk/a6TKEbPWiHZIrpJ3fDKGx2hofhxS3tnqz j6sgnwKBgCjpczak1i3Nm/ambuxTK6E/zQGO1cV4/eeleydK/c1J0es2QYVJBUig cGz6CgcfO2/kdRBOOdZPwj+HSG2DA4kD23j6UDpuG6TQVbN3KzwqfRbimIuHPfRA fJ4TiE8Qf0dBJqJGNC+G19nDS7R/k0iMrSjbDyapj1K0J3MZj3rV -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIKfiUyemO4rZ5HRrTmeyCY8BLUbh1Wpu1ZnGxVk9vtidoAoGCCqGSM49 AwEHoUQDQgAEIW2SijEPvstOkTVr4ODLTGi3nMxkqpkfri7WRZyBIlb0P2t3g+3l rJ/q+o8gzgS9xoR9Dz1Lo5CqqpoTBmuIZA== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAtfT5PQwJ/lXdkahjZqsCybowANnkXo4ZHzAQrviXUnIxODZY cV0sV47dvIA9Kn2aw25g0yS1ieOWb1OxqaAc1TK33XiP96VHEx282BZx6Crmativ YrZOictiSl85ZVKx5cn5C+6LjttLc13RttCf8XVasGlYWu32gpo11OBZlYmDUQrf 9HYCY5E0JTwPEFZOUm0udhTl142a+LDqnsvoQQcZ3xsyeOmJQTK07APIzr1sh6i6 rsBgrgvflTrk/Cgl3TB5A+2RAqdYHp2k3CUP6aRgYrNM6OoSXD6WyUpwmtXPgQ0v OlR9bhORjpvlI9u98e24cLy4LifeGPTg/RaNvQIDAQABAoIBABbBfo2Gx2ss9EBc AE5zPa6FNVgDPWnL41LAsUgd+S12RYyOU2JIxkZkV3vUcpHb/TJ1cpuFau9wlzxG Ccvjz9H5UqsFLHAgFfL16aEBXEPZCvxlgWMFghipPG9+WDsWlqldKI3i9UYroSna RmN9f5Ce3iAo6e65SvaLcFxhUHgrG0xPMcYnay7mJb8iWrjmNv6YAaw28nTJMp21 ZTkYYBHOsaIdgzLqg7VClYB0jEDxsW9hd3cz+Iasop+Wkp7hQ8l/6oBhw334cYZ6 rNrCNW6TvrZcTt4a8mbqn6EyP2Ya5VzJrmHrKJHmf9ASlhu16txfN/nKxR5sJbBC bUktfjsCgYEAt7VRcHea4ZAemZdB2gz7z7sJ9eDDI5sA20sf/rS7UESppyiwYo0y pwO1a6W4UIPtKSA0uG9G1yeogv9c2OWq+BF8l30w5cNhwDXwG9p4Mt5E0ZK1buVD 8tmZkuXFhNCdsXWzmgCzkZJamjbsI5VsEdk2evvKJnziTq+y1X88ii8CgYEA/Y85 yhuaP+jb1lqawUG64DmKGWOcmx/HQ4J7xeHCON9JyxRwEg5XVbBCrCUbZOFnv1AP 1y+5bgojlSy2K5wYsuBCPvraGGyEN8nP8zBg8WfEx1EfjngIc/tnwNRb4F+M+0ET kk/gXQXZmA4vd3sJ/hkOj040UILizgyD3Tm0p9MCgYBvW1uIXxflTuUdmRBzypcB bpE1GA9xj83PIBS+4nMAzv4/s2xn8MsZbigUnpnBRJcH7NvISLuaRBHjhkOTvnQK dx8c/Ogc/nhMeOWZHK7rtsvkdZfBJvwvQzPSVbGLNqHAJma+HVq8DQkandw6HaMq lo5tsh7xgZX0uJAg1kWuRQKBgFVXYZH+3FnqXCO3dyLYprdVZn/JISqs9XppbpNZ uu89aC7sABRzsz1qB+a8zo2TuEGSBuLcc0LwMq3A0Me40C9Uf7eG4uUZkR7d1Bn8 DITz8i1Lxp1DFUVENtWWJB5Oyrq+WoICVHe6wlQFYkCKrwBRGq9tGPqIMyI64B8T jxR1AoGAMq6pFyRuMG5MuJKtbNkakXAw1RbAgIYxlE9qg4F5mVfGbgKL+krMWPDi czFH91zIaUZw3ziAlAK5t5G5lP8EAq2m/DD8j9Ec6HKEe5VCxqR8b2jFvbsxTgGm XN/HszhvtPT3UWy5nc6FZltKorJbvXsHtQcWtxqE4YHDpBz/p/w= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBgywazqM1FKSgMXOaBqbP7KJa1QwqAQay2UEi2NOMgV8LnLDqwi1ww vqTT/D7hUBagBwYFK4EEACKhZANiAASeW2N/3xaUFV4MSyMqIo17XbNxDEulAMgN gvsLMWRuv5O8DGs4b0mPVtPGffonUlYM8CVjHu70Uq1NlsW+at6xr8zmgXNpin79 MRzqI2/SC6l0/a0VCl8vlorCjl6KdJw= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIFJR+vG/nXyezunAKvsF/Fg6lcpVJ/j7hnRx/tM/Gc6uoAoGCCqGSM49 AwEHoUQDQgAEoONjFQXIUfrtO7Gyu16s1auI6lDwbiUEbrk7i/DsZ2svzngqbH9f HkV170k4BrHFNVrE5ssTgz3uRQlLlSBYPg== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAyAfO7sZfO5Fp6fU9UV2aH8zGailJ9eLQ9hVqGV2AQuDBmj+G gpedK9GGFd1EdcvfgC+ueYbNzP8UDu4Bx4Z72nZVaDjRAFM9PvsZbGC7eGQJHJtM e1iZS6j8bEGB9dN9J2kpr0eeXWZROg/pEtSgKbj/hb8pV2Y1EaqBYDZCZ2YLD/qX Hgc0qrS/+x5ZgHe6a5VujXjQEpY6GL8ZfaCaSPECMxIYTtzUrvlrYAux4gY8U79v vlOrrCfLnwCaiGXLkUKfvclNzxVPt8rK8KzL4NcRLqIg7Bbwqmlc0sH///Xxt759 iWPgVPQP3AEBlB2XutnkNrfmdfb2bvK0JXgzJQIDAQABAoIBAACjOY8EMCWnj+Ct KX/BbVA9RqmHC66pjAp8Rms4QNHIR7NQ5D/mqEhhnk67LKMdiesm6BuM1xrgWroP yhNxf3fXAYCkvcEjwsjYBDkTZP/UQRB2Oxahi8R+EGpWSon9jb/VC9rQvdCaxxFA BKdy8b/EpeGUrKjLCEWG66Ed4pkicjUxZ2KXEYgkFreZCGHS4ujXi/QcGB8Mpt82 OoEBIMOySiPDFMAfwMkWLbI1j7S6pTl1hUfumtcyT9XZODQloxToKthFNZ0Wp2cL EV405tHgL7ks1XubwULD6Rcr2E4i6bNZFSLiLwD3vDmcFjZEQ402iN0r96oRzuTL kPr7xPkCgYEA9t35Ig/sBp6R+W435/4Pxv2w14RJH09+aAGPHPLSwAoNgcGIkNxt BZcPLKmo/vjebggyMIRVzytJ2/WB5bnMnfgqR31FYsIXK/pK7DOKqhGFYRpZGrKN Xi6vl8b+kk/WstPlPXSvlsfdGr2SqyuX1MSo0X58ZyODKkKEnrScYp0CgYEAz25B cNk983fKwiliaaT4gdS21kSJR9nobhYISWAfLv3S9bVZqqX7m4TgKh/f3Cwp2Jro NnxgfUtbHvleQ5fIGvwXPEQgEO7rmLglEtWXgiiZUM1Fp3dqzjCGg6V3m2W2teti 9/WW5rW3NxCqW18egzTSUmPhqIYGlQC2GkVdiCkCgYEAxnSpzB06pBOjy/40CVcv vcvB92+MDRStzNS8BQycKe+q7g30SGg7aIwIkeIOTnMo9RG3r1MjXHkzVhVmiJQ2 DyQqcPAe8IaRdDQxOPMyXQfazrYMva6egQFM/dnmWx69vWMk3aPJaJBhihauKtbP pyc1g7yIK63bywRQcvlE4u0CgYBX2a5FiPw/3QA2cyiG7aOB+QDmhmhN0fAqj5I6 4UbTtBRgk8nCCEIjf4cg0BcTPHEMl665RLvo1L1mxN4zalkJdLKyh3e9NDL7nyG0 dFmSendUTVuurVjCsrKFltKtMcrMCUEFGzIpy9Qosho0UHivwPNCiaLMqNaozIBT aAVQ4QKBgE9fQ5BI0i8lKx7uivqXH+LFCE1HMphwDOiEaeFBWQtHPHenH7HCGA87 98xlNvhXRRlb/cD7SiVibXfjYm4vhljTmaFxA/wj31XAISD/eOZ6K8IwXXIK8B5S a2C3Pjooym08cLTuBVqi2c8x7W/le+U7oo9tId6pSR90HIks8ld0 -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEAsPplDskLzIb5D1SRoodf9L6KavImKnuoeZ6AzfjaSwVKSy/o Q9ZIpv6HOjdLxUQw8wYv+RZK8KrYzokJZbtfzDEGpELcrabzCurDkwxMz2m+SmCv mssOZRjLUHug+BbC4ulg7ujCNdXF27nzQ/azQDgMhcTJd4u2g3OtW1t5EQeEpdcs 8V3yQOf1SkQeoUpIcWglD0NJR2Ja6ooCwPPEso1dum5SLV04gOjvCLIEmFY1Hl95 3fe0DTRVi971TH9bUVUHUFQcMXArnPklkV7G0ZR81cuz06uTCJ7JdodTVUfhlF2l GH0VeV8bF2VUjGuyJhF8Svagb0AP3lYX1LIVfQIDAQABAoIBAArNPZ3JZ470Lf9h igIBgTnO52Pfo7S0F3RU2Ee6CJjLmd0871A0o/qNTnOfLGC96L7sgcESO0C1LMZu VsR+yzoLQ/yCmDWBGxRvf8BZ39ZI/fRMMmugOSCygrZG1WxO91YiKGhsjG38vjbL Aq4DQK2Kvjjr6eACBwG+7bXFv33qfXv2hMJN8IQcz+WBJ2YhJ7vj0kfp//NSjkI4 +I+baTTYLza9z4Vt/lZIUn1IrCHGHp/sC0XJDD4mV3PVQ4iJbYbdtg4ij7k0463Q rIhZnYvkAXO9VVitXd5FXeviC/ZQAt93rrsaKN5busuqGz3h3gPKG7WHE8noxOwD +Q+EKAECgYEA5xnGVVkB1utgeCDTYGI6303oQ6Uy+IBqSlBuHDLKtcejRoo2m4rk TM8UMxBLo0PwDooZt6t7LgQtCkUNDLgJxoBd/bAkTmLaNm7bZwNiF7CR9m2ics10 JprU+xJj/a4NWbMm06ZJRQ57osxV0Jv7nlJ0LqtrJxgeYn1s6lXiMw0CgYEAxAvP QozsT21Ak4qnNpy4gedeNKGZBzh4/NcWFyiHuejHA80UfyGbfuCCQLtFAnP/uaYF jdsrf249NR8YF9MeJzq95ADqTxoRCXyvg5vt+IEqoY8mn98hgCn/TENfP50/EBro FeA5tDlxOFT8pDIoqPf1Zjj3a/cYiTt6QsarkDECgYEAvtzMrsRZ/pRbEhuaN6op ETAYuXWAiTgVkNaoeeWBAWyl7qZLv16QetczyZCVx3tekcOAxe58R17vi+HHi0+b 0zNFbTXCZnLB4d7gmU10ADi19B5L4iDI4vFRISLpLiRHpmONl5NoQ/5YIfY8kZOh 1fonNjwgvSLwRUttXoQb0ykCgYEArnOL1T6tsegYRLJnJZPEI+SM0ezSzbgVAXks MSNh068uGVXO3Wo8gmSpw4xhVlN+xebUnmzfgh/I25J10A2PkX0WKOQfnJAnhPes /0IsOqxGEUnfJvhZSUEV6vkwstzslxo6V+0VrChJdcU6o6n2wJUVjAc5NJvG+6cv nmhHlqECgYEAyYHIfP6htaOMSZsqbn5oGZJdDSDGaLv/xbqH8LUoTOqoJiVCBPio ClaWsCeE8D5yfm9PZQqL930XCM3ZSD4Q2TnY3UTXPCvU1N/sTMzVyxQDL0Zin0WW QQGjL7QQdqIV94HaWby/WCr+W9te6FohNPHtmpycUz/G6pbbR4tGT40= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIF1VqMuP/ebQXDN8YkDjcKG06JAETf9T2s53rIKUZOjFoAoGCCqGSM49 AwEHoUQDQgAEIFg3jnPHFD0G5k8dg7EV2CXPBFXZHNVzjvglGg9fl8OeowprMCp6 /JIBJeelOUjZ02AIIbVZ8IocWfZEzbqA1g== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDAyH2UEudE/2xFif778mI0fawtipdG3yvAiAjJbzD4JZMDjHIQRkL5y NXGy+pFE9dSgBwYFK4EEACKhZANiAASnF1f9xxkbJmbCYMykac9Siwh45IyORzGH c4QWqCjwSW/KdApAp3xclqJLT6s/svCagKyWHXs/KmEvQR9160bilBQGKEGh2D3j t1xiMFtm09Fg48hS9iD8mCPgTQDh2y0= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAoBGnUG7OTVfTSKV+A2uHGz06I7Oj+BHzW91Ny98ctiOrpB0p zJbzLEJib2zIUQxfqwjb6RwjWmpayzT2+SaeyBdU44Z+bviedSGw9wM2MJ1vnww6 gZlsvIwqYKC6uzmmNuIfJRY0RGQ36zNXUBpJ65Jm32+u7soXjCmtCeo6lYF22rZd zF7/25f3qqr0QSkvRn+LlO7SAeYoDBAdmxVna1B3XtIxnHGtXu6oQeqQkEXt3XhC KbUBMLf3Uc8I0n1Vwkj/68mVZ/ObSErz0BHay0lWTHCwkEAMkMZJqkabAaQ8hZYg XTcE/MlxxMZWXslf4/NawN0qLoNH4Ou7P8PIqwIDAQABAoIBAEjuQjFfixeqQFYF MRkV0QUULH0/yCGq7BqbBmsxSL+kGPw5XWYeEMXFqVvjUJG89YnUC352l5UGiD+1 7iEu+4FnQAI6sTiWhnwP0bV5/SLBWK46wB10bhqqMlS8ZtgPODAhbtdS+pV+pAvB 5LJWh/+RQNXk6OtboMb35iNyWSbskSyBlu1lu8HYBPuo0K0AsD9UOf/Di0Ujuu8y QttCXMNgpsm2FGajMOyCf8mm4rSoMnXcxO+BNbwHl8ttJiYloNrqaPcJQRlUiyLr peOVH/tFChaFaJvIRUpXS9AN2720G6i9IX+TrBHjagkEYq5+iXLiIjBv/1zDYyBZ +weCFCECgYEA1NJlK2T09SLNqaTEFulxiV3Oj9MMSLUBpgaCkmdQqUB0G/+0A4Ye 6pEhUFhkCa54KOPE7TA9s9cJK7UwHApd9EY4Z2dMJx7OUDxRYAZBWpMbyDW0lObe wa7nh40ZRBry2sXB504zKK0voOJIoEYbd92/YFhq7G1beZ8iNSDWfm0CgYEAwItc 3IrD2Kg6fQrBjPGC7a9QgTosPbZAGteW7Cu7wf5NMqUjM/rBQgjtyEpQEOHqg8zi vFUUWut8oCumfYF66xlouxKmuAdSlzeJtJRTQ+Te39kUYvtMo4IeN4F4i+wllyMI brjB2VBk3h5HJzSeM1H+thucQJgmvljbbivYlHcCgYAiVmf4XmufeaQRMQJqZ/Pn o/kF/5lFyd6gOQCsOnsrM7kII3OZ9fPbCNuFKR3K6hl9D3Lgih4KfDGAmdVPUOTj 2siS9nm0/iVvkKvYgGnfAUlEPlYKiE18lonItx1Sfb6dSbcFaPqcH4VFwfzRzz3z UxXjp6Bo0SQnNWPBirDQ6QKBgHKZwECn+x9WKdHI+CCKktIjebggxrpIYmlXjkWt VgiF8q7FKWnDwwkpxVVkHbmerXWbGgzcWswuwzOWJ3cl/OI3cmV+GWsJOLg2Xyjy 64hKjfkP/JlZV2kuhgulbPljKZCGUnuMThypRBAMV29XWx3SnNcJIfw0U0MSIjC1 uifLAoGBAL1qh1ZrRcrgBbnvb2V4L/5PAtEaups31hHlR7Y155MC1gF30K9p/b2g l313VMkbWKbU47m94BrYFaV4r16VYJzkrl0EjVyEBYYF60d+rjvWEH4Tf44EZ3Hv iVuLd4zQGopM5hrJkJ9ft13VEJVzyZ5G/gnEvubfUDEng3xqROlO -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAxktEm8GmmS3qRrKbWRD1GGAqJWybtr73cdm+Ktt2Sxpby0cD 0TXDK9nHJ4z6IfXkEIsCboKy1nM+SiRgCNR5AV94sUKiiQTTd3jH5it7PJFDdXVA oU2RSx2ow/Jkls0xa2A5pMGqVk5SRI2lwUAcfmPMb3mwUCurnFCq5xQUOswskhiJ 4QzP6dVO9/KhaRBd+/5RHOxnhT4lXUuE+29FY2e+2gkor0caTICUZZm/W3GtAxcq bcWgPo1sYOvPUJfitjOaEVu9PydBXzZZvzD4S6qtCZW3/EQjrZiAceH6Ab0VvaCo zC99u+pmzD3dvsTiDZuMSrnNFyyyDtlx3T4cGwIDAQABAoIBAAfM9n/XPxr4+QEb RMM4WtdlW1ny+NShb/9nSnTcS+KXnCWxdjP7JwY/4D/tD2hHdjLrQr3xVpdtZOMz ybLKp9mwHoHJg/+kL6zlXeal94hrJfCmQArGIkGGp5jRL9ywjhGSA6TK4ihqu319 eQX3UdVZ4SLSFtVlIB4kikAG6S+tLBj3EGy0kYJsEJ+jjYFqzdysUrYBMbDhnq7J zwo5wS+LqrPTeFjPl2o5vdcu8uB36wGzS9oskbWJciQ4mvShtpnTbMyVcdRLnXYe Dcq3Cin18X0O/N6HiZCoPEEdLzJ5KaVrAKkgi1iN7rmk8bZcf/iWuApT6kMDyjSz kZnEdHECgYEA/096WpuxmsAUueQxlGn0tpftd1VbspUrl929C84aZ9XfQdRXq2bO lcWL7CE5dh305cW2aOHMr3zSMpIJfh11KjfGKqDzbJ+FYcM1csqg3wjLbo/eFWA9 +sKSVFMgNuskKzIt4zoG7uI5gN1jgvWKh9KdbU1HBrwWeqJrb7WNyjkCgYEAxtRe aXP70cEX/KTsBH0HCx8/0n+Vuu49drDF2ux7qeOUuEDQcD9T05lwCJBGCZtJOYZu EEjZTg5t7y9BRPoZ/OXkQl80e9uBo/kbQMjgBA3oef8NpaonmV+BGIKI0flh9xG+ 931p3Leaz/zt2irCJICaDZSGZCFgVy2OFFmAaPMCgYEAyVcBM6Fi35oo/iwCGXux m6mWgKxVAzF2Tm50nnGsC0TzqrNta+NIeX5viQjuisK3FdjksDOZuq7iCTV3vPg4 JNIVOhrxvTDT/DP4240Gbr09yPQ1/H+IgU+eHFftqMGpJVOOMorZWtwW4xQ0XNuM ou4qbj8qCxqbU5zwwwjXR6kCgYBq0zECgVE7qf4EPGueIbqGDD0TEH9W1qdpPKKg 88uhRGfj8tbKaAvWtSqPP0yR3r+hy4sY7rrqCDCigIYV1DXgPXe8/T/Kh+4INk+h KAvLwdk0qocfieMKsVg/3eo6vj0XLI6ok9Yrwu3Hb4IvZCe4yut5/mGSLKiBTjV2 03t9ZwKBgQCirMEQ5Wx+TeU8kMGYH5YiXv1RgC+tfwLgXUPd1gqE+gT+EQXnUtHZ 0kHgX3OBaApf/EyfGkJFI3b4rUKzrAtNQwvMzdtpMqIFzQYVsKhVkxw6+2spDHsf 9pOa6sEg1p0zRNqHngdVgLDLUb7hdGGidp01dMxRDZcR0olwnfs8HA== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEArmHhPnlU3gFQmmRjKXKfz95akx7cVD7QBdfBSxqi1KVzvJJh SE6r73FSkYRSlVdHslgezpwLEHI3B5hDQhKVqByI01I0BrNAmrFSr6izDnnzlhfW YSSCoA+wo5trWat88oGDasY/kc9uERaDN0/lvy0PsacuLxAz6ln4GWzH7s8BjTf8 jnSH28JmRm0kdTTunB+TWbIZnisbffKltohOznOsjfd0QEcz1VLWuezk0smUoZaX HcyqPQ8pfjcYUXQqHTqGVVVn+5w4InBY5Ox8Z8NiX3cyhe48bXIaEYUWB7AlotUU vVLppCISBtkU3c0MVMSdfXje0ZnEXXO25UiHzwIDAQABAoIBAAamlgQfdYSoES5q QLvucrjnVpYA2c9eu+lVIrqeD/LDQqhA/vPWiEkwDcGeBdZLR2E+aiJgIi3k5UNl Y79L3ShVukQxAOn2gTLFK42mhfm53fft/c+jqFW5c3ex8ESxvSi0ltIGMJt7iUue i6+a3PzPF6ejZCgIWqqH9uXlV7S8YUkzXmDcKnOIlBENdDtGWM/QTwnL1SCFRaRR xFdT5MbuuINhiRfhGnA2cheiqv3DLzHbysV9R/7+QqGI805+OGTfdvbSPwqspOCt WmMDspj6Q7If/f/F0LPVt1Y5jC1BauIRRwD5Eko6hofu5WK8n+80gpYWhNWl9tM4 UGugdRkCgYEA0SqmEpbVKZm8WEQ3/tiVPL3SoKF/eqbTYFnHq03ZmWDHTHa3HYP6 x48Yww084ukA4/gDHxE7HnQue2sCg19pemWQMQTeK5908ZUC7r87wgbvSwMpnKmI wSMzrlvgMo2A7L+2ojCMsJal/8GVNOCiJYKuLOExjZOPRPEM58QEB8cCgYEA1W1p JHonJVfI812qv2yHg8M/zWBiqf3ONwJt/vT5dwVbuYtxP0o7siTZg6m97HaYGJBH j+Jdq+qmcPNyW4tp5dZNteszmeDE2Bw6qKMllA4WPLRDVKSlwMRWXpsT7CboLe4C ogwgYI5mVOY59W6zGnU/ybTMKibdBpmA6XVDz7kCgYBsrS8aa3oXokQEzHUXmWp4 49vDEAYPMQyUfDFNJSbRFUKXzPq5gDBVbVkdRwyCjTOkPuFITAieexkHkQL+RR2l tY1kmrXgjnoRZy3d5EhlOHsuS1dciY1/ZA3fIudq/LCm0blPrc/7lFptdyRSFADL Yomi0eKQP8HpvSDKbsL1UwKBgQCQ8PO1pQtOrfY3aEYcJ/1D+2Yp+Kooncfczdab jgyYytfHAy7Od4Bg8+uQIcdsfgG+tMUUrvtEVF/iV0Izb1NklgxCXk+10dJ8nXcs rVdI2+Q4J4eORR6X8f5h01lNSALnpjq9iBS43hwazhtQVXRmpHfEaPc6LRhvcfH9 GfkKaQKBgE3Qdrxi2/gSiVB41DQyd4449bXrX6Qfd80+0oB3X0xe/aR0A0+mV7U0 S3hIO9SGrxRfEG5oXWwBzLQ5aHZGvaWsavNagEKTdae1d52XjMP8H4qv3oULOJtr 61nDoOZyK+FQFanKSPut+RiTkoFxSf9ZVovXC+6ISW1QGnp6Apid -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDAcIxCMPNoC05XYqnqjE/CZBFlq7kTZFYGZ9O4KTtuWD22JVu5XNrDF CrbgONcBS2egBwYFK4EEACKhZANiAAT5rMOrA8cjCkWHWhPR9f8CKOoYkoj5bOgm xhBjmgNmvL70owBfCYZnN5KhS5xIES4x56STGsvbEdQ2YB/owL85bVlCb7TINGzo S1QnE5TY81J4UqvGML9GRMPMAU6hAgc= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAr8t6qF6m4F93iMt1YGvGm4zLYh2w6J8gwu0Rv8MPE8fJ7rVL wADSqxpLU5HUpI+GUTUUlE5YhoOVoeXs0b8kvOEidO/B92Qvn5oVIMvd1G4cdKZV a7UbG88CWz57f9uQmn/MQ92s6mS/ltOBhHZRfQ/65ZrfvuOlsnyyKFyZW3By5wpu zfBTH7zOo9Khk+6utd8VinwoWLY3YBzO5ZHtVcSAVk8b1tjJZ/SX5xEWlIkzfFTd SK762h43UMSZyNfuW4vqgCuEIcHnbC93zTjZ1aYUfNKBRGwG63v42r//soSvgbXI tJGQBXMcuY9D3kyhFF+46y8DxrjVP1nYgtNJeQIDAQABAoIBAATybK/2w+rt/NLm aNXvCn5/moyXCc6uBbG+kqCLGG5F0casJubPDx6eBY8jPDDqUg0QeZUH1GFqrAgL jJvFbX78NehFA/gWg2mSIDSVUBeFhrr4oFBA3zOr4mTXcAnDz8CtRn4Fa7OH5MVV i+BCpR3oGHckIdZBGT1Z2XidzHoAdua8G7ZfW7aBJ/uJGPYLxCmzKBONaSj78JeG VCYe7sSEB8DLKkEfBYViwermEIRcl3lpnhGU+A+BwyC+Hz/u2DJHqX+GksYPF5Ll TKvVy3ubBk/ZUadxyrpQ2lSeti5VEzLiDn3Svubq+KDrksMrshCHmUBpJGxjEcTy diIGG6ECgYEA05YMcvo07RyypRha98vQa9cPoDZFY62n4+QUT/YQTvmm7ttNYjWQ 9WkfQcVbU1kSjaPgueifgyaBirXtoQdACoDfVAbtViuNYdDpqTDQeUZCo1+SgKEF /9jvwVrkQb0yJMHr/jK65V1GWGqpPlsd3F1Y4FYJhjHG+1I1iykXbRECgYEA1LIf epkKVa+iF2dL3oJwVpYHmm58SE8mZijLA4GF3iZslUmaD+4S0VYSRDz9Fn5jsDiR FSd9fUHhyGacz7rzur/MpiIPdpNbRB/sTNb9e/REdsnOoRDbinnGvVDdihtSHwng ksHMBDOF13G/GECp9tQndkTt2dEeqkcO+9YktekCgYEAgya8Grzq95rVRS6enICS dXX+MpHRWyL2MXVb/eCJZVqsVdxL0Ddh3izF+i/KFxTcQj21e6cs0M+ado+kdy8W TCxrwhr1HHeskFg9rekbIEEj5z7DgcXOATPIEXM0j2cl4NDvZkatwKSbiQy8UXGL Rd/6yjuqdar/KyNfGx5ibfECgYAVW7GniPittA5N1VScCnMnbrdivZeDV1deyNfi CT6dGTSsJRDwapK/LKp26bzsZlKyXmvLOQTz8AqxKgSzI23YIex1/lOZL6DpjV8Y NDqOGPBLEWbLa7rwA9x+JEGq3aV4cnB3rDhFb7sP8F8lG1E19QXlbXSI++Pda3dI uK9FCQKBgBmt8PEXYfJSsLHKCo9DH94alamJCcJL/8R6x2bcuUH788tp+qjBIZ85 u8zJwx3SdncmMpB9h7RGNeIql3L7XGhp2P5tXMFD2Xo4MsK3WpkBj3RC9RjG5BCx Q9zn+9+Ev5dHMvSu5+6m4zR1m5lXUPxu65QmKrCyCX1/ZihrUFaj -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIOtiUF8Fb+lyqSQqcBPD0IkK/fhg77Jzzh8Rg/jWjjw5oAoGCCqGSM49 AwEHoUQDQgAE7hkQRpsgZ31JPbhfzoYzIAK8sr2NaFbIvzLWkNm6lFr8Ktb1DLN6 Jd9p6OZrtfnslhvEe+SAo4OWOWaMm30p2A== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA2ADj6LHRs9kldidwAvHU3gpdkQtxc5LnA2VysQs7EAB93JRP Mfca7buNVk0pbvie6DXj92QoWVyDisQ2etex1MI61Af9+GRsqH93YTkgDsJ91Jy1 jXGYzYnIOpjh49eQfdF575jU2hDX15rQ6ZwyI2fpORolsCJd/jRLEaySDzgqogy1 Y39DWeKYSgk0gYLa1rJx/DYIn+t+PmM6B0cugATr8WgSffm3K0KVPKh5Fu2nOMnQ 5/dtJLcDsfc4M17k5+8g9JLKubTmULVCh9GnekPDRsLNr5MLsHvQPur8Agb0Ch2m 3xOfo64CTfmHXCwuLGFwoK89iZCY6bbEI/nIRQIDAQABAoIBABOpLxV+3ADUBtAk olIuS2sjg+VAJqU3rZ3WRdR+GnPoK4yglj3MyW9ypxiAIQGYETS/NP8PZ4nMvS9s ES5oxCfCvyKOEKyjjW1f3tCjZ7rYMqZf1jmn6ZnpzOcig8sek6kUIFZx8YvgxRi7 n4DoBftJicW4Ds6jri0FewDCla/bSM/4Tql3HwoOISPNbkoPG8k1igz0/Z5WScBP RLau/ic1Q3Cmq9goFY7tzOIqAx+Z3fPD+xjHZJrR2DSfVHrd/x421P9vsiQCyfaq yIDjSGTjY5cIoVdHMw47S1a6CmpMIv9UH8mST8wJZLgqfZzqipl5YZrZCoP4b32N MG6/GtECgYEA3+JAdKgEvh4khFtlNmAsaYpsShdpyhGP72xDkh7x+YaADUJBzQyW EwaOeCy73k6QGkU1aBMrdLzv+yg5bFRmQ7UevZqz3W1XuOajYW0oEYLzhW0OWGpH zHUeWHk0aJXDMeSGKkJ7h9myJYr+K4F6xp5+4OZqAamyw886jfI2U9ECgYEA9v0/ UEnDN/e5sS/sHlaqCY7oTMIRIXpJvonPiDz5aFXoiLqJ6OzTwjnz4gMsExnymoSK GuLUme3bhjd4rVFPID1tTGl+jrnKQhyxn7cpdgehaqr+M9mxae98mY5xjSdMNfR9 1EdyMZZpvFutCYwAVe0X3pXRhNRxRPOpIkYVDjUCgYEAjwRQGnVOekh1GVvs/txW 4qC7ZmUofh3T7aUiURCVkMmbuVyO/jbBE6xHjHs/E9bp9O4rHK3KP8uGHdHnRM1x emUUGxjdN2Dm/cXPrqf1RaJ6f8xXsqFJ9lEGrovWr8yjoZaTIiHQGcs2Iwd0MESJ MqIC+RYXt7I48R7LD+wfSlECgYAXvDqLYqtKA5pqtqpAOB/bD0qvpa6zwua3UtMI yqNFLYxNJ2/9XFT1Q1B2lct0gnfX9Yi4ELhRmpQQD+Ce90NdW8nXIAQzfxM6yzse mCF54D3Y3FnVbcQo5ATbVN8Aq5gdT0OQVNVagpPisASu+C9IEqLKlyctVqUT9T55 trZrSQKBgQDShfg86X61SYZ0vb1dzWqMYGp1zs5SMD78E4WnsCxOwVp8quCWnWVt u6CGinPntXLYiwSuOxTokrMag8YdwxUg0SBMI5VI8hbkQKlu/Tmt2WH1/c7oZHjY WxKZW7hM7Vsa7bwVVLf/nfzacpkBThmk+egA+qe+dJ06VvgWBht1iQ== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAtEgPW+eZIFrrKGS5IgxJw7Dfrex2M38yP+A3/bwd/EsrM7F2 /AoGhSwUsFO6Hcp60PeB69113WMq2rKPaGrVrBopX+TApWsz0uvdbmvhhCF5saFA EXLWIrFsOIXOzp1spMPbePlBUVSR8KqmaGJ4Cenfn3Y7L2GLm+5XvE96JMNWlTcP dik3+JRX+FDHstFzaKwWC7fnO/KVUflzK0SyaLCphlwJdZow17WZNroZ2wOvZ3KX 2MW1lQOG8iT0lCwo79KbVOGZjbiV/MwFQR1xyFX9uVUOu42bbhWiGk/JjxiSvtCL oshgy7WL4GxyXjYVT4mt4L1Bgj289EKeSHsWXQIDAQABAoIBADWOVqm5wn6fI87L JUhdGCi/SaO0ZGTl+3qIVHnXQZ0qg3oG1U8Id2lmb/r11It3FEcxz/HOx23uQNPZ Scr+Od23o+Tt4uEBWNLm6NAd0k/bVfiT66GDWOPTi0+7SHWOxLCp0nA8s8/CbNxv BaJq5jgjtx/7Epf/xWacRooVnjZ/JUPlGg+j6qmwsrYsnO0TpqUrKxkpLFZoaAJn mmshThFYeytkRE46lb/e4djirJiPWIpwEwwAwN0HjkoVaR28RA+w6KT7HOcQkXdh FR2T/8gVd2wwDaVlK7DlYqArBaDN18uhn2bxYy7Mt/ISY1vUDnSE2TNCIO4+ZV7h YGnzxE0CgYEA49sgAweNXM4Fw04Lkb0eaMb07gH2rHT+vaIeH9N3Z1UAZCEZzZ7/ aWz8eDvPhrZSaJ2qIx7T6ypnyM0wWIkOAXQz7jM0UfNA+9s2gD43cKfFTsmhqK3O QSPui4Qhk3W6p5+9AVLPVNAsTxh8eH835Ddeja/rkMrsClyYAXkdKk8CgYEAyoyd l0AnPu8GtKiYnUAGEZOpWKjAEOBfg90lub0Uet2IhxcU35CCFdGsIMk0sKI6ULE9 G8WID3p5TREXVW5IiVbQ3K4gLZrykMhpqSmluhF+NyBOiLV3fd7KCcxmH7910M3F F55RaDv3z8cUDTKJc0QsrlgkzacCi4k0rJ/DxZMCgYEAtEbO0RbMlby7eobpSGml AalIaHdNP61hT5BQ3UVml279XDuEOtetpTABoO9RhngCQ5ta3WaqrMlkS89sjOAD IMtbuv7wSlZ398y9FkIjgxJ6XZfSO68oHQnc1q24Ev92quELnVxzhdse84WgFYYy JnJYcSna6zhiAOC5s5CrrqkCgYBoZQUsWaJgq223W1YdZkw6bvLPgVpM2HgiTK8P Bkcx9FBT4C+f8qk5ebHPzCReDZ8ky9UFJVA1OhifAfoWzBqSvq4zr4NiPgRbXxAm YhLKzg1ReFNB3tXRiCx11GWmY1Xj4sp8m9q1cIMPEjphevSg9jhZO5DsdfG33WXK uyV6BQKBgDBuJNYPXIABtSURhWUCm9Fy1jRlk6pdYRcnUcBQMcVxYycHNFHm0ZMW FsIUsznPrK7JamoAEWz+4Xxp/z5MA0c26+AtKg/g6/7Jj7DOZ4RVTkqHFpo9/Mv2 tELz/zXEjgvqeIHVOKu8vqAxqAOWKFMXk4bV32VdnaHe8o7JQ8iV -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDA3f+Ge0c5fyjNq5fhphRkHy1q0REUHkiqMX1oj8TpUvvq9vNLYclin 7TQ4P9Yt8aigBwYFK4EEACKhZANiAARrqPr7fLtog3l0lm3vAk068S/LebBZW+ln FgBZ5PLr/dX8hGhn46OpXPVCyvxZryMd0dmf50yD8t27cNLOCewfaiCOOf+1OhWT qcP501N9HwubTsEP/mC0q6MnS2Mt3pg= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBpDs9giRvvf1SeC6W5ShD80Z275l02/QwyfuIDwWapuHUHiD47VBYN 25h4qUQ4muugBwYFK4EEACKhZANiAAQg689tBveWd0rA4eUgfOI6o/AffIGCenNH CRBZLA0Gi/t8LnoXCK+N9C8evTZQ1c93ndqXGEaVKCbXn/d1C2KWn2w/0bGm8Ykw ojlAOx/e0Nr+Fx90n0UM0n28riyk5qc= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAzotA1Rr8TCRzsqg9v3QYFpC39O4rpgmZW/OVNgrQ7mpY7dcA M2DFK2BDlAkkBcy8g5X/KdU7IqM5hH8VZ/GAvQ0fg61Ry0w7tsBvZu7lkwS+4DSA /o81aC5SlHOPTZoIm6ts2KlJUBbixSjOsBbMXZwq1BrRSG82eFes66SBGOrfFESQ HeiNp+fOUiJy5eKUTlF0/l49fp3CSs6jXWbcfhfWxMz4Bf1sWowlpKrCsy7IWO/0 GldLui0B5/NIoI21GVpQesiVhPMxoFPCbRQr1sn/WTiZVUSfebQsTdbBuwgkF6Bu 6fXDBhFh1S2lI7chkZpda6oUL1oeZme26ieoewIDAQABAoIBACB3p2NYcJyPhlhp NfuohjjV2vT3k4jwLVlU+vmZzaoMsZoBmBh7d8MPyM+2eCEpQ+DzbT7oM/mH6vy2 9Wh3gCM3suKCFj985k4eBeUKXLA1qMOZvUVGwcB0t6p6V+Z89ilyUxPj2JBsaI1R ktv/WXTFnb3l0Uwvn0JfleEc5OZDjMaktZro2lWdbP7a+mMMKlBc0c8C7RGto6AR u1U7yQagWQr4sbfpww/X0wwdQIhzy584RrgnMK5gnZJEujS8vpXSpvQyA91oN6eu aMCq1OO7j5cOPPLdu3mYVSupzhzxjFCAScJlmJ4vuqk9csteXQmlvUEdF1jV25PN wP5aEUECgYEAztWoAr/9qZOJMAse4r1Nqt2V32OTxFGyUXKi1LVbln1vyGFIBXkK TDllPKNDHL3i1uhxGGMzGhq4glvmEn1hFTjU3uF8HFLCMCIuQKwN/XKK3Ld0oLpX vQDBCWMLo0rwiVMIigGRQHufbzmFzf4q3UwfenCezjsyz2W5Etxq1vECgYEA/6Pp O1K5T15HMeBvh0MCBGnyDOL8RRNoDcBuUcnPxvYixX9CCQyXAkUpbDZtJhb8Bm/a G3f54RJHBlvWCKBXuv+m3zbFY8pEwnoR0LL4Og6N4B6Dtcg75dGq2tqEgIZ3GE5+ SuxJAEju3sEG0IQyJvLcX7RDkiTtmQNVNl16bisCgYEAwsDhQz2eTucxvQAro9oV 4LZmoYJ0p905J4Hmmpzt0WTpNWeMVkLjlGRS0+bykYSmrC8QFqOJgaH5bB22JGDU YhQyNG9i2pR+bq4wmQqo3aXV5QAFHDZ52Oh12y3cznQIy3VYzAGv0GTW+fbS6+TQ XbGIzlRu48dQD4M74euT2jECgYAjrAKqpYN4QMacfh3x+Pa6GPKOu8nJ9chKSvTZ 8thMgiId/wD+9EPKLE54bCvU6dYnK8p6lMZIkt1YVM5MC9vSG0R011a58wqfPJtp zN94cnl3sapdXmCFVDmMKnvc12ac/K8A03HoWUUDzlmeFSRObQs1S5k2NnL1LBLi 8C5aWwKBgBhiKyH8ovlRnTT9bRr1vz6xcy06wGZjMCOOqLG21kok7Gs9OHqCPvtc 0OkvoBt9BUuCLacNpU6HK4bs+agCjJv6KXDgwClvgYws5NvchNPTQQyZQviniNp2 LRUW9Dj/q4XSUMfX5cKV/Ewi1icXjBO+0EvMWUCqhtFPD3d9DijL -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIEpz9jOPge+af03NRRW5YBwa06cbX6U1ij9QzZ+Tt+NAoAoGCCqGSM49 AwEHoUQDQgAECybJ6p0AAUGrOfdGqC1vVfhUn5VboHKH+A/ecAPs14mH85xH4weK gJe+PVn3FNGYgUVeJAyTzXh7cbx9a3NX4g== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBaWj9IflwN6Icm1hLQlhNFunYTWZi6a4sIC4LqAVCu44bXJ2qbb0Oz As3Rgq8P6i+gBwYFK4EEACKhZANiAARYbEQICRC4BdIJ1vcvL1VhXUoBHHtN7jow lqV8b7x4LczSwalYj6ImbzCalm2kREeau4n+kU+a4IISYoiJXM0kw999J+nCJGu6 lrQudmml5uZL3qsOUWglxspULl2G2S0= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA6/63y44Ug522f/Fj8dzXApj2Uy31cMjbymP284mACpvrOJmP M5CngS2vDac87y9W5JIl3eKSerpqNTjk1MyhscjMh0FCXK451QYWPZ8PrJbhGspS 0ILTRJwtI7vbjVppQeKiEGXCEXh13oOwGtcPM08Jcq6X2YWss2ISQ2iyCvOfAVJs RTp56UoCmWQrX726PR1SrF+IoOhldZU/TLgIH0ffSp0VJTjkTs5eshzG2MqrWTOc 0cLOU49TLCzVLrn0zzlP6y7ufyvHc/e0OXU8STkeoFSiBBHncM99UJETbVMR/oXD Q8sAZdA0vf6F1dE6EhT4+K8cp/2dS8vNCd5FrQIDAQABAoIBABPekSn1xJtk6snb Oz97XleielF8M/HdhMfbDR6Ua+/jZcq7qcISgqU5K/JvK2MLWM+2JbMIpwLnRsGZ ZdwsKHcCrC8ScFxuR4HnLnXcumHycsch1BbTKlIuALeaqFG+lCXPHOGwN5vnSQFF lCJbtgoWCaUatxVCOyKqoKqv72xFd7DSBZxJrsUpMSDt2j2TUFcToyRVucHU1cP/ w2C2tsngokanTFOenOvL2XkT5WFn2JP8u+EVf/LEesFwebTOQbbyn6TvYPfmzGvP wxXvjOpRnRvpMvKilzSYpoToCu1EI+URpUjm6ELW90dQULEpeJY952dElUyP/iKN 1vFV3M8CgYEA9R2+Rt58a41tNUdl6MeclKR8GA2M4rHnL5xgKShKUoy5QH2iCmv/ KCzZ/W8fT9TqRGU2I/l0Rh6vGfHqCkwVmT6enYkWxztfa/8PnO+OuIuhBNsapysl S7jqHbEcUmgAV6WcoGTo6HiRNd/S1Or8B6/aukbcl3zLCF5fbfuQQ9MCgYEA9nlL FbqIny4wOOmW/g6C94nscshqFcIo36OE7iiZj2iI2EFd6R05nfT2Svbqg7SlhRgp 7LeckyC+aIID+3yNLrL5m+jo08OUuujI/uAu3ehcfIVlVbg+sjoKbB2vsuj894xQ gtghq5c0Jiy2jRYA56OhJG9O1xxuMLBWdSG84H8CgYAc7ROlXWAleR0oKnLWU6gg yoByfjbgEcqMjdGzSbPrpfu+ppTW0gPcg959z/1L+H5k7+TBvhCAreJQF4JdELmD yiYBxUnQ3SrXndQD2ylmkePApPKyQ581Hm9SbbI/71ILBdpD+2SY+pF4YB+LTOfN KG2RigdCQVHcfPaaDhPqTQKBgQDSHTK6MkuXz6tCSTf0GvDhD44nh9yP8fYgOGjx EmFeVNIb8RWazdQ5aQOxgm8Hmi9kl+Xdq+Vps4c+1l+Iu3Qr9F0/4Tzikh+vexUl 2n15pUV6zclGWwvvqfUKmAAZN++3JMHZ2WBSxFKrnIB/I9vfnKmZwt3mGZGCJkF+ FyXKBwKBgEhVBr+ug19T9FuigMcntR97zIWgq/ZzQwK3dLXObfG0lwDagAx9WxFX qgfFoXJMyzbH9GuVW8eJ0KX1fs+PNOTzhbNuk9DkmWAp7JXSSTHWye8PhqexQdY8 AaeWJm5Mz31UQmtuNbkiCM2WGQFxKQToEKwI9kVZGQw/ZvalKuqs -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAydFlSJPeBoqGtQGDuV0E+hl706h1y/c5sms+ENYTzN/vgx/v w5SJx2vGLRwfnfZyJahTXIyrOGes4BU3kON7qll5ab5L6MvBxi+ZA7X8PMmgzakk Quoz/VicbD5Sdk7/puvYhx+s8CvB4myTxuq8nAhH4xbvtJvBbsPx/k1jxfGCShYb L1qqL05XqDh8902NuS2VUjpitSL9J1I3xAsZtNZ7k2ndvc9IA7xLfQFxagEDe6o3 9MuIto0V/p3sdoKOMc5MPFvLGb/5KpSrDGd9G9FmrJastsUCyKk5jWWkvRC5AuVN g5gajWZu+1mudfk/X++CjZU7M/DaZWUisBu/iQIDAQABAoIBABatO34TlliiD1eO kWJePjlLbH9YgA7wayhd9jn+Ufh854zSZXaSjcYteRW3waI2TzZlwuMk77a9aH5/ x8/1DZ/TIKo17pHcdjwafE0fUVWzuqitMxS9O+UBREdB2/Js9zsmaDyrnZsZcZZL aLHqzZFTOV+eA8Zlk28qn3n5cGbs5F4EVmRBYx3JZj5j4EUbSZHlsKTxjz+WOSOr KJHzMmgL1PG2QlwBkeDIYatJT3D+P0rfv58ebPs1H3Y8VPshxI/qT6/9voXovLVt rSB80bhQMjgKTGSxb1suzNROgfe3sGde3iIos0ajDWXBVnhXys26DtH7W8usxsc4 C0q1p6ECgYEA2ojYacu2kLFPks9CkevTCcwlLVqx1YX9EqSOhaP5gI3ILw9FPZp+ ky5b7DFCeA6cwm49jMYKhK9t93OTCTb0rZLLgAn8lfA3qq9pghTm2d8Fb7Ctf3rL fGe+A9Howc7PfsTi2rXZJA8YtcK0E/wcbDTJ2O7CNrJIcpRJWmGqzuECgYEA7Gri OPd/OBd83MOTj1z/toX17ooMlp4ajaVkckOJU8EqmybKHB62IYQlHSNOoBJbuPsR SDwohv5NA+1ih5fqmr4sPwRgczK6LRw+iyYHFw8RNJmSGmWLtiHICEdXdADEA+qk 3f1kUTQVXFZ2TrSNkfjGLA4AxVRy3aRUX7+PzakCgYAscG2JvgpHDDeBRDJmWA1X TbM1sN6+6/tVoi71UC35jVtq7nEHIPaiWWgJ9M5ueZI5G4/ao58Z8k6rZk49Lna9 IT/Orrk1iF7Zj8gl0rhLD8YcO1JcvQzKJJKIVlQ9rR+WyNTU4uvgIE3HEGvsMHVb L7ToL01BMCn5Wtw7y+afIQKBgQCl+AMIavdssVB+yu30Xx1FTZXw+AkOU7/gYJO7 g54Mpjb65KhORWEm9lX3tqmjxj+OBPOE+naZDj2S3DunZQbVy1vUgYYUWTBKKuHd Xbzsey9g9c6TqWYDXoPHDA5g6YiyFy/Wh+S8/Qth33D+n9Ii/7pfgxUXcsmQv6Rb 82dIwQKBgQC+OmH251RolgQQaJpQedxkmyEIwQndO1FL43vSoX4+gybH78R4Yovp L16VlktI0U0XgGm2Un+CqRl+Dfdlo9a31rQ+VDmhG+SjX9BHua8UrSGmoDDsiiVh aEdvBtqlrTXCh15HGk+ewGjLowWHiVAM1rPVxK+/eYaW9ylSbW3owg== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBwWe2D+i4n+FvBFOI9NziPMcAUuSoGCwX57p8/3CdKe5A1OGOdgO2a is/HYcPsDB+gBwYFK4EEACKhZANiAASGDryIEGRbC5WfEDtvktinQ1d+MCyzNh04 4lJ3v9DaezzLhkBgDXpft3Ls+eNu3hohoIOoMxRIfrk7wpcGEve8kHmMbIJsz0+i qWk8HMV68b42LnsREh57edWfhtl1VfA= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDD1o9ClSqp8bNxCFdcV0uN/3/BE+Ms8kV3XjjOCBRnD1KzWfY8VPtG7 axoNFsdhEn+gBwYFK4EEACKhZANiAAT3cVG/2plDOfxNB5WDb8EDQjxQ/0t2B1Pe KJBmQNigNoSGfyvZbfZsLZlY4TQ4bb3CviGmtMIHl/4mTol9jdkDXjI1bzD6ACXd lr3Gmx7l+KlobsuY2jDcFjay3rCmjco= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA1zzMceJ2WoTVr+5VEhDT9QhM8PIPCEwBurusH+jrNT7q7ynn 2WpEjZD234GgaN//wy360FOC0UXgZt/dHM0pPqu6eoywPnZlIvJ2n0tSjbnn0qi9 KEiCgNDQSTi2vhIZ/C+VynKZ/D5aw6ZDj0LruBi03ZCLAWpImvJLtOmneDNz7Vi5 ju+/TfL6WCHY28sxZHlHpwBKkQnyxVetKxTqmpXfvfTE25dJ+sxcpjx1wbvZplY/ ZuJMTuEkC6bVKLJjdxy1pU7SeoyqVmhWJTsCVywDLvmFd/cCqJrdVefYVhh3za3g 3cNwhAggYhb4tu5jENL+5wjhqubgYlCIm+Hv+wIDAQABAoIBABTTq767WJNythCj gbTRTwkvR+6qpXy6ihJNFZ8y1QuebnI8/lPB3idKpzDCZMixIBj9Sn89DXP9jHS3 5bfjPEH1sQIpueYZY7jpeEP6sF7JZd6y+Da9KW+YhQcIx1oF+2C1JAvmYfMP/41d +byTj6aNMXcdBO5an/LqThwP3eYZ+t3ph5pO9KaAC5drjRi3XBuuN2gLoybfHaWP 3iUmo35PAP3/Q5oqusa1mGNOK1Pb7swzysGbyEILV3Yn6dt2I3vRl+7yaLKZ/SVT umddj6aubJuVHY2YbtuIkLmTGHFx7vSSqTiGBDmNiXaBvtcF4Mpze/dD9W0gKUcT MrysOWECgYEA/8GPgsXKzsyHRJ5L+ff9pJqFkPr4IIBHMnlDIuevxxxsn7sUBJaz WG+3JxvAcKgOCjzfvQHWM8TGEhX3dGIHiMrSGsKG4XgWZZWP8nJ8l7hQlVKcncfg GMcq8QgmKyQ7LSJruCNbjk6OgGWNzuC/BbO/GhXdIPNczfUzFPlr3xsCgYEA13FY kE99bhM5xQwfM0U8OokQ4GxT7dB7hPKU4oysbKnr1i8SVyF+W3QturjoD+sFpZWP +955w30vAx/Lg8LFnv06aCkcNLU/rgCxpWUdmx01hWVJGTt2yreT4aQDHS0/RXDh UnuAVlPXmnRDB0pHB0iZemocpaVo/lVHM2mp4KECgYEAqHA4Le5KJWx6YezHKPf0 qqXB9bv0EqOpQEqwtppUIBROTdyN0H/X2hSpUS5rzUZBCOkSiY5eHnYn5N1mvdWa FLNPMKSQ5ImMZpbb2Nchy2JuYAmqcBelNWxmkZvGV39jIdSbkQhoUg7WtyUrAebu p7i70Vg47Gya4GHupI+oRaUCgYBVK/08SACpZLZg/TLUfRmbdpaScqEXkmVSoOhV TBHaf665pTBV++rNUvfFKtarfFlmJeOfSkvPCg1s6cP2WijweuH9TctV1xXOv317 iqcSrJB9JRaqAAUtjTfMa5/DiCDMXhzmE+cfudOxvybEmgvMiFoMuCiNIACLE8Gr RKmhIQKBgQCC021Y0MfloznfXcEArdmMhZC86dDkPcIFuXTa+kOWabYA3r2+WigM voC8hNvC0C/+ennqcQ+eidBJnbrIY5DjXhLoIUDojGJ3q+t/Z+KFdnnKLI4Dr9xZ EgNU0Mxi8tXOoIaJUdhSHcjxXM5oM3VpQW28N2XD+AjxPMVrkqChTA== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIM818BCUCU1ENlyzzhAF7gugI4zw0rZSvdVJlPTaZdEDoAoGCCqGSM49 AwEHoUQDQgAEAey5ah/hYuh8O2qHgKTjPHKWVFgAnn6OQJk/NpQ0Wbh9FvXl16U6 MmTvmw9qSTZfZfHQ7mPU0bJMOVd+fVS+lA== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBTUp3IGirQIItyBOLnw6QUs/B0IxUOE2mdX9ypNYJhneua11+obksd fp8z834A6qigBwYFK4EEACKhZANiAARwaDMTEQpCjSAny3Vv0Xtt5lb3GQqWkAMR eJ2pzp4OvtDgUgseP0GnIFtPSu5c/fKX/b308vhbs0YKHg8ovu/N+QPU9/HNJLKi POhvTi+xXcQ30eRmMTimt4DCG7rchVs= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEINY4slpXQU+jrgFl/UbRdydgZqi8dzir+yFTE4pFNMDGoAoGCCqGSM49 AwEHoUQDQgAErRsrZVxbM3cqgY3ySnKAPHlGmDvb04oPXLJPgEJ1Bi2uyYTS6OZx /G9BNs7Zl1JBDmW1YLSquVhz4eht67oqJw== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAuFLXn7cdSir71JJYPCha13lu4WscPVQtK4iSCljLwvPGyllM V9D9RGpjTdkzVE05Bd0Q5CH36soL8nrAZj+fl7g01eEyhXU+8RIe4JacP+B1rHNg XNiypebG2YHLZQTRkrIsDMcCqAHMapDUqeZ7476PXCqJH4SUrweMnuSdfI7zdp5w mN1cUvJfjjeAW5RMBi+/bmunFHUNjxt/dVFu0InIQo2D8HROOVRmu3PO4Fa2BNYy seJ999dI0SOmpZMqqR73QgNOUe7JwrxHTQ2jI5orR1kbwIvoRSpwaxWEQuy+0Qzt yDfTBAuSasfRiYmi/hv8txJGOPS4BnLpWNmmpQIDAQABAoIBACiOzfROUgsSVzRI eVLPXGHCThQawe16uq+0DtJpBHjitBCtQn+mNDxcHnqwOrunfE8efAt+r/MBP0y9 Ft3IzSCQv0t6kGfOSym3X4TyjvH9PVdTUdZMNk8L7yBID42sWELrooazOZHnR2gB c1HpLcSIlznkACUnwqGayyXhTwfretQ8ydGJ/GJSOxsN8YNTJJCV8yrvs1494M1/ 5Waul5S7URQSA+GZ6QVq4lDGvx6Mj5WZWOtrMyg/DoGdOLPGhcMPZ7HbCvL4ZaZQ cUpZBxEfxdzKUmFQ7GgE5bF6m0W4GsSaswmBaN53p5Uro9aOT7f9yfT/Eoyo6WBt BYZiDjcCgYEA40JGPG+iJ14HG1ojqAZM+1SGdwj/+48TWHVxatrmhz6eDH1lWBtV 4upiMJC4F0+oV/4l+AufBsgpSs+Y3UGU+ymZ3KJvXECup7J1+wNIpDn62Vi26X4Y aUI8l2oXg2oE8pvqRHGvbnxR9TN2pE662O5N5kmZ4KlENsTkYsKpJQ8CgYEAz6J/ K2T2iqI8E74uqLUPOCEceWv29/ANVn2N356Up18GtjcyhZQGKsWvec0Wc7NyOnKA JWdkE1jcloqYp5cCdpYpCPR5nPq5rq1rCzhW/CiDcKJNrHKXLwB92is6nWIShze1 yGj/D8FZaZPAHKd+rR6p6vSenfc7TV5PCOaQAQsCgYEAo0xYE81Tg145VRosTOxa HK7cAGTjK+vfRsz9Nn8c70m7X9YrIGhkCq3I6ITVA0sl+DSTK+2N0924bh1GBpa9 asy11qiRxIRl+/JsfHYbmIZhDhSFOrp06A3EZDjDtJZV/86xQ4U9PfLvIXZdZit8 b6ytJTD19U0ryv8n7R9bU1kCgYBa1E3nMMJ9AN1hEZgdqx7eQfXP0//0lClxhXkT sq56zSIFgf3y2z8bZOEPWj0RHhXBJaeTNThdEklk/XosDe5A7A1FYpT0q+WgWTJz dRDwO9TL5+QspPAn2oIzdyesA2PxjNhTtEKnpMA1ZDHtFwRePQS9yIa+uZFSlgfi 7+Fc4wKBgHVpt+rAM8jmeZPEAKJk524W463yh0IlThJwSp2v6I370OAoSgq3kLxm 82wjjs7yatN0X1CvWcq5/+e27eXK/RtIS5Z7W3K4/hMZrZbwNw/MHBeroSyjnag/ Y/mp9O62N2lojQ9DPrlcHTPQae8exGGGXLjsDje+O//cStNLIPzY -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEA23cGdZe36LwI80nxHwJ5AgQ4jc1syKDSTELNQOqRxRXvMf9h B6KKd1nE1oSN9ZCYhZyMJrkxhTYS31oKnTSSp0H80o5FsOTaMhS7H4g7g/f1djAo fQ71GCeGN4E+H6CxGBi57vYLbetnqadicLmBIHhOgTy71E0tdGiuURHw76hEQgFD sAEWYZi8eol+P+14GC/gtRf+dypxNn4oV0IUDizQO7gYo4v826Cwppws6eJ0lrJj Jm06c538ghW5cEGTlxLCCd4sBN2k3M5bkvCvvY9/z+Yi1p55YIoyd1ofL0+i31WI E4Gxq6L8vt7IHPNN7x09ninlAxJQb83zdx8HmwIDAQABAoIBABd1VQpBFzDi1ygT hBkBnX1Nhd1ZEw2CQd2nRE5HOcvxvhlqMpfA1CvRZhyx8C9Kmer/jUGJs7/emaIo ezr2MXjRsQcGmxoUlDgchtXmLMpnOORoXbjkXjwLOX75qxzGreH6qUvgHopMynip bM3KHlch/5jegjXoBqRLQ4VkirbrDZAiac9HQpee4D2c1+U9KfHHgFaEkAvqxkwT OMiqNhItLT8rum9MvYhGO89p+9ZwYgof+yuI9fffr+pXZHxNTSSEgQNCVJ27TLxF 3caLY2xYNMo/tjfSI/ZeAnSPoR1uwWoywAywUiO3PXYsJXGDR/IDH95JVENxOrVp 7XbfZhkCgYEA/ag5He/WvAJpx++J4KNEFByTmsipl3x+3HJ/cA5N5jJqilUfLJwJ UlHj5NIEs+0QvzJpC5k7yb5chdJXk6PGxrf8YoBOm8FZ+MtMFW8HbNw6FJeH+hmE VjkWF7RY7/rJLjX2cofGytWPJOoM65sCJ3cPWs3/ZaAV5dL+TQdo2PkCgYEA3X30 PxlydDBQ+iQJmqxX2mnP7jdWvlPHOzmZt1U29JwL975seVbyEN45gdWu8Xcc/B3+ EvHf2TsxCdsnBK6veyu1rOqtZPsLLiCg4++4Pn+gmRjot/k18YIY1D2T5dojIioI RqOyIAh267oVZCq+q/YTQywE9WKHirF/FIWLvjMCgYEA4+NBxWqXknvci1rilWY5 IJR37ATBkK6xzt4zLfo79EdxPmyxQEPDgCjARPCGdxvSAuSISXpWo66Zs0TBl4v5 ZskfP2Oku/xfF82Vwl/o3N2SdLOa35ATO9+3wH4vtRKrsg+bJVRkvhBVtUVtbDLs IYauzdbq0GOdqMgB3jR89wkCgYEAmveOFTvbrVlEvs7J/XMJgKI5veTwBvgc094o I3I2ogwv/2U3BeqEMLMarzFvVjhNikP9yQl74cQdOlUfxpHl6xqY4OPM73MJzns7 tl65nNi054jbAiUVzeSFNLHksZPesv+PjMTpUqo5chJe9xdFEpF3xq6cxYbraGlp jVUmgasCgYEAhtm5ju+/ixJ12bZgjmMB2+0lZ4lqL1f46IbvIlHb0jGyhqj4UHBu zP88uhUyYVZG+3yUrofSZ7pnP2uOsSkIo+NelWI0ZXqQ698WlTtGdKSkfl1N3g+p 98/g16lKK+ph/6NQDq2OlcOu3W4ZHL5oPxaepxthnrnZ6RiTBlKTWoU= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIPrHpW4y+WHJ2H01f784RzUAueaEk/X9Omis0xJN5GKFoAoGCCqGSM49 AwEHoUQDQgAEG2qhRL5kxcgEQaEyOSD5MFy36tMmuK4s78iqlRoFObe94tFvWy8g TOxujQDBJx+/8NB33Jry/FDFOsocN3j+4g== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA3DZ7ZwKuFf8BeAu4XwlPl5DHTHUg874vf334zLMoce5BF9Zz D84iXVHsr+l/5xRa48XN1aMZXbMyn2RjipbOqKbeZWeD6kAxnZpXYkZUFAmLYpzd zsd/a2f4RVwzhz8b+bDcH73j4lH2IPA+DscJKP+kBaz+qT6z34wQSbJ3odIsRl5F RruF+tqgcadsmy919Ro71QxFXKF0f0gt7k6w7ga8SjCeYnGeAc5PKtN4L8ydA704 ldb/tvnDwClzcMtbxpLGi5BIKITFcbq9EQlBRuydjzLXUsVgm1M5c3IiK26ddeJ2 x9M5fTe9dwb9JzMohV55a75Lcwu88EothJI+7QIDAQABAoIBAGINul3wUg7GSOOo qFRc431UAIIZZ25Q4Xpt36JaJeixE3fnS72eZivSZkcf/A0rQZtJQPFfGdTgjWpu u2oC44syHjXd5V2hbtZD2qQON7LiWxeyTIudxi1PkrtjpigTIERKjYFuvrFQGH2r K57N3lTMm77RPGWk31frWHdQSbeZ+AExQPm1xpjmDYFBrqw59mkoU4uQr4swidxD BrrQXgUoYoKD6zziKah2yYJh7VH+E43vnzbw3w1gIPC7qK8Yw9+IHuRgaHQ6X6+I mwVESOB5PJIBffDiImAFIc4iy8cYp2K09W0BBBU9qmPaTPn+Xbbzaf1uibz/4u5R mlMuOksCgYEA9Ug3FyBNx1FJ9ogw5UVFWwJ4c/C09nxCdpeXlaplBgG4cK0m2zuL IHG6vlwMsB/O7EjesAUQAHtZ7xYY1CQCng8vRh4jwOqC1EAeDgND5pzI1beQEVA5 7Fe5XUsDmXL6QjI3XAtDPXHJWd0UP9cUMbTFuS8PcubPH4Gtir9OiUcCgYEA5dXV /xSir2n2OvPPCW9turgcmLoBppP6UyoCBdwCHluxg07DtvEuhKnFp9xf7KZOsUc0 TXoB0EHmTISVMP1wqMO8fO+ZYC9fM27ICbUZLiU3ESYsNy26RG3+tBha3dEExKW7 FA1XgDmK6YwAmhIOPLeX6eU9tR+WBblrrJotUCsCgYBdP4YKGbLYCpRW0DHeh7Y1 Qjwuv5zcdCMEWN88+9mKLg9DbuBtyjY7MGFxSydbscwF0jIuss4BkOOA3GK2C7af BmDPhFfNWJpCPNnwM9eVjZdggHeZzWkn67XBvOnyZV602choCrQWYPLOYhj3qDm6 J+JfY3+5C/xEGxWxwMcHswKBgQCGw+gC9fqemKdE0gkoIypYPfSmqQqmvkYd1Zfy D5s+ac2gjOK9tpXsPBAl6VZl0O57jKDifRPrJXkAjQ1d+H3Ct2MibuukNqK/6clp x8LICBJN//AVOr7puQWMXGuLfTAqjnMvwtL34MXPQ8Rmkwe+Gnj9MOoJ9kdle9/j CVRgmQKBgEo8tJ1mrDQdyiVvMsr+lI2YgKQq3Picok/5KReWQ+zBvoSqtkhLYi4b /VkD4l8LuWxQgmh4uLR2Lvm+jwi6USy3+/+SvfmhrC44w6zMaE99HQaLa+uH/jq+ Ea44oHD6lFsJV2XRU3RM3q5slLEFa4BQO221aWAuUQt4WdbTabZo -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEINFXWUP/tyCFysLqaNx+qXRTyZXo1HMUvdbT5t+T7CZfoAoGCCqGSM49 AwEHoUQDQgAEi2TOsK86QrEs+I47ZLYmf1ZitiDunhuIDiwnyZh+dmy2G2YXTHHL /zFqpjllkz8tr+OCCOx0hj05ASSufyXiOw== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAvBUqpX9UpNrJvcgBPXn8jlpn2LT0iQNmXG5bAylcRGRQ7Abe zAYhqZsFlsw3Pmcuz3WCyCrNUEGWadNt9hKPPoFNZh9Noxp9/iP8TIaCAE13VH1A KJ7yrmg2iIKZ5LlIVYETItUsp5zQKFbU+qWP+vjfhgvIPKc/lRIvxrUmDZA/zBdu tilvj+j+1TAjdJZMDDKJ9GRZG+EI8T+8hnaueXc+CXmSHrzTZLGBvbGPtU2XoCH6 reKP/n9Hww+4xE0r+IwFTwDuhDUcV19mmQ2dVUHcansaRm/VxhFv7gat5zBJsh2B AxurtmfyICdEarfzs56ZfrJdDPjTrVR8kd37GwIDAQABAoIBADtPZ2/h69TCo6yj lfSHc8OGMcouIhDU0CIksLGaCN0OT1BmyDpJUrMzzfrkMiWNDz9fnJq3mKAO1rpP cJUQ/DfnOXuTMn3VHFcYjPaq0fL7er5bcvB8UyX5efzpRlNQtEU2W0z4MUk305Js 82OI8xLfCUmxjHbH/O5q2kMMm8/ZmjDvz6ppkZg+M9SakBMtky8DORH1PpDIm2KS M4sBu/akQug4AHmIK45U//wLzuqlsy01pr4Cg1o0fyVpc6A44j2ETSJFh1EMRycf 34CuGZbsQ6x84BqN3MxUDWSUuoH7VTHduCBRjR9JJMCUrH3elcnH7xey+viPLYPX iqwSVjUCgYEAwYzmGUcbRo8RF7dTPj1vREMEG7CkI+4qRQDSTXaG7W0ScKI4Qz4O CEjiMe2u4Zu6TKOK6IKiNicQbjfoZZ80hClMrfT1Ge6RduIjz4pxkotdEXFcI4n8 yiDwhZ/L7MF0Kd3viW5pwO1yv7BNymSZjZx+4lOlpvH+cYIwckMeFE0CgYEA+MSj 08r3JQkYg3U2Zy3N8YM50EOC9X1MrembdQFqUdAb0pTY6aFoPbPbE1/1XUL40Hp6 JcBI5lpeF3ykC3huWcC8PUzx2nYYFV8MByErpMFJU37YqL2zb5t7FcoIJtTPsA6D DgtnziXXA+B5jjVTTXQvpzfOvHDhpTObUpXjoQcCgYAKLJLn30ICyoB2g69/hRE1 QGSV5AoszVcxe2KSqdlb37DpdM2KU1e/fb1OLJVVzK7VWn9xy3QlbpZBhPTVarID BHzAZDECJPVGj4qcXUWtE2BYC2Jxh85e/a5HB+hbUKv/i2gNDF3Iw3KVuvnL2s/r jr9ovEbn6K6cXuCXEQoivQKBgQCG+fLGDL9SOgAx+5wcGa8/Vms9BBR/bI/5YOI3 dyAf6eHevWKASVKNABRjC9LO2nK0c2/pIc6sJeYdqkQ78Qk266t3O1OSrDbfCaY2 DBppF3LYud+Glv9QFDWRmgAYSamypf0X1rppEQD8GoT50xcy1FKy0UX72uejwj+J bMiIawKBgHpkuLnWdNhmQbGXSacpNscxPEV0G6Kh7juZu5Afc7QIBqmyELeruGwm KmF85BS4QlV6RhSYLSxAS74lG2ni3zv7yfD3wa5TBS2cP8a7b+RTGWSU6CBoeZLa 1xhTOmAOqS0dNg4WgEQ0sxL3f37XfQ3Nohi3mtG5d5o1FuhS7mxL -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAuwg+FhHL+h6QAFPLwjzd8ZhvQ+y4P/Cp2KgEvAklVmslMJkQ 11FX5LfrhDWFkZe+Hf4oDZjvU9eOFO3/DNwVrqXWr4U3CfU6onq6lKbM/GJiY8+e KfN5FoFJMTSLauGf3ZFc4q3KrAsQrRvV76na/mtV1syfCLgXGOKho+9lgbgSzT6g kZBBHMsKHIO2Hugbbxd2hkx6Qu/u5ndJMIc6XKCYpzDceSfhvJH63ifdErNKMSI8 gD+MQy2KbrEGXJahWUiUtRK0aUWfSe2BucS8Asv0TpyU+RH0FJfaGpC1NF1itVxf cy5750EqXEnokRg4cAy7XQqtVLJg764JwVyVmwIDAQABAoIBAFM71FGDAwkg/8m9 gPDEoKrrQRzz5H1ED3olL9I0qcKfNTI+9DE2eIyHUw8HuJT1+DwlxtJiTKO9ynPD BJ3G9fk+wV9kQ/2w/jKftpf/8TqiWBH+K++UdD9RMu7saN0cYsY6ciFI4WiWFgpL 2HXrW9OcldtdPasmLdU7yl6H498JdiCrwD00vGoNOIE1T2k0e1mkxBg88aYELOeH TyVuKZyrttYeDCyBvQBZDQfkHpqpy+6hwXW8Jo0HmRNvibEfyGe998vcu0iMbicm zi75IkHtWsNmt5jJXa3BefAwSX6PI+E67+cE+Wiv1b4/iDjCFbuCxYFfUi9+1mf4 DvmiwjUCgYEA7WQEGYGakVrR/xO4CvcK9Fqg+UXkMD1Yf2lBzMZsYfjJiaFcF7l8 8rhaksftXSr2vOi1Fth8g2vJWwb2U+rq/Vt7eo2HqKTZklYiEZxiCyYGm6SY6USk r00XJ0L+Rl3ynUMpUGjqHQ2BtRA1+JyHzEcywhdQUkjw0jUtcCpYLj8CgYEAybGg X6balKH6SN0YFHsq6Xg30fwvGJL9X6X4QK54VYBgkjwQWz0FFlSCEsrDP6bHkRoM f08ImRov0DaFizdKpQblUaWzqrvn8XKEBpSdv4rOP9tPFSPYIoznHxkM1WCqcrlG 3S8vsP0r9RjFYQdigewrEIAxJTX1REDQ3KKVeaUCgYBGkJlrX4wrsvyDP0BQ+hhm hF4fWvg2orWgwhAOJ9ll0gdOgwmV/8w1djluMkHLlQ7dHqtdzCJPCoZDKbGlRkpt 33i3+EQgDEikaDgeVgcK21XRhD7z8DSn61l7kT12e0y4FJO+VEFrO22X/eadLSJs xak/6qA0pXv4cFg+ZEfsDwKBgF1zNGg9Kddl+U4bSpXqv2YvMkXTv4p2SHkxsAVg ERckhRocREPR0PKYsy+7zJ1IS/z6AcJWvxgY3wBs0pE/TBGMUWH0EXvQ1lWzhmJ6 J2DhElDZ7xlPY0wW1ts8wwp2YGMJX0EKJOGvW9eS45jiUAz8fLOHgb3I81vtYBhq KDGVAoGAEgDhUFSxSHJO+02GI+C14PiupGxq6ToDcsh3ep5R8XnqgX3TziARrfZX fpplLRKnz+QdSu4OJosTdpcdQd35Q8q153pJ4dy8PeWC/imHizjdGXx60Yaclzmy 0I8yGnq4dbtH3NAcSiOTDF9bosousC7umROJbgC1AlUFbFjDIok= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIJ+esbyuqFJtyMQUlpxc9IHk70AM5CN2lU9Kcoh6+5F6oAoGCCqGSM49 AwEHoUQDQgAE9dp2yqNoACf2ZJperYhR7t+ohu1ysiieFvsddIZa6VO7lKaHBbgO jfMvnaPgbR/pGmj/BPl417MxX74ext5LuA== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAq04f4B6GzQmOzrdY+1AmIfTTV51IQcSZvcE9JW/3OVPyYOTr 4gmC3qf0APfNRgw5Ke775CZfLvrA+Nv8rwaKqwxM/LI69QNzeN4Xm1tHIXztn9M7 cSC0upKMIaXUBm7sdErEgR4Yo9JdnLUOBBLD/pQKc7zpcQVuH8G9F+68lTl77z0U t4gyVPGhjhWjYTG2ShwnVTHyJP+PsYcqFJqbmOHzkGdGZBQqUlm/QH94OUy1ZjIy HS3a7y9j7LH8MmJDpxeTyu6UkWzQN0UBTR15tMVK8RzWNW0LT3QXrYgrgPdBM4m/ kBCupAibed3GtOVJ57wvCpwQsaqj6zVQfNFqiQIDAQABAoIBACNDAlw1pG1dx4vl IVef7K2GMh/BlC9XiwcMmSvU45ilH0oTLTv61bnD7D3rxFEkMHshgq+4t1SaELFZ RSb5C3/AmTNV871eD72kR8s2q4po5xgEWOLFRvZ1tosxkZaebCVXA6KJYayNH7Bj c4Zin34OlqUy0IGvirbWQDiGL8LuezBQQuwoQY15CF7f+qYXN+3ac4IvEGD1JOjI a3ciypxaGI3odW6U9RpVvVAUq6vXrNOK25kFRm0r5AEvm+EqTa8hFG6z6SVZMtpI EyfHH+nyIcHuCqrCRGhOCOjQ+EvzZPn4tA6uR3ksn9DhQpWs8Z3i3iCuVovKfNoF 3a8C1lUCgYEA3I+ekI7s/Az5VtMjGH9qTyXC2o4Ce+qZU5nHOdmIdFZ2nKg+ByGh QTkLKto83YxAaQfq1zuHT0iNzBQutjqdnRrqEu562MjFWeplIt5winGz3WCpb0io eX5fBagmnVx0QuPNLLvpn6QcJI9VuwfyB+Lc4fuQ/ado6Vp4lPjUhIUCgYEAxtR0 arGHcGlslERAUC0iDw5AtXIxOIGPuZnheZZqO873UCuK0swypuvyO06yOsvNekOT N2DfYHwX/91qhZFUIZuYlTGrd1R9zfQyqRixEWF1VhbFfkeKDBFbfR5hYKg0xeCd hb3kLCJvhu14q6GSu3VtjMM0IrUlUDEDyWUEfzUCgYBWQL/0rkAVDYnQn38BDIrp as35pEFqbkMJw4B6qgxH2qxF9TFUnp0uIX2xg2j8BuYFbPg0tW3j3m69WUMvNlr+ 3lCdmK9n6ZPr5tMoQK7oJTD+qNd50oM4B+hnEOwQ69/3bJiHHvFs4cOztG4FV0Ua OmjA4x0/ZOGNKDkxoOGS9QKBgQCzzr/1GNT16LEDqHFM0HQDj40fScSPaEOUwj9w 2ID702A+hRIHLhkEcU3fKnztxQ7uaZwBsb5wn+iIQDEr11BxECg9i+yXfrZCgXsr BqRipnMZRoCVgZaq8St+i/HeGl+XL1jk8OQesYmQSMMe24A5vKk0afeFB7JVwe29 vHgDnQKBgH/EYR4plQqdg+t/xOemTYOrvfP3O94aWWgOa2pPvdo0Pq0kIVq5Spit VWh0T6Vq2yp5Zv48pP2prMAUlvxmyqSR4ZmzkMLnO/2SKHcZvk27uDWOwsaHRxCF KuhDZ8QJKWD1ZVU1J2MIiNkG/eQg+KEc41+gnHGfvRviQgT+iHtP -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAx07VtHILcVKPqa2cxvNRL9DTU1X56vDZYWww8B3LfDbr6Kda z+JPrbQeRWd2Vk7o0WVSKVcXRXFeC+bLwqeTTDNjZTdIrr3LzEkExNEn3pbrWtTG 70adBseY0PSuNKDI8Il9fNgb1ppRtz6sIf7P5vOijwMplqFXb2rTcI9rrPQ7+Txc PUTyT/D9wGvANk09LWcrJTMU8VQaOSgUmdZwxpkfbUAsGOW5mpmPfEdZRNDB3V8X znwbda+B/uXKMLLWY2ANn5XN8fubO6SiwaBAZdFYtVDYIVCCt9mxj0Rfchn6ehe9 2PJQO9EC7+yLydFcSCqIsPTt7t4Vmwcb/5EytwIDAQABAoIBAClLuVXRB3Psgl3K 3iAOzDSXFSJAPy8hxji8XQtzcPUEwC6NdnB6WL4KAveob0mEwhKY5sQwCl9WFQFs Sa3EYO25/A89vC6QnshuHLHXEGa7aHqCedGcFO8RriUlfW7kHZ5RLpIOiP4XLXVF ZA8LJ/KXaogtRJG0TlSEktjQrqO//Tk30Uul0gAwDddM5B+MpOAZ1z21HBZvtvCU eBZ4jABjFg+vscUtTlVUvP+mXstMwOGfMUcPvWxkng/IwNn/ioChOl/YievV+Swt HXd/poIvTL/AZ+Mk1ywVUwJ/+/K4jZVxg7AnEtOlTBYaAF7QtbgVrG+mIbmx13Uk 8/uPLNkCgYEA9bq/TE5u1I8N+ODBTqJkOTB3a/WriVL/1WFFaB+jKuEacT8ljLMb nPJ4ONdqsryhfXTuvfkNH5O2fijGJy0amd6AZ/xi4+dfZqRI9ZmajwupDYLH8G8q 0rvVGP8w+5G/CpFCFjtIGy4RHI5AaeVmJ1cVwMJDQ/fPCnkJUY7AAVUCgYEAz6Nj F6wwrA2UC3cm3PRAaI2F04RvZiXiJZR/lyzMWPoBPs2QcWsflIdYGWJrEuc14Y52 l9EAuXsv9jxwupWjgDc0sPKbm3m19T5ZcI1o1rPOKReNwcqt/G7vLXbZ3L8IfSJ7 7rv8Al0/tP+7NKKfHe0wrE6kqtq7PZn/4Ytb09sCgYAXtEYT5FUIqCwe3/+FyGCG q8g5X9+GRb1sJg/99V9WGZTla8QBiJ2XTESQpychytSBN7B4HvhHHYazMNe8m7s/ MJmObmhTt9QaIKrxFjo0pllOdlk3NmIZJglued+NxQd6y3xmjJ1uEcmQyaApFvn9 vYbZq2O1wMf2KKrfdTfMaQKBgQC5VJyeBJNs/rGlijSmA1159Nf+c7b69dVktacs yE+dG4kBBXpnwbXuXN/FyJLJzJXLPd2cpHCBHfMxVcFIyUemqZ/eUK2TmI9Q1tX+ IDnzaYoaI2vkDYQ+TMYvTmYnIlvxVVZJQIEvmwvCAoCV+pELpSpMoeVYmuOFmG9M YZcVAQKBgQCyIF+oJLie69J9PjJ5xbbCWr1hJxb1FPoir/XYWTELWyUMW0+BSF4r jdk1uTvNpgYKkPMtEakUQBwq4EJYQDAqBf6sWNnUXJVs9Ei83XSXoyoPkaJXRxUT WJrIxKDVnWFV//8j7zKrWuLIYfWf9+uOXHPyjeX/oX0hK8DFVznwoA== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCL7xURY0wC3P6BVOJgx8+2SHnJNEWJe1SZ1ybtSGaPANCIfYINNEyd 0rmn4CFGIP+gBwYFK4EEACKhZANiAAQUdv1laNlQf12/wgW0k12TZMZahivDVhnS MjyGktg9MI9+tRwjfu1yIQnM9230b8NK7M/nPGUafQ0cbNwZP9y/2SqmVmOIUVa6 xsXGufR6AGeYe7TZINXqVwYseqNjZD4= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAmymc5xeBlOyLUnPZ4y2tNkbC/KunmY/sYNElEnSN35qmNIuz Jn0qgHhkTna2WA6my6f/nYue3+7H9Q3oiiDTMInxKNF5P+c0oepB9rDtq/TNlpSV McaFL2EgEKIClBAxRqhvBFwUa6DsCE8xOyIPufkD5vRhIUT5TsZo5EWXbe0nbomF JiDoaZOYw46iRALX3f1UhMwql2mOSFuK5rzJJMq0UiiXiqqNYuPybeON6q2W0Dbq FCxsrXei4HxPA7dNtuDzr6caHwehrdDefYjlwq24+kpFBIadAmafwjqStzd7n4x8 MoAXhA+5RVK71gGV6ggXk6f//qjOOY+7NwK9UQIDAQABAoH/MDgvoz8IY7q8uMpl mIfjPbEE3dmh/DmH1MnH1DRubIoUOl25rJn0ZT1ToA7Eat4ixoBCw5qRhSOXHhXD M3i7FVWhoWF326QhAQkzWSz7dI2afed9xNfKgkKUL4Nktgsqzvbh2CVPWq0s1Gg+ Gp12T4tnOdA4cug8fmr5XzJ8a6epbxk0wb2vzPk+kH8sbYl8JoeNY8pAutQkkzEU emvcwmlyCurXI5nE66MY/ALpcsSy+JgTFozkLknEILuaqyW9PdmJ3feediyUAOkj cv5XD4Tv7WWvAaWlFZHS6bOLoU13z9qqOXyrOPqEiuAWMaEPtR7qmyH+2sZEDew4 Mv5tAoGBAMZeBbjlABux+eqOKfkyB7q3n69wl/scdAzzaqAaTA2aGfIhe2lX9uxz nkGLftL8FrW4FsWbVusfiDgLAcVOlgD6YMEgTKgHvHHub2Slut5HohrgCDCpfVQN Tk/lWTtfc+D01sWYOI56qDq2CkNxfj842UU1ttAEkg3o5XGB2LjlAoGBAMg+Jkde Eq/e36VsP3Jss21cxjByNnL9c0j1jvTlMDWLqhjImgCodujVdcalhgvQ3RKSI5Wv MkT42CKkWU3QqWynDSBZn01A3MmRYKXLvx0GyoaypVmpnNEH9YVyHe7ABtyyNm/9 ukuoVZSFeoyXLe03X26wtCfpQT851+D8Esf9AoGAaV/87jFIE25B8mW+yk/XZ0qw G0RWl+CPjWmpVI9joz4fVk6O/nDqDMWGZg8yOeYMMlAuWJ6iV5iShiLit+t9J9vZ lf4QeppRcrxUlESttfKbnGcyMpd2qjW/ShXthuq35eJqTOEF+joSL84QOa+Kfw81 69wS1wH2jEkRyXBOrjkCgYEAxzKkS7y2pEP3gY1ktISUHcf71HfZ2JxvEfZN5ysT wUCVzp/IK71qxQaMajeBWMHHGlFMmvw06s4N3LBXsoRP9qlb8oGVanmK6e34EhbU oKB/2m1e9go32O2s/bpfMoHOkb+rTc8/g0ILGHuMRM2jv2alRez82vM8mBQHwGWi nVUCgYEAm7sP+LFJaQHHzHCb2FCMKB4tBHQJhSbyrjNHIZ+xdR8DRYCrQGlGdLkc IVKQlYbJygRI0eL/tnYJL7w3wfF/AeVoXIHs4YNe2HOwfmHKrq7CbUl5J7N6/cLe dbhCzNGer7tuwJ+DBbe4Fe9/EqiaSOYTMKD3Hw0hg3wRkACwprY= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAjRZ/chSVgV5mSlTXdMfJTw0cs2mvDlV12yBvqAJ1C5vArwDK 43kSAFs2F3NVFDCmf5d61heRkVxsiIGe1Uqfkhy7havpaKF8HSAz5cpigU1wfnhk VKQOAbLbq6rOReuGtB1tQ4YOnUH97XfCrQ3xG1YoeD8686vphLXJc3lpuXctIE88 TUMf4wKamuCNkx0RDfzuWF7D1QLiZrkd6e0cnyze9oVQ9S/JX0jv1bnneuyE7p2f ydvjKgauPUj9xrex7I25cEkwNxKdX6I6jnVeOwD9H9b9ChX0dqF2i1D/BPqOtj+8 8dWHBMW9jMXaQublFF67t/jKnR3wBL5YF1u3lQIDAQABAoIBABr63Oc/aXGiUDRR shv6YpQz4TOr95ZpoE6FjuSVh7VvFPNCVwoV6mvYBWmJnBDu1sAagxpyylr+TiDy jKGkEgy6Yt/Ghq2EB/x33oTIZXrtiKAevKz07FrFzb0vvh9f0VQbNnxNo/jNmFXz a251dpBwMu//w3G6g77lln73DlExYOcWSvEnNPPhDxl/lbRtI76qvdijmGf8jBfY lW/bQ/rjOlVAmN1M2U8M7sl//YkTq53unnYRk65GeDxaCEUTUF98MFLn6qayXHst KDbMH/jOZiro3K3qbBD9QDZYGWXMM9P2kFiRpa3eXBxGA2K3FtmEtynlQUOxImQn hym3QdECgYEAvKprdyAFKEWlgCDkEi9DXPGEjaF9mGx5dNOgF5uqd2SnqfHkMBe0 0zXV/UFCrKqI2kYvnQNhXlnuGoSOC/6MYyeZ29WntnG/dK3IktpQBswI5OFVZGLq fq8U0iGzdNM3Y14DFAw+7FYdZDwpPDS2ygtENpBtiUsspg0/wlGXKV0CgYEAv3EY ezEPEKAsEbEYICnPgc3BZ1XKsFhJxrWi0ZMtMLh/umqSPBtEbgTMWWPNn+KIzxjv rDZoLjnvUyAN4An5Ae1v+7tUTTzktQbVXiCA64UFyABD0Df77/G+rxqmHTqv18j8 QfaIVLrkfG+rGMklQfJThyI0OR6ps4Gxuj1hC5kCgYEAtJZ/lSAuL5UyzIkvJgTd evqnQZZhjOPQAjaLF+3l5rCPGEm0fSBD8qOmd+resj3uDth9vNI+gjycf/9/pBV8 NXDzggxpo2YPt9Scl4yma0sj/EmAHj3cbXSS/mxJxTpj2xZi5e6u0DPBoG9BnSJs EMtl+MCYSIGPdEZcUFke0vUCgYBSzh1Ts72baFyHbn1L9CnAMHo2MyKPsjB/FbOO SMWkLDl7LXuBKh4oJEUraQLY5Eheo5+Pcp0PWZnN77Bwtn+RON1WGgn1uqAGOSVz KEX7GTeN8adjWcPMXlknLjSpsee7Q0DxWyxO0ePgewCboO1Pn/xHGCFUj5HBhhiU wNXICQKBgB0pRA+l8l35TWH4rKjl7posDukJwdQrjA97zT9ODKj0oDRX0iVqaTlg da/fMDVfKIvGualIUu0BpXV2TzMJnhQYzkKxNKlLlQWLFaD+xfVPtCrMoSFOep5s +JYgSuRWEoTMolN/wx9bq5di8eWmnAKrO3am6lanQ6V6UEezKMJ0 -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDAbUL0V/O9bH5I0HrbbS9iFPStN24+9Z2NMTkYGwzCljTSQIV8vTjpp i4mrSU2M9gqgBwYFK4EEACKhZANiAAQ5Xko4wMLkJRwbaw1KANwmFcZ7zy1fz+/g IcdoYlLxYwzBb3deruCf7gpKRoPEVR6cu7HYgV6hr8xxg5etSaZsNUHBq6ax0edr gPxWIpzBioUypUSUds6eZPfXjlT9HLo= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDDQF+qMIYjhCbkH08yg8alQB/X3R5D4J/OCr5qlqvoxLvMsq0jQEnaK joodA5PQU+CgBwYFK4EEACKhZANiAASq+ZYuMD17WYmKXJvzrpOhbdj2Wfr8ns5c 5Z0KqlhZywTgemOjZ3lQmbp2T5dqnv0un/WJov3n8DB+CRqWxKUsDBsaKYh8DOTz FTyKPQqaZNHhtALBS9mgsFTcBxqL+Es= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDA40ZoltlQ+Znr52cenOqsC0rqckc0pS6J4Qj489hXj9msWr52Ktetd qErDkaHKRkOgBwYFK4EEACKhZANiAASBWH0zdLaKQslHsRQZchIdipoSrZ1IRHZ/ s4wokIVzQNrAu+qzMq/ST9xe0EfZWfu/tbDjGOUINNrISEgTEAon/tuFtoiOBMWA z0S1Es0OjAbrcu/L70ZtIFHqmVZxqF4= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAk9JFw+ZnvSgMEsrbMFTHeCGzFVOFlto5XvEY9nkgUc5gWmqh orUiWgQcia2D0usOg3e6UcQr5SRMB7a+Ac+227GYT8YNwWK8BkggbbHiqk8HRNXN LeNx5kFhuu2QdRgP4iumHW9wMLTiBS3AaRaeI0BjXi08HuyH1KJnaxfyLLJ7TZ35 gJURZ0RzmRQwTS/Zmxa9K8wITF21z6ieAxdlUjzM2Cobskgx5z6iNOfuGhQKuOGz btS8YscVUuxOwFC3jtNAvqNcVdXYU0mMBr7xfWF83p9+D92DdLntTkLHwT5eKAhf rZEE56mymyWYEGk8uUQjnz3lBdVrhi+XL2uRXQIDAQABAoIBAES2w6BvW7zFv2sC 6kX6uuiAfc9Fjn1TvsR//ZMhNiFg9lBBbhaE7c17SMrFIliq1InPX4h/0MnJCCCz 1XphFIbmdL9seNty6qVe5NgpDw0NBHt+iUyyBDG9JdFvei28PDHuCV94fGXfx4sR u/X9wg/v7+EI1QApAnEY90sEjBozPps1Y0uUTA6Cj0SPt6nDPja132KLKpBiMn4o 4+1qY5o8DRbWEQ7TF0ZpQzdyUfWJPCXZOpPOIiS/5WRZXY1qp1gWn+GBSdj8GPTd 9jzRFx1nc92FkwE1W72ZrrFQXVNzaAVFJ/kAYwVNzOyy2BLZhnVkNfn1xqNEuMBu hPi5X98CgYEAwWzHZldYzsayjgV+nN96H2iL0w9YJvv48r85Hujot4q/37aj87DX eJzfL94niB8mNqJMYBrYbnQxd8N5Aqe4wsAaOmE8h5Jv80q/zDesM11ZPPlexIO2 XLk3w8p9t1+AwAm5zXLjpdBzaxzd2xs0QMIyQzJWYLQjVjg59Yt7eOMCgYEAw6Sp qe4M+4qyAeLNNSHHdVVaLeAc5cAiHfaL0rHpmISfTAVmvvQh8EOu/Y/M/LfqdzPW AXfAiodSMw04IYgH/GGIEnf2fVnECVXoQVaI3PgdyOf1jKE/BWWv3WX62P9pocJ7 wNhChjboAn1/GKTO7KwE64U6xV9PXtGfhSsQIL8CgYEAmkNTVH/dSCyYQ0SGkj55 e4s52P6n44+aIJ/5wnknARsbpCRZ5gToFD2oktiu1pVhOLmACDXg31a0DTxMyp1R caEcSes7BzT3LCY1iX3tTJnqjgKkXj5dtt3RZ8mbMiBs4rve/8fdX2U8Z/UBy7mK lwtKYuVGlqGUfTMipn6z3tkCgYEAnsvmUmE/9GOs/E7klP2n8ZqnqZjAm9MJXhyh fRCfNAZhbcjsjo2FhojJXlH75hw5mStfxq02gLo5g+p05vKM2NMpKSRp03Cq55Dt BSuBxyk0s79i1RSEHJNe3WtK4hrd2EgNPofJ5zplsq++G3iZ5Avzql7nRxCHUcT/ n41Gd+0CgYBrkzfigB0ySJ2qrqD7EIvSWJaVE8ttuab5ZlN1NV/cgmDUU49ZvY1h elwQ37K35OUln+nss1jHfKkHJ5STDpwDKXBTBHk2S5c1mAZGtWmsgkzOqVnJ7Sdl N+pmHNawidXjgZDL7gdaFXrqkx1JmD76x7ndpLiJXqOWzL3Jz7/w5Q== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA2BvqYdM9HpqVeS2hT04m0t7Q/+wWCxS2gFzEZt4RToE53RB2 xOv50p6NJHMtZpEWEQuzVh802E10pZEuXKy3AoULiU1XMaDQZzXQo2z6ZYrexghM NHm/z66qSsYWCgyoeZaQIdQL8ddxI4BIg2VUCtY/X+rVFIk7yuQPajBuqArjcux3 ZnvTCpn468qQIOtLCGixM2ao0HiNtDFaWKLjxbRDhG9LMOfp0GoB1PT3wZA8/jt5 ChB1k6wr68bVJjYpXUAUwsWhbweIWaFDbnUCidsdClAGrZbGTTo0nFHrdcZHP1mY u+jl1VzTr305CVx0eAeiKGb1zud18wzUv+8RrwIDAQABAoIBABH7FJ/KEHT06LM5 6YjXLaIa7unJmLXtpcJStaFXdbosmgYQ13OgAgZqXGpSzk1mjJ74ycBEfW7ygYjr EPVIsOYb8Bn0SOkfV70BUcLfOjWWUzMdP/XtHAP+z5AZdij6Ok76M4jVA0oTzQfm pbc6XZPp6pZOTCdWxGunrmP9SUpgN5tYA+btV7sbydTNQ/Sum1yO1i0W6hybMO6B VcRht4p+fwDBJ2ZcnbNLXOxMR8rzi6hLQwqCulbZzD0xDW1YtusFJC3tmsHdtP4F T49SnrC+O9BLQae1dmsa+lOXxT9B/bJDulkrm2Vb8QQqC4W86yu2Swaulpbjebcl Xz238XUCgYEA/6PAsxiHNCEO7LSuhJurgsDTwYxaI5jaQc4VAz3klksaS92OYFr6 Lc5CrvXRzufKBh08+jhdo9Z8x9Ry0QhB1GWWZtcpHXRx0Y2HS58UYtve/Pyax1up fe2Q1PPLwmNNnEAUzMwq9BEXKFRisfkS1fN9vitGnR2gcIcjOmns0f0CgYEA2Gnl 84l3ZR8aJ/UUk3QKLGV+eeUEH3TTDHZ6qWrwcmLGBz4VR9jMsBh7dckd8a8DHdbx dZrBs3guQI9MUaAMd2iR9BK6sccvqdY0W1twRcHM7pGo+wsjqoPzE9d3szsuB88u i7dgBYyPbDyvrD+1OHxRDHuPWanxUgb6VlvWXBsCgYEAso7eejoXtgGhOxS5EUbq dVnajsZJ77NEP9KCOtFwaMnshDEs0YC6XmRDj5GECtE7+ylQ/jWAsn+OiMWLrRXn ZUPP2eVPgpNjLMt+RQPIaYTKLEsEkVsk+CCHmTbwi8Zw30KjRKkXF4MYecL3bPhc f7Sjj8EKgZPADNlXceWq1MECgYA+pFiVZ+MReDFAA6bTD7GqLC6x5eKNoGk+oETd KUE0OvcLPaM3Sr/k8RE7hN2QCZKjXoZB/mu3IUByG4iB0AwLvE8TESDNONTJGmHJ V+xlpLVHEQ6SrCTExLDlu2bAkI7AX+4fLxMyR/9z2xUWjNJN6V4keNeDordhgPeR a7/epQKBgQCKJbu6Sgip1IoUalXZtTPTafr5pghjYfR5c5H/un8YFteG7XMcmeWv DMrkhMrqQw7gg7/sUzYMT+9RI0Pv4ZlaWCXVYgA0fsdmSxrov+mOywuOzHxIsK9E bFpHjFSPsky5KyrBvShxpy011Lx4Dxsjx9YRfr4bWS07FKGfzMDwOw== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIJ1lnTxlnNRv+596XGY96okjhTIVvFw2BotHTM/mQZxmoAoGCCqGSM49 AwEHoUQDQgAEw7Od2fTxkhcQ92g5APmHO1+j7q4CSIMDgjEG9ZFjw3/q7l1aPAWy x8rzQeYJVq6ifLDVQq4YtFspwRhuUqVUDw== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIHCoVbQDyY5dkoFSo1/8O6/prE6XKV1joxu5M0rB/Qr2oAoGCCqGSM49 AwEHoUQDQgAEsVy3nn2yIwrH9DHt4KVlAkVGNk8mz8jHu3ATZuVOptu5fnxD4tQI aDksZs2duqTDyxQvm0IpM9rMfRFgzxY+/g== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIE5Wwg7Qki4C/EZKbq/xgMciDS9nHgi9vMDxdZsYk2SMoAoGCCqGSM49 AwEHoUQDQgAEG78yHQ9lTiyo+6f0FEyjFBU1LteDD7Q2rBW08vHBZtADyXqrZQKM l6GWXvQfKeOJpBmZbHYR9R4a7FPryIYmMQ== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDDcQ+9kRH1b25H5SlCBkS5TehkilqAPy1EeiyYwJj10shWTyPr/ysCy RBYtVnUG1oagBwYFK4EEACKhZANiAARUpAXsygJiTpJ+LG7V3RVV6I9h3hum+w0T ZZHXzZlR2TWSHS8SVbs4Hnaz05fObPfclcfaJb2ZjkTCOuEJbDiMYxZwwDjCIaCx FXeD+roOJ+DqEQnj2iIYZ8G8UsBsbSY= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDC1KFKzr13lnXisA5I5mxiIIVznN38/hF8G0RpU3Hvwd71LKxuqpzDW ypquQ6p4oWCgBwYFK4EEACKhZANiAAQmztKUW2JHf84WDckXGlIIc5Y9SsK1WeW3 S6rz9lYR8mwlh2/amAmrA7YXYGll/hvbDBypxSasOJY8rZ4TbSax/ZytmeTERk89 jaeBe9vI3AhEHj4973UvKftOtv81gys= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDDyObCtswKYxhq7gXkccqoqIpvLrMtkmEHzbVZcXwOUV8c0UR47L1xn QNY+ft/MkvagBwYFK4EEACKhZANiAARzBGojMnVe65Lb/euOehi3Vynx2skt9/b9 BqUe5iEGIGgZMWozZ43116bpkJeuUcPX3k46q3L1l+3UBFkmn4sr89S6E1BJOZJ1 qGj3a60zAQfrVNBWt9bwTyR1Vbewhtg= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBMjfabM9p/beEUikn0s2lUj2Ziw54ssKz0VVIKaJgIV0nTmN0oU1yi qs0IXmrsC76gBwYFK4EEACKhZANiAAQmyZMpqjFh3G1q5EfctwxqrU4eElZsKRXf 2VoeiRHBkMcoRaO8GHQdZDdmG83ucDUJTlz6Vyo/mqibhykSXhfXWAzBPs8GSRaL GmEEntOCSjW+o1QYZfNYZBAgx9qnxCg= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIKDYa3dDQcCZ9w33hiQ4tOdk41IX0OUKxkawCO14ATVooAoGCCqGSM49 AwEHoUQDQgAEBUBflJbDnENe1EUWWxRJ7bNESsGV7mnfwAQD3hzMpyVfBhzPtFz5 a5NrFIw97pX4xDa9o7c/X7iEG58oLIV3dg== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIEds+7AXj6IcXT841EOEDTCDvrBSrlvxor25pyFCBqRtoAoGCCqGSM49 AwEHoUQDQgAE/r+82bBzflk8c6+nioK4KtTOEym2llaOUvNjMKHQ9jnkAiH+XJgo VM7ksjAsctSmhdhUvvH5ajJ0fZcDjI75/w== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAkIwzqh52Xbntgtuk1F4NuCJ3w1KHkscSITz4vPwyWIIwE7ol tTfM26Xcj/5zC4ZS6nFQqvbuqiHtlBS8ilYi/wXZvYo47WZdg0/QF+1bgCWl1sei axRcdTY8/1pf2VV9E0gp0W7rDJwx4pTKPAI/qa8HoUeujgTX+pIwFm6V1WWCfc5E lDLEXBjkCclRi6+1Lf2Tf+HOSw9eoXLBNsYgbFm1jfj1yHRxvzoCtZdiabiNpClG OJRYWLv38cWng0s/xX+rHqz6kMK2rknH7Wf1ra+guZ87fjn/NdgyLRrO79MODooO OvAzJrDhpCIPNfD4YN3mXg6WWpuPJtJzGsSTewIDAQABAoIBAD1JHFycBs6NVrzd OIEMEaAJCSMo2i9qtO6fxcyG1ye8pvquOW+gpXxZUe9BUHDJ9lzNR4j9IkrDENJw ilHS3Iqo5d1dfe51sN9MVyvV6K4oCCzMvrnMy7iskucnX60reFjVB1nzP7g8f1AU irwvreNZQRBp7oHrXtEv6zCPmXp8qJFp2HzPSGIikXt23zDinlEclGGjK9exAAT7 PVypKpEG203KHVoQJCBbWtv7N9iD5JlZmRXeIYGHw5EGyjf5DWCXFM1zGURx0bnB QTgElQPA70G6+Ip0YJdGhiqkoF2xilgAJVndyrG+m+0UlkyxW8iwcGgBtKgxLfde 6YoZOeUCgYEAzEIXEinXIAaeCVbTrJlfFGb0Zn/K7axrmLz1xMASvBq9lF5Fr2QJ WRZ7uof173zi0xRWieqFuPGSOUUYkjMoEc2xau3cFCpAQ7I2xbmNdopX4ue/n+eB E6mAp+gHvts/4x6LcG/6w1jg2hniK4tj1NTKbsZhuuMA4ke6NEEgW9cCgYEAtSn0 Gw8NuGVtoLdQZ+OP2eMtoKQqRD8z3mGSe1fIA2iwff5DdXOAEXa3XsB6R+9D0weS xi+wUFkyt63Y9VreQffkwTch7DRMHi6TefYSflxuplfinjJejF7sxRuYJ8Ag3pxy FL0POBQBJcaU27n+4lO/6aDSo4RWlZgV91HKsP0CgYB3Jp56s/mP7wxFembkKluy dRRgrm9cEdZ6NNBRQ5IqNJcec5fG5l4ln93xQ9qNJ5bRdu28ahgzeIfJ7KqWrkzT hd/W9oYJJVRzqQQWd1U0LyNxc6ruxocfRyOLzuilxxQPkwPYRRpM1g3kbHDo4dkM kEy+Le9Yq48acKkITm1n5QKBgQClQsgzht/1PlFrMs5edvBayypsSFVmPGGMk2WU rtb+hRm7VZ8kHWDOjYVpIhxqUpGEiHwT3pzwLu5dMHGiIGpvszsyJqEDYBGv1r0h nJ/yNU+a3sETns8xLca/aBS87j8N05kd4floJpeFZkmUx28D93IyJUsBb0+s1zfy jOJh4QKBgHUKsW/ljyP3vwGHGu4nFdYQTdd4MVheYAqS86J42KzfDe+l89kewpLQ tYd62n1sGtmPo0aSHmDZcoHze01oIQIk3wZgU3mJo7ofUZwmSQzEqhSCYk0NcoTC pWoGAU3GucFPcGaHrqVCTUlXdQTQ3PX509wnC/xCnW3Ku5TB9tKJ -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDAHwZOym53+dzTtOT+0FMDlAo0gWC6o+nepG7pLWASy+Jl1SqDG/2zd 0vz7Gd8BEC+gBwYFK4EEACKhZANiAAQSEDp0QAkV1oeojJ5S/gTVQ/bphGdNqYN6 lKiNHiJrBElSytaBoog+TTPNrcDDUevNxrOAhlcHACpUpkaGLSHHSOOHUoof5HxH NRVvSlw8r/03IAt0fDWaqKEagDysZTM= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA7LerMHnxeLndYKCzyOw2mrBmv5gRVUxWfMTKYW9mXaykGelG hKj5gpXjzrIg9Bz6aLdu7s0oyEiGUxVgAfvwbh6rNPVFaX8JLpgvpJaNXiB9LFbq LyZKsdhhSQxWcIAdg5eiQiLQe4igmCsLblQ+VXDAYwD/sq306yIqX1hkMoQ+nbnA IX0v9+BV6BvHFz0fvNfn/tNYQWQbRBtqKhRrG6hkBaFMj7c8JigrONfkHnZkFnEp u7LpBcbhHWgH+CNB/aUItbRd574onF4GxYlOC3Nol20CwaCDDTV8K3HoMU0HvdkM w96X5UWxBvL77HPa8OQG1QIJnnI91LE6nnUctwIDAQABAoIBAHTmRTOk3ONmQlWg Nvjf8h1VRQCUC+dIUiO+mUUh2vcitU2Yfnsv6TwcYopmPFDhaKZDBBUJGv1Bl5g7 I5UHQpZXLexyvasaEcJBZLHOqZSUzcwSRgcvzU5jkbOd1KgtFKYyQW6Qu81tzQUo qLX9A2V1T4T07tFiB+QAlNVOFPk+k1jcWu6LAgHqKa2TaP2Tt0UU3vGGjlA8r8xL tyApyWEqEv4PdseGGOvnF7Ozd5G6lV3K/sirjYizDYy8im2OSm3Af8zK+EtanlPJ WtmnH0O61S3rq7LvJW8oolcLj1qY41c5obhCje2YLBPG0hEp++RldDcfX0FpyC8U wQ3LP+kCgYEA/pemzr9Zqkh0N7ErjTF5oBGhmrf2JjpaPkuSWp9zMeh85eyuqUnz oY8nBZB1rIbRKGiJ/J5Q3eaoeVUCK6wMgmjkYiaXdBZzIDTYixWCT2ee8DG+JEeI 7j1/UujPo4S0MlzXNofAmoVcfECkErDsegordVDidV/9kw/Yj7skx5kCgYEA7ga3 kL60cWy1eUWA9wgBBevTtW1jpCtEEF6YxDVlt4eAbYdzEG/pt9k86NcUE7ox1rnp Tq3bzo2uxFypDcjlwCd5T5FNRheGmtVOMiEhl6Z3lsj4J0FN4DrYwE1pcb9ehrLA lKKKUHmS52Bs8jnpLRSag4zyN31+Tve7MrhoeM8CgYEAxWvLyh7P5R/yHw2f/AkV i26gpl1o3xP4zr3Da8qhhV4HHDSA7H2QEwPy+nmfBn40yuTlu6L4ilpG4m9tE3iC 6s1z7DiI0VhnRd403QV82x47PX8VNwTRxgyiIyStftt08GjV6k8yp6Aqq59km6ne dnRUZtCmCua4t8Vd5Xb1emECgYBvUo7p0HdeEQSy6jHN1117IneKg9W1Q1L7APMb 2Qlwk5waHd5P0reRd7WIBIdsTonermaSmLeT3CnfxqJ+QvZJL20KLJ/iZ0BaC+cd hOdMINwPloCRA3bjp0IWdl4Zh/Iyt0lgesCLsMBnHG73vuPyZI97dSEXmMbJMg3I Q/0AewKBgAKRX+TGOH+uM3yDnwQ2yzAmcjXEbF1hvOLdsQWkBgkGrp0H4VX2ZiEb 0TMPlpOYaX4e1BiGT9o5ZY1gY2r2Hh4mbqjCREH571csqHHzk5Kz1AxMO518dYHC lT8GPHcfDmv39JnlV+uZo3O5OZcolvEgJWfUL+WT6casKSAvhYgc -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAwWQkWb4SwxwaiC4t7B2cjXUgZLG4tFvAUzBwHU2+snqmpuh+ w9XD6NjcXqR3Epbq/ZGCSXNyvNoAF58GeV0n82yVRdKuyprasAHb7ZkT43B1mNgk LBp44zlKnpNFB7FiJ9h7+lYllf0cijua12tSFQ80L+534z77iCSCVqC5zjLIKdtt NRMvgiQI1396Vo3S08rvaMT7RgCswcB7L1HGq6LXLXvI5E79r7GmtBEni57mCSvn HJc8adyMSwgBkXf319VEM9WE1qzPcmG3YOwG/qoXpMJak7Afrnj0qnKxI2W8oAaF 6JSB0RSz+R8dwDzZWHfKBiYfcwED16JAJtoKewIDAQABAoIBACKAx919BGLsBi3K s2W/aLlyLqvYa2A+SGNvLmmD/+Re7pGzxD4TSuclnbeC9z2JUHaZ+dk58DwSVtbg B+sqPCD5e+5fptC97Qte4YqT95Dp9QkmctmthWjgxVfiZXv4YU9Dl+bzbLREWs2s 0bTiUFwygLiWfqw8BetlvB1RgqTvaZEvDRetCBeokLPYU/6fhdjV+2BIpp1bE1ys THCDv7dGjOvh6a2y6gi1LokkNyw9tHiJ4UfHqHPKcWHTZCnvh4smsb4vOTe9rnXO tJNu8Ixby34F8U9X6o7CZwwSYRweNDNS8ZJ797YF813p7Ou8CPlzWMhot9x2sMYD gNSyblkCgYEA+RFU7aIOENP6tmn3xXydung3HBHYrvPxUIBbJtlTaJX4/Qb5l9tJ 9517kNR5gVHLOPRhRkSgjpOTmF1XCHMCfrvznpEdblivo86WmCwlC5FlLrUcIVT3 Bh7V03vFxa5Sv8k5038xg38bIfoQZvV6+NL4/KkswPUohaXTl6Zfg3MCgYEAxsYZ 9jyiDYhpfIssprg1jkMU1WF/V83TIpdWs5drvF9J10tv4vJNW44Yi2rQL0ZR/bZ+ 5kzN5Uvvy49w43VSEgEcP+fzKTk7W2cTo30rslkKzjUDGmwjUpTFt007Ddet+JGt B2sMv0lYT0azTwJZHmrMjhJm3i/CHJiNL70yatkCgYAxtZvVsbpM8YHgVlX1PGHe jY+yMn2krVtETdnjbwyOmyAOoA3AmSuyF+RJi56UiNaej2e6toe07Q9QIZD1Rr8A vFJrG1tcYqbrcpfr1yOto18ma08p9+M1fYH/q3xVb+1kCa1Y4NHpBL1NkrMjWWsp rjGze7BK8qMbyXTpl3MIsQKBgFv5zIeQ9NdYOJ9lcsrOUBG83oYB8D+7wKev6XF+ bl6ipPNXN7WGst7beGYCjcRiQIwqhruf7GHeal4ByJWncstb8itr86sujVW083Rh 9fc3lnVmOEJgqVOL/ZTcyqeUFi7/kVXuZd6ZXKCKMWwsxPn7Jx3STAEhjitXN3VQ kWS5AoGBANTbqRwUY18mxJYqs/ZynA+9gItfOvGxAraNHIGsrAiwHaCVJpb0iN1S HLSaKP1wS+DsPN8vB6/7C3JVkqv67qhfbnUXImPYXL2nFsR7X8i22eRE7AA8RK/E czEAlt5QDvko2g6KyAHCuL3aYbBV028hCFShXluHdx20wB1lKZYN -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAsUbp5FShDri2+3W4JAZnw4V1XoMLyB00l9NVUOeB/f8lVKUj lapEpWcKd1njNCxZWLv8xq9cNuD44ycpBW7IT0C2JSe4C14eNhbCyf+03mI7+SSP bsLXedXnChHpdjccTASx1z3c6KPqxFKONh5cwUSWpf/akNNxlrXgzX9PG8vQsyq2 j0pQ2j6N3oGS3gJRdo+RKnDiV99agwHreoTEQWB9K0jmnomCzV8HzI8bATtsgn34 N6to2C5jWtvRHGtBguA+9jGoFvLMPoPDA07nGegtvSFKrQ+Qw4gbq4jz4rxCMEhp MbbAQiMiuj0Ox6/bRfWr6puKZEVj0skeL9gu8QIDAQABAoIBAAEfabLkvbb6zZip /iSaQ5URKg7GbGNtmrjqB949wEzA88Lr7DdrlXvPrn9v56WCF2T3Hp3aglslnkxM yFcTHi+KtLlnaj3slp5K+bWIsH2AQhCtBHLtrUQsA60EZoX1Y0qjwZJgDBKPTf9F Msaq3aid4m9cMrPpAIBO5N5tGgdOYGHByt+laeu76P7X3k+wM1na5PGvyC7fT6GM 7Qn86Lgp66mISggv+4nqGfh8g6c0luLPfI8SeDsfySHqB1EwJnW9JGCd4OSXQLBX 2gNGfkwlhh7hpW8w2de+79J7EUgkozo68LSLQYfUl/4H9y0XYnvecKvVRTYkXTWP 38ErGdECgYEAxi6EqWhzwoffxCJfXPC5Shbp7bGubcEx46r41or2gaJyFqtqDmub JKqPnYX2b6tLV34mZXV+p4hMlCtrxYvxHXmsgjQjqBBDkDHOnP86FYEqWQO0/EhO Ggr/srbXiK4+/FTitueJWJuJZndkllrQoqguT4y1hILsVUtD7gIa4wkCgYEA5P8Z EH1KGgbbDbv4iyH7oLxamzAGCzTzSHwZH/fCnxhKoDLc7HG2MUwEn2uFTvVx9ATC i0o4x9qWrghjSgEfqI+J1OZpN8W1QsZ19FENpl2b1cUCJXoyx15W5rWKLthj4Q/g G6XTbjJ5ZsIds3K5jOYdIcm4GyboB1PfyO6jXqkCgYB+LM2/gcX5u0InAG9Qn96I IjCLac2RCSh3N7o39b9d54vVjQr35WCgJotLEihFDnzoVmOhwv2BMlD3IPH7ks5P ItFHEGUHMluhqWRPJlvXpyXMCIUo/evjvs7u/GQbHDzzsCOrqZwTMut2tlrvMyCT /pmFgiNrG2PWJhY4qVRu6QKBgQCPNT1eg4wI9MqfLzODB1COt9xN+t18urN+XCV2 SYKL7iwVPVnOAFr5P1oQvLQUqgiGm0dyxor16SycT6CQUl2TE5kV7LZWa60swmJX 1SydIyNmr5rlByOkbMoZ4+Qz4Z2szTnQ8IZl/ujPK4xZgeCqTepgC/+38z/d/UUR KrQ+aQKBgALqzdGGpQfnBHZjuVd/8trkuVc3M4N1onAkIFuRkm+ZqIasDOIBZMeY zrThT9pal1/7bY2DSltqJIq/oY6p0/cEZhaKEVfeNvuN6rAQuNoFRp2PNttzH6ke 03+wJnDppNwDksLnEY9xoMe3cRJZaLSDwsGwb5a6v33rhTLVfC4i -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEA3/5QXL4W/zhdPKVv2qUvPt2RU5ttM2pjHk8nLAQ9w6tp9Xmp Eerf9rfFF+xPaGWsdxhNfJNEXPnO6y2Y19p+6qdkHxal68exngXjTW1vnObga1bE PcP3tg0G4ThWPXh+oFvmArY4bKPngZq5knQlx8SFRbPVyikQqvLxlHucX4PaHDru SowlBvxNeJaKuY0Y+1vmiEHijZ/B7Xhd256WNljfIiyzd5YrpbdUlNytnwe1gqUg NoYOk4+DejFXSpG1sOtngr7Fi4c8soFkahNsCsDSzkrBnuhBuIP5sdhxUzoubZbY jb5EM950ZCwTaaKtj0HDhy71YNLqzwoQ83W6KQIDAQABAoH/XPbv444BfWunRsRi 6Bwmv7C14D1h1TUSbkHrwBkCiXNbRsZ3pTgWPA+JfaRWUL3iFou/nTSB6xTDDFig VvYYNsvCgiSkOHdpAGzxKfGBoV0xR1t7lyb+aFB/ynnXUSvxYhzCGd4HDQ/5xZCx 9FbAV2j45zT8RitE/65VFYs4G2uW9XNR6olcn4Qto1kgmH1bdCILOGf9t35RDaRu ZWhuxo595Cv9l+FF8ydpNLGLsqi93iE59dEm8kU9XMbOtpSOcbasohM5ttzes1OQ XmXPNVuFMBKdLwwtlv59hokbsca6Y/iMS8ZPSY8YLzQDutN0vXvZ+PcNyZ6uadM1 rdz1AoGBAPgFlKB3iq9we4XkF7B+MW7mZLQGVc1b4ArbySKq71vhbhJlfuh7YpOT xtWJxeTiYu7gcEMUvfAxbjo2474HRAF63n0EidVRKXS1zU9oP/IgQ6t40ErGB5fy yLtXKmnE7R5wifKfA+JI9/qaal4jymVgWQmvfSP1vFPzYeZQkjYVAoGBAOcy3Qx9 NwBYwRuJlujS3n0Kv8ly+9ZA2FTF4xIjN8WipXy/5him+rEtOIL+ykgYT2MuQxfy F1vKhgh9sS4RlCHHxY1/aa8UNJ5Ft6lRbdoJaLmYt8eL/U58bo03FBt7Tdn6KVtZ xZKPDoQLTF9MQKTJQadGXgcFeXM9OQl/LKzFAoGBAIzP3koclIh2fCrQDQMPIlGs TJBI6H3nI5QGpHMiSTMJEc0wApVLN/RBeinSRqBkR3cHxbTQGeY8qjAy6aoBxgJx F9Ayu2543eh9L0teDLAS0ViRBvDs7XK/TGfQXSwfueAGVMuCrFnUw7Vr5ef8ufRE d0igcZPw+DNRgsuYAurhAoGBAKYxU+DUaaMgKcAnyYkXe8Oa5H5k308GUfuuPCof ksnIvvjL4RU7gt21yfewO6xTfU2oRaaC6fObw3l7ENAy5q7ZsdKjEk8+UQysxPc7 h6HCPbucYg9ZO/8dR0LPou6WVkIop235PCK8Hw0gKggfAiDyYvVhidm2P7Vs/wEq n+yZAoGADiwOebg7cn7PCV4NUF7w0sg4435FH77p6xy0J5KX8pxeOwtk2c7m6cyx NJ/g2fWtuhgzPLwfOPyHWZCpCL9jhM8g6Y4sljpbHwWI5YuvcrnqZDp9UYTASzJP PAKKxtBWjN70ESEqIVdivc0gGCm/ksoY2f9rmuB8nQ2ix5JWDIc= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEA5SsjBDdfFBWEETjjyfyrgH0f48r/FLzagqzChnGj05NYiQMe ccASgFvvazu+opYs2yR6KWDDr45Mhh47Qf9qtRLqTUmLErukAx+/ODz9d6nlry7O PL/RppVJucYsMSd2iq9MTHIwoMcrCc6jvsUo3xGaHmL8FdR/Biqj3zPc/699GDRy VEbwnZmvkWtiKeuwsSJv/diec9ha3Wl/Ee9aTQuzNS34Z4kYYVbUldiL7N2QIU08 wxBEaLiqz1yMFR9DS3Hnicun4pmL6bhFazb7c8Po9Y9wamKIo+zC6X14pRvjS/Jj ZujAJA0oA6rfSIdxZjbRRiOc+oHFpno3Dro5/QIDAQABAoIBAB3pyAvUWHZMKq1+ 0gj7EL3YV1HKHQqtbg5Rk6Ct87b5zDwyKoapjiCwH2vNZCBf3uIJ/GIrTc+8ENQO 3ShLuTeCjQ/ikiMzWADKY5DpMSKuDBuWTfhTB4Api3KS4hDWeFw47oop+5v48263 yNrtbFzVtNrTi9kjoCMDbNmFMQs0syzqof5WV1QUPH1Kx0x9Mh5KUihba265V0xz b0w8w2tzH6mqlluKc/i5BFGCU2bBjHIxLxT8MhCR2eI/6KPJDB9Q+qWY53ucnezD E5tBFwiYUQmDEdPOzSPJX4JbEEihJlQhp6QfcD4ktObv7CBEE8d1RJ7+URTIaqLT LkV3ROECgYEA7Jg57jgmtCoxkFJ952QuZkXpFBBpSJC9ddL3CRDgpHqN1pgy8ptq 4T8yZ66JRTAGTLFhN14ILJGwVFzDUgQrRVD99BGL3AK3IT118CpDUaX1NVlhJNr5 Ln7PnSJIv1U6vAZWkvNjmrI4xFE7i5IFAwsT04wP7M0I9CrnG6WAqy0CgYEA9/b7 8LJIjl//eDbayciNd1KoJVZphW9UO1aGwhXS+US/N16QGN8Flgml/OArBiAfASEj c0q/nIXchxqbp3Q9vzaOSW3g3pPijN3gQVfaptXzpBlEce2/qNyxb5VNdA7aUQ4J eBZMh9446KNQCaft983TZrLaCLHwPVAgvixDzBECgYEA60xxwMNDasbTyC7iXHA7 3ScGKRgxPSQF6NpJKVEJuUrRKWzwrmt3HlEVthvVFWQvv7Jhdwkjo/+4mA4xiq3u wt9L0aJpsANbUcmoM5Q0o00j00zy2g6U53Li0+m24+LFqR28mCVLGBzLbCNFzwcH yQEJVMjlRaKclwjcE5jDoHkCgYEAt3k8ucBxB0fo055jDOMkKaIzYE0sDtttS+qe E4XqcR55DhMeNAjxLS8+bnm/2+xwhHlsraYlWT+DCUSa37CW76ECbzqqJIbwHqMd h7vlwYSVnlpD1rjAE8YYVCP5B2LmDwt/3idBwVagbSJJ2psy7SSSw26a/cwLopJj Z9OA5sECgYEAwskr6ITM+afqvANca/txLPPSGdb3H2zvr2p1sTrXkmxApwmko8sw SaoGjeD8geBV4Ev+eGmSV+XR8GqTLrvoG4i6irP5xT3cx2Imt0U/jtaLtnG5JvQn rEb+S8f4MYvXedMyHWuEnbqM0ZW1YrV7CcIVVOx93m9dFKML41S7vHk= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDAca7jrmwfHZ4XsjpjkQb0Q+PYROnWf9tH5hx+vj9E13io44LsLIZrm zgyhQB63oHWgBwYFK4EEACKhZANiAAQYuwbPcf0s1plrod+3DdsHkBZtDVTCmtaQ yPjGyGY/FADr7HzQ+gMv5/x6ic1I+kJ75kgF2Y7H/dOGN7nnKLZ4lPidANxAsxpK IMdO02rRG6u9PhrB7gOZJGWxvZ1O+08= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDDjRqofQat4aZj+jcjCDPEmqzDOre8dX72DSbgYpfwY8Mogc0KDU7Ie IW1pFGjln/mgBwYFK4EEACKhZANiAARvZgjLcRJUL8SFJ6mZjlcryATFIFI8XeUU asQ0wwzanD5CclVDIexnfJ45m92Mbd3ETSzOe+Yi4yEjuvmS4xzTBWxLtYPyrLtg FR0v1ODxB0OtfJl3eZsJRPGN4kYYNco= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCZ+2LfgUjVXRNXnDPzNaQwnI5Nm/9Tb8p5AUz5WaoY7KtGaCN67pXF 9h16dbMgzBegBwYFK4EEACKhZANiAAQSbg2CNiTZKTYOlksAXmwu1qjNLUQMCjoy hrCypLB5aAn34EtUxiym8uUdVQgJaJqDnhx5WXxaSp28Ks4kHr3eOoVb5kZ+qp9s v68qLiWInL92d3geczoINm1aMM9SVRU= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAxja9r6mvuAGKWE1BLMkTF6+aNP9FQz0kLs1Qbkq7uqKuTg6b kfr/jty9XC7dqQ+HjQIkQPcp3BaY8tdURuZRjfEzBmHXMEfcRlEBoyiKMJVjX1Fd 7DeaReaAtJqAcJ6ZeQBCFPh6N2d7pMGXFhog6EPG1sN4rLKWqjL4uyyX8kPWn69F 6xksKnsbjZl1e+Kb3bwdfQtELXJ+71KvGZlwYF1B9bDBSuq7/XE+egGWUlr5dvVH rUP5ECRQo3/isdoFmPrEMFMkByJtsedrqGdidMDNAs+HSesRoVJtX/bwWinEvovC Su+T/ZMCZe712A4vWXfDnlDLSVUe8J0vGWuEGwIDAQABAoIBAAkY+hvV7frEF1V2 NkeX8whjRvCnxsYPSFndkpN9WqB2Vwm+IeXRX2lvOEHC5OmdjNsr/f39Wi5/2wVK XNPkPloFeBIS642LvtB7Z1fVxIH2WVlGosj0xF/w9HdVoA+LOAAVwvKzdOiWF1a4 i/a3vErs0XOKBT/n8oJdVI1Cvraf0csAAbCvVHYCXfrF3SxuZTlP7ewOK24WH7Sr rL5WjY57R0CYRBrCPwnXutoKUsRcwXh710eIXTCsjgzDSS3TSlvxgHXF7Emz/T26 PYZ1aGPnTrfd6nk8+rzPfyWT+0QWfIcqMRoqTbhvnt0ZmNK19EnW0m7ZwML50tmf A94nggECgYEA5m9JzF1uiVjO3Ew3NIYzL6yvVtTdC6q9eZ10rSRd0xxndNfUOyPq 2MwEKVCMiGMsIviM2XN57z7pmnCFwuOnBZxXaW7unMlRUAV75yU9HyWHaJIta+YX otznIorK6di1Fo/8s1rzzeVO9xmiYy61tqZqSWJuJ8cMW4cUMbyQ6J8CgYEA3DRU DeuJhGg9nBg0pCsrMlgZxv+pf6NBdsi6e6iybooESr6VUMndAthW5VoJwG3co6o2 EVfG6bqc3OU/ELtvlHpEV2mzVOPrwksaODKTNkL+nbOkoZbvsKhQZv8eVijLxuR0 e4C3BH/7QK77uncRETpG/Hl8i0bUhdesm4+hZwUCgYEAsUHYRfF1Lwf2kDW8nZXB 2CGA+01hADGF8QAzGWEJH3URDCteIWQeqkg9xz4j7GJFOF1zk24l1OjTL67w5hrS hxldkEf6Gvctql2dkw/tNYFb6Q/RCtgDRI+i6MpVDo9ZtZJrM9h6BN8o4CGC7cKn m2nmBq9FxylxkxKUcTH5UkcCgYEAg2O1w5iGtTp9iGXpAwu++osW1mY1/LKsnPOo UaCW1t4DMZYGAe5wsQHk13Sh3O+wdvdYy4BUb6GpdyRSPOmZ6j4KCR5Iop5cTdIC EwYaUIYo5nAKC2DEI+RKFSqkL0SoUkR+PDLRAR5cDHxcNyZUSLM9J+hVJ8VbiYDm vOs2owECgYBHZs3MU3yXcBjUu3zSRqXaIRlIafmdfCQYnC1d9HO9TaIdmDLQZPc4 WNw4bHMOB5RQCYVHp4uc+qKhHiJZQ9v5C+WHbYbmriW2M3Scw6EQJC+dBAmX8mwu DZx5dSYVzWlD0UEF98d9ibKkva0HqQRbhhFAFFuskuY0DkYi7/E/PQ== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAtSlzJpyspCX2KeCrHIdIecRYROzOase1OY8gimOaBTP/sX8/ pO8Webl6eLhgvQkaGndri2+hbxAhxZrxlRBM0UO3XZJUxUPiYDXT8KJwLjmdffvo dTnHl18TldbgglV7f1NDVUxZREdpt6d5XIrNL/j8GHFXH1y2PeraGUrGxWjxb8EP J7QfOYresAmMR7DPVx7qR0cy55CLGmfrMBVNZjXXXWZXS++5ilt7T7LMj5H0Qya0 CVXFgpJ+x8xRDX971fjolt5IbQSDZ4lAVdvFDlixLm+nvBKJaSL156fLIvdcFfz2 BC2vEshPXuQlQHlRsBSxmKqzZ3PXAflpRLr5IwIDAQABAoIBAFTzPGOJSW1pva5y g1qL14D+ALRFZR/uSP1WL9ilDwbMlOSbOnFxidUHlDYCo55RI9PwVtZaQNWPN37t gsY3EAZ7HgN7SFP+Wqtp4lnvGfKbIs5+b0l1EDJbq5fyXHHReulAVo0rkZpycFDl 8ANktQX/V9twXn2+4FhVhfMhPOc5Xf/mEvm1PJzC7oro9HO2CkynUcsfUEh9/OC3 WIaqUL8wpJihdHUciACb4QYJ4rFbBDl5/B91lR7M2B0xTCZB5A4u/LfwWwb+kxWH Tx+NXJkz+Ci44gXBvNNxwwpkS1ROOuoCuH9akUK0kV+magUTzxGBqSt6teaCVplB sY0xZWkCgYEA4P7uG61DvlopSKxzc278nROkojON2VppcGAZwbbAWWOnyDmPW7Ey UeQyGTHaeoxoDePmssg1/mL4ngfMldxnavkJOJrhYFPkYE92Huu2M9F482j5+4gr FoDXkipeEQqQEW/Zeuq+kvT8Ipf5dA/vNF/CoJLNl7B9lMuv2StR5LkCgYEAziA2 QKFgdfs6jnBiE3WqgQlhuosDBeSEjchxqdJXbY9tmApnLZkB3JRBwJCz6DVSg2A3 /60guP8SZ4QSdoifl3l6Mdpd1lkDZa5GB/I3fiHEU+SH8FSLO5F57Byw77uVZLIP 6tLVvLQ527J9GkNJv/iX2fWCIX1oEKz3KonJFrsCgYBPmaF/5TK8W4WTkn9d7Xwt zk9Gm1qp9RSsjzNNl2xBs8IeUk7nr68Pzd3zj/GtvZLqpyBtS+veTgGLV1MICewE qoqaniDyRXvcnwA5PEc/2fIim5claC1mTrr1mUuiV8xUfu/ATuCReV7ilkXIzAJi 0yY2TPmzmtszE0TpXiwg8QKBgADGEi4P7QLEXKXoOhYEnQ068cj3eJ1vDChUFkki 5v0cSrcFYvnC10TysYR9ho9ak+K2W79z8OmA25rT3hXf0WmKJTFGto91ahPZoZ2q BRdOHSSLeQ8n4hXpJ+IBAZEEzTzBhlnFTNQWgRkYBGwy0HYOAtPongJuLBPT8mGQ fta9AoGAfI2Dx8qbO9rlrYx+3DMXEkgPKSC1Qw3VA3RXcGCXKyRHXxOTzOBaL/P1 /mq01pMzyH4kNNIoGCcCHdZEM5NGX4gs8X2e14xa6eNfYczAaOffh5JLTvtB+e6k /oRkqiPWLA7BZkkdzamThpqhJ1SjFXs+vs0eER+3AcIESO8wATQ= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAuAX50VWspJ3gUuThbmQF6vzpMN2xNiRc4xwmoCAFeevs0xTs lTtt9Vj432p2U6/GjIMTT1EQsKEZkYGoPRPJYqeV7k5tItNpv41Sjs7SgPRrvBws W7dj2jxXIVMC0kwJus6+gF3d1UG7nF+GuHQzDrM0XHr2jddQuco4SN5SmC+5/YZE oJ0HFNLszbcucJ/O96PIjfv6Om5Hpx1giPrGdcC+wui/CXvmAd9Yc8INlYoAoRP3 VR9c7+2LdiiiTUPhjEJdMyg3Kfjke+MDlKwOKCwMjizIYI5NvcgKJHNJOJv3Wseg Ovgr7BTjTEU2A8TT7u8VLsg5h4djGJohFIheGQIDAQABAoIBACJcr0zI+C9W8ZPY /EU+NSKvbiW7R8Np39Ripc3BnPQquzKhFho5mis1nWcufIDc8jC7qwflBb5NnrYe ZVleT/z1eRgiGdvmaTkk/PUApqsAuPtLsXbA1ErkeIqW8xBstWZmA4l5vZn8J7mn 1sKro/sLOGxKY66RtZezrHXi2b5j3ed9hK5HhEoYl0ex7xT9nibr7eReQHOxpu5G o/DAhLWkhGmW0bZ85NSV2PnZKbyH6woVQ+DvhSWjLe8DM3UGG6NCNspkFyqIHojX LKhlFDDjOHlWQY5V/cy1AzjcpT6GPZ/Csvl8Fdr093l9YgcA4zEdkVQgU13u8dJn 6mqmVD8CgYEA5GcX1MWz7JU5zigxpj5WDgb8gNfioK4k4XiDBXxeUf8l+Z7wH1i+ xa+CP+2FHebxGxhLaJz6v6OFXGJDtsfSeerHzPruP11f+0Iyix+wxKMDFGzKlsWk RKBvUN1iqtJuzOBMSl8OHfpLyqm4hFvZZadVB/UGt4RnywdNSwKgdZ8CgYEAzkIm LZZFKv2uaF7kwDr51BdCIPO8GGVdOmDm5RZppzh63fLWXLNJ6BH1uMXJuK5dKPpm d7mL9uyG5wRj4+7tXoXxDJ001286fYiaYTmAyC1CS4N4KUmsT3OfKRgKhL+eAxOw IXvUpZvKPN48P5iGWuXcgMTzIOuX1+KSaDX54UcCgYBiNcIVh306OWBFuRrANQWj unVQoYOdO8Q3/y23aibUczXNA/6UPACr2C/VdThMB0WdNPEX5ogbZyCs/MPJEFr8 eWu4RB21uVzQGULKd7H2m3FzkuP5uLpNl/7Fcqw+b4WdKsUjJYRYd4undRsWLrhn 8W+qoD1nI9PNhTJDEroUWQKBgAhTCSFr4CzFAkX6FndfqfeSXLvhumStqp6RjKAQ UIFMOUE97MLfBYuVNfqYGPUYLHBb8sjAN1Lm5ubp+XIYkYHwG/NrYNeVCKJKYhis bnMlyHgtvSrFa2vlebX532rOJP1wzPn8+m8Yo4fjXEEg0cNXZZfY2wsoFv/CiDAm hYg/AoGBAIxT2hdf068JOL3pL7yqCqPrHSq5cbqJJSrO+ILjtcCYTXEllUDHqUpL rnj3Q2sLsF2TH4n/DDPllYleFJTzJ/lsi9M5qsHsJv/geJUJnIuKC4V2fHfK1IqP OTkvSztttDgf/jg4Yah2wIWE18zRrX6vLX0pUaGKZvaWtQmz9V2T -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEA3Yvwiy9G+JrxXRunExVLumKzoKHHqTRCjZ7zdTRKperPK1nK a+u9Jt7QjOTGc9G0X46nfD1kQjScQGbfhpdTGgIkpdASnUFFhaeJCw/hbDrX/t8Z DApnNllLpRKuE53Bh42I8owc2nQ8zf53VjZHOSxceNvB6fZOP/l8dJjfGmbbYShb 7E/p10VSWxzzh/q6BkdrmU3Iq5gkdlS7+0IjNBnuhGvQLmw0KuuZnYvl0PlesAU4 gHuyOErTmHbBgMVzxMGo5tVcxxP1ahdpdZWelvC8xgigK8jivxn2bO7pGlvJLkZR MHAQbM35XkJEb99Tzfw5V0+JisdQiegP1HRBvwIDAQABAoIBAAC/r9TwmHdPosAz Tzm/yS08lynUUiXuwMjUwDLltdjgtcmKOKZrugxvFVpcjZUnoMnv4/4GARg+MEcB cgD08vl0B2auENoKNe9xNQPeDl98xW0dmOqTAG1NGPXaXc9AKb7JCizzr0dHvErf 8MxQS6ZUUY2xBHNDe1k5ASQtvhdLPxdCZMXKeNrK8iXgfMjDDVIC7NsugSigsRWp xSWlu6/5SuXqc49jpTTzUuMvqTxSQJLCE6iehGpIsx0k0eeTGLyfjFVsMaBzPwvp Ks6Y/fXHUCEEQ4vdRapTT7yvd7JmgC4GuoGKjIqujtAO5Cz7rLYso0fCVIoRUMS/ 53l1cPkCgYEA9ZurjYxuPTRlmLHYaalC64ixIFPpdda8buuHxmMq/YcjKUyH093d 0qnVs92RyLxVbCOq72ujoFSJIgK5mftl4FMG/f2a2n5Yx/MFnkcPXe+QcQPEWOlM yZsAoElSBnj6u98+Xio308rMLE/deSmXrJjFL8Z9+TztbmGPcI8VTjcCgYEA5uul OH2l/BPKaYp71CDJDEAMVYyhw11pCzxgiaBRtCweysGZd5Y98dzuygAQvcBIw7po 1B+e0fmVUK6qB0gd6nMiKFgmOeID/nm2PLe2ukX6Hk2owZ8nsZaLryLMaEXYlIBB syVcjBz632oKX+8xd/8RhxWaUgLlDWxWDTnpJLkCgYEAmVlb8KIoxnArqv4HyFkV XmhXZ37c+mVb+8l1WcnbMraonoWZHRCfCoRd2NLTzkjA8ScH+Dr1zApcIO8goWLV Bg3xBK7Oe/N9TUKQVHW7w4PrZJTciEMKXao45ttAqqforVrC3xpvBv7NIjGvb5In kG1GWQEO8Io5GL0zSS0dOVsCgYEAlRyPGNZR61+gMdyhr03oZQeqr0dbYXsdDItV Tyl9+NkQnR68ibMzls1ySHAYX18d3X2umWM9vBrtJydSVddksfLcmK6rKG9g4t8X JUgAL3JmW1EMatLp38v1sQbIdYC8pM/ZHORASZ2hBclEn8Ql7nV/jPoPJ2wFGlDd lDbT7MkCgYEAkbck0mb9grz9xDFIrDbOEkgSMW072NJKulg8O1MAS9yEXG3LD7Th gDEZCUoTTkRdS6a11RjEgX4HBa/3Y738rNAxYYDSZ4ba+uOPZYVRF9ZVfNNIRnON v+yzk5RhxP4ifV8hr2qOh+mJ3HGUA1xUkWx5NvCzw1xhMQhEX02dI/g= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDB6VTu1963aFGgZVp47mi33yNeV9UEm/xRFfVsCv0hFyOYPtSEI7Ipd vwasr8tYrACgBwYFK4EEACKhZANiAARsXk+9JS9cnArLVY3IZJMQuZHEPyvLHkKe GybDlqXQV6rSJwMIki3oUCx/35c22Rq4Kmm527fXVowNZvbwRFN0AEPK6CU0rOer ifWt6kts+h959PJvIbcvBeQae/ZhLd8= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAlqDEInG/9Dd6wGRmW/wILCv7sBcDxolOoXU9W7iGHzYz69rM DTfKJbe+fLRrI1c/3oG6xIAy/1m/Jp9Bjp9tZemTC/SdVJMAcZCmNURZLNQwOXpY vkywS0qIBBnqaPmR7YQTIhehS4xI5YaTjMEcKke3oJZxZUZR1q2MBgWUGOEisrTO RwQRbiCIzQ/qJrptJwRqElGoegFi3jFUZ25eFfVh9Prh8ik6cR+WC2q0pGfGvH1v 8ePmX8+eCrnacM5DSAdoVIp2xh+Gq8RX6yFZe/zv/UFgPnrs3//uVjoWjRZIygkL UXKnckyuCZRRQXArbkTeQFzaigD7sDqtH1dEzwIDAQABAoIBABP2rsgZ52UIzV4e cGqUlsiz86G9CyUPIbrIfR9g73XHi04hK5Y85K/nEHoat3BxqedlrklI7Hlnfawy w0+R1cACGxkkjI2fBhoHH+BDdMY6QUH88zIVm+/+qtRQUv8ixLKEJL0KALiwmSDC m1+2YHNCGhZQmirgDQy057AMoTpCuHQRE/leKnlZTZmONmg23MJEliEopjMsjJ26 219qiDhLGRAhHyk/hqwQxlg2fbk9EeQgetHCEpptiO7UikWagG4fyS+SIMUHjb50 m+LU4tR9lSo9+w4E0GuxutnR8NcXR+8fEcLv82R4XJlfvvQeTQOZCx4dEbavfWD6 u8gfXfECgYEAwDlFwwskJXTu1YkZ5yX3n/qU4VhkaAdn6opp4vFAXwMA8VqFB2fm SAYghxC/JtRia2a5zCjneS0fF+jpFcdkonxYaf7I6s+a3Ad63gS4pJLXp8v7cBzT O7prCkq5LxnY/Rw19eQcfkf4fgDFrCR3EcPp7vUsVvugOL8OctfQ0WMCgYEAyJqE FhETgPFcaGEk/gn6W7qwt0z5ADPM74G2jWTLJ9cHBtGv0WSEJJexeWfP++48jitu MzE79YYm9tMypOLNew1XqB3lYCHkfTHN+bXQskbMOcGJr+GGuoEPezG8XE78A0g7 ZB553zxBaVZPbltb+jELOCzTvScwIS6XMPDXcKUCgYA1Va7Nl2HIItHB3fCZ+ibi 9JwqimQRmTx0D0Oh/F5n/mVckkkm7OUwRsLvtu3S0Esekbors43GSYa/E5jYuiJq EyZVAqSswj2tn0WwJI822qeLn0V8rgLOJ8Nbb7BCKWHTmOg/+bMONtnz3DL8uIFx JHLcIprS565lEF3p74e5EQKBgDX9D+t4cQ1U6A/XhUMxoEWruv+6IZGiX1deS6lG JT71qhh1uqHaMY4/nS4VeG5PMdD5c1EnwQFVN4taT9j8iVzCvIKseR0kQgBHtS2t dxtj3nb01X+WbNIpBeeb/RvCziR7/i/128ruxpP4/KuwvtJY/LIDroDL2TI0/c/Y IcNZAoGAZa3Bwj1uBCaglh1oMBTStvoc7nanGYPCc9bKifWDSD5SrkK80aetdePW G67+x/emazzo46ocqLxwORdzYofol4VrDWwKYx6j4uNSdx6EkbQ/x8asJq6erYxW qLSaUaClzW9JpktKNQL1rk7MpcpbtCH32zK3xlQnm1scx95/9Lw= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA25fPrSxdCC022kGz6Di995Q7JLBUZwjc0zFmEs1j+f1HGi9f k06VvosyFeBhFlaFRBygzUNw39CAenxTO8l0EUBvagN6IctGI9xUzs+kUknyflgV NxA7f1TS1y6IuM36Va22o/RaXXZ817tioxXOTW9l1L1jhurw3USLXAriYIiI+j4W V9U7X8pnapajG9r0lxAS9KIxFPYiFmAewP1py3ht3G2pyW7UNLEOyCdPGUe6METj CDIA4hTMu82MFIFeUZZrmYPmWdUmDagQVayb3cY6vUu5xt1YAvMpFzDFSv9yr5bg ynVsZ85JMWRi/adeC/B/r73dgJu9ctR8NdGsuQIDAQABAoIBABdOzkl0b4LPgHEl zymODZp/6SUpnX564iwnzqHz8LGB+4WL01+zKXwaPIc2PpKHPXRE0PaTOsxZeQGc kkhtchHmCSKzWsfH0oU6POWKBEgtttJH7tHeObUitOcHy+rzBf1ecl0wXFUWSgWr SzrB35i4Lb1TxYLLtiQuQy0nr0Pil7y9ybupx2uyH1HFwJdqbdUK+ixDB8RGP6ng BNg3Iduyo4RY/4W7n9PBhkOgKUlOXUhnBWsuejCnicgN5DKvm+zBB74TqGbgA897 K5nglRnSEkFIcVSdRRFg6menCnPDh3fYjzQm2KYTe1joVpoPYN3qOggQHWkRabsJ 8ekRPbcCgYEA4v9UFYMgERL+UlkViuokoOQj7Hn1a8ZesvelFgNPtzbg88yPufDu ZswZkaLI+JJl70yX290hBqUCQDVPjcaq7gFesOma4FmswZA6raP3FNM+v72gyh0M vz/HSAy5w1dTrElBm0752WFbiUfC8rd4pTc67mN4ZmYrf4V50DkymnMCgYEA96ZM q4ajX+P9cG7TN35/oujsiPChM52Uf5JyiFF7WZNBMvxcg/7U4RyoEtBNv+282jnW F9zZBmP+ixfC3v69No08ouQLNQBk2FYWN52mxVBAC5SK3YSWBqW33n4vKqAG8wIa J0wLEnqlNsfW9ExqPt72FU7RS4LHPJeAT0twdSMCgYBLi7Q9MJWUeSDA4TsFL2Wf Ui4OfoxKIQvVPgvoJpP6Ir59BQB0XpXJCnYb/PQrnfVkzbXgi1h5cKMuIU/nnE24 xiXwdN6Befa/uLN+pIoPmTpR79c6TK64W46EERAlzcNgHEVEXeVTDk67gnGD+8Gg IqBvRBWG5svlNdPTk6WetwKBgQC0itZmTfeZFrtTVlhBosUmXSzkAJlk6cKy5m79 FnoYqZPkubowuH01yBB39shX3dfKOFPufaDyWb/eY2o76/bBaGIGVr4c27apSMlV rmdAferTBm3eZKSDIBlV6SQ1rQij7Kpob7W6uRLtRu9clsD2KNG6YwWOST862zA9 nr/ThQKBgQDE5wutepdbGMR7XQVFnRospah+C7UFKc/MvaD/PHuPJYs8rE6me8dr jClzLZ0QjQnrQJhTHMJv5FYVDT1l2DnzRWkNt60zuBpniL/pemobeAv2rA11AthG abQD83g9jSFkfeI4dfK+EEkf401E8efMjup90k5Z0DmO8TIGdiqMrQ== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAp9T/JTdMDFUwEF/qX8eFVKhELZzDJ/8cQZBEZAl8omeOCltX B69o07cR5yrEr2uSp0z/0QjuIjxy1KuBaYJcb4e1uitc2vVclcpTBj6kWXWkXIvX k1o0QzTaWx6T/k4Uif46fvYIHQ3auxAz2cJsUNwjFFY5/ijaoaGcLWySccMCpCev GHT35FqzrP86MwtOcdrp+UeetsocOy8ljmOgy/7q+pLcg9Dk2SQYNSLdA5JG6tT8 Kj/npDqCEeWxtsF04tKabo7Hm0qVuCC+ryiv0A2rSfSO8Le2k9oHO/PtStIoQ1N3 qMDU/kzmxtp92S1IVVif8nROAAVveSP+y1QdjwIDAQABAoIBAAS1EoOf4EKs9ar9 Pbd6WFDZDVx9e/MjEnmmSxIb5VfaxrRJ/pATyUFoQ5jJGCOBcBIVifakz6UR2U4C EiBRoeJrmzBsZ0TUQp4IQuQ3HT34cOflm4zMUrtF1WVeigZvzd9W9vC5BDOTFWek xdzdjqiFRs3wYzJalqiXk1KqK8Cut1sdldReT6ZobGWdGpYeUHhrmgokKZ0WqWVG xKcrfEqAvK/PUOIPzwzvApvcBLCaRL6jy6moMwJlKCV80PLuKgVH2oIR1nOurO5E ilJAqSNulUXppO6tZdQP/RZxw4LNHJtuI9SgWH6mgophFdANXdYRLMg4lZIhH7Te R2lSjI0CgYEA6AbyD+iv24XmPVV8EFeq2xRHJLzmZo7/+ixN8x9n9ddvHCpTVh2s 4Q01C5Ajlx9EGJnsIxUSc7eQ0axYqdRJtDrkHsK0AqwIJNJEcUAIzhONTO54CKir GBdzV67bYsvUplFsRf1m/7+k2JTWHj1pBOxvjgirxIHxlQmaJ32wHjMCgYEAuSwb m/1nkNZPHm9B9Si1TLV4IY+Kr6L7NFWPJ3CcnzwwSgl21Z0gE5HlgOfx2ZHpBerj pyNbFjTT284rpOBW/BXPLUvxWeFWjLaVK4Ejok88s50p0fnTri624kcWXYa5z/P7 Hp87sAOVHIhG3vlmdTUxjrCP9ADwtezQJ/7jrzUCgYAgUf9b+fStJoy41HSQrjWN iNiUJIAPnzHG/m7pQ+GuXBENIlQzdbTEMJvH/Y8HmQJaTu6WwHOujM5udoxvM7QE mAN4yXRbvuzvfB6ui9XuJskTA1DTG/OhSnr1ptTGgVAgzsy/Pxoe2+oxhSICWlmL pwevCEQs/lDRiuHfSGHFAwKBgGgStEnN+MFc0gcG/QkvIgbFD4m9RXNFpO5bECRY lI6io3lZLGMO9pJJM7ZppnJkIZXj2KN9qZongtNNYxY9yGXSVCjfP/0GO0DG9bwH zuFQq4s/z9tmEGUbeEphLd7O8+w+8mrZkBBzUwFATqTPg5holzvdXGsFhESbnrp7 9bfpAoGAc1cgKSjoIe+reuK84UrxkSQkEFKbW+M71gIqRVcdrv0L0FkfFq9wRRb0 T5HLWDa9sMuaBQMNsz2OCHDhvv6pGiZek1lqDIdiucK9RhsvTwVg+GZgCjZ488TS YNY5TEmW0ygDTpUPH7QYSsxZBgtXsWR3qgqDIICSOy0jNSfujXs= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAo2owDS+cqfl9d+fkaQ7+yOCG0leKai03njuUSXVRaQYqJd3S rm39mTezYgQ+49bVH0L9Qhj0aVGtvlUoKPV/2ULks8SbWfs7Bj1LOlMbBXY4nIfs T/VtfcsvhUi2zIKB3cBg0t7Tn3WGfUXM9XPR+27zjUNQ+GKIvTEedsklBfk5cPtY ls1iprhGkS8yDJrvNZYGuh1vtwIqf7Bx4nr62jvGSBtEenf+4Lim9NDszKNxtdQF t59ogIwDCfIDuXLO53d1+o5Gi01nARxs88zD2iN82e19iaIc6lzylhd43Z9wYljm xgSImrR3fa7IuiehVdWTHYWliAfU9bB97qYpfQIDAQABAoIBAALR81BW8QIx7wth shxqCNWYolsA7b+VVi9h4dY+sw/37kRHBrrB5S1+u5bGcftmmrj2Y/5/BcDHixMM zyudyP4L3HyJuRCdeFBMQH8aLg4zExkIc3iRyLjyB7jqH1V6LxmPl1wsQkSvN4nz 6WyW+hm3uXZHoh8XPDrfnSH5qKzosBgAUjglVtskJ6AueUpSX49FZ37WnpuzfZQo UtaA5MGE9+UFUJkjY0iqXwX27tqY6VLVC2UXZxcNrXjV+A6EMYBbX8Uw1JnPShvr I4zXAy48q9O932MI9vMBfe8130R/VC5KTqmEkx1dbw2ofRpYeJ4gfTRBl0qoFmZ/ Aft2WvUCgYEAxmlsI4X/CLkweSWOprjalll/N2NB3HqOYZmzEaEyz1otm5HZRj+f sF75Y1+070jPG37WlSA3HflGRGxaFsVPgQKVwn7a5FjW3PCK1J6HXs4atmnkd66R 5oic10u38b/yd6zTcNpizupxolrmpvcAMCqxoSlivIPqwj+Ns9oJJBcCgYEA0thi kRVu1PPdpCYdm6umkfrhcc1wL1gLX/PRsRm7UpCkJGBsogDnJm5b964EfbwEVy2g W/aE/w0YzwXXGeMa7OR1BmzaIuapQn3WwGbMhSHMGWn95xffGTCIcD0P+Ki+sxR6 J2rJMXDCZfpeezUajGvaFKSCFDFMJAIYuMWKl4sCgYBrEdzfVqIH7RexaIkQg1TC Kc2y8AdMmX5YQP8XFmw65SkTeKNNe2wLW1UtQSp8rkfFSK83jkjwDeLTbb036IY8 0k5KxPYOn7pjRBNHJb1bddGIeqBlzXjCdRpePGgpNzH7TvJTRiZoDq//sxohI82g MInmtFSp8m4vIOixE4o3RQKBgQCLP/PhJAmdxS2lorK9RCFvmgTY1zh3XCuvBGWC FJ99yR9PEwvL9tKytAIzUw+ORuWK+gxFkEuH8wtmdtH4O+BlggCz7KIomLRCwL9b NMlwR8D3K+RPgpmKll4V2o44yKGhvi1q6QDVkUYiebd6objV8skGBxwN3/0MbwIK zhRZPwKBgQCmARUbenkn8zl8kyr6/ueio1+37OSi3WWzqWCTCFLw2dsBjOJijNUX 0Pg6QHjvtpGYcibrst6QM7Zgl1nk9Mo4D9WTgO7XedGmu0480H1GVWp8cU7LZOgr ho7mN1Orj40I1VwVnqaVQpKEuhAU2m7NLLpd8+x+Eiee0v/04liDXA== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAl8sKuXujDfOk73WO2tHMCd4FU9nJ1pHPY7QUF4uA4owQgSbG NUc5GRiURXNagzh5ySCFrBI29eSPYGEYs7XigTG3/arHE7v2i60MhJnstEtmHNq1 mE14IKyz35SdRQvChDT/6MiObxFEVFFbZNo5ji41C0O3j197c2p1vjPFIDiu91zj oIE+TdehjkueOUsEPcAek0A3z4CgFjFyFmxqWdLhNdqOtop31xL8/+NAEz97iCe+ CO0kMqbKpuQ7HC9Z+HyaUHCvaj7FHbbCFoqusteDAepbt2u4hmxx40MbP79TYL4e KtOSXrEzZoyp86x0162nIYKOMjSshKTcOO9TiQIDAQABAoH/A3vFYzxTIZ7VyikI fj0SUaemt6Xn2+S8va0ESQYKjyhnuI8LPW3FAa5uuKlNCnXhVZxJdQl1+W6lW7De wEEMUaqybj/dEbbekZYHE4P0yq5wSXk7caNVfmp4NklS0qLSc/ZDaTQxEJt01fqH /miDqZ+l1/xV2hR24M8wpIzLmVGqne8oGVF5i8ZMOcDdhvmzAyXRabELjxDNvway KW0CqZwtapkLFVitDifGr232nmRBZsAAEzmwzG7saGZMmlRX/oa+irm5dYAJwifY IlWLdwNyh4aDC91snWTly+74FzcrV8u72SY+7waoJ2EV4KMDMiOQD9zEtmfdsI4a E1TBAoGBANZMlNyL2Tm/GXpBvOtvzPx5RNNBs0vkSqHRnm7LsT3OGNUNHj1EjQ1m AdarqiQ1P8eHsw+BkumwfAX92x6sodR5ec0phO3R2EprabU7+pBfeaq4VpzRT86b WtJ261X0/fGE+iEyL0ODuOgOnOkOaWYYEzdiByfTiR9egAdHIFxJAoGBALVUsTao 0GGfHBxlkC66pS5ujZTvFuvmYhxBGEHo1Fm3f6j2nWTIf7r7I2O9pQP6Gvjv4HTJ xnrT6qACcnjsqxVZGRZvC7mOnRLVbrP46l2MvkNbGh3QPd/oFobFZ20XIv1Exhdf xlYg06r/NwdpMhCYU0Dd+p8FYVKGLep85r1BAoGAMnODFE0kTfEMiXjShkci5kmS h33PPU24uFIGT6VKy/cqZ3YYKWprHr1mL2jovG+A3XO4Fy11LekrualjHdycmM4k e8WLkwW1OwgAsfc17SldFnEhivfIJybyAdyXWPw9kM+yp4AOGoH3VUKjdEa9T5jZ ZU+BycGGZck0sQHwv2kCgYEAqerm9PVT72aNjP6PEXrM9qmZ+ongzMViAl/tPzXS Zw/QjKAr9Rj8uFZFX12CmCtxwvvlNQsu9kJGhhJE+pOr7aFEJQWB0yuUfOWLixIh a/BLCgsAehd9I6f0E+4/cLZRj0s25QhWbrbsIjxtcIBe7bYPraVVCFaeUBp0RFsu TQECgYEA0BIKoCafGzNGS85dGwdt5NyY4cvyN5fgeq5Um03wi1YKobamE03Ipmjl IxFQ5KG2v/sxqsu4ZxdjDe87l5X1UR8jlJutEsslfiHM3HWx51B8706FtA1HbfBp lxvbaR6zUbabL+B2qNyzemY5jR9W4FdzR5wRAHLWkvpUXBdiPYU= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIKGnFfZHvD/ag2gMxF3QDomkXIH5V08cZxY8lJ/oXy0ooAoGCCqGSM49 AwEHoUQDQgAEiMa682QUg3z4uqxbL5Td6aPn+NIupI0INbk9G0DYFbBctqCVmTCk Z9iccxYCB2Ef2NtX9Lvr2MuZWAnBfZXnNg== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCF9c1jTMHRBmrrhbP7snao/+XtR5rjbbHCpELzJSXkx2ldopNtIZq0 G0JAYNs+WtugBwYFK4EEACKhZANiAASLmGkac5iuA3w63hy7xcf0N6eMtF8OWc+u KWuGFiqpR33nN5eNEdo8HR3s4SguHGBWlEWhtNpz7ZLYLFg4l2ndQLgFXs3LYMbu YwyCUCKCzkhbL5IZzF8bONswVajed2w= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAmDDxSKpcRu8dUY358ZvxfEHXBr+9G4NaWN05fV0JFP0A7k8f k2WJlWKdd26uR/8JsgTOB/g9xy4rQw50EU1RWLJsrDi+mVW72IsH1wNRqOTFkygL suCasYeL7uxNZhInqPhKn6zX4OAM/RUibTytf4VMOc1eODS47AAqcM32lVrCkm12 ciAfD3sp6LGyaH9g5xmiwDHQVF0P0x4kxjQpzwcqW65YI5HAwa4JXSr5rkcWgAxg YuB00YU6xELzam08doQ57N+/PQOOCaHY7LIKDPpyOcMsc6WctepLfQLts0DrDtPW 1VrXgJO3iCAQJGjqocTRuzWTeDGmEhVDUq/d/wIDAQABAoIBABDD53iVR8gKpESt KrkKcD47dIgKTDdBL401hZVBT/RPcLBP6A8RMuhRbj5PY4SL3FIPhHDNUGTmOZ7P 80pKpajrMtx//cMfdiuDGVB+zZqY5QjycuN4KaJf57LgtiAF5PeQrovLexaLJ/Mj RmEZO5WeJgkCDhyL9kkNNZ+qmLzYELOU0rJPq5orE7ReCXBRVo5VF8FypF7um14b 9jN6IzBtYv+Wl+FRhErO/0S0b82Z8jbR6kVurMUl8jPJXf+4pF//Rm8uItmUfb05 GJfJZaprKD/+Ic+UyYz3q661MgqPYD58r11IKQPspZq5ZiYWtVA/CveaBQz20ibS inmao9UCgYEAwiaL+oSx7So84P3rojdkUGOxX9whmdk9sZ/f3lXiK+g+r3P2aXDN sEsR72oQmw4gwbi+y+WwgeMIWMuVrCthYmNYnRuPOp6AwntcrLejzGeRQ8kisp2Y YH8KNpyFyv7MtBiVKq0l4nCEy0wJYo0qzs2c9o8H1F0gullpAGMQ78sCgYEAyKyB QTy4//TbW3biJ3DREKGhmKFruPgnUWjLDmEhsKaQMNTDGnDVIldS/7PRdu6GL05d IDR2NG59MHz92ZWmsz3kzWYVGsPNX3ewNrmjnZ+1Sg6+utf2iVRsSH4XzRi3/Bqc bsceKfupzxdw6Mp4DZNbx28phXwNbIXjVlhPnB0CgYAXx5bfgT81uDWqrQ8eWEB+ JCfGgPTQni4TQmyuE8DW9eQvozlsIrfevuMcetY715glghZEbQaYchFEpvLXGp0b 6uUgoQ6C9IT6zRdFxFxYndrJ/am1TN4r+4NpuvQcL+csq9IhXwHD4VoyeEax/m5e 1ApEnLItzZZDnM3ikT+yzwKBgQCLSLCuRydhAOMAKRPvrC5wDL/M4L2UNSmVJ9dI s8Jeij2qpwKEZ6yHmXTSZk0M76HTU+DvaXpiCg56iUboryZ1YpBcwG4FlcIGcVyt n0whK6j5LiLULPHBgAdoiZybjnylTxMlEK+vFC5YvzxvV5jcU1twoYeATwpCOOwC EmmvQQKBgCWhOLlk1XCh9jIdZtPVJ+L7yNq0qMABJFD6XvIXK8yv9sTJjOG+vad+ 6fnTduoKzgauocdiw4VzdF3H8SjZpnpvfVFNBTSKk1z2SqcxqZBpW6urdwaXSZmT la/zN0wfpoReRUSJ8hkOKvSCrno9J65yOukXenvJ8iDObxtqM6sB -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIFb3SnP1/l0b+c++egD9Kx0cybFI+EsFxVsviC3Y/hb9oAoGCCqGSM49 AwEHoUQDQgAEjPqhrBTvcF0tLW2u9UtIythi4baHiwNC5pRKB5kFVkDbUtMlrplY UyjZMJscfL94ao/1fWcllbiNRe7XNECexA== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAsnatsj/rdL/Wink4lVHl4kB3BnkHucxVnvV7CoeLymrqRTB6 rr8vaeCWt4KluOzpu3MS22RALekO7b4MoEKj2wczniWl/hAfd1y/0HZh2kTFvGef YabBxqvPQvrZ2ralDamRZzAzwUeNvQkjKVpDPy5pQLxS+U87Fr8awqL/VRt/z97r RvHZfYPUK69j45p/+PKyeB5Q6MIaRbqojW2y9s0EgVvC1RgmF+xZ9Ga7OIotkDTE Z1jhrdPuGIb0V/PxuRnvOy77kc0cRafPS2w7aV2dFem99PYzX3DsX6DPZURH5ZmL nuhZjEQBOg/sbxW7o6V1cbW/E5ZJ7fqmZdF9EwIDAQABAoIBAAuPl5n7/Q9PnCDV UH6P0yIQhgVj0sXNAGDvSxy4AizHN0zrIo9ucC5eL7VMn9q2cj/D6R1QRb4TonVx QdUh7AZ01Xmxu6qVNcygNAbXnGgs21hkqBUF3fi2SZNvt6ws981GRlaWb0vejEaK MH5ty/xsT8IzUPa4lL3Y/G1ObNcA+ND6GHLkew2FkcJSTwNvmI01cX2rtpDpEGd9 8d4ItLLasjFtT0X+TJ4WfXtZrM6N3jEFAm6rkBov4+rVnmo7VgjWNTiU9HoL+tbN PzbYJ+36kPTE8qWklBqvqZb6zfNmrg0pk5W+E9yxr8bn1Pc3UM9NuQmMSB4uHcyM gacqh90CgYEA4JvSp0ita6843R/YcGnegSLKlC0osvMQs+HpIkauc6PY/u4/YvC1 6aeikZzADGOt3A1p8/Va0xCgPac8daQjzKXxK0JSiMfDkpQ0UAnoMWGGLtbYfCMx n+4Vo2QeBJimmHSNuHK/NPUk6yE3eFBd1sw2X1lmJbETAFsVmNcHaW0CgYEAy2fZ piF8evNuAxUfI5wRcKm3b/YLwz9PdIbUygYSYsa74WNDZ/vtGSuhku1N2lLQor2a GG5+zzl/ayzo2weF9fiFxgE7an964IHHjZoDOURSYnAJPguUxiNvG1uLLY6PbWxs 869FeisnI1PAT8G4WDd9Dh6ApHtusk2u3KzG8H8CgYB5trcOg6nGYuuTmEA3modC v1G7vkUBxAnXEKK/OkIq1C0w6HZc7UgG2BqWgbTogdOjHXm/A8Q2ABp1jnyK22my 6nGoGYaULHxkn/9BKD01FT4bf71Md93aZrA/HG/P2dDdaLurqjLHRdi9ugBPKG3R ilQkk1NxNWWwmas4ab3QeQKBgEdNynCAgKChQUl3WAklpr9130YyXIE/al0Q/vsr Ebrqq+Yg4/pJyB3wu51D7uy/5z+Fc8Voxq9iGpa5kY9mncFSM6Lrv6ZftfWJySiM euDSYIb9e1/ys16aAVL3zlxUA1d6kN8D7Dkdc4Tg0SOkZzkVipMugi4mzvFWZhwZ vUuFAoGBAKL3+ms3y0soaTBWas1xO/M77gZFrrTnr+zrofr7JmPYSzR9/L/0aNE/ FmPJPpVt0fHT6Rf1ceLWfw7t2PUO1g+8Zo/lAvlODfzYAgq8WZCEsBGCJ+jl5HD7 wdglf1iNavF7JRINbni1rkE+PWAMkO8zXTmT9PHN5iLlBd5GwAji -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIIWRNhzkUW1jN2ZJ6ZL6w90De3brQ6oAcFojZCrcSG01oAoGCCqGSM49 AwEHoUQDQgAEaLBN63JIj1ztWxRXkgeURuVstFtMnSAAMCI0jfh1Rq24ofP5UvcI //ktFih2CMfR5fYNltLFqo85Y3koy3SqPw== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEA28AmLK1Sq1+s/im72FoWiJE0d9WnBpjXJ5PvGOB+c5kSDxem 8lmNQSvhaDB0nKr5o9G1wdXGb+bVMwWQMJcHvCWuxAKs281Q4N64nIVNbmi+Twr0 l3/v2EfxA6ZzXykI80qUwiPzeRrujZSJum+wb0uj4eOzNi+jtorzzmFV4JT1TtRh +cnZfLHvDBo03EaX1VGSbE/fqVIxAHqrHvTmR6faos6VSnUpnfRbaCWbUOC2UqMj 2qdlLPowF1qB/eDlI49bfLYOFWoFkkbb3LXQ7kSB0SUO9mnk67em57WZWQR6Zh0+ J2dDf2Bq1pu++h/xEpokJsr/tT1vc4riI3fzpwIDAQABAoIBAGiDg0R1bJ+QIgVB 0RLtidELCoLCDS3QjGfI7osM3mdZUmL2M1MJL2rjFVIJ1bRbht6Yk1LsuvOmvBiH mVPayPV9kJit0wu5IzHIC9J5feG4lGaghcL2OJrLYIAFbtK///9CJe0NzzL2kaWp kzWmACp2tatuMeJgFwNvI9Swq3jjTaELTAPShulxdpJAbiQ/aSPxGI4HmDQR3XEF 8IumZSpQ/ZLk6q2HQRDRJYjl/7+7x942bHaD2i3NPwOv6GziMFd0SvusvlT79kxp D/vHg0IxvCDk/s7O7G6T5mEbR7CUlCQ8DFhx9OYsWYR+IFxq6r3+BV9ztRLvitTL Bi6k2b0CgYEA31oHL8T/BI7CJ/YXHF+o/IDIRYUQb24kV7dkGbEkO5mZMfjtrs+h hodzrjphTalC9YPDY9t2izq+k7jjc7REqO+N2nvaBp2K4XlOf3a9Xkl/9VvmeJG9 J27kB6gLEtR7ew5lE8GyhmJMYRxvHgZygNIyVN4DN0uA2yfUVrAqDZsCgYEA+99d pg1EIlFywcMYnXCdpQbtou9ixP1WauXBToYbIw3nTWM6oOLUmfEkstQ9L/7A42Gm IhyZfEHp1XvdXLEqOfr11WK2mgz6pg4s09O/YeuA7mLxzhvb72QHRVbWlixS2bHw enzp9hVFBhgejXUjowasTe99iz6PIjl9P/yN2OUCgYBEE0WTesCbnANzeJ9Mp59y 7rGb9tWukOyEy8G3zvUTMVqvD4cqO+Coh0pr9SFJMWjWOgXovrBf+VSy46x3zJ8M uo8K46rtT0FQPc/+K6vGPDLDDvKtFwaHKVZZOw+8+oR0WkvWfLg0G2vaQXdguGhX +TkcAtsKFHo+0eH3VhRLNwKBgQC/8/kRBec5KE2G8cKeqibakC8nD718V342tabe y0F/M6dlyQvzdSuFrsvDJhEDtOkX4WGVeapXknw84MtRSwvdaC9WUobLXLzhNMhh H20pmSuHggy6gWzaQqdv5sBfbqQtmHinQO+lRYx3GoaeU/m20u0Z8D0Dk8fN03Zq /3SzKQKBgF+V/FpjbuABFdZmpgn9bL7VK6kSsRpj81xBVQbKR8li/v+U6HuImT7p xesJJeNC4TWBjYbieHccQOmLG15VrCekuYx0vV+hOM/cst4sEX8Cjo2J6AS+RVsy O93Ee9AyELgxtsbgeAozLrt/oZghyAVdZbkteGpcWXqPItc6kx7u -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEILVbSbq4zyccmEi2jTc1VQoWQsjVRC4X0kmMpvl5u9zpoAoGCCqGSM49 AwEHoUQDQgAEV90mijHjwckhL4wFsvt2VD4ma0wZg0QE1O13L0mF2Bbv9csffyAx NxZT8xiT/PhNP/R1GWyINjXLOEWMYAsb7g== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAptcZPNYDVvFEjR8fFAuknRx1EGIU4lYjg1TytSiL5+MYKSLs iWZaFU5LvE23IgpK/lX4chJvzyExyLfY0bXfzfq7i4LqJH6hsuirJ2cy9DdDBaGU JJR2OX4Y+ZuVq7MEWRqXmIH238BY+++PfVcx4EOyvDJ3uVH4YCKANAi3PrF4uRGD FOFf1Vw/Gi9OxNiyiOeSlKr59+wcO3rXSFtwNF4qrIEhPfTF0AuWvAOZqHYAGBH0 XSpQNUlVhmHotFjLfxiPRU187K8Nog68Ngv07/wlseHeawZBLfsFPlc/5Z2Dkx/J v7KbweVqEcaEzt/R7TjwxdmqnHaNDLkWd+y50wIDAQABAoIBABa/rYlGBR6NtzMm 0y4AiGmDv9KEDSTvadg2dQGOjcUIifrR8D6r3gyZqGn8jsPtc1xKjJ3BNc2gURF1 P/MYQXPshDX5m8NuIM4sO2ocAC6cel8CMRjrxVMBhpZCSJ4owqcDoTgCQI8xwvBX MdF9WieiE3TlzL1QF/XDvodZyOKbR9ILzF3fvqoJWjWLsyEPoc+f/Yv6crrdtBvw CxpPI2nbdaXb3/T5SJ0pEfWKi+ZoCAtxtrq9T8ZRMawjXLrI2bJlHWoUwdEIIwYK E97HV7vXiRuNtQtl7K/mrWbOcR6GfC5wTj1YLFqGvooregqwxT0gQtgAtYSCa0DL +wrlgIECgYEAw+CuDo404PegDO4+v5+/wZ4Y8RH65668apiyUhuQLeEkXjOJ5Bh7 t7iqMbtt7uHON1sCKN6YmD3I/htTV2Y0fS4/SeGqnEH3w1Xpmgq+ts+wYDp13ydX HGpDDQCpEc7a+Bf5oLDUKDkMfAPIlEfjlJCx7gFsVrWu5yGM3eL6VrsCgYEA2gzE rNuVcnBpy/yO6ClfcqhKs4CgEMIvCSM8vqISmdhqK8adsKGn4MHYmJvX3ECy1FPQ tOgbnbxYAVIpINQOLP2wQJluvaoznyX0QyW1kIqorcWbpom61GH9QsxaTOL5s3KK aNbDloXHezTlS8upDCWYM1jWXZthNYaVE/HAU8kCgYAMX6kfKkSU4Y+uwW4dVM4c QQx6ThR3hkZIxZSeMzeMbmiJut+/FPzbwkKeGaT8Li+Et68PPeCN3XlQ9BDzuHUg Y0eEN0k7zb8FC+xR2tPpYH1X1tmTWzzZgqzxqVUE1vhmK72NNR5x3Ai53NNS6qep vuo+isB5ScjeuPPZIHmH+QKBgFbKmkZLqPLCN/pP7voN7cYPopxMaGoDQQGcGwOu M0U1VR1Tk1TJI69cuUAVWBh9UDEfo4U+li901nrAH0rH3VSfLdaou+GWq7F/Q/iu O9TqvDVe4JOrYshCsLIz8QWFmuqIfvs38OYrHbm21kYTLJh/JlPZ2omr3UeW6CPm KC2xAoGAQyElgPHU6M+st/qK/BCqPDuFbx9ckC1vgVWPJTJnKUfq+mSqjaLDVttf xWpUb8+qHvCZ3ABAzts0IkBbmQPqxj4/lXP4beJvujv8BX64MMhRENNPkEJqQBrZ G+4PsNVnSXEpXO/1C4SBZt9tUY/QTvuaWQkFs8zOa5NdknDdZOc= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEA393ZwrWlMLdYgbtKqkFoC3NpJ+6/FQol4c3yNOausJtUZGxc hozfL38aSZ/NPfIcmdfU9JpfW4TaXkIpOGKZIjVH9syGhiVqfrspq/8dXi6bey2K 5c9q0dphrKgmW0QayX7iVViKDALT1ufOhOt07n82aS9wwg/7VJaK9QWJ17EivU2m VVKAMrsEN1/FVN9RCfQ8EGSYDOeA8SkZGj887HtAopYlR9YMJQlEYtvG6HUjh6Ys Jb1uohpVLF98B9NPXyTSkPZt2XdBMe/CjbyKlvG4v/gTezTHUrRwk8e5P6F65yoz RsvRsQrvvJCIx7QyxKvZ+tDSED/fCuAbe8RZBQIDAQABAoIBAA7WPcH1VvrpE+EZ QCQTjKlBn2UJojlrQEJ8a0KNTWOgD9JOCj3SpVIZCu15PVmPK80YbGE/v/UpU22u 1duKUVrejCPzvzCx1yKKFgNzt4cP8LcTuCJuAkbhQdr3E/+1fk7/bVG5ugB8yXxz RZEyp7/Mx5bmEYOTGpWrGo+Nq+qTD5Lxpby9lAvv9uH2fVLa7+4rwoPIK4/H7yg5 LpHG6JBmqqnAwrKJ5Sx33v62u1QSTA7tQUxklUA47teQ0iT02YPE4FP3INs1tbz7 UwU/W5ovFIYQjmT78C46VUhMKYc6EvEOCpKTfeSkU7+74QOTLuXmFRGwUC3RLGaf GuYZtZsCgYEA/Gkvb9T3A7oO7yNH4mSloNra/tSdVOOfT/9i3ti/3mcVl+3yLqRL C4+pAKybArFzyQwXwbJMdRGUyZqN2WgQqhPzK1Artjlt0k1wVCmRkhWZHNtQXcly SnLLOWGHHxS3m2ZYwO4Avo/KcD/PKDbs4Zf7tt+cvCE8E2ndRVCQLnsCgYEA4wzC fmI4m2nKH0d3QwR8H+zerDZnb/UfHVaKF8d3ZHSlGkj+WUjUuNVwkC4ITP5bnD62 kbmOSdIrISftDw4I7oSbS43MOxFfOK/ruxh/cEur9yaw76DxTgnBsldE4rK7TTW7 OCNVBb4xTFq9gIrfg1OWtP4u4J2wLZjZBLfavn8CgYBUbFoRbYmxFWopUgOZFVDQ nGLjGPoGipuehizrnFOQb6opRszaDNmM5GACebjfDbtMY18OyjQIc/jv9WG8dbId MM8EjawRJuQ0kvIfNEgcNF0h6bjXpak0fXC7oIMxQhynPXQyE2jsU+vB35XKPZS9 X7gxUll6EyOk2qPHq0qOQQKBgESF/lDsTc9BrzmfdPPp75gnAdERnkggv2I4Uvb4 QSU1Ovri2riRjXm3GQC6k9DA118hYjI6wSGwZ0nbZeUsRC/QH5o+0ktlY8qU9V0C +Lsoa17s82tutETsFuQ/CFAuxu53b+hyaV+RVgmIPTcFMo3M9WfsarNpg9lPDvgo kMD7AoGASXSRprv0RvUCKXedL/ZmODHSpMICs7xAp5NIsP5Jn9L2K8K9KbaQKfCs RRWQQLUzy5tam95ugtsuNGRZMv28Veh4X96ltFYrYsyBpl47YYwZ/c2Dq4EWLmhU LFb3DWnQFHks58OldUT/H5KZ25exX4tKOOkOtQXZdjNkDpPVO94= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBqY5V0wwjSLA4l3P520hSF34DXnqxL/26rd705ZOblnPV0De/bxgU6 KcSaAjVfHhmgBwYFK4EEACKhZANiAARC563CbNTia30aaNKJu4T+qvzLVMNrgamF f7K30Y0eHPCKCShEBOmLrwdy4KBcYHE0zH5A8Y3c64G6uSMxZD/+IbsatNYpwbI3 SXTmWygrryw6Bhyg6JeWPUalgF4orig= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIBhk7HnSiGsoxxM19LT4y4kv5CtpWhebIKceR/SaBkzZoAoGCCqGSM49 AwEHoUQDQgAEcD2k8WtdEGVCiuvOtsYteZW+TkgOoCvK9MScKGoZTWCh8l9AsB9M 8EgP/WF2l52pyUubOqDPdIhrwnMH2cTEjg== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA4mvoInLPb1/xkXQPnalqEXB1K+tfwj/f/5SsYigqM+u5dnVO muCZeSuwuNFN0j/Hdk6D38RRtZFnUq6L9Od5JluWzDhuj3zaYYXHm4JVSA9A9UXG 4ufqumga1fWm5pR+8AKNYz6lxaFFIVO6XNkdTwrSLGdJRKynqqYAXHol712Tr3z9 eiL7Maz6vf/IBD8d9n5U/OgWcqvLQAJIksGXBBrXv5MoeYbQhzrg2Ay9ZZWzWsHC Ls/sG1hb3Whe+VCfMrRNGzdsjPPpOf5o2eBHaGb/g0fgb9vPzJLNTGA3FCVERJYX 947KZZU7r4nOKUuNp4YqLogMKpFwRUKBgynLcQIDAQABAoIBACLv9JdQMOrmGo/P oVM6H3hGaoYW4SVHluhIiBrzSKPPVUROkIz8aCIW2EOEZGYzWjNKpTWjhNon8BIF heoJx5tgGZI0iPbSFJ5ktqqrvz4JwIO4OxqrH4CY7L8kExdURYwCUM/GDG1E17Zv RXvrMocOS+T3IQqcO5js2XRrkqvu8bycO7zMaYQH7qxZ4nx2+puWP/Nt4sfqyzWN 4ZGGtZdrDENqKT7qF893Yp9dm/h8NGKumP8tAoDG3f1g0LaPYdH4J0ZG0wRSgQ0P B0AozVD9MYLu9X5EtzaClc9d2alv9buPis5UtYyk9CEwq4dkEq3VCKaGeOWyIWmI GADdTPkCgYEA8BhnlimbnXQUi8wXWH7n5cFc+ZbAos7V4tZijuA0XtN5HSzgXr+6 e0famYMn03wRKX4bfsPuLXmZ6WufIurVT/T65Vc8hftC64Sa72yQ+VVDlGs8bjAD T9uc04JsKPLY2T+0YMpIp/QtnO4h0xUjr/lStulfjK31LBqeWG+hsf0CgYEA8Wue P67Mfnl/tTm2iyGC1fhgnmdi0r3VGDYn5Iu5RxJz1yRm5s+fvA0VHZSbUFxEYWLB 1vkQgo00NOWiJUaqlrWuVh9kCjjL54FqGV0bUiFnOZ/zO/FJjtVikeJDuK8ZOfUq qifHueHa1dmzgM4Ecr0hre/HkWsXcoO86vdsj4UCgYEA7kvqk/mb//y0X8Qi76yV UU5Hj1l2vKB5XPjXPWN91xghPznJP4Ef/zfj2TV5k8ex6PLHK1wfy3bDsg8lFSzq pr9JPdMFuR0W4Fbux++DPFTKDEca5Wo1/07DKpJp84KEg6tcxiw/TKNnmjgnzi9P Clt1IyIhuaj2i92nh7LUU6kCgYA70PxerwK/+36m+mu+QUlXlrjpxpf3u01HOHPd 7rizYWEOV1ifq6XaRCuNLrrkyFexAXUhvIhYsH/U82ifb8jomo9di12QIs5yx9/v 9N/GE7ytzHHJ0lj1aO2JU9SPt+K6N4KgskaMSeecwNn2+hSkETR9EkISR8SBfR6b 4T4muQKBgQDbyHyvSM5P5nVtJtmPT3JSnxdHmybGPJI83+8tqlH9cEU2mtf7VHft vZdccM495ftwFBdwXEdr2sEDUPlJVsJ4ib/7KAThHprVh9MDbUrXKO1ftTHSpslO 9wqDcl3BjwDw7I3YIYKdktxVA+a20QqC4eYQywQRLy2WpX+xG6d+Ug== -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEApGSasY9yGqpH2NmU2OA6x9UC07mYIWRC9GE8KCwhpNRoeqYn Jp6aFsG64KR7JusD2yn6cNXS8mMMR/IYF5UhgWJygSeuLUxfCCEoEOxADvDdOce1 iSp/02/Kz024W4A4Uh/Nk5piOVLIlIKJRZug6QG/TaFG4atxGSkz+XDjEua601K8 DaS4x6HditIpD+AJnLoEiH4AFs5md8PXidSPb/x8afupKQoN0t2Qc2Q93eLe6VBU LxNirit37YeAnQ+jPcGnMl1Iovb1u1tAOMXAzEgryMhVGMgTjQCpkf1EDr9VaMgL zVjW6zwLnYErYC5jfRnnJJfZqTesYAZbk2S7DwIDAQABAoIBAASmDelnA9y0+Nqt EHAaPDSfSLSuepIwfagSuQeZHoteUrHjUYZve4Op04TIYNxXxj49oIxUFoShTP9N 1NQcBfpLoPM5j6mSmCBs9TNjcL05SZJXaOQyPxkLGYrHgHwycMdo7ybXRnjrgKp4 BqQtsnrc1a+t/gBdu0z5rXfO6qLH+17M+Mr82maIMN25/tmkaBXkPaW587Vr1yp1 es0k/HcRAwiP/pMbi9TuizsiMvltYzuynEyPaTermyTYsegF4IFKfttKIUwy6JXb xIGM0LQrGI0bZYlWghRaqmfqExV6umCX/4NhgbrLkWMks12ze6LNECy/AGcBBO+d 0w8ykT0CgYEA5i3sqI2g7wJ9ABtpdSbQJvORJ3qlj+DglXuvta3HdxWcT29XyiYS A2FLaL7EUkwMsTMrKunPZirA6ba0RHxNnRaS46T9kp3+4L4sQOtrsW8S0GmGZ1+n Jyxl5/cxHYcAVQ9z0KNPzb+6tPCKUcc+7eixuEEEToafocOvqV8+8zUCgYEAttV8 0tf/P+ux0feopR2F8nynIjp36HG0B+TqfntObY/8NxgfuDfFbAbQFkfITRc46kQP nxr9Wv4NDHRyf94rQxlReJsVYG4sXnbIZzvkmEA5BPsY1zYV8sFan/K0tqjVNebR H9bJXyQ5ymjqQVVaHnH0qsvpgjXxpAjStHmumbMCgYEAq3ZcSzatQj21RcYlqYoP FmTrpN/8wo++XDv1qL1Zz4B+nsGPQNtZIcFxPgaVEcTq03kNV/sxbqa8a5yY7kc2 PaVaKE94QKaG/X1MU9PKtjLKbgudfhXH2yt8ge4mXRt6iOJo4Gs3AEopV62zK7Xj T6+960YrYh9wfDzb9qwnpV0CgYBmZLOOZVdXFgm1PIzfQ+SDRBpaCgKjVCJuFV7a TPZEV9H5jPIeumU/NaWOBM+BlRLT6CATjAr9za/DHOgPAn6aCnDdKYVURv9kPAPK BPnl5nnId1OXG3w5Qt4dG9DnRzB5CnZt7V1Dgkc3O4CN7F4XFNzgVmjE+q8Enchb OJZ3DwKBgQDC6YklaqGS/yeMZFiPYu45q0vGMeJ3kEaqSDxJmLgW/FjUMeO5GDTr 5DkQOvS1suibQwdzYJBUU8fxYG+QUWKHX60KmYTZ9ygTHwLRL0aFaUjEzWE1lYIw wwicK2wMAyCIRYs/vHdWm0etllb2oqgLsJP98mUTEqJfWcoI5vPpAg== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBsr1XPcshGqrdkYq1MrSxT5q31gNqhW3sYFdoxzPoSClP2cJDX29Ja JJtnAnpyXHygBwYFK4EEACKhZANiAAR8CxY8OZ86/i1aTzucv4U4hjH/k0wbaiqr Bo3QBD2menJr0KtknDdR8V7rPkVhv804bTIXA7ULZ2bn4+/bGm4xo/MmlC9vKHvX 8BQpNNeYeKYKcsLuLGLX+nmI4GFIRZw= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDD7SKRGFYSxxz7/4HEP3i04LEt1d0U9ZtC9iKCxvTcw7BdHHYadQx8r ONAtKIghBIugBwYFK4EEACKhZANiAARwZvSKoaAfLnFdoJ+2iXqh4CVu/gBDS3Mh WSoW0dTdbCqwD+mzgOLppcPWqNpcth7Wj9x0Mtal7/7CYVOd6TtdZxxIsEGtlD/3 74T1g2rUYRQdB14ehWWfllhpK9S80Lc= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEApQVng169oL7A6DsGKah1rQJryYLz7FuM5E8Rnd6mfKiUzdeK uh5Bw4GXYg9F2cyFTq2JAviD9Ov3LbV/Kqo2r+PORpy9E7SyHt291Eo4bLbYNrIc R86XCDhbbRm5yXM1JXGvFHU4BGg/QmHOSuqgVmrwWA7ZjZQn/ai+jYCVo0c7X+L6 Jcl2hUQmyQKG2iO2raBcLgaTybEEwVwZUi5LWnWC15hEijfSsrNvQ5Db0TdjZkl4 AwAgaPZGKZTzydTPa7KOL3KHeC77vXWCuOmhlhgB27h2V7oMutxKSy840AA52s3q 6Sa/kmOQG9K91vUqKlcz14U+ztD8Cx53IghdHwIDAQABAoIBABK64s1b3v0UOZQC QwhOaRDagf5swR/WIk81lEPNZism/UDB0qqeTYuRtWt5XU3Ds2vDMZZnO578e2Ey RP1ENZHQMvT7zFAkxcTQGUAzrmTUegT3QVN7JNRXhTUEYvx0+ZbG6P7S8Sk65dc0 f7QsHkfAuofcI6A4rTNSyFIKQrG18NbSpF7ibFmHwmhscjcIacJte0m6Nk2BfxaX 5lEXqRTTB3MwNmquZdUVnE1SFJuHCJUUC05bBbHr+EOJwGgaByamaI763OEjc/K7 5zEeoFRtzTa1GcK0OHoKRgChGVp6dhoMoDKDbZDD21mr62civ4lB4JizkgAr+raC okWI6WUCgYEAw/sIJUctgBF9hPUiNgP5zSTed4QftI3cC509nZbSs1p8dzLg+rr9 QJvy81+xhmuUJTKTRqxNO/jy2kaBzmqe7LteNhCtSM7a6Je4/sPIxAenS+RqjNiP HiftOQsje6+xVaz5f9J6GT6SB53juHvvC5DTUv3G49aidfv/grwleAMCgYEA148i i/5mKcR1mlYBpHeRdWMiBo5IitJ1XRSqutDZ4CcQqY04xe7LUmu1Z/LdSc/+eYw5 Xx1iuDcroS3gXiU4+WWcfT2/R0y40sRG1YWGaQYDNn2VPUnBY/TWY9Vn4xERhpGB rMQOO3Xkff6En2oyKl6drYRevfUaK7xfv9tbgbUCgYAIK3LPewQejpwY6s8eSVQk hSDxAoT/1doScd+briniaCdAINLYIOtlwhqCor6Xx+xJEK6rB4vAsEQPbVkD7dXq MHVg85kFq/ncMFb559d6tIb41vDKJkzxCOEOu7Qi99QAqlFMTs3gN4eG4cIYcrIo XUUx9HpSDSSAnpysKoO1WQKBgHEs5J2N90PMs1ZR+9DHOmbgopfAkpPYhehWFoG5 b/tBZ30t+XXqt3PRu1AVclvzyY81sVWgDxnbVZvtg1TKxEwlLnGPPuOHg66dgPdQ gM6ZaoxsiTPBirkZborCHCZa6tG1idkUoshTUKFaRXWRgz89qBnXWwrvKkt2Putz l2rVAoGAcHY422Pah69hAQLQKDFWcQfuIBDRI0KRrmB93NBvzVZ/mjZDxtFCp4ZE rFg8Yom4t+v7vlLJqkjym+0MT/ASfmG91vPthUJeNynZmyeTHXcNWnExmFWOeoy5 zK1z+5JF9fEFFnGM6siZbWdu1qjGHYynDocPUI4UlpvB9Pn9zmo= -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIGKtsQ5qDo2s67CYCWZekQHdI8xeNWMuGxJvx+m3JDJ/oAoGCCqGSM49 AwEHoUQDQgAEur7ns5NNm5HQI8utNAX2HSD17LwtuX1WU2zGLm4bk/cIBd4u6ndT p3gDNhUNmoEXA3U1dqAV/2cetyu6qSq5Ow== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAuy1e69qs3uUE7QToV+SkkN5JbpAuXBVyN+H1wfP9tL69wvuf WZr79hQHR0F1u7U82SS5TC9yht/NQzE5QFN3OU13SjdGDsYNPTS5FFFmBAKOF2vb cFsMuAe+ODCVhi178wx6OzR4wMPf+fve7nTrFG0ddtNPvfWSL5SjKRgDaSthgCR6 rtrnHJMxuOMrM8sxWiX89lB6x8NfPzIaGAd8uH2FygJhv2mTgRdX57efD6mHrMQg +8jKXLxcdtP9Y25zgbQdDGqDaLx+bH+zY8kT9pu6kvn6Zou2hBSVl6nwDzbNhs/c DfQcVq8AnbKeenP1UXAbT8f9XeVYdkOvyCC8dQIDAQABAoIBAB9Y6yF9Yz/GI7PN Q1s6+dugOrSXVYhK+DDHOUklA3uiiTXPPcH8PI/bDVf/7MeFxB3KsnTBqoDPmPkU lJXDFL/GS0Dk7mj5fsyeGJQASOFJi0H9aIgR25izhUY0TspksjJDh/ID6OhBtbBQ YCbX8mnel1Vn8N4rszKgRk4SzTluxss5SUlBI8FkVpLfovIAkaFPreniCb13Hm91 elJ4eVvRE5wE0BcrM6x+y9hwpvcZpNXSbHk/JJLC6B4xo4MQjRXCS3HUUu8QTH8t 2YbfViwnuauTQ6IfiHVxomw//g/rUtWHju9sci82WARqHcbNnRH5FEdtyUY9yDl4 OI/o+7kCgYEAzwYUfwYCZdxt2Co0EMKGjcPcgwo9N+dIKt8OrOM8w5HCyse8Efv4 k5RdlY6gXpM6fS0fCsc51U0DKdYxRCZs5pxLB3LtnwbKJf4jE5ETAETgnJnIfr4X 5BBC8BPuOUOOM1974CUSOPuPyO89hdIsuQ5ydywddqQ13eq7ZfHebF0CgYEA53VU 419Rbb65Tq7xNUkKGp5qAhlHT+FIjX1NKheZw5aAD3ImlpNzc9Fa/bVSBPCA+pGr G/BnDcmJJCQOLdA/+tPHvZy2ROsEahaG0xWaLKO+oaYRS/N7efAU/IiplvjIJeLc z2PhEzgfl1blO/7LwSYkIzt+/KzGM/pRSJSJTvkCgYEAltFXHTLDjHGJlHEqfQs5 +w01GEHdV1ymtpTJnCnvmooV3qSj3nYyIVF02/+L1VpswcSdWLzK5Rm1tETWn09f BqHWBxczBSdtHUCHTTnjHc8P0wY1ih/yR7OREFV0t0L/1W06UZCwNdMObNPdfiAf dLGRsj/xNv1qQMFAxIPwBgECgYEAzT0kfc3qxbbGWLgV2RsgI4RvGddSfcmVbSk7 wGRXC7ErcwbUotazHHL7DVe4F/svU4DRyp98siQQQITcMdGkugUK697HXQtMycmZ 2hkgsg6snmhElCWeSv0RjvCb+Ow3hijJhfjZ/xHYKXl7IZ0JDgeFKdy6+NE3m6WO aB6WNvkCgYADli8of2kVkp0zxOQb1ELPHdy1E/fOewk3f+SyK6eXePuRlP+Ul6rZ cz0450vRQevytgJVTaDC3aYhHFFfKo7WtFNsdYW/GSj/ISk0uemGMs7m/EJMVOhq HC7Jjc3lesAN2zRgTRsr7ahV18NvjhjHvCUQuIobiSlXZysEaSf36A== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBwGN/KGjZdu+0MHjCHWwCfkE90EHtIItdaOMFyosIr9f/hj0XKTDi2 LkUjePmKLtygBwYFK4EEACKhZANiAATig7sMLVXHnvjAJ5ROyeSzlXeTqCcV1Aq1 RUALiL9b1yEOjtRIySoWeVnauxpicJQVbD+DZ/ptM6mTNIHAgTOxz6nW0TqxVuic cjPzybyu89rgcfPMPzHLW9RM+ceYW1w= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIKHCi3RKnjq25CDrEm/dOS5f4DUWvyMPOuVnH9+J04qPoAoGCCqGSM49 AwEHoUQDQgAEfyKQMSDYppzVjCcve+KRgHovKWKpc2GAAJ/MO2aLgtz3eG+AiFX6 GJ13B34YgIoXiLBn/zlCUedSExbv7Pyz4w== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCJo17xe44V57VgtYTigB9xnio/dmbCljP8PYWNpDNh1CDCHlLcfIma f2mmIzGGAcmgBwYFK4EEACKhZANiAARtduYarI6lVgsHPYVyTgbtoqGeD1VYidpB h8FnhcNT+leo4hgKtSVSMTvbRF3YmZxevTXjwUY3oLTpAk8Ol2Dz6Tb3uXMuNEny K4ij4UsllXwAGEqk9+Fw+KaRth8N+I4= -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAqNKPVGUi9w7ZZX8/qveN5PZZfl/XI0AmRPo3uPPR4gpZPg6v HxNhJ8hcLxKXpSLD7ylr30cby+bS05Xtr9HITTnE8UzB3DuxtQ6aCeZa9MnCXNcR DJrc3iqn6BsOzu1XFwgaMvpretiwhSxUZvrzylwzUxu5yKZ3E864HMiMhHG+uY8B +M56hgMZkxPnBDUBW109rjYeVwTzrmYC+CNIfXN+p5W7jpoWk4bh/Z5z7awk//GW eUvio5DlR5JfRQz7njGOlwI/GOkaSaAIPI/gBGuYFJynZOLohDz721P50UJlbn0u WhKC6o5ARCZx+nTJZPg+3hXh9mkEEwNMbMK8zwIDAQABAoIBAEohu8KJbqMiKCBD kkeW0P4blwzBNQ1LnAJqBZH3rtAdTzbK5+czcVQwzRn2hhSDgZpBjBbNeM0+nJFA otCzw8r1dR+oXvBAXjZtJQL33jTja6+s2NW6IwaDoJtxVj1TRwzcB/UetZeKE2lH IADgbbEMb5Us9ZXAU0WlXn91KQ7203626BlPkjeTg+AJm9kNkAcsRWM+UAt5WsOS Ke6Edq53HwgbFCVqVeNz7Xpoy3ITacMTFWhVQxPibCtueC5XtgDD5cZ929IMPo9c QTmZPoFsMwz0QF6054Lj+beVBTqUkSMDdoAtp086/EI7XfUgAkTI3uCpND9simle z1gyfPECgYEAtt4F8tdqrBoY9CCDDYgcIrzt1bjvN81UlFewsDYEWey5P3rvluXL /YtJ9p73VUQJZjwxNCHZCI3vmnTSnNR2klMU45R22mwD7gbHk+tf2weOPbE5AM0M v6pe0JeUqu+VaPPj8zIIqx1XGuGl9qD4GmWbq/K3+kpoLyL4WZTQ+70CgYEA7Fah Wtk7I7QB9L0dwhnbw7GqPLYsc3ujnSfNT3qGXDkbVrgh4ULkTr8HMvEAjusePIuY K96fGrFKioSDxT5dDIHW0HUSH+CB5ENRkqKLF7LGbv+IUySgSQ4kuWLSf3AP1m1J CCtmTyyA3DdBIAWnh9TmuhUWO7Z1IqtAHuLQ/XsCgYAd65fnku2GOULp9sPam/GW kXkMphSl+bekCfED8+KkYAIza8b11qWY14iDjKEFV3t+Oc0HLZ6YMrkIeaLYPD8m U+ewEOOde1ztPji7cCCf8s2INI4SHnq+hX67/IE7srWslXMvoHkgnk1ZPaBtCQtv Lj7ZVH5bun7vb3ZZGetTtQKBgGjKxMLmnV1oXJGrJT3Cf3pXFbfTwwP1p4dwdY2v M1JDFAcwn/0kztzHwSZqTCgSwpZwAyo4jO2l/PpMZa0YyONZ0ukdb8ronk+bNdlB 71CzuV7QOR88l0GtXsVAtztAchVO4doYfEXQ4tZCPcM4Hp+Q3DlYTkJt1aRosIbB ZY9vAoGAGrCX5p4LniKBetGsLTYnXfvv3jbcM8DQGM2gCjOQ2EPeLNxEb09F9NJV i2++DhW4JXpDy7jbvJottWOZCHSbQ0D6jFgqjoSicIZFmh1UpT+3EguzqcfQJ/zy qoE05W7PLJ6vdbEul4s87ddMGp31YMwu9WQi3OtrW3BUQa9RC/c= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAtUUh6pUIIdBl20G3jd8ygPWy2qw+1+YKTW3fuwcE963x6qnL 6+LbzeCZVhl7mdKi9FSbWtKbscTy0mGgN4/W6F3KnAMJ/GVqLU4uKyIjlyq6dTBG xKs0JmRHZHU1VeGPg2eIi/o46jke70uL8G6D/Tpu3txpggOOf6DOafeSBIW7eepf IPwhGz5aMjI8hPyGTiJsmBs16MLKiSiQiEDAA3i9aEYx3bMn1YJkHJo+iRHY5aX2 djVPxvBTtQlNg17Wf6RQ18CS44zv3/rZ0G8rf0vDFJzhZR2dxSf97XytQ2V4b+UT yEX/aF1gLzI31apxjd5FHleBF1MMtpQIkiMPCQIDAQABAoIBABbhYEfUImfkPmsX xzO+68jH2pjL+420YXIHD6Gzn96kg9/nKVB/vNdmhWxPAKE4q210PXzQDyt37N99 x6OjwhBoAFJDdu/3HBkWYHD82Om0kL8IhjI+WvGKoFFPkxkhRMRlHeDvR15XMe6q BkKlrH7a8JIsV5v713GIKm3JPFLaGLqTgy4PAa3ZbajgjMfCh9UiWe+RvNWUgIA0 QmTSnarxMAG99hQ94pPF7iBVARdH5e0ysV7P8lwk8DXMeycG0AZFZ9fApZyMOlAA FurGMPvo9rKn1qqSUF62kWNwl4pcKtZ9f62QHrRqM75Din8x8qxUk1qNQbX1pzOB GDpLxgUCgYEAvwPWxFEGNiZxz/rgNUaguwuJw6a8SRKRCGb8L2KK05mDu3QGaoy7 6mghgIr28rlKtoTRDoQ1hCR5qhFQ+gxnTk2QN3P5XMMCTIWQ/IB3yUG69j+1Qc9C /DLQvccD7N2TzV2kTHM53TpZyRhw4nvIuT3rUplU90XHc9HvQn52nT0CgYEA8vCS epY1QjUkUgHWedSEu9nrsiTuPDaXUsfG/p4lz+UDj9zugo3JANQVRAWnTl8T2lLD O7ffCGtMnj5m4hk08caiHFcdDe/GOQsxUcb8Cn7NnXTCcj5IZsGfLPaHJHdAShJA F7T9JZ8auc33mS3kenLdZRinZEvpz1bYA7f2bb0CgYEAsS6nbezWfS5GDizhAqoj 97ypKoIkTwfY3llg/bdDnSneJuhl9znaKYIz6V992AKGSi2DGhsK5StMa7OqUHdm 8BxEdRuvqBr/q+mNZproAhhli3vm70eJFBUyyYasnm+eZTXCbGPJvesdU8rHE17M /v9vpGu0g7YHX+jRLfXOouUCgYAurWp3g0TYY72GxDOhVOPr9AMFR3M+vn50uU3S vjAlsartiVWKYBOuxREQ8MUkmcAGwsAgSUPhKjyeav75kj5J9hBPwa0jcF51t2DS hZkHqzV2e2ig6raeh7U9vmBY8VC46qjF5VB+WgOYj6pzFA5COK+xLPt8mdlirRz0 GfSPQQKBgGIZ2YXz9morXv03MYdb37xS/y1Y3hb3MkO8cz6KknyLhs1gzH8c0WWA nJHaHuDoMFPMd9BpyYTekSOVU4z40IIPG1h60oiwGmmAwrvFEkbwEOb4kfYe3NOP 8FIo5WRlhr8Mg/Y/VyH+DPV6eJvhbwQAqNljS7B4a2NYeeDMIsp6 -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAq/eNlOeb/wx0G8wdT6is1A2gLlKWXq1BsQjG2VW6UPD7u1qO UTf2ZEAxGnAcfDVJp7iIrdW7azUeMHMfe9yXLo9kf2YDh6SspHVU2eaWZqCY/r7Q N64VNkr5xv7tuuYb1pBU7hrnZzL/SEbhwlPxS4oaLruG+tlPgfbHHRt0wsCQ++AB mxy+pkcKX6SaX2s7/DoY6OM9eoxOS6aF6fm5J69owpsWuoY/NoUasfTe6CK1QWIl SsbKTyZTKq8/HTHse0I8IQoHTSvAlX493UnKHlio2i3PtPlkoxF4ttOcSPh5Um0/ 9Vv7IbVYQNBtAe8nCtasr5LPn/UKILSLm/GWWwIDAQABAoIBAAn/pkVCpDDTpgqZ txiTG51mv2oCFkkh9MBY3Mr1L5SWNmTB0qWJRfO1QcWiQB2+sW4ljhjhZPjKSVuS zgFTJZ0o7DR2F31zBzC2u7zBqfwEmXCyYoPiRMx31ocJ+oOT7olusel4Of0nm201 5dl5LP3x5SzTbXk3WmaZlSEtn//UvwaHQOsDupKzWO6WNrnY4kGRJvTL4shW0eBk 7RNjDIzYEtUWYGtqjgT4s8gfweV6e2dlX24TxJMWT4hlxbiTaTZBSSyePE1lz9OH a91lDqOjcK7sAssr6yWLtNY/EOmFE5ZjfjO8zjGmg7lF+g5sJ7sDo7/sNJ0/0nNS bVvjNakCgYEAxOjKFwhZxFXBin+h0RscOE3rY7kXMNbig3Sj4WE5nZ08okEnWX/r j0Bkdb8fM5dKWBFmGwK9t8Rp2WvpjyP1x9eUbUOYlinE3fZfjvZ2sA8wSXsZtQ3+ LayEZBObH1241Vz0aCBBquYu1yPXQEVoGF8nJoM7DB8iPMDLB01pdMMCgYEA35Kd BkSm2xzlmHfmv/3Tl7ixf5ykzy9/UX5PCBP6dcZELBvbkde/GtBbHCR652Ub4/91 wOM24YIcZ47q5hDf2SX657IMkoTo+DtFBKOlpn3enim47C7guSptE250gVBK0bZy /foNhQqI/6HyvJTgIaNuTjStLyIRAAVTDH+r3okCgYByc9DLVHpA6Yumggs/bN+Z Rok0nKgDJlPhDtIWtZl0qKlOsko59mWoDUiXPDDZnu2ChRJxTsWRZCQWUWgfYEqD DyZh4DF3zu10Crl+cnmIWju56kiF+Y0tZSJKvS6kK6i8s9wIDf+9YzAEsvtxiyY3 TE+ITizrHcmbwIACTZenWwKBgBrEDLSBZ5B35yzXvfJiSwCxBd8HO9vqDc4N1xxa d/O9ps+5DhJpx+FH7IB0BZrKSgqDvO84xIs+7nOfcpPUlVgD6gPvFv47l0CQp/Sk OuKx0wMQb6km+5RvdduLr7sDh9GPjDjHxPKWjkw8cTkOgb7FOCF4wPsRkwNzn7ux VTwxAoGADoconRhDh5R0p9txakbXybwuq+fdBwa5RRz4BYtZB7P2DwmYU7Dvawfd c51M5Q9dLE1faK31rJYr5RpvO+LmpP5E1Z6w/S9wQWve5DAzNw+cthDbAD6ixlJ7 VtuYcqAYvn/Kt4dXK9SChWNBEX6Z9zvickCiDMJxFV0HzahMCBY= -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAs2CGaF68aSPpfAvF7rlfcg8yZmqZX9VrsDe34Cm7lVxsWwiN Z/yuCfM7gmAvRcdWJePX8XAamGes6UiZ+NNAyRsfIqUJyQmb2WYOCABrm0cRM4PH S3OmAf1HJBe1CFebyPqrO+4lGuAbKdpIp19omoAY7kZYZZ+oNzxHivG1SgL7eh5X pI/o8nUzhsBWanfbU4Gp/AQulXmGrzwzYDkCPVhBUqeEIrCk1X5BvamnwhGynoPL Ju0GSmCMjveya/PUyhiOMJf5IqXKItWPxLUeYEqiIMke8iUQ/v0iP6kYEZTdb7Jq diBhwqYZapgJjYpRUb8aShhy9yViZMnSAS47PwIDAQABAoIBACz1CMrYz50EaKzz 4HBkGoViRK4Bkp4/xcU9OcMfgom9R9ULEDHbVR1eTnBvPfndq3xEnic/gxLmjSJM 1XZVMBwXRZbvyUOPOnXiy6p6vH2G8ss4AHerLRS7j5x+qptEJeHZ3ZfgKIGTYIt9 T49PbM6oQ1dY3yfdO5JYc8/ho5/AMnLXCYCx/45QP1s53nOttohSzY2pnLz3GGg4 w+5y7qazDhODQOXpEu+4EudpK6T5EQfBWkiKu2aqsisGuK6O+D5oSsoh5usn2hgm Em9PhXkF33GGAZVJOt8e8lVVsUWpLqR8fTcRzCAfnJB+P6YLmnEjf3CF0YvUgi1T DvejAqkCgYEAvp8tpgrzgrq7I9hes75fvPY1zitCyJmeWArhXnIkgnfsIray3OZb 6YZOP0J1qKn5GgufEoGwKQcLzMMAKMwKu5O3QcoxxJTo+JO1cOzEPBwtExi7bvpa FX92VNVqDp/oD/GXbB3pF6MSKqhSu2JtgMaSdeWtgj3nI3V7OxjlHGcCgYEA8OYL jNCIx+8d7j4rfxD+CG9ezAchehSD28bRyy2L4/PvIo0g8t6hmhOQoVZBqAP8ypcs agCnhlQbe5dOIKTdR6q/smaPVa4GzJZYxcYqlbeTTtAcKidk3RXYDuim95/REMPP RKRl1yhxPIFwF9snp5DHP9OL2Rv2A75bY3Dgo2kCgYBklqzI/Oho6M6N6MR4hxIQ LcBQzgVMw7uJ7Bvm8caQTmX+H3idFrYTsbqiqRhba242r0E+y87Ap6YzZAc2gA19 1EIU5nSCrq2NVqydLWOT8K5ccGWf914IEB3KQF/Z3cngd/UWqWXyAiw49F/L3/G2 zZJFwnBf1PiefoULt2RXKwKBgGTd3f4zHuKgU6b67xmAUu3TPB0v6yuDxYZTpGpv gsCK1hlggGhRIdcy0/9J76nbKZDmZZlo9rw/IVbJjtQKVAD7FNMtMF0OxhgJ59e/ 1vrjZ9G7P9/CqPANgm8TqT3L9C0R4Ap8z4ucinVsOTQz9lGqRFOMT2Uz2PnOTdPA Yr7pAoGBALdbj2/DNjk45tRh846sBzkPYX1eNp9Xd5psb+4soDv7y9IdQpJcpA8S t/JEeS+myohvALxvKdnbO1oG7xQgkbA/QH6m0ZLLmFSoihT3zJvJZJunMQneeZol 0RfcVnRU3SSRnXnEbUuUwfPeIYv6JFUqHEc2jORFHXSiJCTbDQhK -----END RSA PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAxpDOKGgP/Zyen5FX2YyyJxL58zzbNTFtGUp7zEjU66N2utk0 AqBByCaEzd13Gta623MAlVEBXob/uNRXf4yzumZEH/Tt4NU9Upk5y9ss9jFHTX+v u+YRjC1QJ+vGRR4rWkCCjPRxk2oLzXUcuncExtXfV0ZQz+tLRohp5Wp/hkpsUtvb omBJ5dZ3pVlIobhSrsReLe4cpOWpRvyVInJ1jp21FFsBmXfztkK4D4sesod+BfTg BBDxP1p+vfPPSvwcMs4wwXHvhHmKczwuKEGZduXK5m8o1XDMRzB2GWgNHl1LlDlR b8NoJTF7WI7Vcak5CB+SyjTNCHu0K5rF1g8r8QIDAQABAoIBADyxIwpPsF+MwSE1 vBvXONbfon154uix2E5sKUXKFyaFGrPG0vJgiGrEd0AzSoXuD0QnNQzuqxP5AG2+ nZXzbDXzryvzYcggdXNrOTK5pdcEPe6OsiilDEUDzqW9F6elrouR/zVVO+faeIwO mT7XRSL/WRokeGvs19/Rr0h7kkn5p65E1LNOS4Oup2GgKmL124AseQIMMktmqcf+ K+7e5DWronJTYNK4BTRyUABxI5ArCjuOiRF0EovZCnZ106LCkBtmqbgCLJ5ZUwqA FfcHGzq1RS1s+mKuv6nVpTSw29zRr3nL6P8M/H5uzTINBj7GVyst1lZOJCvMuH03 e9GFxwcCgYEAyBtUCovCH11X3U3TtYoFGP23dNSgjhQR8L70GqtOUrY8KsAyggvC CbYu36akiTW0OxAKBpcnPoaFYJVKPg00B4OrNB6uXFdhH6kPixDnRDWodY0zVh79 bh88H0HXFagzD8k8+Sqm+xqDaHDNVDpe3pOgFxRBYpx7I35HkFNC2IMCgYEA/gdH rMqxU1IH7Z5LzZJYbMQWHfnhIm13Nh3/xrdJG3UqngrN0RgjRbwRt9mMDsIdy4gO 5LKKzr4uBFsz/CMwxNEYgX4/MWdIadIaR3vQhJtMoeJ8zgU6/2yY+1cbyzCY3XpJ 5vBFpzrBCz7i4Cdg30hMeODQl0LE8yJMrzhPN3sCgYEAhKrpqxxBlX3TVRvWMtPQ 0WLVEJYv5EKWKmDPgib1BI1hko5ebi3RdZLdvNXE3FtIpKfbncb089VH9GLGGCG0 zw6SoTl+LCaac90oOvD4Axb4GweEc6KUL0ById8K9IbRY7PtwtxuXKiVWtb+qssQ PsztJJ//QZuxYDTGyX8KIHUCgYBqG8Jds+D0K8yx/bAuM1YKQLH4XXsj9VOZYFiJ ud+ov31IvLyR/aImK9O+1vlA5OarMK7/6nA+wYPZP/tr84sYezrgRErDKSA/S4q8 l0RXT8Nnz4JQUDD/pm4UdqNecXM4+C7Mb0q4+rrOJrt/5BL70WhYCZg3xqUb5hTg EAZO5wKBgQDG5JntmdBRMD5zjpw+kLnVrZNmwuVQZeiBJSzf4mcxGSdS/QWFAFu2 rzUdDHuXC7rtyex3gDprVqMd/RZGLzD/zSiX/trqXZynw4lCjbYH1lmMKU+bbzkq h+k74e+dCxOU+Piek+w0jnAaOICxKV29x/TsFSQAx+wgiZgQCIwxkg== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIIaPBsFYJhdVeN1wrcwY7DP0aoWRii/p4hM6G107ZbLHoAoGCCqGSM49 AwEHoUQDQgAEwGTN1UtFfaK+oDbqIlUTHZZmE9Lcg07WoucAGVvaUS97WcrJqihW yl3B1rUNknaRpAIGsS01+5hLU5wWB+2zAA== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDCEB1w4xKkw00sNoGecqsNxZDsnhaUUdCjL1B6KIP62VUFICjqG/knJ 5oNi8g96OsagBwYFK4EEACKhZANiAATYKJCs1t1sAEu74/ZENrXSHEuV/krI/9lh Vdtarc6nnyq5URchkpUZOogYo1lZNQkVFChAHfuTSgS6Xe0z2z4zfH/CRaqatJ17 t8y386Ru4bdr/6g8ZPnTj9XfXGNqR+I= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIM3MPU+8jP/xLjbm08itwR7b2q+j9SXVpuomhm3H7E7PoAoGCCqGSM49 AwEHoUQDQgAEKiDiwnL4slzeInGvnN6864zoK9CxSokSEcbv9t6qxdCA5QexbvQp OiPkOBCa6m4s7CczJpxGK+iD7bFgaG+hKQ== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA2UqFKu976NOMTmJ/yb70D8L3PEoRz2X6XFZvu1YeklAPZK0r IpNfHFKTRaL8d3qwmp+AMzkwEBPQOpb3n9EyhNaGqXlQvRf2YtLVDWfh98T50mRB zg7Wu2PplRNM/USlgBcoyuv3V8fenkIEFTa1JPEV/591tRHb3lZjV32+q/1o5bpi RSHBcdIanhEcNRyzggGRyEKNMNxN8jJgRcycvWI6uIFZUJbV/Bns2Ucj38cgQpre C2Pl9iYvAAhvEQ8rZKifjzd3v8smAcuhFsZ2uEaTT3ptAEw7wOTVES9ysXum3bqQ LpHYcFkB5lHgHZpPxscuSqEGy0JknPSbGCUVhQIDAQABAoIBAAFYLjHBUJV0taII hvzjExSD4s67MJgFbAKlQES6+C50k1vOnH02xzhgJGwiYYiFuFEEmqD2gh8fWEL8 iySwgS0EPMoQp5i77LjY0BuooGPNkrQkDaouOlLnf9r9xxSsF5AO1KBIzHt9D5oQ E4FkGMPVQAsYW/yWUzNxemTgsMzUniXZcD1Te3jXrWwlhCsxjy9fAANDEhvDLFw0 orEIqxzhaXA8rftmZtm/NQY2z4bCcmWFQlPP5tLnXYA11O4dinptz7zi8Er0f8XX Q2GJxJL3veKvs1wbQGofP6l76smnTK/jzO5VHzRsZHbQDerMVjde4o0j5nXqMOkK H10OcYMCgYEA6mMAk/Z5zSK/5KwXtoJ11s6TNzCFM9jW/3qmni1kgWmgDj27Y1g3 vIBnq928txICEtfQOsO4P5BRjVIyiW/VOcniuYOlPRq74Qo4AKJAuzGtZC71JO2c zvHEErPx/6Aj7UwOZkEJ4RINYUrkPMRYw8sO6z2Fu9Bzu6pfhUbpgv8CgYEA7VP0 JZP2DLmrdD3FbhaSa70Zg8dZ/3x1mp4PIzYqxrMSdzJppl+qYk6FQkuBwBf3dZr9 PUblA6Pla/gfCphn+JFvnkP2fuT0S2Gdlnq92V1c/FnqlETOB+CzrWI9l/SQA1BW u628Bs6b4D2qak6tzxZ8psijmB4QvkRRR5Qd23sCgYEArgjw5uy+p/jDb3Hw8Y2R HfypBvO6FDNQAMb7bLvbwtPBCpH/z9YzHH5jfBPbCjwO2hrw/JFS/6+TPlHoQHCP bKdg98quKN7u3jwONTpEwjoyuw66676bDnYp1pFSgTJROuOcVYS5ZytWUAWhzxUj q83cuAMoh7pSFOh+oKF0xdUCgYEAgV3eHA3HdbBP8ZEqaZQMRIZTvi2QtV+Wi63U +pCwSJecXTUxuesz6Vp78WNPWvK1hXnyyNA4Tf+tM2mRIilpo2lDurW5S/pp4B1Z 1Ykaq73kzfoFkMTguhKWXtDKWmaJigTlAnD1qZA+D8INft1ciSHs2M1Nv8HDxrNe yvHGRLkCgYBB9aGuRU1rN/BiETdIv0Hr0Za5nxpzu0daw+sih+iB7s2a+w+lqdqi XXxJuHgixrA+4JadWp/78hCzFDv6MI6t718WJ1vUi5lMRCito05XRTc8yg4UpVLY rN0oaanr1dWVo53h6A9Gf4HKJjeTNNoJyduRvxz85dMsVzblvPsqtA== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIKkt2FxeKUfEURxAMkJjufA9USUoUgXjBAXToAuOWe6soAoGCCqGSM49 AwEHoUQDQgAExa5y8pRM0uTjOrkLvZxi+gxpAuJ2F23YXUVS243gz09qvtI5WAg9 dVVn9Be6Ll6mezTO6Z25yA45wGRw8i3ewA== -----END EC PRIVATE KEY----- - | -----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAqxAZ89DX+yPnG7zHgWJQIUEGo6trw73HGeka7/y7mWjiIDlH ybHocs7tFHaC5e772Hy6WDVzu+yvvTLBwD2OslyuMbyaFDNMMpxqGvAAVQSsRYGu WBOToLz7uSZDafQq45BScS7vjdm4EpDG9XTo465Pqe0DFgU0Ni/EhixYu6YXy8Jm lKP4OIm8EOfOkVOFNmSfztxjGHKcZyZMyH+Nlz7IbsTrVKd1bgNZNFJY8ju9g0xu F5OV6V9tGnoyJ6EnPTXQjkb5R8NmjOvcbqYV5M1tAHDlMWMAc+dBntNciatcmeaV ioJb07qAwOWZTk3b8s+gYfZNj9g+yMhaKpixuwIDAQABAoIBAD1KGpJR3GB935r/ i1efGuifPLq9e3H5d/GfpGgh3DE98+7ptv/b/1XLMARp5cJuWsuY/McH97x4NAsM uYCgTZU4Qa1OTsI4Eu/7PMUEAopzjymkKgwij31C2MngnLzEn+1C01b8IxZm0F3O g4qEZcDVvnM6mSV1ndxgRwBvuScZ6BDXkr5tOWC9AuWFb084ua9TZYcU5o+wAvks 504TY8/Vyu33s8e81FG2HZLGuELJBDKAx/BpTLubJViIbCVb81/zkQLH/IyQpJuE tuJkeYx/25HHKH8GOZISX6+1vzmw9hP5yMy8X84qbKisWlnD3FrT+w2uI4/5++0h qWVG+1kCgYEA4FrBY2+La7hvMKl4bEbzCwF0yUpCNqHUn9HUWhTLLSVmNbB1sjGn XYwAjQb/sEc0SlednusFnG0ir5E01Vj0blFxeKsdDHA4t8rUusn7srwWyATB/bL8 zousnCDTKfuf3nvPVTkvmk7/Ab7gdY7sQ87og85K6WGG1W4oMLWFVA8CgYEAwzEI TLQgEA96MhBPZecqE0P1o8BEPp7RrcR/C9JHQWn3xIP/Ej4x/jwERCuecPZJGsHU 1QbL/zXJfcV6CSIvr20PPlE+4w50hus+V9O/z66fo7u7hruQnB2K5uJR+jIGveAq oJdkLA/jd2LSmIAcs1WU3W8Db8051KTBeVnb65UCgYEAif9oynfW4whL5DupZbhy UEeyBQoXFjGObkuLeWkm2/sQFmAW1Odz0beGszgl19DEWiHwQsq+5cu/NQx02fHg T2brC9T8hiUUzgAFv2rz1amZvagnhpwsogMJxfLuz/kFCb1P91S4cgq7EeDNgaHK s562KDSgoVKqs+cQ830DqIMCgYBaxhzD/yjCD1CWo7so+t44Y2yDINEcBiQhGbaz urDknPFa9L/UrhP11dduFJL0mbTZurbN8wE/yLXRxdrBEKL4hFGIe6QxV/GdJR2z HoiffuhC7vWA7Q2NbLfCNBJHtqgn+W4ZjQ5K54CzbsPdpAa05+H5ML16awiv+Yb4 dm+uGQKBgQCUtL1fBLNoCGfer5Q22wOCXf3MXG18jFYmbFdimH6cQ3GAwzfWEDPK MBa8NhqzFpgrLDIGwk3HSnUVe7Wq2Rl7q3EaFatKwFaYwZ9rvIL29kBWV+1/ifPS bJNVmfJ1xNs7d1F8vERYGzRPpDOk8P5Scha6gkt4vv9GWK8cTFgbNA== -----END RSA PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MHcCAQEEIPPb7G6vJlVPw3kJrOvNbMQRrqQzv1di0hs7HHot1ty+oAoGCCqGSM49 AwEHoUQDQgAEGFhswvuBlM/IsSolJ4goQJtw9URf44JLbNu8IxBmLcPbV2oOpfhl wLrk/QBBQzp6ahOdJFAs2ijfea8R0zrFUA== -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDAcbxQvx9uHedCeXhd8g36Q8s/pQvCfs0Cu+2/JeLI3qHaSgr6/hNqt yMxvjoXitm2gBwYFK4EEACKhZANiAATvTlaB899L9caUI4fsVA50W37vLRvtenSI SKLsrZAhkVCSierMMSGDWYM7UDr8pwDOoEuwe55n4zWBN9WI7y3hBixQv1dDrAFn aOU3WD0FQqjKwnfwwHsD3d9lR9Ho3yM= -----END EC PRIVATE KEY----- - | -----BEGIN EC PRIVATE KEY----- MIGkAgEBBDBWME+7YJjaoiBJNXCE5kkCnaiP/262qcdQ8p31HPfeaLXGoopPbvnh i8T4zLX5VwigBwYFK4EEACKhZANiAARzERqf0YHdcrfvgwPIotHCbJ50UhyRxOsF cYNQ38MexkE2JzMwV7jn3huyIOAoGzrXIIYFgR+0mSyfikQjN6ha6i0Kd2nqH46m Hu/x5hq4K+yr11+IKAT+jdRoVfqpcQk= -----END EC PRIVATE KEY----- acme-client-2.0.18/spec/http01_spec.rb000066400000000000000000000014351463311421000173720ustar00rootroot00000000000000# frozen_string_literal: true require 'spec_helper' describe Acme::Client::Resources::Challenges::HTTP01 do let(:private_key) { generate_private_key } let(:client) do Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) end let(:attributes) do { status: 'pending', url: 'https://example.com/foo/bar', token: 'example_token' } end let(:http01) do Acme::Client::Resources::Challenges::HTTP01.new(client, **attributes) end context 'file_content' do it 'match the key_authorization' do expect(http01.file_content).to eq(http01.key_authorization) end end context 'filename' do it 'returns the filename path for the http challenge' do expect(http01.filename).to eq('.well-known/acme-challenge/example_token') end end end acme-client-2.0.18/spec/jwk_spec.rb000066400000000000000000000067171463311421000170550ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::JWK do let(:private_key) { generate_key(key_class) } subject { described_class.new(private_key) } describe described_class::RSA do let(:key_class) { OpenSSL::PKey::RSA } describe '#to_json' do it 'returns a String' do expect(subject.to_json).to be_a(String) end end describe '#to_h' do it 'returns a Hash' do expect(subject.to_h).to be_a(Hash) end end describe '#sign' do let(:message) { 'hello, world' } it 'returns a String' do expect(subject.sign(message)).to be_a(String) end end describe '#jwa_alg' do it 'returns a String' do expect(subject.jwa_alg).to be_a(String) end end describe '#jwt' do it 'generates a valid JWT' do jws_s = subject.jws(header: { 'a-header' => 'header-value' }, payload: { 'some' => 'data' }) jws = JSON.parse(jws_s) header = JSON.parse(Base64.decode64(jws['protected'])) payload = JSON.parse(Base64.decode64(jws['payload'])) expect(header).to include('a-header' => 'header-value') expect(header['typ']).to eq('JWT') expect(header['alg']).to eq('RS256') expect(header['jwk']['kty']).to eq('RSA') expect(payload).to include('some' => 'data') end end end describe described_class::ECDSA do let(:key_class) { OpenSSL::PKey::EC } describe '#to_json' do it 'returns a String' do expect(subject.to_json).to be_a(String) end end describe '#to_h' do it 'returns a Hash' do expect(subject.to_h).to be_a(Hash) end end describe '#sign' do let(:message) { 'hello, world' } it 'returns a String' do expect(subject.sign(message)).to be_a(String) end it 'is not ASN.1 encoded' do expect { OpenSSL::ASN1.decode(subject.sign(message)) }.to raise_error(OpenSSL::ASN1::ASN1Error) end end describe '#jwa_alg' do it 'returns a String' do expect(subject.jwa_alg).to be_a(String) end end describe '#jwt' do it 'generates a valid JWT' do jws_s = subject.jws(header: { 'a-header' => 'header-value' }, payload: { 'some' => 'data' }) jws = JSON.parse(jws_s) header = JSON.parse(Base64.decode64(jws['protected'])) payload = JSON.parse(Base64.decode64(jws['payload'])) expect(header).to include('a-header' => 'header-value') expect(header['typ']).to eq('JWT') expect(%w(ES256 ES384 ES512)).to include(header['alg']) expect(header['jwk']['kty']).to eq('EC') expect(payload).to include('some' => 'data') end end describe 'key with leading zero bytes in the encoded public key x' do let(:private_key) { loop do key = OpenSSL::PKey::EC.generate('prime256v1') break key if key.public_key.to_bn.to_s(16)[2..3] == '00' end } it 'can be encoded correctly' do jws_s = subject.jws(header: { 'a-header' => 'header-value' }, payload: { 'some' => 'data' }) jws = JSON.parse(jws_s) b64_point_x = JSON.parse(Base64.urlsafe_decode64(jws['protected']))['jwk']['x'] hex_point_x = Base64.urlsafe_decode64(b64_point_x).unpack('H*').first expect(hex_point_x[0..1]).to eq('00') end end end def generate_key(klass) while k = generate_private_key return k if k.is_a?(klass) end end end acme-client-2.0.18/spec/order_spec.rb000066400000000000000000000065501463311421000173700ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::Resources::Order do let(:private_key) { generate_private_key } let(:unregistered_client) do client = Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client end let(:client) do client = Acme::Client.new(private_key: private_key, directory: DIRECTORY_URL) client.new_account(contact: 'mailto:info@example.com', terms_of_service_agreed: true) client end let(:order) do client.new_order(identifiers: [{ type: 'dns', value: 'example.com' }]) end context 'status' do it 'send the agreement for the terms', vcr: { cassette_name: 'order_status' } do expect(order.status).to eq('pending') end end context 'finalize' do let(:authorization) { order.authorizations.first } let(:challenge) { authorization.http01 } it 'call client finalize failure', vcr: { cassette_name: 'order_finalize_fail' } do csr = Acme::Client::CertificateRequest.new(names: %w[example.com]) expect { order.finalize(csr: csr) }.to raise_error(Acme::Client::Error::Unauthorized) end it 'call client finalize sucess', vcr: { cassette_name: 'order_finalize_sucess' } do serve_once(challenge.file_content) do challenge.request_validation end csr = Acme::Client::CertificateRequest.new(names: %w[example.com]) expect { order.finalize(csr: csr) }.not_to raise_error end end context 'certificate' do let(:authorization) { order.authorizations.first } let(:challenge) { authorization.http01 } let(:finalized_order) do serve_once(challenge.file_content) do challenge.request_validation end csr = Acme::Client::CertificateRequest.new(names: %w[example.com]) order.finalize(csr: csr) order.reload order end it 'call client certificate sucess', vcr: { cassette_name: 'order_certificate_download_sucess' } do certificate = finalized_order.certificate expect { OpenSSL::X509::Certificate.new(certificate) }.not_to raise_error end it 'call client certificate fail', vcr: { cassette_name: 'order_certificate_download_fail' } do expect { order.certificate }.to raise_error(Acme::Client::Error::CertificateNotReady) end it 'call client certificate with a force_chain', vcr: { cassette_name: 'order_certificate_download_preferred_chain' } do force_chain_name = 'Pebble Root CA 769220' expect { finalized_order.certificate(force_chain: force_chain_name) }.not_to raise_error end it 'call client certificate with an unmatched force_chain', vcr: { cassette_name: 'order_certificate_download_preferred_chain' } do force_chain_name = 'Fail Test CA' expect { finalized_order.certificate(force_chain: force_chain_name) }.to raise_error(Acme::Client::Error::ForcedChainNotFound) end end context 'reload' do it 'reload a update attributes', vcr: { cassette_name: 'order_reload' } do expect { order.reload }.not_to raise_error expect(order.url).not_to be_nil end end context 'authorizations' do it 'load authorizations', vcr: { cassette_name: 'order_authorizations' } do authorizations = order.authorizations expect(authorizations).to all(be_a(Acme::Client::Resources::Authorization)) end end end acme-client-2.0.18/spec/self_sign_certificate_spec.rb000066400000000000000000000025161463311421000225660ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::SelfSignCertificate do it 'generate a self sign certificate' do self_sign_certificate = Acme::Client::SelfSignCertificate.new(subject_alt_names: ['test.example.org']) expect(self_sign_certificate.certificate).to be_a(OpenSSL::X509::Certificate) expect(self_sign_certificate.private_key).to be_a(OpenSSL::PKey::RSA) end it 'generate a self sign certificate from a provided private key' do private_key = generate_private_key self_sign_certificate = Acme::Client::SelfSignCertificate.new(private_key: private_key, subject_alt_names: ['test.example.org']) expect(self_sign_certificate.certificate).to be_a(OpenSSL::X509::Certificate) expect(self_sign_certificate.private_key).to be(private_key) end it 'sets the certificates version' do private_key = generate_private_key self_sign_certificate = Acme::Client::SelfSignCertificate.new(private_key: private_key, subject_alt_names: ['test.example.org']) expect(self_sign_certificate.certificate.version).to eql(2) end it 'sets the certificates serial number' do private_key = generate_private_key self_sign_certificate = Acme::Client::SelfSignCertificate.new(private_key: private_key, subject_alt_names: ['test.example.org']) expect(self_sign_certificate.certificate.serial.to_i).to eql(1) end end acme-client-2.0.18/spec/spec_helper.rb000066400000000000000000000020161463311421000175250ustar00rootroot00000000000000$LOAD_PATH.unshift File.join(__dir__, '../lib') $LOAD_PATH.unshift File.join(__dir__, 'support') require 'openssl' DIRECTORY_URL = ENV['ACME_DIRECTORY_URL'] || 'https://127.0.0.1/directory' require 'acme/client' require 'rspec' require 'vcr' require 'webmock/rspec' require 'asn1_helper' require 'http_helper' require 'retry_helper' require 'ssl_helper' require 'tls_helper' require 'profile_helper' if ENV['RUBY_PROF'] RSpec.configure do |c| c.include Asn1Helper c.include HttpHelper c.include TlsHelper c.include RetryHelper c.include SSLHelper end VCR.configure do |c| c.cassette_library_dir = 'spec/cassettes' c.configure_rspec_metadata! c.hook_into :webmock c.ignore_localhost = false c.default_cassette_options = { record: :once, match_requests_on: [:method, :path, :query] } c.allow_http_connections_when_no_cassette = false c.filter_sensitive_data('') do DIRECTORY_URL end c.filter_sensitive_data('') do DIRECTORY_URL.gsub(%r[\/[^\/]+$], '') end end acme-client-2.0.18/spec/support/000077500000000000000000000000001463311421000164245ustar00rootroot00000000000000acme-client-2.0.18/spec/support/asn1_helper.rb000066400000000000000000000003051463311421000211500ustar00rootroot00000000000000module Asn1Helper def asn1_dig(attribute) if OpenSSL::VERSION < '2.0.0' attribute.value.first.first.value else attribute.value.value.first.value.first.value end end end acme-client-2.0.18/spec/support/http_helper.rb000066400000000000000000000010111463311421000212600ustar00rootroot00000000000000require 'webrick' module HttpHelper def serve_once(body) return yield unless VCR.real_http_connections_allowed? dev_null = WEBrick::BasicLog.new(StringIO.new) server = WEBrick::HTTPServer.new(Port: 5002, Logger: dev_null, AccessLog: dev_null) begin thread = Thread.new do server.mount_proc('/') do |_, response| response.body = body end server.start end yield sleep(1) ensure server.shutdown thread.join(5) end end end acme-client-2.0.18/spec/support/profile_helper.rb000066400000000000000000000003401463311421000217450ustar00rootroot00000000000000require 'ruby-prof' RSpec.configure do |c| c.before(:suite) do RubyProf.start end c.after(:suite) do result = RubyProf.stop printer = RubyProf::FlatPrinter.new(result) printer.print(STDOUT) end end acme-client-2.0.18/spec/support/retry_helper.rb000066400000000000000000000003231463311421000214530ustar00rootroot00000000000000module RetryHelper def retry_until(condition:, retry_count: 3, wait: 0.25) count = 0 until condition.call yield raise 'timed out' if count > retry_count count = + 1 end end end acme-client-2.0.18/spec/support/ssl_helper.rb000066400000000000000000000056371463311421000211240ustar00rootroot00000000000000require 'yaml' module SSLHelper class KeyStash KEYSTASH_PATH = File.join(__dir__, '../fixtures/keystash.yml') def initialize @keystash = load.shuffle @iter = @keystash.each end def next @iter.next rescue StopIteration raise "Reached the end of the keystash. #{@keystash.size} key is too small. Regenerate with ./bin/generate_keystash." end def generate_keystash!(size:) @keystash = [] size.times { @keystash << generate_key } save true end private def generate_key case (rand * 4).to_i when 0 OpenSSL::PKey::RSA.new(2048) when 1 generate_ecdsa_key('prime256v1') when 2 generate_ecdsa_key('secp384r1') when 3 OpenSSL::PKey::RSA.new(2048) # TODO: ECDSA curve P-521 not allowed at the moment. # generate_ecdsa_key('secp521r1') end end def generate_ecdsa_key(curve) k = OpenSSL::PKey::EC.generate(curve) Acme::Client::CertificateRequest::ECKeyPatch.new(k) end def load if File.exist?(KEYSTASH_PATH) YAML.load_file(KEYSTASH_PATH).shuffle.map do |pem| begin OpenSSL::PKey::RSA.new(pem) rescue StandardError Acme::Client::CertificateRequest::ECKeyPatch.new(pem) end end else [] end end def save File.write(KEYSTASH_PATH, YAML.dump(@keystash.map(&:to_pem))) end end KEYSTASH = KeyStash.new def generate_private_key KEYSTASH.next end def generate_csr(common_name, private_key) request = OpenSSL::X509::Request.new request.subject = OpenSSL::X509::Name.new( [ [ 'CN', common_name, OpenSSL::ASN1::UTF8STRING ] ] ) Acme::Client::Util.set_public_key(request, private_key) request.sign(private_key, OpenSSL::Digest::SHA256.new) request end # Verify a CSR's signature. # # csr - A OpenSSL::X509::Request instance. # priv - An OpenSSL::PKey::EC or OpenSSL::PKey::RSA instance. # # Returns boolean. def verify_csr(csr, priv) case priv when OpenSSL::PKey::EC csr.verify(priv) when OpenSSL::PKey::RSA csr.verify(priv.public_key) else raise ArgumentError, 'priv must be EC or RSA' end end # Export a private key's public key in DER format. # # priv - An OpenSSL::PKey::EC or OpenSSL::PKey::RSA instance. # # Returns a String. def public_key_to_pem(private_key) case private_key when OpenSSL::PKey::EC # TODO: Ruby 2.7 shenanigans if OpenSSL::PKey::EC.method_defined?(:to_pem) private_key.to_pem else dup = OpenSSL::PKey::EC.new(private_key.to_der) dup.private_key = nil dup.to_pem end when OpenSSL::PKey::RSA private_key.public_key.to_pem else raise ArgumentError, 'private_key must be EC or RSA' end end end acme-client-2.0.18/spec/support/tls_helper.rb000066400000000000000000000011211463311421000211050ustar00rootroot00000000000000require 'socket' module TlsHelper def listen_tls(certificate, private_key) return yield unless VCR.real_http_connections_allowed? server = tls_server(certificate, private_key) begin thread = Thread.new do server.accept end yield ensure server.close thread.join(5) end end def tls_server(certificate, private_key) server = TCPServer.new(5001) ssl_context = OpenSSL::SSL::SSLContext.new ssl_context.cert = certificate ssl_context.key = private_key OpenSSL::SSL::SSLServer.new(server, ssl_context) end end acme-client-2.0.18/spec/util_spec.rb000066400000000000000000000007161463311421000172300ustar00rootroot00000000000000require 'spec_helper' describe Acme::Client::JWK do context '#decode_link_headers' do let(:example) do '; rel="up", ; rel="alt", ; rel="alt"' end it 'extract link value and in a hash with rel as they key' do links = Acme::Client::Util.decode_link_headers(example) expect(links).to be_a(Hash) expect(links['up']).to eq(['uri1']) expect(links['alt'].sort).to eq(%w(uri2 uri3).sort) end end end