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

Delphi Discussion :

probleme avec XOR avec les chiffres


Sujet :

Delphi

  1. #1
    Membre du Club Avatar de pierre987321
    Inscrit en
    Août 2005
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 139
    Points : 62
    Points
    62
    Par défaut probleme avec XOR avec les chiffres
    bonjour voila je veu cryter avec XOR mais un probleme se présente.

    quand je veu cryter que des lettres c ok!
    quand j'ajoute des chiffres le cryptage et plus bon.
    en faite la présentation dans le edit est ok
    mais quand je copie/colle pour le retraduire sa s'arrete au
    moment des chiffre :-(

    pour tester et me donner votre avie :
    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
     
    function crypt_decrypt_xor(chaine:string;key:string):string;
    var i,j:integer;
        s:string;
    begin
    s:='';j:=1;
    for i:=1 to length(chaine) do
    begin
      if j>length(key) then j:=1;
      s:=s+char(integer(ord(chaine[i])) xor integer(ord(key[j])));
      j:=j+1;
    end;
    Result:=s;
    end; 
     
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Edit2.Text:=crypt_decrypt_xor(edit1.text,'5');
    end;
    quand pensez vous ???

  2. #2
    Membre habitué
    Inscrit en
    Juin 2005
    Messages
    207
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 207
    Points : 161
    Points
    161
    Par défaut
    J'en pense que:
    1) Tu as le problème quand tu utilises une clé spéciale qui est 5. Change de clé et tu verras que tu auras d'autres problèmes.

    2) Le cryptage par xor te renvoie un code qui n'est pas obligatoirement dans la table ASCII des 0-9 a-z A-Z. Et cela va dépendre de tes données ET de ta clé. Or, si un utilisateur ne peut pas utiliser ce code sous prétexte que les données/la clé ne convient pas, c'est pas cool.

    3) Enregistre tes données cryptée sous forme binaire plutôt qu'alphanumérique et tu verras que ça fonctionne bien.

    4) Si tu veux à tout prix conserver des données "lisibles", alors je te conseille de bidouiller ton code pour afficher, par exemple le code ascii converti en string plutôt que le code ascii lui même. Par exemple, si le code te renvoi le caractète $13 (qui correspond à un retour chariot, donc illisible en soit), affiche plutôt '013' (oui, 3 caractères, parce que sinon tu vas être limité au code ascii 99, ce qui représente en soit une limitation un peu forte. Pour le décodage, suffit de prendre la chaine par groupe de 3 caractères et de convertir ça comme il faut!

  3. #3
    Membre du Club Avatar de pierre987321
    Inscrit en
    Août 2005
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 139
    Points : 62
    Points
    62
    Par défaut ...
    esque tu as un exemple par azzzar ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 10
    Dernier message: 28/08/2009, 11h21
  2. Réponses: 3
    Dernier message: 17/03/2009, 13h51
  3. Probleme de requete avec jointure avec vb 2005
    Par napegadie dans le forum Windows Forms
    Réponses: 1
    Dernier message: 27/04/2007, 21h04
  4. [Layer] Probleme de superposition avec les JMenuItem
    Par azdruyel dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 21/07/2004, 11h24
  5. problemes de performances avec les requetes select
    Par berry dans le forum Requêtes
    Réponses: 3
    Dernier message: 10/07/2003, 13h39

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