Exemplo n.º 1
0
 def test_serialize_keys_passphrase(self):
     key = Key()
     key.create_key("rsa", 4096)
     pem = key.serialize("test_store_keys_passphrase")
     prvkey = key.load(pem, "test_store_keys_passphrase")
     self.assertIsInstance(prvkey.key, rsa.RSAPrivateKey)
     self.assertEqual(prvkey.key.key_size, 4096)
Exemplo n.º 2
0
 def test_store_keys_wrong_passphrase(self):
     key = Key()
     key.create_key("rsa", 2048)
     pem = key.serialize("test_store_keys_wrong_passphrase")
     with self.assertRaisesMessage(ValueError,
                                   "Bad decrypt. Incorrect password?"):
         key.load(pem, "test_store_keys_passphrase")
Exemplo n.º 3
0
 def test_store_keys_no_passphrase(self):
     key = Key()
     key.create_key("ed25519", None)
     pem = key.serialize()
     key = Key()
     prvkey = key.load(pem)
     self.assertIsInstance(prvkey.key, ed25519.Ed25519PrivateKey)
Exemplo n.º 4
0
 def test_store_keys_no_passphrase(self):
     key = Key()
     key.create_key("rsa", 2048)
     pem = key.serialize()
     key = Key()
     prvkey = key.load(pem)
     self.assertIsInstance(prvkey.key, rsa.RSAPrivateKey)
     self.assertEqual(prvkey.key.key_size, 2048)
Exemplo n.º 5
0
 def test_generate_private_key(self):
     keyhandler = Key()
     keyhandler.create_key("ed25519", None)
     data = b"testdata"
     signature = keyhandler.key.sign(data)
     pkey = keyhandler.key.public_key()
     self.assertIsNotNone(pkey)
     # would throw InvalidSignature if not correct
     pkey.verify(signature, data)
     self.assertIsNotNone(keyhandler.key)
Exemplo n.º 6
0
    def test_serialize_pkcs12_nopassphrase(self):
        subject = DistinguishedNameFactory(
            localityName="Amsterdam",
            organizationalUnitName="BounCA Root",
        )

        key = Key()
        key.create_key("rsa", 4096)

        certificate_request = CertificateFactory(dn=subject)
        certhandler = Certificate()
        certhandler.create_certificate(certificate_request, key.serialize())

        crt = certhandler.certificate

        pkcs12 = key.serialize_pkcs12("test_pkcs12", crt)
        pkcs12_obj = load_pkcs12(pkcs12, None)

        self.assertEqual(pkcs12_obj.key.key_size, 4096)
        self.assertEqual(pkcs12_obj.cert.friendly_name.decode("utf-8"),
                         "test_pkcs12")
        self.assertEqual(pkcs12_obj.cert.certificate.serial_number,
                         crt.serial_number)
Exemplo n.º 7
0
    def test_serialize_pkcs12_no_certificate(self):
        key = Key()
        key.create_key("rsa", 4096)

        with self.assertRaisesMessage(ValueError, "No certificate provided"):
            key.serialize_pkcs12("test_pkcs12", None)
Exemplo n.º 8
0
 def test_check_passphrase_invalid(self):
     key = Key()
     key.create_key("rsa", 2048)
     pem = key.serialize("test_check_passphrase_invalid")
     self.assertFalse(key.check_passphrase(pem, "check_passphrase"))
Exemplo n.º 9
0
 def test_generate_private_key_2048(self):
     keyhandler = Key()
     keyhandler.create_key("rsa", 2048)
     self.assertEqual(keyhandler.key.key_size, 2048)
     pkey = keyhandler.key.public_key()
     self.assertIsInstance(pkey.public_numbers(), rsa.RSAPublicNumbers)
Exemplo n.º 10
0
 def test_check_passphrase_invalid(self):
     key = Key()
     key.create_key("ed25519", None)
     pem = key.serialize("test_check_passphrase_invalid")
     self.assertFalse(key.check_passphrase(pem, "check_passphrase"))