Ir para conteúdo
  • Cadastre-se

dev botao

Dificuldade para criptografar senha do certificado digital


Ver Solução Respondido por Márcio Barreto Santana,
  • Este tópico foi criado há 2073 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Boa tarde!!!

Sou novato aqui no ACBr.

estou com dificuldades para encontrar alguma maneira para criptografar a senha do certificado no ACBrMonitor.ini

image.png.766b790175f9f6170fdde7920d0d2a05.png

a senha que estou informando é (38154646 )

pelo o q notei, o ACBrMonitor criptografa essa senha e salva assim:

image.png.dc3c4f4ca12fe0875ea6262db27398dd.png

Eu uso o VB.Net 2010. Alguém sabe me informar algum algorítimo e quais os parâmetros que o ACBr.monitor usa para criptografar? 

 

 

Editado por Márcio Barreto Santana
Duplicação da imagem
Link para o comentário
Compartilhar em outros sites

  • Membros Pro
  • Solution

Bom dia Daniel.

Obrigado pelo seu retorno. este tipo de feedback.

Eu já uso alguns algorítimos para criptografar. Pretendo realizar alguns teste. No entanto eu gostaria de saber qual é a chave que o ACr Monitor usa pra realizar esta criptografia?

abaixo tenho um exemplo dos que uso:

image.png.97c53bd4be2c8b564b80e821e0c6a4ae.png

Do qual em vermelho (No Código) é a chave de criptografia.

Link para o comentário
Compartilhar em outros sites

Em 20/08/2018 at 11:03, Márcio Barreto Santana disse:

Bom dia Daniel.

Obrigado pelo seu retorno. este tipo de feedback.

Eu já uso alguns algorítimos para criptografar. Pretendo realizar alguns teste. No entanto eu gostaria de saber qual é a chave que o ACr Monitor usa pra realizar esta criptografia?

abaixo tenho um exemplo dos que uso:

image.png.97c53bd4be2c8b564b80e821e0c6a4ae.png

Do qual em vermelho (No Código) é a chave de criptografia.

Também trabalho com com outra linguagem, não consegui migrar a criptografia para VB.NET.

Minha solução foi criar um projeto em Delphi que faz essa alteração para mim. Eu copiei as unidades do acbr que fazem a criptografia e fiz o meu sistema criar um arquivo .INI com a senha para alterar, dai ele chama esse  "sisteminha" eu leio a senha, faço a criptografia, salvo no arquivo .INI de configuração do acbrmonitor e fecha sozinho. Veja como ficou abaixo:

 

Arquivo INI que o sistema abaixo lê:

[ACBR]
senha=12345678
caminho=C:\ACBrMonitorPlus\

 

Sistema:

unit Unit3;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, ACBrUtil, Vcl.StdCtrls, IniFiles;

type
  TForm3 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    Procedure GravaINICrypt(INI : TIniFile; Section, Ident, AString, Pass : String );
  end;

var
  Form3: TForm3;

const
  _C = 'tYk*5W@';

implementation

{$R *.dfm}

Procedure TForm3.GravaINICrypt(INI : TIniFile; Section, Ident, AString, Pass : String );
 var SStream  : TStringStream ;
     CryptStr : String ;
begin
  CryptStr := StrCrypt( AString, Pass) ;
  SStream := TStringStream.Create(CryptStr) ;
  try
     INI.WriteBinaryStream(Section, Ident, SStream) ;
  finally
     SStream.Free ;
  end ;
end ;

procedure TForm3.FormCreate(Sender: TObject);
var
  senha: string;
  Ini: TIniFile;
  IniGSECF: TIniFile;
  ACBrMonitorINI: string;
  DirGSECF: string;
begin
  try
    //Carrega caminho do arquivo ini (que contem a senha e o caminho do acbr) gerado pelo meu sistema.
    DirGSECF := (ExtractFilePath(Application.ExeName) + 'ParAcbrGsecf.ini');
    //DirGSECF := ('D:\Documentos\SharpDevelop Projects\wingsecf modelo 55 implementado\bin\Debug\ParAcbrGsecf.ini');

    IniGSECF := TIniFile.Create(DirGSECF);

    //Ler arquivo ini criado ao salvar empresa no meu sistema (e senha for diferente do salvado no banco) no módulo GSECF
    senha          := IniGSECF.ReadString('ACBR', 'senha', '');
    ACBrMonitorINI := IniGSECF.ReadString('ACBR', 'caminho', '');

    ACBrMonitorINI := ACBrMonitorINI + 'ACBrMonitor.ini';

    Ini := TIniFile.Create(ACBrMonitorINI);

    GravaINICrypt(INI, 'Certificado', 'Senha', senha, _C);
  except

  end;

  self.Close;

  Application.Terminate;
end;

end.

 

Editado por abrahaofv
  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2073 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...