Token (informática)

(Redirigido desde «Token (programación)»)

La tokenización, cuando se aplica a la seguridad de los datos, es el proceso de sustitución de un elemento de datos sensible por un equivalente no sensible, denominado token, que no tiene un significado o valor extrínseco o explotable. El token es una referencia (es decir, un identificador) que regresa a los datos sensibles a través de un sistema de tokenización. El mapeo de datos originales a un token utiliza métodos que hacen que los tokens no sean factibles de revertir en ausencia del sistema de tokenización, por ejemplo, utilizando tokens creados a partir de números aleatorios. El sistema de tokenización debe ser asegurado y validado utilizando las mejores prácticas de seguridad aplicables a la protección de datos confidenciales, el almacenamiento seguro, la auditoría, la autenticación y la autorización. El sistema de tokenización proporciona a las aplicaciones de procesamiento de datos la autoridad y las interfaces para solicitar tokens o destokenizar datos sensibles.

Los beneficios de seguridad y reducción de riesgos de la tokenización requieren que el sistema de tokenización esté lógicamente aislado y segmentado de los sistemas y aplicaciones de procesamiento de datos que anteriormente procesaban o almacenaban datos confidenciales reemplazados por tokens. Solo el sistema de tokenización puede tokenizar datos para crear tokens, o destokenizar de nuevo para canjear datos confidenciales bajo estrictos controles de seguridad. Se debe demostrar que el método de generación de tokens tiene la propiedad de que no hay medios viables a través de ataques directos, criptoanálisis, análisis de canales laterales, exposición de tablas de mapeo de tokens o técnicas de fuerza bruta para revertir los tokens a datos en vivo.

Cuando los tokens sustituyen a los datos activos en los sistemas, el resultado es una exposición mínima de los datos confidenciales a esas aplicaciones, almacenes, personas y procesos, lo que reduce el riesgo de exposición accidental y de acceso no autorizado a los datos confidenciales. Las aplicaciones pueden funcionar utilizando tokens en lugar de datos en tiempo real, con la excepción de un pequeño número de aplicaciones de confianza explícitamente autorizadas a destokenizar cuando sea estrictamente necesario para un fin comercial aprobado. Los sistemas de Tokenización pueden ser operados internamente dentro de un segmento aislado y seguro del centro de datos, o como un servicio de un proveedor de servicios seguro.

La Tokenización puede ser utilizada para salvaguardar datos sensibles que involucren, por ejemplo, cuentas bancarias, estados financieros, registros médicos, antecedentes penales, licencias de conducir, solicitudes de préstamos, transacciones bursátiles, registros de votantes y otros tipos de información personal identificable (PII, por sus siglas en inglés). La Tokenización se utiliza a menudo en el procesamiento de tarjetas de crédito. El Consejo de la Industria de Tarjeta de Pago (PCI, por sus siglas en inglés) define el tokenización como "un proceso por el cual el número de cuenta primario (PAN) es reemplazado por un valor sustituto llamado token. La destoquización es el proceso inverso de canjear un token por su valor PAN asociado. La seguridad de una ficha individual se basa predominantemente en la imposibilidad de determinar el PAN original conociendo solo el valor sustitutivo". La elección de una ficha como alternativa a otras técnicas tales como el cifrado dependerá de los diversos requisitos reglamentarios, la interpretación y la aceptación por parte de las respectivas entidades de auditoría o evaluación. Esto se suma a cualquier restricción técnica, arquitectónica u operativa que la simbología imponga en la práctica.

Conceptos y orígenesEditar

El concepto de "tokenización", tal y como lo adopta hoy en día la industria, ha existido desde que surgieron los primeros sistemas monetarios hace siglos como medio para reducir el riesgo en el manejo de instrumentos financieros de alto valor, sustituyéndolos por equivalentes sustitutivos. En el mundo físico, las fichas de moneda tienen una larga historia de uso en sustitución del instrumento financiero de las monedas y billetes acuñados. En una historia más reciente, las fichas de metro y las fichas de casino fueron adoptadas por sus respectivos sistemas para reemplazar la moneda física y los riesgos de manejo de efectivo, como el robo. Exonumia y dinero de emergencia son términos sinónimos de tales fichas.

En el mundo digital, desde los años 70 se han utilizado técnicas de sustitución similares para aislar los elementos de datos reales de la exposición a otros sistemas de datos. En las bases de datos, por ejemplo, se han utilizado valores claves artificiales desde 1976 para aislar los datos asociados con los mecanismos internos de las bases de datos y sus equivalentes externos para una variedad de usos en el procesamiento de datos. Más recientemente, estos conceptos se han ampliado para considerar esta táctica de aislamiento con el fin de proporcionar un mecanismo de seguridad a los efectos de la protección de datos.

En la industria de las tarjetas de pago, la conversión a token es un medio de proteger los datos sensibles de los titulares de las tarjetas para cumplir con los estándares de la industria y las regulaciones gubernamentales.[1]

En 2001, TrustCommerce creó el concepto de Tokenización para proteger los datos de pago sensibles de un cliente, classmates.com.[2]​ Contrataron a TrustCommerce porque el riesgo de almacenar los datos del titular de la tarjeta era demasiado grande si sus sistemas eran pirateados. TrustCommerce desarrolló TC Citadel®, donde los clientes podían referenciar un token en lugar de los datos del titular de la tarjeta y TrustCommerce procesaba un pago en nombre de los comerciantes.[3]​ Esta aplicación de facturación segura permite a los clientes procesar pagos recurrentes de forma segura y sin necesidad de almacenar la información de pago del titular de la tarjeta. La tokenización reemplaza el número de tarjeta bancaria (siglas en inglés, PAN) con tokens seguros generados aleatoriamente. Si se interceptan, los datos no contienen información del titular de la tarjeta, lo que los hace inútiles para los hackers. El Número de Tarjeta Bancaria no puede ser recuperado incluso si el testigo y los sistemas en los que reside están comprometidos, ni tampoco puede el testigo ser sometido a ingeniería inversa para llegar al PAN.

EjemploEditar

Supongamos la siguiente línea de un programa:

  SI Nuevo > MaxNúm ENTONCES

Los tókenes son:

  * "SI"
  * "Nuevo"
  * ">"
  * "MaxNúm"
  * "ENTONCES"

Y se describen por lo general en dos partes, un tipo o clase y un valor, así: Token=(Tipo,Valor)

Para la secuencia anterior, los tókenes pueden describirse

  * [Palabra Reservada, "SI"]
  * [Identificador, "Nuevo"]
  * [Operador, ">"]
  * [Identificador, "MáxNúm"]
  * [Palabra Reservada, "ENTONCES"]
  

Véase tambiénEditar

  1. «"Tokenization eases merchant PCI compliance"». Archivado desde el original el 2012-11-03. Consultado el 2013-03-28.  Parámetro desconocido |url-status= ignorado (ayuda)
  2. «Where Did Tokenization Come From?». TrustCommerce (en inglés estadounidense). Consultado el 2017-02-23. 
  3. «TrustCommerce». 2001-04-05. Archivado desde el original el 2001-04-05. Consultado el 2017-02-23.  Parámetro desconocido |url-status= ignorado (ayuda)