PDA

Visualizza la versione completa : [C++] Crittografia numeri


ombra
21-02-2010, 01:42
Ciao a tutti,
Devo proteggere un software con una semplice chiave in base al numero utente, praticamente un numero di massimo 4-8 cifre (esempio: 12345678).
So che potrei fare un hash la la chiave diventerebbe troppo lunga, esiste un algoritmo (che magari restituisca sempre numeri) che potrebbe fare al caso mio?

Mi serve per un semplice software in C++. O comunque, sapendo l'algoritmo potrei provare anche a tradurlo in C++.

Aaaah dimenticavo, non mi serve per forza reversibile, non avrò mai la necessità di decriptare il numero precedentemente criptato.


Grazie mille

oregon
21-02-2010, 02:22
Non ho capito ... che relazione c'e' tra quello che chiedi e la protezione del software?

ombra
21-02-2010, 02:30
bhe, ho intenzione di mettere questa funzione che fa il CRYPT dentro una DLL.

L'utente ha:

- Codice cliente (esempio: 12345678)
- Chiave (che sarebbe il codice cliente crittografato)

Per usare la DLL, dovrà passare, il codice cliente e la chiave. Praticamente io dovrò solamente vedere se la chiave inserita corrisponde effettivamente al codice cliente crittografato.

Tutto qui

oregon
21-02-2010, 03:32
Ma quindi, avendo questi due valori, il progamma è utilizzabile ...

Il tuo cliente avrà sempre quei due valori, quindi potrà fare quante copie vuole ... o non ho capito ...?

c_junior
21-02-2010, 03:56
ma è solo un esercizio o devi implementare questa cosa in un software commerciale? se devi farlo per un software commerciale la cosa non ha molto senso perché come dice oregon il cliente fa tutte le copie che vuole e se vuole mette anche i codici su internet cosi tutti li possono trovare.

arraffaele
21-02-2010, 17:34
in ogni caso potresti usare md5 hash

vedi qui (http://www.codeguru.com/cpp/cpp/algorithms/checksum/article.php/c2043/)

ombra
22-02-2010, 10:28
Originariamente inviato da oregon
Ma quindi, avendo questi due valori, il progamma è utilizzabile ...

Il tuo cliente avrà sempre quei due valori, quindi potrà fare quante copie vuole ... o non ho capito ...?

è per un software commerciale.
Perché potrà fare quante copie vuole? come ho detto c'è il codice cliente, il codice cliente è univoco, quindi lo potrà usare solo per se.

c_junior
22-02-2010, 12:45
si ma tieni presente che lui lo potrà dare a chiunque vuole quel codice!!!

ombra
23-02-2010, 00:30
non ci siamo capiti....
quando un utente effettua il login, il sistema lo riconosce e prende il codice utente (numero univoco dal database)....il codice non si può dare in giro, perché come ho detto funziona solo con l'utente che abbia quello specifico numero univoco di registrazione

oregon
23-02-2010, 01:02
Originariamente inviato da ombra
non ci siamo capiti....
quando un utente effettua il login, il sistema lo riconosce e prende il codice utente (numero univoco dal database)....il codice non si può dare in giro, perché come ho detto funziona solo con l'utente che abbia quello specifico numero univoco di registrazione

Non sei stato molto chiaro ... almeno io non ho capito ...


"un utente effettua un login"

Dove e come ?

"prende il codice utente"

E cosa ci fa ?

Loading