Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
1 Einleitung
2 Webbrowser
3 JavaScript einbauen
4 Programmieren mit JavaScript
5 Datum
6 Zufall
7 Browserinformationen
8 Fenster
9 Formulare
10 Frames und Iframes
11 Grafiken
12 Cookies
13 Objekte und Arrays
14 Ereignisbehandlung
15 Fehlerbehandlung
16 DOM
17 DHTML und CSS
18 AJAX
19 XML
20 Web Services
21 AJAX-Frameworks
22 Plugins
23 Multimedia
24 Java
25 Serverseitige Technologien
26 JavaScript goes .NET
27 Code schützen
28 Top Secret: Passwortschutz
29 Signierte Skripte
30 JavaScript und Sicherheit
31 Navigation
32 Warenkorb
33 JavaScript-Bibliotheken
34 Referenz
35 Quellen im Web
36 Die Zukunft von JavaScript
Index
Download: - ZIP, ca. 9,2 MB
Buch bestellen
Ihre Meinung?
<< zurück | Galileo Computing / <openbook> / JavaScript und AJAX | vor >>
JavaScript und AJAX von Christian Wenz Das umfassende Handbuch
JavaScript und AJAX 839 S., mit DVD, 39,90 Euro Galileo Computing ISBN 3-89842-859-1 |
| Kapitel 27 Code schützen
|  | 27.1 Quellcode einsehen
|  |  | 27.1.1 Menübefehle
|  |  | 27.1.2 Tastenkürzel
|  |  | 27.1.3 Kontextmenü
|  |  | 27.1.4 Dateisystem
|  | 27.2 Code im Frame verstecken
|  | 27.3 Mausklick verhindern
|  | 27.4 Code codieren
|  |  | 27.4.1 Optisch verschleiern
|  |  | 27.4.2 Inhaltlich verschleiern
|  | 27.5 Dateien auslagern
|  | 27.6 Caching verhindern
|  | 27.7 Code serverseitig generieren
Das Wesentliche ist für die Augen unsichtbar, man muss es mit dem Herzen sehen. – Antoine de Saint-Exupéry, Der kleine Prinz # Kapitel 27 Code schützen Beim Lesen von JavaScript-Newsgroups und in Diskussionslisten sowie in den Gängen von Web-Agenturen taucht immer wieder eine Frage auf: Wie kann ich meinen JavaScript-Code schützen? Wie kann ich verhindern, dass andere Personen meinen Code auslesen, kopieren, abändern und dann als ihr geistiges Eigentum ausgeben können? Um die Antwort vorwegzunehmen: gar nicht. Sie haben richtig gelesen – es ist nicht möglich, den Code hundertprozentig zu schützen. Es gibt mehrere Ansätze, und manche Programmierer behaupten tatsächlich, ihr Ansatz würde funktionieren. Bis jetzt konnte aber noch niemand nachweisen, dass seine Lösung auch wirklich funktioniert. Denken Sie daran: JavaScript ist eine clientseitige Skriptsprache. Das heißt, sie wird vom Client, also vom Webbrowser, interpretiert. Die Daten müssen daher irgendwie beim Browser ankommen. Man kann die Daten auf mehrere Arten und Weisen abfangen; manchmal bietet der Browser sogar Möglichkeiten an, auf den Quellcode zuzugreifen. Im Folgenden werden wir einige Möglichkeiten vorstellen, wie Sie es dem Benutzer möglichst schwer machen, auf die Daten zuzugreifen. Mögliche Illusionen wollen wir Ihnen jedoch vollständig nehmen. Aus diesem Grund erfahren Sie jedes Mal, wie das vorgestellte Verfahren ausgehebelt werden kann. Bei den Methoden zum Datenzugriff beschränken wir uns auf die Browser Internet Explorer und Mozilla, aber auch mit anderen Browsern ist es sehr einfach, an Quellcodeinformationen zu gelangen. ## 27.1 Quellcode einsehen Von einem Webserver übertragene Dateien werden von den verschiedenen Browsern an unterschiedlichen Stellen zwischengespeichert. Es gibt mehrere Möglichkeiten, auf diese Dateien zuzugreifen:
| über Menübefehle
| mit Tastenkürzeln
| durch Kontextmenüs
| über das Dateisystem
Im Folgenden stellen wir die erfolgreichsten Methoden vor. ### 27.1.1 Menübefehle Jeder Browser, der etwas auf sich hält, bietet Menübefehle an, um auf den Quelltext von einzelnen HTML-Seiten zuzugreifen. Im Microsoft Internet Explorer steht dazu das Kommando Ansicht N Quelltext anzeigen zur Verfügung. Der Browser öffnet dann den Standard-Texteditor des Systems (unter Windows: Notepad). Für größere Dateien wird unter einigen Windows-Versionen bei Bedarf WordPad geöffnet, weil Notepad dort eine Größenbeschränkung hat. Mozilla-Browser bieten die Menüoption Ansicht N Seitenquelltext bzw. View N Page Source. Hierzu wird ein neues Browserfenster ohne jeglichen Schnickschnack geöffnet (also ohne irgendwelche Leisten; nur die Titelleiste und gegebenenfalls Scrollbalken sind sichtbar). In diesem Fenster wird der Seitenquelltext angezeigt. Hier klicken, um das Bild zu Vergrößern Abbildung 27.1 Quellcode einsehen im Firefox ### 27.1.2 Tastenkürzel Die wichtigsten Menübefehle einer Applikation können auch mit Tastenkürzeln aufgerufen werden. Das ermöglicht erfahreneren Benutzern, auf die wichtigsten Funktionen einer Applikation möglichst schnell zuzugreifen. Ein Tastenkürzel kann schneller ausgeführt werden als ein Mausklick, denn mit der Maus muss zunächst das zu klickende Element gesucht und mit dem Cursor erreicht werden. Diese »Arbeit« entfällt bei Tastenkürzeln, weil versiertere Benutzer blind tippen können und dabei die Augen nur auf den Bildschirm richten müssen. Wo sich die einzelnen Tasten befinden, verrät das Gefühl. Unter dem Microsoft Internet Explorer steht kein Tastenkürzel für die Anzeige des Quelltextes zur Verfügung. Die Mozilla-Versionen dagegen kennen (Strg)+(U), was denselben Effekt hat wie Ansicht N Seitenquelltext bzw. View N Page Source. Eine besondere Bedeutung kommt hier den Frames zu. Bei mehreren Frames ist oft nicht der Quellcode des Hauptdokuments mit dem <frameset>-Element interessant, sondern der Code in den einzelnen Frames. Sobald Sie mit der Maus in einen Frame klicken, erhalten Sie bei Mozilla-Browsern über Ansicht N Rahmenquelltext bzw. View N Frame Source den Quelltext des ausgewählten Frames. ### 27.1.3 Kontextmenü Wenn Sie mit der rechten Maustaste in einen leeren Bereich eines HTML-Dokuments klicken, erhalten Sie ein Kontextmenü, über das Sie unter anderem auch den Quelltext des aktuellen Dokuments anzeigen können. Das funktioniert durchgängig bei allen Browsern, seien es der Internet Explorer, Netscape Navigator oder Opera. Lediglich die Bezeichnung des entsprechenden Menüeintrags ist anders:
| Beim Internet Explorer heißt der Eintrag Quelltext anzeigen.
| Bei Mozilla-Browsern heißt der Eintrag Seitenquelltext anzeigen bzw. View Page Source (siehe Abbildung 27.2).
Hier klicken, um das Bild zu Vergrößern Abbildung 27.2 Das Kontextmenü im Firefox Sie müssen nur darauf achten, dass Sie nicht mit der rechten Maustaste auf eine Grafik klicken; der Internet Explorer streicht dann den Eintrag Quelltext anzeigen aus dem Kontextmenü. Was wenige wissen: Das Kontextmenü lässt sich auch per Tastendruck aufrufen, wenn die Tastatur das unterstützt. Windows-Tastaturen haben nämlich rechts von (AltGr) noch eine spezielle Taste (), die das Kontextmenü aufruft. So kann auch ohne Mausbetätigung der Quelltext einer Seite über das Kontextmenü angezeigt werden. ### 27.1.4 Dateisystem Wenn ein Browser Daten von einem Webserver anfordert, hält er diese in der Regel nicht im Speicher (der wäre sonst schnell voll), sondern legt sie auf der Festplatte ab. Wenn Sie also Ihre Festplatte durchsuchen, stoßen Sie auf eine Reihe von HTML-Dateien, Grafiken und eben auch auf JavaScript-Files. Sie müssen nur wissen, wo Sie zu suchen haben:
| Der (Windows-)Internet Explorer speichert die Dateien in einem Ordner namens Temporary Internet Files zwischen. Dieser Ordner befindet sich:
|  | bei Windows 9x/Me unterhalb des Verzeichnisses C:\windows
|  | bei Windows NT/2000/XP/2003/Vista im Profilverzeichnis des Benutzers (z. B. C:\winnt\profiles\benutzername oder C:\Dokumente und Einstellungen\<Benutzername>\Anwendungsdaten)
Die genauen Ordnerbezeichnungen sind auch von der jeweiligen Systemkonfiguration abhängig.
| Mozilla-Browser speichern (unter Windows) die Dateien im Verzeichnis C:\windows\Anwendungsdaten\ (beziehungsweise C:\Dokumente und Einstellungen\<Benutzername>\Anwendungsdaten) ab; der genaue Pfad hängt natürlich unter anderem davon ab, welches Mozilla-Derivat Sie einsetzen.
Hier klicken, um das Bild zu Vergrößern Abbildung 27.3 Im Cache des Internet Explorer befinden sich auch .js-Dateien. Sie können also Ihren Cache über das Dateisystem durchsuchen und dort abgelegte Dateien beispielsweise in einem Texteditor öffnen. Schon haben Sie Zugriff auf den dortigen Code. In Mozilla-Browsern haben Sie über die Pseudo-URL about:cache die Möglichkeit, einen Einblick in die im Cache abgelegten Dateien zu erhalten, sogar inklusive Einblick in den Speicher-Cache (siehe Abbildung 27.4). Hier klicken, um das Bild zu Vergrößern Abbildung 27.4 Zugriff auf den Cache eines Mozilla-Browsers leicht gemacht Sie haben nun einen Überblick darüber erhalten, wie Sie an den Code herankommen können. In den folgenden Abschnitten werden verschiedene Ansätze vorgestellt, wie Sie den Zugriff auf die Daten zumindest erschweren können.
<< zurück | <top> | vor >>
Zum Katalog
JavaScript und AJAX bestellen
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Buchtipps
| JavaScript und AJAX - Das Video-Training
| Webseiten programmieren und gestalten
| XHTML, HTML und CSS
| CSS-Praxis
| AJAX
| PHP 5 und MySQL 5
| TYPO3 4.0
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

Copyright © Galileo Press 2007
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

[Galileo Computing]
Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de