kostenloser Webspace werbefrei: lima-city


Verschlüsselung mit php

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    joi002

    Kostenloser Webspace von joi002

    joi002 hat kostenlosen Webspace.

    Hi, wie findet ihr dieses Verschlüsselungsskript??

    http://www.joi002.lima-city.de/Chiffrieren

    Wie sicher ist soetwas?? (An Kryptoanalytiker)
    Es wird die Zahl jeder Ziffer mit der Ziffer des Schlüssels addiert. bei jeder weiteren ziffer wird die jeweils nächste ziffer des schlüssels
    addiert, und dann wieder die erste usw.

    Glg joi

    Beitrag zuletzt geändert: 26.4.2009 13:45:10 von joi002
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Ist der Key so lang wie der Plaintext und man nutzt XOR ist es eigentlich unknackbar, wenn man den key nicht kennt. Allerdings kann man es immernoch "bruten". ^^

    Ist der Key allerdings kürzer als der Plaintext, dann gibts Wiederholungen und ähnliches im Verschlüsselten Code. Dann ist es einfach eine zyklische Verschlüsselung.
  4. Autor dieses Themas

    joi002

    Kostenloser Webspace von joi002

    joi002 hat kostenlosen Webspace.

    Wie kann man eine XOR verknüpfung in php umsetzen? (hab bei google nichts gefunden)

    glg
  5. Ich habe deinen Algorithmus nicht ganz verstanden. Wenn man einfach die Werte der beiden Buchstaben nach ascii zusammenaddiert bekomme ich was andere .

    PS: Xor ist das expizite Oder: ^

    Beitrag zuletzt geändert: 26.4.2009 13:25:53 von nikic
  6. http://de.php.net/manual/de/function.variant-xor.php


    Wiki:
    Vernam

    Der Spezialfall, dass der Schlüssel genauso lang ist wie der zu verschlüsselnde Text, heißt Vernam-Verschlüsselung, wobei der Schlüssel XOR mit dem Klartext verknüpft wird. Handelt es sich bei dem Schlüssel um eine zufällige Folge von Buchstaben, und wird der Schlüssel nur ein einziges Mal verwendet, nennt man das Verfahren auch One-Time-Pad. Bei diesem ist eine Dechiffrierung ohne Kenntnis des korrekten Schlüssels absolut unmöglich.



    edit:
    @nikic: Du weißt nicht, welches Alphabet bei seinem link benutzt wird. ^^

    Beitrag zuletzt geändert: 26.4.2009 13:27:15 von adrians
  7. Autor dieses Themas

    joi002

    Kostenloser Webspace von joi002

    joi002 hat kostenlosen Webspace.

    Ja was ein one time pad ist weiß ich schon, allerdings hab ich nicht ganz verstanden (und tu´s noch immer nicht), WIE man den
    Klartext xor mit dem Schlüssel verknüpfen kann.

    Glg
  8. vampiresilence

    Kostenloser Webspace von vampiresilence

    vampiresilence hat kostenlosen Webspace.

    so weit ich das sehe, addierst du einfach yeden buchstaben im plaintext mit der stellung der buchstaben des keys im alphabet. wenn der key nicht lang genug ist, wird er wiederholt, wie adrian schon sagte. Aber diese art "verschlüsselung" ist sehr anfällig auf dictionary angriffe. Leerzeichen sind bei dir bspw. grundsätzlich großbuchstaben, egal welchen key man verwendet. Damit hat man schonmal yede wortlänge und bis zum endgültigen decode ist es dann nicht mehr weit.

    XOR wendest du folgendermaßen an:
    $xoresult = variant_xor($a, $b);


    wenn du einen dictionary sicheren code erhalten willst, kann ich dir nur polymorphe verschlüsselung ans herz legen, auch wenn das für einen anfänger vllt noch etwas kompliziert ist.

    Liebe Grüße
    - VampireSilence
  9. joi002 schrieb:
    Ja was ein one time pad ist weiß ich schon, allerdings hab ich nicht ganz verstanden (und tu´s noch immer nicht), WIE man den
    Klartext xor mit dem Schlüssel verknüpfen kann.

    XOR ist ein Bitoperator. Das heißt, dass, wenn du 2 Werte mit XOR kombinierst, du ein Bit von der einen Variable mit dem Bit der anderen Variable an der gleichen Stelle kombinierst. Dabei hat XOR folgende Regeln:
    Beide Bits sind gleich -> gib 0 zurück
    Sie sind ungleich -> gib 1 zurück

    XOR ist im allgemeinen Sprachgebrach als "entweder oder" zu übersetzen. Also kann zwischen 2 Möglichkeiten nur eine wahr sein.

    In PHP ist XOR der ^ Operator. Beispiel:

    echo 5^3;

    Ausgabe: 6

    Weil:
    0101 = 5
    0011 = 3
    ------ XOR
    0110 = 6


    Beitrag zuletzt geändert: 26.4.2009 18:13:17 von bladehunter
  10. Autor dieses Themas

    joi002

    Kostenloser Webspace von joi002

    joi002 hat kostenlosen Webspace.

    $xoresult = variant_xor($a, $b);


    Also funktioniert es, wenn ich folgendes schreibe:


    while($<$lenght) {
    
        $z = substr($text, $i, 1); 
        $k = substr($code, $j, 1);
    
        $t = variant_xor($z, $k);
    
        $text2 .= $t;
        $i++;
    }


    Oder hab ich da irgndwas falsch verstanden??
    Und was muss ich dann machen, beim entschlüsseln?

    vampiresilence schrieb:
    wenn du einen dictionary sicheren code erhalten willst, kann ich dir nur polymorphe verschlüsselung ans herz legen, auch wenn das für einen anfänger vllt noch etwas kompliziert ist.


    Was ist polymorphe verschlüsselung? Kannst mir nen´Link mit nem Tutorial gebn, oder ist das Uni-Stoff? (interessiert mich ziemlich für Kryptologie und hab bereits ein gewisses Grundwissen)

    Glg

    Beitrag zuletzt geändert: 26.4.2009 20:13:32 von joi002
  11. 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!