inicio
salta!
archivo
categorias
fotoblog
tumblelog
sa.bros.us
últimos comentarios
contacto
acerca
 
 
 
entradas
comentarios
fotoblog
Agregar a Feedness
 
buscar

Agrega b3co.com al firefox
 
 
 
 
 

la lista completa
 
 
 

 Bitacoras.com

Blogalaxia

Licencia de los textos:

Creative Commons License


Licencia de las fotografias:

Creative Commons License
 
Dígito verificador
El dígito verificador, también conocido como dígito de control es una aplicación sumamente sencilla de la teoría de números, de hecho decir que es parte de la teoría de números puede llegar a ser mucho decir.

Imagina que podrias constatar la validez de cualquier serie de números con información contenida en el mismo número. O sea un sistema de validación redundante o contenida. Es decir, podrías saber si algún teléfono que te dan es correcto, o el número de cuenta para hacer un depósito, un teléfono (ejemplos hipotéticos todos). Este sistema de dígito verificador es sumamente usado en referencias bancarias tarjetas de crédito, cheques, cuenta CLABE y en varios sistemas bancarios y comerciales.

Toda esta parafernalia se reduce a una regla sumamente sencilla y (en caso necesario) alguna llave. A continuación explco:

Actualmente para pagar el teléfono, los préstamos, cablevisión (sky,...), l te dan un número de cuenta y un número de referencia, es decir, un id único para ese pago. Imagina el problema en el que te metes si depositas a la misma cuenta pero con otro número de referencia, con la burocracia que existe, tus nietos serían los que llegarían a solucionar el problema (y probablemente no a tu favor). ¿O no? Pues en vista a evitar estas soluciones se utiliza ampliamente el sistema de dígito verificador. No sé y realmente no creo que sea muy importante conocer los orígenes sino su utilidad.

Imagina que tienes que pagar el teléfono a la cuenta ### (no importa) con la referencia 123455 (a veces no lo vemos, pero (casi) siempre en el recibo aparece la referencia), sabes que tu cuenta es la 12345, entonces ¿qué chingados es es último 5? Pues muy fácil, es el mentado dígito verificador que corresponde a la siguiente regla:

(n1 + n2 + n3 + n4 + n5) % 10


Es decir: la sumatoria de todos los dígitos módulo (o residuo) 10, o n6 = sum(i=1,5,ni)%10. Es decir, si se altera (por equivocación, escribes mal o te lo dicen mal) cualquier número de esta secuencia (123455) es muy difícil (o poco probable) conseguir una secuencia correcta, por ejemplo estos ejemplos:

- 124565 mal pues (1 + 2 + 4 + 5 + 6) % 10 = 8, no 5
- 123456 mal pues (1 + 2 + 3 + 4 + 5) % 10 = 5, no 6
- 122345 mal pues (1 + 2 + 2 + 3 + 4) % 10 = 2, no 5
- 123454 mal pues (1 + 2 + 3 + 4 + 5) % 10 = 5, no 4

De esta forma se consigue un primer filtro de verificación sumamente sencillo y barato, no es necesario comprobar el dato contra ningún servidor (en un sistema distribuido) pues cualquier cliente (terminal tonta, javascript, incluso windows, jejeje) puede corroborar que el dato sea válido (puede no ser correcto mas ser válido, pero esa es otra historia).

La regla que aqui expuse es sumamente sencilla: sum(i=1,k,ni)%10, pero para hacerla un poco más rubusta es necesario hacerla un poco más compleja, hacer una multiplicación o lo que sea, por ejemplo:

- (sum ( i=1,k,ni) × 45673628764) % 1345 (por poner cualesquiera dos números)
- sum(i=1,k,ni) % k
- ...

Y más aún, si a cualqueir serie de números le ponemos más de un dígito verificador, la posibilidad de error se reduce exponencialmente, lo cual es mucho muy confiable.

Cabe mencionar que aplicaciones para esto no reciden exclusivamente en sistemas de paga, sistemas bancarios, pues si el sistema de generación de números es suficientemente robusto, pueden ser utilizados incluso para generación de llaves.

Si les interesó, échenle un ojo al mentado checksum, el cual es este mismo sistema de validación de información aplicado a archivos electrónicos, verifica la integridad de cualqueir tipo de archivo, muy usado para archivos compresos con zip, tar, rar, ...  
 
EnvÌa a: del.icio.us enchÌlame
Envía este artículo a un amigo
Funcionalidad en fase b3ta
su email:
tu nombre:
comentario (opcional):
 
Comentarios (4)...
 
#1 »Grajeda hace 18 meses [22-01-07 11:56:08] escribió:
esto lo vi en clase de algebra superior hace ya bastante tiempo


eso y cosas para los codigos de barras...
...pero también ha comentado por aca →
 
#2 »Paulo Portillo hace 17 meses [1-02-07 08:52:59] escribió:
como calculo el numero verificador de un checksum modulo 12 del numero 10311168
...pero también ha comentado por aca →
 
#3 »beco hace 17 meses [1-02-07 11:51:06] escribió:
Como se dice arriba, sumas todos los digitos del numero en cuestion, y luego divides (a mano) entre 12 y el número que buscas es el residuo de esa división.
...pero también ha comentado por aca →
 
#4 »Zoom hace 1 mes [2-06-08 09:43:14] escribió:
Como lo puedo hacer si a lo que necesito sacarle el digito verificador lleva caracteres tipo char ejemplo

MT00CR-IM-1005882008188
...pero también ha comentado por aca →
 
Hazte leer...
 
nombre:
mail:
web site:
comentario: (consejos)
Suscribirme a la conversación. Sin SPAM, créeme, odiamos el spam.
 
Este es un espacio abierto, puedes escribir lo que gustes respetando los siguientes puntos:
1.- Lo que escribas esté relacionado con el post, si gustas contactarme puedes hacerlo aqui.
2.- Todo es cuestionable, aunque ten en cuenta que existen formas de hacerlo, evita las agresiones.
3.- Siempre hay tres verdades: tu verdad, mi verdad y la verdad, por lo que opiniones diferentes no necesariamente son equivocadas.
4.- Los comentarios son una forma de discusión abierta, por lo que al publicar uno, implícitamente entras a una discusión, con todo lo que esto representa (ser debatido, ser cuestionado, se te responda) por cualquier persona.
5.- Recuerda que puedes usar html, para poner una liga escribe:
<a href="http://loquesea.com/articulo_hido.html">Artículo chido</a>.
6.- Si quieres que cada vez que escribas aparezca un avatar con la imagen que gustes, como este:

lee este artículo.
7.- Me reservo el derecho de modificar la aplicación de mi política acerca del rel=nofollow, una cosa es dar la mano y otra que te agarren hasta las amígdalas...
Por si se te hizo tarde…
» Rulfo y Borges  [7]
» Auto off  [5]
» Remember The Milk  [9]
» La exposición  [11]
» Arrieros somos...  [15]
» Reducción al absurdo [corregido]  [6]
» ¿Qué tan seguro es tu password?  [7]
» La Casa de Cristal  [2]
» «Por favor»  [11]
» Evitar la «A»  [12]
» Bokeh Magazine  [2]
» Sants  [12]
» AVE beta tester  [11]
» Coreografía  [16]
» Puede pasar...  [37]

--


¿Qué es esto?
Estás leyendo el blog (o bitácora) personal de beco, en donde periódicamente escribo cualquier cantidad de tonterías que me interesan, sobre todo de internet, matemáticas, fotografía, algo de código y muchas, muchas pendejadas.

Puedes buscar, saltar, revisar las categorías o quitar el polvo de los archivos cronológicamente ordenados.

Puedes suscribirte a los nuevos contenidos de este sitio via RSS agregando esta liga a tu lector preferido de feeds, o si lo prefieres, puedes suscribirte agregando aqui tu dirección de correo electrónico para que te lleguen automáticamente las actualizaciones. Puedes dejar tu dirección de correo tranquilo, créeme, aqui odiamos el spam.


M + 113