Enabling RSA2048 and RSA4096 as available key types (#551)

* Enabling RSA2048 and RSA4096 as available key types

* Fixing re-issuance
This commit is contained in:
kevgliss
2016-12-01 15:41:53 -08:00
committed by GitHub
parent 41b59c5445
commit 81bf98c746
6 changed files with 38 additions and 16 deletions

View File

@ -9,6 +9,8 @@ import arrow
from flask import current_app
from cryptography.hazmat.primitives.asymmetric import rsa
from sqlalchemy.orm import relationship
from sqlalchemy.sql.expression import case
from sqlalchemy.ext.hybrid import hybrid_property
@ -148,6 +150,12 @@ class Certificate(db.Model):
cert = lemur.common.utils.parse_certificate(self.body)
return defaults.location(cert)
@property
def key_type(self):
cert = lemur.common.utils.parse_certificate(self.body)
if isinstance(cert.public_key(), rsa.RSAPublicKey):
return 'RSA{key_size}'.format(key_size=cert.public_key().key_size)
@hybrid_property
def expired(self):
if self.not_after <= arrow.utcnow():