kostenloser Webspace werbefrei: lima-city


Mit Bit und Byte arbeiten

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    g****e

    Heyho

    Ich bin grad etwas verwirrt. Ich würde ganz gerne mit Bit und Byte, lieber natürlich Byte, arbeiten. Großes ganzes resultat soll eine Nachvollziehbare Verschlüsselung werden. Ich wollte dafür mit XOR arbeiten.
    Ich google das schon ne weile, und bin bisher auf die Funktion pack() / unpack() gestoßen. Und ich bin ehrlich: Ich kapier die nicht. Was genau sagt mir das Format? Wie kann ich damit gut arbeiten? Oder allgemein: Wie komm ich an geeignete Bit/Byte konstrukte, welche ich per XOR verarbeiten kann.

    Wie gesagt: Letztendliches Ziel soll eine Verschlüsselung werden.

    Freue mich auf Antwort.

    Liebe Grüße
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    in PHP:
    function doXOR($data, $key) {
    	for($i = 0; $i < strlen($data); $i++)
    		$data[$i] = chr(ord($data[$i]) ^ $key);
    	return $data;
    }
    Verwendung:
    $text = 'Das ist irgend ein wichtiger und geheimer Text.';
    $key = 7;
    // verschlüsseln
    $verschluesselt = doXOR($text, $key);
    // entschlüsseln
    $entschluesselt = doXOR($verschluesselt, $key);
    Funktionsweise:
    alle bitweisen Operationen funktionieren nur bei Zahlen. Deshalb muss zuerst mit
    int ord(char)
    der ASCII-Wert jedes Zeichens bestimmt werden. Dieser Wert kann dann mit deinem Schlüssel XOR'd werden. Heraus kommt wieder eine Zahl. Aus dieser Zahl willst du ein Zeichen machen, dass geschieht mit
    char chr(int)
    .
    Strings werden als Array von Zeichen gespeichert. Deshalb funktioniert die for-Schleife. Ver- und Entschlüsseln funktioniert genau gleich, da
    (x xor y) xor y = x
    gilt.
  4. Autor dieses Themas

    g****e

    Danke, das ist eine gute Erklärung :) und ord() und chr() sind leichter zu benutzen, und verstädlicher als pack. Danke :)

    Liebe Grüße
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!