begin process at 2012 02 09 18:47:55
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité & Cryptage

 > HASHAGE SHA1 ET MD5 AVEC OU SANS SEL

HASHAGE SHA1 ET MD5 AVEC OU SANS SEL


 Information sur la source

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité & Cryptage Source .NET ( DotNet ) Classé sous :hash, sha, md5 Niveau :Débutant Date de création :27/12/2004 Date de mise à jour :29/03/2005 13:58:29 Vu / téléchargé :15 979 / 589

Auteur : pietou

Ecrire un message privé
Site perso
Commentaire sur cette source (1)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Crypter des mots de passe pour une application ou même une application réseau est un peu risqué lorsque le hashage existe. Crypter en SHA1 et MD5, c'est bien, mais c'est d'autant mieux si on peut l'améliorer d'un paramètre personnel pour chaque mot de passe à crypter.

C'est pour ça que le sel est là. Dans cet exemple, le mot de passe sera hashé suivant la concaténation du nom, du prénom et du mot de passe, mais rien n'empêcherait de prendre d'autres paramètres ou bien de générer un nombre aléatoire à retenir quelque part, enfin bref, libre cours à l'imagination de tous.

Source

  • L'action du click :
  • private void cmdHash_Click(object sender, System.EventArgs e)
  • {
  • txtHashed.Text = HashString(txtOriginal.Text);
  • String strsalt = txtOriginal.Text+this.tbNom.Text+this.tbPrenom.Text;
  • txtHashedSel.Text = HashString(strsalt);
  • }
  • La fonction de hash de la chaîne de caractères :
  • private string HashString(string Value)
  • {
  • mhash = SetHash();
  • // Convertit la chaîne originale en un tableau de Bytes
  • byte[] bytValue = System.Text.Encoding.UTF8.GetBytes(Value);
  • // Procède au hashage et retourne un tableau de Bytes
  • byte[] bytHash = mhash.ComputeHash(bytValue);
  • mhash.Clear();
  • // Retourne une chaîne de caractères en base 64 de la valeur hashée
  • return Convert.ToBase64String(bytHash);
  • }
  • en fonction du choix de l'algo de cryptage
  • private HashAlgorithm SetHash()
  • {
  • if(this.rbSHA1.Checked)
  • return new SHA1CryptoServiceProvider();
  • else
  • return new MD5CryptoServiceProvider();
  • }
  • Et c'est tout...
L'action du click : 
		private void cmdHash_Click(object sender, System.EventArgs e)
		{
			txtHashed.Text = HashString(txtOriginal.Text);
			String strsalt = txtOriginal.Text+this.tbNom.Text+this.tbPrenom.Text;
			txtHashedSel.Text = HashString(strsalt);
		}

La fonction de hash de la chaîne de caractères : 
		private string HashString(string Value)
		{
			mhash = SetHash();

			// Convertit la chaîne originale en un tableau de Bytes
			byte[] bytValue = System.Text.Encoding.UTF8.GetBytes(Value);

			// Procède au hashage et retourne un tableau de Bytes
			byte[] bytHash = mhash.ComputeHash(bytValue);

			mhash.Clear();

			// Retourne une chaîne de caractères en base 64 de la valeur hashée
			return Convert.ToBase64String(bytHash);
		}

en fonction du choix de l'algo de cryptage
		private HashAlgorithm SetHash()
		{
			if(this.rbSHA1.Checked)
				return new SHA1CryptoServiceProvider();
			else
				return new MD5CryptoServiceProvider();
		}

Et c'est tout... 

 Conclusion

Pour ceux qui veulent des renseignements, n'hésitez pas à me contacter. Vous pouvez aussi visiter le site que nous avons réalisé entré étudiants pour l'entre-aide sur l'étude, ayant (pour en être l'initiateur) le même esprit que CodeS-SourceS : le partage. www.hesit.be

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

27 décembre 2004 10:45:07 :
27 décembre 2004 10:46:47 :
29 mars 2005 13:58:30 :

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) CRYPTOGRAPHIE DE RÉPERTOIRE (AES 256) par Vallorbain
Source avec Zip Source .NET (Dotnet) COPIE DE CLÉ USB AUTOMATIQUE par pigedanslelac
Source avec Zip Source avec une capture Source .NET (Dotnet) CRYPTOGRAPHY par DanMor498
Source .NET (Dotnet) MSA CRYPTAGE NON REVERSIBLE PAR MATRICE SEMI-ALÉATOIRE par yohan49
Source avec une capture Source .NET (Dotnet) CPRB CRIPTAGE PAR POSITION ALÉATOIRE DE CLOCK par yohan49

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture UTILITAIRES DE DÉCODAGE ET D'ENCODAGE par Warny
Source avec Zip Source avec une capture Source .NET (Dotnet) CALCUL D'EMPREINTES DE FICHIERS par lex35
Source avec Zip Source .NET (Dotnet) HASH MD5 ET SHA-1 par damned3
Source avec Zip Source avec une capture Source .NET (Dotnet) CRYPTAGE PRÉDÉFINI ET PERSONNALISÉ GRÂCE À LA COMPILATION DY... par badrbadr
Source avec Zip Source .NET (Dotnet) CRYPTOLOGIE - HASH par microdav

Commentaires et avis

Commentaire de pc152 le 21/11/2006 11:05:05

Bonjour

Merci pour ce code. Pour des raison de compatibilité j'ai du modifier pour avoir le meme résultat u'un codage en MD5 sous javascript ou php voici la modif:

// Convertit la chaîne originale en un tableau de Bytes
byte[] bytValue = Encoding.ASCII.GetBytes(Value);
// Procède au hashage et retourne un tableau de Bytes
byte[] bytHash = mhash.ComputeHash(bytValue);
mhash.Clear();

StringBuilder los = new StringBuilder();
//Par cour du tableau de byte
foreach(byte lo in bytHash)
{
//Convertir un nombre en chaine Hexadécimale en utilisant une surcharge de ToString() et le format X.
los.Append(lo.ToString("X2", null));
}
// Retourne une chaîne de caractères de la valeur hashée
return los.ToString();

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

MD5 [ par zatt ] Bonjour,j'essaie d'obtenir un hash md5 à partir de cette méthode :publicstatic<f code pour cryptage MD5 en série [ par yaca ] Bonjour,Je suis débutant essaie de comprendre ce qui se passe dans vos lignes, mais je ne sais encore écrire seul!!Je voudrais crypter MD5 en série qu [Algo] cryptage besoin d'aide [ par juju hack ] Bonsoir,J'ai besoin de passer un code en C# en code VB le voici:[code]publicstring CryptPassword(<font co Cryptage md5 en c# et en VB [ par Spawn3107 ] Bonjour tout le monde, j'ai un petit soucis dans une communication entre deux programmes. D'un côté j'ai un programme en vb qui me crypte un mot de Md5 [ par d0d0 ] Comment est il possible d'obtenir simplement la valeur md5 d'une chaine de caratere.MerciDorianD0D0 Algo Md5 Comment faire? [ par lanarchyste ] Bonjour je solicite votre aide afin que je puisse coder ma propre fonction de cryptage md5(). Le logiciel doit tourner sur un windows CE (compack fram MD5 Dll compatible Compact Framework 1.0 [ par lanarchyste ] Bonjours a tous je voudrai savoir si quelqu'un aurai la possibilit&#233; de cr&#233;e une dll md5() a partir d'une classe .L'une&nbsp; des exigence qu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,952 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales