Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-05-2010
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
y como se genera el archivo .pem

a mi me pide contraseña o me da error.
pkcs8 -inform DER -in AAA010101AAA_0408021316S.key -out AAA010101AAA.key.pem


o mejor aun usando delphi, ¿como se hace?
Responder Con Cita
  #2  
Antiguo 13-05-2010
Mosis2k2 Mosis2k2 is offline
Miembro
 
Registrado: feb 2007
Posts: 12
Poder: 0
Mosis2k2 cantidad desconocida en este momento
Cita:
Empezado por JXJ Ver Mensaje
y como se genera el archivo .pem

a mi me pide contraseña o me da error.
pkcs8 -inform DER -in AAA010101AAA_0408021316S.key -out AAA010101AAA.key.pem


o mejor aun usando delphi, ¿como se hace?
te paso el codigo que yo utilice para convertir el archivo a .pem.
Código:
//---------------------------------------------------------
procedure TfrmEmpresa.KeyToPem;
var
  BatFile: TStringList;
  LlaveDerToPEM, OutFile, BatFileName: string;
begin
  //Convertimos el CERTIFICADO de formato DER a formato PEM con la siguiente instrucción de OpenSSL
  OutFile:= FolderFilesPEM + ExtractFileName(txtPrivateKey.Text)+'.pem';
  LlaveDerToPEM := 'C:\MiFactura\Bin\openssl pkcs8 -inform DER -in '+ txtPrivateKey.Text  +' -out ' + OutFile;
  //Creamos el archivo .Bat
  BatFileName:= 'C:\MiFactura\Bin\'+LlaveBat;
  BatFile:= TStringList.Create;
  BatFile.Add(LlaveDerToPEM);
  BatFile.SaveToFile(BatFileName);
  try
    WinExecAndWait32(BatFileName,1);
  except
    on E : Exception do
      ShowMessage(E.ClassName+' Se provoco la excepción : '+E.Message);
  end;
  if FileExists(OutFile) then begin
    if LengthFile(OutFile) = 0 then
      MessageDlg('Verifique que la contraseña sea correcta e intentelo nuevamente.', mtError, [mbOk], 0);
  end;
  PrivateKeyPemFile:= OutFile;
end;
//---------------------------------------------------------
Saludos.
Responder Con Cita
  #3  
Antiguo 13-05-2010
dado dado is offline
Miembro
 
Registrado: may 2010
Posts: 76
Poder: 15
dado Va por buen camino
Cita:
te paso el codigo que yo utilice para convertir el archivo a .pem.

Código:
//---------------------------------------------------------procedure TfrmEmpresa.KeyToPem;var BatFile: TStringList; LlaveDerToPEM, OutFile, BatFileName: string;begin //Convertimos el CERTIFICADO de formato DER a formato PEM con la siguiente instrucción de OpenSSL OutFile:= FolderFilesPEM + ExtractFileName(txtPrivateKey.Text)+'.pem'; LlaveDerToPEM := 'C:\MiFactura\Bin\openssl pkcs8 -inform DER -in '+ txtPrivateKey.Text +' -out ' + OutFile; //Creamos el archivo .Bat BatFileName:= 'C:\MiFactura\Bin\'+LlaveBat; BatFile:= TStringList.Create; BatFile.Add(LlaveDerToPEM); BatFile.SaveToFile(BatFileName); try WinExecAndWait32(BatFileName,1); except on E : Exception do ShowMessage(E.ClassName+' Se provoco la excepción : '+E.Message); end; if FileExists(OutFile) then begin if LengthFile(OutFile) = 0 then MessageDlg('Verifique que la contraseña sea correcta e intentelo nuevamente.', mtError, [mbOk], 0); end; PrivateKeyPemFile:= OutFile;end;//---------------------------------------------------------
Saludos.
No he probado esta rutina aunque parece muy buena, ahora, si me permites dos consejos :

1. Enmarca los nombre de archivo con comilla doble, eso te permite usar directorios con nombres largos y espacios entre ellos
2. usa la opcion -passin para pasarle la clave y que no te la pida en la ventana de MSDOS

Es decir, te recomiendo que agregues:

Código Delphi [-]
clave := InputBox('SE REQUIERE LA CLAVE','Introduzca su Clave Privada del Certificado','');
...
...
LlaveDerToPEM := 'C:\MiFactura\Bin\openssl pkcs8 -inform DER -in "'+ txtPrivateKey.Text  +'" -passin pass:' + clave + ' -out "' + OutFile +'"';
  //Creamos el archivo .Bat << nota las comillas doble " que se agregaron

//De esta forma txtPrivateKey.Text puede ser = 'c:\archivos de programa\mis documentos\es decir\nombres largos y con espacios\privatekey.key'

Última edición por dado fecha: 13-05-2010 a las 23:23:48.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Mexico - Como crear sellos en FACTURA ELECTRONICA.. pcicom API de Windows 12 10-11-2012 18:46:55
Factura Electrónica aig Varios 13 10-12-2010 17:12:44
factura electronica cmm07 Varios 4 02-04-2009 17:46:03
factura electronica spia Varios 2 22-02-2009 21:30:06
Factura electronica AUNA Aprendiz Varios 5 01-09-2005 10:44:15


La franja horaria es GMT +2. Ahora son las 09:52:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi