Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - stringa che genera codice hash
Forum - C/C++ - stringa che genera codice hash

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
jock (Normal User)
Pro


Messaggi: 71
Iscritto: 15/01/2010

Segnala al moderatore
Postato alle 17:46
Venerdì, 15/01/2010
Questo topic è stato chiuso dal moderatore

ragazzi sapete dirmi in questo codice quale la stringa che genera il codice hash se non sbaglio e in c se non e cosi cambiate sezione...

Codice sorgente - presumibilmente C++

  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <stdlib.h>
  4.  
  5. #if defined WIN32
  6.         typedef unsigned int u_int32_t;
  7. #else
  8.         #include <sys/types.h>
  9. #endif
  10.  
  11. u_int32_t hash (u_int32_t key)  {
  12.         key = ~key + (key << 15);
  13.         key = key ^ (key >> 12);
  14.         key = key + (key << 2);
  15.         key = key ^ (key >> 4);
  16.         key = key * 2057;
  17.         key = key ^ (key >> 16);
  18.         return key;
  19. }
  20.                
  21. char* str_to_hash (char *str)  {
  22.         u_int32_t *v;
  23.         int i;
  24.         int len=strlen(str);
  25.         char *h;
  26.         char buff[9];
  27.        
  28.         v = (u_int32_t*) malloc(len*sizeof(u_int32_t));
  29.        
  30.         for (i=0; i<len; i++)
  31.                 v[i] = hash((u_int32_t) str[i]);
  32.  
  33.         h = (char*) malloc(8*len*sizeof(char));
  34.         memset (h,0x0,sizeof(str));
  35.  
  36.         for (i=0; i<len; i++)  {
  37.                 snprintf (buff,sizeof(buff),"%x",v[i]);
  38.                 strcat (h,buff);
  39.         }
  40.  
  41.         return h;
  42. }
  43.  
  44. main (int argc, char **argv)  {
  45.         int len;
  46.         char *str;
  47.  
  48.         if (!argv[1])
  49.                 exit(1);
  50.  
  51.         printf ("%s\n",str_to_hash(argv[1]));
  52. }


Ultima modifica effettuata da jock il 15/01/2010 alle 17:47
PM
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6402
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 17:49
Venerdì, 15/01/2010
Testo quotato

Postato originariamente da jock:

ragazzi sapete dirmi in questo codice quale la stringa che genera il codice hash



Ma che vuoi dire?


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM
Avatar
jock (Normal User)
Pro


Messaggi: 71
Iscritto: 15/01/2010

Segnala al moderatore
Postato alle 17:56
Venerdì, 15/01/2010
ho un hash e vorrei capire quale la stringa che lo ha generato...
so che è una stringa di 4 caratteri alfabetici minuscoli...

PM
Avatar
jock (Normal User)
Pro


Messaggi: 71
Iscritto: 15/01/2010

Segnala al moderatore
Postato alle 17:57
Venerdì, 15/01/2010
ho un hash e vorrei capire quale la stringa che lo ha generato...
tramite un algoritmo di hashing che quell codice di prima...
so che è una stringa di 4 caratteri alfabetici minuscoli...

Ultima modifica effettuata da jock il 15/01/2010 alle 17:58
PM
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6402
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 17:58
Venerdì, 15/01/2010
Questo e' un forum di programmazione, non un posto in cui si "decriptano" gli hash.



Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM
Avatar
jock (Normal User)
Pro


Messaggi: 71
Iscritto: 15/01/2010

Segnala al moderatore
Postato alle 18:00
Venerdì, 15/01/2010
e infatti quello e il codice con cui e stato creato il programma ma non riesco a capire quale la stringa che crea hashing...
se non e programmazione questa...

PM
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6402
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 18:05
Venerdì, 15/01/2010
Allora non ti sei spiegato ...

La frase "una stringa che crea hashing" non ha senso (ne' in italiano ne' in senso informatico).

In ogni caso, la funzione che genera l'hash a partire da una stringa e' la

str_to_hash

ma mi sembra troppo ovvio.


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM
Avatar
jock (Normal User)
Pro


Messaggi: 71
Iscritto: 15/01/2010

Segnala al moderatore
Postato alle 18:13
Venerdì, 15/01/2010
ma quale la striga di cui genera tutto...
questo non riesco ad capire...

PM
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 18:31
Venerdì, 15/01/2010
Non si capisce. Cerca di esprimerti piu' chiaramente.


Il mio blog: https://piero.dev
PM
Pagine: [ 1 2 ] Precedente | Prossimo