Visualizzazione risultati 1 fino 22 di 22

Discussione: [PHP] metodo per decriptare una stringa restando criptata

  1. #1
    Guest

    Predefinito [PHP] metodo per decriptare una stringa restando criptata

    Ciao a tutti ragazzi, quanto tempo :-)
    Ritorno alla luce per chiedervi una cosa che cercando sul forum non ho trovato proprio quello che cercavo! (scusate il gioco di parole)
    Comunque la questione è questa:
    Ho la necessità di criptare un link (o anche solo una parte) che nel codice sorgente dovrà rimanere criptato ma al click il browser mi dovrà visualizzare la pagina richiesta!

    Un esempio:
    http://ef01b8e2750b72889efa7eed7dc257a7.it = http://google.it

    Cioè voglio far capire alla pagina, in questo caso, che ef01b8e2750b72889efa7eed7dc257a7 equivale a google

    Spero di essermi spiegato bene.

    Saluti.
    Ivan

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,752

    Predefinito

    Un hash non puoi decriptarlo!. E' impossibile in quanto un hash può essere ottenuto da più di una parola; ad esempio se decripti due parole, FORSE hanno lo stesso hash, quindi è impossibile tornare in dietro!

    {parlo dell'hash md5, ma credo che siano tutti più o meno così!}

    Ciao!

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Un hash non puoi decriptarlo!. E' impossibile in quanto un hash può essere ottenuto da più di una parola; ad esempio se decripti due parole, FORSE hanno lo stesso hash, quindi è impossibile tornare in dietro!

    {parlo dell'hash md5, ma credo che siano tutti più o meno così!}

    Ciao!
    Ciao,
    da quel che ne so io ad ogni parola corrisponde il suo hash!
    Se ho detto una baggianata... fucilatemi pure

    Comunque con base64_encode e _decode è possibile recuperare l'hash, io vorrei recuperare l'hash SOLO al momento del click sul link!

    Ciao! :)
    Ultima modifica di TurkoSoft : 08-02-2010 alle ore 20.01.29

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

    Predefinito

    Non è un problema di "criptazione" ma di risoluzione indirizzi.

    Un tempo c'era questo metodo
    http://www.pc-help.org/obscure.htm
    MA con i vari attacchi pishing hanno bloccato al cosa anche se forse è ancora possibile cammuffare un pò l'url.

    Per farlo l'unico modo è redirigere tutto il traffico attraverso il tuo server.
    Ossia, fai un proxy.
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

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

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da binarysun Visualizza messaggio
    Non è un problema di "criptazione" ma di risoluzione indirizzi.

    Un tempo c'era questo metodo
    http://www.pc-help.org/obscure.htm
    MA con i vari attacchi pishing hanno bloccato al cosa anche se forse è ancora possibile cammuffare un pò l'url.

    Per farlo l'unico modo è redirigere tutto il traffico attraverso il tuo server.
    Ossia, fai un proxy.
    Grazie per la tua risposta binarysun!

    Ma quindi una cosa del genere non sarebbe possibile? (sperando che io abbia capito a cosa serve)

    In alternativa, come creo un proxy?

    Saluti.

  6. #6
    Guest

    Predefinito

    No, quella funzione serve solo per creare una stringa da passare all'URL come querystring. Ad esempio, un array che ha come indice pinco e come valore pallino, e come altro indice zio e come altro valore paperone restituirà: pinco=pallino&zio=paperone. Non c'entra niente

    Con "proxy" penso che binarysun intendesse dire che puoi passare l'hash ad una pagina PHP sul tuo sito appositamente strutturata che, leggendo i dati da qualche fonte, può risalire all'URL e redirezionare alla giusta pagina. Ad esempio potresti salvare la coppia URL/hash in un database, passare in querystring l'hash e poi redirezionare verso l'URL corrispondente. C'è più di un modo per attuare la cosa.

    P.S.: Ma non puoi usare TinyURL come i comuni mortali?

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

    Predefinito

    Quella funzione semplicemente ti accoda le variabili nella url.

    Tutto dipende da cosa realmente vuoi fare..
    Un modo semplice potrebbe essere
    http://74.125.77.104/
    Tradurre l'url in IP

    O hostname se differente
    http://ew-in-f104.1e100.net/
    (paura eh!)

    Altrimenti l'unica è il proxy, ma rallenta molto, cerca in rete trovi molti script.
    Se tutto quello che vedo passa attraverso il tuo server, non posso sapere da dove proviene e non posso quinid risalire all'url.
    Ultima modifica di binarysun : 08-02-2010 alle ore 20.53.00
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

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

  8. #8
    Guest

    Predefinito

    Citazione Originalmente inviato da alessandro1997 Visualizza messaggio
    P.S.: Ma non puoi usare TinyURL come i comuni mortali?
    Cioè? :-)

    @ binarysun: bello il tuo giochetto

  9. #9
    Guest

    Predefinito

    Questo sito (http://tinyurl.com/) permette di accorciare un URL lungo, mascherandone la reale destinazione. Un esempio: ti trasforma un URL del tipo http://www.google.it in http://tinyurl.com/ey9o (in questo caso non è particolarmente conveniente, perché l'URL di partenza è più corto del TinyURL). Con questo sistema puoi mascherare dove punta realmente un collegamento.

  10. #10
    Guest

    Predefinito

    Citazione Originalmente inviato da alessandro1997 Visualizza messaggio
    Questo sito (http://tinyurl.com/) permette di accorciare un URL lungo, mascherandone la reale destinazione. Un esempio: ti trasforma un URL del tipo http://www.google.it in http://tinyurl.com/ey9o (in questo caso non è particolarmente conveniente, perché l'URL di partenza è più corto del TinyURL). Con questo sistema puoi mascherare dove punta realmente un collegamento.
    Grazie per la tua segnalazione, mi potrà tornare utile!
    Il problema però è che non devo utilizzare un URL completo ma del tipo
    ./live/index.php

    Altre soluzioni?

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

    Predefinito

    No spetta..
    Io ho dato per scontato che l'utilizzatore non debba mai venire in contatto con l'url vero, tinyurl e altri servizi simili non nascondono l'url ma sono semplici redirect.
    Se ti bastano puoi usare anche url relativi.
    ./live/index.php lo trosformi in http://tuosito/live/index.php, sono la stessa cosa.
    "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

    Citazione Originalmente inviato da binarysun Visualizza messaggio
    No spetta..
    Io ho dato per scontato che l'utilizzatore non debba mai venire in contatto con l'url vero, tinyurl e altri servizi simili non nascondono l'url ma sono semplici redirect.
    Se ti bastano puoi usare anche url relativi.
    ./live/index.php lo trosformi in http://tuosito/live/index.php, sono la stessa cosa.
    purtroppo per lo scopo a cui devo/dovrei arrivare non posso utilizzare URL interi.
    Cioè nel mio link devo inserire per forza un url del tipo
    Codice HTML:
    <a href="./live/index.php">ACCEDI</a>
    che però dovrà essere crittografato!

    Saluti.

  13. #13
    L'avatar di Xsescott
    Xsescott non è connesso AlterGuru
    Data registrazione
    08-02-2004
    Messaggi
    1,413

    Predefinito

    In teoria inizialmente puoi passargli un qualsiasi valore al broswer che sia uguale all'indirizzo ip convertito.(intero,exd etc etc) il problema è che poi il broswer risolve il dns se lo ha in cache o credo che sicuramente lo riporti in "chiaro".
    forse e dico forse puoi fare qualcosa con gli .htacces ma non ne sono tanto sicuro, quella è una questione di risoluzione di domini, quindi due sono le cose, o installi qualche cosa sul broswer dell'utente che gli fa capire dove deve essere rediretta la pagina, oppure usi un proxy ma ovviamente anche un proxy non servirebbe a nulla perchè comunque l'utente, o meglio il broswer deve sapere come arrivare a quell'indirizzo ip(cioè del proxy), ma dato che non glielo passi ma gli vuoi passare una stringa crittografata l'unico modo possibile penso che sia lavorare lato client.
    "Quando il potere dell'amore supererà l'amore per il potere il mondo conoscerà la pace" Jimmy Hendrix


    [ Richiesta: http://www.unibologna.eu/ ] --> [Risposta: http://www.magazine.unibo.it/Magazin...al_Portale.htm Morale] -->[ http://www.anti-phishing.it/news/art...s.13062007.php ]
    consoliwebsite.altervista.org

  14. #14
    Guest

    Predefinito

    Ma vuoi nasconderlo al "vedi sorgente pagina" del browser o nell'url?
    Se il primo ti basta criptarlo tramite un tuo algoritmo e richiamarlo tramite javascript. (ad esempio: "link a www.g..gle" lo trasformi in "link a javascript:url('url crittato');" e crei una funzione che decripta e reindirizza ;)

    Se il secondo il metodo "binary" sarebbe il migliore =)

  15. #15
    Guest

    Predefinito

    Citazione Originalmente inviato da comunitavirtuali Visualizza messaggio
    Ma vuoi nasconderlo al "vedi sorgente pagina" del browser o nell'url?
    Se il primo ti basta criptarlo tramite un tuo algoritmo e richiamarlo tramite javascript. (ad esempio: "link a www.g..gle" lo trasformi in "link a javascript:url('url crittato');" e crei una funzione che decripta e reindirizza ;)

    Se il secondo il metodo "binary" sarebbe il migliore =)
    Ad entrambi :-)

    Intanto forse potrei risolvere qualcosa con quel metodo javascript che mi hai detto tu, anche se un terzo utente porebbe avere javascript disabilitato nel browser!
    Comunque come potrei fare?

    Cosa sarebbe il metodo "binary"?

    Saluti :-)

  16. #16
    L'avatar di Xsescott
    Xsescott non è connesso AlterGuru
    Data registrazione
    08-02-2004
    Messaggi
    1,413

    Predefinito

    Citazione Originalmente inviato da comunitavirtuali Visualizza messaggio
    Ma vuoi nasconderlo al "vedi sorgente pagina" del browser o nell'url?
    Se il primo ti basta criptarlo tramite un tuo algoritmo e richiamarlo tramite javascript. (ad esempio: "link a www.g..gle" lo trasformi in "link a javascript:url('url crittato');" e crei una funzione che decripta e reindirizza ;)

    Se il secondo il metodo "binary" sarebbe il migliore =)
    bhe, comunque sia una volta che chiamerà la vera funzione che chiama gli url, a quel punto li il dominio sarà in chiaro e tu lo vedrai vedere comparira sulla barra di caricamento :)
    "Quando il potere dell'amore supererà l'amore per il potere il mondo conoscerà la pace" Jimmy Hendrix


    [ Richiesta: http://www.unibologna.eu/ ] --> [Risposta: http://www.magazine.unibo.it/Magazin...al_Portale.htm Morale] -->[ http://www.anti-phishing.it/news/art...s.13062007.php ]
    consoliwebsite.altervista.org

  17. #17
    Guest

    Predefinito

    Citazione Originalmente inviato da Xsescott Visualizza messaggio
    bhe, comunque sia una volta che chiamerà la vera funzione che chiama gli url, a quel punto li il dominio sarà in chiaro e tu lo vedrai vedere comparira sulla barra di caricamento :)
    si è vero hai ragion :-) a meno che non richiami l'url su di un popup oppure in un iframe!


  18. #18
    Guest

    Predefinito

    In ogni caso segnalerà il trasferimento dei dati e vedrai il nome dominio

  19. #19
    Guest

    Predefinito

    Citazione Originalmente inviato da biccheddu Visualizza messaggio
    In ogni caso segnalerà il trasferimento dei dati e vedrai il nome dominio
    poco m'importa :-)
    L'importante è che quando ci passo sopra con il mouse non si veda l'url completo in basso a sinistra del browser e non si veda tra il le righe del codice sorgente!

    Ciau :)

  20. #20
    Guest

    Predefinito

    Potresti usare il semplice (ma efficace) cifrario di Cesare:

    Codice HTML:
    <script>
    function Cifra(stringa, cifrato, sposta){
    	alfabeto = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    	stringa.value = stringa.value.toUpperCase();
    	cifrato.value = "";
    	if (sposta.value.length > 0) {
    		diff = parseInt(sposta.value);
    	} else {
    		diff = 0;
    	}
    	for(var conta = 0; conta < stringa.value.length; conta++){
    		ch  = stringa.value.charAt(conta);
    		if (ch >= 'A' & ch <= 'Z') {
    			ord = alfabeto.indexOf(ch);
    			ord = (ord + diff) % 26;
    			cifrato.value += alfabeto.charAt(ord);
    		}
    	}
    }
    </script>
    Allo stesso modo fai la decriptazione e passi al browser l'indirizzo che vuoi.

    Altro sistema potrebbe essere indicare tutti i link ad una pagina php tramite la quale fai il redirect puro e semplice :)

    Cifrario di Cesare
    Ultima modifica di comunitavirtuali : 11-02-2010 alle ore 21.24.00

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

    Predefinito

    Ripeto, il tuo problema non è ci cifrare l'url ma di farla leggere dal browser.

    Il proxy se,plòicemente fa da gateway m,ascherando l'indirizzo.
    Vedi hidemyass o cerca proxy online su google e vedi come funzionano
    "L'intelligenza è una pianta che va curata continuamente.
    Dovreste vedere com'è bello, il mio bonsai."
    Rat-man®

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

  22. #22
    Guest

    Predefinito

    Citazione Originalmente inviato da comunitavirtuali Visualizza messaggio
    Potresti usare il semplice (ma efficace) cifrario di Cesare:
    Codice HTML:
    <script>
    function Cifra(stringa, cifrato, sposta){
    	alfabeto = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    	stringa.value = stringa.value.toUpperCase();
    	cifrato.value = "";
    	if (sposta.value.length > 0) {
    		diff = parseInt(sposta.value);
    	} else {
    		diff = 0;
    	}
    	for(var conta = 0; conta < stringa.value.length; conta++){
    		ch  = stringa.value.charAt(conta);
    		if (ch >= 'A' & ch <= 'Z') {
    			ord = alfabeto.indexOf(ch);
    			ord = (ord + diff) % 26;
    			cifrato.value += alfabeto.charAt(ord);
    		}
    	}
    }
    </script>
    Allo stesso modo fai la decriptazione e passi al browser l'indirizzo che vuoi.

    Altro sistema potrebbe essere indicare tutti i link ad una pagina php tramite la quale fai il redirect puro e semplice :)

    Cifrario di Cesare
    Ciao, scusate per il mio ritardo nella risposta!
    Comunque, come alternativa il Cifrario di Cesare andrebbe bene!
    Quindi come dovrebbe funzionare?

Regole di scrittura

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