IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Cryptage de mot de passe ?


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de troxsa
    Inscrit en
    Novembre 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Novembre 2004
    Messages : 388
    Par défaut Cryptage de mot de passe ?
    Bonjour a tous

    Je souhaite faire un cryptage simple mais pas trop non plus

    est il possible de faire un cryptage avec une clef que seul l'utilisateur connais ?
    genre la clef serais un mot ou une phrase et que ce bout de phrase ou mot serais la clef pour faire le décryptage ?

    Si vous avez des sources que vous avez sous la main je suis preneur
    en vous remerciant d'avance.

    Cordialement,
    Troxsa

  2. #2
    Expert confirmé

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Par défaut
    Citation Envoyé par troxsa Voir le message
    simple mais pas trop non plus


    Bon, allez, pour faire simple, tu devrais jeter un oeil ici:
    http://bidou.developpez.com//tutorie...curite/crypto/

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  3. #3
    Membre éprouvé
    Avatar de troxsa
    Inscrit en
    Novembre 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Novembre 2004
    Messages : 388
    Par défaut
    Oué effectivement quand meme !
    mais un peux soulant a faire pour un petit programme ...

    Il y aurais pas un truc dans le style Cryptage(KeyDeDecryptage, source a Crypter ou a décrypter) ?

  4. #4
    Membre éprouvé
    Avatar de troxsa
    Inscrit en
    Novembre 2004
    Messages
    388
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Novembre 2004
    Messages : 388
    Par défaut
    Voila j'ai fini par trouver un bout de script sympa

    Pour le scriptage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
        Private Function TripleDESEncode(ByVal value As String, ByVal key As String) As String
            Dim des As New Security.Cryptography.TripleDESCryptoServiceProvider
            des.IV = New Byte(7) {}
            Dim pdb As New Security.Cryptography.PasswordDeriveBytes(key, New Byte(-1) {})
            des.Key = pdb.CryptDeriveKey("RC2", "MD5", 128, New Byte(7) {})
            Dim ms As New IO.MemoryStream((value.Length * 2) - 1)
            Dim encStream As New Security.Cryptography.CryptoStream(ms, des.CreateEncryptor(), Security.Cryptography.CryptoStreamMode.Write)
            Dim plainBytes As Byte() = System.Text.Encoding.UTF8.GetBytes(value)
            encStream.Write(plainBytes, 0, plainBytes.Length)
            encStream.FlushFinalBlock()
            Dim encryptedBytes(CInt(ms.Length - 1)) As Byte
            ms.Position = 0
            ms.Read(encryptedBytes, 0, CInt(ms.Length))
            encStream.Close()
            Return Convert.ToBase64String(encryptedBytes)
        End Function
    Le decryptage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
        Public Function TripleDESDecode(ByVal value As String, ByVal key As String) As String
            Dim des As New Security.Cryptography.TripleDESCryptoServiceProvider
            des.IV = New Byte(7) {}
            Dim pdb As New Security.Cryptography.PasswordDeriveBytes(key, New Byte(-1) {})
            des.Key = pdb.CryptDeriveKey("RC2", "MD5", 128, New Byte(7) {})
            Dim encryptedBytes As Byte() = Convert.FromBase64String(value)
            Dim ms As New IO.MemoryStream(value.Length)
            Dim decStream As New Security.Cryptography.CryptoStream(ms, des.CreateDecryptor(), Security.Cryptography.CryptoStreamMode.Write)
            decStream.Write(encryptedBytes, 0, encryptedBytes.Length)
            decStream.FlushFinalBlock()
            Dim plainBytes(CInt(ms.Length - 1)) As Byte
            ms.Position = 0
            ms.Read(plainBytes, 0, CInt(ms.Length))
            decStream.Close()
            Return System.Text.Encoding.UTF8.GetString(plainBytes)
        End Function
    L'ulisation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
            Dim key As String = "a1B@c3D$"
     
            Dim original As String = "This is a test, blah, blah, blah."
            Console.WriteLine("Original" & vbCrLf & "-----------------")
            Console.WriteLine(original & vbCrLf)
     
            Dim encrypted As String = TripleDESEncode(original, key)
            Console.WriteLine("Encrypted" & vbCrLf & "-----------------")
            Console.WriteLine(encrypted & vbCrLf)
     
            Dim decrypted As String = TripleDESDecode(encrypted, key)
            Console.WriteLine("Decrypted" & vbCrLf & "-----------------")
            Console.WriteLine(decrypted & vbCrLf)
     
            Console.ReadLine()
    Le resultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Original
    -----------------
    This is a test, blah, blah, blah.
     
    Encrypted
    -----------------
    sUxLUCy4R8tl+x7EhNA0wG3QyrZjtJVFeDR5pDWA2M8QuJy5m+mXDA==
     
    Decrypted
    -----------------
    This is a test, blah, blah, blah.
    Je met eventuellement le site ou j'ai trouvé ce bout de code !
    http://addressof.com/blog/archive/2004/10/19/997.aspx

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 251
    Par défaut
    j'aimerai utiliser ces fonctions mais visiblement dans le Compact Framework 3.5 il n'y a pas de Security.Cryptography.PasswordDeriveBytes

    Avez vous un équivalent ? Mon but est de trouver une solution de cryptage symetrique simple (mais pas trop passoire) tournant sous CF3.5 avec clef de cryptage que je définirai

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Cryptage de mot de passe
    Par DJBORIE dans le forum Access
    Réponses: 3
    Dernier message: 17/02/2006, 15h10
  2. cryptage de mot de passe
    Par chti_juanito dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 07/02/2006, 23h29
  3. Oracle 9i - Cryptage de mots de passe sous sql
    Par momo9237 dans le forum Oracle
    Réponses: 2
    Dernier message: 04/01/2006, 11h11
  4. [VB.NET] cryptage de mot de passe.
    Par leSeb dans le forum Windows Forms
    Réponses: 16
    Dernier message: 28/05/2005, 14h06
  5. [cryptage] cryptage de mot de passe
    Par LoLoSS dans le forum Sécurité
    Réponses: 5
    Dernier message: 11/05/2004, 12h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo