Alexa Serra  ·  February 26, 2021 




Aspectos Clave Para El Desarrollo De Aplicaciones Seguras De E-Wallet


La industria FinTech está inyectando tecnologías modernas en los servicios financieros tradicionales y haciéndolos más accesibles a través de e-wallets.

La industria FinTech está inyectando tecnologías modernas en los servicios financieros tradicionales y haciéndolos más accesibles a través de e-wallets. Teniendo en cuenta la seguridad, las empresas de desarrollo de aplicaciones deben hacer que estas alternativas sean seguras para aumentar la adopción.

El sector financiero no ha sido inmune a las tecnologías que han penetrado en las industrias de todo el mundo. Todo, desde la banca hasta los seguros, ha sido objeto de modernización e imbuido de tecnologías, como las aplicaciones de billetera electrónica, para ofrecer soluciones de pago alternativas. Por esta razón, la tecnología financiera, o FinTech, se ha convertido en una fuerza digital dinámica que ha alterado la forma en que las personas realizan transacciones de pago. De hecho, el crecimiento exponencial en el uso de dispositivos móviles lo ha empujado hacia adelante. Aún así, se ha vuelto cada vez más popular durante la pandemia debido a la creciente demanda de transacciones sin efectivo y sin contacto.

Las iniciativas de FinTech han impulsado la búsqueda de una sociedad sin efectivo durante los últimos años, y han surgido innumerables aplicaciones y plataformas. Entre esta proliferación de aplicaciones FinTech, billeteras digitales o aplicaciones de e-wallets, están impulsando las interacciones sin efectivo. Sin embargo, este tipo de aplicaciones no solo benefician a las instituciones financieras y su base de clientes. Muchos gobiernos y empresas de diversas industrias, en particular el comercio minorista, están adoptando métodos de pago digitalizados. Para llevar este punto a casa, la E-commerce Foundation descubrió que más del 25% de los consumidores realizar compras semanales relacionadas con el comercio minorista a través de dispositivos móviles. Además, esas cifras, sin duda, seguirán creciendo y las soluciones de pago móvil se convertirán en la norma en los próximos días.

Al igual que con cualquier forma de intercambio de datos digitales sensibles, surgen algunas preguntas: ¿Son seguras estas soluciones de pago? ¿Los desarrolladores están aplicando las medidas de seguridad adecuadas para mantener protegidos los datos de sus usuarios? ¿Cuáles son estas medidas de seguridad y qué importancia tienen? Vamos a averiguar.

¿Qué es una e-wallet?

¿Qué es una e-wallet?

Las e-wallets, o aplicaciones de billetera electrónica, son aplicaciones basadas en software que permiten a los usuarios vincular sus cuentas bancarias, almacenar sus tarjetas digitalmente, administre las actividades criptográficas o agregue fondos para realizar pagos en línea utilizando un dispositivo móvil. En términos sencillos, son la versión digital de una billetera real. A diferencia de las aplicaciones bancarias tradicionales, las aplicaciones de e-wallets permiten a los usuarios agregar una cantidad de efectivo o un número de tarjeta directamente en la aplicación para pagar en línea o en un establecimiento físico. Dependiendo de quiénes sean los usuarios de la aplicación de billetera electrónica, puede implementar métodos de pago como QR codes or Near Field Communication (NFC) para facilitar las transacciones. Algunas e-wallets incluso pueden interactuar con la tarjeta SIM de un teléfono móvil, lo que les permite trabajar sin conexión a Internet. Lo que hace que las aplicaciones de e-wallets sean tan atractivas es que son una alternativa segura, rápida, sin contacto y confiable a los métodos de pago físicos. Los bancos pueden crear billeteras electrónicas para que sus usuarios manejen pagos y cuentas, o pueden provenir de proveedores externos con diferentes conjuntos de características. Algunos envían y reciben dinero (P2P), otros permiten pagos a través de la web y otros ofrecen opciones de pago sin contacto.

• Algunas de las aplicaciones de e-wallet más populares son:

  • AliPay
  • We Chat Pay (Market leader with 600 million users)
  • Apple Pay
  • Google Pay
  • PayPal
  • Samsung Pay

La popularidad de estas aplicaciones ha crecido hasta alcanzar casi $1449.56 billones en 2020, con $ 5399.6 mil millones pronosticados para 2026. Además, según Visa, 79% de las transacciones que se llevan a cabo en Australia se realizan de forma electrónica, con solo un 21% en transacciones en efectivo. Por el contrario, EE. UU. Se retrasa en la adopción de billeteras móviles con un 29%, inferior a la adopción del 81% en China. Sin embargo, este retraso en las tasas de adopción puede explicarse por los problemas de seguridad de los pagos móviles en los estadounidenses. Un estudio de 2019 de Statista mostró que el 65% de los propietarios de teléfonos inteligentes temen el fraude y el robo de identidad, razón por la cual no usan billeteras móviles. Además, a finales del mismo año, solo el 1% de la población de Estado Unidos y el 5% del Reino Unido utilizaba e-wallets.

A diferencia de Asia y el Pacífico, las culturas occidentales, en general, son más reacias a adoptar soluciones de pago móvil por temor a la seguridad. Por esta razón, los desarrolladores de aplicaciones FinTech deben adoptar las medidas de seguridad adecuadas para salvaguardar la información del usuario y mantener a raya las dudas que dificultan la adopción de las e-wallets.

Medidas de seguridad para e-wallets

Medidas de seguridad para e-wallets

Para garantizar que las soluciones de pago móvil sigan conquistando el mundo de forma segura, los desarrolladores deben proteger la información y su tráfico. Al contrario de lo que la mayoría de la gente cree, las aplicaciones de be-wallets son más seguras que las billeteras reales. Incluso si un usuario pierde su teléfono, las medidas de seguridad implementadas en la aplicación harán que la billetera electrónica sea inútil para cualquiera que acceda a ella de manera ilegal. Sin embargo, los desarrolladores de aplicaciones son responsables de poner en marcha estos muros de seguridad e impulsar la adopción de las e-wallets.

Para proporcionar algo de contexto primero, aquí están los principales parámetros cruciales para la seguridad de la información:

  • Confidencialidad: solo los usuarios autorizados pueden acceder a la información.
  • Integridad: proteja los datos de modificaciones no autorizadas.
  • Disponibilidad: asegúrese de que los datos estén disponibles cuando los usuarios autorizados los necesiten.

Teniendo en cuenta que la información se modifica “fácilmente” a través de redes inalámbricas inseguras, las transacciones móviles a través de aplicaciones de billetera electrónica son más vulnerables a los ataques. Por lo tanto, implementar los controles y protocolos de seguridad adecuados ayuda a prevenir el acceso externo y la manipulación de la información financiera confidencial de un usuario.

Primero: hacer cumplir las prácticas de codificación seguras

Según un estudio realizado por Immuniweb, 92% de las aplicaciones relacionadas con la banca móvil contienen al menos una vulnerabilidad de seguridad. Además, 97 de cada 100 bancos son vulnerables a ataques que permiten a los piratas informáticos robar datos financieros. Estos números arrojan luz sobre el hecho de que, independientemente de las características que tenga su aplicación de e-wallet, su éxito radica en los cimientos que establezca al codificar. Al igual que un arquitecto no construiría una casa con vigas defectuosas y un soporte estructural deficiente, no debería desarrollar una aplicación con codificación débil y agujeros de seguridad.

Recuerde, el código es un componente crucial para proteger los datos financieros confidenciales guardados en el servidor y el dispositivo del usuario. Por lo tanto, es bueno trazar el diseño de seguridad de la aplicación por adelantado y estar al tanto de posibles fallas en el código que podrían conducir a una infracción. De esta manera, adoptar un enfoque de seguridad primero al codificar proporcionará un mejor producto y reducirá los costos futuros de mitigación de daños.

Además, su aplicación de billetera electrónica debe tener una infraestructura de TI robusta que admita la validación de entrada y revise los datos recibidos en la aplicación. Además, tenga cuidado al otorgar acceso externo y defina reglas de acceso basadas en roles y permisos para proteger los datos confidenciales. Determine si es necesario conservar los números de débito, crédito, cuenta u otra información valiosa. Si la aplicación de e-wallet puede funcionar de manera eficiente sin estos delicados datos financieros, no la almacene.

Por último, asegúrese siempre de:

  • Introducir el uso de contraseñas complejas y desactivarlas después de varios intentos fallidos.
  • Mantener registros de la geolocalización, la dirección IP y las acciones que realiza cada usuario.
  • Supervisar las transacciones y aplicar una función de bloqueo de pagos para las transacciones sospechosas.
  • Enforce multi-step authentication for large transactions.
  • Garantizar la seguridad de la API y del servidor web.
  • Educar a los usuarios sobre contraseñas, uso compartido de dispositivos y prácticas de protección.
  • Siempre implemente procedimientos y pruebas de aseguramiento de la calidad.

Emplear protocolos de autenticación de usuarios

Dado que la autenticación de usuario proporciona la primera capa de seguridad, los métodos de autenticación de un factor, como contraseña / nombre de usuario, no siempre son los más seguros. Estos métodos de autenticación, aunque se utilizan ampliamente, no son convenientes ni seguros. CSO Online descubrió que el delito cibernético financiero costará $ 6 billones anuales para 2021, frente a $ 3 billones en 2015. Por lo tanto, es necesario implementar esquemas de autenticación más complejos, como 2FA o MFA. Tenga en cuenta que algunas técnicas de cifrado también pueden funcionar como métodos de autenticación y, dado que el cifrado no es opcional para las aplicaciones FinTech, por lo general también puede autenticarse mientras aplica el cifrado. Nos sumergiremos en esto más adelante.

• Autenticación de dos factores

La autenticación de dos factores requiere que el usuario de la aplicación verifique su identidad de dos formas diferentes antes de acceder a una cuenta. 2FA generalmente requiere un token entregado a través de un método al que solo puede acceder el usuario. Sin embargo, también son aceptables otros enfoques de segundo factor diferentes, como la biometría, las huellas dactilares o la retina. Cualquiera que sea el caso, el sistema debe validar ambos pasos de verificación antes de otorgar acceso a la aplicación. 2FA es un enfoque infalible para la seguridad en las aplicaciones de e-wallets porque garantiza que una contraseña comprometida no sea suficiente para acceder a los activos del usuario. Sin conocer el método y tener acceso al segundo factor, la contraseña es inútil y la cuenta está protegida. Algunos de los métodos 2FA más populares que los desarrolladores pueden aplicar son:

  • Token de SMS: un código de 5 a 10 dígitos que se envía al teléfono del usuario.
  • Token de correo electrónico: un código de 5 a 10 dígitos o un enlace que se envía al correo electrónico del usuario.
  • Token de software: el usuario instala una aplicación (como Duo Security o Google Authenticator) en su dispositivo móvil que genera tokens únicos.
  • Token de hardware: el usuario tiene un dispositivo que genera tokens.
  • Biometría: las características físicas del usuario son el token.

2FA se puede codificar y programar de forma independiente en su aplicación, pero las herramientas y plataformas, como Auht0, que usamos a menudo, brindamos este servicio. Auth0 aplica 2FA según el método que elija y le pide al usuario que use dichos tokens para acceder a su aplicación de billetera electrónica.

• Autenticación Multifactor (MFA)

MFA, por otro lado, combina dos o más protocolos de autenticación de usuario para otorgar acceso. En las e-wallets, MFA es útil cuando una transacción necesita más medidas de seguridad que van un paso más allá de 2FA. MFA compila los mismos procedimientos y principios que 2FA pero con factores adicionales que necesitan verificación. La mayoría de los desarrolladores de aplicaciones de billetera electrónica encuentran 2FA suficiente para la autenticación de usuarios.

• Tokens de Acceso

En el contexto de las soluciones de banca móvil, los desarrolladores utilizan tokens de acceso en la autenticación basada en token como barrera de seguridad para autenticar a los usuarios. Para FinTech, los tokens de acceso representan la aceptación de la autorización de una aplicación para acceder a partes específicas de los datos financieros de un usuario. Específicamente en las aplicaciones de billetera electrónica, se utilizan ampliamente para establecer una conexión entre la aplicación y un third-party API. Tenga en cuenta que su aplicación debe asegurar el almacenamiento de tokens de acceso para asegurarse de que no sean accesibles para otras aplicaciones en el mismo dispositivo.

Los tokens de acceso también ayudan a los usuarios a no tener que autenticarse nuevamente para cada solicitud al servidor. Sin embargo, son sensibles al tiempo, por lo que si el usuario cierra la sesión o se agota el período de tiempo utilizable, el token caduca. Estos marcos de tiempo habilitan protocolos de expiración de sesiones que protegen los datos del usuario de dispositivos perdidos o sesiones abiertas en establecimientos públicos.

Además, los tokens de acceso están en JWT standard, que también especifica a qué contenido puede acceder el usuario, cuánto tiempo dura ese permiso y qué puede hacer mientras está conectado a la aplicación. En Foonkey Monkey, a menudo programamos nuestros propios protocolos de token de acceso / JWT, pero también usamos Azure Ad y Okta para procesos de autenticación más seguros y económicos.

Imagen que represennta en uso de cifrado

Usar Cifrado

Como se indicó anteriormente, la confidencialidad y la integridad de los datos son dos de los pilares para hacer cumplir los protocolos de seguridad en las aplicaciones FinTech. La protección de datos no es opcional en las aplicaciones de billetera electrónica. De ahora en adelante, los métodos criptográficos son imprescindibles para evitar la interceptación, fuga y robo de datos.

• PKI

Como probablemente ya sepas, el propósito del cifrado es convertir los datos financieros compartidos o “texto sin formato” en caracteres aleatorios o “texto cifrado”. Uno de los métodos de cifrado más implementados es el cifrado de clave pública (PKI). PKI es útil en aplicaciones de monederos electrónicos porque proporciona una base confiable para asegurar transacciones electrónicas a través de aplicaciones financieras.

Además, sirve como un mecanismo de cifrado y un método de autenticación, por lo que es beneficioso para todas las partes desarrollar una aplicación segura de FinTech. Los sistemas de cifrado PKI constan de un par de claves con una clave secreta (clave privada) y una clave pública. En otras palabras, el remitente de los datos los cifra con una clave pública, y solo el receptor puede leer o descifrar ese mensaje con una clave privada. En consecuencia, dado que los datos solo se pueden descifrar con la clave privada y el destinatario es el único que la tiene, el acceso a los datos financieros está controlado y la confidencialidad está asegurada.

• Certificados SSL

Al igual que el cifrado PKI, los certificados SSL (Secure Sockets Layer) ayudan con la seguridad de los datos cuando están en tránsito y proporcionan autenticación criptográfica para evitar ataques. Los protocolos SSL utilizan métodos de cifrado asimétricos y simétricos para transferir datos de forma segura mediante la autenticación de las partes que se comunican y el cifrado del mensaje. Deben comprarse para proporcionar HTTPS a su aplicación de billetera electrónica. Los certificados SSL son aún más relevantes ahora debido a que Google impone el uso de HTTPS en todas partes. HTTPS sirve para identificar la autenticidad de un sitio y permite el cifrado de extremo a extremo de todas las comunicaciones entre la aplicación y el servidor. Son un método de encriptación útil para e-wallets porque aseguran los canales de transporte de la aplicación para transmitir datos financieros y tokens a un servicio de back-end.

Existen otros tipos de métodos y algoritmos de cifrado, como Triple DES, Blowfish, y FPE que utilizan claves simétricas (una) o asimétricas (dos) para el descifrado. JWT, como se indicó anteriormente, también puede ser una forma segura de transferir datos y puede ser encriptado o verificado mediante una firma digital.

Implementar tokens de pago (tokenización)

Los tokens de pago ayudan a reemplazar los datos confidenciales de pago almacenados con tokens o datos no confidenciales. Esta “tokenización” convierte la información de pago en una cadena de dígitos aleatorios sin valor. Los comerciantes reciben el token y lo almacenan en forma de token, sin saber nunca los datos reales detrás de él. Los tokens de pago solo son válidos en su contexto específico; en consecuencia, el token es inútil fuera de ese contexto. Una sola tarjeta de crédito puede tener varios tokens y usarse en varios dispositivos de forma segura.

Usa Blockchain

Desde su nacimiento, Blockchain ha sido una de las tecnologías más útiles para la seguridad de los servicios financieros. Usar Blockchain es una obviedad, principalmente si su aplicación trata con Bitcoin u otras criptomonedas. Para las aplicaciones de billetera electrónica, Blockchain es útil debido a su estructura inherentemente inviolable e inmutable. Según estudios el mercado global de blockchain alcanzará los $ 20 mil millones para 2024 y, a partir de 2020, el 69% de la industria bancaria estaba utilizando la tecnología blockchain. Este número no sorprende considerando sus beneficios para el sector financiero como un libro de contabilidad de acceso público para registrar transacciones digitales.

Para las aplicaciones FinTech, Blockchain ha aumentado la privacidad de los datos y su cifrado basado en hash La técnica se considera intransitable. Además, tiene una arquitectura descentralizada, que anula los riesgos de que las aplicaciones de terceros o los usuarios eliminen una entrada y rompan la cadena de seguridad. Dado que los individuos deben agregar bloques de datos en secuencia, están conectados en una red y forman una cadena irreversible, lo que significa que ninguna información puede ser modificada o borrada excepto por usuarios autorizados. De esta manera, los desarrolladores de aplicaciones FinTech pueden crear un ecosistema financiero y de pagos con todo incluido. Este ecosistema sigue siendo rápido, rastreable y asequible a la vez que protege los datos confidenciales de la cuenta, la información de transacciones y la información personal en todos los demás documentos compartidos en las aplicaciones de billetera electrónica.

En Foonkie Monkey utilizamos tecnologías Blockchain, especialmente Ethereum Blockchain, para desarrollar apps seguras, trazables y funcionales FinTech apps. Hyperledger, R3 Corda, y Dragonchain son otros tipos de herramientas de Blockchain con diferentes características pero preservan los principios de seguridad e inmutabilidad asociados con Blockchain.

Implementar técnicas de prueba adecuadas

Por último, debe asegurarse de que su aplicación de billetera electrónica se pruebe, no solo en las últimas etapas de su ciclo de vida, sino también durante las primeras etapas de la programación. Probar la seguridad de su aplicación es fundamental para identificar puntos débiles y fallas antes de iniciarla. Ya sea que decida realizar pruebas automáticas o manuales, asegúrese de aplicar procedimientos que detecten errores y errores en cada etapa de su proceso de desarrollo para reducir significativamente los costos de fallas y los problemas debidos a fugas de datos.

Además, utiliza técnicas adecuadas de Control de calidad (QA) para identificar y eliminar vulnerabilidades y verifica todas las debilidades en autenticación y autorización, técnicas de cifrado y todos los demás aspectos que se tratan en este artículo.

En Foonkie Monkey, a menudo trabajamos con herramientas de prueba automatizadas como Postman, Selenium, Cucumber, Serenity, Appium, y Azure DevOps para informar problemas, errores o consideraciones relacionadas con las pruebas de aplicaciones.

Lo que nos depara el futuro

Lo que nos depara el futuro

Como aprendimos anteriormente, las e-wallets y otras aplicaciones de pago móvil aún no se adoptan por completo a nivel mundial, y las principales razones están relacionadas con preocupaciones de seguridad. Aunque es todo un desafío, crear una aplicación de e-wallet segura y funcional será su insignia de ser una empresa de desarrollo confiable y ayudará a impulsar la industria hacia adelante. No solo eso, sino que hacer cumplir las prácticas de seguridad también le dará a su aplicación de billetera electrónica una ventaja distintiva sobre la competencia. Además, aunque sean obligatorios y necesarios, todos los mecanismos de seguridad descritos anteriormente deben ser inteligentes y ligeros. Deben promover la usabilidad y la eficiencia asociadas con las alternativas de pago móvil; Si usar la aplicación es más desafiante que simplemente abrir su billetera y sacar su tarjeta, es necesario volver a ensamblar los huesos de la aplicación.

En Foonkie Monkey, hemos desarrollado más de 200 aplicaciones, incluidas varias aplicaciones de FinTech y bancarias que siempre funcionan a altos niveles de operatividad y eficiencia mientras se ejecutan en protocolos seguros y protegidos. Trabajamos con tecnologías de vanguardia que nos ayudan a ofrecer una aplicación FinTech confiable, innovadora y segura. Todos nuestros enfoques de seguridad han garantizado la entrega exitosa de aplicaciones bancarias saludables a empresas como BSJI inc, Bancolombia, Davivienda, y el Banco Interamericano de Desarrollo.

No dudes en contactarnos si quieres que desarrollemos tu aplicación FinTech.

Hagamos algo grandioso