Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 15-11-2006, 14:59   #1
znick
Senior Member
 
L'Avatar di znick
 
Iscritto dal: Aug 2001
Città: Modena
Messaggi: 1195
[Algoritmo] Generare un numero univoco partendo da una chiave

Ciao a tutti,

ho necessità di trovare un algoritmo che, data una chiave (numerica) mi generi un numero univoco

per esempio: dato il numero "4584" mi dia in uscita "1475487". E devo essere in grado di rifare il processo inverso, ovvero, dato "1475487", mi torni a dare "4584".

qualcuno ha idee (o anche solo link) su dove partire per una ricerca simile?

grazie in anticipo
znick è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 15:20   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da znick
ho necessità di trovare un algoritmo che, data una chiave (numerica) mi generi un numero univoco

per esempio: dato il numero "4584" mi dia in uscita "1475487". E devo essere in grado di rifare il processo inverso, ovvero, dato "1475487", mi torni a dare "4584".
Dovresti spiegare a cosa ti serve (così capiamo meglio) e che relazione ci deve essere tra i due numeri.
Cioè nel tuo esempio che relazione c'è (o ci dovrebbe essere) tra 4584 e 1475487??
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 15:39   #3
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
beh potresti iniziare a vedere come lavora una funzione hash.
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 15:50   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da beppegrillo
beh potresti iniziare a vedere come lavora una funzione hash.
Già ... ma le funzioni hash non sono invertibili e possono collidere. Lui invece vuole poter fare anche il contrario e quindi, in tal caso, non deve nemmeno collidere.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 16:33   #5
znick
Senior Member
 
L'Avatar di znick
 
Iscritto dal: Aug 2001
Città: Modena
Messaggi: 1195
Quote:
Dovresti spiegare a cosa ti serve (così capiamo meglio) e che relazione ci deve essere tra i due numeri.
Cioè nel tuo esempio che relazione c'è (o ci dovrebbe essere) tra 4584 e 1475487??
mi serve per fare un semplice algoritmo di crittografia, che però sia solo in numeri decimali.

io voglio che l'utente mi immetta nel programma (una pagina web) il numero 4584 . Ma io lo voglio salvare "cifrato" sul database, metterci per esempio "1475487". e da 1475487 voglio poter tornare a ricavare l'originario 4584.

so che non è molto chiaro, ma spero di essermi spiegato un po' meglio
znick è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 16:44   #6
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
Quote:
Originariamente inviato da znick
mi serve per fare un semplice algoritmo di crittografia, che però sia solo in numeri decimali.

io voglio che l'utente mi immetta nel programma (una pagina web) il numero 4584 . Ma io lo voglio salvare "cifrato" sul database, metterci per esempio "1475487". e da 1475487 voglio poter tornare a ricavare l'originario 4584.

so che non è molto chiaro, ma spero di essermi spiegato un po' meglio
beh per iniziare potresti vedere http://en.wikipedia.org/wiki/MD5 è biunivoco però non garantisce nè la totale riservatezza nè la mancanza di collisioni.
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 16:47   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Che senso ha salvarlo cifrato ? Hai qualche problema di sicurezza del database ?

Solitamente le password si salvano tramite un fingerprint MD5 o, meglio, SHA1...
Quando l'utente immette la password sul sito applichi nuovamente l'algoritmo di hash e lo confronti con il risultato salvato nel database...

PS: visto che parli di cifrare, probabilmente esistono già cifrari implementati nel linguaggio server side che usi per il sito web...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 16:49   #8
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da beppegrillo
beh per iniziare potresti vedere http://en.wikipedia.org/wiki/MD5 è biunivoco però non garantisce nè la totale riservatezza nè la mancanza di collisioni.
Eh no, MD5 non è biunivoco!! Se fosse biunivoco, non colliderebbe.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 16:53   #9
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da beppegrillo
beh per iniziare potresti vedere http://en.wikipedia.org/wiki/MD5 è biunivoco però non garantisce nè la totale riservatezza nè la mancanza di collisioni.
Come fa ad essere biunivoco se ci sono collisioni ? Poi è automatico che non sia biunivoco: il dominio è formato da infiniti valori, mentre il codominio da 2^128...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 17:02   #10
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
avete perfettamente ragione, ricordavo male :\
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2006, 17:03   #11
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Le funzioni di hashing possono benissimo essere invertibili, anche le funzioni di hasing crittografico solo che, in quest'ultimo caso, è sperabile che sia di gran lunga più oneroso ricavare i dati originali a partire dalla funzione di hashing e dal codice hash che non produrre il codice hash a partire dai dati e dalla funzione.

E possono anche non collidere tanto che in quel caso si parla di funzioni di hashing perfetto, non di "funzioni che siccome non producono collisioni non sono di hashing".
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 16-11-2006, 08:15   #12
znick
Senior Member
 
L'Avatar di znick
 
Iscritto dal: Aug 2001
Città: Modena
Messaggi: 1195
sono talmente ignorante che non avevo associato l'MD5 (che so a grandi linee cosa sia) a qualcosa che posso utilizzare!

grazie per l'aiuto!
znick è offline   Rispondi citando il messaggio o parte di esso
Old 16-11-2006, 08:34   #13
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Sì, ma l'MD5 lo puoi usare solo come ti ho detto sopra...in quanto non è invertibile. Ad esempio non si può recuperare un password MD5 salvata su un DB, ma con un eventuale procedura di recupero della password persa devi inviare una nuova password generata casualmente alla mail relativa all'utente.
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Avio si prepara ai test del Dimostratore...
Space Pioneer ha annunciato le cause del...
Anthropic avrebbe nuovi antibiotici cont...
Scoperto un 'moltiplicatore nascosto' ne...
DREO: a IFA 2026 4 novità fra cui...
Slackbot genera dashboard e microsite de...
Idrogeno, nuova cella a combustibile rag...
Con la NASA fuori dai giochi, l'ESA risc...
Una falla di ChatGPT permette di estrapo...
Piano clima, 1,34 miliardi per il bonus ...
Porsche esce definitvamente da Bugatti R...
NVIDIA App aggiunge una delle funzioni p...
Come sarebbe il mondo se la luce viaggia...
Titanio, ceramica e zaffiro per HUAWEI W...
Taglio delle accise sul gasolio prorogat...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 07:08.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v