Código de control

Código de control

El código de control es un mecanismo de detección de errores utilizado para verificar la corrección de un dato, generalmente en soporte informático. Los dígitos de control se usan principalmente para detectar errores en el tecleo o transmisión de los datos.

Generalmente consisten en uno o más caracteres numéricos o alfabéticos añadidos al dato original y calculados a partir de éste mediante un determinado algoritmo. Algunos de los ejemplos de uso frecuentes son los números de identificación personal, códigos de barras, tarjetas de crédito y códigos bancarios.

Contenido

Denominación

No existe unanimidad en la denominación de esta técnica en el mundo hispanoparlante. La traducción directa del inglés check digit sería dígito de chequeo, de verificación o de control. Estas denominaciones solamente son aplicables cuando se trata, efectivamente, de uno o varios dígitos y no de otros caracteres. Más correctas son las variantes carácter de chequeo, de verificación o de control, aunque ésta última tiene otro significado específico en el contexto de la informática. También son aplicables código de control (la forma más usada de entre las correctas), de chequeo o de verificación, aunque esta última expresión se refiere casi siempre a técnicas para filtrar el acceso a páginas web, como los captcha.

Utilización

Es utilizado normalmente en representaciones numéricas que exijan integridad, como por ejemplo:

Cálculo del dígito verificador

El método de cálculo de esos dígitos varía conforme el caso. Sin embargo, muchos de ellos se basan en dos rutinas tradicionales: Módulo 11 y Módulo 10.

Módulo 11

El método denominado módulo 11 detecta errores en un solo dígito e intercambios simples o dobles. Se basa en aplicar un factor de chequeo ponderado a cada dígito del número original. El cálculo se realiza como sigue:[1]

  1. A cada dígito del número base se le asigna un factor de chequeo ponderado. Dicho factor será 2 para el dígito menos significativo (el que está más a la derecha) y, en orden, 3, 4, 5, 6, 7 para los siguientes. Si hubiera más de 6 dígitos la secuencia se repetiría de modo que el octavo dígito se multiplicaría por 2, el noveno por 3, etc.
  2. Cada dígito del número base se multiplica por el factor de chequeo asignado.
  3. Se suman los resultados de todas las multiplicaciones.
  4. Al resultado de la suma se le calcula el módulo 11 (de ahí el nombre del método), es decir, el resto de la división entera entre 11.
  5. A 11 se le resta el módulo calculado en el punto anterior. Si el resultado de la resta es < 10, dicho resultado es el dígito de control que buscábamos. Si el resultado es 11 el dígito de control es 0. Si el resultado es 10 el dígito de control resultante no puede utilizarse.

El siguiente esquema desarrolla un ejemplo de cálculo:

Número ejemplo: 41261533-?

Pasos 1 y 2
        +---+---+---+---+---+---+---+---+   +---+
        | 4 | 1 | 2 | 6 | 1 | 5 | 3 | 3 | - | ? |
        +---+---+---+---+---+---+---+---+   +---+
          |   |   |   |   |   |   |   |
         x3  x2  x7  x6  x5  x4  x3  x2
          |   |   |   |   |   |   |   |
        =12  =2 =14 =36  =5 =20  =9  =6

Paso 3   12  +2 +14 +36  +5 +20  +9  +6 = 104

Paso 4   104 mod 11 = 5     (ya que 104 = 11 x 9 + 5)

Paso 5   11 - 5 = 6

Resultado = 41261533-6

A veces se usan variantes, como sustituir el resultado por una letra cuando el resultado es 10. Por ejemplo, en Chile el Rol Único Nacional (RUN) y el Rol Único Tributario (RUT) utilizan este sistema y cuando el resultado del algoritmo es 10 el carácter de control es la letra "K".

Módulo 10

Conforme al esquema de abajo, cada dígito del número, comenzando de la derecha para la izquierda (menos significativo para el más significativo) es multiplicado, en orden, por 2, después 1, después 2, después 1 y así sucesivamente.

Número ejemplo: 261533-4

  +---+---+---+---+---+---+   +---+
  | 2 | 6 | 1 | 5 | 3 | 3 | - | 4 |
  +---+---+---+---+---+---+   +---+
    |   |   |   |   |   |
   x1  x2  x1  x2  x1  x2
    |   |   |   |   |   |
   =2 =12  =1 =10  =3  =6
    +---+---+---+---+---+-> = (16 / 10) = 1, resto 6 => DV = (10 - 6) = 4 

En vez de ser hecha la sumatoria de las multiplicaciones, será hecha la sumatoria de los dígitos de las multiplicaciones (si una multiplicación da 12, por ejemplo, será sumado 1 + 2 = 3).

La sumatoria será dividida por 10 y si el resto (módulo 10) es diferente de cero, el dígito será 10 menos este valor. En caso que el resto sea cero, ese será el dígito verificador.

Estas condiciones finales, sin embargo, podrán ser alteradas conforme el caso.

Véase también

Notas

  1. «Modulus 11» (en inglés). HP Data Entry and Forms Management System (VPLUS) Reference Manual: HP 3000 MPE/iX Computer Systems. Hewlett Packard. 

Enlaces externos

Wikilibros

Algoritmo para el Calculo del Digito Verificador del Registro Unico de Contribuyente (R.U.C. - Paraguay) http://www.set.gov.py/pset/hgxpp001?6,18,273,O,S,0,PAG;CONC;287;4;D;370;1;PAG;MNU;E;103;5;MNU;,


Wikimedia foundation. 2010.

Mira otros diccionarios:

  • Código de identificación fiscal — El Código de identificación fiscal ( CIF ) ha sido hasta 2008 el nombre del sistema de identificación tributaria utilizada en España para las personas jurídicas o entidades en general según regula el Decreto 2423/1975, de 25 de septiembre. Este… …   Wikipedia Español

  • Código de barras — EAN13 El código de barras es un código basado en la representación mediante un conjunto de líneas paralelas verticales de distinto grosor y espaciado que en su conjunto contienen una determinada información. De este modo, el código de barras… …   Wikipedia Español

  • Código Gray — de dos bits 00 01 11 10 Código Gray de tres bits 000 001 011 010 110 111 101 100 Código Gray de cuatro bits 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111 1110 1010 1011 1001 1000 El código binario reflejado o código Gray, nombrado así en …   Wikipedia Español

  • Control del bucle while do — Saltar a navegación, búsqueda Controla el bucle while o bucle mientras es una estructura de la mayoría de los lenguajes de programación estructurados cuyo propósito es repetir un bloque de código mientras una condición se mantenga verdadera.… …   Wikipedia Español

  • Código cuenta cliente — El Código Cuenta Cliente (CCC) es un código utilizado en España por las entidades financieras (bancos y cajas) para la identificación de las cuentas de sus clientes. Consta de veinte dígitos. Contenido 1 Estructura del CCC 1.1 Dígitos de control… …   Wikipedia Español

  • Control de versiones — Una versión, revisión o edición de un producto, es el estado en el que se encuentra dicho producto en un momento dado de su desarrollo o modificación. Se llama control de versiones a la gestión de los diversos cambios que se realizan sobre los… …   Wikipedia Español

  • Código Lyoko — Code Lyoko Logo de Código Lyoko Título Código Lyoko Género Ficción Creado por Thomas Romain y Tania Palumbo …   Wikipedia Español

  • Código de aeropuertos de OACI — Bandera de la OACI. El Código de aeropuertos de OACI es un código de designación de aeropuertos compuesto de cuatro caracteres alfanuméricos que sirve para identificarlos alrededor del mundo. Dichos códigos son definidos por la Organización de… …   Wikipedia Español

  • Código de operación — En informática, un opcode (operation code) o código de operación, es la porción de una instrucción de lenguaje de máquina que especifica la operación a ser realizada. Su especificación y formato serán determinados por la arquitectura del conjunto …   Wikipedia Español

  • Código de canal — En un canal de comunicaciones la información enviada está afectada por desvanecimientos evitando alcanzar el nivel de señal adecuado para obtener una relación señal a ruido (s/n) suficiente para recuperar la información sin errores. Con el fin de …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”