Salve a tutti, esiste una funzione standard per crittografare una stringa di 16 caratteri in linguaggio C??? Oppure esiste un modo non troppo complicato per farlo???
GRAZIEE
Salve a tutti, esiste una funzione standard per crittografare una stringa di 16 caratteri in linguaggio C??? Oppure esiste un modo non troppo complicato per farlo???
GRAZIEE
Non esiste una funzione standard in C ...
Modi non molto complicati ne esistono tantissimi ... uno di questi si basa sull'utilizzo dell'operatore xor ... ^
cioè un esmpio pratico?
Oggi sono buono ...
... considera che il metodo e' tra i piu' semplici ...codice:int i; char s[100]; char key = 0x7D; strcpy(s, "CIAO"); printf("%s\n", s); // Cripta con la chiave key for(i=0; i<strlen(s); i++) s[i]^=key; printf("%s\n", s); // Decripta con la chiave key for(i=0; i<strlen(s); i++) s[i]^=key; printf("%s\n", s);
grazie davvro oregon!
Sinceramente non so se esistano librerie ad hoc per la crittografia(è cmq probabile che esistano).
Cmq dipende dall'importanza che la tua stringa abbia. Puoi crearti una funzione qualsiasi che operi sui numeri ASCII della tua stringa o puoi arrivare a fare cose molto più complesse.
Il campo della crittografia è molto vasto, esistono diversi tipi di metodi.
Un esempio carino e semplice è il cifrario di Cesare:
trasli tutti i tuoi caratteri di un numero prefissato di caratteri.
Ad esempio se traslo la stringa "ciao" di 4 caratteri(con l'alfabeto inglese a 26 caratteri) ottengo la stringa "gmes" ottenuta sostituendo ad ogni lettera, la sua corrispondente di 4 caratteri più avanti.
Naturalmente, il successivo della z è la a ....
Open your mind. Use Open Source.