Skip to content

Commit

Permalink
fixes encoding utf-8 to tra, cert and privakey
Browse files Browse the repository at this point in the history
  • Loading branch information
lukio committed Feb 5, 2019
1 parent 3136520 commit 470aaf1
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions wsaa.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ def sign_tra(tra, cert=CERT, privatekey=PRIVATEKEY, passphrase=""):

if BIO:
# Firmar el texto (tra) usando m2crypto (openssl bindings para python)
buf = BIO.MemoryBuffer(tra.encode('utf8')) # Crear un buffer desde el texto
buf = BIO.MemoryBuffer(tra) # Crear un buffer desde el texto
#Rand.load_file('randpool.dat', -1) # Alimentar el PRNG
s = SMIME.SMIME() # Instanciar un SMIME
# soporte de contraseña de encriptación (clave privada, opcional)
Expand Down Expand Up @@ -130,15 +130,16 @@ def sign_tra(tra, cert=CERT, privatekey=PRIVATEKEY, passphrase=""):
else:
openssl = r"c:\OpenSSL-Win64\bin\openssl.exe"
cert_f = NamedTemporaryFile()
cert_f.write(cert)
cert_f.write(cert.encode('utf-8'))
cert_f.seek(0)
key_f = NamedTemporaryFile()
key_f.write(privatekey)
key_f.write(privatekey.encode('utf-8'))
key_f.seek(0)
out = Popen([openssl, "smime", "-sign",
"-signer", cert_f.name, "-inkey", key_f.name,
"-outform","DER", "-nodetach"],
stdin=PIPE, stdout=PIPE, stderr=PIPE).communicate(tra.encode("utf8"))[0]
out = Popen([openssl, "smime", "-sign",
"-signer", cert_f.name, "-inkey", key_f.name,
"-outform","DER", "-nodetach"],
stdin=PIPE, stdout=PIPE,
stderr=PIPE).communicate(tra)[0]
cert_f.close()
key_f.close()
return b64encode(out).decode("utf8")
Expand Down

0 comments on commit 470aaf1

Please sign in to comment.