2010-09-19 6 views
1

Je travaille sur un projet logiciel et ai écrit un système de validation pour aider à prévenir le vol du logiciel. Je lisais à travers le code, et j'ai trouvé une énorme "échappatoire" qui pourrait potentiellement permettre aux utilisateurs motivés de copier le programme et de l'installer sans même contacter le serveur d'activation. J'ai donc modifié le programme et le serveur pour le corriger. Maintenant, j'ai besoin d'une page PHP qui peut vérifier que l'utilisateur a payé le logiciel, les paiements effectués via PayPal, puis générer une chaîne aléatoire. J'ai alors besoin de la page pour POSTER cette chaîne aléatoire au serveur de validation (HTTP) et écouter la réponse du serveur. Il aura besoin de POSTER ce paramètre: Validator = [Random String] Il indiquera à la page si la chaîne aléatoire a déjà été soumise et en essayera une autre, ou qu'elle accepte la chaîne. Je voudrais que la chaîne soit numérique, mais je pense que l'alpha-numérique serait meilleur et donnerait plus d'options. Je suis assez confiant que cela peut être fait, mais je ne suis pas sûr de savoir comment faire la partie PHP.PHP PayPal vérification de paiement/HTTP POST?

+1

Il vaudrait mieux que votre logiciel vaille la peine d'être acheté. Il est essentiellement impossible de verrouiller une application PHP, peu importe à quel point vous obscurcissez ou «compilez» le code. Un utilisateur suffisamment motivé va subvertir/casser/contourner tout ce que vous pouvez installer en termes d'authentification/vérification. Cela étant dit, il suffit d'utiliser CURL pour votre POST. Ou file_get_contents avec l'installation de flux appropriée. –

+0

L'application principale n'est pas PHP. PHP est juste utilisé pour vérifier l'utilisateur payé, puis les générer une chaîne aléatoire. Je suis conscient qu'il n'est pas possible de "sécuriser" complètement n'importe quel type d'application, mais je crois que des mesures devraient être prises pour au moins le rendre plus difficile à casser. –

Répondre

2

Quelle partie PHP?

Vous pouvez générer une chaîne aléatoire avec md5. Pour POST à ​​partir d'un script PHP, utilisez curl.

+0

Désolé ... C'est chapeau j'ai besoin de la page PHP à faire: 1). Vérifiez que l'utilisateur a payé le montant approprié via PyPal. 2). Si l'utilisateur a payé, générez une chaîne aléatoire, affichez-la à l'utilisateur et postez-la sur un serveur HTTP en utilisant ce paramètre: Validate = [Random String] Je ne suis pas un programmeur PHP, mais j'apprends. Je pense que je pourrais trouver quelques exemples en utilisant curl et md5 pour la génération de chaîne aléatoire, mais comment la vérification de paiement fonctionnerait-elle? –

+0

Le site Web de PayPal a un exemple de script PHP de validation des paiements via IPN. Ici: https://cms.paypal.com/us/cgi-bin/?&cmd=_render-content&content_ID=developer/library_code_ipn_code_samples – philfreo

+0

Merci! Merci à tous ceux qui ont aidé! –