[BMAX + PHP] Einfache Verschlüsselung

Übersicht BlitzMax, BlitzMax NG Codearchiv & Module

Neue Antwort erstellen

Justus

Betreff: [BMAX + PHP] Einfache Verschlüsselung

BeitragMi, Jun 14, 2006 20:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Inspiriert durch einen BlitzBasic-Code von Triton, ist eine Verschlüsselung für BlitzMax entstanden. Um volle Online-Tauglichkeit zu ermöglichen, gibt es dazu auch das passende PHP-Pendant.

Große Hilfen hierbei waren simi, SlasHeR, Dreamora und poet.

Nähere Informationen zur polyalphabetischen Chiffrierung

Um den untenstehenden Text mit dem Passwort "Passwort" zu verschlüsseln, braucht die Funktion etwa eine Millisekunde. Der verwendete Rechner: AMD Athlon XP 3000+, 768 MB RAM.

Zitat:
„Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.“


Der BlitzMax-Code:
Code: [AUSKLAPPEN]
Function cryptString:String(line:String , pass:String)
   Local lengthPass:Int = Len(pass)
   Local lengthLine:Int = Len(line)
   Local result:String
   Local zahl:Int
   Local code:String
   Local zeichen:String
   For I = 1 To lengthLine
        zahl      = ((zahl+1) Mod lengthPass)
        code    = Mid(pass,zahl+1,1)
       zeichen     = Mid(line , I , 1)
        result    = result+Chr(Asc(zeichen) ~ Asc(code)*I)
   Next
   Return result
EndFunction


Der PHP-Code:
Code: [AUSKLAPPEN]
<?php

 function cryptString($line,$pass) {
  $lengthPass = strlen($pass);
  $lengthLine = strlen($line);
  for ($i=1; $i<=$lengthLine; $i++) {
   $zahl = (($zahl+1)%$lengthPass);
   $code = substr($pass,$zahl,1);
   $zeichen = substr($line,$i-1,1);
   $ordzeichen = ord($zeichen);
   $ordcode = ord($code)*$i;
   $result = $result.chr(($ordzeichen^$ordcode));
  }
  return $result;
 }

?>


Bitte beachtet, dass die Ausgabe in der Debugkonsole von BlitzMax bei Sonderzeichen nicht ganz korrekt arbeitet, also bitte nicht wundern, wenn ihr den verschlüsselten Kram ausgebt. In Dateien ist natürlich alles normal.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Codearchiv & Module

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group