entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

Cifrado JAVA - PHP con salt

Hola, estoy haciendo una app android en la que se realizan peticiones http a un servidor web.
Para tener mayor seguridad quiero encriptar y desencriptar estos datos pero con un salt para que no lo puedan desencriptar ellos. Habia pensado en base64, pero tengo que añadirle un salt y que este sea seguro.

Resumen:

Modo de encriptacion y desencriptacion que funcione en PHP y en JAVA al que se le pueda añadir un salt.

1 Respuesta

2votos

Leonardo-Tadei Puntos227240

Hola,

veo un problema en tu planteo: Y cómo harás para usar el mismo salt de ambos lados???

Es mucho más simple y eficiente que la app acceda vía una conexión HTTPS. De esa forma nada del código cambia y no tenés que cifran ni descifrar nada en los extremos.

Saludos cordiales!

0voto

youngsdeveloper comentado

Hola, la salto que haga no va a ser aleatoria. Va a ser la misma tanto en la app como en el servidor.

Lo que necesito es que solo se puedan enviar datos que hayan sido procesados solo en mi aplicación, por eso pensé en hacerlo así. No se si me explico.

La aplicación es un juego y estoy intentando hacer los ranking fe mejores posiciones.

Un saludo y gracias

0voto

youngsdeveloper comentado

Miren, lo voy a enfocar de otra forma a ver si me pueden ayudar ;)

En mi app Android hago una peticion a este archivo PHP con la sigiente informacion:

http://localhost/juego/checkleaderboards.php?user=enrique&score=5

Y este archivo lo que hace es:

<?php 
    include("conexion.php");
    $username = $_GET['user'];
    $puntuacion = $_GET['score'];
    $cnxCheckUsername = conectarse();
    $sqlCheckUsername = "SELECT * FROM puntuacion WHERE username='$username'";
    $sqlCheckUsername_ex = $cnxCheckUsername -> query($sqlCheckUsername);
    $cnxCheckUsername -> close();
    $cnxChangePuntuacion = conectarse();
    if(mysqli_num_rows($sqlCheckUsername_ex)==0){
        //Insertar usuario y puntuacion
        $sqlChangePuntuacion = "INSERT INTO puntuacion (username, puntuacion) VALUES ('$username','$puntuacion')";
    }else{
        //Ya existe, actualizar
        $sqlChangePuntuacion = "UPDATE puntuacion SET puntuacion='$puntuacion' WHERE username='$username'";
    }

    $sqlChangePuntuacion_ex = $cnxChangePuntuacion -> query($sqlChangePuntuacion);
    $cnxChangePuntuacion -> close();
    if($sqlChangePuntuacion_ex){
        //Todo biem
        echo "bien";
    }else{
        //Error
        echo "mal";
    }
 ?>

¿Como podria yo hacer para que solo se envien datos desde mi aplicacion android y no todo el mundo acceso a cambiar esta informacion.

Un saludo y muchisimas gracias a quien me responda :P

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta