Visualizzazione dei risultati da 1 a 10 su 10

Discussione: php compilato

  1. #1
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449

    php compilato

    ciao a tutti.
    Ho un applicativo scritto in php che accede ad un database mysql.
    Ho messo tutte le funzioni e per accedere al database in un file, compresa la password del database.
    Visto che devo installarlo presso un cliente, volevo proteggere il file con utente e password, compilandolo o cryptandolo in qualche modo.

    Come posso fare?
    S'i fosse foco, arderei 'l mondo

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Posso chiederti a che scopo devi mettere tale file sul computer del cliente? Anzi... meglio, se il database è pure sul computer del cliente, stai perdendo tempo... oppure stai mettendo una pezza misura cerotto sullo squarcio del titanic. Fai un sistema di login e metti il database su un altro computer, altrimenti puoi crittografare tutto quel che vuoi, ma il cliente potrà sempre installarsi qualsiasi programma (anzi non serve nemmeno un programma per eseguire query da shell...) per andare a pescare i dati dal database.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    nel tuo caso potrebbe essere sufficiente un "encoder/encrypter"... un software che cripta il codice in modo da renderlo illeggibile. Se invece devi solo rendere illeggibile una password dentro il codice sorgente puoi usare questa mia procedura:

    SCRIPT 1:
    Codice PHP:
    function CheckPassword ($password) {
      
    $correct_password 'XXXXX';
      
    $salt 'YYYYY';
      
    $crypted_password crypt ($password$salt);
      return (
    $crypted_password == $correct_password);

    ...avendo l'accortezza di inserire una stringa a scelta al posto di YYYYY e di inserire al posto di XXXXX il risultato del seguente script:

    SCRIPT 2:
    Codice PHP:
    $salt 'YYYYY';
    echo (
    crypt('PASSWORD_IN_CHIARO'$salt)); 
    ...in pratica esegui lo SCRIPT n.2 in locale, vedi il risultato a video e copi+incolli la stringa risultante nel codice dello SCRIPT n.1 che puoi tranquillamente uploadare sul server.

    CIAO!

  4. #4
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    Posso chiederti a che scopo devi mettere tale file sul computer del cliente? Anzi... meglio, se il database è pure sul computer del cliente, stai perdendo tempo... oppure stai mettendo una pezza misura cerotto sullo squarcio del titanic. Fai un sistema di login e metti il database su un altro computer, altrimenti puoi crittografare tutto quel che vuoi, ma il cliente potrà sempre installarsi qualsiasi programma (anzi non serve nemmeno un programma per eseguire query da shell...) per andare a pescare i dati dal database.
    Il file serve all'applicativo per connettersi al database, e non credo che esistano programmi per potere eseguire query su un database senza fornire utente e password.

    Anche se rendo illegibile la password, poi devo passarla in chiaro a mysql_connect(......) per collegarmi. Quanto ci mette un utente idiota che vuole sapere la password a scoprire che basta un echo e la password la vede?

    Qualche encoder / encrypter da consigliarmi?
    S'i fosse foco, arderei 'l mondo

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ...per gli 'encoder / encrypter' se riesco ti mando qualche nome, ma puoi fare una ricerca veloce da solo...

    per la questione mysql_connect... no: dovresti impostare il db in modo che la password di accesso sia quella 'criptata'... insomma dipende da CHE COSA VUOI PROTEGGERE. Le funzioni che ho postato servono a "nascondere" la password in modo che anche leggendo il codice non si sappia cosa immettere nel form HTML... cosa diversa è se vuoi impedire l'accesso al db a chi avesse la possibilità non tanto di LEGGERE il codice (cosa che sembra capirsi dalla tua richiesta), ma da chi può MODIFICARE il codice: in questo caso è opportuno usare un 'encoder / encrypter', ma potrebbe anche non essere sufficiente. Devi chiarire cosa vuoi "impedire" in questo caso.

  6. #6
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    vorrei impedire che venga scoperta la password di accesso al database, partendo dal fatto che il cliente ha il codice php sul suo server e che quindi lo può leggere / modificare.
    S'i fosse foco, arderei 'l mondo

  7. #7
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    Mi documento un po' anche sulle php extension.
    S'i fosse foco, arderei 'l mondo

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    potrebbe bastarti allora un encoder... comincia a dare un'occhiata a 'http://www.freedownloadscenter.com/Web_Authoring/Scripting_Tools/PHP_Encoder.html'

    altrimenti... conosci l'estensione standard "bcompiler" ? Inoltre: hai la possibilità di installare/variare le estensioni php sul server di lavoro?

  9. #9
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    sul server posso fare tutto quello che voglio.
    Mi documento un po' sugli encoder, che mi sempbrano la via migliore

    Thanks
    S'i fosse foco, arderei 'l mondo

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Originariamente inviato da cik
    Il file serve all'applicativo per connettersi al database, e non credo che esistano programmi per potere eseguire query su un database senza fornire utente e password.

    Anche se rendo illegibile la password, poi devo passarla in chiaro a mysql_connect(......) per collegarmi. Quanto ci mette un utente idiota che vuole sapere la password a scoprire che basta un echo e la password la vede?

    Qualche encoder / encrypter da consigliarmi?
    Il problema ti resta: metti il file criptato sul computer del cliente... dove lo decripti? Dal cliente? allora gli devi fornire la password da qualche parte... sul server che ospita mysql? Allora è tutto lavoro inutile, visto che ti basta mettere i dati di accesso in un file php sul server che ospita il database e il cliente non potrà accedervi.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.