Voici ce mini code tout simple qui rapelle beaucoup les codages lors de la 2nde guerre mondiale.
Bien sûr la sécurité n'est absolument pas poussée, mais celà peut s'averer utile si par exemple vous possédez des fichiers textes ou ini pour votre programme et que vous ne souhaitez pas que l'on puisse les lire directement (à condition que ce soit pas très important) : on serait alors obligé d'utiliser le programme pour les lire sans avoir besoin d'un lourd et peu pratique algorythme dans son programme :)
Voilà, on utilise alors la methode replace.
On peut :
- coder directement le texte tapé
- Ouvrir un fichier txt puis le coder
- Ouvrir un fichier txt puis le décoder
Source / Exemple :
Sub Button1Click(sender As Object, e As System.EventArgs)
Timer1.Start()
End Sub
Sub MainFormLoad(sender As Object, e As System.EventArgs)
Timer1.Interval = 150 'intervalle du compteur
Dim SW As New StreamWriter("count.txt") 'on crée un compteur
SW.WriteLine("0") 'on lui attribue la valeur 0 (de départ)
SW.Close() 'on quitte
End Sub
Sub Timer1Tick(sender As Object, e As System.EventArgs)
Dim SR As New StreamReader("count.txt") 'on lit le compteur
Dim val as Decimal
val = SR.ReadLine() 'on lit la valeur du compteur
SR.Close()
Dim longueur As Decimal
longueur = len(textbox2.text)
If longueur = val Then 'cas lorsque toutes les données ont été décodées
Timer1.Stop() 'on arrête le timer
MessageBox.Show("Conversion terminée !") 'petit message de confirmation
TextBox1.Text = ""
Dim SW1 As New StreamWriter("count.txt") 'on réinitialise le compteur
SW1.WriteLine("0")
SW1.Close()
Else
TextBox2.SelectionStart=val 'position de départ
TextBox2.SelectionLength=1 'longueur de texte
Dim code As decimal
code = Asc(textBox2.SelectedText) 'On fait le phénomène inverse
Dim cran1 As decimal
cran1 = ComboBox1.Text()
Dim rotor1 As decimal
rotor1 = code-cran1
Dim cran2 As Decimal
cran2 = ComboBox2.Text()
Dim rotor2 As Decimal
rotor2 = rotor1-cran2
Dim cran3 As Decimal
cran3 = ComboBox3.Text()
Dim rotor3 As Decimal
rotor3 = rotor2+cran3
Dim resultat As String
resultat = Chr(rotor3) ' On affiche le Résultat
textbox3.AppendText(resultat)
Dim val2 As Decimal 'on ajoute 1 au compteur pour se déplacer d'un caractère
val2 = val+1
Dim SW As New StreamWriter("count.txt")
SW.WriteLine(val2)
SW.Close()
End If
End Sub
Sub Button2Click(sender As Object, e As System.EventArgs)
TextBox1.Text = "" 'raser toutes les données
TextBox2.Text = ""
TextBox3.Text = ""
Dim SW As New StreamWriter("count.txt")
SW.WriteLine("0")
SW.Close()
End Sub
Conclusion :
Je rapelle comme qu'il s'agit de CODAGE/DECODAGE et non pas de CRYPTAGE/DECRYPTAGE !
Merci d'en prendre compte !
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.