JavaScript Code unsichtbar machen für Aussenstehende?

Zeboo

Lt. Commander
Registriert
Juli 2008
Beiträge
1.562
Hallo,

Javascript ist ja irgendwie immer einlesbar. Zumindest bei mir, alles was ich Code kann man einfach im Browser nachgucken. Kann man das auch irgendwie verschleiern? Gut PHP, Ruby etc. Code kann man nicht einsehen, weil das Serverseitig abläuft. JS läuft Clientseitig. Aber man kann bestimmt irgendwie was machen oder? Was sollte ich mir angucken?

Danke und Gruß

Edit: Ich meine was ist wenn jemand nur Javascript kann und er will was weiß ich, etwas Sicheres schreiben. Etwas was keiner erkennen soll. Ein Login oder so. Wenn da was von if (passwort == "klaus") steht kann sich jeder einloggen... oder macht man sowas gnerell nie mit javascript?
 
Zuletzt bearbeitet:
Logins macht man nie mit JavaScript. Die Anmeldedaten sollten ja in einer serverseitigen Datenbank stehen und dort verglichen werden.
 
Suchworte wären: Javascript Obfuscator - Free Javascript Obfuscator [ein Online-Dienst]

BS

Ps. Zitat: Das "serverseitige Skripts" nicht einsehbar wären ... darauf würd ich nicht setzen.

Edit [zu Deinem Edit]: Nein, so was macht man nicht mit JavaScript.

Die [absolute] Notlösung mit JS [also wenn PHP nicht verfügbar] wäre dieses SelfHtml-Skript - und eigentlich auch nur dann, wenn die Login-Seite nicht per Verweis erreichbar ist.
 
Zuletzt bearbeitet: (Edit zum Edit des TE)
JavaScript wird eben auf dem Client ausgeführt. Von daher schlecht "unsichtbar" zu machen. Irgendwie muss der Client ja den Code ausführen können.
 
Also Passwörter im Klartext vergleichen ist so oder so ein nogo, nimm doch md5 oder ne andere Verschlüsselung dann kann er deinen Code soviel anschauen wie er will.
 
Was zum einen möglich wäre, ist sowas wie

if (md5(passwort) == "fa342bc3234ava42343221423...")

wobei dann die zeichenkette "fa342..." die md5 gehashte version von "klaus" ist. Damit kann man zumindest das passwort nicht einsehen, weil md5 nur in eine Richtung verschlüsselt (hasht). Du musst aber bedenken, das es immer möglich ist, das Ganze lokal zu speichern und dann zu ändern.



Falls du Variablen in deinem versteckten Code verwendest, in denen was steht, was angezeigt wird, könntest du den inhalt mit AES und deinem Passwort verschlüsseln. Dann würde der Text nur entschlüsselt, wenn das richtige Passwort eingegeben wird. Dazu brauchst du aber zusätzliche AES Bibliotheken.

Den eigentlichen Code zu verschlüsseln geht dann theoretisch auch, indem du ihn in eine variable packst und verschlüsselst, sodass du nachher eine Variable mit verschlüsseltem Inhalt auslieferst und zusätzlich die Entschlüsselungsroutinen/PW Einlesedialog im sichtbaren Quelltext. Das kann und muss dann per Passwort entschlüsselt werden, sodass man den Code in unverschlüsselter Form in einer Variable stehen hat. Den Inhalt dieser Variable kann man dann per eval() ausführen. Wichtig ist aber, das da dann wirklich ein Passwort erforderlich ist und wenn man das hat, hat man theoretisch auch den verschlüsselten Code.
 
1. Es ist nicht möglich, da JS am Client ausgeführt mit und dieser somit immer wissen muss, was im Code steht.
2. Auch die Packer Scripte bringen sich überhaupt nichts, da sich diese - gleich einfach wie sich ein Script packen lässt - wieder entpacken lassen (ohne Kenntnisse).
 
Außerdem kann man deinen JavaSCript code ganz einfach mit dem eignen Ersetzen. Also um eine serverseitige autorisierung kommst du auf gar keinen fall vorbei !
 
nichts ist einfacher auszuhebeln als ein zugriffscheck in javascript. da lacht sich n hacker nur ins fäustchen!
 
Zurück
Oben