Assinar digitalmente um arquivo

Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Assinar digitalmente um arquivo

Mensagem por JoséQuintas »

10 segundos pra linqueditar, compactar e assinar.
(por falar nisso, acho impossível esse tempo com mingw)

Código: Selecionar todos

d:\CDROM\FONTES\INTEGRA>time
Hora atual: 18:41:41,99
Digite a nova hora:

d:\CDROM\FONTES\INTEGRA>c

d:\CDROM\FONTES\INTEGRA>del jpa.exe

d:\CDROM\FONTES\INTEGRA>d:\cdrom\fontes\build\build

d:\CDROM\FONTES\INTEGRA>hbmk2 jpa.hbp
hbmk2: Processing environment options: -comp=msvc
hbmk2: Triggered by #require directive: hbhpdf.hbc
hbmk2: Triggered by #require directive: hbzebra.hbc
hbmk2: Triggered by #require directive: hbziparc.hbc
hbmk2: Triggered by #require directive: hbnetio.hbc
hbmk2: Triggered by #require directive: hbwin.hbc
hbmk2: Triggered by #require directive: gtwvg.hbc
hbmk2: Triggered by #require directive: hbct.hbc
hbmk2: Triggered by #require directive: hbtip.hbc
Harbour 3.4.0dev (b4aaa05) (2016-09-06 07:30)
Copyright (c) 1999-2016, http://github.com/vszakats/harbour-core/
Compiling 'jpa.prg'...
Lines 1041, Functions/Procedures 3
Generating C source output to 'c:\temp\jpa.c'... Done.
jpa.c
                       Ultimate Packer for eXecutables
                          Copyright (C) 1996 - 2013
UPX 3.91w       Markus Oberhumer, Laszlo Molnar & John Reiser   Sep 30th 2013

        File size         Ratio      Format      Name
   --------------------   ------   -----------   -----------
   5687808 ->   1881600   33.08%    win32/pe     JPA.exe

Packed 1 file.

d:\CDROM\FONTES\INTEGRA>if not errorlevel 1 assina jpa.exe

d:\CDROM\FONTES\INTEGRA>For %a in (jpa.exe) do call \tools\signtool\assina %a

d:\CDROM\FONTES\INTEGRA>call \tools\signtool\assina jpa.exe

d:\CDROM\FONTES\INTEGRA>echo url de timestamp
url de timestamp

d:\CDROM\FONTES\INTEGRA>echo http://timestamp.verisign.com/scripts/timstamp.dll
http://timestamp.verisign.com/scripts/timstamp.dll

d:\CDROM\FONTES\INTEGRA>if "jpa.exe" == "" goto :semdados

d:\CDROM\FONTES\INTEGRA>d:\tools\signtool\signtool sign /v /d "http://www.jpatecnologia.com.br" /du
"http://www.jpatecnologia.com.br" /t http://timestamp.verisign.com/scripts/timstamp.dll jpa.exe
The following certificate was selected:
    Issued to: J.P.A Tecnologia Ltda. ME.
    Issued by: COMODO RSA Code Signing CA
    Expires:   04/08/2017 20:59:59
    SHA1 hash: E659EDCF1F712E293C77E3E54D5F7E34E29D1EB6

Done Adding Additional Store

Attempting to sign: JPA.exe
Successfully signed and timestamped: JPA.exe

Number of files successfully Signed: 1
Number of warnings: 0
Number of errors: 0

d:\CDROM\FONTES\INTEGRA>goto :fim

d:\CDROM\FONTES\INTEGRA>time
Hora atual: 18:41:51,30
Digite a nova hora:
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Assinar digitalmente um arquivo

Mensagem por asimoes »

Quintas,

Na sua bat, onde você informa o certificado? outra coisa o certificado tem a extensão .PFX ? aqui nos temos um certificado quando exportado gera um .cer estou tentando assinar e dá esse erro:

SignTool Error: No certificates were found that met all the given criteria.
Pressione qualquer tecla para continuar. . .
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Assinar digitalmente um arquivo

Mensagem por JoséQuintas »

Do jeito que eu faço, ele pega do repositório do Windows, o que estiver instalado no Windows.
E ele pega o certificado pra assinar código, não serve outro.
A mensagem é de que não achou nenhum certificado instalado que sirva pra assinar código.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Assinar digitalmente um arquivo

Mensagem por JoséQuintas »

PFX - certificado completo, pode ser instalado no Windows, serve pra assinar, mas pfx não define o que pode ser assinado por ele
CER - apenas certificado parcial, geralmente pra conferência, pode ser instalado no Windows, mas continua sendo só pra conferência
PVK - apenas certificado parcial, apenas a chave particular

Da outra vez, recebi um .CER e um .PVK e a partir deles gerei o PFX.
Desta vez veio direto um PFX.

Tem outros formatos, mas não sei dizer a diferença entre cada um.

No Windows:
Ao instalar, se marcar a opção de permitir exportar chave particular, vai poder exportar um certificado pra assinatura, com a senha que quiser.
Caso contrário, só vai poder exportar certificado de conferência.

Um certificado serve pra assinar.
Isso não quer dizer que pode assinar EXE ou assinar NFE com ele, depende do que estiver definido dentro do certificado.
Por exemplo, pelo que entendi, o certificado de assinar código não serve pra assinar driver.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Assinar digitalmente um arquivo

Mensagem por asimoes »

Quintas,

O certificado que assinou o .exe tem que ser instalado aonde o.exe vai ser usado? ou só basta o .exe ser assinado?
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
mhackervix
Usuário Nível 3
Usuário Nível 3
Mensagens: 105
Registrado em: 11 Fev 2008 02:06
Localização: ES

Assinar digitalmente um arquivo

Mensagem por mhackervix »

Senhores,

Na página da k-software (www.ksoftware.net) tem um software gratuito para assinar, utiliza certificado em arquivo pfx.

Após assinar o exe, uma cópia (parte pública) do certificado fica dentro dele.

Att

MhackerVix
Mhackervix, Msc.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Assinar digitalmente um arquivo

Mensagem por JoséQuintas »

Isso já foi falado no tópico.

A assinatura inclui seu certificado e todos os "superiores".
Vai instalar seu certificado pra que?

No cliente, o que vale são os "superiores".
O da Comodo é que vai dizer se o seu certificado vale alguma coisa.

Por falar nisso.....
Um exemplo da assinatura conter o certificado, o tal .CER, coloquei aqui, o último post (pelo menos por enquanto):

https://pctoledo.org/forum/viewto ... 43&t=17297

Mas se revisar os posts deste tópico, também tem a partir do EXE.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Assinar digitalmente um arquivo

Mensagem por JoséQuintas »

Quiser ver ao vivo pra tirar dúvida:

Baixe o meu EXE
http://www.jpatecnologia.com.br/arquivos/jpa.exe

Pelo Windows, clique da direita, propriedades, certificado digital, detalhes, etc. etc.
Vai dar até a opção de instalar o meu certificado na sua máquina. (que não vai servir pra assinar).
E tem até meu email, usado pra comprar o certificado.
Tem esse lado que pode ser chato, seu email vai distribuído junto com a assinatura.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
mhackervix
Usuário Nível 3
Usuário Nível 3
Mensagens: 105
Registrado em: 11 Fev 2008 02:06
Localização: ES

Assinar digitalmente um arquivo

Mensagem por mhackervix »

Senhores,

No ato de compra do certificado é solicitado um email público de contato a ser colocado no certificado. É sugerido um email tipo suporte@suaempresa.com.br.

Att.

MhackerVix
Mhackervix, Msc.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Assinar digitalmente um arquivo

Mensagem por asimoes »

Pessoal,

Mais uma pergunta, de posse do certificado eu posso assinar qualquer aplicativo meu ou seja aplicação a, b e c? ou tem limite?
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Assinar digitalmente um arquivo

Mensagem por JoséQuintas »

Qualquer certificado, os limites são a data de validade, a finalidade de uso do certificado, e o preço.... rs
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
mhackervix
Usuário Nível 3
Usuário Nível 3
Mensagens: 105
Registrado em: 11 Fev 2008 02:06
Localização: ES

Assinar digitalmente um arquivo

Mensagem por mhackervix »

José,

Baixei o demo de seu aplicativo (no link que você postou) para testar no nosso ambiente de teste (uma máquina com o Warsaw instalado para teste de aplicativos). Porém precisa de uma senha (login e senha do seu aplicativo).

Obrigado,

Att

MhackerVix
Mhackervix, Msc.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Assinar digitalmente um arquivo

Mensagem por JoséQuintas »

Cheguei a postar também: usuário CT senha em branco.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Assinar digitalmente um arquivo

Mensagem por JoséQuintas »

Ainda existe esse WarSaw?
Na minha máquina nunca mais apareceu.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
mhackervix
Usuário Nível 3
Usuário Nível 3
Mensagens: 105
Registrado em: 11 Fev 2008 02:06
Localização: ES

Assinar digitalmente um arquivo

Mensagem por mhackervix »

José,

Em alguns bancos roda como tarefa e em outros roda com serviço (fica nas tarefas o "core" e nos serviços o "Warsaw"). Este é o módulo de segurança que interfere nos aplicativos empresariais, tirando ele não existe o problema (porém perde-se o acesso aos bancos que o utilizam)

Att

MhackerVix
Mhackervix, Msc.
Responder