diff options
author | Rob Austein <sra@hactrn.net> | 2014-02-20 23:03:11 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2014-02-20 23:03:11 +0000 |
commit | 401bbea99c1ba43ae0987b6346c65293a8efafa0 (patch) | |
tree | bde4f7e451ab6795b211631cb2e62db1ac07d481 /rpkid/tests/smoketest.py | |
parent | 4c537cad182aa3f4f5aea9322759cea88e2210bc (diff) |
Whack RSA-specific code to a more general API using PrivateKey and
PublicKey classes, with RSA and ECDSA as subclasses extending
PrivateKey. Revised API not necessarily in final form yet, but good
enough for smoketest to generate ECDSA keys for testing router certs.
svn path=/branches/tk671/; revision=5679
Diffstat (limited to 'rpkid/tests/smoketest.py')
-rw-r--r-- | rpkid/tests/smoketest.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/rpkid/tests/smoketest.py b/rpkid/tests/smoketest.py index 7f284550..5512b5bc 100644 --- a/rpkid/tests/smoketest.py +++ b/rpkid/tests/smoketest.py @@ -134,6 +134,8 @@ pubd_pubd_cert = None pubd_last_cms_time = None +ecdsa_params = None + class CantRekeyYAMLLeaf(Exception): """ Can't rekey YAML leaf. @@ -380,12 +382,18 @@ class router_cert(object): Representation for a router_cert object. """ + _ecparams = None + + @classmethod + def ecparams(cls): + if cls._ecparams is None: + cls._ecparams = rpki.x509.KeyParams.generateEC() + return cls._ecparams + def __init__(self, asn, router_id): self.asn = rpki.resource_set.resource_set_as("".join(str(asn).split())) self.router_id = router_id - - rpki.log.warn("Code to generate ECDSA keys not written yet, generating RSA as hack for testing") - self.keypair = rpki.x509.RSA.generate() + self.keypair = rpki.x509.ECDSA.generate(self.ecparams()) self.pkcs10 = rpki.x509.PKCS10.create( keypair = self.keypair, cn = "ROUTER-%d" % self.asn[0].min, |