mache gerade ein spiel und will das die inis unsichtbar und schreibgeschützt geschrieben werden könnte man mit iniwrite() einfach sein level ändern hoffe mir kann jemand hefen ![]()
geschützte inis
-
- [ offen ]
-
manuel6000 -
29. Januar 2011 um 15:40 -
Geschlossen -
Erledigt
-
-
Mit der Crypt.au3 die Werte verschlüsseln ;).
-
kannst mir bitte eine beispiel ini mit Crypt posten posten?
-
Verabschiede dich von lokaler Sicherheit mit Skriptsprachen.
Spätestens zur Laufzeit lässt sich der Quellcode immer auslesen.Da würde ich dann vielleicht eher eine .dll oder eine compilierte (!) (bspw. mit C++) externe .exe nehmen...
-
Beispiel aus der Hilfe
:Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <EditConstants.au3>
#include <WindowsConstants.au3>
#include <Crypt.au3>
#include <WinAPI.au3>; Beispiel für eine RC4-Verschlüsselung in Echtzeit
[/autoit] [autoit][/autoit] [autoit]$hWnd=GUICreate("Echzeit Verschlüsselung",400,300,-1)
[/autoit] [autoit][/autoit] [autoit]
$hInputEdit=GUICtrlCreateEdit("",0,0,400,150,$ES_WANTRETURN)
$hOutputEdit=GUICtrlCreateEdit("",0,150,400,150,$ES_READONLY)
GUIRegisterMsg($WM_COMMAND,"WM_COMMAND")
GUISetState(@SW_SHOW); Um die Performance zu verbessern starten wir die Crypt-Library und erstellen einen Schlüssel
[/autoit] [autoit][/autoit] [autoit]
_Crypt_Startup()
$hKey=_Crypt_DeriveKey("EinPasswort",$CALG_RC4)Do
[/autoit] [autoit][/autoit] [autoit]
$msg=GUIGetMsg()
Until $msg=$GUI_EVENT_close_Crypt_DestroyKey($hKey)
[/autoit] [autoit][/autoit] [autoit]
_Crypt_Shutdown()Func WM_COMMAND($hWinHandle,$iMsg,$wParam,$lParam)
[/autoit]
; Wenn sich etwas in der InputBox ändert
If _WinAPI_HiWord($wParam)=$EN_CHANGE And _WINAPI_LoWord($wParam)=$hInputEdit Then
$bEncrypted=_Crypt_EncryptData(GUICtrlRead($hInputEdit),$hKey,$CALG_USERKEY)
GUICtrlSetData($hOutputEdit,$bEncrypted)
EndIf
EndFunc -
wenn ich fertig bin stells ichs als .exe datei in script die ist doch sicher oder?
name22 danke für den script verstehe ihn aber leider nicht

-
Zitat
wenn ich fertig bin stells ichs als .exe datei in script die ist doch sicher oder?
Nein, das lässt sich decompilen ;). Aber absolut sicher ist sowieso nichts... -
und wen ich das spiel zu einem clienten mache und die dateien auf meinem pc speichere und der dem spiel mdann immer die daten schickt ist es 100% prozent sicher oder?
-
Wenn du sie unsichtbar machen willst, mach sie zu einer Systemdatei. Die meisten haben zwar unsichtbare Dateien/Ordner anzeigen, aber nicht Systemordner anzeigen.
[autoit]
Ändern tust du es so:FileSetAttrib(@ScriptDir & "\Score.ini", "+H+S")
[/autoit]
(Musst den Pfad natürlich noch anpassen)
Viel Erfolg
Aquaplant -
Zitat
und wen ich das spiel zu einem clienten mache und die dateien auf meinem pc speichere und der dem spiel mdann immer die daten schickt ist es 100% prozent sicher oder?
Nein, aber es ist um einiges sicherer als die Daten in einer Ini zu speichern.
-
Nichts ist 100%ig sicher.
Ich würde folgendes als relativ sicher bezeichnen:Kommunikation mit dll (mittels DllCall)
selbige erzeugt einen Hash (mit einem salt, der nur dir bekannt ist) und sendet das und den Wert an ein CGI/PHP-Skript online, welches dann den Hash nachvollziehen kann und die Legitimität feststellen kann...Wobei man auch dann noch zumindest das AutoIt decompilen und einfach ändern kann...
-
ok danke und wie passt man einen pfad an?