API .NET
HSM Dinamo
Carregando...
Procurando...
Nenhuma entrada encontrado
spb_file_cip.cs

Exemplo de uso da API SPB (Sistema de Pagamentos Brasileiro) utilizando arquivos.

Veja Nota sobre os exemplos.
using System;
using System.IO;
using Dinamo.Hsm;
namespace SPBEncodeDecodeCIPFile
{
class Program
{
static void Main(string[] args)
{
string address = "10.0.0.1";
string user = "usuario";
string pass = "12345678";
//Conecta ao HSM
din.Connect(address, user, pass);
string srcISPB = "12345678";
string dstISPB = "12345678";
try
{
//Nome do arquivo original.
string clearTextFileName = @"c:\tmp\teste.txt";
//Nome do arquivo que conterá o arquivo original codificado.
string encodedFileName = @"c:\tmp\teste_encoded.txt";
//Nome do arquivo que conterá a mensagem decodificada.
string decodedFileName = @"c:\tmp\teste_decoded.txt";
/*
* Faz o encode do arquivo.
*/
FileStream clearTextFile = File.OpenRead(clearTextFileName);
FileStream outEncodedFile = File.OpenWrite(encodedFileName);
din.SPBEncode( srcISPB,
dstISPB,
clearTextFile,
outEncodedFile,
0x00,
0x00,
outEncodedFile.Close();
clearTextFile.Close();
Console.WriteLine("Arquivo codificado com sucesso.");
/*
* Faz o decode do arquivo gerado pela operação de encode.
*/
FileStream inEncodedFile = File.OpenRead(encodedFileName);
FileStream outDecodedFile = File.OpenWrite(decodedFileName);
din.SPBDecode( dstISPB,
srcISPB,
inEncodedFile,
outDecodedFile,
false,
false,
inEncodedFile.Close();
outDecodedFile.Close();
Console.WriteLine("Arquivo decodificado com sucesso.");
}
catch (DinamoException e)
{
Console.WriteLine(e.ErrorCode);
Console.WriteLine(e.Message);
}
finally
{
din.Disconnect();
}
}
}
}
Classe de baixo nível para acesso ao HSM. Para utilizar essa classe é necessário o entendimento mais ...
Definição DinamoApi.cs:15
const UInt32 ND_SPB_USE_CIP1
Definição DinamoApi.cs:1299
const UInt32 ND_SPB_USE_ANY
Definição DinamoApi.cs:1300
const UInt32 ND_SPB_OUT_NO_PADDING
Definição DinamoApi.cs:1312
Classe de API para acesso às funcionalidades do HSM Dinamo. Nessa classe é possível programar utiliza...
Definição DinamoClient.cs:93
Classe de Excecao para erros do Dinamo.
Definição DinamoException.cs:10
override string Message
Definição DinamoException.cs:42
int ErrorCode
Definição DinamoException.cs:26
void Connect(string User, string Password)
Estabelece uma conexão cifrada com o HSM utilizando as configurações de load balance.
Definição DinamoClient.cs:562
void Disconnect(bool flagClose)
Encerra a conexão com o HSM.
Definição DinamoClient.cs:814
byte[] SPBEncode(string szSrcISPB, string szDstISPB, byte[] pbMsgIn, byte bSpecialTreatment)
Codifica uma mensagem com o cabeçalho do SPB, assinando, criptografando e incluindo todos os campos d...
Definição DinamoClient.cs:6392
byte[] SPBDecode(string szSrcISPB, string szDstISPB, byte[] pbMsgIn)
Decodifica uma mensagem no padrão SPB, checando as assinaturas, decriptografando porem não faz a chec...
Definição DinamoClient.cs:6552
Namespace que denota um conjunto de funções para acesso ao HSM Dinamo e suas respectivas exceptions.
Definição DinamoClient.cs:12