Alfiler

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 6 de mayo de 2015; las comprobaciones requieren 39 ediciones .

Código PIN ( Número de identificación personal en inglés   - número de identificación personal) - un análogo de una contraseña . Durante la autorización de la operación, se utiliza tanto como contraseña de acceso del titular de la tarjeta al terminal (cajero) como clave secreta para la firma digital de la solicitud. Se proporciona PIN para tarjetas de crédito y similares (por ejemplo, tarjetas SIM ); se usa para autorizartitular de la tarjeta El PIN solo debe ser conocido por el titular de la tarjeta. Por lo general, los intentos de ingresar correctamente son limitados (en su mayoría, no más de 3 veces), después de lo cual la tarjeta se bloquea para su uso. Muy a menudo, la abreviatura PIN se usa con el prefijo código, lo cual es incorrecto, ya que PIN es un número, y "número" y "código" son, de hecho, sinónimos. Este problema se llama síndrome RAS .

En los teléfonos móviles, para desbloquear el PIN, debe ingresar el llamado PUK (a veces llamado código PUC). En consecuencia, PIN1 requiere PUK1 y PIN2 requiere PUK2. Si el PUK se ingresa incorrectamente 10 veces, la tarjeta SIM se bloquea permanentemente.

En las aplicaciones bancarias, el PIN puede generarse utilizando los algoritmos IBM 3624 (un algoritmo criptográfico determinista que utiliza PAN como entrada) o verificarse utilizando el algoritmo VISA PVV. El segundo algoritmo, en principio, permite situaciones en las que no solo el único PIN establecido por el banco, sino varios otros (en el 40% de los casos) pueden pasar el cheque. En promedio, un valor de prueba de PVV puede corresponder a 1,58 PIN diferentes, por lo que la seguridad del sistema no disminuye por este efecto [1] [2] [3] .

En 2006, se lanzó el rumor de que ingresar un PIN en un cajero automático al revés llamaría automáticamente a la policía. En la práctica, tales sistemas, como el software ATM SafetyPIN , no se han utilizado [4] [5] [6] .

Historia

PIN fue desarrollado y patentado por el ingeniero escocés James Goodfellow en 1965. . Desarrolló un dispositivo para la emisión automática de dinero mediante la aceptación de una tarjeta de cartón (cuya información era un área marcada con carbono-14 radiactivo), que tenía un teclado para ingresar un PIN.

ISO 9564

La norma ISO 9564 es un estándar PIN internacional que define las disposiciones básicas para su uso.

Principios básicos para el uso de PIN:

La norma también establece algunas características del dispositivo de entrada de PIN:

Verificación

La verificación es una verificación de la correspondencia entre el código PIN y el número de tarjeta. Esta correspondencia no es uno a uno (baste recordar que la longitud del PIN puede ser de 4 dígitos, mientras que el número de dígitos del número de tarjeta es de 16). Además, diferentes valores de código PIN pueden corresponder a un número de tarjeta. El requisito para hacer coincidir el número de tarjeta y el código PIN es el siguiente: para un número de tarjeta arbitrario, el conjunto de valores de código PIN correspondientes a esta tarjeta debe ser tal que la probabilidad de adivinar este PIN sea baja. Hay dos métodos comunes de generación/verificación de PIN basados ​​en los algoritmos de PIN de IBM 3624 y VISA.

IBM 3624-desplazamiento

El algoritmo IBM 3624-Offset se creó para la primera generación de cajeros automáticos y, por lo tanto, se utilizó ampliamente.

La peculiaridad del método es que incluso el cajero automático apagado fue capaz de verificar el PIN sin necesidad de computadoras y almacenamiento para administrar bases de datos de registros de usuarios. En cambio, el PIN del cliente se puede generar a partir de un número de tarjeta encriptado con una clave secreta.

Algoritmo: se toma el número de la tarjeta (16 dígitos) y se cifra mediante DES. Después del cifrado, se descartan todos los dígitos excepto los cuatro primeros. Sin embargo, pueden ser valores ' A' - ' F' , que no son aceptables para el diseño de cajero automático estándar. Se aplica una tabla de decimalización a estos valores. El valor resultante se llama PIN Natural.

Tabla de decimilización:

0123456789ABCDEF

0123456789012345

Para obtener el valor del PIN, se suman los dígitos del PIN Natural módulo 10 con los dígitos correspondientes del valor del PIN Offset, que es una secuencia arbitraria de 4 dígitos. El valor de compensación de PIN puede escribirse en la banda magnética de la tarjeta o almacenarse en la base de datos del emisor.

Ejemplo:

Número de tarjeta 4556 2385 7753 2239

Número de tarjeta después del cifrado DES 3F7C 2201 00CA 8AB3

Según el algoritmo, dejamos los primeros cuatro dígitos 3F7C

Según la tabla de decimalización, obtenemos Natural PIN 3572

Compensación de PIN 4344

PIN definitivo 7816

La verificación del código PIN ingresado por el titular de la tarjeta se realiza mediante el Desplazamiento de PIN y el número de tarjeta. Es fácil ver que el valor del PIN está completamente determinado por el número de tarjeta y el valor de compensación del PIN. La probabilidad de adivinar el PIN en el primer intento es 0.0001 [8] .

Algoritmos VISA PVV

El algoritmo VISA es utilizado por muchos sistemas bancarios y es aplicable no solo a tarjetas tipo VISA.

Este algoritmo genera un PVV (valor de verificación de PIN) basado en el TSP (parámetro de seguridad transformado). PVV, similar a PIN Offset, se puede almacenar en la banda magnética de la tarjeta o en la base de datos del emisor. El usuario ingresa un código PIN, que es encriptado por el cajero automático y enviado a procesamiento con los datos de la tarjeta, donde el PVV se calcula en función del código PIN ingresado y se compara con el valor de la banda magnética.

El cálculo de PVV se realiza de acuerdo con el siguiente algoritmo:

Se basa en una cadena TSP de 64 bits, que tiene 16 caracteres hexadecimales, que incluye (de izquierda a derecha):

PAN 12 - 12 dígitos derechos[ ¿Qué? ] excepto por el dígito más a la derecha, que es el número de control.

PAN 12 se lee de izquierda a derecha.

PVKI ( índice de clave de verificación de PIN ): la clave de cifrado selecciona un número del 1 al 6

Código PIN - 4 dígitos

Ejemplo :

PAN: 1234 5678 9012 3445 PVKI: 1 PIN: 9090 TSP: 5678901234419090

TSP está encriptado con el algoritmo 3Des (longitud de clave efectiva de 112 bits). Después del cifrado, obtenemos una cadena con una longitud de 64 bits, lo que equivale a 16 caracteres hexadecimales. A continuación, se forma PVV:

La cadena hexadecimal se escanea de izquierda a derecha. Los dígitos decimales se seleccionan y almacenan en PVV hasta que se encuentran 4 dígitos.

Si se encuentran menos de cuatro dígitos después del primer escaneo, solo se seleccionarán dígitos hexadecimales durante el segundo escaneo, que se convierten a decimal restando 10.

Ejemplo :

Salida 3DES: 0FAB9CDEFFE7DCBA

PVV: 0975 (0, 9, 7, F=5)

La diferencia entre estos algoritmos radica en el hecho de que el algoritmo de IBM es un algoritmo para generar y verificar un código PIN, mientras que el algoritmo PVV determina solo la verificación [9] .

Seguridad

Con IBM 3624, cada número de tarjeta tiene un único valor de PIN.

Con el algoritmo VISA PVV, el PIN es una variable aleatoria y no depende del número de tarjeta. Es fácil calcular que en el caso de elegir un PIN para cada número de tarjeta según una ley equiprobable, este valor de PVV corresponde al menos a dos valores de PIN con una probabilidad del 42%. Al mismo tiempo, el número promedio de UDI correspondientes a un valor de PVV dado es 1,58. Es decir, al usar VISA PVV, la probabilidad de adivinar un código PIN es 1,58 veces mayor que en el caso de IBM 3624. Sin embargo, en cuanto a la cantidad requerida de enumeración de posibles PIN en orden, sigue siendo la misma. 

De acuerdo con los requisitos de los sistemas de pago internacionales, el valor del código PIN no debe almacenarse (ni siquiera de forma protegida) ni en los terminales de servicio ni en el hosting del emisor.

Existen varias posibilidades para que el emisor recupere el código PIN utilizando los datos que posee.

Si el PIN Offset/PVV se almacena en una banda magnética, el emisor obviamente no podrá recuperar el PIN. Por lo tanto, se recomienda el almacenamiento en una banda magnética y reduce la posibilidad de compromiso por parte del personal del banco.

Al almacenar el PIN Offset/PVV en la base de datos del banco utilizando el IBM 3624, el emisor puede calcular fácilmente el PIN de la tarjeta. En el caso del algoritmo VISA, el emisor puede seleccionar el valor del código PIN correspondiente al valor PVV almacenado en la base de datos enumerando 10.000 valores.

Vulnerabilidades

En 2002, los estudiantes de la Universidad de Cambridge descubrieron el ataque de la tabla de decimalización [8] .

El código PIN para tarjetas bancarias se genera cifrando el número de tarjeta. El número encriptado es un valor hexadecimal y se toman los primeros cuatro dígitos. Se utiliza una tabla de decimalización para convertir este valor a decimal convirtiendo A en 0, B en 1, etc. Estas tablas no se consideran módulos de hardware confidenciales y se pueden proporcionar junto con el número de tarjeta. Al manipular el contenido de la tabla, es posible aprender más sobre el significado del código PIN que al excluir combinaciones individuales. Por ejemplo, si se utiliza la tabla

0123456789ABCDEF

0000000100000000,

la coincidencia con el PIN 0000 confirmará que el PIN no contiene el número 7, lo que excluye más del 10 % de todas las combinaciones posibles. El promedio de intentos necesarios para adivinar el PIN es de 15.

Tarjeta SIM

Si el código PIN se ingresa incorrectamente tres veces , la tarjeta SIM se bloquea hasta que se ingresa el PUC ( Código de desbloqueo personal )  correcto , lo que proporciona diez intentos de ingreso. Si el PUC se ingresa incorrectamente, la tarjeta SIM se bloqueará permanentemente.

Si el PIN Offset/PVV está almacenado en una banda magnética, no será posible cambiar el PIN en el cajero automático, ya que cambiar el PIN resultará en un cambio en el PIN Offset/PVV. Cuando se almacena en la base de datos, no es un problema cambiar el PIN, porque en este caso los valores de compensación de PIN/PVV se calcularán para el nuevo PIN y se colocarán en la base de datos en lugar de los valores anteriores.

Código de bloqueo de la radio del coche

Muchas radios de automóviles utilizan un sistema de entrada de código después de un corte de energía total, cuyo objetivo es evitar el uso de equipos robados . El código de la autorradio viene asignado de fábrica o lo introduce el usuario en el momento de la instalación. Si el código se ingresa incorrectamente varias veces seguidas, la radio se bloquea por un tiempo o para siempre.

Notas

  1. I. M. Goldovsky. Datos interesantes de las biografías de los PIN o teoría de la probabilidad en la industria de las tarjetas de pago  // ADEMÁS. - 2009. - Nº 5 (451) . - Pág. 3-11. Archivado desde el original el 28 de diciembre de 2013.
  2. VISA PIN Algorithms z/OS V1R12.0 Cryptographic Services ICSF Application Programmer's Guide  SA22-7522-13 . IBM. Recuperado: 5 de diciembre de 2013.
  3. L. Padilla. Breaking VISA PIN  (Inglés) (2002-2009). Consultado el 5 de diciembre de 2013. Archivado desde el original el 15 de septiembre de 2013.
  4. ¿Es cierto que tecleando un código pin en un cajero automático, por el contrario, puedes llamar a la policía? / Asesoramiento de expertos / Tarjetas de plástico en Prostobank.ua . Consultado el 19 de agosto de 2015. Archivado desde el original el 17 de agosto de 2015.
  5. Cómo protegerse de los estafadores que roban nuestro dinero a través de los cajeros automáticos | Dinero personal | Dinero | Argumentos y hechos . Consultado el 5 de diciembre de 2013. Archivado desde el original el 9 de diciembre de 2013.
  6. Robin Sax. Se pueden evitar los asesinatos  ( 16 de septiembre de 2009). - Correo Huffington. Fecha de acceso: 5 de diciembre de 2013. Archivado desde el original el 7 de noviembre de 2012.
  7. https://www.pcisecuritystandards.org/documents/PCI_PIN_Security_Requirements.pdf . Fecha de acceso: 28 de diciembre de 2013. Archivado desde el original el 30 de diciembre de 2014.
  8. ↑ 1 2 http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-560.pdf . Consultado el 27 de diciembre de 2013. Archivado desde el original el 10 de octubre de 2013.
  9. http://pic.dhe.ibm.com/infocenter/zos/v1r12/index.jsp?topic=%2Fcom.ibm.zos.r12.csfb400%2Fcsfb4za0519.htm

Enlaces