Merci de la pr�cision, int�ressant tout ca![]()
Merci de la pr�cision, int�ressant tout ca![]()
Pour, quand m�me, r�pondre � -4ian-, ce qu'il faudrait surtout savoir, c'est si ton souhait est:Dans le premier cas, et selon le niveau de s�curit� que dont tu as besoin, MD5, SHA ou les autres peuvent faire l'affaire.
- de disposer d'un moyen "rapide" de "comparer" deux chaines afin de s'assurer qu'elles sont identiques (ou non) ou
- de disposer d'un moyen de stocker tes chaines de mani�re illisible, en �tant en mesure de r�cup�rer la chaine d'origine "� la demande"
Dans le second cas, il faut bel et bien se tourner vers AES, blowfish ou, pourquoi pas, une "simple" am�lioration du cryptage de Cesar, selon, encore une fois, la s�curisation que tu souhaites obtenir![]()
A m�diter: La solution la plus simple est toujours la moins compliqu�e
Ce qui se con�oit bien s'�nonce clairement, et les mots pour le dire vous viennent ais�ment. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 f�vrier 2014
mon tout nouveau blog
Ouais mais bon, quand tu veux juste rendre illisible tes photo de vacances ...
Un pirate se les procures et peu ainsi t'admirer en maillot de bain sur la plage ? Waawww ....
Une protection faible n'est pas forc�ment mauvaise, tout d�pend de ce qui est � prot�ger. Une protection adapt�e � l'int�r�t de conserver le secret est souvent plus efficace que de prendre la meilleure s�curit� du monde. Ca a tendance a attirer l'attention![]()
A m�diter: La solution la plus simple est toujours la moins compliqu�e
Ce qui se con�oit bien s'�nonce clairement, et les mots pour le dire vous viennent ais�ment. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 f�vrier 2014
mon tout nouveau blog
Il s'agit ( s'agissait ) bien de trouver un moyen de chiffrer une chaine de mani�re illisible et de pouvoir la d�coder ensuite, pas une simple fonction de hash pour v�rifier un mot de passe.
Je me suis tourn� comme je l'ai dit vers l'AES, j'ai besoin d'un niveau de s�curit� �lev�, mais je d�plore de devoir toujours se "taper" des classes qui utilisent par exemple des char* � tour de bras. En fonctionnement interne, c'est pas mon probl�me, mais � quand une classe qui d�finit par exemple
std::string AES::Encrypt(std::string str, std::string password) ?
Sa d�pend les sources. (comprendre par qui �a a �tait cod�). Ce genre de chose j'ai l'impression que c'est souvent un wrapper d'un code en C plut�t qu'autre chose... du coup on se tape du C/C++ � tout les �tages.
qu'on me fasse pas dire ce que j'ai pas dis : y'a aussi de tr�s belle impl�mentation hein...
Avoir un algorithme qui est impl�ment� en C ne me d�range pas, c'est plut�t le fait que la plupart des sources des algorithmes estampill�es "C++" ne proposent qu'une classe qui utilise � foison du char*, du unsigned char * datain, du EncryptBlock ( Du C with classes) et on a vite ( tr�s vite ) fait de se planter avec �a.
Proposer ceci peut �videmment �tre utile � plus d'une personne, mais je pense que certains aimerait aussi des fonctions simples comme �voqu�e ci dessus.
Le fait est que le char* est, en d�finitive, le socle commun qui permet, le cas �ch�ant, de crypter autre chose que des chaines de caract�res (des valeurs num�riques, enti�res ou non, par exemple).
Il n'est, en effet "pas impossible" que le cryptage des donn�es porte sur... autre chose que des chaines de caract�res, et donc, que le recours au "socle commun" s'av�re n�cessaire.
Evidemment, si on a la certitude de n'utiliser que des chaines de caract�res, il peut rapidement devenir contraignant de se *taper* ce socle commun.
Mais rien n'emp�che, si, effectivement, tu as cette certitude, de fournir une interface utilisant les chaines de caract�res et non le char*![]()
A m�diter: La solution la plus simple est toujours la moins compliqu�e
Ce qui se con�oit bien s'�nonce clairement, et les mots pour le dire vous viennent ais�ment. Nicolas Boileau
Compiler Gcc sous windows avec MinGW
Coder efficacement en C++ : dans les bacs le 17 f�vrier 2014
mon tout nouveau blog
Je ne l'ai pas personnellement utilis�e, mais le toolkit keyczar a l'air int�ressant :
http://code.google.com/p/keyczar/
Exemple :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5 keyczar::Keyczar* crypter = keyczar::Encrypter::Read(location); if (!crypter) return 1; std::string ciphertext; bool result = crypter->Encrypt(input, &ciphertext);
Oui, j'avais vu �a, �a correspondait bien � ce que j'avais besoin, mais j'ai failli m'�trangler en voyant que ce n'est pas encore compilable en C++ sous Windows.
Juste pour me situer un peu, j'ai fait un programme de chiffrement de message contenu dans un fichier, j'ai utiliser RSA.
La bibli GMP pour les grand nombre, mais pour ton cas, utiliser RSA avec des petits nombres ca ne te conviendrai pas? et pkoi?
RSA avec des petit nombres, c'est nul. RSA est int�ressant si tu y va avec des grand nombres que tu ne peut pas factoriser, sinon, le cot� asym�trique ne sert plus a rien.
Sinon, c'est bien d'avoir fait du RSA, mais c'est b�te car pour peu que ton claire soit plus grand que ta clef, tu es faible devant les attaques statistiques. RSA, �a sert a crypter les clef d'algo sym�triques, type AES par exemple.
Partager