Javascript Code im Quelltext ausblenden?
Hallo!Ich wollte Mal fragen, wenn ich ein HTML Dokument habe,kann ich ja direkt darein ein Script schreiben, oder in eine Datei,die ich dann damit verlinke. Wenn man dann am PC auf Seitenquelltext anzeigen geht, sieht man den Script Code ja noch....gibt es eine Möglichkeit den auszublenden,so das man ihn in Quelltext nicht mehr sieht?
4 Antworten
Nein - Werder im HTML noch als include Datei kannst du verhindern dass jemand den JS Code sehen kann.
Denn der Code muss ja zum Browser herunter geladen werden um dort auszuführen
Anders sieht es z.b. beim PHP aus.
Der PHP Code wird auf dem Serveŕ VOR dem herunterladen der Seite ausgeführt.
Heruntergeladen wird nur das Ergebnis der PHP Ausführung und damit normales HTML.
Man sieht noch nichtmal welche Teile dynamische von PHP erzeugte Teile sind und welche feste.
Mir JS im HTML sollte man deshalb auch keine sicherheitsrelevanten Teile aufrufen
hey,
Du kannst deinen Code im Browser nicht verstecken, aber wenn du beispielweise ein Framework wie React verwendest, compiled React deinen Code, und er wird unleserlich.
Wenn du es so machen möchtest, React zeigt standardmäßig die compiled Dateien und den eigentlichen Quellcode an, um den eigentlichen Quellcode zu verstecken, musst du dein build wiefolgt erstellen: set "GENERATE_SOURCEMAP=false" && react-scripts build
Nein. Solange der JavaScript Code an den Browser ausgeliefert wird, kann man diesen auch auslesen.
PHP wird auf dem Server verarbeitet und das Ergebnis dann an den Browser übermittelt.
Den PHP Code kann man daher nicht im Browser auslesen.
Übermittelst du den JavaScript Code aber per PHP an den Browser kannst du den JavaScript Code weiterhin im Browser auslesen.
Man kann den JavaScript Code aber so erstellen, dass er für Menschen schlechter zu lesen ist, z.B. indem man diesem komprimiert.
Hier mal als Beispiel:
Unkomprimiert: https://code.jquery.com/jquery-3.5.1.js
Komprimiert: https://code.jquery.com/jquery-3.5.1.min.js
JS wird komprimiert um Speicherplatz zu sparen und damit schneller zu übertragen.
Als Schutz gegen lesen ist das nur eine sehr schlechte Lösung.
Die Komprimierung kann man ja umkehrenund wieder besser lesbar machen.
Richtig, womit wird auch wieder bei meiner ersten Aussage sind: "Solange der JavaScript Code an den Browser ausgeliefert wird, kann man diesen auch auslesen."
Also solange der Browser in der Lage ist den Code zu lesen solange kann dies halt auch ein Mensch, mit mehr oder weniger Aufwand.
Irgendwelche Komprimierungen (was natürlich nicht als Leseschutz konzipiert ist) oder Verschlüsselungen sorgen hier nur für etwas mehr Aufwand.
fang nicht an zu denken das javascript geheim sein muss .
wirklich niemand brauch dein code , bzw passwörter etc kann man sowieso decodieren egal wieviele programme du da rüber läufen lässt damit man sie selbst nicht lesen kann .
also Javascript ist kein geheimnis , glaub nicht das du das goldene rad erfinden wirst und wenn das sicherheitsrelevanter code ist , dann erst recht nicht .
aber das dir jemals jemand was klaut ,, das wird nciht passieren . eher klaust du von anderen .
passwörter etc kann man sowieso decodieren
Passwörter gehören nicht in den JS Code.
Passwörter sollte man auch nur verschlüsselt auf dem Server ablegen. Und nur Dort die Eingabe prüfen
Bitte nicht verschlüsselt, sondern gehasht. Es gibt keinen Grund, warum man ein Passwort entschlüsseln können muss. Aber sonst stimme ich dir zu, Passwörter bitte nicht irgendwo hardcoden.
Natürlich HASH
Und nur verschlüsselt übertragen
Deshalb keine Eingaben bei Formularen wenn die Seite kein HTTPS benutzt
Also muss ich das irgendwie mit PHP machen, damit man das nicht sieht?