Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-07-2004, 13:52   #1 (permalink)
_root.wheez
 
Benutzerbild von WHEEZ
 
Registriert seit: Apr 2002
Ort: W´hof City BAVARIA
Beiträge: 102
Post Alleged RC4 Verschlüsselung

Hi!
Der Code ist zwar schon etwas älter (AS 1.0) aber er kann durchaus sehr nützlich sein. Es ist ja auch nicht das Problem das ganze in AS 2.0 als Klasse oder einfache Funktion umzuschreiben. So funktioniert der Code jedenfalls auch noch unter Flash6 oder vielleicht sogar Flash5.

Es handelt sich dabei um den bekannten RC4 bzw. ARC4 Algorythmus mit dem man ziemlich sicher ver- und auch wieder entschlüsseln kann. wie das ganze funktioniert kann man hier http://mitglied.lycos.de/cthoeing/crypto/rc4.htm nachlesen.
Vielleicht kanns der Eine oder Andere gebrauchen. Wenn man das ganze irgendwo speichern/verschicken will sollte man den verschlüsselten String besser vorher mit escape urlencoden weil auch Steuerzeichen und andere problematische Zeichen dabei rauskommen können. Dann wird der String zwar erheblich länger aber es kann dann nix verloren gehen. Man könnte ja auch eine Funktion schreiben die wirklich nur die kritischen Zeichen ausfiltert um es wieder etwas kürzer zu machen.

PHP-Code:
// Alleged-RC4 Verschlüsselungsalgorythmus von Ronald L. Rivest 
String.prototype.ARC4 = function(key) {
    var 
sb = new Array();
    var 
"";
    for (var 
0j<256j++) {
        
sb.push(j);
    }
    for (var 
0i<256i++) {
        
= (j+sb[i]+key.charCodeAt(i%key.length))%256;
        
tp sb[i];
        
sb[i] = sb[j];
        
sb[j] = tp;
    }
    for (var 
0k<this.lengthk++) {
        
= (i+1)%256;
        
= (j+sb[i])%256;
        
tp sb[i];
        
sb[i] = sb[j];
        
sb[j] = tp;
        
= (sb[i]+sb[j])%256;
        
r+String.fromCharCode(this.charCodeAt(k) ^ sb[t]);
    }
    return 
r;
};
//
TestString "Hallo Welt!";
//
// verschlüsseln
encrypted TestString.ARC4("pass");
trace("Verschlüsselt: " encrypted);
// und wieder zurück
decrypted encrypted.ARC4("pass");
trace("Entschlüsselt: " decrypted); 
WHEEZ ist offline   Mit Zitat antworten
Alt 28-07-2004, 20:40   #2 (permalink)
helpQLODhelp
 
Benutzerbild von bokel
 
Registriert seit: Feb 2002
Ort: Köln
Beiträge: 8.505
Coole Sache das.
Für AS2 könnte man die Routine so umschreiben, dass sie den String noch als Parameter bekommt und dann in ein Utility-Package stecken.

mfg r.
bokel ist offline   Mit Zitat antworten
Alt 29-07-2004, 09:59   #3 (permalink)
_root.wheez
 
Benutzerbild von WHEEZ
 
Registriert seit: Apr 2002
Ort: W´hof City BAVARIA
Beiträge: 102
Gerne - warum nicht... aber was genau meinst Du damit? Eine _global.function, eine eigene Klasse? Mit ner String Klasse isses vielleicht etwas umständlich. Für AS 2.0 is eigentlich nicht mehr viel zu machen - vielleicht noch die Variablen typisieren... zumindest die Strings - was will bei Zählern schon groß passieren...
WHEEZ ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 07:28 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele