1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
'---------------------------------------------------------------------------------------
' Procedure : Crypterbis adaptée de la procédure Crypter de Maxence HUBICHE
' Site de la procédure originelle : <a href="http://mhubiche.developpez.com" target="_blank">http://mhubiche.developpez.com</a>
' Objet : Crypter la chaîne chaîneACrypter en fonction d'une clef et de la méthode
' de Vigenère
'---------------------------------------------------------------------------------------
Public Function Crypterbis(ByVal chaîneACrypter As String, Clefgénérée As String)
Dim sLettres As String
Dim lCompteur As Long
Dim lLongueur As Long
'Détermination de la longueur du mot de passe à crypter
lLongueur = Len(chaîneACrypter)
sLettres = String(lLongueur, Chr(0))
'Remplacement lettre pour lettre de chaque caractère du mot de passe
For lCompteur = 1 To lLongueur
'Somme les valeurs ASCII du caractère à crypter et celle du caractère correspondant
'de la clef en retranchant 255 si cette somme est supérieure à 255.
If (Asc(Mid(chaîneACrypter, lCompteur, 1)) + Asc(Mid([Clefgénérée], lCompteur, 1))) > 255 Then
Mid(sLettres, lCompteur, 1) = Chr(Asc(Mid(chaîneACrypter, lCompteur, 1)) + _
Asc(Mid([Clefgénérée], lCompteur, 1)) - 255)
Else
Mid(sLettres, lCompteur, 1) = Chr(Asc(Mid(chaîneACrypter, lCompteur, 1)) + _
Asc(Mid([Clefgénérée], lCompteur, 1)))
End If
'recommencer
Next
'Restitue le résultat de la substitution
Crypter = sLettres
End Function |
Partager