Ankündigung

Einklappen
Keine Ankündigung bisher.

caeserverschlüsselung

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • caeserverschlüsselung

    Ich will eine caeserverschlüsselung und Entschlüsselung anlegen.

    Bisher habe ich
    PHP-Code:
    echo "<form action='".$_SERVER['PHP_SELF']."' method='POST'>
              <center><input type='text' name='value'><input type='text' name='verschiebung'><input type='submit' name='go' value='Verschl&uuml;sseln'><input type='reset'></center></form>
        "
    ;
        
    $string $_POST["value"];
            echo 
    "Ihr Originaltext:<br />$string<br />";
        
        
        
    $array_1 = array('ä','ö','ü','ß','Ä','Ü',' ß','Ö',' ');
        
    $array_2 = array('ae','oe','ue','ss','AE','UE','SS','OE','_');
        
    $newstring_1 str_replace($array_1$array_2$string);
        echo 
    "$newstring_1<br />"
        
        
    $newstring_2 strtoupper($newstring_1);
        echo
    "$newstring_2<br />";
        
        
    $array_3 = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','V','X','Y','Z');
        
    $array_4 = array('D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','V','W','X','Y','Z');
        
    $newstring_3 str_replace($array_3$array_4$newstring_2);
        echo 
    "$newstring3<br />" 
    Ich frage mich warum meine Zeichen nicht geändert werden...
    For schleife baue ich gerade ein um die Verschiebung einzustellen.

  • #2
    Error reporting
    [COLOR="#F5F5FF"]--[/COLOR]
    [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
    [COLOR="#F5F5FF"]
    --[/COLOR]

    Kommentar


    • #3
      Zitat von nikosch Beitrag anzeigen
      Error reporting
      Ich bekomme nur keine error...

      Was mache ich denn ich kann ja einfach die Buchstaben in ascii umwandeln mit der verschiebung addieren und zurückwandeln

      Kommentar


      • #4
        Vielleicht fängste erstmal damit an, vollständige, verständliche Sätze zu formulieren.
        [COLOR="#F5F5FF"]--[/COLOR]
        [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
        [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
        [COLOR="#F5F5FF"]
        --[/COLOR]

        Kommentar


        • #5
          Zitat von nikosch Beitrag anzeigen
          Vielleicht fängste erstmal damit an, vollständige, verständliche Sätze zu formulieren.
          Sorry, also ich will einen Satz in ASCII umwandeln die zahlen der Buchstaben um x also die verschiebung Vergrößern und in Buchstaben zurückverwandeln.
          #Stringmanipulation

          Vorher sollen umlaute umgewandelt werden.

          PHP-Code:
          $eingabe $_POST["value"];
                  echo 
          "Ihr Originaltext:<br />$eingabe<br />";
              
              
              
          $array_1 = array('ä','ö','ü','ß','Ä','Ü',' ß','Ö',' ');
              
          $array_2 = array('ae','oe','ue','ss','AE','UE','SS','OE','_');
              
          $newstring_1 str_replace($array_1$array_2$eingabe);
              echo 
          "$newstring_1<br />"
              
              
              
          $verschiebung $_POST['verschiebung'];
              for(
          $i=0;$i<=strlen($newstring_1);$i++){
              
          $verschl_eingabe .= chr(ord($newstring_1{$i}) + $verschiebung);
              };
              echo 
          "$newstring_2 <br />"

          Kommentar


          • #6
            Und wie stellst du fest ob beim dekodieren umlaute zurückumgewandelt werden müssen oder ob das wort das verschlüsselt wurde sich mit ae oder ue schreibt ?
            [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

            Kommentar


            • #7
              Zitat von tr0y Beitrag anzeigen
              Und wie stellst du fest ob beim dekodieren umlaute zurückumgewandelt werden müssen oder ob das wort das verschlüsselt wurde sich mit ae oder ue schreibt ?
              hm gute frage soweit klappt es schon ganz gut... (äöü nur noch nicht, also werden erst gar nicht umgewandelt)

              PHP-Code:
              <html>
                  <head>
                      <title>C&auml;ser Verschl&uuml;sselung</title>
                  </head>
                  <body bgcolor="#FFFF99">
                  <div id="head" style="width:99,5%; height:100px; border:2px solid black; background-color:lightgrey; float: top;">
                  <center><h1><u><font face='Arial'>C&auml;ser Verschl&uuml;sselung</form></u></h1></center>
                  </div>
                  
                  <div id="content" style="width:39%; height:700px; overflow :hidden; border:2px solid black; background-color:lightgrey; float: left;padding: 10px;">
                  
                  <?
                  
                  echo "<form action='".$_SERVER['PHP_SELF']."' method='POST'>
                        <center><h3>Zu verschl&uuml;sselnder Text:</h3><br /><textarea name='value' placeholder='Text'></textarea>
                        <br /><h4>Verschiebung:</h4><br /><input type='text' name='verschiebung' placeholder='Wert'>
                        <br /><br /><input type='submit' name='go' value='Verschl&uuml;sseln'>&nbsp;<input type='reset'></center></form><hr />
                        
                        <form action='".$_SERVER['PHP_SELF']."' method='POST'>
                        <center><h3>Zu entschl&uuml;sselnder Text:</h3><br /><textarea name='ent_value' placeholder='Text'></textarea>
                        <br /><h4>Verschiebung:</h4><br /><input type='text' name='ent_verschiebung' placeholder='Wert'>
                        <br /><br /><input type='submit' name='ent' value='entschl&uuml;sseln'>&nbsp;<input type='reset'></center></form><hr />
                        </div>    
                  ";
                  
              if ($_POST['go'] && $_POST['value'] && is_numeric($_POST['verschiebung'])) {
                  $eingabe = $_POST["value"];
                  $verschiebung = $_POST['verschiebung'];    
                  echo "<div id='ergebnis' style='width:58%; height:700px; overflow : scroll; border:2px solid black; background-color:lightgrey; float:right; padding: 10px;'>";
                          echo "<h5>Ihr Originaltext:</h5><br />$eingabe<br /><br />";
                      
                      //umlaut korrektur
                      $umlaut = array('ä','ö','ü','ß','Ä','Ü',' ß','Ö',);
                      $ersatz = array('ae','oe','ue','ss','AE','UE','SS','OE');
                      $eingabe_korr = str_replace($umlaut, $ersatz, $eingabe);
                      
                      //umwandlung
                      for($i=0;$i<=strlen($eingabe_korr);$i++){
                      $verschl_eingabe .= chr(ord($eingabe_korr{$i}) + $verschiebung);
                      }
                      
                      echo "<h5>Ihr verschl&uuml;sselter Text:</h5> $verschl_eingabe <br />";
                  echo "</div>";
              }    
                  
              elseif ($_POST['ent'] && $_POST['ent_value'] && is_numeric($_POST['ent_verschiebung'])) {
                  $eingabe = $_POST["ent_value"];
                  $verschiebung = $_POST['ent_verschiebung'];
                  echo "<div id='ergebnis' style='width:58%; height:700px; overflow : scroll; border:2px solid black; background-color:lightgrey; float:right; padding: 10px;'>";
                      echo "<h5>Ihr Originaltext:</h5><br />$eingabe<br /><br />";
                      
                      //umlaut korrektur
                      $umlaut = array('ä','ö','ü','ß','Ä','Ü',' ß','Ö',' ');
                      $ersatz = array('ae','oe','ue','ss','AE','UE','SS','OE','_');
                      $eingabe_korr = str_replace($umlaut, $ersatz, $eingabe);
                      
                      //umwandlung
                      for($i=0;$i<=strlen($eingabe_korr);$i++){
                      $entschl_eingabe .= chr(ord($eingabe_korr{$i}) - $verschiebung);
                      }
                      
                      echo "<h5>Ihr entschl&uuml;sselter Text:</h5> $entschl_eingabe <br />";
                  echo "</div>";
              }    
              else{
                  echo "<div id='ergebnis' style='width:58%; height:700px; overflow : scroll; border:2px solid black; background-color:lightgrey; float:right; padding: 10px;'>";
                  echo"<center><font color='red'><b>Bitte alle Felder ausf&uuml;llen</b></font></center>";
                  echo "</div>";
                  }

                  ?>    
                  </font>
                  </body>
              </html>

              Kommentar


              • #8
                Machst du das als Übung für dich selbst? Ansonsten gibts da viele Anwendungsbeispiele im Netz:

                https://www.google.at/#q=php+c%C3%A4sar+chiffre
                http://www.rither.de/a/informatik/ph...schluesselung/
                The string "()()" is not palindrom but the String "())(" is.

                Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
                PHP.de Wissenssammlung | Kein Support per PN

                Kommentar


                • #9
                  Ist nicht böse gemeint, aber wie ich denke, fehlt es dir an elementaren Grundlagen. Bitte erst intensiv verinnerlichen, bevor du dich an solche (zugegebenermaßen nicht besonders herausfordernde) Projekte heranwagst.

                  Kommentar


                  • #10
                    Caesar-Rotation kann umfangreich und Herausfordernd werden wenn man was UTF-8 Tauglichen bauen will, hartCoder.
                    [URL="https://gitter.im/php-de/chat?utm_source=share-link&utm_medium=link&utm_campaign=share-link"]PHP.de Gitter.im Chat[/URL] - [URL="https://raindrop.io/user/32178"]Meine öffentlichen Bookmarks[/URL] ← Ich habe dir geholfen ? [B][URL="https://www.amazon.de/gp/wishlist/348FHGUZWTNL0"]Beschenk mich[/URL][/B].

                    Kommentar

                    Lädt...
                    X