Lösungen für Textfelder unleserlich machen
Uschi Renziehausen
- javascript
Ihr Lieben,
schon wieder eine Frage, helft ihr mir? Ich möchte gerne Lückentexte fabrizieren, die mit JS ausgewertet werden, d.h., irgendwo im Quelltext müssen die richtigen Lösungen stehen. Das ist blöd, weil findige Menschen sich die Lösung dann einfach raussammeln können. Also möchte ich das Ganze möglichst unleserlich gestalten. Ich hatte daran gedacht, daß ich die Lösungswörter einfach als Ascii-Code hinschreibe, die Usereingabe dann ebenfalls in Ascii-Code verwandele und dann erst vergleiche.
Nur, ich finde keine Methode, mit der ich den Klartext in Ascii-verwandeln kann. escape() gibt ja nur bei Steuerzeichen die Nummer zurück. Gibts ne andere Möglichkeit?
Liebe Grüße, Uschi
ad Bionem: Ceterum censeo valligatorem interficiendum esse.
Wenn du dein JS und damit die Auswertung in eine externe Datei legst, dürfte das "herankommen" an die Lösungen etwas schwierige sein, zumindest wenn es nicht lokal abläuft.
gruss
Curt
Hi Curt,
Wenn du dein JS und damit die Auswertung in eine externe Datei legst, dürfte das "herankommen" an die Lösungen etwas schwierige sein, zumindest wenn es nicht lokal abläuft.
Ne, das reicht nicht, denn: man nehme ie5, speichere sich die Seite mit allem was dazugehört, und schon kannst du dir alle Dateien in aller Ruhe angucken.
Die Zeiten sind vorbei.
Liebe Grüße, Uschi
Moin Uschi, gut geschlafen? ;-)
schon wieder eine Frage, helft ihr mir?
Mmh... na gut :-)
Nur, ich finde keine Methode, mit der ich den Klartext in Ascii-verwandeln kann. escape() gibt ja nur bei Steuerzeichen die Nummer zurück. Gibts ne andere Möglichkeit?
Yepp. String.charCodeAt() ist das, was Du suchst. Geht allerdings nur zeichenweise, musst also mit ner for-Schleife oder so ueber den String drueberwurschteln. In die andere Richtung geht es mit String.fromCharCode(), dort auch mit mehreren Zeichen auf einmal. Siehe dazu <../../tecl.htm> oder http://developer.netscape.com/docs/manuals/js/client/jsref/string.htm.
Dir ist natuerlich klar, dass man mit ein bisschen Muehe aus den ASCII Codes die Woerter zurueckerlangen kann. Frage: Kannst Du damit leben? Ist es fuer Dich sogar notwendig? Weil sonst koennen wir auch so'ne Art Einwegverschluesselung bauen, die sich nicht decodieren laesst. *g*
ad Bionem: Ceterum censeo valligatorem interficiendum esse.
Tja, hatte leider nur Russisch (wuerde ich aber auch nicht verstehen). Aber lass mich raten. "An Bio"? Und Valligator? *gruebel* ...
So long
Moin, moin,
Moin Uschi, gut geschlafen? ;-)
Ja, und zwar entschieden zu lange <g>. Und du?
Dir ist natuerlich klar, dass man mit ein bisschen Muehe aus den ASCII Codes die Woerter zurueckerlangen kann. Frage: Kannst Du damit leben? Ist es fuer Dich sogar notwendig? Weil sonst koennen wir auch so'ne Art Einwegverschluesselung bauen, die sich nicht decodieren laesst. *g*
Ja, das ist mir klar, und mich ärgert an der ganzen Methode noch was anderes, nämlich daß das nur mit Latin1 funktioniert, und nicht mit kyrillisch oder griechisch. Aus beiden Gründen hätte deine Idee von der Einwegverschlüsselung durchaus den Charme, den der Gedanke an zwei Fliegen mit einer Klappe für gewöhnlich erzeugt.
ad Bionem: Ceterum censeo valligatorem interficiendum esse.
Tja, hatte leider nur Russisch (wuerde ich aber auch nicht verstehen). Aber lass mich raten. "An Bio"? Und Valligator? *gruebel* ...
Für dich im Klartext: Ceterum (im übrigen) censeo (stelle ich den Antrag), den Valligator zu erschlagen.
monstrum horrendum informe ingens Sprich: monstroherrendinformingens (r bitte rollen).
Bis denne, Uschi
Hi Uschi,
du wolltest die Einwegverschlüsselung, hier ist sie:
< http://www.teamone.de/selfaktuell/artikel/md5.htm>
es ist eigentlich eine passortverschüsselung
nachteil: rechnet lange
script ist 12kb groß
viel spass
ALEX
Hi Alex,
du wolltest die Einwegverschlüsselung, hier ist sie:
< http://www.teamone.de/selfaktuell/artikel/md5.htm>
danke schön, auslese geguckt, archiv durchsucht, aber bei den artikeln habe ich nicht geguckt.
wenn ich mir das script so angucke: ich muß nicht versuchen, das zu verstehen oder? erst wenn ich groß bin.
aber gefällt. <freu>
nachteil: rechnet lange
script ist 12kb groß
mal sehen, wie sich das auswirkt. ich bastele es nachher mal rein.
liebe grüße, uschi
Moin again
Ja, und zwar entschieden zu lange <g>. Und du?
Zulange ist ja normal bei mir. Bin aber trotzdem muede aufgestanden.
Ja, das ist mir klar, und mich ärgert an der ganzen Methode noch was anderes, nämlich daß das nur mit Latin1 funktioniert, und nicht mit kyrillisch oder griechisch. Aus beiden Gründen hätte deine Idee von der Einwegverschlüsselung durchaus den Charme, den der Gedanke an zwei Fliegen mit einer Klappe für gewöhnlich erzeugt.
Nun, seit JS Version 1.3 (d.h. Navigator ab 4.06) wird der Unicode-Satz verwendet (siehe vorher genannten Link bei Netscape). Nuetzt Dir natuerlich nichts, wenn es auch auf anderen Browsern laufen soll.
Das Bauen einer solchen Crunch-Funktion hilft dem aber auch nicht ab, denn die muss ja auch Zeichen fuer Zeichen ueber den String gehen. Und da faellt mir im Moment nichts anderes ein als dieses String.charCodeAt(). Auch das von Alex genannte Verfahren benutzt diese Funktion (sieh Dir mal die Funktion MD5 an). Mit diesen Einschraenkungen koenntest Du die aber tatsaechlich gleich benutzen. Ist halt ein bisschen gross, dafuer aber auch geheimdienstsicher (also Entschluesselung absolut ausgeschlossen). Ansonsten koennte man auch was eine einfache Hashfunktion schreiben, die etwas kleiner ausfaellt. Bei der kann man dann zwar vielleicht gewisse Rueckschluesse auf die Ausgangsdaten ziehen, aber fuer Deine Anwendung duerfte es reichen. Schau mal in den Source von http://www.waldorf.de/, die verwenden sowas. Aber wie gesagt, das loest alles Dein Zeichensatzproblem nicht.
So long
Eine sichere, aber auch kompliziertere Methode wäre, die Auswertung durch ein CGI-Script durchführen zu lassen.
hi falk,
Eine sichere, aber auch kompliziertere Methode wäre, die Auswertung durch ein CGI-Script durchführen zu lassen.
Ziel meines Miniprojekts ist es, ein Lückentextscript zu schreiben, dass andere Sprachlehrer ganz einfach adaptieren können. An Schulen, selbst an Unis, läufst du vor eine Mauer, wenn du was mit CGI machen willst, was ich ohnehin nicht könnte.
Also lieber ein bischen unsicherer.
alles liebe, uschi
Oehm...
Vae victis!
Tempora mutantur et valligatores in illis!
Non valigatoris, sed vitae discimus!
(Puuhhh.... ich brauche dringend "Latein für Angeber")
Bio
Bio!
lege eine neue html-datei an und schreibe 100 mal:
auf die frage für wen? antworter der dativ
ohne copy und paste und ohne variablen
ursula minuscula
TILT -
Guru Meditation - Exception $0E - Kernel Panic - "7 Bomben" -
Bio
P.S.: Das war zuviel... sogar für einen bärenstarken Lateinfreak wie mich...
Hallo Bio!
P.S.: Das war zuviel... sogar für einen bärenstarken Lateinfreak wie mich...
Darf ich dir mit einem "Sprichwort" unter die Arme greifen? ;-)
ultra posse nemo obligatur
außerdem ist es eine schöne Ausrede! ;-))
Grüße
Thomas