Cambio en el formato del número de serie del certificado en el XML de cancelación

This commit is contained in:
El Mau 2021-11-24 15:53:40 -06:00
parent 1df477e0b1
commit b7e8bb3cff
2 changed files with 15 additions and 3 deletions

View File

@ -3,6 +3,7 @@ v 1.43.0 [00-Nov-2021]
- Soporte para entradas de almacen.
- Soporte para multi almacen.
- Soporte para regenerar un ticket.
- Soporte para movimientos entre almacenes
* IMPORTANTE:

View File

@ -30,7 +30,9 @@ class SATCertificate(object):
def _init_values(self):
self._rfc = ''
self._serial_number = ''
self._serial_number2 = ''
self._subject = ''
self._issuer = ''
self._not_before = None
self._not_after = None
self._is_fiel = False
@ -69,11 +71,12 @@ class SATCertificate(object):
self._cer = cer
obj = x509.load_der_x509_certificate(cer, default_backend())
# ~ print(1, obj.issuer.rfc4514_string())
self._issuer = obj.issuer.rfc4514_string()
self._subject = obj.subject.rfc4514_string()
self._rfc = obj.subject.get_attributes_for_oid(
NameOID.X500_UNIQUE_IDENTIFIER)[0].value.split(' ')[0]
self._serial_number2 = str(obj.serial_number)
self._serial_number = '{0:x}'.format(obj.serial_number)[1::2]
self._not_before = obj.not_valid_before
self._not_after = obj.not_valid_after
@ -158,9 +161,9 @@ class SATCertificate(object):
node.text = self.cer_txt
node = xmlsec.tree.find_node(tree, 'X509IssuerName')
node.text = self.subject
node.text = self.issuer
node = xmlsec.tree.find_node(tree, 'X509SerialNumber')
node.text = self.serial_number
node.text = self.serial_number2
node = xmlsec.tree.find_node(tree, 'SignatureValue')
node.text = node.text.replace('\n', '')
@ -178,6 +181,14 @@ class SATCertificate(object):
def serial_number(self):
return self._serial_number
@property
def serial_number2(self):
return self._serial_number2
@property
def issuer(self):
return self._issuer
@property
def subject(self):
return self._subject