IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

XOR CRYPTE files


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    electronique automobile
    Inscrit en
    Septembre 2021
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : electronique automobile

    Informations forums :
    Inscription : Septembre 2021
    Messages : 8
    Par défaut XOR CRYPTE files
    bonjour, voila un bout code fonctionnel pour xor un hex, j'ai retravaille le code pour xor (déchiffrer) un fichier complet hexadécimal en saisissant la clés dans textbox et return le fichier xorée dans un autre textbox.
    le problème est que lorsque je mes le fichier(2048 octets) et je clique pour xorée j'ai une erreur alors que avant le fichier j'ai essayer avec 8 octet il me la fais correctement. merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Imports System.IO
     
    Public Class Form1
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
             Dim choisir As String = TextBox4.Text
            Dim tuc_lecture As Byte()
            Dim adressStart As Integer = 9
            Dim longeur As Integer = 4
            Dim sb As New System.Text.StringBuilder()
            tuc_lecture = File.ReadAllBytes(choisir)
            Dim hexstr = BitConverter.ToString(tuc_lecture, adressStart, longeur).Replace("-", "")
            Dim xorhex As String = TextBox2.Text
            Dim xornum As Integer = Integer.Parse(xorhex, Globalization.NumberStyles.HexNumber)
            For Each numhex As String In hexstr.Split(" "c)
                Dim num As Integer = Integer.Parse(numhex, Globalization.NumberStyles.HexNumber)
                sb.Append((num Xor xornum).ToString("X2"))
            Next
     
            TextBox3.Text = sb.ToString()
        End Sub

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 547
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 547
    Par défaut
    et c'est quoi le message d'erreur ?
    et que contient la Textbox1 ?
    A quoi sert hexstr qui n'est pas réutilisé dans le programme? Il ne devrait pas être utilisé dans la boucle? si oui, vu que c'est du binaire, je doute que l'on retrouve des espaces pour découper la chaine.
    Dans ta boucle, tu réutilises input qui est selon les lignes précédentes le chemin du fichier ??!!
    Bref tu es sûr que le code était vraiment fonctionnel ? ou tu as fait des modifications depuis

  3. #3
    Membre régulier
    Homme Profil pro
    electronique automobile
    Inscrit en
    Septembre 2021
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : electronique automobile

    Informations forums :
    Inscription : Septembre 2021
    Messages : 8
    Par défaut
    MON ERREUR EST System.OverflowException*: 'La valeur était trop grande ou trop petite pour un Int32.'

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 547
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 547
    Par défaut
    Citation Envoyé par julienvb Voir le message
    MON ERREUR EST System.OverflowException*: 'La valeur était trop grande ou trop petite pour un Int32.'
    Le message est explicite: tu essais de convertir un nombre qui ne tient pas dans un entier 32 bits (erreur sur la ligne 13 ou 15) qui dépend donc de la valeur que tu indiques dans ta textbox2
    Il faut donc changer de type pour xornum ou/et num (Integer == Int32) ==> UInt32 (on gagne le bit de signe en indiquant un entier non signé) ou mieux UInt64 (entier non signé 64 bits)

    A moins qu'il faille revoir un peu l'algo

    Reste 2 problèmes:
    1. Tu ne prends que 4 (longueur) octets du fichier à partir du 9ème (adressStart) (ligne 11)

    1. Toujours pas de caractères espaces dans hexstr (ligne 14) puisque les espaces seront transformés en valeur 20 (code ascii de l'espace) donc la boucle ne se fait qu'une fois

  5. #5
    Membre régulier
    Homme Profil pro
    electronique automobile
    Inscrit en
    Septembre 2021
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : electronique automobile

    Informations forums :
    Inscription : Septembre 2021
    Messages : 8
    Par défaut
    Citation Envoyé par umfred Voir le message
    et c'est quoi le message d'erreur ?
    et que contient la Textbox1 ?
    A quoi sert hexstr qui n'est pas réutilisé dans le programme? Il ne devrait pas être utilisé dans la boucle? si oui, vu que c'est du binaire, je doute que l'on retrouve des espaces pour découper la chaine.
    Dans ta boucle, tu réutilises input qui est selon les lignes précédentes le chemin du fichier ??!!
    Bref tu es sûr que le code était vraiment fonctionnel ? ou tu as fait des modifications depuis
    désoler, j'avais pas vue j'ai mis a jour le code, exemple la variable longueur pour le nombre d'octet si je dépasse 5 octet j'ai l'erreur cite précédemment, si demande 4 octet tous se passe bien il m'affiche mon texte xoré dans textbox3

Discussions similaires

  1. [abandon] ApiREST neufBox : compilation hash : etk/crypt: no such file.
    Par N_BaH dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 18/09/2018, 13h18
  2. [Lazarus] DCPcrypt crypt / decrypt file
    Par Invité dans le forum Lazarus
    Réponses: 9
    Dernier message: 12/05/2017, 12h48
  3. [Kylix] Erreur "File not Found : Windows.dcu"
    Par derrick23_2003 dans le forum EDI
    Réponses: 4
    Dernier message: 27/12/2005, 11h18
  4. A propos des 'File management Functions' de Windows
    Par znaidi dans le forum Windows
    Réponses: 3
    Dernier message: 01/04/2003, 16h01
  5. recupèrer file d'attente d'impression
    Par magic corp. dans le forum Langage
    Réponses: 2
    Dernier message: 25/09/2002, 14h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo