Verschlüsseln von Textdateien ! geht das?
Übersicht

Blitzkrieg BopBetreff: Verschlüsseln von Textdateien ! geht das? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
Ich habe folgendes Prob: Bei einer Highscoreliste wird eine Datei "Highscore.dat" angelegt, in der Name und Punktzahl gespeichert wird. Nun habe ich gewisse Möglich keiten das zu Verschlüsseln und Entschlüsseln! Verschlüsselt man nun die DAtei, geht mit nem Editor dabei und öffnet sie, kann man nur komische Zeichen und Zahlen sehen! DAs ist also verschlüsselt! Schön und gut, nur wenn man da jetzt irgend ein Scheiss reinschreibt in die Datei, ändert dich das halt auch für die Highscoreliste. Ich bitte also um Hilfe bei der Verschlüsselung einer Textdatei! DAs Ganze soll man nicht mehr öffnen können oder soll sich nciht verändern lassen. ![]() ![]() ![]() |
||
~ Hey Ho Let's Go ~ |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Schreibe die Score einfach 2x in die datei, wenn die 2 Dann nicht mehr übereinstimmen, dann Fehler, oder alle Score = 0 | ||
between angels and insects |
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
aber das bringt ja nix! es kann ja weiterhin der text veränder werden! und nur weil da so ein noob bei geht, sollen die ganzen scores auf 0 gesetzt werden? das it doch auch dumm ![]() ![]() |
||
~ Hey Ho Let's Go ~ |
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
Erstelle Dir einen Schlüssel. Zum Beispiel: key=Rnd(0,65000). Dann nimmst Du den Highscorewert (unverschlüsselt) und XOR'st ihn: new_value=value XOR key. new_value schreibst Du per WriteInt() in die Datei.
Beim lesen machst Du es umgekehrt. Lies den Wert aus und decodiere ihn mit old_value=value XOR key. |
||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
![]() |
RallimenSieger des 30-EUR-Wettbewerbs |
![]() Antworten mit Zitat ![]() |
---|---|---|
das einfachste geht mit XOR
hab ich auch so und klappt prima! muß mal ebend raussuchen die Funktiion..... Code: [AUSKLAPPEN] Function Codierung$(Daten$)
gesamt_Buchstaben = Len(Daten$) For z = 1 To gesamt_Buchstaben Zeichen$ = Mid$(Daten$,z,1) Dummy = Asc (Zeichen$) ergebnis = Dummy Xor 92 Sting$= Sting$ + Chr$ (ergebnis ) Next Return Sting$ End Function also diese geht mit jedem String fertig ist es... Funktionsweise: vor dem schreiben den string mit der Codierung ändern dann abspeichern beim einlesen halt umgedreht String lesen ...und ab in die function damit das orginal wieder angezeigt wird |
||
[BB2D | BB3D | BB+]
|
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
![]() ![]() ![]() also so ganz kapier ich des noch net! kann mir jaemand ein beispiel geben, in deer die DAtei "Highscore.dat" vorkommt, damit es plausibel ist? |
||
~ Hey Ho Let's Go ~ |
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] key=1234567 ; sollte etwas kreativer sein old_score=ReadFile("highscore.txt") new_score=WriteFile("highscore.dat") While Not Eof(old_score) name$=ReadString(old_score) score=Int(ReadString(old_score) WriteString name$,new_score WriteInt score XOR key,new_score Wend Closefile new_score Closefile old_score Dieser Code liest aus der Textdatei highscore.txt die Werte aus und schreibt sie in die highscore.dat Natürlich ist das nicht praktisch einsetzbar, Du musst die Daten schon xoren und nicht erst in eine Textdatei schreiben. |
||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja und wie mach ich dieses Xoren vorher? Man oh man, dsa krieg ich ja nie hin ;D | ||
~ Hey Ho Let's Go ~ |
![]() |
mangoo |
![]() Antworten mit Zitat ![]() |
---|---|---|
naja ob das ganz so sinnvoll ist mit xor bei einer highscore liste, ist noch ne andere frage.
angenommen wir haben die bin zahl 1110001 und machen xor 0001000, dann hätten wir als ergebnis 1111001 1110001 0001000 1111001 da der findige programmierer nun weiss, was in der highscore liste steht und in der datei, kann er ja einfach zurückrechnen und somit den xor schlüssel bekommen 1110001 1111001 0001000 damit wäre der xor schlüssel 0001000 und das geheimnis gelöst. falls dieser findige programmierer nicht weiss, an welcher stelle in der datei der genaue wert steht, kann er einfach ne kopie der datei machen, sich die highscore merken, ein spiel machen und nen highscore belegen, einen datenvergleich mit der kopierten datei machen und schwupps hat er die position in der datei. aber für ein freeware spiel reichts ![]() |
||
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn Du selbst dafür zu dämlich bist solltest Du vielleicht lieber mit einem Ball spielen.
Wenn Du variable3 = variable1 XOR variable2 machst, dann werden in variable1 alle gesetzten Bits umgedreht die in variable2 ebenfalls gesetzt waren. Das Ergebnis wird nach variable3 übertragen. Jetzt kannst Du darüber grübeln und es umsetzen, fertige Codes abtippern wird Dich keinen Deut weiter bringen. |
||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ey Leute , nicht nur verschlüßeln sondern auch ERHALTEN der Daten
Zitat: aber das bringt ja nix! es kann ja weiterhin der text veränder werden! und nur weil da so ein noob bei geht, sollen die ganzen scores auf 0 gesetzt werden? das it doch auch dumm
|
||
between angels and insects |
![]() |
RallimenSieger des 30-EUR-Wettbewerbs |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich glaube das das mit dem XOR ausreicht,
man kann ja noch den String umkehren und verschiedene Schlüssel aus einem data Feld nehmen Das mitreinzuproggen sollte wohl kein Problem sein! Und zu 99,9% bin ich mir sicher das keiner der das Spiel spielt, da irgend etwas ändern kann, wenn es einfach mit XOR verschlüsselt wurde! Nur wenn es garnicht verschlüsselt ist, kann wirklich jeder(99%) mit dem Texteditor Änderungen vornehmen! |
||
[BB2D | BB3D | BB+]
|
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aber, es geht nicht darum, es geht darum, das auch wenn es jemand probiert, und 1-2 Zeichen ändert, die Highscoreliste, so bleibt! | ||
between angels and insects |
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
WOW! Danke Jan! Du hast es verstanden! leute, wenn jemand nen Editor aufmacht und die Datei reinlädt, sind da zwar nur komische Zeichen, aber man kann..ahc mom, hier nen bespiel:
Code: [AUSKLAPPEN] ?ᄊࠁꚩ쿎퇒꧌૽đ꤈춦쳑꧌đ꤈햦쳌ꚩ꤆햦쳌ꚩ?ᄊࠁꚩ쳑꧌ﺦꚩ쳏꧌૽đ꤈첦ꚩ?ᄊࠁꚩ꧌૽đ꤈첦ꚩ?ᄊࠁꚩ꧌鲦搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀 so sieht die highscore liste vershclüsselt bei mir aus! wenn nun aber irgend nen arsch daran geht und zumb eispiel folgendes macht: Code: [AUSKLAPPEN] AAAABBBBBCCCCCCC?ᄊࠁꚩ쿎퇒꧌૽đ꤈춦쳑꧌đ꤈햦쳌ꚩ꤆햦쳌ꚩ?ᄊࠁꚩ쳑꧌ﺦꚩ쳏꧌૽đ꤈첦ꚩ?ᄊࠁꚩ꧌૽đ꤈첦ꚩ?ᄊࠁꚩ꧌鲦搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀 DAnn ist die ganze liste im Arsch! Die datei darf man nicht öffnen können!!!!!!!! |
||
~ Hey Ho Let's Go ~ |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also, man könnte, die Daten, mehrfach SPiegeln!
und dann testen, welche Zahl am meisten vorkommt! |
||
between angels and insects |
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
![]() das klingt kompliziert! aber sagt mal, hat hier niemand ne verschlüsselte highscore liste und kann mir sagen wie das gehtS |
||
~ Hey Ho Let's Go ~ |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Erhalten der Daten:
1) Daten 2x in die Datei hintereinander speichern - und dann beide Teile als 1 Teil behandeln und mit einem "Master-Schlüssel" verschlüsseln (so, dass gleiche daten nicht erkannt werden können). Weicht der 1. teil von 2. teil ab (nach dem entschlüsseln), dann wurde etwas geändert... 2) Verschlüsselte Daten müssen eine gewise Summe bilden (evtl. am ende dummybytes anfügen, so dass die Summe erreicht wird) 3) Bei jedem PC anderen Schlüssel benutzen - Z.B. ermittelt aus Festplatten-Seriennummer C:\ |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
Ctuchik |
![]() Antworten mit Zitat ![]() |
---|---|---|
Blitzkrieg Bop hat Folgendes geschrieben: WOW! Danke Jan! Du hast es verstanden! leute, wenn jemand nen Editor aufmacht und die Datei reinlädt, sind da zwar nur komische Zeichen, aber man kann..ahc mom, hier nen bespiel:
Code: [AUSKLAPPEN] ?ᄊࠁꚩ쿎퇒꧌૽đ꤈춦쳑꧌đ꤈햦쳌ꚩ꤆햦쳌ꚩ?ᄊࠁꚩ쳑꧌ﺦꚩ쳏꧌૽đ꤈첦ꚩ?ᄊࠁꚩ꧌૽đ꤈첦ꚩ?ᄊࠁꚩ꧌鲦搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀 so sieht die highscore liste vershclüsselt bei mir aus! wenn nun aber irgend nen arsch daran geht und zumb eispiel folgendes macht: Code: [AUSKLAPPEN] AAAABBBBBCCCCCCC?ᄊࠁꚩ쿎퇒꧌૽đ꤈춦쳑꧌đ꤈햦쳌ꚩ꤆햦쳌ꚩ?ᄊࠁꚩ쳑꧌ﺦꚩ쳏꧌૽đ꤈첦ꚩ?ᄊࠁꚩ꧌૽đ꤈첦ꚩ?ᄊࠁꚩ꧌鲦搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀搀 DAnn ist die ganze liste im Arsch! Die datei darf man nicht öffnen können!!!!!!!! Also wenn jemand seinen eigenen Highscore schrottet dann ist er daran ja wohl selbst schuld! ![]() |
||
![]() |
Travis |
![]() Antworten mit Zitat ![]() |
---|---|---|
Man kann das ganze auch anders lösen. Wenn du nicht willst, dass jemand an der Liste herumfummelt, solltest du sie vielleicht nicht so offensichtlich mit "Highscore.dat" bezeichnen.
Verstecke sie doch zwischen den Sounds oder den Bildern und bezeichne sie entsprechend mit "*.wav oder *.pcx. Dann weiss erstmal kein Mensch wo die Liste überhaupt gespeichert ist. Vielleicht könnte man auch eine Dummydatei einfügen und den Inhalt der Liste einfach hinten dranhängen. Dann würde es nicht auffallen, wenn eine Bilddatei z.B. nur 500 Byte groß ist. Beim laden und speichern muss man dann nur vorher mit SeekFile die Position einstellen. |
||
www.funforge.org
Ich hasse WASD-Steuerung. Man kann alles sagen, man muss es nur vernünftig begründen können. |
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja, so mach eich es auch dneke ich ;D | ||
~ Hey Ho Let's Go ~ |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group