Página 1 de 1

Error al validar un Certificado con contraseña Mayusculas

Publicado: Mié Ene 30, 2013 10:08 am
por desicom
Genere un Certificado a finales del 2012 y no los habia regsitrado en PAC, Pedi que me activaran la cuenta y lo regsitre si problemas
el problema que tengo es que, la contraseña es con letras mayuscula y al momento de validarlo en mi programa con el OPENSSL.EXE me carca el error que la contrasela no es correcta
con ese mismo programa estoy validando otro cetificado con contraseña con minusculas y si me lo valida bien, se puede resolver este problema?

Re: Error al validar un Certificado con contraseña Mayuscula

Publicado: Mié Ene 30, 2013 10:28 am
por Dado
OpenSSL maneja muy bien mayusculas y minusculas, aqui tendrias que analizar como es que tu programa manda llamar para validar

Re: Error al validar un Certificado con contraseña Mayuscula

Publicado: Mié Ene 30, 2013 11:11 am
por desicom
valido de esta forma en VISUAL FOXPRO 9.0

llamo la funcion :

IF NOT CFDValidarKeyCer(cArchivoKey, cArchivoCer, cPasswrdKey,".\SSL")
WAIT windows "ERROR: - Validando archivos key y cer..." + CFDConf.ultimoError
RETURN
ENDIF


*-- CFDValidarKeyCer (Funcion)
* Valida que los archivos KEY y CER indicados sean complementarios
*
* Autor: Victor Espina
*
FUNCTION CFDValidarKeyCer(pcArchivoKEY, pcArchivoCER, pcPassword, pcOpenSSL)
*
CFDConf.UltimoError = ""

*-- Se verifica que la carpeta indicada contenga el archivo OPENSSL.EXE
IF EMPTY(pcOpenSSL)
pcOpenSSL = CFDConf.openSSL
ENDIF
IF EMPTY(pcOpenSSL) OR NOT FILE(ADDBS(pcOpenSSL) + "OPENSSL.EXE")
CFDConf.ultimoError = "No se encontro el archivo OPENSSL.EXE en la ruta indicada"
RETURN .F.
ENDIF
pcOpenSSL = GetShortName(ADDBS(FULLPATH(pcOpenSSL)) + "OPENSSL.EXE")


*-- Se prepara un archivo BAT con los comandos a ejecutar
LOCAL cBATFile,cTempFile
cBATFile = GetTempFile("BAT")
cTempFile = JUSTSTEM(cBATFile)

LOCAL cBuff
cBuff = pcOpenSSL + " x509 -inform DER -in {cerFile} -noout -modulus > {tempFile}.m1" + CRLF + ;
pcOpenSSL + " pkcs8 -inform DER -in {keyFile} -passin pass:{password} -out {tempFile}.pem" + CRLF + ;
pcOpenSSL + " rsa -in {tempFile}.pem -noout -modulus > {tempFile}.m2" + CRLF + ;
"DEL {tempFile}.pem" + CRLF

cBuff = STRT(cBuff,"{cerFile}",GetShortName(FULLPATH(pcArchivoCER)))
cBuff = STRT(cBuff,"{keyFile}",GetShortName(FULLPATH(pcArchivoKEY)))
cBuff = STRT(cBuff,"{password}",pcPassword)
cBuff = STRT(cBuff,"{tempFile}",cTempFile)
STRTOFILE(cBuff,cBATFile)



*-- Se ejecuta el BAT
LOCAL oWSH
oWSH = CREATEOBJECT("WScript.Shell")
oWSH.Run(cBATFile, 0, .T.)

IF !FILE(cTempFile + ".M1") OR !FILE(cTempFile + ".M2")
CFDConf.ultimoError = "Ocurrio un error al intentar validar los archivos KEY y/o CER"
ERASE (cTempFile + ".*")
RETURN .F.
ENDIF

LOCAL cCerMod, cKeyMod
cCerMod = FILETOSTR(cTempFile + ".m1")
cKeyMod = FILETOSTR(cTempFile + ".m2")

IF EMPTY(cCerMod)
CFDConf.ultimoError = "No se pudo obtener el modulus del archivo CER"
ERASE (cTempFile + ".*")
RETURN .F.
ENDIF

IF EMPTY(cKeyMod)
CFDConf.ultimoError = "No se pudo obtener el modulus del archivo KEY (verifique la contraseña)"
ERASE (cTempFile + ".*")
RETURN .F.
ENDIF

LOCAL lValid
lValid = (cCerMod == cKeyMod)
IF NOT lValid
CFDConf.ultimoError = "El archivo KEY no corresponde con el archivo CER indicado"
ENDIF


*-- Se eliminan los temporales creados
ERASE (cTempFile + ".*")


RETURN lValid
*
ENDFUNC

Re: Error al validar un Certificado con contraseña Mayuscula

Publicado: Mié Ene 30, 2013 11:18 am
por Dado
La clave (que no funciona) incluye otro caracter que no sea estrictamente letras y numeros?

Revisaste si el *.bat que se graba en disco lleva el pass:xxxxx tal como lo esperas?

Re: Error al validar un Certificado con contraseña Mayuscula

Publicado: Jue Ene 31, 2013 10:44 am
por desicom
Ya genere un certificado nuevo con contraseña nueva y el sistema ya me lo valida bien, pero ahora al momento de timbrar el sistema se queda bloqueado y no me modifica el XML generado anteriormente, lo raro es que con el mimo programa hago una factura con los certificados de prueba y el sistema me lo genera perfectamente con los mismos datos cliente receptor y los mimos productos, esta fallando en estos momentos el PAC?
Saludos?

Re: Error al validar un Certificado con contraseña Mayuscula

Publicado: Jue Ene 31, 2013 10:54 am
por Dado
Normalmente el PAC no es el culpable de que tu sistema truene o se quede bloqueado.

No lo mencionas (y con mas de mil seiscientos usuarios de este foro me es dificil adivinar) pero si estas timbrando con ECODEX entonces debes cargar ese nuevo certificado en su portal