<p dir="ltr">Da pra fazer um mini "web Server" em alguma linguagem compilada com alguns PLUS de segurança na compilação,  onde ele terá a regra de validar a chave.  C?  C++?  Até mesmo c# usando mono ;-) </p>
<br><div class="gmail_quote">On Fri, May 15, 2015, 9:01 AM Fernando Corrêa <<a href="mailto:fernandocorrea@gmail.com">fernandocorrea@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
        
                
        
        <div dir="auto">
                <div>Se o seu código for criptografado, sem internet o q vc pode fazer é:<br><br>exit if $password_from_file ne sha256(join " ", $client_id, $salt, time % (60 * 60 * 24 * 30 * 3));<br><br>E de 3 em 3 meses o sistema vai ficar inoperante até q a nova senha seja escrita no arquivo...<br></div></div><div dir="auto">
                                <div><br>

Em 15/05/2015 08:17, Fernando Corrêa  escreveu:

<br><br></div>
                <blockquote type="cite">
                        <div>
                                
                                <div dir="auto">
<div>Nós tivemos q implementar tb o nosso próprio "use" q
decriptografava o código a ser "incluindo" antes de fazê-lo.<br>
<br>
Esse nosso "use" tb continha a chave criptográfica, mas como o
mesmo estava criptografado, não tinha como o cliente descobrir qual
era a chave.<br>
<br>
Agora eu lembrei q implementamos toda a parte de código
criptografado e apenas planejamos essa consulta à url... (Assim
como tb planejamos a compra on-line de novos módulos, onde esses
seriam criptografados com a chave do cliente antes do download,
facilitando a compra de novos módulos e impedindo o
compartilhamento de 1 módulo comprado p/ vários clientes) essas 2
partes planejadas nunca foram implementadas, pq o projeto morreu
antes disso...<br></div>
<div><br>
Em 14/05/2015 21:54, Fernando Corrêa escreveu:<br>
<br></div>
<blockquote type="cite">
<div>

<div>Na verdade eu não lembro se chegamos a implementar ou se
apenas planejamos.<br></div>
<div><br>
Em 14/05/2015 21:50, Fernando Corrêa escreveu:<br>
<br></div>
<blockquote type="cite">
<div>

<div>Hi Ricardo,<br>
<br>
Como vc vai fazer qq coisa nesse sentido? Se pedirá senha nova
basta o cliente abrir o código e descobrir como gerar a nova
senha...<br>
<br>
Eu já trabalhei num lugar onde agente tinha um "compilador Perl
customizado" (usando lib perl) e todo nosso código era
criptografado. A chave ficava no binário e esse decriptografava o
código antes de jogar p/ o eval do libperl.<br>
Esporadicamente esse binário tb acessava uma url da empresa q
retornava a um módulo da data atual concatenada com outras
informações e criptografado com a mesma chave... Se isso não
batesse ele morria e não rodava nada...<br>
A informação retornada pela url era criptografiada justamente p/ o
cliente não poder botar um dns na rede dele e se passar pela url da
empresa...<br></div>
<div><br>
Em 14/05/2015 20:33, Ricardo Stock escreveu:<br>
<br></div>
<blockquote type="cite">
<div>
<p>Então Daniel, é exatamente isso que estou implementando. No meu
ultimo emprego, havia um software assim. a cada seis meses o mesmo
expirada, e era necessário ligar para a empresa, solicitando uma
nova senha para pode "destravar" o mesmo.<br>
<br>
A implementação é feita utilizando um serial gerado através de data
+ alguma coisa. No sistema, ao receber este serial,o mesmo é
verificado se esta valido. Se valido libera.<br>
<br>
Agora a pergunta.<br>
Gero a senha, no servidor terei que deixar uma contra senha também
para validar a senha. ;-)<br>
<br>
Renan, Utilizando a validação com token através de algorítimo de de
crypt / descryp eu posso fazer isso sem utilizar conexão com a
internet. Que é justamente o que preciso fazer. Por isto falei de
utilizar números primos ou validações com senha.<br>
<br>
A minha grande preocupação é justamente não depender de internet
para liberar, pois poderia travar o sistema remotamente. Mas e
senao tiver internet:-)<br>
<br>
Mesmo assim agradeço por todas as opiniões, são todas validas. Vou
começar a rascunhar, tenho um mês ainda...<br>
Obrigado a todos que estão contribuindo.<br>
<br>
<br>
Ricardo Stock<br>
<a href="mailto:ricardostock@bol.com.br" target="_blank">ricardostock@bol.com.br</a><br>
Um bom programador tem um desafio<br>
Um programador mediano, tem um problema.<br>
<br>
<br>
<br>
<br>
De: <a href="mailto:dan.vinciguerra@gmail.com" target="_blank">dan.vinciguerra@gmail.com</a><br>
Enviada: Quinta-feira, 14 de Maio de 2015 19:32<br>
Para: <a href="mailto:saopaulo-pm@mail.pm.org" target="_blank">saopaulo-pm@mail.pm.org</a><br>
Assunto: [SP-pm] Trava de sistema<br>
<br>
Ja vi casos onde o software trabalhava com uma chave local que
tinha uma determinada validade e  ao termino dessa validade o
usuário precisava ligar para a empresa do software para "comprar"
uma nova chave, revalidando o sistema por mais X tempo.<br>
<br>
Não sei como a implementação era feita mas a chave era o hash de
alguma coisa!<br>
<br>
<br>
Daniel Vinciguerra (@dvinciguerra)<br>
Web solution architect, perl dev, vegetarian, geek and co-founder
at Bivee<br>
<a href="http://bivee.com.br" target="_blank">bivee.com.br</a>  -  <a href="http://github.com/Bivee" target="_blank">github.com/Bivee</a><br>
<br>
<br>
2015-05-14 17:32 GMT-03:00 Renan Carvalho
<<a href="mailto:renan.azevedo.carvalho@gmail.com" target="_blank">renan.azevedo.carvalho@gmail.com</a>>:<br>
Ricardo,<br>
O servidor seria o ideal, principalmente para gerar uma nova chave
válida, porque se for local quando expirar a chave você terá que já
ter um novo token cadastrado ou terá que realizar uma manutenção
para inserir uma nova.<br>
<br>
<br>
Em 14 de maio de 2015 17:08, Ricardo Stock
<<a href="mailto:ricardostock@bol.com.br" target="_blank">ricardostock@bol.com.br</a>> escreveu:<br>
<br>
<br>
<br>
<br>
Exatamente isso o que quero eveitar, por algum motivo a empresa
ficar sem<br>
internet justamente no período que o sistema esta para vencer. E
com certeza<br>
estarei viajando a milhas de distancia  <br>
 <br>
Ou seja, quero evitar problemas e dores de cabeça.<br>
 <br>
Ricardo<br>
Stock<br>
<a href="http://www.stocksistemas.com.br" target="_blank">www.stocksistemas.com.br</a><br>
<br>
<br>
 <br>
<br>
From: Jarbas Brito<br>
Sent: Thursday, May 14, 2015 11:59 AM<br>
To: <a href="mailto:saopaulo-pm@mail.pm.org" target="_blank">saopaulo-pm@mail.pm.org</a><br>
Subject: Re: [SP-pm] Trava de sistema<br>
 <br>
<br>
Nesse caso,  se o servidor por regras de infraestrutura
não<br>
tiver acesso a Internet, ferrou.<br>
<br>
<br>
On Thu, May 14, 2015, 11:57 AM Frederico Recsky
<<a href="mailto:frederico@frederico.me" target="_blank">frederico@frederico.me</a>> wrote:<br>
<br>
<br>
<br>
<br>
Você ta tentando fazer um trial?<br>
<br>
Porque voce não coloca uma<br>
chamada contra um servidor na internet para validar?<br>
<br>
<br>
Se não tiver como autenticar o produto contra um servidor no
melhor<br>
estilo microsoft genuine, da para usar com criptografia. Não
precisa fazer na<br>
mao usando numeros primos, com chaves assimetricas ja da para
fazer<br>
isso.<br>
<br>
<br>
 <br>
2015-05-14 11:30 GMT-03:00 Ricardo Stock
<<a href="mailto:ricardostock@bol.com.br" target="_blank">ricardostock@bol.com.br</a>>:<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
    Bom dia monges.<br>
 <br>
    Gostaria da opinião e sugestões de vocês quanto
a<br>
trava de sistema. Em breve irei colocar em servidor com um sistema
em um<br>
cliente, e desejo colocar uma trava no sistema, afim de o mesmo só
abrir por<br>
um tempo determinado, passando este tempo que determinarei em dias
seja<br>
necessário a digitação de uma senha.<br>
 <br>
    Sei que posso criar um algoritmo com números
primos<br>
para gerar uma senha que siga uma validação. Porém gostaria da
opinião de<br>
vocês e sugestões sobre o que já utilizam. Claro o sistema estará
rodando<br>
sob Linux e o cliente não terá acesso as pastas do sistema. somo
mente um<br>
usuário para deligar o equipamento (em emergências) utilizando
sudo.<br>
 <br>
    O backup da base de dados será criptografado,
porém<br>
será local. Sei que devo tomar um cuidado adicional sobre
isso<br>
 <br>
    Obrigado e no aguardo<br>
 <br>
 <br>
Ricardo<br>
Stock<br>
<a href="http://www.stocksistemas.com.br" target="_blank">www.stocksistemas.com.br</a><br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
Este<br>
email foi escaneado pelo Avast antivírus.<br>
<a href="http://www.avast.com" target="_blank">www.avast.com</a><br>
<br>
<br>
<br>
=begin<br>
disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end<br>
disclaimer<br>
<br>
=begin disclaimer<br>
  <br>
Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end<br>
disclaimer<br>
<br>
<br>
<br>
<br>
=begin disclaimer<br>
   Sao Paulo Perl Mongers:<br>
<a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
SaoPaulo-pm mailing list:<br>
<a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end<br>
disclaimer<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
Este email foi escaneado pelo Avast antivírus.<br>
<br>
<a href="http://www.avast.com" target="_blank">www.avast.com</a><br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
=begin disclaimer<br>
<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
<br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
<br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>

<br>
=end disclaimer<br>
<br>
<br>
<br>
<br>
<br>
=begin disclaimer<br>
<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
<br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
<br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>

<br>
=end disclaimer<br>
<br>
<br>
<br>
<br>
=begin disclaimer<br>
Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
=begin disclaimer<br>
Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br></p>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
                        </div>
                </blockquote>
        </div>
=begin disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
</blockquote></div>