Creación de CFDI 3.2

Para quienes programan Visual Basic aqui esta la solucion
[[ FORO CERRADO DEBIDO A QUE YA LA INFORMACION YA NO ES VIGENTE ]]
inspirionweb
Mensajes: 1
Registrado: Vie Feb 24, 2012 1:02 pm

Re: Creación de CFDI 3.2

Mensajepor inspirionweb » Lun Sep 24, 2012 7:55 am

Disculpa tengo problemas al pasar el parametro de la contraseña en el cosigo me dice que son muchos parametros.
Me puedes decir que estoy haciendo equivocado.


Public Shared Function ObtenerSelloDigital(ByVal cadenaOriginal As String, ByVal rutaLlavePrivada As String, ByVal password As String) As String
Dim passwordSeguro As New SecureString()
passwordSeguro.Clear()
For Each c As Char In password.ToCharArray()
passwordSeguro.AppendChar(c)
Next
Dim llavePrivadaBytes As Byte() = System.IO.File.ReadAllBytes(rutaLlavePrivada)
Dim rsa As RSACryptoServiceProvider = JavaScience.opensslkey.DecodeEncryptedPrivateKeyInfo(llavePrivadaBytes, passwordSeguro) aqui es donde me dice que son muchos parametros
Dim hasher As New SHA1CryptoServiceProvider()
Dim bytesFirmados As Byte() = rsa.SignData(System.Text.Encoding.UTF8.GetBytes(cadenaOriginal), hasher)
Dim selloDigital As String = Convert.ToBase64String(bytesFirmados)
Return selloDigital

End Function

jasistemas
Mensajes: 158
Registrado: Mié Ene 11, 2012 3:08 pm
Contactar:

Re: Creación de CFDI 3.2

Mensajepor jasistemas » Mar Sep 25, 2012 9:43 am

Que estas usando?, un .pem?? x que ese programa yo lo uso y le envio el .key directamente y NO DEBE PASAR por esa funcion.

RSACryptoServiceProvider rsa = DecodeEncryptedPrivateKeyInfo(pkcs8encprivatekey, passwordArchivoKeyTmp ); // Esta rutina no se usa


Debe pasar por aqui (con .key):
// PASO 5.- RUTINA VALIDA PARA ARCHIVOS DER (PKCS8, .key y .cer)
// nos devolvera un objeto tipo RSACryptoServiceProvider
//----------------
// Accede a la rutina donde SOLICITARA EL PASSWORD del .KEY
Debug.Print("------------ PASO X 5 de DecodeDERKey");
// OK esta es la parte que SI SE USA
rsa = DecodeEncryptedPrivateKeyInfo(keyblob,passwordArchivoKeyTmp ); //PKCS #8 encrypted

saludos
Juan Arturo

rent84
Mensajes: 15
Registrado: Mar Jul 31, 2012 1:07 pm

Re: Creación de CFDI 3.2

Mensajepor rent84 » Mié Oct 10, 2012 10:35 am

Hola AlgusDark

Solo para preguntar en donde puedo conseguir la DLL de OpenSSLKey.cs y la foma para implementarlo en mi proyecto, lo estoy haciendo con Visual Basic 6 y aun no puedo sellar el XML.

De antemano garcias.

jasistemas
Mensajes: 158
Registrado: Mié Ene 11, 2012 3:08 pm
Contactar:

Re: Creación de CFDI 3.2

Mensajepor jasistemas » Jue Oct 11, 2012 11:07 am

Nativa, buscalo como tal "OpenSSLKey.cs" en San Google, no es dll, es CODIGO FUENTE nativo en C# que puedes integrar en tu proyecto .net.

Si requieres algo mas completo con codigo fuente o como implementarlo (en .net, VB, VFP), busca mi post en el foro "Soluciones Propias y de Terceros", alli estan mis datos de contacto.

http://www.validacfd.com/phpbb3/viewtopic.php?f=14&t=1016&p=12727&hilit=jasistemas%40hotmail.com#p12727
Saludos
Juan Arturo Gomez

alf
Mensajes: 5
Registrado: Mar Oct 16, 2012 4:25 pm

Re: Creación de CFDI 3.2

Mensajepor alf » Mar Oct 16, 2012 5:30 pm

La clase opensslkey.cs la agregas a tu proyecto...

Y así la usas:

http://www.validacfd.com/phpbb3/viewtopic.php?f=17&t=2092&p=17847#p17847

jreynac
Mensajes: 7
Registrado: Vie Nov 30, 2012 10:29 am

Re: Creación de CFDI 3.2

Mensajepor jreynac » Vie Nov 30, 2012 11:00 am

Muchas felicidades AlgusDark, por tu aporte, por cierto como se genera la secuencia del codigo:
1.- Generar el codigo que usas para el boton (hasta ahi no hay problema).
Pero ya de ahi me pierdo como usuar lo siguiente:
Public Shared Function GetCadenaOriginal(ByVal xmlDoc As String, ByVal fileXSLT As String) As String
Public Shared Function ObtenerSelloDigital(cadenaOriginal As String, rutaLlavePrivada As String, password As String) As String
Public Sub AplicarSelloDigital(selloDigitalOriginal As String)

como los mandas llamar y como le pasas los parametros, muchas gracias.

Adriana
Mensajes: 1
Registrado: Vie Nov 30, 2012 1:41 pm

Re: Creación de CFDI 3.2

Mensajepor Adriana » Vie Nov 30, 2012 3:48 pm

Hola, tengo un problema con la generacion de sello 3.2.

Desarrolle el sistema de facturacion en VB6 y facturamos desde el 2010 con la versión 2.2 sin problema, se genera la cadena original y sello sin errores.

Pero estoy empezando a cambiar a versión 3.2, y cuando entro al sitio del SAT para validar el archivo XML me indica que la estructura es correcta pero el sello no valido.
Solo cambie valores en la cadena original y utilize el mismo metodo para generar el sello, que utilizo para version 2.2.

Mi pregunta es: hay algun nuevo parametro a cambiar en la generaion del sello para 3.2?

Aqui envio el resultado que me genera el validador del SAT:

Versión del estándar: 3.2
Codificación
Comprobante expresado en UTF-8
Validación de estructura: Válido
Cadena original del CFDI:
||3.2|2012-11-30T12:32:53|ingreso|PAGO EN UNA SOLA EXHIBICION|60 DIAS FECHA FACT.|57994.20|67273.27|CHEQUE 9444|DISTRITO FEDERAL|DTC810429TA6|DISTRIBUIDORA TEXTIL DEL CENTRO,S. A. DE C. V.|VENUSTIANO CARRANZA|131|PISO 3 3A|CENTRO|MEXICO|CUAUHTEMOC|DISTRITO FEDERAL|MEXICO|06060|GENERAL DE LEY PERSONA MORAL|CDA030519B56|CONFECCIONES DAVANE, S. A. DE C. V.|SAN SALVADOR EL VERDE|22|CENTRO|MEXICO|CUAUHTEMOC|DISTRITO FEDERAL|MEXICO|06080|999.90|MT|CATHERINE ETRO EST. DOM.|58.00|57994.20|IVA|16.00|9279.07|9279.07||
Digestión SHA-1 de cadena original expresada en hexadecimal
96de21d77d4a0aa31c1f9c9ad612de828a484e07
Certificado usado : 00001000000102442892
Certificado reportado : 00001000000102442892
El sello del CFDI no es válido

Avatar de Usuario
Dado
Mensajes: 15824
Registrado: Mar Jul 06, 2010 8:56 pm

Re: Creación de CFDI 3.2

Mensajepor Dado » Sab Dic 01, 2012 8:37 pm

Compara el SHA1 que tu calculas vs. los SHA1 que te muestran los validadores, si son iguales entonces el problema no esta en la cadena, si no son iguales entonces las cadenas no son iguales y tienes que corregirla
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!

jasistemas
Mensajes: 158
Registrado: Mié Ene 11, 2012 3:08 pm
Contactar:

Re: Creación de CFDI 3.2

Mensajepor jasistemas » Mar Dic 04, 2012 9:05 am

El XML de CFD y el CFDI no son exactamente iguales, comparalos, deben tener el prefijo "cfdi" en cada nodo.

Por otra parte, si ya estas facturando o tus clientes que facturen en CFD 2.2 no tienen ninguna ventaja en que se migren a CFDI (aunque te lo quieran vender)

omh
Mensajes: 46
Registrado: Mié Nov 10, 2010 12:06 pm

Re: Creación de CFDI 3.2

Mensajepor omh » Jue Ene 31, 2013 4:41 pm

Hola a todos compañeros

nada mas para comentar 2 cosas acerca de esta libreria, a ver si me pueden ayudar.

1.- en la linea 294 hay un comentario en el metodo DecodeEncryptedPrivateKeyInfo que dice asi "// probably a bad pswd entered" :shock: el cual no indica que hay algo raro o que no se implemento correctamente, me ha pasado alrededor de 5 veces aprox que la momento de ejecutar dicho metodo llega hasta esa linea y regresa nada, tal como si se hubieran equivocado en introducir la clave pero no es asi por que ya he corroborado en el validacfd de Dado y el .key y el password estan correctos, alguien a tenido este problema? lo pudo solucionar?

2.-usando esta misma librearia tiene un comportamiento raro en ambiente web (asp.net) me ha pasado que DecodeEncryptedPrivateKey regresa nada pero moviendo ala configuracion de iis se corrije. tambien me ha pasado que que con ciertos .keys tambien regresa nada pero solo pasa en el ambiente web por que en desktop no tengo ese problema con dicho .key.

si alguien ha tenido estos detalles por favor comente.

Saludos.


Saludos.


Volver a “Visual Basic”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados