BRADESCO CRIPTOGRAFIA

CLAYTONSANTOS 29/07/2014 13:26:36
#439985
Boa tarde a todos!
Estou desenvolvendo um sistema que criptografa e transmite o arquivo criptografado para o Bradesco mas estou com problemas na hora de descriptografar a senha, o código seria esse:

[ô]Local onde se encontra o arquivo criptografado.
Dim strDirChave As String = [Ô]C:/webta/RoboTransmissao/criptografia201407231101.BIN[Ô]

[ô]Variável que recebe o erro caso ocorrer
Dim erroCripto As String

[ô]Senha gerada pela função
Dim aChave(16) As Byte

[ô]Senha para a função
Dim Senha as string = [Ô]010101[Ô]

If (WEBTAEncoderLib.fDecodeKeyFile(DirChave, Senha, aChave.ToString, erroCripto)) = 1 Then
Return chave
End If
If erroCripto <> [Ô][Ô] Then
MsgBox(erroCripto)
End If

[ô]a variável aChave está retornando vazia

A orientação do Manual diz:

4.1.1 fDecodeKeyFile
Este método decodifica o arquivo CRIPTOGRAFIAaaaammddhhMM.bin, que é um
dos arquivos gerados no Ambiente Gerencial do WebTA, obtendo a chave necessária
para criptografar os arquivos de remessa e descriptografar os arquivos de retorno.
int fDecodeKeyFile(char *filepath, char *senha, BYTE *key, char *msgErro)
Parâmetros de entrada:
- filepath: caminho completo do arquivo a ser decodificado;
- senha: senha utilizada para abrir o arquivo;
Parâmetros de saída:
- key: chave de criptografia/descriptografia de arquivos. Este parâmetro
será utilizado nos métodos de iniciação para criptografia e descriptografia
de arquivos. Neste parâmetro deve-se passar um ponteiro para um buffer
pré-alocado com o tamanho de 16 bytes.
- msgErro: ponteiro para string pré-alocada (com 512 bytes) onde, em
caso de erro, será armazenada uma mensagem descritiva do erro.
Retorno:
1 = função executada com sucesso;
0 = erro na execução da função.
Exemplo de utilização da função em linguagem C:
...
unsigned char chaveCripto[16];
char mensagemErro[512];
if (!fDecodeKeyFile([Ô]E:/criptografia200805191537.bin[Ô], [Ô]uio32*A[Ô],
chaveCripto, mensagemErro)) {
//Tratar erro
}
...
4.1.2




CLAYTONSANTOS 30/07/2014 11:46:48
#440034
Resolvido!

trocar a variável
Dim aChave(16) As Byte

por:

Dim aChave(15) as char

Tópico encerrado , respostas não são mais permitidas