Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Moyen le plus sécurisé de stocker des mots de passe

7 réponses
Avatar
Bull
Bonjour à tous,

J'ai besoin de stocker des mots de passe dans une base de données ainsi que
dans un fichier texte.

Quel est le moyen le plus sûr pour les stocker (les crypter) ?

Merci d'avance,
Bull

7 réponses

Avatar
David.V
Le cryptage par le hachage MD5 par exemple. Jette un oeil sur la classe
MD5...

"Bull" a écrit dans le message de
news:
Bonjour à tous,

J'ai besoin de stocker des mots de passe dans une base de données ainsi


que
dans un fichier texte.

Quel est le moyen le plus sûr pour les stocker (les crypter) ?

Merci d'avance,
Bull




Avatar
Fred
"Bull" a écrit dans le message de news:

Bonjour à tous,

J'ai besoin de stocker des mots de passe dans une base de données ainsi
que dans un fichier texte.

Quel est le moyen le plus sûr pour les stocker (les crypter) ?

Merci d'avance,
Bull



Bonjour,
Tu as des exemples de code ici :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/anch_netsecurity.asp
(en particulier en ce qui concerne le stockage de mots de passe cryptés dans
une base de données)
Avatar
Bull
Bonjour,

Merci beaucoup pour vos réponses.

J'ai essayé d'utiliser le code donné dans les exemples mais ça plante au
décryptage.

Du coup, j'ai continué à chercher sur le net et j'ai trouvé cet algo très
simple :

Imports System.Security.Cryptography

Imports System.Text

Public Class Crypt

Public Function EncryptString(ByVal Data As String) As String

Dim shaM As New SHA1Managed

Convert.ToBase64String(shaM.ComputeHash(Encoding.ASCII.GetBytes(Data)))

Dim eNC_data() As Byte = ASCIIEncoding.ASCII.GetBytes(Data)

Dim eNC_str As String = Convert.ToBase64String(eNC_data)

Return eNC_str

End Function

Public Function DecryptString(ByVal Data As String) As String

Dim dEC_data() As Byte = Convert.FromBase64String(Data)

Dim dEC_Str As String = ASCIIEncoding.ASCII.GetString(dEC_data)

Return dEC_Str



End Function

End Class


Est-ce assez efficace ?

Merci d'avance,
Bull

"Fred" a écrit dans le message de news:
%

"Bull" a écrit dans le message de news:

Bonjour à tous,

J'ai besoin de stocker des mots de passe dans une base de données ainsi
que dans un fichier texte.

Quel est le moyen le plus sûr pour les stocker (les crypter) ?

Merci d'avance,
Bull



Bonjour,
Tu as des exemples de code ici :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/anch_netsecurity.asp
(en particulier en ce qui concerne le stockage de mots de passe cryptés
dans une base de données)



Avatar
Stephane TUET
Bonjour,

Tu as également utiliser la procédure
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile
qui permet de hasher un mot de passe pour le stocker dans ta base. Par
contre il n'est pas possible de décrypter ces mots de passe, il faut donc
comparer uniquement la version "hashée" du mot de passe fourni avec la
version enregistrée dans la base pour savoir s'il est valide ou non.



@+

Steph



"Bull" a écrit dans le message de news:

Bonjour,

Merci beaucoup pour vos réponses.

J'ai essayé d'utiliser le code donné dans les exemples mais ça plante au
décryptage.

Du coup, j'ai continué à chercher sur le net et j'ai trouvé cet algo très
simple :

Imports System.Security.Cryptography

Imports System.Text

Public Class Crypt

Public Function EncryptString(ByVal Data As String) As String

Dim shaM As New SHA1Managed

Convert.ToBase64String(shaM.ComputeHash(Encoding.ASCII.GetBytes(Data)))

Dim eNC_data() As Byte = ASCIIEncoding.ASCII.GetBytes(Data)

Dim eNC_str As String = Convert.ToBase64String(eNC_data)

Return eNC_str

End Function

Public Function DecryptString(ByVal Data As String) As String

Dim dEC_data() As Byte = Convert.FromBase64String(Data)

Dim dEC_Str As String = ASCIIEncoding.ASCII.GetString(dEC_data)

Return dEC_Str



End Function

End Class


Est-ce assez efficace ?

Merci d'avance,
Bull

"Fred" a écrit dans le message de news:
%

"Bull" a écrit dans le message de news:

Bonjour à tous,

J'ai besoin de stocker des mots de passe dans une base de données ainsi
que dans un fichier texte.

Quel est le moyen le plus sûr pour les stocker (les crypter) ?

Merci d'avance,
Bull



Bonjour,
Tu as des exemples de code ici :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/anch_netsecurity.asp
(en particulier en ce qui concerne le stockage de mots de passe cryptés
dans une base de données)







Avatar
Bull
Bonjour Stephane,

Merci pour ton complément de réponse. Hélas, j'ai absolument besoin de
pouvoir décrypter les pass étant donné que l'une des utilisations sera de
pouvoir vérifier ses emails par pop3...

Donc, est-ce que le petit bout de code de mon dernier post est assez
sécurisé pour ce genre d'utilisation ?

Merci
Bull

"Stephane TUET" a écrit dans le message de news:

Bonjour,

Tu as également utiliser la procédure
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile
qui permet de hasher un mot de passe pour le stocker dans ta base. Par
contre il n'est pas possible de décrypter ces mots de passe, il faut donc
comparer uniquement la version "hashée" du mot de passe fourni avec la
version enregistrée dans la base pour savoir s'il est valide ou non.



@+

Steph



"Bull" a écrit dans le message de news:

Bonjour,

Merci beaucoup pour vos réponses.

J'ai essayé d'utiliser le code donné dans les exemples mais ça plante au
décryptage.

Du coup, j'ai continué à chercher sur le net et j'ai trouvé cet algo très
simple :

Imports System.Security.Cryptography

Imports System.Text

Public Class Crypt

Public Function EncryptString(ByVal Data As String) As String

Dim shaM As New SHA1Managed

Convert.ToBase64String(shaM.ComputeHash(Encoding.ASCII.GetBytes(Data)))

Dim eNC_data() As Byte = ASCIIEncoding.ASCII.GetBytes(Data)

Dim eNC_str As String = Convert.ToBase64String(eNC_data)

Return eNC_str

End Function

Public Function DecryptString(ByVal Data As String) As String

Dim dEC_data() As Byte = Convert.FromBase64String(Data)

Dim dEC_Str As String = ASCIIEncoding.ASCII.GetString(dEC_data)

Return dEC_Str



End Function

End Class


Est-ce assez efficace ?

Merci d'avance,
Bull

"Fred" a écrit dans le message de news:
%

"Bull" a écrit dans le message de news:

Bonjour à tous,

J'ai besoin de stocker des mots de passe dans une base de données ainsi
que dans un fichier texte.

Quel est le moyen le plus sûr pour les stocker (les crypter) ?

Merci d'avance,
Bull



Bonjour,
Tu as des exemples de code ici :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/anch_netsecurity.asp
(en particulier en ce qui concerne le stockage de mots de passe cryptés
dans une base de données)











Avatar
Stephane TUET
"Bull" a écrit dans le message de news:
%
Bonjour Stephane,

Merci pour ton complément de réponse. Hélas, j'ai absolument besoin de
pouvoir décrypter les pass étant donné que l'une des utilisations sera de
pouvoir vérifier ses emails par pop3...

Donc, est-ce que le petit bout de code de mon dernier post est assez
sécurisé pour ce genre d'utilisation ?




Je ne suis pas un pro de la sécurité mais le cryptage SHA1 est, il me
semble, un cryptage suffisant. Mais je m'avance trop, je laisse les
personnes qui connaissent mieux le domaine que moi te répondre
correctement... Désolé


@+
Steph
Avatar
Bull
Ok pas grave. Merci :)

Attendons la réponse des autres personnes ;-)

"Stephane TUET" a écrit dans le message de news:

"Bull" a écrit dans le message de news:
%
Bonjour Stephane,

Merci pour ton complément de réponse. Hélas, j'ai absolument besoin de
pouvoir décrypter les pass étant donné que l'une des utilisations sera de
pouvoir vérifier ses emails par pop3...

Donc, est-ce que le petit bout de code de mon dernier post est assez
sécurisé pour ce genre d'utilisation ?




Je ne suis pas un pro de la sécurité mais le cryptage SHA1 est, il me
semble, un cryptage suffisant. Mais je m'avance trop, je laisse les
personnes qui connaissent mieux le domaine que moi te répondre
correctement... Désolé


@+
Steph