Registro de SMS como en la aplicación mobile: Whatsapp

Me pregunto cómo funcionan estos mecanismos de logging de SMS. Busqué en Internet, pero el problema es que hay tantos sms-providers que quieren vender el service de sms en línea, que no puedo encontrar nada …

Pregunta: ¿Cómo funciona esto? Establezca su número de teléfono mobile y le enviaremos un SMS con un código de logging único. Coloque este código en nuestra aplicación.

¿Qué hay detrás? ¿Tienen un sms-gateway o algo así? ¿Eso no cuesta demasiado?

Gracias

    Aquí hay un simple service de verificación de número de teléfono construido sobre Nexmo (exención de responsabilidad, hago un poco de evangelización de desarrolladores para Nexmo). Creo que es básicamente lo que estás buscando, el objective es verificar que un número realmente pertenezca a un usuario (también podría usarse para la authentication del segundo factor).

    La integración básica para una aplicación mobile (específicamente para este código de ejemplo, pero un flujo común):

    • Envíe el número de teléfono para verificarlo, reciba un hash único.
    • El sistema de verificación envía un código único al usuario.
    • Una vez que el usuario pasa ese código a su aplicación, el hash original y el código se envían al sistema de verificación para validarlo.

    Puede abandonar la parte alojada, y simplemente tomar esos pasos dentro de su aplicación (generar un código, enviar a través de una API de SMS, verificar el código que ingresa el usuario). Sin embargo, hay algunas cosas a tener en count en ese momento:

    • Las cnetworkingenciales de la API de SMS se comstackn en su aplicación distribuida. ¿Es algo que quieres arriesgar?
    • El código se envía a través de la networking desde el dispositivo; mientras que SSL detendrá la observación casual del código, alguien que quiera falsificar un logging podría capturar el código de la request HTTP.

    Ambos problemas se resuelven poniendo el sistema de verificación fuera de la aplicación mobile.

    Sé que esta publicación es antigua, pero es para todas las personas cómo visitar esta página en la feuture:

    lo que dice el usuario "Harsh Shah" es incorrecto …

    ¡NO DEBE generar un número aleatorio en el dispositivo mismo! este compromiso la verificación completa,

    1. Pide al usuario el número de teléfono y envíalo al server.
    2. como una respuesta para esa request, genera un número aleatorio y guarda con el número de usuario en los loggings de usuarios allí en db, y envía SMS con ese número aleatorio, la RESPUESTA para la request debe SER ENVIADA-OK, NO-ENVIADA.
    3. el dispositivo recibe los SMS y lo envía de vuelta al server para comstackr con el logging de disco existente.

    el intercambio de datos:

    1. el teléfono envía ('012345567') -> el server responde ('SENT-OK'); en segundo plano: server: [generar número, enviarlo en SMS, save en db para el usuario 01234567, por ejemplo: 123123]

    [el teléfono lee los SMS, por ejemplo, '123123']

    1. el teléfono envía ('01234567', '123123') -> el server responde ('AUTH-OK');

    en segundo plano: server: [comprobar db para el usuario de logging 01234567, comstackr el número aleatorio generado en el paso 1 con el número que el usuario envió).

    si genera el número en el teléfono del usuario, cualquier script kiddie puede piratear su authentication extrayendo este número de la memory / almacenamiento (fácil de hacer) y suplantando un sms que lo contiene (muy fácil de hacer también) … podría creo que este es un caso raro, pero este es un gran agujero en la security, puede autenticarse como cualquier usuario existente y robar datos de ellos si lo hace de la forma en que "Harsh Shah" dijo …

    Los fundamentos básicos son:

    1. Genera un código aleatorio en tu aplicación en el dispositivo. Pida al usuario su número de teléfono mobile.
    2. Envíe este código y número de teléfono mobile a su aplicación que se ejecuta en el server.
    3. Llame a la API de puerta de enlace SMS para enviar el código como un post al número de teléfono mobile especificado.

    Hay muchos proveedores de pasarela SMS. Puedes search en Google. La mayoría de ellos también proporcionan un tutorial para usar su API en varios lenguajes de progtwigción. El costo se basa principalmente en cada post y generalmente se compran en forma de package de número de SMS.

    Este artículo explica cómo integrar la verificación de sms a su aplicación de Android al igual que la aplicación Whats.

    Android agregando la verificación de SMS Like WhatsApp – Parte 1

    Android agregando la verificación de SMS Like WhatsApp – Parte 2

    introduzca la descripción de la imagen aquí

    Básicamente, los siguientes pasos implican verificar el número de teléfono mobile.

    1. El número de mobile del primer usuario se enviará a nuestro server donde se creará una nueva fila de usuarios.

    2. Nuestro server solicita la puerta de enlace de SMS para un sms al número de teléfono mobile con un código de verificación.

    3. La puerta de enlace SMS envía un SMS al dispositivo del usuario con el código de verificación.

    4. El código de verificación se enviará de nuevo a nuestro server para su verificación. Nuestro server lo verifica y activa al usuario.