예제 #1
0
 def test_csr(self):
     key = ec.generate_private_key(ec.SECP384R1(), default_backend())
     csr = cu.create_csr(key, 'i am dummy test', 'US', 'CA', 'MPK', 'FB',
                         'magma', '*****@*****.**')
     self.assertTrue(csr.is_signature_valid)
     public_key_bytes = key.public_key().public_bytes(
         serialization.Encoding.OpenSSH, serialization.PublicFormat.OpenSSH)
     csr_public_key_bytes = csr.public_key().public_bytes(
         serialization.Encoding.OpenSSH, serialization.PublicFormat.OpenSSH)
     self.assertEqual(public_key_bytes, csr_public_key_bytes)
예제 #2
0
    def _create_csr(self):
        """Create CSR protobuf

        Returns:
             CSR protobuf object
        """
        csr = cert_utils.create_csr(self._gateway_key, self._hw_id)
        duration = Duration()
        duration.FromTimedelta(datetime.timedelta(days=4))
        csr = CSR(
            id=Identity(gateway=Identity.Gateway(hardware_id=self._hw_id)),
            valid_time=duration,
            csr_der=csr.public_bytes(serialization.Encoding.DER),
        )
        return csr