tutorials.de-Buchverschenkaktion 08/2010
+ Auf Thema antworten
  1. #1
    carlos1976 carlos1976 ist offline Rookie carlos1976 hat eine blütenweiße Weste
    Registriert seit
    Nov 2009
    Beiträge
    9
    Hallo!

    Folgendes Programm, soll die beiden Strings: Text + Key, Buchstabenweise zusammen verknüpfen.
    Das funktioniert soweit, ich verstehe nur nicht, wie ich ich da die XOR Operation integrieren soll, bzw. wie das gemeint ist..

    (Aufgabenbeschreibung)
    Wandle jedes Zeichen text[i] mit Hilfe einer bitweisen, exklusiven Oder-Operation (^in
    C++) um, bei der das Zeichen text[i] verknüpft wird mit dem Passwort-Zeichen key[i].
    Falls i die Länge von key überschreitet, dann wird zyklisch der Anfang von key
    durchlaufen.

    Eingabe:
    Zu verschlüsselnde Zeichenkette text, Passwort key

    Ausgabe:
    Verschlüsselte Zeichenkette result.

    Implementieren Sie den Algorithmus in einer seperaten Funktion string encrypt (string text, string key) und verschlüsseln Sie die vorgegebene Zeichenkette text mit Hilfe des vorgegebenen Passwortes key.

    Könnt Ihr mir bei der bitweisen, exklusiven Oder-Operation helfen? Thx für Eure Hilfe!



    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    
     
    #include <iostream>
    #include <string>
     
    using namespace std;
     
    string encrypt(string text, string key)
       {
            
       string result;
       
       int k = 0;
       
       for ( int i= 0; i< text.length();i++){
       
       result = result +  text[i] + key[k];  
       
       k++; 
       
       if (key.length()==k)
       k = 0;
      
       } 
      return result; 
    }
     
    int main(int argc, char* argv[])
    {
        string text = "abcdefg.";
        string key  =  "hijkl";
        
        cout << "Die verschluesselte Zeichenkette lautet: " << encrypt(text,key);
        
        return 0;
    }

  2. #2
    deepthroat deepthroat ist offline Mitglied Diamant deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter deepthroat ist berühmt wie kein Zweiter
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    6.619
    Hi.

    Warum addierst du denn die Zeichen? Das ist doch keine (reversible) Verschlüsselung.

    Gruß
    .:Mitglied des 1. offiziellen Sven Uwe Fan-Clubs:.

  3. #3
    CPoly CPoly ist offline Mitglied Brokat CPoly genießt hohes Ansehen CPoly genießt hohes Ansehen CPoly genießt hohes Ansehen CPoly genießt hohes Ansehen CPoly genießt hohes Ansehen CPoly genießt hohes Ansehen CPoly genießt hohes Ansehen CPoly genießt hohes Ansehen
    Registriert seit
    Sep 2009
    Beiträge
    494
    Du hast im Prinzip die Aufgabe fast gelöst. Du sollst ja text[i] und key[i] mit XOR verknüpfen. Du tust sie momentan aber konkatenieren. Du musst lediglich folgende Zeile ändern.

    (Wie immer ohne Garantie, ich programmiere kein c++ )
    Code :
    1
    
    result = result +  text[i] + key[k];
    Code :
    1
    
    result = result +  (char)(text[i] ^ key[k]);

Ähnliche Themen

  1. VB 08 / Operator Mid
    Von Xebino im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 14.10.09, 09:23
  2. operator[] definieren
    Von HPB im Forum C/C++
    Antworten: 5
    Letzter Beitrag: 08.05.09, 12:49
  3. Like Operator
    Von Arijane im Forum .NET Windows Forms
    Antworten: 4
    Letzter Beitrag: 22.06.08, 10:16
  4. Antworten: 2
    Letzter Beitrag: 14.04.07, 14:15
  5. [c++] << und >> Operator
    Von FireFlow im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 26.12.04, 11:44

Stichworte

Lesezeichen

Lesezeichen