Licenciamento de Software

Boa tarde

Estou juntamente com uns colegas a desenvolver uma aplicação em PHP com bases de dados MySQL e estamos num impasse para efectuar o licenciamento da mesma. ou seja quando um utilizador a instala ela apenas funcionara como demostração limitada a "X" registos havendo a possibilidade de "licenciar" para a versão completa que a desbloqueará totalmente. para efectuar este licenciamento será necessária a introdução de alguns dados como por exemplo Nome, NIF etc... Portanto o que precisamos concretamente é de um utilitário q mediante estes dados crie uma chave alfanumerica unica q servirá para o licenciamento da aplicação.

Obrigado e se souberem de alguma coisa podem enviar para: [email protected] ou postar aqui.

Renato Duarte
 
Epa... costuma-se dizer q o segredo é a alma do negócio mas... ca vai... é um software virado para a gestao autárquica. quanto ao preço sinceramente ainda nao discutimos isso mas com certeza vai ser abaixo dos 500€
 
Como é que tu queres proteger uma coisa em que as pessoas têm acesso ao código?!?!?! Seja qual for a protecção, qualquer um pode lá ir alterar e ter a aplicação completa.

Já ouviste falar de alguma aplicação em Php que estivesse protegida?!??!
 
BraBo disse:
Como é que tu queres proteger uma coisa em que as pessoas têm acesso ao código?!?!?! Seja qual for a protecção, qualquer um pode lá ir alterar e ter a aplicação completa.

Já ouviste falar de alguma aplicação em Php que estivesse protegida?!??!
Vê lá, por exemplo, isto ou isto.

BraBo disse:
Outra coisa, como é que o cliente vai instalar a aplicação em Php?!?!?!
Da mesma maneira que instalas um fórum, um blog, etc..
 
Última edição:
BraBo disse:
Disto não sabia eu ...
Vamos lá ver o que isto faz ...

EDIT: Quanto tempo tem isto????
Eu tambem nao conhecia, mas olhando lá para o site do Zend Encoder , pelo menos 2 anos já deve ter, visto que ganhou um premio da PHP Magazine em 2003.
 
claro que o codigo PHP esta aberto a toda a gente que comprar uma licença do software mas sempre se pode adoptar uma licença que não permita a modificação do software. obviamente que podem não respeitar e nos nunca saberemos isso, mas pode adiantar alguma coisa, por exemplo, podemos encontrar um site qq a usar o nosso software e sabemos que não lhe foi vendida a licença para uso, e nesse caso podemos fazer qualquer coisa...
 
O código produzido por aquilo vem cifrado não?!?!?! Eu estive a fazer umas brincadeiras em casa com o código daquilo e acho que está cifrado.
 
Há sempre outra hipótese nestes casos ... podem fornecer uma aplicação que corra na máquina da empresa que fornece os serviços e depois criam uma VPN com o cliente, desta forma eles acedem a tudo pelo browser mas nunca chegam a ter o código fonte ...

Melhor que isto é venderem apenas a aplicação em bundle com uma máquina Linux para alojar o software, esta máquina fica protegida e apenas acessível pela empresa criadora do software, logo, também não há acesso ao código ... como é uma coisa pequenina e para ser acedido por meia dúzia de users (digo eu :P) qualquer Pentium II ou Pentium III serve ;)

EDIT: Só uma coisa .. vocês desenvolvem software e depois não conseguem fazer um simples esquema de chave para usar o produto? O melhor método é obrigar a que o programa seja usado num ambiente com acesso à Internet e o programa valida a chave num servidor vosso onde apenas vocês acedem e onde guardam as chaves de quem realmente paga. :)

Se não quiserem ter acesso à Internet e adoptarem o método de ter uma máquina on-site então nesse caso ele só corre mesmo se estiver licensiado uma vez que alguem lá teve que por a máquina :D
 
Última edição:
Pode sempre ser contruída noutro ambiente qualquer que não o WEB. Mesmo assim não vai estar 100% protegida, mas pelo menos não está assim tão à vista.
 
Renato Duarte disse:
Boa tarde

Estou juntamente com uns colegas a desenvolver uma aplicação em PHP com bases de dados MySQL e estamos num impasse para efectuar o licenciamento da mesma. ou seja quando um utilizador a instala ela apenas funcionara como demostração limitada a "X" registos havendo a possibilidade de "licenciar" para a versão completa que a desbloqueará totalmente. para efectuar este licenciamento será necessária a introdução de alguns dados como por exemplo Nome, NIF etc... Portanto o que precisamos concretamente é de um utilitário q mediante estes dados crie uma chave alfanumerica unica q servirá para o licenciamento da aplicação.

Obrigado e se souberem de alguma coisa podem enviar para: [email protected] ou postar aqui.

Renato Duarte
Esclarecido?
 
Podes arranjar algorítmos de hashing, como por exemplo o MD5 que é de fácil utilização no PHP.

Terás de fornecer, como é óbvio, uma entrada ao algoritmo de hash, o que pode ser, por exemplo, o NIF. Ou então o NIF juntamente com o nome do utilizador mais uma série de caracteres que só tu conheces.

O MD5, ou outro algoritmo de hash, produz-te um resultado "único" consoante a entrada. Não será bem único, mas a probabilidade de encontrares outro que produza a mesma saída é muito, mas mesmo muito, baixa.

Exemplo:

$hash = md5($nif + $username + "xpto888243784");

isto produz uma "chave" sempre igual para a mesma entrada, ou seja nif e username iguais.. mas basta mudares um caracter do username por exemplo e a chave é completamente diferente.


No software do cliente apenas tens de verificar se a chave que ele introduz foi gerada segundo este modo...:


$hash = md5($nif + $username + "xpto888243784");

if($hash == $hashIntroduzidaPeloCliente)
{
}

em que o $nif, $username e $hashIntroduzidaPeloCliente são as variáveis que correspondem aos inputs do cliente.
 
Om my dog, vocês já viram o preço do Zend Encoder ?? 960 dólares para proteger uma aplicação que vai ser vendida por menos de 500€ ... :eek:
 
MaTreCo disse:
Om my dog, vocês já viram o preço do Zend Encoder ?? 960 dólares para proteger uma aplicação que vai ser vendida por menos de 500€ ... :eek:
MAs a aplicação que falaram nem deve ser feita em Php (na minha opinião). Mais vale fazer em qualquer outra coisa que feche o código, e abrir as portas à base de dados numa máquina partilhada ...
A não ser que ele queiram fazer uma especie de WebService em Php na máquina com a base de dados e esse webservice seja a plataforma de ligação entre os postos e o servidor (abrindo apenas a porta 80), aí talvez faça sentido usar Php ...
 
Back
Topo