Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. [Tutorial] La Gestione degli utenti in PHP e MySQL
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • E
      emmebar Bannato Super User • ultima modifica di

      l' idea di LowLevel è di una praticità ed efficacia disarmanti, non è che mi trovi spesso a gestire l'autenticazione degli utenti, comunque non avevo mai pensato ad usare un metodo simile, quindi intanto subito un bel grazie 🙂 .

      Adesso mi guardo bene bene il codice e preparo una mia versione del controllo login in PHP.

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • P
        pater Super User • ultima modifica di

        @emmebar said:

        l' idea di LowLevel è di una praticità ed efficacia disarmanti, non è che mi trovi spesso a gestire l'autenticazione degli utenti, comunque non avevo mai pensato ad usare un metodo simile, quindi intanto subito un bel grazie 🙂 .

        Adesso mi guardo bene bene il codice e preparo una mia versione del controllo login in PHP.Poi magari cerca di integralrla qui, così vediamo di curare un'altro aspetto del progetto 😄

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • L
          linus User Attivo • ultima modifica di

          Fino a ieri il mio bizzarro sistema di autenticazione faceva in modo che le password fossero memorizzate nell' id_sessione in chiaro. Ho risolto 😎 (adesso non lo sono più).

          Adesso però devo trovare il modo per non trasmettere più la password utente nel form di login ma bensì quell'informazione combinata di cui si è parlato.

          L'informazione combinata deve tenere conto di due fattori:
          stringa casuale che solo il server conosce;
          password inserita nel form

          Posso creare una funzione personalizzata (stringa/password) per generare l'informazione combinata? Se ho capito bene la risposta è SI.

          Deve essere obbligatoriamente in javascript la funzione? La risposta è NO se ho capito.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • P
            pater Super User • ultima modifica di

            @linus said:

            Fino a ieri il mio bizzarro sistema di autenticazione faceva in modo che le password fossero memorizzate nell' id_sessione in chiaro. Ho risolto 😎 (adesso non lo sono più).

            Adesso però devo trovare il modo per non trasmettere più la password utente nel form di login ma bensì quell'informazione combinata di cui si è parlato.

            L'informazione combinata deve tenere conto di due fattori:
            stringa casuale che solo il server conosce;
            password inserita nel form

            Posso creare una funzione personalizzata (stringa/password) per generare l'informazione combinata? Se ho capito bene la risposta è SI.

            Deve essere obbligatoriamente in javascript la funzione? La risposta è NO se ho capito.Si, il java script si 😄

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • E
              emmebar Bannato Super User • ultima modifica di

              @PaTeR said:

              Poi magari cerca di integralrla qui, così vediamo di curare un'altro aspetto del progetto 😄

              E' esattamante quello che voglio fare 😄 .

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                tuonorosso Super User • ultima modifica di

                come stiamo procedendo? : 😎

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • P
                  pater Super User • ultima modifica di

                  @Tuonorosso said:

                  come stiamo procedendo? : 8)Cerchiamo nuovi utenti che possono partecipare!!!

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • T
                    tuonorosso Super User • ultima modifica di

                    ok
                    intanto non ci conviene dividerci i compiti noi che già ci siamo?

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • E
                      emmebar Bannato Super User • ultima modifica di

                      @Tuonorosso said:

                      come stiamo procedendo? : 😎

                      Per il controllo sono un po' indietro, ho avuto una montagna di cose da fare in questi giorni, comunque ci stò lavorando, anche perchè mi serve per un cliente., ma se volete andate pure avanti voi.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • P
                        pater Super User • ultima modifica di

                        @Tuonorosso said:

                        ok
                        intanto non ci conviene dividerci i compiti noi che già ci siamo?Non sarebbe male...

                        Allora ci organizziamo? Per favore scrivete chi è interessato, in fondo è una cosa che servirà a tutti, quindi + siamo meglio è 😄

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • T
                          tuonorosso Super User • ultima modifica di

                          Tuonorosso
                          Pater

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • E
                            emmebar Bannato Super User • ultima modifica di

                            eccomi 😉

                            @Tuonorosso said:

                            Tuonorosso
                            Pater
                            emmebar

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • lowlevel
                              lowlevel Super User • ultima modifica di

                              Tuonorosso
                              Pater
                              emmebar
                              LowLevel

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • F
                                fab.g User Newbie • ultima modifica di

                                News?

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • P
                                  pater Super User • ultima modifica di

                                  @Fab G said:

                                  News?hehe servono utenti volenterosi!

                                  comuqneu la parte software base non è difficile da fare...
                                  vuol dire che mi ci dedicherò un pò di più 😄

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • T
                                    tuonorosso Super User • ultima modifica di

                                    ops...io mi ero dimenticato :bho:
                                    :quote:

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • P
                                      pater Super User • ultima modifica di

                                      @Tuonorosso said:

                                      ops...io mi ero dimenticato :bho:
                                      :quote:utenti non prendete esempio da questo moderatore!

                                      :yuppi: :yuppi: :yuppi:

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • T
                                        tuonorosso Super User • ultima modifica di

                                        @PaTeR said:

                                        utenti non prendete esempio da questo moderatore!

                                        :yuppi: :yuppi: :yuppi:

                                        ehhehe...davvero...a meno che non vogliate diventare mister universo...non imitatemi 😄

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • P
                                          pater Super User • ultima modifica di

                                          Allora ragazzi la questione password è già stata trattata, ma vorrei discutere ora dell'hashing in sè.

                                          Message-Digest algorithm 5
                                          Ecco qui il famoso MD5... vi sarete chiesti a che serve qualche volta... no? Ebbene, esso non serve affatto a CRIPTARE una password, bensì a calcolare l'hash di una stringa. Per utilizzarlo PHP mette a disposizione la sua bella funzioncina built-in [url=php.net/md5]md5()

                                          
                                          string md5 (
                                                string str ,
                                                [ bool raw_output ]
                                          )
                                          
                                          

                                          In questo prototipo troviamo STR che è la stringa da hashare, e l'opzione booleana RAW_OUTPUT che per default è FALSE. Naturalmente non è possibile risalire alla stringa originale, perchè alcune operazioni dell'algoritmo non sono reversibili ( come la moltiplicazione: 6 è 23, ma potrebbe anche essere 16 ).

                                          LA SICUREZZA DI QUESTO ALGORITMO
                                          La sicurezza di questo algoritmo è alta, ma certamente non è sicurissima: sono infinite ( come tutte le cose ) le stringhe possibili che potrebbero dare come risultato lo stesso hash. Però non preoccupatevi: è molto raro che un lamer le trovi, se non con attacco [url=http://en.wikipedia.org/wiki/Brute_force_attack]Brute-Force che tralaltro sarebbe molto dispendioso per lui.

                                          COME EVITARE GLI ATTACCHI BRUTE-FORCE
                                          Per evitare attacchi di questo tipo molti siti permettono un massimo di 3 login per uno stesso utente ogni 15 minuti: come il PIN del cellulare... 3 tentativi, allo scadere di questi l'utnte dovrà aspettare 15 minuti ( o quello che volete voi ) prima di tentare un nuovo accesso! Per gestire questo genere di protezione, vi basta controllare i login di un utente ( non interessa manco l'IP ) ed allo scadere dei tre tentativi ( controllati dallo script di accesso che aumenterà i tentativi falliti ) bloccherà i login di quell'utente trascrivendo nel database il timestamp di quell'accesso permettendo allo script del login di calcolare il tempo necesssario per permettere un nuovo accesso. Molti script usano questo metodo, come phpBB e altri forums.

                                          MD5 in Javascript?
                                          Ma comunque resta un problema: facciamo passare la password in chiaro??? NOOOO!

                                          Ora dobbiamo adottare uno stratagemma!

                                          1. Usare la classe MD5 per javascript
                                          2. Creare un algoritmo proprio

                                          Ora vi spiegherò come usare MD5 in Javascript, sistema che comunque in alcuni casi non funzionerà... perciò bisogna decidere se

                                          1. Obbligare il client ad abilitare js
                                          2. Metterlo al corrente che il sistema non è sicuro e passare la password in chiaro

                                          Così dovremo procedere in questo modo:

                                          Avremo un campo <noscript> che setterà un valore POST in modo tale che esso sarà 'disabled' solo se il js è disattivato

                                          <noscript><input type='hidden' name='js' value='disabled'></noscript>
                                          

                                          ed un campo <script> che setterà il campo su 'enabled'

                                          <script lang='javascript'>document.write&#40;"<input type='hidden' name='js' value='enabled'>"&#41;;</script>
                                          

                                          così, sempre in js cripteremo il campo con [url=http://pajhome.org.uk/crypt/md5/]questo javascript prima che avvenga il passaggio all'altra pagina.

                                          Lo script lato-server controllerà il valore di 'js' e se sarà su enabled non hasherà il campo della password, se invece è su disabled lo hasherà.

                                          LINKS UTILI

                                          http://www.faqs.org/rfcs/rfc1321
                                          http://pajhome.org.uk/crypt/md5/
                                          http://en.wikipedia.org/wiki/Brute_force_attack
                                          http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html

                                          Conclusioni
                                          Ci sono tanti modi per criptare una stringa, io vi ho dato informazioni sul metodo più noto... a voi il resto!

                                          Ciao!

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • A
                                            albertorrr User • ultima modifica di

                                            Pater, è possbile avere la stessa sicurezza con uno script solo di php???
                                            di java non ne so nulla .

                                            0 Miglior Risposta Ringrazia Cita Rispondi

                                              1 Risposta Ultima Risposta
                                            Caricamento altri post
                                            Rispondi
                                            • Topic risposta
                                            Effettua l'accesso per rispondere
                                            • Da Vecchi a Nuovi
                                            • Da Nuovi a Vecchi
                                            • Più Voti