Sello del Emisor Invalido VB6 + Chilkat
Publicado: Mié Jun 26, 2013 3:36 pm
Hola.
Con esto de los cambios del sat estoy haciendo modificaciones en el sistema de facturación que actualmente estan utilizando. Es un sistema propio en vb6 y que uso para sellar chilkat. Para facturas en CFD no tengo ningun problema pero ahora que estoy haciendo las modificaciones para CFDI al parecer todo estaba funcionando correctamente. Me contacte con un PAC y mi CFDI me lo valida correctamente pero ahora que estoy probando con otro me marca el siguiente error "Sello del Emisor Invalido". Agrego mi archivo xml y mi codigo que utilizo para sellar mi cfdi
Private Function GenerarSello() As String
Dim pkey As New privateKey
Dim success As Long
Dim pkeyXml As String
Dim rsa As New ChilkatRsa
pkey.LoadPkcs8EncryptedFile App.Path & DIR_PKI & "aaa010101aaa__csd_01.key", "12345678a"
pkeyXml = pkey.GetXml
success = rsa.UnlockComponent(CK_KEY)
If (success <> 1) Then
MsgBox rsa.LastErrorText & vbCrLf, vbCritical
Exit Function
End If
success = rsa.ImportPrivateKey(pkeyXml)
If (success <> 1) Then
Debug.Print rsa.LastErrorText & vbCrLf
Exit Function
End If
rsa.Charset = "utf-8"
rsa.EncodingMode = "base64"
rsa.LittleEndian = 0
Dim base64Sig As String
' Aplicamos el hash md5 a la cadena original
'base64Sig = rsa.SignStringENC(ObtenerCadenaOriginal(m_xmlDOM), "md5")
base64Sig = rsa.SignStringENC(ObtenerCadenaOriginal(m_xmlDOM), "sha1")
CadenaOriginal = ObtenerCadenaOriginal(m_xmlDOM)
GenerarSello = base64Sig
End Function
Con esto de los cambios del sat estoy haciendo modificaciones en el sistema de facturación que actualmente estan utilizando. Es un sistema propio en vb6 y que uso para sellar chilkat. Para facturas en CFD no tengo ningun problema pero ahora que estoy haciendo las modificaciones para CFDI al parecer todo estaba funcionando correctamente. Me contacte con un PAC y mi CFDI me lo valida correctamente pero ahora que estoy probando con otro me marca el siguiente error "Sello del Emisor Invalido". Agrego mi archivo xml y mi codigo que utilizo para sellar mi cfdi
Private Function GenerarSello() As String
Dim pkey As New privateKey
Dim success As Long
Dim pkeyXml As String
Dim rsa As New ChilkatRsa
pkey.LoadPkcs8EncryptedFile App.Path & DIR_PKI & "aaa010101aaa__csd_01.key", "12345678a"
pkeyXml = pkey.GetXml
success = rsa.UnlockComponent(CK_KEY)
If (success <> 1) Then
MsgBox rsa.LastErrorText & vbCrLf, vbCritical
Exit Function
End If
success = rsa.ImportPrivateKey(pkeyXml)
If (success <> 1) Then
Debug.Print rsa.LastErrorText & vbCrLf
Exit Function
End If
rsa.Charset = "utf-8"
rsa.EncodingMode = "base64"
rsa.LittleEndian = 0
Dim base64Sig As String
' Aplicamos el hash md5 a la cadena original
'base64Sig = rsa.SignStringENC(ObtenerCadenaOriginal(m_xmlDOM), "md5")
base64Sig = rsa.SignStringENC(ObtenerCadenaOriginal(m_xmlDOM), "sha1")
CadenaOriginal = ObtenerCadenaOriginal(m_xmlDOM)
GenerarSello = base64Sig
End Function