Assinar digitalmente um arquivo
Moderador: Moderadores
Assinar digitalmente um arquivo
Quintas,
Se não me engano o Rochinha criou um certificado, será que não é possível?
Se não me engano o Rochinha criou um certificado, será que não é possível?
►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)
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)
Assinar digitalmente um arquivo
Amigos tentem isso:
http://www.devmedia.com.br/gerando-um-c ... prio/31506
ou
http://thundaxsoftware.blogspot.com.br/ ... -with.html
espero que ajue,
:)Pos
HASA
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Assinar digitalmente um arquivo
Segui as instruções, deu tudo certo.
Mas no final continua como não confiável, mesmo instalando o certificado.
Mas no final continua como não confiável, mesmo instalando o certificado.
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/
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/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Assinar digitalmente um arquivo
Parece até prático.
E mesmo depois de instalar como autoridade raiz confiável, ou fornecedor confiável, ainda mostra como suspeito.
E mesmo depois de instalar como autoridade raiz confiável, ou fornecedor confiável, ainda mostra como suspeito.
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/
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/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Assinar digitalmente um arquivo
Faltou o resultado:
O certificado de confiança não é confiável.... rs
O certificado de confiança não é confiável.... 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/
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/
Assinar digitalmente um arquivo
Quintas,
só falta descobrir o pulo do gato, rs
só falta descobrir o pulo do gato, rs
►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)
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)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Assinar digitalmente um arquivo
Acabei de tentar uma gambiarra, deu certo para o que eu queria, mas.... certo demais.... rs
Alterei a data do computador e assinei com meu certificado antigo. Deu certo.
Mas ao corrigir a data do computador, mostra que o certificado usado pra assinar está vencido.... rs
No cliente aconteceria o mesmo.
Ou seja, caso seja bloqueado por causa do certificado, seus clientes obrigatoriamente precisariam de versão nova, ou pelo menos assinatura nova.
Tá aí um bloqueio por falta de pagamento,,,, rs
Mas que obriga ao SEU pagamento por um novo certificado.
Nota: ainda falta confirmar se a assinatura correta e verdadeira realmente faz diferença para os problemas que mencionei.
Alterei a data do computador e assinei com meu certificado antigo. Deu certo.
Mas ao corrigir a data do computador, mostra que o certificado usado pra assinar está vencido.... rs
No cliente aconteceria o mesmo.
Ou seja, caso seja bloqueado por causa do certificado, seus clientes obrigatoriamente precisariam de versão nova, ou pelo menos assinatura nova.
Tá aí um bloqueio por falta de pagamento,,,, rs
Mas que obriga ao SEU pagamento por um novo certificado.
Nota: ainda falta confirmar se a assinatura correta e verdadeira realmente faz diferença para os problemas que mencionei.
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/
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/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Assinar digitalmente um arquivo
Usei a criação indicada no site de assinar Delphi.
Um super-resumo é este:
No outro site, ele diz pra primeiro criar um certificado raiz, e depois criar outro pra autenticação de servidor, assinado pelo primeiro.
Então, dúvidas:
- O certificado raiz pode ser usado pra assinar? se alterar isso será que funciona?
- Se funcionar, do lado do cliente, será aceita a instalação de um certificado gambiarra como raiz confiável?
Mas no modo gambiarra, é trocar a configuração de antivírus ou outra coisa, pra uma configuração de certificado, isso me parece continuar sendo outra gambiarra.
Se o problema ficar resolvido, é fazer oficial e cobrar adicional dos clientes, mais prático.
vai ser o que? 10 reais pra cada um ou menos?
O ponto principal, que ainda não vi, é se isso realmente vai resolver o problema de partes brancas no software depois de usar bancos.
Senão, vai ser só perda de tempo e/ou dinheiro.
Um super-resumo é este:
Código: Selecionar todos
rem baixar openssl light e executar como administrador
c:\openssl\bin\openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem
c:\openssl\bin\openssl pkcs12 -export -out mycert.pfx -in mycert.pem -name "onome"
signtool sign /f mycert.pfx /p senha nomedoexe.exe
Então, dúvidas:
- O certificado raiz pode ser usado pra assinar? se alterar isso será que funciona?
- Se funcionar, do lado do cliente, será aceita a instalação de um certificado gambiarra como raiz confiável?
Mas no modo gambiarra, é trocar a configuração de antivírus ou outra coisa, pra uma configuração de certificado, isso me parece continuar sendo outra gambiarra.
Se o problema ficar resolvido, é fazer oficial e cobrar adicional dos clientes, mais prático.
vai ser o que? 10 reais pra cada um ou menos?
O ponto principal, que ainda não vi, é se isso realmente vai resolver o problema de partes brancas no software depois de usar bancos.
Senão, vai ser só perda de tempo e/ou dinheiro.
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/
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/
Assinar digitalmente um arquivo
na mensagem do próprio certificado fala: "para ativar a confiabilidade, instale no repositório de autoridades confiáveis..."
talvez se conseguirmos isso resolve o problema.
talvez se conseguirmos isso resolve o problema.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
Assinar digitalmente um arquivo
Tem um exemplo no harbour 3.4 na pasta contrib\hbhttpd\tests que cria um certificado, alguém pode conferir?
Atualizei o harbour agora e vi esse exemplo.
C:\Projetos_GIT\harbour-fork\contrib\hbhttpd\tests
Vejam o arquivo mkcert.sh
Atualizei o harbour agora e vi esse exemplo.
C:\Projetos_GIT\harbour-fork\contrib\hbhttpd\tests
Vejam o arquivo mkcert.sh
►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)
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)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Assinar digitalmente um arquivo
https://developer.apple.com/library/ios ... cates.htmlAn intermediate certificate is also required to be in your keychain to ensure that your certificate is issued by a certificate authority.
Minha suspeita estava certa.
Precisa de um certificado que foi emitido por autoridade confiável.
Parece piada, mas não pode ser o próprio certificado da autoridade, porque não consta quem foi que emitiu.... rs
Então será necessário criar DOIS certificados.
Postaram dois links sobre criar assinatura.
Um deles mostra como criar o certificado confiável, mas isso é só a metade.
O outro mostra como criar o segundo certificado assinado pelo primeiro.
No final, vamos precisar de 3 certificados, apesar de existirem 4.... rs
Certificado 1: autoridade raiz, a ser instalado na nossa máquina, pra criar certificado
Certificado 2: nosso certificado, a ser instalado na nossa máquina, pra assinar
Certificado 3: autoridade raiz pra conferência, a ser instalado no cliente
Certificado 4: Nosso certificado, a ser usado pra conferência, que já consta na assinatura
Não poderemos distribuir nem o certificado 1 nem o 2, senão estaremos distribuindo pra qualquer um assinar.
Existe o repositório de certificados do usuário, e o da máquina.
Dependendo da finalidade, é instalado num lugar diferente, por exemplo pra drivers.
É o que entendi até agora.
Supondo que o certificado emitido pela COMODO exija instalar certificado da COMODO....
Dá quase no mesmo de criar nosso próprio certificado.
Só será interessante se vier pré-instalado no Windows.
O que gera outra dúvida: talvez um certificado poderia gerar novos certificados vinculados a ele, afinal, tornou-se uma autoridade confiável.
É uma coisa de doido.... 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/
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/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Assinar digitalmente um arquivo
Pensei numa possibilidade:
Um certificado pode ser assinado por outro, como mencionado num dos links apresentados antes.
Não sei se um certificado de código poderia liberar sub-certificados.
Desta forma, seriam criados certificados vinculados ao existente.
Mas ok, já temos várias possibilidades que podem ter custo menor.
Agora só falta descobrir qual das opções resolve qual questão.
Um certificado pode ser assinado por outro, como mencionado num dos links apresentados antes.
Não sei se um certificado de código poderia liberar sub-certificados.
Desta forma, seriam criados certificados vinculados ao existente.
Mas ok, já temos várias possibilidades que podem ter custo menor.
Agora só falta descobrir qual das opções resolve qual questão.
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/
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/
Assinar digitalmente um arquivo
Quintas,
Para distribuição do exe basta que ele esteja assinado, pelo menos foi isso que o Leonardo informou a pergunta é tanto faz ele ser executado na máquina do usuário ou no servidor?
Para distribuição do exe basta que ele esteja assinado, pelo menos foi isso que o Leonardo informou a pergunta é tanto faz ele ser executado na máquina do usuário ou no servidor?
►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)
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)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Assinar digitalmente um arquivo
A assinatura digital, seja EXE ou XML, já inclui o certificado.
Então o arquivo é "auto-verificável".
Isso garante que o EXE não foi modificado, e já fornece o certificado pra checagem.
Mas quem garante o certificado?
É a autoridade "master".
E essa autoridade "master" tem que estar no estoque de certificados de autoridades confiáveis do Windows.
Se for um certificado fabricado, precisa instalar o "master" nas máquinas aonde vai rodar o aplicativo, em TODAS.
Se for um certificado oficial, a autoridade já está instalada, atualizada até pelo próprio Windows.
Lembre-se que, se fosse simples, bastaria que os hackers fizessem a mesma coisa.
Bastaria re-assinar o EXE com vírus.
Além disso, tem as máquinas com domínio, com restrições, etc. que podem impedir de ficar instalando certificados particulares.
Lembre-se também do seu próprio post, com a configuração do Java: "somente certificados de autoridades confiáveis"
Então o arquivo é "auto-verificável".
Isso garante que o EXE não foi modificado, e já fornece o certificado pra checagem.
Mas quem garante o certificado?
É a autoridade "master".
E essa autoridade "master" tem que estar no estoque de certificados de autoridades confiáveis do Windows.
Se for um certificado fabricado, precisa instalar o "master" nas máquinas aonde vai rodar o aplicativo, em TODAS.
Se for um certificado oficial, a autoridade já está instalada, atualizada até pelo próprio Windows.
Lembre-se que, se fosse simples, bastaria que os hackers fizessem a mesma coisa.
Bastaria re-assinar o EXE com vírus.
Além disso, tem as máquinas com domínio, com restrições, etc. que podem impedir de ficar instalando certificados particulares.
Lembre-se também do seu próprio post, com a configuração do Java: "somente certificados de autoridades confiáveis"
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/
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/
