Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Proyecto SIF/Veri*Factu/Ley Antifraude > Envío de registros y sus respuestas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #21  
Antiguo 19-09-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por Decanato Ver Mensaje
Si, estoy poniendo -k en todos los comandos curl que utilizo en el programa, pero no entiendo eso de que "no se te van a actualizar solo los certificados de curl"... a qué te refieres??
Sí, el comando curl utiliza certificados SSL/TLS para conexiones seguras, y estos certificados tienen una fecha de caducidad, lo que puede causar el error "cURL 60" si el certificado está expirado o no es válido.
Esos certificados sd hayan en un fichero de la instalación curl, y probablemente, si es el curl de windows, se autoactualicen, pero si es un curl que instalas tú, no se van a actualizar automaticamente, con -k te olvidas de tener que actualizarlo, ya que no va a usar la comprobacion de conexion segura.
Responder Con Cita
  #22  
Antiguo 23-09-2025
Decanato Decanato is offline
Miembro
 
Registrado: abr 2025
Posts: 98
Poder: 2
Decanato Va por buen camino
Bueno, pues parece que la cosa van viento en popa con el tema certificados y curl. En definitiva los problemas que me encontré derivaban de la versión de CURL, estoy utilizando en los clientes la versión 8.16.0 y va perfecto, no me complico y se la pongo a todos. Si os digo una pequeña cosa, y es que yo que trabajo en VB.Net hay un detalle que igual le puede marear a alguien y es que desde la línea de comandos todas las pruebas van ok porque al meter el path del curl en las variables de entorno pues ya desde allí pilla la versión nueva, pero cuando se hace el shell desde el programa curiosamente no toma esas variables de entorno, ojo con eso... Con lo cual he parametrizado la ruta del curl que me interesa y me quito de historias.

Muchas gracias a todos y en especial a ermendalenda y delphi.com.ar por la ayuda y la paciencia que demostráis siempre, y más andando todos tan justo de tiempo como andamos.
Responder Con Cita
  #23  
Antiguo 13-11-2025
rcarteaga rcarteaga is offline
Miembro
 
Registrado: nov 2022
Posts: 25
Poder: 0
rcarteaga Va por buen camino
Error

Buenas tardes. Siguiendo con el problema con los certificados.
He conseguido que funcione por fin al instalar la nueva version de CURL.
Pero algunos certificados me dan el siguiente error:

could not parse PKCS12 file, check password, LibreSSL error error:23FFF071:PKCS12 routines:CRYPTO_internal:mac verify failure


En el mismo pc unos me funcionan y otros me dan este error. Alguien puede darme una idea de como solucionarlo?

Gracias
Responder Con Cita
  #24  
Antiguo 13-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por rcarteaga Ver Mensaje
Buenas tardes. Siguiendo con el problema con los certificados.
He conseguido que funcione por fin al instalar la nueva version de CURL.
Pero algunos certificados me dan el siguiente error:

could not parse PKCS12 file, check password, LibreSSL error error:23FFF071:PKCS12 routines:CRYPTO_internal:mac verify failure


En el mismo pc unos me funcionan y otros me dan este error. Alguien puede darme una idea de como solucionarlo?

Gracias
Si has extraido y generado desde uno existente o has exportado, seguramente haya algún fallo en esa exportación y lp hayas generado sin contraseña, suponiendo que no te estes equivicando con la contraseña claro.
Si lo has expirtado con openssl seguramnete le has dejado sin contraseña cuando la pide en la generacion del pfx/pt2
Responder Con Cita
  #25  
Antiguo 13-11-2025
rcarteaga rcarteaga is offline
Miembro
 
Registrado: nov 2022
Posts: 25
Poder: 0
rcarteaga Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Si has extraido y generado desde uno existente o has exportado, seguramente haya algún fallo en esa exportación y lp hayas generado sin contraseña, suponiendo que no te estes equivicando con la contraseña claro.
Si lo has expirtado con openssl seguramnete le has dejado sin contraseña cuando la pide en la generacion del pfx/pt2
Muchas gracias
Es un certificado directamente generado en FNMT. También he probado a exportarlo con y sin clave.
La contraseña se que no es el problema, por que se la pongo mal aposta y el error es el mismo. Es como si no llega a entrar en los cdatos del certificado.
Responder Con Cita
  #26  
Antiguo 13-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por rcarteaga Ver Mensaje
Muchas gracias
Es un certificado directamente generado en FNMT. También he probado a exportarlo con y sin clave.
La contraseña se que no es el problema, por que se la pongo mal aposta y el error es el mismo. Es como si no llega a entrar en los cdatos del certificado.
La llamada a curl la haces apuntando al almacen dd certificados o al fichero?
Responder Con Cita
  #27  
Antiguo 13-11-2025
rcarteaga rcarteaga is offline
Miembro
 
Registrado: nov 2022
Posts: 25
Poder: 0
rcarteaga Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
La llamada a curl la haces apuntando al almacen dd certificados o al fichero?
Al fichero. E inclui el parametro -k que aconsejabas anteriormente
Responder Con Cita
  #28  
Antiguo 13-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por rcarteaga Ver Mensaje
Al fichero. E inclui el parametro -k que aconsejabas anteriormente
Ok, le daré una vuelta.
Lo de -k también lenestoy dando una vuelta, por que lo hago sobre todo para saltarme la caduxidad del curl, pero es inswguro y no me fio que algun dia los envios con -k los bloqueen, nl por que lo detecten directamente, por que no se puede, pero puede provocar ciertos datos en la conexion que no le gistem de momento lo voy a dejar yp tambien, pero iré observando si curl va poniendo las actualizaciones de los certoficados para meterle una actualización automatica de los mismoa. Descargando desde h t t p s:/ /curl.se/ca/cacert.pem

Última edición por ermendalenda fecha: 13-11-2025 a las 19:21:37.
Responder Con Cita
  #29  
Antiguo 13-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Pon el comando tal cual lo pones (sim contraseñas)
Responder Con Cita
  #30  
Antiguo 14-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Y si tienes instalado el openssl pon esto tambien y mndame del resultado: ojo, solo el encabezado.

openssl pkcs12 -info -in certificado.pfx
Responder Con Cita
  #31  
Antiguo 14-11-2025
rcarteaga rcarteaga is offline
Miembro
 
Registrado: nov 2022
Posts: 25
Poder: 0
rcarteaga Va por buen camino
este es mi comando:
c:\CURL2\curl.exe -v "https://prewww1.aeat.es/wlpl/TIKE-CONT/ws/SistemaFacturacion/VerifactuSOAP" --cert-type P12 --cert "C:\Program Files (x86)\Certificados\certificado.p12":xxxxx -k -H "Content-Type: application/xml" --data-binary "@C:\Documentos-SAT\VeriFactu\2025\11\FA001530002\FA001530002.xml" --output C:\Documentos-SAT\VeriFactu\2025\11\FA001530002\FA001530002_respuesta.xml

Con algún certificado si funciona.
Uso la versión 8.17.0 de CURL, esta version usa libreSSL en vez de OpenSSL
me instalé OpenSSL, pero no se como hacer para que el CURL use OpenSSL en vez de LibreSSL

c:\curl\curl.exe version -V
curl 8.17.0 (x86_64-w64-mingw32) libcurl/8.17.0 LibreSSL/4.2.1 zlib/1.3.1.zlib-ng brotli/1.2.0 zstd/1.5.7 WinIDN libpsl/0.21.5 libssh2/1.11.1 nghttp2/1.68.0 ngtcp2/1.17.0 nghttp3/1.12.0
Release-Date: 2025-11-05
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli CAcert HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL SSLS-EXPORT SSPI threadsafe UnixSockets zstd
Responder Con Cita
  #32  
Antiguo 14-11-2025
rcarteaga rcarteaga is offline
Miembro
 
Registrado: nov 2022
Posts: 25
Poder: 0
rcarteaga Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Y si tienes instalado el openssl pon esto tambien y mndame del resultado: ojo, solo el encabezado.

openssl pkcs12 -info -in certificado.pfx

Este es el resultado:
MAC: sha1, Iteration 1024
MAC length: 20, salt length: 20
PKCS7 Data
Shrouded Keybag: pbeWithSHA1And3-KeyTripleDES-CBC, Iteration 1024
Bag Attributes
localKeyID: 32 23 0C E7 ED 55 CD 65 77 C3 AC 81 77 30 82 2D 94 B6 C5 01
friendlyName: xxxxxxx
Key Attributes: <No Attributes>

Y me pide la clave PEM , que no se que es ni cual es

Y es curioso, en un certificado que si me funciona. Al poner esto del openSSL no reconoce la contraseña, y de seguro que es correcta

Última edición por rcarteaga fecha: 14-11-2025 a las 14:43:18.
Responder Con Cita
  #33  
Antiguo 14-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Cita:
Empezado por rcarteaga Ver Mensaje
Este es el resultado:
MAC: sha1, Iteration 1024
MAC length: 20, salt length: 20
PKCS7 Data
Shrouded Keybag: pbeWithSHA1And3-KeyTripleDES-CBC, Iteration 1024
Bag Attributes
localKeyID: 32 23 0C E7 ED 55 CD 65 77 C3 AC 81 77 30 82 2D 94 B6 C5 01
friendlyName: xxxxxxx
Key Attributes: <No Attributes>

Y me pide la clave PEM , que no se que es ni cual es

Y es curioso, en un certificado que si me funciona. Al poner esto del openSSL no reconoce la contraseña, y de seguro que es correcta
La clave pen es la contraseña del certificado, está mal detallado por openssl
Responder Con Cita
  #34  
Antiguo 14-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Prueba esto a ver si es que ese pfx esta generado con un sistema antiguo:
openssl pkcs12 -legacy -in certificado.pfx -info
Responder Con Cita
  #35  
Antiguo 14-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Y dame wl error que te devuelve xon wl anterior comando openssl
Y pruwba a darle a enter wn la clave, si te funciona con enter, no tiene clave
Responder Con Cita
  #36  
Antiguo 14-11-2025
rcarteaga rcarteaga is offline
Miembro
 
Registrado: nov 2022
Posts: 25
Poder: 0
rcarteaga Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Y dame wl error que te devuelve xon wl anterior comando openssl
Y pruwba a darle a enter wn la clave, si te funciona con enter, no tiene clave
Lo primero muchas gracias por tu paciencia y tu ayuda.
Resumo un poco
El certificado A me funciona correctamente con CURL al enviar el XML a Verifactu
El certificado A con OPENSSL (al final no da error):
Enter Import Password:
MAC: sha1, Iteration 1024
MAC length: 20, salt length: 20
PKCS7 Data
Shrouded Keybag: pbeWithSHA1And3-KeyTripleDES-CBC, Iteration 1024
Bag Attributes
localKeyID: AF 4F D1 09 DA 5F 9E 7E 6F 16 AE 1B 2E CD 37 31 3D E0 2F 81
friendlyName: xxxx_NIF
Key Attributes: <No Attributes>

El certificado B da error al usar CURL para el envio a Verifactu
could not parse PKCS12 file, check password, LibreSSL error error:23FFF071:PKCS12 routines:CRYPTO_internal:mac verify failure
El certificado B con OPENSSL:
MAC: sha1, Iteration 1024
MAC length: 20, salt length: 20
PKCS7 Data
Shrouded Keybag: pbeWithSHA1And3-KeyTripleDES-CBC, Iteration 1024
Bag Attributes
localKeyID: 32 23 0C E7 ED 55 CD 65 77 C3 AC 81 77 30 82 2D 94 B6 C5 01
friendlyName: xxxx:NIF
Key Attributes: <No Attributes>
Responder Con Cita
  #37  
Antiguo 14-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Si estas seguro de que estas usando la contraseña correctamente el certificado B, está corrupto.
Lo dice en el mismo error:.
could not parse PKCS12 file, check password
mac verify failure

Tiene la Mac rota
O se ha exportado con una proteccion openssl/libressl
Puedes peobar a regenerarlo
Ahora tw digo
Responder Con Cita
  #38  
Antiguo 14-11-2025
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 2.759
Poder: 7
ermendalenda Va por buen camino
Ejecuta este comando dd windows: certmgr.msc
Selecciona el certificado B
Exportalo, incluyendo la clave privada
Swlwcciona AES-256-SHA256 si te deja,
Ponle una xontraweña clara sin espaxios ni cafacteres especiales, que a ver ai es eso?
Guqrdalo como .pfx

Si esta dañada la Mac no te va a dejar

Última edición por ermendalenda fecha: 14-11-2025 a las 15:13:10.
Responder Con Cita
  #39  
Antiguo 14-11-2025
rcarteaga rcarteaga is offline
Miembro
 
Registrado: nov 2022
Posts: 25
Poder: 0
rcarteaga Va por buen camino
Gracias. Pedire que lo vuelvan a generar
Responder Con Cita
  #40  
Antiguo 14-11-2025
rcarteaga rcarteaga is offline
Miembro
 
Registrado: nov 2022
Posts: 25
Poder: 0
rcarteaga Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Ejecuta este comando dd windows: certmgr.msc
Selecciona el certificado B
Exportalo, incluyendo la clave privada
Swlwcciona AES-256-SHA256 si te deja,
Ponle una xontraweña clara sin espaxios ni cafacteres especiales, que a ver ai es eso?
Guqrdalo como .pfx
Ninguno de los 2 certificados estan instalados.
Pero he probado a instalar el B y se instalo, por eso se que la pwd es correcta.
EN principio ya hice lo que dijiste, pero lo intento de nuevo
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
curl para hacer una petición SOAP, Ayuda!! JETA Registros de Facturacion y Eventos (XML) 6 16-07-2025 12:54:05
tengo openssl zlib curl iconv libssh libxml2 libxslt version lib para static linkin JXJ C++ Builder 2 12-07-2017 00:17:09


La franja horaria es GMT +2. Ahora son las 22:11:05.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi