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?

DESCARGA SOFTWARE PARA FACTURA ELECTRONICA DE AQUI.
Facturacion, Validacion, Addendas, Librerias de programacion, etc.
CARTA PORTE V3.1
ECODEX TIENE ESTOS NUEVOS DATOS DE CONTACTO :
Comercializacion y Ventas - Evelia Vicke evicke@ecodex.com.mx 33-16-03-03-48
Soporte - Humberto Guerrero soporte@ecodex.com.mx 33-34-90-46-03
.
Error al validar un Certificado con contraseña Mayusculas
-
- Mensajes: 35
- Registrado: Mar Ene 04, 2011 9:00 am
- Dado
- Mensajes: 15981
- Registrado: Mar Jul 06, 2010 7:56 pm
Re: Error al validar un Certificado con contraseña Mayuscula
OpenSSL maneja muy bien mayusculas y minusculas, aqui tendrias que analizar como es que tu programa manda llamar para validar
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
-
- Mensajes: 35
- Registrado: Mar Ene 04, 2011 9:00 am
Re: Error al validar un Certificado con contraseña Mayuscula
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
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
- Dado
- Mensajes: 15981
- Registrado: Mar Jul 06, 2010 7:56 pm
Re: Error al validar un Certificado con contraseña Mayuscula
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?
Revisaste si el *.bat que se graba en disco lleva el pass:xxxxx tal como lo esperas?
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
-
- Mensajes: 35
- Registrado: Mar Ene 04, 2011 9:00 am
Re: Error al validar un Certificado con contraseña Mayuscula
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?
Saludos?
- Dado
- Mensajes: 15981
- Registrado: Mar Jul 06, 2010 7:56 pm
Re: Error al validar un Certificado con contraseña Mayuscula
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
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
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!