Política de seguridad

Versión 0.3. Última actualización: 12 de marzo de 2020

1 POLÍTICA DE SEGURIDAD

Esta política de seguridad se relaciona con el servicio Revoke (el “Servicio”) operado por Atam ID Technologies Limited (“Revoke”, “nos”, “nosotros” o “nuestro”). Revoke es un nombre comercial de Atam ID Technologies Ltd. (“Atam”), una compañía registrada en la Comisión de Servicios Financieros de Jersey, número de registro 124314.

En Revoke, nos preocupamos profundamente por la privacidad y la seguridad. Esta política describe los pasos que hemos tomado para garantizar que cualquier información que almacenemos o transmitamos esté segura y protegida de manera adecuada. Utilizamos niveles avanzados de cifrado de datos en reposo y en tránsito en la capa de mensaje y transporte, entre los que se encuentran los siguientes:

  • Criptografía de Curva Elíptica, usando claves de Ed25519 y Curve25519
  • Encriptación autenticada con datos asociados (AEAD)
  • El protocolo criptográfico Diffie-Hellman
  • DNSSEC
  • HTTPS
  • Sealed Boxes
  • IPSec
  • Encriptación AES256
  • Certificados X509
  • BlakeB Hashing

2 DATOS PERSONALES

Tratamos los datos personales con mucho cuidado. Nos aseguramos de que todos los datos estén encriptados, cuando estén en su dispositivo, cuando se transmitan y cuando se almacenen con Revoke.

2.1 Aplicación móvil

Cada usuario tiene una clave privada única en su teléfono con el proceso de desencriptación. Esta Clave privada se deriva de la generación de números aleatorios. Una Clave pública correspondiente se utiliza para el cifrado. Estas claves se conocen como Par de claves. Para garantizar que el Par de claves sea completamente aleatorio e imposible de volver a generar, se requiere que el usuario realice acciones no predecibles ni reproducibles. Las acciones dependen del permiso del dispositivo y de la aplicación, pero incluyen uno o más de:

  • Entrada de sonido de micrófono
  • Entrada de cámara de video
  • Interacción de pantalla aleatoria (arrastrar, deslizar, tocar)
  • Lecturas del acelerómetro

2.1.1 Encriptación de datos en reposo

Todos los datos en el dispositivo de un usuario se encriptan utilizando la encriptación AES256, con una contraseña generada aleatoriamente. La contraseña para cada elemento de datos se cifra mediante una Clave pública adecuada. Los datos se desencriptan utilizando una Clave privada, a la que se accede con un PIN que debe ser definido por el usuario.

2.1.2 Cifrado de datos en tránsito

La información enviada a terceros y que contiene datos personales, restringidos o confidenciales está protegida y asegurada por certificados criptográficos. Los certificados se basan en el estándar X509, pero utilizan un formato json para permitir atributos extendidos que no son compatibles con el formato de certificado nativo x509. Además del cifrado en la capa de mensajes, HTTPS se utiliza para cifrar la capa de transporte entre todos los servicios.

3 API DE EMPRESA Y EMPAREJAMIENTO DE CLIENTES

Revoke proporciona una API para que las empresas consulten y coincidan con los registros de los clientes y así automatizar la respuesta a las solicitudes. Es esencial que no se divulguen datos personales como parte de este proceso y que los datos de los clientes de la empresa estén protegidos.

3.1 Emparejamiento de clientes

Todos los datos que la empresa le envía a Revoke se enmascaran y anonimizan mediante operaciones criptográficas para proporcionar un almacén de datos seguro sin comprometer datos personales del cliente o delicados datos comerciales de la compañía. El registro de un cliente de una empresa cliente consta de dos elementos principales:

Referencia única del cliente

Cada registro de la empresa requiere una referencia única que tenga relevancia en la base de datos de clientes de la empresa cliente. Esto es para proporcionar un mecanismo que permita vincular un registro de Revoke o una solicitud de protección de datos con un cliente real. Con el fin de proteger el campo de referencia del cliente, la empresa cifra los datos que incorporan su Clave privada Curve25519 utilizando una encriptación de caja secreta.  

 

3.1.1 Campos de criterios de emparejamiento

El registro del cliente contiene uno o más campos de emparejamiento. Un campo de criterios es una información única relacionada con el cliente final. Esto puede ser para elementos como “dirección de correo electrónico”, “nombre”, “apellido”, “código postal”, etc. La compañía puede proporcionar cualquier número de campos de emparejamiento en función del tamaño y tipo de datos de clientes que contengan sus sistemas. Antes de la transmisión, los datos del campo de emparejamiento están protegidos por dos rondas de Hash BlakeB. Esto garantiza que cualquier información confidencial, ya asea comercial o personal, esté completamente protegida contra cualquier uso indebido por parte de un tercero. El mecanismo de protección de datos de Revoke ofrece tres niveles fundamentales de seguridad:

  • No hay un método práctico para revertir el proceso de hash y recuperar los datos del cliente enviados a través de la API de Revoke.
  • Debido a que el proceso de codificación ocurre antes de que se transmitan los datos, Revoke no tiene acceso a la información que contienen y solo se preocupa por el emparejamiento de las solicitudes específicas que los usuarios envían a las compañías.
  • Como los datos de hash se mezclan con la Clave pública de la empresa, el resultado resultante es único entre una relación dada de cliente y empresa. La misma información del usuario (como la dirección de correo electrónico, el número de teléfono) tendrá valores de coincidencia resultantes muy diferentes para diferentes compañías de origen. Esto evita que se filtre la privacidad de la interacción de un usuario dado entre varias entidades diferentes de la compañía.

ALGORITMO DEL CAMPO DE EMPAREJAMIENTO

El siguiente algoritmo se implementa para proteger adecuadamente los datos confidenciales que la compañía le envía a Revoke:

  • Se crea un motor hash BlakeB y se siembra con la Clave pública Ed25519 de Revoke de 32 bytes obtenida a través de uno de los métodos de distribución de claves.
  • El motor hash BlakeB procesa una parte individual de los datos de emparejamiento, lo que da como resultado una salida de 32 bytes. Nota: para mayor consistencia y precisión en el emparejamiento, todos los datos deben traducirse en mayúsculas antes de que comience el proceso.
  • La Clave privada de la compañía KeyCurve25519 y la Clave pública de Revoke KeyCurve25519 se combinan utilizando una función de acuerdo de clave Diffie-Hellman, para generar así un secreto compartido de 32 bytes.

Nota: Para añadir seguridad, el valor del acuerdo de clave secreta sin procesar debe protegerse utilizando una función de derivación de clave (KDF), como un HMAC o un hash.

  • El secreto compartido computado se usa para sembrar un segundo motor hash BlakeB.
  • La salida del primer proceso hash en el paso 2 es procesada por el segundo motor hash BlakeB, lo que da como resultado un valor final de salida de 32 bytes. Este valor es la información que la compañía enviará a Revoke para procesar las solicitudes de coincidencia.

Notas: La salida secreta compartida, calculada como parte del proceso del Acuerdo de clave Diffe-Hellman (paso 3), es una constante y puede reutilizarse de manera segura en un proceso por lotes si las claves de la compañía y Revoke permanecen sin cambios. El proceso anterior tiene las siguientes ventajas:

  • El proceso se puede recrear en el servidor Revoke, lo que permite el cálculo previo de los resultados de una empresa determinada para mejorar el rendimiento de la respuesta.
  • Como el hash usa elementos de la Clave privada de la compañía, una compañía deshonesta no puede enviar solicitudes de investigación para ver si se ha registrado una dirección de correo electrónico a una compañía de terceros.

Los usuarios envían la misma información emparejada a Revoke utilizando un enfoque similar. La notable diferencia es que el proceso se divide en dos partes, con el dispositivo del usuario realizando el hash inicial con la Clave pública Revoke.

Los servicios de Revoke luego utilizan los datos enviados desde el dispositivo del usuario para realizar un cálculo previo de una tabla hash que contiene los datos relevantes para las compañías incorporadas. Este proceso utiliza la Clave privada Revoke y la Clave pública específica de la compañía para generar el mismo secreto compartido que usa la compañía.

El sistema de Revoke tomará todos los nuevos datos enmascarados que envían los usuarios y construirá un sistema de referencia adecuado para, de manera oportuna, permitir la búsqueda. De hecho, el sistema hará un precálculo de todos los resultados de emparejamiento o coincidencias potenciales entre el cliente y la base de usuarios de la empresa, todo esto en un almacenamiento de datos eficiente y totalmente seguro.  

3.2 TRANSPORTE DE COMPAÑÍA API

La solicitud se realiza a través de una comunicación HTTPS / SSL utilizando una simple llamada REST / SOAP. Cada solicitud enviada a la API de la compañía contiene lo siguiente:

  • Encabezados
    • Clave pública de la compañía: La Clave pública de la empresa emisora ​​se agrega como encabezado de solicitud.
    • La compañía emisora ​​utiliza su clave secreta para firmar el contenido de las solicitudes de carga útil o payload.
  • Carga útil o payload: Todas las solicitudes de carga útil incluyen una marca de fecha y hora UTC a milisegundos de precisión como parte del contenido firmado. Cualquier solicitud recibida fuera de una ventana de tiempo definida por el servidor será ignorada.

Las solicitudes de carga útil se cifran mediante el buzón secreto de encriptación, ya que esto elimina la necesidad de que la empresa realice un seguimiento y mantenga un número único utilizado una vez dado el valor.

App icon - download from the App Store and Google Play

Descargue Revoke hoy

Empiece a protegerse con Revoke, evite el abuso de datos.

Download on the App Store - icon Get it on Google Play - icon
Cyber Essentials certified logo

Certificación Cyber Esencial

Nos tomamos en serio la seguridad, por eso hemos sido evaluados y certificados para abordar la ciberseguridad de manera efectiva y mitigar el riesgo de las amenazas que acechan en internet.