Cryptage/decryptage

0/5 (6 avis)

Snippet vu 18 837 fois - Téléchargée 39 fois

Contenu du snippet

voici une fonction de cryptage et une de décryptage:
-crypter(msgclair,cle): on passe en parametre le texte à crypter et la clé, puis la fonction retourne le texte cryptée.
-decrypter(msgcrypt,cle): on passe en parametre le texte à décrypter et la clé, puis la fonction retourne le texte en clair.
L'ancien source que j'avais fourni ne se souciait pas si Asc(Mid(msgclair,i,1))+Asc(Mid(cle,j,1))>255 se qui pouvait poser des soucis. Maintenant le problème est résolu.

Source / Exemple :


<%
function crypter(msgclair,cle) 
	taillemsg=len(msgclair)
	taillecle=len(cle)
	i=1
	j=1
	msgcrypt=""
	do while i<=taillemsg
		if j>taillecle then j=1 end if
		codeasc=Asc(Mid(msgclair,i,1))+Asc(Mid(cle,j,1))
		if codeasc>255 then
			msgcrypt=msgcrypt&Chr(codeasc-255)
		else
			msgcrypt=msgcrypt&Chr(codeasc)
		end if
		i=i+1
		j=j+1
	loop
	crypter=msgcrypt
end function

function decrypter(msgcrypt,cle) 
	taillemsg=len(msgcrypt)
	taillecle=len(cle)
	i=1
	j=1
	msgclair=""
	do while i<=taillemsg
		if j>taillecle then j=1 end if
		codeasc=Asc(Mid(msgcrypt,i,1))-Asc(Mid(cle,j,1))
		if codeasc<0 then
			msgclair=msgclair&Chr(255+codeasc)
		else
			msgclair=msgclair&Chr(codeasc)
		end if
		i=i+1
		j=j+1
	loop
	decrypter=msgclair
end function
%>

A voir également

Ajouter un commentaire Commentaires
JoNasx86 Messages postés 14 Date d'inscription jeudi 19 mai 2005 Statut Membre Dernière intervention 30 décembre 2006
3 déc. 2006 à 22:53
J'ai enfin trouvé! Je remercie au passage le cache Google qui m'a permis de trouver l'ancienne page du MSDN qui contenait ma réponse!

Il faut rajouter ByVal devant sa variable dans la fonction! Une sombre histoire de pointeur, en tout cas ça marche!

Voici la solution en code:
dans un module :

public function crypt(ByVal msgclair as String)
[...]
end function

dans une form:

private sub button1_click()
passwordCrypte=crypt(txtb_password.text)
end sub

Voilà!
JoNasx86 Messages postés 14 Date d'inscription jeudi 19 mai 2005 Statut Membre Dernière intervention 30 décembre 2006
3 déc. 2006 à 22:43
J'ai pas de chance... Sur toutes les fonctions de cryptage/decryptage que j'utilise VB6 me renvoit "ByRef argument type mismatch".....

Je suis désespéré, pourtant je type bien mes variables...
cs_Warny Messages postés 473 Date d'inscription mercredi 7 août 2002 Statut Membre Dernière intervention 10 juin 2015
17 juin 2003 à 12:18
Salut,
Pour crazyjoe -> le cryptage de césar décale tous les caractère avec le même décallage. Ici c'est un peu plus complèxe puisque les caractère ont un décallage différent.
Pour CJulien -> Utilise la fonction mod (modulo) pour faire tes décalages. Mais il y a plus simple, crypte avec la fonction xor et tu pourra décrypter avec la MÊME fonction.
Sinon, ce cryptage n'est efficace que si la clef est de même longueur que le message, sinon une bête équation peu me donner le décryptage (ca me prendra un peu de temps mais pas beaucoup quand même)
cs_Cjulien Messages postés 7 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 10 juillet 2003
17 juin 2003 à 11:03
Merci beaucoup pour vos suggestion
Utilisateur anonyme
17 juin 2003 à 08:46
Voila encore du beau cryptage de César et en effet, je crois que havoui a raison il faut gérer cette possibilité, sinon, j'ai fais le même quand j'étais jeune, c'est bien on apprend des trucs

----

Bonne continuation

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (cs_Cjulien)