Julio 30, 2011, 02:00:18 AM Ultima modificación: Julio 31, 2011, 09:22:48 PM por MaanuRP
Hola a todos!

Estoy usando un archivo .ini para guardar los maximos puntajes de un juego que estoy haciendo, y me surgio este problema:

Al ser un archivo .ini de maximos puntajes, facilmente se puede acceder a este para editar su informacion y tener un puntaje maximo muy elevado.

Entonces lo que quiero hacer es encriptarlo cosa que lo puedan abrir pero no editar, o prohibir/desabilitar la edicion desde algun programa que no sea el juego (De cualquier editor de texto).

U ocultarlo de forma que no se pueda ni siquiera abrir este archivo sino es por el juego.

Desde ya muchas gracias!

Saludos!


#2 Julio 30, 2011, 04:59:02 AM Ultima modificación: Julio 30, 2011, 05:05:21 AM por MaanuRP
Ocultandolo es simple de encontrar, y poniendolo dentro de un winrar se puede seguir editando a traves del GM? Como?

No hay una solucion sin extensiones, librerias o algo por el estilo, no? Porque no me gusta usar nada no hecho por mi, me gusta escribir y hacer todo lo de mi juego :D

Se que es como un capricho xD Pero es una pregunta nomas :P

Muchas gracias Gabriel!

EDIT: O sale a la luz que nunca use ninguna extension o mi capricho se convirtio en necesidad por la version.

Tengo el GM 8.0, lo que hice fue poner el archivo .gex que me descargue de ese link en la carpeta "extensions" de "Game Maker 8", pero voy a la opcion de extensiones en el software y no aparece, porque?

Pues fenrris posteo uno aqu? en la se secci?n de scripts.
http://www.comunidadgm.org/index.php?topic=14247.0

No es muy seguro, pero para puntajes queda bien.

P.D: Creo que tambien vi unos c?digos para encriptar en www.gmlscripts.com  pero no estoy seguro.


#5 Julio 30, 2011, 08:27:48 AM Ultima modificación: Julio 30, 2011, 08:31:48 AM por MaanuRP
Si utilizan el "Cifrado de Cesar" como lei, no creo que me sirvan, ya que si son numeros, tendrian que convertirse en letras o simbolos para que no sean muy faciles de descriptar, aunque siendo letras y simbolos tambien seria medio facil, ya que probando un par de veces lograras entenderlo.

No hay algo que me ayude a ocultar o poner bajo contrase?a al .ini?
Obviamente sacando la opcion de en propiedades ponerle ocultar porque cualquiera lo descubriria.

Tambien pense en dejarla en solo lectura y ponerla con el ejecutable, pero el problema es que pueden borrar ese archivo y poner uno nuevo con el mismo nombre para sea tambien editable.

Hay alguna forma de hacerlo de ineditable e inborrarble? Para eso estaria bueno que sea oculto, pero como lo oculto?

Y que te parece este http://www.gmlscripts.com/script/rc4 es mucho mas seguro que el cifrado del cesar, tambi?n es descifrable pero necesitar?as tener conocimiento del tema y aun as? es complicado, aqu? un encriptador rc4 online para que pruebes http://www.fyneworks.com/encryption/RC4-Encryption/

Esta muy bueno! Voy a ver si encuentro alguna manera de ocultarlo o prohibirle la edicion directa, y si no, lo codificare asi :D

Muchas gracias!

#8 Julio 30, 2011, 10:59:14 PM Ultima modificación: Julio 31, 2011, 12:17:15 AM por soccer2008
yo hize un script que te permite encriptar largas cadenas de texto, si te interesa me avisas...El c?digo est? listo el detalle es que ahorita no estoy en casa y no tengo el dicho c?digo pero te puedo dar una idea de como es la l?gica:

B?sicamente se usa un
switch(letra_cadena)
{
 case '%&/(()%%$F%$&':return "A";
}
si te interesa me avisas para pasarte ma?ana (cuando est? en mi casa) porque donde estoy no hay game maker...saludos XD
Un foro donde hay de todo: http://fileceru.foroactivo.net (se necesitan moderadores para el foro)

Te recomiendo que no te esfuerces demasiado con esto. Hagas lo que hagas, el archivo SIEMPRE se va a poder decriptar, de una forma u otra. Y de cualquier forma, lo que est?s guardando son scores, no informaci?n sensible (como contrase?as).
Vim.

#10 Julio 31, 2011, 12:47:41 AM Ultima modificación: Julio 31, 2011, 12:50:28 AM por MaanuRP
Esta bueno, igual no necesito grandes cadenas de texto, es un score lo que trato de ocultar.

Nadie sabe como ocultarlo o prohibirle la edicion?

Cita de: Wadk en Julio 30, 2011, 11:58:32 PM
Te recomiendo que no te esfuerces demasiado con esto. Hagas lo que hagas, el archivo SIEMPRE se va a poder decriptar, de una forma u otra. Y de cualquier forma, lo que est?s guardando son scores, no informaci?n sensible (como contrase?as).

Claro, que se editen sus puntuaciones maximas, total, es solo la trampa mas grande que se puede hacer en el juego jajajaj

Nah, en serio Wadk, es un juego simple, lo unico que haces en el juego es subir score, si dejo que se lo suban solos, es al pedo el juego.

Gracias por tu sugerencia igual :D

(Aunque puedes que tengas razon, ya que si no entran a la carpeta del juego, no van a ver el .ini, peero no se :S )

Cita de: MaanuRP en Julio 30, 2011, 04:59:02 AM
Porque no me gusta usar nada no hecho por mi, me gusta escribir y hacer todo lo de mi juego :D
Jaja, entonces ?No te gustara si te doy un script que alguna vez poste? Julen (creo xP)?
Encriptaci?n XOR, si lo vas a hacer tu, la idea es manipular el archivo usando las funciones file_bin_*, cambiando los valores de los bytes usando el operador xor (^) y un pass dado.

Ahora, si en realidad no lo quieres hacer tu, aqu? esta el script:
[gml]/*
scr_enc(archivo,pass)
*/
var f, byte, pass,j,i;

f = file_bin_open(argument0,2);
pass = argument1;
if (is_string(pass)) {
    var suma;
    suma = 0;
    for (j = 0; j < string_length(pass); j += 1) {
        suma += ord(string_char_at(pass,j));
    }
    pass = suma;
}

for (i = 0; i < file_bin_size(f); i += 1) {
    byte = file_bin_read_byte(f);
    byte = byte ^ pass;
    file_bin_seek(f,i);
    file_bin_write_byte(f,byte);
}
file_bin_close(f);[/gml]

Y estoy de acuerdo con Wadk, la informaci?n que estas guardando no es muy importante, no deber?as sufrir tanto por eso.

Saludos

#12 Julio 31, 2011, 01:41:24 AM Ultima modificación: Julio 31, 2011, 01:44:12 AM por MaanuRP
Cita de: Topet en Julio 31, 2011, 01:23:23 AM
Cita de: MaanuRP en Julio 30, 2011, 04:59:02 AM
Porque no me gusta usar nada no hecho por mi, me gusta escribir y hacer todo lo de mi juego :D

Jaja, entonces ?No te gustara si te doy un script que alguna vez poste? Julen (creo xP)?



Me conoces ^^ jajaj



Cita de: Topet en Julio 31, 2011, 01:23:23 AM
Y estoy de acuerdo con Wadk, la informaci?n que estas guardando no es muy importante, no deber?as sufrir tanto por eso.

El tema es que es la unica informacion del juego, si se pueden editar los scores maximos no lo jugaran, ya que no tienen necesidad de mejorar sus puntos, entienden?

Tambien pense que se grabe y se cargue la partida siempre, pero eso no es muy practico ni bonito :/

Nadie sabe como OCULTAR o prohibir la edicion de un .ini? No puede ser tan dificil!

Gracias a TODOS los que me estan ayudando :D

Cita de: MaanuRP en Julio 31, 2011, 12:47:41 AM
Nadie sabe como ocultarlo o prohibirle la edicion?

Bueno como ya dijo wadk ?cual es el problema con que editen su puntuaci?n? al fin y acabo despu?s de todo no van a enga?ar a nadie si la puntuaci?n solo se puede ver dentro de su pc.

Tambi?n creo que la opci?n de encriptar la informaci?n con el c?digo que te pase en el anterior post es igual o mas segura que ocultarlo o prohibir la edici?n, solo pones la puntuaci?n en la linea 15 por as? decir y todo lo anterior a esa linea lo llenas de puras letras aleatorias y cada vez que vallas a actualizar los scores cheques si todo lo que estaba escrito antes de la linea quince sigue igual que como tu lo hab?as dejado, si no lo esta que salga un mensaje de error falso que diga que hay un error por editar el archivo, eso har?a mucho mas dif?cil atinarle a la linea en la que esta tu puntuaci?n.

Otra cosa que seria aun mas segura seria repetir tu puntuaci?n varias veces en el archivo de texto en varias encriptaciones distintas al si al actualizar tu puntuaci?n alguna de esas no coincide con las dem?s que salga un error o que se borren todas las puntuaciones etc.

PERO COMO DIJO WADK HAGAS LO QUE HAGAS TU ARCHIVO NUNCA ESTAR? SEGURO.

P.D: Otra cosa que puedes hacer es guardar tus puntuaciones en el registro.

#14 Julio 31, 2011, 02:25:54 AM Ultima modificación: Julio 31, 2011, 02:28:32 AM por soccer2008
porque no usas ecuaciones complejas para ocultar la informaci?n de los scores, puedes ayudarte con excel a crear dichas ecuaciones y luego creas un script para sacar el resultado deseado que solo tu lo sabr?s...saludos XD
Un foro donde hay de todo: http://fileceru.foroactivo.net (se necesitan moderadores para el foro)