Python OpenSSL.crypto.load_certificate_request() Examples
The following are 13
code examples of OpenSSL.crypto.load_certificate_request().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
OpenSSL.crypto
, or try the search function
.
Example #1
Source File: test_crypto.py From oss-ftp with MIT License | 6 votes |
def test_dump_certificate_request(self): """ :py:obj:`dump_certificate_request` writes a PEM, DER, and text. """ req = load_certificate_request(FILETYPE_PEM, cleartextCertificateRequestPEM) dumped_pem = dump_certificate_request(FILETYPE_PEM, req) self.assertEqual(dumped_pem, cleartextCertificateRequestPEM) dumped_der = dump_certificate_request(FILETYPE_ASN1, req) good_der = _runopenssl(dumped_pem, b"req", b"-outform", b"DER") self.assertEqual(dumped_der, good_der) req2 = load_certificate_request(FILETYPE_ASN1, dumped_der) dumped_pem2 = dump_certificate_request(FILETYPE_PEM, req2) self.assertEqual(dumped_pem2, cleartextCertificateRequestPEM) dumped_text = dump_certificate_request(FILETYPE_TEXT, req) good_text = _runopenssl(dumped_pem, b"req", b"-noout", b"-text") self.assertEqual(dumped_text, good_text) self.assertRaises(ValueError, dump_certificate_request, 100, req)
Example #2
Source File: certs.py From pycopia with Apache License 2.0 | 6 votes |
def __init__(self, country=None, state=None, locality=None, organization=None, organization_unit=None, name=None, email=None, digest="sha1", filename=None): if filename is None: req = crypto.X509Req() subject = req.get_subject() if country: subject.C = country if state: subject.ST = state if locality: subject.L = locality if organization: subject.O = organization if organization_unit: subject.OU = organization_unit if name: subject.CN = name if email: subject.emailAddress = email else: ftype, text = get_type_and_text(filename) req = crypto.load_certificate_request(ftype, text) self._req = req
Example #3
Source File: test_crypto.py From pyopenssl with Apache License 2.0 | 6 votes |
def test_dump_certificate_request(self): """ `dump_certificate_request` writes a PEM, DER, and text. """ req = load_certificate_request( FILETYPE_PEM, cleartextCertificateRequestPEM) dumped_pem = dump_certificate_request(FILETYPE_PEM, req) assert dumped_pem == cleartextCertificateRequestPEM dumped_der = dump_certificate_request(FILETYPE_ASN1, req) good_der = _runopenssl(dumped_pem, b"req", b"-outform", b"DER") assert dumped_der == good_der req2 = load_certificate_request(FILETYPE_ASN1, dumped_der) dumped_pem2 = dump_certificate_request(FILETYPE_PEM, req2) assert dumped_pem2 == cleartextCertificateRequestPEM dumped_text = dump_certificate_request(FILETYPE_TEXT, req) good_text = _runopenssl( dumped_pem, b"req", b"-noout", b"-text", b"-nameopt", b"") assert dumped_text == good_text with pytest.raises(ValueError): dump_certificate_request(100, req)
Example #4
Source File: test_crypto.py From oss-ftp with MIT License | 5 votes |
def test_badFileType(self): """ If the file type passed to :py:obj:`load_certificate_request` is neither :py:obj:`FILETYPE_PEM` nor :py:obj:`FILETYPE_ASN1` then :py:class:`ValueError` is raised. """ self.assertRaises(ValueError, load_certificate_request, object(), b"")
Example #5
Source File: _sslverify.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 5 votes |
def load(Class, requestData, requestFormat=crypto.FILETYPE_ASN1): req = crypto.load_certificate_request(requestFormat, requestData) dn = DistinguishedName() dn._copyFrom(req.get_subject()) if not req.verify(req.get_pubkey()): raise VerifyError("Can't verify that request for %r is self-signed." % (dn,)) return Class(req)
Example #6
Source File: _sslverify.py From learn_python3_spider with MIT License | 5 votes |
def load(Class, requestData, requestFormat=crypto.FILETYPE_ASN1): req = crypto.load_certificate_request(requestFormat, requestData) dn = DistinguishedName() dn._copyFrom(req.get_subject()) if not req.verify(req.get_pubkey()): raise VerifyError("Can't verify that request for %r is self-signed." % (dn,)) return Class(req)
Example #7
Source File: snakeoil_ca.py From sgx-kms with Apache License 2.0 | 5 votes |
def issue_certificate_request(self, order_id, order_meta, plugin_meta, barbican_meta_dto): if barbican_meta_dto.generated_csr is not None: encoded_csr = barbican_meta_dto.generated_csr else: try: encoded_csr = base64.b64decode(order_meta['request_data']) except KeyError: return cert_manager.ResultDTO( cert_manager.CertificateStatus.CLIENT_DATA_ISSUE_SEEN, status_message=u._("No request_data specified")) csr = crypto.load_certificate_request(crypto.FILETYPE_PEM, encoded_csr) ca_id = barbican_meta_dto.plugin_ca_id if ca_id: ca = self.cas.get(ca_id) if ca is None: raise cert_manager.CertificateGeneralException( "Invalid ca_id passed into snake oil plugin:" + ca_id) else: ca = self.ca cert_mgr = CertManager(ca) cert = cert_mgr.make_certificate(csr) cert_enc = crypto.dump_certificate(crypto.FILETYPE_PEM, cert) return cert_manager.ResultDTO( cert_manager.CertificateStatus.CERTIFICATE_GENERATED, certificate=base64.b64encode(cert_enc), intermediates=base64.b64encode(ca.pkcs7))
Example #8
Source File: validators.py From sgx-kms with Apache License 2.0 | 5 votes |
def _validate_pkcs10_data(self, request_data): """Confirm that the request_data is valid base64 encoded PKCS#10. Base64 decode the request, if it fails raise PayloadDecodingError. Then parse data into the ASN.1 structure defined by PKCS10 and verify the signing information. If parsing of verifying fails, raise InvalidPKCS10Data. """ try: csr_pem = base64.b64decode(request_data) except Exception: raise exception.PayloadDecodingError() try: csr = crypto.load_certificate_request(crypto.FILETYPE_PEM, csr_pem) except Exception: reason = u._("Bad format") raise exception.InvalidPKCS10Data(reason=reason) try: pubkey = csr.get_pubkey() csr.verify(pubkey) except Exception: reason = u._("Signing key incorrect") raise exception.InvalidPKCS10Data(reason=reason)
Example #9
Source File: _sslverify.py From python-for-android with Apache License 2.0 | 5 votes |
def load(Class, requestData, requestFormat=crypto.FILETYPE_ASN1): req = crypto.load_certificate_request(requestFormat, requestData) dn = DistinguishedName() dn._copyFrom(req.get_subject()) if not req.verify(req.get_pubkey()): raise VerifyError("Can't verify that request for %r is self-signed." % (dn,)) return Class(req)
Example #10
Source File: snakeoil_ca.py From barbican with Apache License 2.0 | 5 votes |
def issue_certificate_request(self, order_id, order_meta, plugin_meta, barbican_meta_dto): if barbican_meta_dto.generated_csr is not None: encoded_csr = barbican_meta_dto.generated_csr else: try: encoded_csr = base64.b64decode(order_meta['request_data']) except KeyError: return cert_manager.ResultDTO( cert_manager.CertificateStatus.CLIENT_DATA_ISSUE_SEEN, status_message=u._("No request_data specified")) csr = crypto.load_certificate_request(crypto.FILETYPE_PEM, encoded_csr) ca_id = barbican_meta_dto.plugin_ca_id if ca_id: ca = self.cas.get(ca_id) if ca is None: raise cert_manager.CertificateGeneralException( "Invalid ca_id passed into snake oil plugin:" + ca_id) else: ca = self.ca cert_mgr = CertManager(ca) cert = cert_mgr.make_certificate(csr) cert_enc = crypto.dump_certificate(crypto.FILETYPE_PEM, cert) return cert_manager.ResultDTO( cert_manager.CertificateStatus.CERTIFICATE_GENERATED, certificate=base64.b64encode(cert_enc), intermediates=base64.b64encode(ca.pkcs7))
Example #11
Source File: validators.py From barbican with Apache License 2.0 | 5 votes |
def _validate_pkcs10_data(self, request_data): """Confirm that the request_data is valid base64 encoded PKCS#10. Base64 decode the request, if it fails raise PayloadDecodingError. Then parse data into the ASN.1 structure defined by PKCS10 and verify the signing information. If parsing of verifying fails, raise InvalidPKCS10Data. """ try: csr_pem = base64.b64decode(request_data) except Exception: raise exception.PayloadDecodingError() try: csr = crypto.load_certificate_request(crypto.FILETYPE_PEM, csr_pem) except Exception: reason = u._("Bad format") raise exception.InvalidPKCS10Data(reason=reason) try: pubkey = csr.get_pubkey() csr.verify(pubkey) except Exception: reason = u._("Signing key incorrect") raise exception.InvalidPKCS10Data(reason=reason)
Example #12
Source File: test_crypto.py From pyopenssl with Apache License 2.0 | 5 votes |
def test_convert_to_cryptography_key(self): req = load_certificate_request( FILETYPE_PEM, cleartextCertificateRequestPEM ) crypto_req = req.to_cryptography() assert isinstance(crypto_req, x509.CertificateSigningRequest)
Example #13
Source File: test_crypto.py From pyopenssl with Apache License 2.0 | 5 votes |
def test_bad_file_type(self): """ If the file type passed to `load_certificate_request` is neither `FILETYPE_PEM` nor `FILETYPE_ASN1` then `ValueError` is raised. """ with pytest.raises(ValueError): load_certificate_request(object(), b"") with pytest.raises(ValueError): load_certificate(object(), b"")