r509 1.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/{CONTRIBUTING.mdown → CONTRIBUTING.md} +0 -0
  3. data/{README.mdown → README.md} +44 -38
  4. data/doc/R509.html +4 -4
  5. data/doc/R509/ASN1.html +2 -2
  6. data/doc/R509/ASN1/GeneralName.html +2 -2
  7. data/doc/R509/ASN1/GeneralNames.html +2 -2
  8. data/doc/R509/CRL.html +3 -3
  9. data/doc/R509/CRL/Administrator.html +2 -2
  10. data/doc/R509/CRL/FileReaderWriter.html +2 -2
  11. data/doc/R509/CRL/ReaderWriter.html +2 -2
  12. data/doc/R509/CRL/SQLiteReaderWriter.html +2 -2
  13. data/doc/R509/CRL/SignedList.html +2 -2
  14. data/doc/R509/CSR.html +2 -2
  15. data/doc/R509/Cert.html +3 -3
  16. data/doc/R509/Cert/Extensions.html +3 -3
  17. data/doc/R509/Cert/Extensions/AuthorityInfoAccess.html +2 -2
  18. data/doc/R509/Cert/Extensions/AuthorityKeyIdentifier.html +2 -2
  19. data/doc/R509/Cert/Extensions/BasicConstraints.html +2 -2
  20. data/doc/R509/Cert/Extensions/CRLDistributionPoints.html +2 -2
  21. data/doc/R509/Cert/Extensions/CertificatePolicies.html +2 -2
  22. data/doc/R509/Cert/Extensions/ExtendedKeyUsage.html +2 -2
  23. data/doc/R509/Cert/Extensions/GeneralNamesMixin.html +2 -2
  24. data/doc/R509/Cert/Extensions/InhibitAnyPolicy.html +2 -2
  25. data/doc/R509/Cert/Extensions/KeyUsage.html +2 -2
  26. data/doc/R509/Cert/Extensions/NameConstraints.html +2 -2
  27. data/doc/R509/Cert/Extensions/NoticeReference.html +2 -2
  28. data/doc/R509/Cert/Extensions/OCSPNoCheck.html +2 -2
  29. data/doc/R509/Cert/Extensions/PolicyConstraints.html +2 -2
  30. data/doc/R509/Cert/Extensions/PolicyInformation.html +2 -2
  31. data/doc/R509/Cert/Extensions/PolicyQualifiers.html +2 -2
  32. data/doc/R509/Cert/Extensions/SubjectAlternativeName.html +2 -2
  33. data/doc/R509/Cert/Extensions/SubjectKeyIdentifier.html +2 -2
  34. data/doc/R509/Cert/Extensions/UserNotice.html +2 -2
  35. data/doc/R509/Cert/Extensions/ValidationMixin.html +2 -2
  36. data/doc/R509/CertificateAuthority.html +2 -2
  37. data/doc/R509/CertificateAuthority/OptionsBuilder.html +2 -2
  38. data/doc/R509/CertificateAuthority/Signer.html +2 -2
  39. data/doc/R509/Config.html +2 -2
  40. data/doc/R509/Config/CAConfig.html +2 -2
  41. data/doc/R509/Config/CAConfigPool.html +2 -2
  42. data/doc/R509/Config/CertProfile.html +2 -2
  43. data/doc/R509/Config/SubjectItemPolicy.html +2 -2
  44. data/doc/R509/Engine.html +2 -2
  45. data/doc/R509/Helpers.html +2 -2
  46. data/doc/R509/MessageDigest.html +3 -3
  47. data/doc/R509/NameSanitizer.html +2 -2
  48. data/doc/R509/OCSP.html +2 -2
  49. data/doc/R509/OCSP/Request.html +2 -2
  50. data/doc/R509/OCSP/Request/Nonce.html +2 -2
  51. data/doc/R509/OCSP/Response.html +2 -2
  52. data/doc/R509/OIDMapper.html +26 -16
  53. data/doc/R509/PrivateKey.html +2 -2
  54. data/doc/R509/R509Error.html +2 -2
  55. data/doc/R509/SPKI.html +2 -2
  56. data/doc/R509/Subject.html +2 -2
  57. data/doc/R509/Validity.html +2 -2
  58. data/doc/R509/Validity/Checker.html +2 -2
  59. data/doc/R509/Validity/DefaultChecker.html +2 -2
  60. data/doc/R509/Validity/DefaultWriter.html +2 -2
  61. data/doc/R509/Validity/Status.html +2 -2
  62. data/doc/R509/Validity/Writer.html +2 -2
  63. data/doc/_index.html +2 -8
  64. data/doc/file.LICENSE.html +2 -2
  65. data/doc/file.README.html +15 -7
  66. data/doc/file.r509.html +2 -2
  67. data/doc/file_list.html +0 -10
  68. data/doc/index.html +15 -7
  69. data/doc/method_list.html +300 -300
  70. data/doc/top-level-namespace.html +2 -2
  71. data/lib/r509/message_digest.rb +1 -3
  72. data/lib/r509/oid_mapper.rb +6 -1
  73. data/lib/r509/version.rb +1 -1
  74. data/spec/csr_spec.rb +6 -6
  75. data/spec/fixtures/csr4.pem +25 -25
  76. data/spec/message_digest_spec.rb +0 -15
  77. data/spec/oid_mapper_spec.rb +5 -0
  78. data/spec/spki_spec.rb +1 -1
  79. metadata +14 -35
  80. checksums.yaml.gz.sig +0 -1
  81. data.tar.gz.sig +0 -0
  82. metadata.gz.sig +0 -0
@@ -196,9 +196,9 @@
196
196
  </div>
197
197
 
198
198
  <div id="footer">
199
- Generated on Tue Dec 6 17:27:38 2016 by
199
+ Generated on Thu Nov 2 12:48:00 2017 by
200
200
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
201
- 0.9.5 (ruby-2.4.0).
201
+ 0.9.5 (ruby-2.4.2).
202
202
  </div>
203
203
 
204
204
  </div>
@@ -4,7 +4,7 @@ module R509
4
4
  # MessageDigest allows you to specify MDs in a more friendly fashion
5
5
  class MessageDigest
6
6
  # a list of message digests that this class understands
7
- KNOWN_MDS = ['SHA1', 'SHA224', 'SHA256', 'SHA384', 'SHA512', 'DSS1', 'MD5']
7
+ KNOWN_MDS = ['SHA1', 'SHA224', 'SHA256', 'SHA384', 'SHA512', 'MD5']
8
8
 
9
9
  # this constant defines the default message digest if it is not supplied
10
10
  # or an invalid digest is passed
@@ -37,7 +37,6 @@ module R509
37
37
  when 'sha384' then OpenSSL::Digest::SHA384.new
38
38
  when 'sha512' then OpenSSL::Digest::SHA512.new
39
39
  when 'md5' then OpenSSL::Digest::MD5.new
40
- when 'dss1' then OpenSSL::Digest::DSS1.new
41
40
  else
42
41
  @name = DEFAULT_MD.downcase
43
42
  translate_name_to_digest
@@ -53,7 +52,6 @@ module R509
53
52
  when OpenSSL::Digest::SHA384 then 'sha384'
54
53
  when OpenSSL::Digest::SHA512 then 'sha512'
55
54
  when OpenSSL::Digest::MD5 then 'md5'
56
- when OpenSSL::Digest::DSS1 then 'dss1'
57
55
  else
58
56
  raise ArgumentError, "Unknown digest"
59
57
  end
@@ -12,7 +12,12 @@ module R509
12
12
  if long_name.nil?
13
13
  long_name = short_name
14
14
  end
15
- OpenSSL::ASN1::ObjectId.register(oid, short_name, long_name)
15
+
16
+ begin
17
+ OpenSSL::ASN1::ObjectId.register(oid, short_name, long_name)
18
+ rescue OpenSSL::ASN1::ASN1Error
19
+ false
20
+ end
16
21
  end
17
22
 
18
23
  # Register a batch of OIDs so we have friendly short names
@@ -2,5 +2,5 @@
2
2
  # support.
3
3
  module R509
4
4
  # The version of the r509 gem
5
- VERSION = "1.0"
5
+ VERSION = "1.0.1"
6
6
  end
@@ -78,18 +78,18 @@ describe R509::CSR do
78
78
  it "raises an exception if you provide a list of domains with an existing CSR" do
79
79
  expect { R509::CSR.new(:csr => @csr, :san_names => ['moredomainsiwanttoadd.com']) }.to raise_error(ArgumentError, 'You can\'t add domains to an existing CSR')
80
80
  end
81
- it "changes the message_digest to DSS1 when passed a DSA key" do
81
+ it "changes the message_digest to SHA256 when passed a DSA key" do
82
82
  csr = R509::CSR.new(:subject => [["CN", "dsasigned.com"]], :key => @dsa_key)
83
- expect(csr.message_digest.name).to eq('dss1')
84
- expect(csr.signature_algorithm).to eq('dsaWithSHA1')
83
+ expect(csr.message_digest.name).to eq('sha256')
84
+ expect(csr.signature_algorithm).to eq('dsa_with_SHA256')
85
85
  # dss1 is actually the same as SHA1
86
86
  # Yes this is confusing
87
87
  # see http://www.ruby-doc.org/stdlib-1.9.3/libdoc/openssl/rdoc/OpenSSL/PKey/DSA.html
88
88
  end
89
- it "changes the message_digest to DSS1 when creating a DSA key" do
89
+ it "changes the message_digest to SHA256 when creating a DSA key" do
90
90
  csr = R509::CSR.new(:subject => [["CN", "dsasigned.com"]], :type => "dsa", :bit_length => 512)
91
- expect(csr.message_digest.name).to eq('dss1')
92
- expect(csr.signature_algorithm).to eq('dsaWithSHA1')
91
+ expect(csr.message_digest.name).to eq('sha256')
92
+ expect(csr.signature_algorithm).to eq('dsa_with_SHA256')
93
93
  # dss1 is actually the same as SHA1
94
94
  # Yes this is confusing
95
95
  # see http://www.ruby-doc.org/stdlib-1.9.3/libdoc/openssl/rdoc/OpenSSL/PKey/DSA.html
@@ -1,25 +1,25 @@
1
- -----BEGIN CERTIFICATE REQUEST-----
2
- MIIETDCCAzQCADCBijELMAkGA1UEBhMCVVMxHTAbBgNVBAgMFERpc3RyaWN0IE9m
3
- IENvbHVtYmlhMRMwEQYDVQQHDApXYXNoaW5ndG9uMRMwEQYDVQQKDApNeSBDb21w
4
- YW55MREwDwYDVQQLDAhPcmcgVW5pdDEfMB0GA1UEAwwWY29uY2VudHJhdG9yLnZw
5
- bi5sb2NhbDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALZFopgI+Obo
6
- neQN7AWiPRqFxT380fja+eua38n7BkGIadRPtnrolaMMOJQq9u4n8f1lMlCxddCD
7
- C5nvw+wUP8lDPXZ+47m5eypW21Anw+sGum58edoGtXmVoTMEH+MtYvtzj97ZqI2Z
8
- yVaph+zivIH5Bz2hKIf2fFnxCeQgaYECryfzWc135WgPwiNhCIOvUqYeRV6PI9PY
9
- u23QeM8JPuYAHHC87NsEnosRsWzTxF1VF+beS23wgR3BSL8VW3wkGnRnaaukSyVg
10
- zfJRW/75yhny/4JiHzJYA1uY272fcbpTRbVKH2Vk0IjewjJIj9xthrqLl1Y0KV19
11
- 3PX4StZvi+sCAwEAAaCCAXswGgYKKwYBBAGCNw0CAzEMFgo2LjEuNzYwMC4yMEwG
12
- CSsGAQQBgjcVFDE/MD0CAQkMIHBkZ2xtdmNpdG1ncjAxLmNvcnAuc2lyaXVzeG0u
13
- Y29tDA1DT1JQXGZtb25yb2V4DAdjZXJ0cmVxMEwGCisGAQQBgjcNAgExPjA8HiYA
14
- QwBlAHIAdABpAGYAaQBjAGEAdABlAFQAZQBtAHAAbABhAHQAZR4SAFcAZQBiAFMA
15
- ZQByAHYAZQByME0GCSqGSIb3DQEJDjFAMD4wPAYDVR0RBDUwM4ILYWRvbWFpbi5j
16
- b22CEWFub3RoZXJkb21haW4uY29tghFqdXN0YW5leGFtcGxlLmNvbTByBgorBgEE
17
- AYI3DQICMWQwYgIBAR5aAE0AaQBjAHIAbwBzAG8AZgB0ACAAUgBTAEEAIABTAEMA
18
- aABhAG4AbgBlAGwAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8A
19
- dgBpAGQAZQByAwEAMA0GCSqGSIb3DQEBBQUAA4IBAQB3PRUUAwKJ7JC8GnssEf37
20
- hpFZ3x8WGbuRDmKfeSiKtH/JQpWqFKYn9e0sv9W2/gWxYU02ykPUgMu+ccgh2uqi
21
- 6dp/EmtSBw1sIb41/ie1QcQ9lnrOls6ft6unUAQk/FjKWgsPTPhJCaJiCeFWJj81
22
- E3zn/2dCoz9K2XTCFGTBBq8Z8V2dmQwZQTa7Gn2hZN7ZqB3Y6MoI77oMTjJV4Gqm
23
- lqvyW46szlMjAbBFikuy5BftD7xL1s/s+4dJPRroitNTeWgcS7hu41k6FQHbSPff
24
- 9S/qFLRt8NxcukZClkjnDIFpuA5e+eZdL/SX/klALO/Zn1oeeIe3fUii0ihkdHE1
25
- -----END CERTIFICATE REQUEST-----
1
+ -----BEGIN NEW CERTIFICATE REQUEST-----
2
+ MIIEKjCCAxICAQAwgYoxCzAJBgNVBAYTAlVTMR0wGwYDVQQIDBREaXN0cmljdCBP
3
+ ZiBDb2x1bWJpYTETMBEGA1UEBwwKV2FzaGluZ3RvbjERMA8GA1UECwwIT3JnIFVu
4
+ aXQxEzARBgNVBAoMCk15IENvbXBhbnkxHzAdBgNVBAMMFmNvbmNlbnRyYXRvci52
5
+ cG4ubG9jYWwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC5WNJl0Oxh
6
+ pu8A5uybAWjjOyQDr/UXeu+/xylNR3C7y7WEPsA5IUv8aa83lw8ag5+OZjN1lpIw
7
+ dy2yHCm9wzfBaxwd4GnU1jQf8hi9wAQsGrJI194eG0gUEHtVVUEmZAEvbiySfGH8
8
+ 9+tL+iemD9Ua1YwDOCErSeqNg9ROZLHw31NuzJawByf5EoKwbZ0G7Rm0T5qUXGW2
9
+ Is8iIq74o2l7haEPSpWeQEXAigyEhB8l2Rr8icuhmVC/IEdz6B2rPe20psMO6vzF
10
+ Apx+WTgm7XzuSfqz0Tv7NABy63dRwGUW3yZn+3yN6EfC5CtkOzm1w2Na1I6wRlVH
11
+ XDJZlj3UxwzTAgMBAAGgggFYMBoGCisGAQQBgjcNAgMxDBYKNi4xLjc2MDEuMjBL
12
+ BgkrBgEEAYI3FRQxPjA8AgEFDBxWQ0hJLUVOLVJHRkZUMS50cnVzdHdhdmUuY29t
13
+ DBBUUlVTVFdBVkVcZGxhbXBhDAdNTUMuRVhFMHIGCisGAQQBgjcNAgIxZDBiAgEB
14
+ HloATQBpAGMAcgBvAHMAbwBmAHQAIABSAFMAQQAgAFMAQwBoAGEAbgBuAGUAbAAg
15
+ AEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIDAQAw
16
+ eQYJKoZIhvcNAQkOMWwwajA8BgNVHREENTAzggthZG9tYWluLmNvbYIRYW5vdGhl
17
+ cmRvbWFpbi5jb22CEWp1c3RhbmV4YW1wbGUuY29tMB0GA1UdDgQWBBQ6Y8EqbqGM
18
+ hQZOg6Z8u5ro9HvFwTALBgNVHQ8EBAMCBSAwDQYJKoZIhvcNAQEFBQADggEBAGdu
19
+ Cz9tnTWtkGSdUjG3u8RlIWtnwNI+lsw2wYperb2r/eWMYCa8o2k/HsmWbISWiqWO
20
+ HmS5VHoItUTimItRpaMwjDHpz1xrpILRW5vY2RZMh6+/DbZJFnXHuIIQF2gk1G8f
21
+ Z4rYm71EGnvETy7xdbQfMIZegvzyBCdWuT/67OrbBWhPL2VIqkqAn5eEfl2nKv30
22
+ SFyz9Yy63b4bBqYDOkmGlAZxFuPIMuxeiwlqzmXavV4mIB8e+qZnvjTzTjk7VnGb
23
+ b9r4r/Dl4nzFq1c6iii5EBGBcPTDBa/6uanM03nPXSudPEDpT33epUotM9+rsQX9
24
+ dPth/F/Do0QBAyOCyS0=
25
+ -----END NEW CERTIFICATE REQUEST-----
@@ -53,16 +53,6 @@ describe R509::MessageDigest do
53
53
  expect(md.name).to eq("md5")
54
54
  expect(md.digest.is_a?(OpenSSL::Digest::MD5)).to eq(true)
55
55
  end
56
- it "translates dss1 name -> digest" do
57
- md = R509::MessageDigest.new("dss1")
58
- expect(md.name).to eq("dss1")
59
- expect(md.digest.is_a?(OpenSSL::Digest::DSS1)).to eq(true)
60
- end
61
- it "translates DSS1 name -> digest" do
62
- md = R509::MessageDigest.new("DSS1")
63
- expect(md.name).to eq("dss1")
64
- expect(md.digest.is_a?(OpenSSL::Digest::DSS1)).to eq(true)
65
- end
66
56
  it "translates unknown name -> digest" do
67
57
  md = R509::MessageDigest.new("unknown")
68
58
  expect(md.name).to eq("sha256")
@@ -98,11 +88,6 @@ describe R509::MessageDigest do
98
88
  expect(md.name).to eq("md5")
99
89
  expect(md.digest.is_a?(OpenSSL::Digest::MD5)).to eq(true)
100
90
  end
101
- it "translates dss1 digest -> name" do
102
- md = R509::MessageDigest.new(OpenSSL::Digest::DSS1.new)
103
- expect(md.name).to eq("dss1")
104
- expect(md.digest.is_a?(OpenSSL::Digest::DSS1)).to eq(true)
105
- end
106
91
  it "creates a default digest with no params or nil" do
107
92
  md = R509::MessageDigest.new
108
93
  expect(md.name).to eq(R509::MessageDigest::DEFAULT_MD.downcase)
@@ -17,6 +17,11 @@ describe R509::OIDMapper do
17
17
  expect(subject_new['myOIDName']).to eq('random_oid')
18
18
  end
19
19
 
20
+ it "returns false when registering an oid that already exists" do
21
+ allow(OpenSSL::ASN1::ObjectId).to receive(:register).and_raise(OpenSSL::ASN1::ASN1Error)
22
+ expect(R509::OIDMapper.register('1.4.3.2.1.2.7.4.4.4.4', 'someOtherName')).to eq(false)
23
+ end
24
+
20
25
  it "registers a batch of new oids" do
21
26
  expect { R509::Subject.new [['testOIDName', 'random_oid']] }.to raise_error(OpenSSL::X509::NameError, 'invalid field name')
22
27
  expect { R509::Subject.new [['anotherOIDName', 'second_random']] }.to raise_error(OpenSSL::X509::NameError, 'invalid field name')
@@ -22,7 +22,7 @@ shared_examples_for "create spki with private key" do
22
22
  when @key.rsa?
23
23
  expect(spki.signature_algorithm).to(match(/sha256/i))
24
24
  when @key.dsa?
25
- expect(spki.signature_algorithm).to(match(/sha1/i))
25
+ expect(spki.signature_algorithm).to(match(/sha256/i))
26
26
  end
27
27
  spki.verify_signature
28
28
  end
metadata CHANGED
@@ -1,35 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: r509
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.0'
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paul Kehrer
8
8
  autorequire:
9
9
  bindir: bin
10
- cert_chain:
11
- - |
12
- -----BEGIN CERTIFICATE-----
13
- MIIDPDCCAiSgAwIBAgIBAzANBgkqhkiG9w0BAQUFADBEMRYwFAYDVQQDDA1wYXVs
14
- Lmwua2VocmVyMRUwEwYKCZImiZPyLGQBGRYFZ21haWwxEzARBgoJkiaJk/IsZAEZ
15
- FgNjb20wHhcNMTYxMjA2MTUzMDAyWhcNMTcxMjA2MTUzMDAyWjBEMRYwFAYDVQQD
16
- DA1wYXVsLmwua2VocmVyMRUwEwYKCZImiZPyLGQBGRYFZ21haWwxEzARBgoJkiaJ
17
- k/IsZAEZFgNjb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDLVC6U
18
- 0ZyX4C4HllJxHW0Uq39bvRvfNXc0RXMSvIRklxjupx3EICVATpAJzg4qBxbpxRTe
19
- XcsmuYfaZAriSH2M97C2sBJnVEAr63ws2vmBQKw9cXHV3RjQTeqQUTQudE790DTI
20
- 7pc1ObprB4pM2j3O6JtPVzmJ/PGACjtyg4bys6bx7JQJW5liunK26mS6w6mAAcAV
21
- scAz7oh6fmOI0OSS45l3ycOEh5sb42cZzs7TNzcvVmEppTRa4wBP4/eDTuohxlPH
22
- skuIPWcdU6YTo2LWwqEaGgUItj8lRqXGDcEZ1FhKyZ6HUD3l1zPGxojW8BKr0Svj
23
- /cMP+y0YH5OeoD+vAgMBAAGjOTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0G
24
- A1UdDgQWBBRG/XG7L1orNzHDGQaIv97hRgJYajANBgkqhkiG9w0BAQUFAAOCAQEA
25
- nhyFPJjIrxxka6vXSxaeSSLAJ6q/oeRqHxoJtT46JYPWeeT7j/vjFwS96oY5gWJk
26
- STjSuGp+wFKKrdttswO2+GzpoTrOabQMw6kg1Y0hYXjJ5O52EDHmDPFKXK+yOYkK
27
- GOAQZ8KXEnczOXTWiigLkwkEI5eH+vCMYSSvVpYlSmsgj6nYjl0K+XxWfXseBLv2
28
- rLKOPJOyqpW2fuOxutEfQ3ZvgjeuzUnjXSuOuwZNrQSOODC2sYXyebd7UbjU+AsD
29
- eJKxcHs4mnzJUqy/5FZbS/i8lMYMDy0elcc44zd+qDsY7zreRzpoB2XinMWV99vd
30
- rHOwDzJDt8KFQ4zf0Bsrvg==
31
- -----END CERTIFICATE-----
32
- date: 2016-12-06 00:00:00.000000000 Z
10
+ cert_chain: []
11
+ date: 2017-11-02 00:00:00.000000000 Z
33
12
  dependencies:
34
13
  - !ruby/object:Gem::Dependency
35
14
  name: rspec
@@ -82,9 +61,9 @@ executables:
82
61
  extensions: []
83
62
  extra_rdoc_files: []
84
63
  files:
85
- - CONTRIBUTING.mdown
64
+ - CONTRIBUTING.md
86
65
  - LICENSE
87
- - README.mdown
66
+ - README.md
88
67
  - Rakefile
89
68
  - bin/r509
90
69
  - bin/r509-parse
@@ -356,7 +335,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
356
335
  requirements:
357
336
  - - ">="
358
337
  - !ruby/object:Gem::Version
359
- version: 1.9.3
338
+ version: '2.0'
360
339
  required_rubygems_version: !ruby/object:Gem::Requirement
361
340
  requirements:
362
341
  - - ">="
@@ -364,20 +343,20 @@ required_rubygems_version: !ruby/object:Gem::Requirement
364
343
  version: '0'
365
344
  requirements: []
366
345
  rubyforge_project:
367
- rubygems_version: 2.6.8
346
+ rubygems_version: 2.6.14
368
347
  signing_key:
369
348
  specification_version: 4
370
349
  summary: A (relatively) simple X.509 certification authority API
371
350
  test_files:
351
+ - spec/oid_mapper_spec.rb
372
352
  - spec/asn1_spec.rb
373
353
  - spec/cert_spec.rb
374
- - spec/csr_spec.rb
375
- - spec/engine_spec.rb
376
- - spec/message_digest_spec.rb
377
- - spec/ocsp_spec.rb
378
- - spec/oid_mapper_spec.rb
379
354
  - spec/private_key_spec.rb
355
+ - spec/ocsp_spec.rb
356
+ - spec/validity_spec.rb
357
+ - spec/subject_spec.rb
380
358
  - spec/r509_spec.rb
359
+ - spec/engine_spec.rb
360
+ - spec/csr_spec.rb
361
+ - spec/message_digest_spec.rb
381
362
  - spec/spki_spec.rb
382
- - spec/subject_spec.rb
383
- - spec/validity_spec.rb
@@ -1 +0,0 @@
1
- ���EwX�Y�����թ"�}R'֔W2`���:ՙnL5�CW���ڼB����N�q+�y.wYFR!&C�*=}= uY�[�':�e����c��Z�K`�T'W��F�y��F%�^ KUZ��+�+�&��ؙ�����贳�P��UN8+I8��n�Ctp�'9ۨ(���Z��P�8/`���2���{H���n �D��YO�
data.tar.gz.sig DELETED
Binary file
metadata.gz.sig DELETED
Binary file