| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Mar 2008
Beiträge: 10
|
Hallo, ich wollte Daten verschlüsseln. Es geht um nix besonderes, nur, dass es ein bischen schwerer ist, für den normalen Menschen die Daten zu sehen. Daher habe ich mich für XOR verschiebung entschieden. Dafür habe ich bei SelfHTML ein relativ einfach Funktion gefunden. Code: function verschluesseln(klartext, schluessel)
{
geheimtext = "";
for(i=0; i<klartext.length; i++)
{
geheimtext = geheimtext + chr(ord(klartext.substr(i,1))^ord(schluessel.substr(i%schluessel.length,1)));
}
return Base64.Encode(geheimtext);
} 1. Schleife über alle Zeichen des Klartextes 2. das aktuelle Zeichen des klartextes mit dem dazugehörigen Zeichen des Schlüssels per XOR vertüddeln. Dazu muss noch mit ord() die ASCII-Codenummern der jeweiligen Zeichen ermittelt werden. 4. das Ergebnis wird als ASCII-Codenummern behandelt und mit chr wieder in ein ASCII Zeichen umgewandelt. 3. Mit Base64 in ein HTTP versand-kompatibles format bringen. Die Entschlüsselung geht genauso, nur umgekehrt. Soweit so gut. Klappt auch, jedenfalls meistens. Problem ist, wenn das XOR auf zwei gleiche Zeichen trifft. Beispiel: im Klartext kommt der Buchstabe "i" im Schlussel ebenfalls. Dadurch ergibt sich 105^105, das ergibt wiederum "0". Wenn man chr() auf "0" anwendet kommt nix dabei raus. Genau hier is das Problem. Jetzt ist praktisch das zu verschlüsselnde Zeichen verschwunden und bei entschlüsseln geht ab dieser Position alles durcheinander, weil im String kein Platzhalter für nix ist und die XOR Paare ab hier nicht mehr übereinstimmen mit der verschlüsselung. Ich hoffe das ist einigermaßen gut erklärt. Kann jemand helfen??? Gruß Octophon |
| | |
| | #2 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.324
| http://www.seibsprogrammladen.de/fra...rithmen/String Verschleiern (XOR)
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |