def setUp(self): jwk = jose.JWKRSA(key=KEY.public_key()) issuers = ( 'C=US, O=SuperT LLC, CN=SuperTrustworthy Public CA', 'O=LessTrustworthy CA Inc, CN=LessTrustworthy But StillSecure', ) cert_fingerprints = ( '93416768eb85e33adc4277f4c9acd63e7418fcfe', '16d95b7b63f1972b980b14c20291f3c0d1855d95', '48b46570d9fc6358108af43ad1649484def0debf', ) subject_key_identifiers = ('d0083162dcc4c8a23ecb8aecbd86120e56fd24e5') authorized_for = ('www.example.com', 'example.net') serial_numbers = (34234239832, 23993939911, 17) from acme.challenges import ProofOfPossession self.msg = ProofOfPossession.Hints( jwk=jwk, issuers=issuers, cert_fingerprints=cert_fingerprints, certs=(CERT,), subject_key_identifiers=subject_key_identifiers, authorized_for=authorized_for, serial_numbers=serial_numbers) self.jmsg_to = { 'jwk': jwk, 'certFingerprints': cert_fingerprints, 'certs': (jose.encode_b64jose(OpenSSL.crypto.dump_certificate( OpenSSL.crypto.FILETYPE_ASN1, CERT)),), 'subjectKeyIdentifiers': subject_key_identifiers, 'serialNumbers': serial_numbers, 'issuers': issuers, 'authorizedFor': authorized_for, } self.jmsg_from = self.jmsg_to.copy() self.jmsg_from.update({'jwk': jwk.to_json()})
def encode_csr(csr): """ Encode CSR as JOSE Base-64 DER. :param cryptography.x509.CertificateSigningRequest csr: The CSR. :rtype: str """ return jose.encode_b64jose(csr.public_bytes(serialization.Encoding.DER))
class HeaderTest(unittest.TestCase): """Tests for acme.jws.Header.""" good_nonce = jose.encode_b64jose(b'foo') wrong_nonce = u'F' # Following just makes sure wrong_nonce is wrong try: jose.b64decode(wrong_nonce) except (ValueError, TypeError): assert True else: assert False # pragma: no cover def test_nonce_decoder(self): from acme.jws import Header nonce_field = Header._fields['nonce'] self.assertRaises(jose.DeserializationError, nonce_field.decode, self.wrong_nonce) self.assertEqual(b'foo', nonce_field.decode(self.good_nonce))
def setUp(self): jwk = KEY.public_key() issuers = ( "C=US, O=SuperT LLC, CN=SuperTrustworthy Public CA", "O=LessTrustworthy CA Inc, CN=LessTrustworthy But StillSecure", ) cert_fingerprints = ( "93416768eb85e33adc4277f4c9acd63e7418fcfe", "16d95b7b63f1972b980b14c20291f3c0d1855d95", "48b46570d9fc6358108af43ad1649484def0debf", ) subject_key_identifiers = "d0083162dcc4c8a23ecb8aecbd86120e56fd24e5" authorized_for = ("www.example.com", "example.net") serial_numbers = (34234239832, 23993939911, 17) from acme.challenges import ProofOfPossession self.msg = ProofOfPossession.Hints( jwk=jwk, issuers=issuers, cert_fingerprints=cert_fingerprints, certs=(CERT,), subject_key_identifiers=subject_key_identifiers, authorized_for=authorized_for, serial_numbers=serial_numbers, ) self.jmsg_to = { "jwk": jwk, "certFingerprints": cert_fingerprints, "certs": (jose.encode_b64jose(OpenSSL.crypto.dump_certificate(OpenSSL.crypto.FILETYPE_ASN1, CERT)),), "subjectKeyIdentifiers": subject_key_identifiers, "serialNumbers": serial_numbers, "issuers": issuers, "authorizedFor": authorized_for, } self.jmsg_from = self.jmsg_to.copy() self.jmsg_from.update({"jwk": jwk.to_json()})
def test_from_json_invalid_token_length(self): from acme.challenges import DVSNI self.jmsg['token'] = jose.encode_b64jose(b'abcd') self.assertRaises(jose.DeserializationError, DVSNI.from_json, self.jmsg)
def test_from_json_invalid_token_length(self): from acme.challenges import DVSNI self.jmsg['token'] = jose.encode_b64jose(b'abcd') self.assertRaises( jose.DeserializationError, DVSNI.from_json, self.jmsg)
def test_from_json_invalid_token_length(self): from acme.challenges import TLSSNI01 self.jmsg["token"] = jose.encode_b64jose(b"abcd") self.assertRaises(jose.DeserializationError, TLSSNI01.from_json, self.jmsg)