Accueil > > > CRYPTAGE ET DÉCRYPTAGE SIMPLE DE STRING
CRYPTAGE ET DÉCRYPTAGE SIMPLE DE STRING
Information sur la source
Description
La fonction suivante effectue deux sortes de cryptage, soit un cryptage pouvant être décrypté avec cette même fonction. Soit un cryptage qu'on ne peut décrypter. Ce deuxième mode doit être utilisé comme le système de mot de passe sous Unix. C'est à dire que pour tester un mot de passe (par exemple) alors que le mot de passe crypter se trouve dans un fichier, on compare le mot de passe entré par l'utilisateur APRES CRYPTAGE avec la chaine se trouvant dans le fichier. Dans ce cas là, on ne peut plus récupéré un mot de passe oublié, on est obligé de l'écraser par un nouveau.
Source
- '*********************************************************************
- ' Fonction de cryptage décryptage
- ' -------------------------------
- ' Le mode indique le mode de cryptage:
- ' 1 -> Cryptage qui peut être décrypté par la suite
- ' 2 -> Cryptage unique
- ' Le booléen cryptage est à vrai si il faut crypter et à false si il faut décrypter
- '*********************************************************************
- Public Function EasyCrypt(Entree As String, mode As Integer, cryptage As Boolean) As String
- ' Variables locales
- Dim sortie As String
- Dim pos As Integer
- Dim offset As Integer
- Dim a_traiter As String
- Dim a_traiter2 As String
- Dim taille As Integer
- Dim pret As Integer
-
- sortie = ""
-
- ' Teste si il faut crypter ou décrypter
- If cryptage = True Then
- If mode = 1 Then
- ' Initialisation
- pos = 1
- taille = Len(Entree)
- ' Boucle de cryptage de la chaine
- While pos <= taille
- ' Extrait la chaine à traiter
- a_traiter = Mid(Entree, pos, 1)
- sortie = sortie & Chr(Asc(a_traiter) - offset)
- ' Prépare le passage suivant
- offset = offset + 1
- If offset = 3 Then offset = 1
- pos = pos + 1
- Wend
- Else
- ' Initialisation
- pos = 1
- taille = Len(Entree)
- ' Boucle de cryptage de la chaine
- While pos <= taille
- ' Extrait la chaine à traiter
- a_traiter = Mid(Entree, pos, 1)
- If pos > 1 Then a_traiter2 = Mid(Entree, pos - 1, 1) Else a_traiter2 = "A"
- pret = Asc(a_traiter) + Asc(a_traiter2) + offset
- If pret > 255 Or pret < 0 Then pret = "z"
- sortie = sortie & Chr(pret)
- ' Prépare le passage suivant
- offset = offset + 1
- If offset = 10 Then offset = 1
- pos = pos + 1
- Wend
- End If
- Else
- ' Initialisation
- pos = 1
- taille = Len(Entree)
- ' Boucle de décryptage de la chaine
- While pos <= taille
- ' Extrait la chaine à traiter
- a_traiter = Mid(Entree, pos, 1)
- sortie = sortie & Chr(Asc(a_traiter) + offset)
- ' Prépare le passage suivant
- offset = offset + 1
- If offset = 3 Then offset = 1
- pos = pos + 1
- Wend
- End If
-
- ' Retourne le résultat de la fonction
- EasyCrypt = sortie
- End Function
'*********************************************************************
' Fonction de cryptage décryptage
' -------------------------------
' Le mode indique le mode de cryptage:
' 1 -> Cryptage qui peut être décrypté par la suite
' 2 -> Cryptage unique
' Le booléen cryptage est à vrai si il faut crypter et à false si il faut décrypter
'*********************************************************************
Public Function EasyCrypt(Entree As String, mode As Integer, cryptage As Boolean) As String
' Variables locales
Dim sortie As String
Dim pos As Integer
Dim offset As Integer
Dim a_traiter As String
Dim a_traiter2 As String
Dim taille As Integer
Dim pret As Integer
sortie = ""
' Teste si il faut crypter ou décrypter
If cryptage = True Then
If mode = 1 Then
' Initialisation
pos = 1
taille = Len(Entree)
' Boucle de cryptage de la chaine
While pos <= taille
' Extrait la chaine à traiter
a_traiter = Mid(Entree, pos, 1)
sortie = sortie & Chr(Asc(a_traiter) - offset)
' Prépare le passage suivant
offset = offset + 1
If offset = 3 Then offset = 1
pos = pos + 1
Wend
Else
' Initialisation
pos = 1
taille = Len(Entree)
' Boucle de cryptage de la chaine
While pos <= taille
' Extrait la chaine à traiter
a_traiter = Mid(Entree, pos, 1)
If pos > 1 Then a_traiter2 = Mid(Entree, pos - 1, 1) Else a_traiter2 = "A"
pret = Asc(a_traiter) + Asc(a_traiter2) + offset
If pret > 255 Or pret < 0 Then pret = "z"
sortie = sortie & Chr(pret)
' Prépare le passage suivant
offset = offset + 1
If offset = 10 Then offset = 1
pos = pos + 1
Wend
End If
Else
' Initialisation
pos = 1
taille = Len(Entree)
' Boucle de décryptage de la chaine
While pos <= taille
' Extrait la chaine à traiter
a_traiter = Mid(Entree, pos, 1)
sortie = sortie & Chr(Asc(a_traiter) + offset)
' Prépare le passage suivant
offset = offset + 1
If offset = 3 Then offset = 1
pos = pos + 1
Wend
End If
' Retourne le résultat de la fonction
EasyCrypt = sortie
End Function
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Aider-moi (cryptage-décryptage de texte) [ par Quiske ]
Salut tlm j'ai un bleme je fais un programme pour crypter et decrypter du texte:j'ai une textbox et 2 bouton je voudrais que en entrant un truc zarb c
Problème Cryptage Vigénère [ par Redman31100 ]
Bonjour à tous !J'ai commencé à faire seulement le code de cryptage Vigénère.Voici le code : Public Shared Function Cryptage(ByVal TextClair As String
Décryptage dans un dossier Temp [ par gotakk ]
Bonjour, je suis débutant en visual basic et je fait un jeu sous frog creator. Mon problème est le suivant : j'ai trouvé une source qui à une fonctio
recherche fichier sous 2 niveau [ par Portos67 ]
Salut à tous, Voila je souhaite faire la recherche d'un fichier dans tous les dossiers après le disque c:\ ainsi que leur sous-répertoires mais pas p
Conversion Integer / String [ par ptitelili059 ]
Bonjour Voilà je récupère dans une variable le code d'un client qui est de la forme C00XXXXX. Je voudrais pouvoir récupérer juste le numéro sans le
passer une string à une DLL C++ [ par alain8550 ]
Bonjour, Je veux accéder à une simple fonction d'une DLL C++. Voici la déclaration du fichier .h concernant cette fonction: [code=cpp]#define API_SP
Définir en dynamique en VB un nouvel emplacement de la source de données - Crystal Reports 11 - VB6 [ par luddoo91 ]
BONJOUR J'ai créer un rapport crystal avec une base de données SQL SERVER 2005. Dans le but de me connecter à plusieurs bases dynamiquement, j'utili
Probleme avec For Each [ par jeyjey1 ]
Bonjour J'ai un probleme dont l'issue m'échappe. Le programme fonctionne très bien pour une ligne mais je n'arrive pas a lui dire de continuer avec l
Gestion des fichiers [ par duarep ]
Bonjour Je rencontre quelques problèmes pour obtenir la liste des fichiers du disque C dans le programme VB express 2008 suivant: ********************
|
Derniers Blogs
OFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONSOFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONS par junarnoalg
De nombreuses entreprises font le choix de SharePoint Online, service fourni au travers de l'offre de Microsoft Office 365. S'il est vrai que ce choix apporte un grand nombre d'avantages; rapidité de mise en œuvre, disponibilité, large couvertu...
Cliquez pour lire la suite de l'article par junarnoalg PRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGEPRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGE par richardc
http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage
Désolé pour "toto", mais c2i existait avant blogs.developpeur.org et c'est mon site "officiel" ;-) ...
Cliquez pour lire la suite de l'article par richardc [HTML5] SLIDES ET DéMOS : AUTOUR DU W3C , NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] SLIDES ET DéMOS : AUTOUR DU W3C , NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Très bonne après-midi passée lors cette conférence avec le W3C, organisée par L' Inria sur les nouveaux standards, ce Mardi 14 Février, on sent vraiment que çà bosse au W3C, et l'avenir est très très prometteur pour le HTML5, notamment ...
Cliquez pour lire la suite de l'article par Gio GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc
Forum
RE : VITESSERE : VITESSE par ucfoutu
Cliquez pour lire la suite par ucfoutu
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|