[PHP] "Verschlüsselung" läuft schief :(

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Don Poncho, 31. März 2008 .

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 31. März 2008
    "Verschlüsselung" läuft schief :(

    Hallo!
    also folgendes, ich sollte eine "verschlüsselung" programieren bei der jeder buchstabe vom eingegebenen text durch einen anderen aus einer art geheim alphabeth ersetzt wird.
    das problem ist nur das er irgentwie nicht ganz das macht und ich nich weiss wieso :(

    Code:
    <?php
     if (isset($_POST['ok']))
     {
     $str_alph = $_POST['textbox'];
     $str_ralph = qrstufdpcukhumglyjzbeoiawx;
     
     for ($i = 0; $i < strlen($str_alph); $i++)
     {
     $arr_alph[] = substr ($str_alph, $i, 1);
     }
    
     for ($i = 0; $i < strlen($str_ralph); $i++)
     {
     $arr_ralph[] = substr ($str_ralph, $i, 1);
     }
    
     $posa=0;
     $posr=0;
     
     while ($posa<count($arr_alph)){
    
     if ($posr<=count($arr_ralph))
     {
     $bsa=$arr_alph[$posa];
     $bsr=$arr_ralph[$posr];
     $bsa=$bsr;
     $gt=$gt.$bsa;
     $posr++;
     } 
     else
     $posr=o;
    
     $posa++;
     }
    
     echo $gt;
     echo "<br>";
     }
    
     echo "<form action='rotorkomplex.php' method='POST'>
     <input type='text' name='textbox'>
     <input type='submit' name='ok' value='Und los...'>";
    ?>
    
    hoffe ich hab mich verständlich ausgedrückt und ihr könnt mir helfen
     

  2. Anzeige
    Heute: Deals & Sale mit stark reduzierten Angeboten finden.
  3. #2 31. März 2008
    AW: "Verschlüsselung" läuft schief :(

    Habs mir nicht ganz angekuckt, aber vll. liegts daran das du $arr_ralph vorher nicht deklariert hast und dieses Array nur in der "For" Schleife existiert.
     
  4. #3 31. März 2008
    AW: "Verschlüsselung" läuft schief :(

    so habs überarbeitet (die forschleife war überflüssig)

    gibts noch formsachen oder halt, kann ich es noch einfacher halten?

    code siehe oben

    EDIT//

    also es läuft alles aber das problem ist das wenn der text länger als das geheimalphabet ist gehts nich weiter sondern er hört dann da auf!
    wieso? ich hab das doch extra mit der if else abfrage überprüft
     
  5. #4 31. März 2008
    AW: "Verschlüsselung" läuft schief :(

    mir ist aufgefallen dass du kleine syntax-fehler hast:
    PHP:
    <?
    $str_ralph  qrstufdpcukhumglyjzbeoiawx ;
    // ersetzen durch
    $str_ralph  "qrstufdpcukhumglyjzbeoiawx" ;
    ?>
    um ein string in array zu konventieren nimmst du einfach str_split().
     
  6. #5 1. April 2008
    AW: "Verschlüsselung" läuft schief :(

    Dein Script funktioniert überhaupt nicht ...Das einzige was passiert: Es werden je nach Anzahl der eingegebenen Buchstaben, gleichviele (nur bist 26) Buchstaben des "Geheim"-Alphabets ausgegeben, aber immer in dieser Reihenfolge (qrstufdpcukhumglyjzbeoiawx).

    Mit meinem überaus bescheidenen PHP-Wissen (funktioniert auch mit großen Strings):
    PHP:
    <? php
    # $eingabe ist die Variable aus dem Formular
    $eingabe = str_split ( "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz" );

    # Original und Geheim Alphabet
    $orig_alph = str_split ( "abcdefghijklmnopqrstuvwxyz" );
    $new_alph = str_split ( "qrstufdpcukhumglyjzbeoiawx" );

    # Schleife sucht sich den Index-Wert des ersten/zweiten/... Buchstaben der Eingabevariablen im Original Alphabet und tauscht den Buchstaben mit dem aus dem Geheim Alphabet
    for( $i = 0 ; $i < count ( $eingabe ); $i ++) {
        for(
    $j = 0 ; $j < count ( $orig_alph ); $j ++) {
            if(
    $eingabe [ $i ]== $orig_alph [ $j ]) {
                echo 
    $new_alph [ $j ];
            }
        }
    }
    ?>
    Achja durch vertauschen der Alphabete kannst du den Text wieder entschlüsseln.
     
  7. #6 1. April 2008
    AW: "Verschlüsselung" läuft schief :(

    nene du hast was anderes gemacht!

    das sollte sozusagen eine "1-rotor-enigma" sein ^^
    sprich der buchstabe 1 von der eingabe wird durch den buchstaben 1 vom geheimalphabet (oder eben dem rotor) ersetzt.
    normalerweise sind da ja noch zwei andere rotoren hinter aber das sollte man nich machen...

    das geheim alphabet soll sozusagen immer wieder durchlaufen werden bis der eingegebene text zu ende ist das wars.

    bei dir werden ja bestimmte buchstaben durch festgelegte gegenstücke ersetzt.
    aber trotzdem danke für die tips :D

    bw habt ihr alle
     
  8. #7 1. April 2008
    AW: "Verschlüsselung" läuft schief :(

    ganz einfach bei deinem prob:
    die for-schleife ist so angelegt, das er bei $arr_ralph[25] aufhört!

    diese Änderung an der zweiten for-schleife sollte dein "geheimarray" immer länger bzw genausolang halten wie dein posttext:

    PHP:
        $count = 0 ;    
            for (
    $i  0 $i  strlen ( $str_ralph );  $i ++)
            {
                
    $count ++;    
                
    $arr_ralph [] =  substr  ( $str_ralph $i 1 );
                
    // routine erweitern, wenn der counter nicht die laenge von $str_alph erreicht hat
                // dein geheimpasswort wird wieder von anfang bis ende in die array gespeichert
                
    $i =( $i ==( strlen ( $str_ralph )- 1 ) &&  $count < strlen ( $str_alph )) ?  $i ;
            }
        unset(
    $count );
    Ich versteh es nur nich ganz^^

    Weil:
    peter ist dann bei dir qrstu
    und
    udolf ist qrstu

    Was bringen diese identischen Werte frage ich mich.
     
  9. #8 1. April 2008
    AW: "Verschlüsselung" läuft schief :(

    Also ich hab mal kurz das Rotor-Verschlüsselungs-Verfahren überflogen, und wenn ichs richtig verstanden habe, werden schon feste Buchstaben durch feste andere Buchstaben ersetzt. nur eben mehrere Male hintereinander mit verschiedenen Alphabeten, so dass das Prinzip nicht so einfach herausgefunden werden kann.

    Denn so wie du es jetzt hast, wäre es -wie schon gesagt wurde- recht sinnlos, das einzige was bei deinem Verfahren vom Originaltext erhalten bleibt ist die Länge o_O
     
  10. #9 3. April 2008

  11. Videos zum Thema
Die Seite wird geladen...
Similar Threads - PHP Verschlüsselung läuft
  1. Antworten:
    7
    Aufrufe:
    949
  2. Antworten:
    3
    Aufrufe:
    775
  3. Antworten:
    7
    Aufrufe:
    624
  4. Antworten:
    4
    Aufrufe:
    674
  5. Antworten:
    6
    Aufrufe:
    296
  • Annonce

  • Annonce