Visualizzazione risultati 1 fino 17 di 17

Discussione: funzioni PHP per la crittografia

  1. #1
    Guest

    Predefinito funzioni PHP per la crittografia

    Salve,
    ho provato sul mio spazio web qui si AV le funzioni che PHP mette a disposizione per la crittografia delle stringhe. Ho preso degli esempi direttamente da:

    http://www.php.net/manual/it/ref.mcrypt.php

    e li ho uploadati sul mio spazio web. Però quando li mando in esecuzione mi compare il seguente messaggio di errore:

    Fatal error: Call to undefined function: mcrypt_ecb()

    Ciò vuol dire che sul server di altervista non sono state istallate queste funzioni? Oppure vuol dire più semplicemente che ho sbagliato qualche cosa io?

    Questo è il codice che ho usato:
    Codice:
    <?php
         $key = "this is a secret key";
         $input = "Let us meet at 9 o'clock at the secret place.";
    
         $encrypted_data = mcrypt_ecb (MCRYPT_3DES, $key, $input, MCRYPT_ENCRYPT);
    ?>
    Grazie,
    Marcello

  2. #2
    Guest

    Predefinito

    Ciao Marcello

    Il problema è semplice: non sono state installate le librerie mcrypt per utilizzare la funzione mcrypt_ecb.

    Ti conviene cambiare strada magari utilizzando l'md5 o simili

    Ciao

  3. #3
    Guest

    Predefinito

    grazie golfox per la risposta.

    Purtroppo è quello che temevo. Tra l'altro, se solo avessi pensato prima ad eseguire il phpinfo() qui sul mio spazio AV me ne sarei subito reso conto guardando i moduli installati. Comunque la tua risposta mi è stata comunque utile perché mi ha fatto conoscere i comandi della categoria md5 di cui sconoscevo l'esistenza.

    Ho guardato la guida online sul sito ufficiale del PHP e mi pare di capire che comandi come md5 sono di "hashing", cioè algoritmi di crittografia a senso unico (non è possibile decriptare una stringa precedentemente criptata). Ci devo ragionare un po' sù perchè, forse, la criptazione a senzo unico potrebbe anche fare al caso mio.

    di nuovo grazie,
    Marcello

  4. #4
    Guest

    Predefinito

    E allora...
    ho rifrettuto un po sui comandi di hashing per criptare le stringhe e ho potuto concludere che non fanno al caso mio.

    Infatti il mio scopo è quello di salvare sul mio spazio web le login le password e gli indirizzi email degli utenti di una mia applet java su cui sto lavorando da un po'. Per motivi di sicurezza e di privacy, però, volevo salvare tali dati in forma criptata. Fino a qui le funzioni di hashing che php fornisce di default vanno più che bene. Il problema sta nel fatto che voglio anche implementare la funzione "login o password dimenticata?". Ho quindi bisogno di decodificare i dati criptati per poter mandare, in automatico, una mail all'utente della mia applet che gli ricordi la login e la password dimenticata.

    Io sto pensando di implementarmi un mio personale sistema di cifratura tuttavia questa sarebbe solo "l'ultima spiaggia". Prima voglio vedere se esiste una qualche alternativa meno drastica.

    Qualcuno ha qualche idea?

    grazie,
    Marcello

  5. #5
    Guest

    Predefinito

    bhe, anchio ho bisogno di una funzione di php che mi permetta di criptare le stringhe in modo che possa recuperare il contenuto... ho provato la funzione crypt di php, a quanto sembra è possibile recuperare il valore in chiaro di una stringa criptata... solo che non riesco a farla funzionare...

  6. #6
    Guest

    Predefinito

    Potresti anche pensare di mandare all'utente una password nuova (random) e salvarla criptata al posto della vecchia. Basta che gli fai inserire la sua email e che la confronti con quella salvata criptata.
    L'utente, una volta entrata con la nuova password, potrà modificarla a suo piacere.

  7. #7
    Guest

    Predefinito

    Ciao neoscript,

    io ho cominciato a studiare php solo da poco quindi è possibile che dica fesserie, però, andando a spulciare il manuale ufficiale del php (la versione italiana) ho trovato il seguente "articolo" sul comando crypt:

    http://it.php.net/crypt

    dal quale mi pare si evinca che una stringa, una volta criptata, non possa più decriptarsi. L'utilità sta nel fatto che per controllare la validità di una password la si ricripta e si contronta poi il risultato con la pasword criptata salvata. In questo modo chi dovesse, con un colpo di hacking ben assestato, venire in possesso del file in cui sono registrate le password criptate, ne ora e ne mai potrà ottenere indietro le password decriptate.

    Almeno io la cosa l'ho capita così.

    Per avere un semplicissimo (ma non so quanto affidabile) algoritmo di cifratura che permetta anche la decrifrazione (solo da parte di chi conosce di una chiave) stavo pensando di utilizzare il generatore di numeri pseudocasuali di php per mezzo delle funzioni rand e srand.

    Marcello

  8. #8
    Guest

    Predefinito

    Grazie tonnaer per il suggerimento,
    e scusa se non ti ho risposto prima: mentre rispondevo al precedente post tu hai postato il tuo messaggio.

    Il problema che vedo con la tua soluzione potrebbe essere che un malintenzionato si finga qualcun altro per avere i suoi dati producendo invece come unico effetto quello di modificare la password ad un ignaro utente. Comunque l'idea mi pare buona. Ci rifletterò sopra.

    Grazie,
    Marcello
    Ultima modifica di applets : 18-02-2005 alle ore 13.24.05

  9. #9
    Guest

    Predefinito

    Scusate ma se si usa un sistema di criptaggio con cui si possa decriptare, a cosa serve?
    Cioè, se uno ruba una password la può decriptare come lo fate voi!

    Consiglio: usate md5 o simili, e per il recupero psw fate come dice tonnaer (nuova psw random)


    Ciaoooo!!!!!!!

  10. #10
    Guest

    Predefinito

    debug e tonnaer,

    ...si mi sono convinto anche io. Mi sa che opererò come ha suggerito tonnaer. Solo il pensiero di dovermi inventare un sistema di criptazione/decriptazione messaggi (chissà poi quanto affidabile?) mi faceva raggelare il sangue nelle vene.

    Grazie per il suggerimento,
    Marcello

    PS. però in questo caso almeno la login dovrò conservarla in forma non criptata. Non bisogna infatti dimenticare che l'utente potrebbe scordarsi non solo la password (e questo è normale), ma anche la login. Una volta è capitato anche a me. La password la si può rigenerare casualmente, ma la login deve poter rimanere la stessa.
    Ultima modifica di applets : 18-02-2005 alle ore 14.55.42

  11. #11
    L'avatar di binarysun
    binarysun non è connesso Utente storico
    Data registrazione
    02-07-2004
    Messaggi
    2,017

    Predefinito

    Solitamente (almeno io) faccio così.
    Criptin in md5 solo la password.
    Se l'utente sela scorda, fai un modulo che gli manda una mail a casa con un link ad una pagina di attivazione su cui potrà ricreare la password (qua la sicurezza passa all'utente che deve avere un account di posta sicuro).
    Se si dimetica pure il nome utente c'è poco da fare, si deve riregistrare con nuovo username.
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

    [Gradient Text]
    [Su che server sei?]
    ->flickr

  12. #12
    Guest

    Predefinito

    Ciao binarysun,
    anche questo è un suggerimento di cui terrò conto. Al momento penso di essermi chiarito a sufficienza le idee. Tra l'altro, almeno per il problema che devo affrontare io, mi sono appena accorto che la soluzione ce l'avevo sotto gli occhi e, semplicemente, non la vedevo. Tipica dimostrazione di come la mente alle volte funzioni a compartimenti stagni.

    Stavo infatti pensando di effettuare la cifratura di login, psw e email a livello dello script php. Ero così immerso nello studio di questo nuovo (per me) linguaggio che mi ero dimenticato del mio caro java. In java esistono tutti i principali algoritmi di cifratura nel package java.security. A questo punto basta cifrare tutto a monte dello script ed il gioco è fatto.

    Volevo poi anche ringraziarti per il suggerimento che mi desti qualche settimana fa: creare uno script php che funzioni da intermediario tra l'applet java e il database. Si è rivelata la soluzione vincente.

    Grazie ancora,
    Marcello

  13. #13
    Guest

    Predefinito

    ma il problema dell'applet java è che si può scaricare via internet... e con un buon decompilatore vedere il sistema che usi... io per alcuni test di hacking che si trovano in rete, quando trovavo un'applet java, utilizzavo questo metodo... poi scegli la opzione che reputi più opportuna...

    ciauz

  14. #14
    Guest

    Predefinito

    neoscript,

    in effetti ci stavo pensando anch'io. Un'applet è una applicazione lato client così chiunque utilizzi la mia applet se la ritroverà compilata sul proprio computer (basta sapere dove andare a cercare). Basta poi decompilare e cercare di interpretare il programma decompilato. E' un po' laborioso ma, purtroppo, è fattibilissimo!!!

    A questo punto mi chiedo una cosa. E' in qualche modo possibile per uno sconosciuto andare a curiosare all'interno di uno script php salvato nel mio spazio altervista? Mi sto chiedendo cioè se il codice di un mio script si possa ritenere più al sicuro di un codice java. Che tu sappia è possibile per uno sconosciuto andare a sbirciare il codice di un mio script?

    Marcello

  15. #15
    L'avatar di s7ntech
    s7ntech non è connesso AlterVistiano
    Data registrazione
    26-09-2004
    Messaggi
    758

    Predefinito

    Il codice php è più sicuro per il fatto che se lo si vuole vedere bisogna avere accesso allo spazio del sito, altrimenti il codice che viene visualizzato è solo quello compilato, esattamente l'html.
    ___________________________________________
    is mail or not is mail?
    -------------------------------------------------
    Ogni uomo e' gia' per meta' innamorato di una donna che lo sta a sentire (Francis)
    presa da http://loki88.altervista.org/

  16. #16
    Guest

    Predefinito

    OK! Grazie s7ntech

    grazie alla pazienza di voi tutti ragazzi sto sempre di più addentrandomi in questo meraviglioso mondo che è la programmazione php. A questo punto mi è chiaro che per motivi legati alla sicurezza è meglio trasferire su script php la gestione dei dati degli utenti. Un altro piccolo passo in avanti :)

    Marcello

  17. #17
    Guest

    Predefinito

    sono contento che almeno qualcuno sbatta la testa sui problemi di realizzazione di un sito o comunque non voglia la pappa già pronta per risolvere i propri problemi...
    per qualsiasi dubbio noi siamo qui...

    ciauz

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •