A voir également:
- Delocaliser fichier php
- Fichier rar - Guide
- Fichier host - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Ouvrir fichier .bin - Guide
6 réponses
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
22 juil. 2017 à 23:59
22 juil. 2017 à 23:59
Bonjour,
La solution que tu proposes ne me semble pas envisageable car, tout d'abord, si le serveur de ton entreprise peut récupérer les sources via un include, alors un "humain" peut le faire aussi en reproduisant la méthode que le serveur utiliserait. De plus tu rendrais le fonctionnement d'une application déployée par ton entreprise auprès d'une quantité de clients dépendante de ta capacité à maintenir ton propre serveur en ligne, avec les multiples possibilités d'incidents que tu pourrais rencontrer.
Je crois que tu dois plutôt "crypter" les sources, ou au moins une partie (celle qui gérerai le cœur de l'application et la partie gestion de la license). Je mets des guillemets à "crypter" car un contenu crypté peut être décrypté en connaissant la clé (que tu devrais fournir pour permettre l'exécution), or si tes sources peuvent être décryptées par le serveur, elles peuvent aussi l'être par un humain. En fait il s'agit plutôt d'un "cryptage à sens unique", une sorte de compilation, pour faire simple.
Pour protéger leur code source PHP, les entreprises utilisent souvent ionCube. Le loader à installer sur le serveur de ton entreprise est gratuit, mais tu devras payer une petite somme pour "crypter" ton application (ou une partie).
https://www.ioncube.com/online_encoder.php : cryptage à partir de 0.50$, je crois que ça reste raisonnable :)
La solution que tu proposes ne me semble pas envisageable car, tout d'abord, si le serveur de ton entreprise peut récupérer les sources via un include, alors un "humain" peut le faire aussi en reproduisant la méthode que le serveur utiliserait. De plus tu rendrais le fonctionnement d'une application déployée par ton entreprise auprès d'une quantité de clients dépendante de ta capacité à maintenir ton propre serveur en ligne, avec les multiples possibilités d'incidents que tu pourrais rencontrer.
Je crois que tu dois plutôt "crypter" les sources, ou au moins une partie (celle qui gérerai le cœur de l'application et la partie gestion de la license). Je mets des guillemets à "crypter" car un contenu crypté peut être décrypté en connaissant la clé (que tu devrais fournir pour permettre l'exécution), or si tes sources peuvent être décryptées par le serveur, elles peuvent aussi l'être par un humain. En fait il s'agit plutôt d'un "cryptage à sens unique", une sorte de compilation, pour faire simple.
Pour protéger leur code source PHP, les entreprises utilisent souvent ionCube. Le loader à installer sur le serveur de ton entreprise est gratuit, mais tu devras payer une petite somme pour "crypter" ton application (ou une partie).
https://www.ioncube.com/online_encoder.php : cryptage à partir de 0.50$, je crois que ça reste raisonnable :)
Merci pour ta réponse, je n'ai pas préciser mais quand je parle d'héberger sur mon serveur je voulais dire héberger sur un serveur (style ovh ou autre) à mes frais, héberger chez moi n'est pas possible au vu de ma connexion.
Par rapport aux include() en php il me semble que le serveur qui exécute le script n'envoie que le résultat donc logiquement le serveur A ne recevrai que le résultat du travail du serveur B en faisant un include() ou je me trompe ?
Sinon je réfléchit aussi de m'occuper de l'hébergement moi-même, si ils sont d’accord, ça éviterai toutes ces complications.
Par rapport aux include() en php il me semble que le serveur qui exécute le script n'envoie que le résultat donc logiquement le serveur A ne recevrai que le résultat du travail du serveur B en faisant un include() ou je me trompe ?
Sinon je réfléchit aussi de m'occuper de l'hébergement moi-même, si ils sont d’accord, ça éviterai toutes ces complications.
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
23 juil. 2017 à 11:39
23 juil. 2017 à 11:39
Cela rend quand même le fonctionnement de ton application dépendant d'une seconde infrastructure. Si de plus tu optes pour un dédié ou VPS, tu dois avoir les compétences en administration.
Dans le cas d'un include via une URL, si le fichier est exécuté sur le serveur distant, tu en récupéreras uniquement le résultat (pas le fichier "compilé", je parle de la "sortie"). Essaie de faire un include sur n'importe quel fichier PHP via une URL HTTP pour t'en convaincre. Si tu fais un include via FTP ou SSH, le fichier PHP ne sera pas exécuté mais tu devras fournir un moyen à la partie de ton application hébergée sur le serveur de ton entreprise pour accéder au fichier (c'est-à-dire fournir les identifiants), or un membre de ton entreprise pourra alors récupérer ces identifiants dans le code PHP et récupérer manuellement le fichier.
Je crois en effet qu'héberger l'application toi-même est une solution si tu en as les compétences.
Dans le cas d'un include via une URL, si le fichier est exécuté sur le serveur distant, tu en récupéreras uniquement le résultat (pas le fichier "compilé", je parle de la "sortie"). Essaie de faire un include sur n'importe quel fichier PHP via une URL HTTP pour t'en convaincre. Si tu fais un include via FTP ou SSH, le fichier PHP ne sera pas exécuté mais tu devras fournir un moyen à la partie de ton application hébergée sur le serveur de ton entreprise pour accéder au fichier (c'est-à-dire fournir les identifiants), or un membre de ton entreprise pourra alors récupérer ces identifiants dans le code PHP et récupérer manuellement le fichier.
Je crois en effet qu'héberger l'application toi-même est une solution si tu en as les compétences.
C'est bien ce que je pensais par rapport aux include url ça va me compliquer le transfert de variables.
Oui je pense aussi que le mieux c'est héberger moi-même, de plus je suis en train de développer un système d'administration, de gestion des comptes utilisateurs et de sécurisation de la base de données que je grefferai avant de rendre la copie finale.
Après peut être que je me trompe et qu'ils n'essaieront pas de récupérer mes sources et faire un logiciel à eux. Mais bon vaux mieux anticiper.
Merci pour tes conseils.
Oui je pense aussi que le mieux c'est héberger moi-même, de plus je suis en train de développer un système d'administration, de gestion des comptes utilisateurs et de sécurisation de la base de données que je grefferai avant de rendre la copie finale.
Après peut être que je me trompe et qu'ils n'essaieront pas de récupérer mes sources et faire un logiciel à eux. Mais bon vaux mieux anticiper.
Merci pour tes conseils.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
23 juil. 2017 à 13:05
23 juil. 2017 à 13:05
Dans ton message initial tu indiquais que l'entreprise souhaitait commercialiser ton application, cela implique souvent un rachat de tous tes droits (et donc des sources), notamment pour améliorer le produit ou corriger d'éventuelles erreurs, mais aussi pour s'assurer que l'application que tu fournis ne contient pas de code malveillant que tu aurais pu insérer (pour voler les informations des utilisateurs finaux, par exemple).
Si tu souhaites conserver la propriété exclusive mais fournir un accès payant à ton entreprise ou à d'autres personnes, alors tu devrais plutôt commercialiser toi-même l'application.
Je ne m'y connais pas très bien en droit, mais je pense qu'en règle générale c'est ainsi que ça se passe. Il est toutefois possible de faire payer l'utilisation d'une application tout en fournissant les sources, il faut rédiger le contrat en accord. Une application dont tu fournis les sources n'est pas forcément gratuite, il existe des applications commerciales mais open source.
Si tu souhaites conserver la propriété exclusive mais fournir un accès payant à ton entreprise ou à d'autres personnes, alors tu devrais plutôt commercialiser toi-même l'application.
Je ne m'y connais pas très bien en droit, mais je pense qu'en règle générale c'est ainsi que ça se passe. Il est toutefois possible de faire payer l'utilisation d'une application tout en fournissant les sources, il faut rédiger le contrat en accord. Une application dont tu fournis les sources n'est pas forcément gratuite, il existe des applications commerciales mais open source.
Ce logiciel n'existe pas ni en open source ni commercialement. C'est extrêmement ciblé. Il ne peut servir que dans mon métier. C'est pour ça que je veux protéger mes classes et fonctions.
A l'origine je ne l'ai pas codé en java, je viens de le retranscrire en php pour simplifier la gestion des mise à jour et des comptes en le rendant online.
Pour tous ce qui est des droits pour le moment on en a juste discuter je les laissent se renseigner de leur côté, c'est plus leur job que le mien.
Pour ce qui est des données utilisateurs je pense qu'il serait très mal avisé de vouloir jouer avec surtout dans les secteur dans lequel je travaille, puis ce n'est pas le but. Le but est juste que mon travail me profite un peu sachant qu'il profitera sans aucun doute à d'autre.
Voilà pourquoi c'est assez complexe et pourquoi je les laisse gérer tous ce qui est administratif car ce n'est pas nom plus mon domaine. A eux de réfléchir à comment récompenser ce travail. Et à moi de faire en sorte que ce travail reste mien.
Mais tout ça n'est pas encore fait pour le moment j'essaye juste d'anticiper. Rien n'est signé, rien n'est vendu.
A l'origine je ne l'ai pas codé en java, je viens de le retranscrire en php pour simplifier la gestion des mise à jour et des comptes en le rendant online.
Pour tous ce qui est des droits pour le moment on en a juste discuter je les laissent se renseigner de leur côté, c'est plus leur job que le mien.
Pour ce qui est des données utilisateurs je pense qu'il serait très mal avisé de vouloir jouer avec surtout dans les secteur dans lequel je travaille, puis ce n'est pas le but. Le but est juste que mon travail me profite un peu sachant qu'il profitera sans aucun doute à d'autre.
Voilà pourquoi c'est assez complexe et pourquoi je les laisse gérer tous ce qui est administratif car ce n'est pas nom plus mon domaine. A eux de réfléchir à comment récompenser ce travail. Et à moi de faire en sorte que ce travail reste mien.
Mais tout ça n'est pas encore fait pour le moment j'essaye juste d'anticiper. Rien n'est signé, rien n'est vendu.