ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Cryptage/Décryptage   



L'auteur

FredA
France France
Membre Simple
# 0000000005
enregistré le 12/10/2004

Fiche personnelle


Note des membres
pas de note

Contributions > 01 - PRG : Programmation > Crypto - Hash - Compression

Cryptage/Décryptage
# 0000000165
ajouté le 25/03/2005 14:11:34 et modifié le 30/03/2005
consulté 11269 fois
Niveau débutant

Version(s) Foxpro :
VFP 9.0
VFP 8.0
VFP 7.0
VFP 6.0
VFP 5.0
VFP 3.0
FPW 2.6
FPD 2.x

Description
une fonction que j'utilise depuis des lustres...et peut être même avant.
Code source :
function crypte
parameters chaine
local l_crypt_lg,l_crypt_ch,l_crypt_tm,l_crypt_i
chaine = padr(chaine,20)
l_crypt_lg=len(chaine)
l_crypt_ch=""
for l_crypt_i=1 to l_crypt_lg
  l_crypt_tm=asc(substr("WHATEVRYUXZY",mod(l_crypt_i,11),1))
  l_crypt_tm=mod(asc(substr(chaine,l_crypt_i,1))+l_crypt_tm,255)
  l_crypt_ch=l_crypt_ch+chr(255-l_crypt_tm)
endfor
return l_crypt_ch
endfunc

? crypte(crypte("ceci est un test"))

Commentaires
le 25/03/2005, FredA a écrit :
biensur, la chaine "WHATEVRYUXZY" est arbitraire et peut se limter à 10 caractères ;)
le 06/09/2007, laurent.dellacherie2 a écrit :
Merci Frédéric, cette fonction est superbe.
Simplicité et performance. Car si je met un texte comme "AAAA" tu obtiendra des lettres identiques pour ton message. Ce qui rend la cryptanalyse plus compliqué.


www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3