Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo guarda de forma segura una orden en la nube, si no puede verificar el pago desde la nube?

Estoy trabajando en una aplicación de venta de entradas para móviles. El sistema permite a los usuarios pagar por artículos usando una api de terceros (Cardio) guardando toda la información en mi servidor sentado felizmente en la nube.

El problema se reduce a: Debido a que (1) el proceso de pago se produce por completo en el teléfono, y (2) no hay una API que permita a mi servidor para verificar con el procesador de pagos que el pago realmente ha ocurrido, Para ir sobre la verificación de que el usuario ha pagado por el artículo antes de marcarlo como pagado en mi base de datos en mi servidor.

Verá, un usuario podría seguir mis llamadas de api manualmente, iniciar sesión en su cuenta y, a continuación, enviar el comando a mi servidor para marcar una compra como pagado sin haber pagado por el artículo.

Así que la pregunta es: ¿Cómo puedo verificar que el pago se ha realizado en mi servidor, o mediante algún tipo de apretón de manos o cifrado con la aplicación para móviles?

Mi enfoque actual: Estoy enviando la información de texto plano necesaria a través de una llamada SSL (HTTPS) al servidor. Junto con esto, enviar un hash de esa cadena y verificar utilizando el mismo algoritmo en mi servidor que la cadena enviada coincide con el hash enviado. El pensamiento que es, que podría entonces utilizar algún tipo de clave secreta para generar este hash y, a continuación, comprobar el texto sin formato coincide con el hash en el servidor final, así como para asegurarse de que nada ha cambiado. Mi problema con esta solución, es que no creo que sea realmente tan seguro … Alguien podría, bastante fácil de romper el algoritmo, porque se les da el cifrado y el texto sin formato.

¡Gracias por mirar!

Stephen

  • Proveedor de contenido privado de Android?
  • Java.net.SocketException: recvfrom falló: ECONNRESET (Conexión restablecida por pares) Más de WIFI
  • Diferencia entre SOAP y KSOAP
  • Recurso IP en android
  • Comprobación del sobre con Ksoap2 (Android)
  • EOFException en libcore.io.Streams.readAsciiLine (Streams.java:203) cuando se utiliza HttpDelete en HttpsURLConnection
  • Cómo generar clases java desde el archivo WSDL
  • ¿Cómo pasar el parámetro a un webservice usando ksoap2?
  • 2 Solutions collect form web for “¿Cómo guarda de forma segura una orden en la nube, si no puede verificar el pago desde la nube?”

    La respuesta corta es que usted no puede confiar en el cliente, período. Hack alrededor de todo lo que quieras – que no es manera de construir la información de la transacción.

    Si su procesador de pagos no tiene una API en la que pueda confiar, entonces necesita una mejor … que resuelve sus problemas de inmediato y para el futuro.

    El teléfono móvil debe escanear la información de la tarjeta de crédito y enviarla a su servidor, y el servidor debe ser el que ejecute el proceso de pago

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.