(Revolution Team) Servicio de tokenizacion de datos para Data Scientists
El equipo Revolution Team compuesto por Rafael, Pablo y Matteo y mentorizados por Ángel, implementaron durante su participación en la iniciativa Onesait Plaform una aplicación completa para tokenización de datos para data scientists basándose por completo en capacidades de la plataforma.
El reto:
A la hora de manejar información confidencial de sistemas externos propietarios, los analistas de datos o desarrolladores se encuentran en muchas ocasiones con restricciones de acceso y uso de los mismos. Recurren entonces a datos sintéticos o de prueba, que normalmente no reflejan toda la casuistica presente en los datasets originales, para realizar la implementación de sus algoritmos y desarrollos.
Esto provoca que los resultados obtenidos no sean los correctos y conlleva realizar múltiples iteraciones hasta conseguir el desarrollo adecuado (provocando retrasos en la fase de productización).
Para ello, desarrollan la aplicación Tokenify que permitirá, dado un fichero de datos seleccionar qué campos debén ser transformados a valores tokenizados y realizar su transformación, obteniendo como resultado otro fichero con los campos tokenizados.
Para aportar mayor flexibilidad, Tokenify proporciona 3 métodos de tokenización:
- FPE, format-preserving encryption, que transforma los valores mediante cifrado pero preserva el formato original de los datos para que mantengan las propiedades que permite verificar la idoneidad de los algoritmos.
- AES, cifrado simétrico, que también utiliza cifrado pero no preserva el formato. Esta técnica de tokenización es más segura pero menos conveniente.
- Random map, que utiliza una técnica trivial de ofuscación. Es la técnica menos segura pero la más rápida en términos computacionales.
Las funcionalidades incorporadas a la aplicación son:
- Recepción de ficheros para tokenizar (en esta primera versión .CSV).
- Elección de campos sensibles, y de la técnica de tokenización a aplicar.
- Tokenización conforme a las tres técnicas descritas.
- Entrega de la clave utilizada en el proceso para permitir al usuario revertir el proceso.
- Dashboard de plataforma para el seguimiento de actividad.
Componentes de la plataforma
Modulos principales:
- Identity SSO: Se utilizan los servicios de autenticación proporcionados por plataforma. El protocolo utilizado es Oauth2.
- Flow Engine: Define el flujo de negocio e integra los algoritmos en el flujo de negocio.
- Semantic Models: Se ha creado un modelo de datos para almacenar la información de uso de la aplicación por usuario.
- Notebooks: La implementación de los 3 métodos de tokenización se ha realizado mediante notebooks de plataforma, utilizando el interprete Python. Su integración se realiza mediante la interfaz REST que proporciona plataforma.
- API Manager: Disponibiliza los servicios REST que implementan la funcionalidad. Además proporciona un API REST de acceso a los datos de auditoría de la utilidad.
- DataHub – Binary Repositoy: Permite aislarse del sistema de ficheros y delega toda su gestión a la Plataforma. Además, en este caso es especialmente útil ya que añade la posibilidad de compartir el fichero tokenizado entre distintos usuarios autorizados.
- Dashboards: Los datos generados por la ontología se muestran en un dashboard construido en plataforma. Estos dashboards son exportables como formato imagen y pdf.
- Web Projects: El interfaz web desarrollado se encuetra desplegado en plataforma utilizando el módulo Web Projects.
- Marketplace: La aplicación se ha disponibilizado como recurso en el market de plataforma para hacerla accesible a los posibles usuarios.
Lo que han conseguido:
- Repositorio Git: Donde se puede encontrar tanto el codigo de la Aplicación web, como el Notebook que implementa los algoritmos.
- Servicios REST desplegados en plataforma (Entorno lab de plataforma):
- Subida de ficheros.
- Obtención de atributos contenidos en el fichero.
- Tokenización de ficheros y obtención de enlaces de descarga.
- Aplicación Tokenify, desplegada en el módulo Web Projects de Onesait Platform y disponible en el lab de plataforma.
- Aplicación Android accesible en el marketplace de plataforma.
- Dashboard de plataforma: https://lab.onesaitplatform.com/controlpanel/dashboards/view/7645fe9d-5f9a-4e11-a729-f369829c1f6d