ES2286248T3 - Metodo y aparato para la creacion de un documento de auto-autenticaci on. - Google Patents

Metodo y aparato para la creacion de un documento de auto-autenticaci on. Download PDF

Info

Publication number
ES2286248T3
ES2286248T3 ES02722489T ES02722489T ES2286248T3 ES 2286248 T3 ES2286248 T3 ES 2286248T3 ES 02722489 T ES02722489 T ES 02722489T ES 02722489 T ES02722489 T ES 02722489T ES 2286248 T3 ES2286248 T3 ES 2286248T3
Authority
ES
Spain
Prior art keywords
text
document
symbol
error correction
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES02722489T
Other languages
English (en)
Inventor
John Duffell
Laurence O'toole
Thomas Martin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AUTHENTICON Ltd
Original Assignee
AUTHENTICON Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AUTHENTICON Ltd filed Critical AUTHENTICON Ltd
Application granted granted Critical
Publication of ES2286248T3 publication Critical patent/ES2286248T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32128Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title attached to the image data, e.g. file header, transmitted message header, information on the same page or in the same computer file as the image
    • H04N1/32133Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title attached to the image data, e.g. file header, transmitted message header, information on the same page or in the same computer file as the image on the same paper sheet, e.g. a facsimile page header
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3233Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of authentication information, e.g. digital signature, watermark
    • H04N2201/3236Details of authentication information generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3269Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of machine readable codes or marks, e.g. bar codes or glyphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3271Printing or stamping

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Ticket-Dispensing Machines (AREA)
  • Document Processing Apparatus (AREA)
  • Inspection Of Paper Currency And Valuable Securities (AREA)
  • Printers Characterized By Their Purpose (AREA)
  • Character Discrimination (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Método de producción de un documento impreso de auto-autenticación que contiene texto que tiene la capacidad de que todo el contenido del texto pueda autenticarse mediante referencia al documento impreso, comprendiendo el método: (i) proporcionar texto electrónico que está destinado a estar contenido dentro del documento; (ii) generar un valor de verificación de texto electrónico, representativo de todo el contenido de dicho texto electrónico; (iii) generar uno o más códigos de corrección de errores para dicho texto electrónico; y (iv) generar un símbolo legible por máquina, representativo de dicho valor de verificación de texto y de dicho código o códigos de corrección de errores; en el que el símbolo legible por máquina está adaptado para la incorporación dentro del documento cuando éste se imprime.

Description

Método y aparato para la creación de un documento de auto-autenticación.
La presente invención se refiere a un método y aparato para la creación de un documento impreso de auto-autenticación que presenta la capacidad inherente de que el contenido total del documento puede autenticarse en cualquier momento únicamente mediante referencia al propio documento. Esta autenticación se realiza para detectar si se ha realizado algún cambio en el documento.
La velocidad del crecimiento de la economía mundial es superada considerablemente por el ritmo al que el fraude está aumentando y muchos tipos diferentes de documentos son propensos a una manipulación fraudulenta y cambio de la información impresa en el documento. Una proporción importante de esta actividad fraudulenta está asociada con documentos de papel y se ha dirigido un esfuerzo considerable a desarrollar diversos métodos para producir papel seguro para contrarrestar esto, tal como marcas de aguas, y hologramas, sobreimpresión de seguridad, etc. Sin embargo, la utilización de papel especialmente protegido puede no ser a menudo práctico o de coste justificable. En cualquier caso, es la información impresa sobre el papel lo que necesita protegerse.
Ya que prácticamente toda la información impresa en la actualidad se genera a través de algún tipo de sistema informático, actualmente existe la posibilidad de utilizar y extender al documento impreso las técnicas de seguridad de la información empleadas en el entorno electrónico, en el que la seguridad de la información se ha disparado con el desarrollo de sistemas criptográficos, infraestructuras de clave privada/pública, firmas digitales, terceros de confianza, certificados digitales, etc.
La barrera para trasladar cualquiera de estas técnicas electrónicas al documento de papel impreso ha sido la necesidad de realizar impresiones y escaneos sin las imperfecciones que estas técnicas introducen al cruzar el límite electrónico/físico. En particular, es muy poco probable conseguir el movimiento de los datos desde la página impresa hacia el dominio digital electrónico sin que se produzca ruido de canal en los procesos análogos de impresión, tratamiento y escaneo del documento requeridos.
Entrando en más detalle, hay tres tipos de cambio esencialmente diferentes que pueden existir en textos recuperados: errores, inserciones y supresiones. Estos pueden surgir frecuentemente a partir del ruido resultante de los procesos de impresión y escaneo, a partir de los defectos inherentes en el software OCR y a partir los cambios físicos del documento impreso.
Un error es lo que sucede si un carácter en el texto original se convierte en un carácter diferente en el texto escaneado, por cualquier razón. El OCR puede leer una "O" como un "0", o puede confundir la "I" y la "l", o alguien puede alterar un "3" para convertirlo en un "8", etc.
Se denomina una inserción cuando aparece un carácter adicional en el documento escaneado que no estaba en el original. La letra "m" puede escanearse como "rn", o alguien puede insertar un "0" adicional en el texto, etc.
Una supresión es lo opuesto a una inserción. Por cualquier motivo hay un carácter que falta en el archivo escaneado que estaba en el texto original. Las letras "rn" pueden interpretarse erróneamente como una "m", el OCR puede pasar por alto una "," o un ".".
Los errores, inserciones y supresiones no son exclusivos mutuamente. De hecho, una inserción como resultado del OCR significa normalmente una inserción y un error en la misma palabra. Por ejemplo, si la palabra "farmyard" se lee como "farrnyard" entonces no solamente hay un carácter adicional (la n no debería estar ahí) sino que la segunda "r" es un error ya que esa letra debería ser una "m".
El resultado invariable de cualquier tipo de tal cambio es un grado de imperfección de bit, que ha hecho las funciones de seguridad electrónicas conocidas inoperables. Las mejoras en la calidad del escáner y el software OCR han reducido constantemente la incidencia del cambio resultante del ruido en el proceso pero sin erradicar el problema.
Como consecuencia, los intentos para resolver la autenticación de documentos impresos se han limitado a tomar elementos seleccionados de datos del documento y codificar éstos sobre el documento en un código legible por máquina para el escaneo posterior, como se describe en las siguientes memorias descriptivas de patentes:
El documento EP 0699 327 (Fouracres y Douglas), que da a conocer un sistema de seguridad en el que la verificación de los denominados documentos portadores tales como cheques, bonos, acciones, etc. en los que se determina un valor mediante elementos de datos críticos tales como fechas de vencimiento, cantidades monetarias, identidad del beneficiario impresos sobre ellos pueden protegerse imprimiendo tales elementos de datos clave codificados en un código legible por máquina y también impresos sobre el documento. La invención dada a conocer funciona más fácilmente con documentos realizados por plantilla y en los que los datos pueden compararse visualmente para la verificación. También podría realizarse una comparación automatizada con la utilización del equipo OCR para documentos por plantilla. Sin embargo, la codificación de toda la información en un documento de forma libre de medida considerable mediante este método tiene desventajas prácticas, y no permite fácilmente el escaneo, comparación y verificación automatizados.
El documento US 6170744 (Lee y Meadow), que da a conocer un documento de auto-autenticación que utiliza un valor hash (de suma de verificación) en un proceso de creación de símbolos y después utiliza una clave pública para descifrar datos del documento de auto-autenticación. La invención se refiere a documentos negociables de auto-autenticación, tales como cheques en los que se proporciona un sistema de bucle cerrado independiente para garantizar la integridad y autenticidad de los documentos negociables. Tales documentos están realizados por plantilla y no se intenta la capacidad de extender esto para cubrir documentos de texto de forma libre.
Los sistemas anteriores sufren limitaciones; o bien los documentos implicados tienen que ajustarse a un formato común específico de manera que los datos clave pueden seleccionarse automáticamente o bien se necesita una intervención humana en el proceso para identificar qué elementos de información son críticos. Adicionalmente, la cantidad de datos que puede llevarse prácticamente en un código legible por máquina presenta limitaciones en tales
sistemas.
El documento US 5.432.506 (Chapman) da a conocer un sistema de detección de documentos falsos en el que un programa secreto selecciona ciertos caracteres escritos o ya sobre el documento, y los transforma en una cadena de caracteres para la impresión sobre el documento como un código único. Aunque este sistema puede aumentar la posibilidad de detectar datos de modificación, no puede detectar tales cambios utilizando solamente puntos de datos clave espaciados esporádicamente alrededor del documento como puntos de control.
Los métodos de sumas de control se emplean en muchas invenciones que funcionan totalmente en el dominio electrónico tal como se da a conocer en el documento EP 94095 y el documento JP 11261550.
Las técnicas de corrección de errores se utilizan frecuentemente de manera similar en invenciones de imágenes tal como en el documento JP 2000259618 para la corrección de errores en imágenes de caracteres, o como en el documento US 5.920.878 para señalar un aviso de derechos de autor o indicios de autoría en documentos electrónicos.
La utilización de dispositivos que certifican de manera criptográfica la autenticidad de documentos electrónicos es generalizada, dándose a conocer ejemplos en las patentes estadounidenses números 5.189.700, 5.136.643, 5.136.647 y 5.001.752. Éstas dan a conocer métodos en los que, después de que los datos se han introducido en forma digital, puede aplicarse certificación criptográfica utilizando técnicas de hashing. Una extensión de estas invenciones para abarcar los documentos de papel no se ha previsto de ningún modo, ya que el proceso necesario del escaneo de documentos de papel para generar una representación digital requeriría lo que se ha percibido como demasiado complejo, costoso y poco práctico.
Se ha aceptado generalmente la conclusión de que la digitalización de un documento de papel realizada para la verificación no puede conseguir una correspondencia exacta con la forma electrónica original del documento digital. En consecuencia, permanece una necesidad de un sistema que pueda aplicarse de manera sencilla en el momento de la creación del documento para asegurar que cuando se imprima el documento contenga información adicional que permitirá a la totalidad del documento autenticarse a partir del propio documento de papel.
Una alteración intencionada no autorizada del documento de papel, que puede ser por razones fraudulentas, implicaría normalmente supresiones de palabras, adiciones de palabras o cambios de palabras. Esto implica generalmente cambios de caracteres consecutivos en lo que es similar a un error de ráfaga, que puede producirse accidentalmente como resultado de cambios físicos en el documento de papel. Esto es claramente diferente a las supresiones, adiciones y errores de ruido de canal que afectan a sólo uno de dos caracteres pero que puede ocurrir a lo largo del documento.
Para evitar dudas, los cambios pueden producirse en tres dominios principales: en el dominio electrónico, en el dominio físico (es decir, impreso) o en la interfaz entre los dos (es decir, cuando se está transfiriendo el documento entre el dominio electrónico y físico imprimiendo o escaneando, por ejemplo). Los cambios en el domino electrónico pueden resultar de un error humano o de la máquina o de una acción humana deliberada, los cambios en el dominio físico resultan normalmente de una acción humana deliberada o accidental y los cambios en las interfaces resultan normalmente de ruido de canal, como se comentó anteriormente.
El documento EP 0 862 318 da a conocer un sistema de aplicación de derechos de distribución y utilización en el que un documento está dotado de una marca de agua. Se da a conocer que la marca de agua podría contener información relacionada con el propietario del documento, los derechos asociados a esa copia del documento e información relacionada con cuándo y dónde se imprimió el documento. Se da a conocer que esta información podría ayudar en disuadir o impedir la copia no autorizada del trabajo.
El documento US 5.765.176 da a conocer un sistema de gestión de imágenes de documento en el que una versión de tamaño reducido del texto original de un documento puede imprimirse sobre el documento para un número de fines tal como mejorar el rendimiento de las operaciones de reconocimiento de caracteres.
Es un objetivo de la presente invención proporcionar un método para producir documentos de papel que puedan auto-autenticarse con la capacidad de aplicar técnicas de seguridad disponibles en el dominio electrónico para la verificación del contenido total del documento. La invención busca identificar todos los tipos de cambios que aparecen tanto en los dominios identificados anteriormente como en las interfaces entre los dominios.
Por lo tanto, un primer aspecto de la invención proporciona un método de producción de un documento de autenticación que contiene texto tal como se reivindica en la presente reivindicación 1.
El método puede comprender la etapa adicional de imprimir el dicho documento de tal manera que comprende el dicho texto y el dicho símbolo.
Se prefiere particularmente que el dicho valor de verificación comprenda una suma total de verificación (hash total).
El dicho valor de verificación comprende preferiblemente una suma de control.
En una realización particularmente preferida, el dicho texto se divide en un número predeterminado de cadenas y se determina un código de corrección de errores para cada cadena respectiva.
El o cada dicho código de corrección de errores puede ser un código Reed-Solomon.
El dicho símbolo legible por máquina puede comprender datos de seguridad.
Un aspecto adicional de la invención proporciona un método de verificación de un documento impreso, que comprende: (i) leer mediante máquina texto y un símbolo impresos en el documento; (ii) obtener uno o más códigos de corrección de errores a partir del dicho símbolo; (iii) utilizar el código o códigos de corrección de errores para realizar una operación de corrección de errores sobre el dicho texto; (iv) obtener un valor de verificación representativo de todo el contenido de un cuerpo predeterminado del texto a partir del dicho símbolo; (v) obtener un valor de verificación adicional a partir del dicho texto después de que se haya sometido a la operación de corrección; y (vi) comparar el dicho valor de verificación adicional con el dicho valor de verificación obtenido a partir del dicho símbolo.
El dicho texto y símbolo pueden leerse utilizando un escáner óptico.
Preferiblemente, el dicho valor de verificación comprende una suma total de verificación.
El dicho valor de verificación comprende preferiblemente una suma de control.
Se prefiere particularmente que el texto se divida en una serie de cadenas y se asocie un dicho código de corrección de errores con cada dicha cadena representativa.
El o cada dicho código de corrección de errores puede ser un código Reed-Solomon.
Se prefiere particularmente que el dicho símbolo comprenda datos de seguridad y que el dicho método comprenda una etapa de utilización de dichos datos de seguridad para extraer información contenida dentro del dicho símbolo.
Según un tercer aspecto de la invención, se proporciona un documento impreso de auto-autenticación que comprende un cuerpo de texto y un símbolo legible por máquina, en el que dicho símbolo legible por máquina comprende un valor de verificación y uno o más códigos de corrección de errores, siendo el dicho valor de verificación representativo de todo el contenido de datos del dicho cuerpo de texto y estando el código o códigos de corrección de errores adaptados para corregir el dicho texto después de que se haya leído por una máquina.
Preferiblemente, el dicho valor de verificación comprende una suma total de verificación.
En una realización particularmente preferida, el dicho valor de verificación comprende una suma de control.
El o cada dicho código de corrección de errores puede ser un código Reed-Solomon.
Se prefiere particularmente que el dicho símbolo comprenda datos de seguridad.
Un cuarto aspecto de la invención proporciona un dispositivo para producir un documento de auto-autenticación, estando el dicho dispositivo adaptado para proporcionar texto que va a grabarse sobre dicho documento; para generar un valor de verificación de texto representativo de todo el contenido del dicho texto; para generar uno o más códigos de corrección de errores para corregir el dicho texto después de que se haya leído por una máquina; y para generar un símbolo legible por máquina representativo del dicho valor de verificación de texto y del dicho código o códigos de corrección de errores, símbolo que está adaptado para incorporarse en el documento cuando éste se imprime.
Preferiblemente, el dispositivo comprende una impresora.
Un quinto aspecto de la invención proporciona un dispositivo para verificar un documento de auto-autenticación, estando dicho dispositivo adaptado para recibir texto y un símbolo contenidos en dicho documento, para obtener uno o más códigos de corrección de errores a partir del dicho símbolo, para aplicar una operación de corrección al dicho texto utilizando el dicho código o códigos de corrección de errores, para obtener un valor de verificación representativo de todo el contenido de un cuerpo predeterminado de texto a partir del dicho símbolo, para obtener un valor de verificación adicional a partir del dicho texto recibido después de que se haya sometido al dicho procedimiento de corrección de errores; y para comparar el dicho valor de verificación con el dicho valor de verificación adicional.
Preferiblemente, el dispositivo comprende un escáner óptico.
De este modo, una realización de la invención puede permitir la autenticación y verificación de la totalidad de un documento cuando éste se imprime en papel, mediante referencia única al documento de papel.
Las realizaciones de la invención utilizan técnicas de totalización de suma de verificación/suma de control, a las que puede aplicarse opcionalmente criptografía adicional, junto a niveles apropiados de codificación de corrección de errores, que se desarrolla a partir de los datos de texto. En tal caso, tanto la suma total de verificación como la codificación de corrección de errores se incorporan en un código legible por máquina y se imprimen sobre el documento simultáneamente con el contenido de texto del documento. El propio código legible por máquina tiene preferiblemente protección de corrección de errores.
Las realizaciones de la invención también proporcionan métodos que permiten realizar una valoración del nivel de corrección de errores que se seleccionará para cualquier aplicación dada acorde con tanto el aparato físico utilizado específicamente para esa aplicación como con el grado de seguridad considerado apropiado.
Las realizaciones de la invención permiten particularmente conseguir y mejorar opcionalmente los objetivos anteriormente mencionados y otras ventajas de la invención mediante un método para trasladar cualquier característica de seguridad adicional empleada en el dominio electrónico al documento de papel. Por ejemplo, pueden incorporarse firmas digitales en un símbolo legible por máquina impreso sobre un documento de papel, que pueden proteger de manera criptográfica una suma total de verificación y una codificación de errores realizadas también en el símbolo. Esto permite que la seguridad se transfiera de vuelta al dominio electrónico cuando se lee el documento de papel mediante un dispositivo de escaneo, que se utilizará entonces o después. La utilización de una técnica de seguridad, tal como la metodología de par de clave pública privada (PPK, Private Public Key), es opcional; el único elemento de seguridad que es obligatorio es la etapa de generación de un valor de verificación de texto representativo de los datos de texto en el documento y que incluye a éste en el símbolo legible por máquina, que puede imprimirse sobre el documento de papel simultáneamente con el texto legible por un humano. También pueden incorporarse al símbolo características de seguridad electrónica adicionales, conocidas por los expertos en la técnica.
Las ventajas anteriormente mencionadas de la invención resultan al menos parcialmente a partir de la utilización de un código de corrección de errores, tal como Reed-Solomon, para resolver cualquier imperfección en los datos que pudiera producirse cuando los símbolos y datos de texto se transfieren desde el dominio electrónico al mundo físico y de vuelta otra vez. Cuando se emplean dispositivos de impresión y escaneo junto con software OCR, los errores que pueden producirse harían inútil la aplicación de comparaciones de sumas de control que requieren perfección de bits. Por tanto, una realización de la invención permite crear módulos de corrección de errores en un dispositivo de cálculo antes de la impresión de un documento de papel. Estos módulos de corrección de errores pueden entonces incorporarse en los mismos símbolos legibles por máquinas que incluyen totalización de suma de verificación, junto con cualquier característica de seguridad adicional.
Los objetivos anteriormente mencionados y otras ventajas de la invención pueden conseguirse mediante un método para la verificación de tales documentos de auto-autenticación. Este procedimiento preferiblemente implica escanear el documento, tanto datos de texto y símbolo, en un dispositivo de cálculo. El símbolo, al que puede protegerse mediante codificación integral de corrección de errores, se divide entonces en sus elementos de componente de los módulos de corrección de errores, en la suma total de verificación de los datos de texto y en cualquier característica de seguridad adicional opcional. Puede realizarse entonces la etapa de aplicación de un módulo de corrección de errores a los datos de texto escaneados. Entonces, puede realizarse una totalización de suma de verificación de los datos de texto corregidos y después éstos pueden compararse con la suma total de verificación recuperada a partir del símbolo y de este modo el documento o bien se autentica o bien contiene algún cambio que se ha efectuado en los datos de texto impresos en el documento, sobre y por encima de los errores de ruido de canal introducidos en los procesos de impresión, tratamiento y escaneo del documento.
Si las características de seguridad adicionales que pueden aplicarse opcionalmente se han utilizado para proteger el documento de forma criptográfica, puede ser necesaria una etapa para descifrar o comprobar la firma digital antes del método descrito anteriormente para comparar la totalización de suma de verificación.
Los objetivos anteriormente mencionados y otras ventajas de la invención pueden facilitarse para la aplicación de la invención en cualquier configuración física particular con el nivel apropiado de seguridad considerado necesario utilizando el método de la invención para proporcionar información estadística que permite el tipo y el nivel de corrección de errores que se utilizarán para evaluarse.
Ahora se describirán realizaciones de la invención a modo de ejemplo y con referencia a los dibujos adjuntos en los que:
la figura 1 muestra una página de datos de texto con un ejemplo de un símbolo utilizado según la invención;
la figura 2 es un diagrama de flujo de proceso que muestra un procedimiento de creación de un documento según la invención;
la figura 3 es un diagrama de flujo de proceso que muestra un procedimiento de autenticación de un documento según la invención;
la figura 4 es un diagrama de flujo de proceso que ilustra un proceso según la invención, por el que un usuario puede determinar el nivel apropiado de la corrección de errores que va a emplearse en una aplicación dada apropiada para el aparato físico utilizado y para el nivel de seguridad buscado; y
la figura 5 es un diagrama de flujo que ilustra cómo se aplican los códigos de corrección de errores en el proceso de decodificación.
Esta aplicación es genérica en naturaleza y puede manifestarse en diversas aplicaciones. Las realizaciones proporcionan la capacidad para generar un documento de datos de texto de auto-autenticación sobre papel, de manera que en cualquier etapa posterior ese documento de papel pueda autenticarse contra un cambio fraudulento. La invención puede hacerse funcionar en modo "autónomo" o incorporarse como una extensión a un sistema de mensajería electrónica que funciona en internet o sobre una red de área local; como alternativa, ésta puede realizarse en aplicaciones de comercio electrónico para proporcionar una interfaz con sistemas existentes basados en papel o para proporcionar capacidades de auditoría de papel o siempre que una aplicación necesite producir documentos de papel que puedan autenticarse. Esta amplitud de realizaciones potenciales se satisface mediante una gama de etapas y prestaciones opcionales que están dentro del alcance global de la invención.
La figura 1 muestra una página 101 de datos 103 de texto junto con un ejemplo de un símbolo 102 codificado que comprende una suma total de verificación, y codificación de corrección de errores. Puede incluirse seguridad adicional en el símbolo si una aplicación particular lo requiere.
La figura 2 ilustra la creación de un documento tal como el documento 101 en un dispositivo 202 de cálculo. Como parte de este procedimiento, se crea el símbolo 202 y se aplica al documento 101. Los datos 103 de texto pueden crearse dentro del dispositivo 202 de cálculo, como se ilustra mediante la fuente 203 de texto local, o en una fuente 201 de texto externa y canalizada a través de la puerta 205. Si el documento electrónico se ha sometido a seguridad añadida tal como una firma digital entonces, tal como se muestra en la caja 206 de decisión, éste se desenvuelve y se separa en la etapa 207 de los datos de texto. Dependiendo de la naturaleza de esta seguridad, que, si está presente, es específica de la aplicación, la información 208 de seguridad adicional puede incluirse en el símbolo en la etapa 213.
Los datos 211 de texto se someten entonces a dos procesos 210 y 212. En la etapa 210 se generan códigos de corrección de errores de un tipo y nivel predeterminados a partir de los datos 211 de texto y se encaminan al proceso 213 de agregación para la inclusión en el símbolo. Para lograr esto, los datos de texto se dividen en cadenas de longitud de k caracteres. Los datos de texto no serán normalmente un múltiplo exacto de k y por consiguiente se añade una serie de blancos a la última cadena. Para cada cadena se calculará un bloque de corrección de errores de longitud de d bytes. La longitud k de la cadena y la cantidad d de corrección de errores que van a aplicarse se determinan a priori en una aplicación mediante base de aplicación.
En el proceso 212, se genera una suma total de verificación para los datos de texto totales; la seguridad de hashing particular se selecciona por el usuario tal como se considere adecuada para la aplicación y se encamina al proceso 213 de agregación, para la inclusión en el símbolo.
En el caso de documentos de múltiples páginas, el proceso permite incluir la suma total de verificación en el símbolo para cada página, junto con los códigos de corrección de error necesarios y un método de numeración de páginas que va a añadirse al símbolo; como alternativa, solamente podría codificarse una suma de control final, permitiendo de este modo la flexibilidad adecuada a la aplicación. La impresión del documento puede realizarse mediante el aparato 220 de impresión o sobre un sistema 222 de impresión remoto o bien en el momento de añadir el símbolo de auto-autenticación, al documento 101 de papel, o bien después.
En la realización de la figura 2, el dispositivo 202 de cálculo comprende una configuración de procesador, teclado, pantalla de visualización, RAM, etc. de un ordenador personal con una impresora acoplada. Son posibles otras realizaciones que produzcan la funcionalidad equivalente y, en particular, no es esencial que el dispositivo 202 de cálculo incluya o esté acoplado a un aparato de impresión; no sólo debido a que la impresión puede ser físicamente remota (como se describió anteriormente) sino también debido a que puede realizarse posteriormente o incluso sólo puede utilizarse en algunos casos o bajo ciertas condiciones.
La figura 3 ilustra un procedimiento por el que el documento 101 impreso se autentica según la invención. Muestra al documento 101 escaneándose por un dispositivo 322 de escaneo, que está conectado a un dispositivo 354 de cálculo que comprende un almacenamiento 352 de información de salida. En este caso, el dispositivo 354 de cálculo es un dispositivo diferente al 202 utilizado para la impresión en la figura 2; sin embargo, no hay ningún motivo por el que no pudiera ser el mismo dispositivo. En la etapa 333 del proceso, la envoltura de seguridad, si está presente, se elimina. Dependiendo de la seguridad empleada, esto puede realizarse mediante la utilización de una clave pública (la correspondencia de la clave privada del creador del documento). Ciertas mejoras, bien conocidas por los expertos en la técnica, pueden emplearse opcionalmente para mayor seguridad. Por ejemplo, el símbolo 102 puede incluir certificados digitales para la distribución de claves públicas a partes que no conocen la clave pública que se necesita para verificar un símbolo cifrado por la clave privada utilizada. En este certificado la clave pública de dispositivo se cifra y se garantiza mediante la clave privada de un certificador de confianza cuya clave pública es conocida por el receptor del documento o por cualquier persona que esté intentando autenticar el documento. La clave pública del certificador se utiliza para descifrar la clave pública que se necesita para extraer la otra información en el símbolo 102 y para verificar que el texto de datos en el documento es auténtico. Como alternativa, es posible permitir la extracción de la clave pública relevante a partir de una base de datos accesible públicamente que elimina la necesidad de certificación digital. De este modo, puede observarse que la invención ofrece una amplia aplicabilidad mediante diversos métodos a partir de aquéllos apropiados para grupos de usuario cerrados, para la utilización por el público general.
Existe una ruta, para información 340 de seguridad adicional, que va a canalizarse al almacenamiento 352 de información de salida.
Los datos del símbolo se decodifican en la etapa 333. Si se empleó la seguridad adicional en la creación del documento, entonces la suma 334 total de verificación recuperada y los códigos 337 de corrección de errores, habiéndose descifrado, se procesan en las etapas 343 y 338 respectivamente. Los datos 336 de texto también se procesan en la etapa 338.
Los códigos 337 de corrección de errores extraídos, y si fuera necesario descifrados, del símbolo 102 en la etapa 33 se aplican entonces en la etapa 338 a los datos 336 de texto.
En la etapa 338, la primera cadena k(1) de k caracteres de datos de texto tiene el primer módulo d(1) de d códigos de corrección de errores aplicado para corregir cualquier imperfección de bits que pueda haber surgido en los procesos de impresión/escaneo. Después, la segunda cadena k(2) ha aplicado su módulo d(2) de corrección de errores relevantes y el proceso continúa hasta que se ha tratado de esta manera todo el documento 101.
Si, en el proceso de corrección de errores, la cadena k(n) de datos de texto no puede comprobarse o corregirse mediante la aplicación del módulo d(n) de corrección de errores, entonces se ha detectado un discrepancia en el documento. Esto puede haber resultado de la cadena k(n) de datos de texto impresa en el papel que se ha cambiado, por ejemplo mediante daño al documento o mediante alteración deliberada no autorizada. La inserción o supresión no autorizada de los datos de texto tendrá un efecto similar. En tales casos, los módulos de corrección de errores pueden necesitar ponerse de nuevo en sincronización con sus cadenas de datos de texto relevantes para permitir la corrección del resto del documento.
La corrección utiliza una rutina de desplazamiento de realineación como sigue. La cadena k(n) de datos de texto avanza carácter a carácter a medida que se aplica la corrección de errores por los módulos d(n) hasta el d(n+p). El avance carácter a carácter en los datos de texto se repite ahora (p+1)k veces, aplicándose de este modo a las siguientes p cadenas de datos de texto.
La selección del parámetro p apropiado es específica de la aplicación y controla la extensión en la que se ejecuta el anterior método para intentar la corrección de errores a través del resto del documento. El ajuste de este parámetro se determina junto con, y en relación a, la personalización del proceso por el método para ajustar los parámetros k y d, tal como se describe posteriormente. El proceso de totalización de suma de verificación/suma de control utilizado también necesita tomarse en consideración cuando se seleccionan estos parámetros.
La etapa 338 generará señaladores e indicadores que prueban qué ha tenido lugar, dónde se detectaron los errores y si se corrigieron, toda esta información 358 se pasa al almacenamiento 352 de información de salida. Los datos 350 de texto corregidos también se pasan al almacenamiento 352 de información, que realiza formateado de salida como requiera la aplicación. Los datos de texto corregidos creados en la etapa 338 se utilizan después en la etapa 339 para calcular una suma total de verificación, que se compara ahora en la etapa 343 con la suma 334 total de verificación extraída previamente del símbolo en la etapa 333.
El resultado de la información se envía al almacenamiento de información de salida, para procesarse como requiera la aplicación. Debido a las diversas aplicaciones potenciales en las que la invención puede realizarse, está disponible una considerable flexibilidad para el usuario para que el almacenamiento 352 de información de salida muestre los resultados y la información auxiliar o bien imprimiendo la salida 359 en un dispositivo 355 de impresión o bien en una pantalla 353 de visualización, pero no está limitada solamente a éstos. Dependiendo del resultado de la autenticación del documento pueden seleccionarse diferentes mensajes, no sólo acerca del resultado, sino también acerca de los errores de seguridad, del señalamiento adicional de errores corregidos, de los datos de texto corregidos o de cualquier combinación que sea apropiada para la aplicación.
La calibración personalizada del tipo y cantidad de corrección de errores permite emplear la invención a través de diferentes tipos de documentos y con una diversidad de equipos, en particular dispositivos de escaneo.
La figura 4 ilustra una realización adicional de la invención que es particularmente susceptible a la modificación por parte del usuario. A este respecto, es posible variar la longitud k de la cadena de datos de texto, a la que se aplica una cantidad d de corrección de errores. En esta realización particular, el tipo de codificación de corrección de errores utilizado es de nuevo Reed-Solomon. Se selecciona un ajuste inicial de k y d, o la opción por defecto permitida y aplicada a partir de 401 para los datos 402 de texto creados localmente en el aparato 404 de cálculo o en una fuente 403 remota y recibidos a través de la puerta 405. El aparato 406 de impresión se utiliza entonces para imprimir un documento 101, que se ha tomado a través de las etapas dadas descritas en la descripción asociada a la figura 2. El documento 101 se autentica entonces mediante un dispositivo 408 de cálculo con un aparato 409 de escaneo según las etapas descritas en la descripción asociada a la figura 3. Desde el almacenamiento 414 de información de salida, los resultados y estadísticas se producen en pantalla o impresos con un aparato de impresión en papel 416 como una sucesión de documentos que pasan a través de los procesos. Los cambios pueden realizarse para
1)
diferentes aparatos de escaneo
2)
diferentes aparatos de impresión
3)
fuente (tamaño y tipo)
4)
papel
e información adicional recogida. Como consecuencia, k y/o d puede(n) cambiarse hasta que los ajustes se consideren apropiados para cada aplicación particular, ya que la sensibilidad y la susceptibilidad de los datos de texto al cambio fraudulento serán específicas de la aplicación.
Los procesos de codificación y descodificación empleados en los procedimientos de creación y autenticación del documento descritos anteriormente se describirán a continuación en mayor detalle con referencia a la figura 5.
El texto en un documento se almacena normalmente en un ordenador como un valor ASCII, que tiene una longitud de 8 bits (incluyendo la comprobación de paridad). En las realizaciones de la invención anteriormente descritas, este valor se utiliza para convertir el carácter en un elemento de campo que utiliza un campo F_{2^{8}}. Antes de codificar un extracto del texto, se crea primero la lista de elementos correspondientes en este campo. Esta lista se divide en bloques de mensaje y se codifican tal como se ilustra en la figura 5.
En este proceso se emplea código Reed-Solomon (RS), aunque otros tipos de codificación son viables. Los parámetros del código RS que van a utilizarse se definen especificando k y t = (d-1)/2. Si se prefiere, podría utilizarse como una alternativa un proceso más directo pero matemáticamente más complejo (en el que se especifican k y d). Se establece el número de caracteres (t) que podrían corregirse por bloque de mensaje (k) y entonces se codifica todo el texto, k caracteres cada vez. La última palabra del mensaje en el documento se rellena con ceros si es necesario hacer que tenga una longitud k. Si
m = (m_{0}, m_{1}, m_{2}, ..., m_{k-2}, m_{k-1})
es una palabra de mensaje codificada como
m = (m_{0}, m_{1}, m_{2}, ..., m_{k-2}, m_{k-1}, e_{0}, e_{1}, e_{2}, ...,e_{2t-2}, e_{2t-1})
entonces (e_{0}, e_{1}, e_{2},...,e_{2t-2},e_{2t-1}) (en lo sucesivo denominados como bytes de corrección de errores) se almacena en algún lugar (por ejemplo en un fichero). La razón por la que m = (m_{0},m_{1},m_{2},...,m_{k-2},m_{k-1}) no se almacena es porque aún estarán presentes (al menos la mayor parte) en el documento impreso. Si todo el documento tiene una longitud de N caracteres, esto implica almacenar
\left\lceil\frac{N}{k} * 2t\right\rceil
bytes adicionales de información. Para un documento lo suficientemente grande, esto es aproximadamente igual a 2t*N/k. Estos bytes se almacenan en el símbolo 102 de 2D que se imprimirá sobre la misma página que el texto del documento.
El proceso de codificación descrito anteriormente se implementa como sigue. En el nivel más bajo, los elementos se representan y las operaciones se realizan sobre F_{2^{8}}. Los elementos de campo son esencialmente polinomios (digamos, en \alpha) de grado < 8 con coeficientes binarios. La representación binaria de un valor ASCII de un carácter de mensaje puede verse con un polinomio de este tipo. Para la suma se requiere añadir los polinomios mod 2. Esto es una operación XOR a nivel de bits de los valores ASCII. La multiplicación en este campo no es la multiplicación estándar. Los polinomios correspondientes tienen que multiplicarse (mod 2) y el resultado tiene que reducirse módulo un polinomio de grado 8 irreducible sobre Z_{2}. Esto puede programarse relativamente de forma sencilla, al igual que las funciones para obtener potencias (incluyendo inversas) de elementos de campo, todas ellas necesarias.. Sin embargo, esta realización de la invención utiliza un procesamiento más eficaz. Tomando el logaritmo discreto (sobre la base de algún generador) de los elementos de campo, la multiplicación pasa a ser suma (no XOR) de potencias (obtener inversas y elevar a una potencia es también más sencillo). Aunque un enfoque de logaritmo discreto no es factible para campos grandes, este campo es lo suficientemente "pequeño" para que toda la tabla de logaritmos pueda crearse en un único cálculo. También se calcula a la vez una tabla que traduce una potencia del generador a un elemento de campo. Además de ser más eficaz, esto hace posible una programación mucho más sencilla.
El proceso hashing, como saben los expertos en la técnica, es una transformación matemática que crea una representación de longitud fija única de un valor de longitud indefinida tal como una cadena de texto. Por analogía, el ADN es una estructura compacta que es una representación única de un individuo particular que puede utilizarse como un identificador único de la persona más grande y compleja, por lo que el valor de verificación realiza una función análoga para la cadena de texto., Las funciones hash unidireccionales aseguran que el proceso no puede utilizarse en la dirección inversa, y por lo tanto proporciona una protección infalible contra el fraude. Esta realización de la invención permite incorporar seguridad adicional en los símbolos codificados y de manera similar puede apoyar la corroboración de elementos clave de texto o datos en el documento, proporciona elementos PPK, para no permitir rechazo de tiempo, punto de origen y de originador, o cualquier otra característica de seguridad que necesite emplearse.
El algoritmo de decodificación específico empleado en esta realización es el algoritmo euclidiano extendido modificado. Este algoritmo es relativamente sencillo, y el algoritmo de división por polinomios (sobre F_{2^{8}} [x]/<x^{n} - 1>) ya se emplea para la codificación. El algoritmo utiliza el polinomio síndrome para encontrar tanto el polinomio localizador de errores como el polinomio evaluador de errores. Las localizaciones de los errores no se limitan a los n' elementos de la palabra recibida. Es totalmente posible decodificar una palabra de longitud n' como una palabra de longitud n' + 1 (o mayor) ya que éste es un código truncado. Esto será una decodificación errónea ya que las palabras clave válidas no pueden ser mayores que n', y el decodificador descubrirá esto. Todavía es posible salvar el texto de una decodificación errónea de este tipo. El decodificador puede considerarse una caja negra, que toma como entrada un polinomio de grado < n' sobre F_{2^{8}} (o palabras de n' valores ASCII, que es como se denominarán posteriormente), y o bien devuelve la palabra de código correcta y cuántos errores se han corregido o bien falla (si se produjeron demasiados errores).
La figura 5 ilustra cómo se direccionan las modificaciones de texto. Además de contener los bytes de corrección de errores, el símbolo 102 de 2D también contiene los valores para k y d (estos valores tienen que leerse porque puede variarse para proporcionar más/menos protección). El programa los lee, después selecciona k caracteres del fichero escaneado y concatena d-1 bytes del símbolo de 2D. Esta es la primera palabra recibida, y se pasa a la función de decodificación. Si la decodificación falla es debido a que se han producido más errores en la palabra que el t puede corregir. Cuando esto sucede, la palabra recibida se somete a todos las posibles supresiones de carácter único, y cada palabra modificada se envía para su decodificación. Una búsqueda voraz trabajaría más rápido, pero se prefiere intentar todas las posibilidades y elegir la mejor (palabra con menos errores) que va a corregirse. Esto es debido a que, con mayor frecuencia que con la que no, una búsqueda voraz llegará a estar a t lugares de donde se produjo el carácter adicional y la función de descodificación corregirá los caracteres restantes. Después será necesario saber la localización exacta en la que sucedió el error.
Al realizar la descodificación sobre varias palabras de código modificadas la probabilidad de decodificación errónea aumenta, pero no tanto como si el código fuera cíclico (que no lo es). Si el código fuera cíclico, entonces la situación en la que una palabra completa se desplaza una posición (digamos que faltaba el primer símbolo), el descodificador simplemente cambiaría el último símbolo (que es realmente el primer símbolo de la siguiente palabra) al símbolo suprimido, creando por tanto un desplazamiento cíclico de la palabra de código original que también sería una palabra de código. Sin embargo, el código cíclico tiene la ventaja de que los símbolos de mensaje y los símbolos de corrección de errores están separados. Si en el tránsito hay una supresión en el mensaje, los símbolos de corrección de errores permanecerán no afectados. Por lo tanto, como mucho se desplazarán k de los símbolos. De hecho, considerando que el símbolo 102 de 2D tiene una corrección de errores inherente, los d-1 símbolos de corrección de errores pueden considerarse fiables. Otra ventaja de esta realización es que proporciona un bit de control de paridad ASCII adicional. Todas las palabras de código decodificadas se comprueban para asegurar que tienen valores ASCII válidos. Esto hace incluso menos probable las descodificaciones erróneas ya que al menos d símbolos de mensaje tienen que cambiarse después de la descodificación (el código tiene una distancia mínima d) y cada uno tiene sólo una probabilidad de 3/8 (96 de entre 256) de ser un carácter ASCII que pueda imprimirse. Por ejemplo, en un código de distancia 7, sólo una de entre mil decodificaciones erróneas pasa esta prueba (las propias decodificaciones erróneas son poco frecuentes). Esta redundancia adicional puede eliminarse a favor de aumentar la velocidad del código, pero dada la eficacia de la simbología de 2D, y el hecho de que sólo entran los símbolos de corrección de errores, se puede ser generoso en este aspecto. Además, como se comentó previamente, es posible que una decodificación errónea tenga "correcciones" fuera de los n' elementos de palabras clave aceptadas (siendo esto un subconjunto de un código mayor). Sobre la base de que tal posicionamiento es aleatorio, y utilizando los parámetros por defecto (k = 30 y d = 7) puede establecerse que menos de una entre un millón de codificaciones erróneas tendrá las "correcciones" en los lugares apropiados (incluso asumiendo que los bytes de corrección de errores no son fiables).
El proceso anterior corrige el texto cuando se ha insertado un carácter por error. Los caracteres que se han suprimido del texto original se tratan de una manera similar pero opuesta. Se inserta un asterisco ("*") en la palabra en varios lugares (desplazando el texto, no reemplazándolo) antes de que se pase la palabra a su decodificación. De nuevo hay una búsqueda completa en lugar de una búsqueda voraz. Sin embargo, no es necesario aplicar la búsqueda sobre ambos casos. Es voraz en el sentido de que sólo intentará insertar caracteres si no funciona la supresión de caracteres.
Estos procesos corrigen la mayoría de los errores que aparecen en los documentos escaneados, pero no todos. De manera ocasional se producirá más de una inserción o supresión en una palabra de código (especialmente en el caso de alteraciones deliberadas). Mientras que la búsqueda de un carácter insertado o suprimido sólo requiere 2k ejecuciones de decodificación, una búsqueda de 2 requeriría el orden de k^{2}. Sin embargo, si solo se requiere suprimir/insertar pares de caracteres que son mutuamente adyacentes, entonces esto se reduce a 2k búsquedas. La mayoría de las ocurrencias de 2 supresiones/inserciones tienden a ser mutuamente adyacentes, y si no lo son, entonces al menos las palabras de código posteriores pueden decodificarse. Es muy poco probable que 2 caracteres falten en el texto pero que el texto de alrededor no esté afectado. Esto significa que si faltan dos caracteres, tendrán que corregirse ambos asteriscos y al menos un otro carácter. Por lo que para que esto valga la pena, se ajusta el código para que sea al menos de 3 correcciones de errores (o distancia 7).
El devolver un documento impreso al dominio electrónico mediante el escaneo permite la corrección de errores de ruido de canal resultantes, siempre y cuando se haya tratado el documento original según la invención. De este modo, puede reconstruirse el documento original.
Aunque el enfoque anterior satisface la corrección de errores provocados por el ruido, es poco probable que las inserciones/supresiones deliberadas se limiten a sólo uno o dos caracteres. Cualquier implementación no querría necesariamente corregir cambios indebidos/fraudulentos pero puede ser deseable poder recuperar la mayor cantidad del documento restante como sea posible. La primera etapa en este procedimiento es una búsqueda exhaustiva. Una vez que una palabra recibida ha fallado todos los intentos anteriores de decodificación, entonces se marca esa palabra como el primer lugar de una ventana que se desplazará a lo largo del resto del texto. No solo está decodificada la parte de texto en la ventana con los símbolos de corrección de errores originales, sino que también se intentan los símbolos de corrección de errores posteriores. Mientras que podrían utilizarse todos los métodos anteriores (inserciones/supresiones) para buscar palabras que pueden decodificarse, para ahorrar tiempo sólo se utiliza la decodificación básica (esto reduce la complejidad por un facto de k). Se ha encontrado que es suficiente observar 3k símbolos de mensaje y 3*(d -1) símbolos de corrección de errores para recuperarse de errores razonables. En la figura 5 se describe un diagrama de flujo de datos que describe todo el proceso de decodificación que tiene lugar en la etapa 338.
Los datos de texto totales y los códigos de corrección de errores se tratan así en el proceso de decodificación en bloques de 3k caracteres y 3 bloques de corrección de errores asociados (es decir, 3(d-1) bytes de corrección de errores).
La etapa 500 selecciona bloques de k caracteres del fichero de texto escaneado y concatena los (d-1) bytes de códigos de corrección de errores obtenidos del símbolo de 2D. Esto pasa a ser la palabra de código que se decodifica después en la etapa 501. Si esto tiene éxito, entonces en la etapa 510 se prueba a ver si es la última palabra de código.
Si no, entonces en la etapa 511 se determina si se requieren los siguientes bloques de 3k caracteres y 3 bytes de corrección de errores. En ese caso, se hacen disponibles en la etapa 500. En la etapa 500 se crea la siguiente palabra de código. Si no se necesita el siguiente bloque entonces se crea la siguiente palabra de código en la etapa 500 a partir de los siguientes k caracteres y (d-1) códigos de corrección de errores disponibles.
Esta palabra de código se decodifica en la etapa 501 y se repite el anterior proceso, siempre y cuando se mantenga el éxito en la decodificación, hasta que la etapa 510 de prueba para el final del documento muestre que éste sea el caso y que la información de decodificación de éxito esté disponible en la etapa 525 para cualquier acción que sea apropiada para la aplicación específica.
En el caso de un fallo de decodificación en la etapa 501, se intenta una decodificación de la palabra de código con una supresión única, en la que ésta se aplica en todas las posiciones posibles para supresiones de un único carácter. Si tiene éxito, los resultados se pasan a la etapa 506, que determina la mejor posición de la supresión, que es la que da el menor número de errores. Se realiza una comprobación en la etapa 510 para ver si ésta es la última palabra de código. Si es así, entonces concluye con éxito en la etapa 525 y si no, el proceso descrito previamente en la etapa 511 se repite.
Si la decodificación falla en la etapa 502 entonces se aplica el mismo proceso para decodificar ahora con la inserción de un único carácter en la etapa 503. Si tiene éxito, entonces la etapa 507 selecciona la posición óptima para la inserción como hizo la etapa 506 para la supresión y se aplica la etapa 510 de prueba del final del documento tal como se indicó previamente.
El fallo con la inserción de un carácter único lleva a intentar los procesos similares para dos supresiones en las etapas 504 y 508 y después para dos supresiones en las etapas 505 y 509.
Si no tienen éxito, entonces se realiza una comprobación en la etapa 520 para ver si este es el tercer bloque de corrección de errores y, si no, crea una nueva palabra de código con los mismos caracteres y el siguiente bloque de corrección de errores. Si es el tercero, entonces se realiza una comprobación en la etapa 522 para identificar si se ha llegado al final del documento. Si no, se crea una nueva palabra de código en la etapa 523 con los caracteres de texto desplazados un lugar con el bloque de corrección de errores apropiado.
Las nuevas palabras de código resultantes de las etapas 521 y 523, se decodifican en la etapa 501 y en cada caso todo el proceso descrito anteriormente se inicia otra vez.
Si la etapa 522 que comprueba el final del documento muestra que éste es el caso, entonces la decodificación ha fallado y se invoca la etapa 524, que actúa tal como se determinó mediante la aplicación específica.
Las realizaciones anteriormente descritas de la invención ofrecen una importante flexibilidad en el funcionamiento en diferentes aplicaciones. Existe independencia en cuanto a qué tipo de simbología se emplea para el símbolo legible por máquina, qué métodos criptográficos pueden utilizarse, qué características de seguridad adicionales pueden incorporarse y qué impresoras y escáneres pueden utilizarse. Su utilización en la integración y extensión en sistemas que pueden requerir producción de documentos de papel de auto-autenticación no está por tanto restringida.
Un aspecto clave de la invención es que el proceso de creación del documento puede producirse externamente al aparato de hardware y software necesario para añadir el símbolo legible por máquina al documento de papel. El documento de datos de texto electrónico puede haberse originado no sólo en una localización física diferente sino en algún momento anterior. La invención sólo puede utilizarse, en algunas aplicaciones, en el momento en el que es necesario imprimir el documento sobre papel con la simbología legible por máquina de auto-autenticación añadida.
El fraude que implica documentos impresos se consigue principalmente a través de a) duplicado, b) falsificación, o c) alteración de los datos de texto del documento. El duplicado puede no presentar en muchos casos una oportunidad de fraude, paro cuanto éste se produce se contrarresta normalmente mediante sistemas de control o la utilización de técnicas de papel de seguridad especializadas complementarias a la invención. La falsificación puede detectarse mediante características especiales establecidas de papel, tales como marcas de agua, que pueden utilizarse junto con la invención. Sin embargo, el problema crítico es la alteración de los datos de texto en un documento; esto se puede resolver ahora mediante la aplicación de la invención.
Para satisfacer la amplia gama de aplicaciones potenciales de la invención, utilizando inevitablemente hardware, fuentes, etc. diferentes, pueden realizarse cambios en los parámetros clave implicados en los procesos descritos anteriormente.
Aunque la realización preferida de la invención se ha descrito en el presente documento, debe entenderse que la invención no está limitada a ésta y las modificaciones de la realización descrita pueden resultar aparentes para los expertos en la técnica, siguiendo las enseñanzas de la invención sin apartarse del espíritu o alcance de la invención tal como se expone en las reivindicaciones adjuntas.

Claims (23)

1. Método de producción de un documento impreso de auto-autenticación que contiene texto que tiene la capacidad de que todo el contenido del texto pueda autenticarse mediante referencia al documento impreso, comprendiendo el método:
(i)
proporcionar texto electrónico que está destinado a estar contenido dentro del documento;
(ii)
generar un valor de verificación de texto electrónico, representativo de todo el contenido de dicho texto electrónico;
(iii)
generar uno o más códigos de corrección de errores para dicho texto electrónico; y
(iv)
generar un símbolo legible por máquina, representativo de dicho valor de verificación de texto y de dicho código o códigos de corrección de errores;
en el que el símbolo legible por máquina está adaptado para la incorporación dentro del documento cuando éste se imprime.
2. Método según la reivindicación 1, que comprende la etapa adicional de imprimir dicho documento de tal manera que comprende el dicho texto y el dicho símbolo legible por máquina.
3. Método según la reivindicación 1 ó 2, en el que el dicho valor de verificación comprende una suma total de verificación (hash total).
4. Método según cualquier reivindicación anterior, en el que el dicho valor de verificación comprende una suma de control.
5. Método según cualquier reivindicación anterior, en el que el dicho texto se divide en un número predeterminado de cadenas y se determina un código de corrección de errores para cada cadena respectiva.
6. Método según cualquier reivindicación anterior, en el que el o cada dicho código de corrección de errores es un código Reed-Solomon.
7. Método según cualquier reivindicación anterior, en el que el dicho símbolo comprende datos de seguridad.
8. Método de verificación de un documento impreso que contiene texto que tiene la capacidad de que todo el contenido del texto puede verificarse mediante referencia al documento impreso, que comprende:
(i)
leer mediante máquina texto y un símbolo impresos en el documento;
(ii)
obtener uno o más códigos de corrección de errores a partir del dicho símbolo;
(iii)
utilizar el código o códigos de corrección de errores para realizar una operación de corrección de errores sobre el dicho texto;
(iv)
obtener un valor de verificación representativo de todo el contenido de un cuerpo predeterminado de texto a partir del dicho símbolo;
(v)
obtener un valor de verificación adicional a partir del dicho texto después de que se haya sometido a la operación de corrección; y
(vi)
comparar el dicho valor de verificación adicional con el dicho valor de verificación obtenido a partir del dicho símbolo.
9. Método según la reivindicación 8, en el que se leen el dicho texto y símbolo utilizando un escáner óptico.
10. Método según la reivindicación 8 ó 9, en el que el dicho valor de verificación comprende una suma total de verificación.
11. Método según la reivindicación 8, 9 ó 10, en el que el dicho valor de verificación comprende una suma de control.
12. Método según cualquiera de las reivindicaciones 8 a 11, en el que el texto se divide en una serie de cadenas y un dicho código de corrección de errores se asocia con cada dicha cadena respectiva.
\newpage
13. Método según cualquiera de las reivindicaciones 8 a 12, en el que el o cada dicho código de corrección de errores es un código Reed-Solomon.
14. Método según cualquiera de las reivindicaciones 8 a 13, en el que el dicho símbolo comprende datos de seguridad y el dicho método comprende una etapa de utilizar los dichos datos de seguridad para extraer información contenida dentro del dicho símbolo.
15. Documento impreso de auto-autenticación que comprende un cuerpo de texto y un símbolo legible por máquina, en el que dicho símbolo legible por máquina comprende un valor de verificación y uno o más códigos de corrección de errores, siendo el dicho valor de verificación representativo de todo el contenido de datos del dicho cuerpo de texto y estando el código o códigos de corrección de errores adaptados para corregir el dicho texto después de que se haya leído por una máquina.
16. Documento impreso de auto-autenticación según la reivindicación 15, en el que el dicho valor de verificación comprende una suma total de verificación.
17. Documento de auto-autenticación según la reivindicación 15 ó 16, en el que el dicho valor de verificación comprende una suma de control.
18. Documento de auto-autenticación según cualquiera de las reivindicaciones 15 a 17, en el que el o cada dicho código de corrección de errores es un código Reed-Solomon.
19. Documento de auto-autenticación según cualquiera de las reivindicaciones 15 a 18, en el que el dicho símbolo legible por máquina comprende datos de seguridad.
20. Dispositivo para producir un documento de auto-autenticación, estando el dicho dispositivo adaptado para proporcionar texto que va a grabarse sobre el dicho documento; para generar un valor de verificación de texto representativo de todo el contenido del dicho texto; para generar uno o más códigos de corrección de errores para corregir el dicho texto después de que se haya leído por una máquina; y para generar un símbolo legible por máquina representativo del dicho valor de verificación de texto y del dicho código o códigos de corrección de errores, símbolo legible por máquina que está adaptado para incorporarse en el documento cuando éste se imprime.
21. Dispositivo según la reivindicación 20, que comprende una impresora.
22. Dispositivo para verificar un documento de auto-autenticación, estando el dicho dispositivo adaptado para recibir un texto y un símbolo contenidos dentro del dicho documento, para obtener uno o más códigos de corrección de errores a partir del dicho símbolo, para aplicar una operación de corrección al dicho texto utilizando el dicho código o códigos de corrección de errores, para obtener un valor de verificación representativo de todo el contenido de un cuerpo predeterminado de texto a partir del dicho símbolo, para obtener un valor de verificación adicional a partir del dicho texto recibido después de que se haya sometido al dicho procedimiento de corrección de errores; y para comparar el dicho valor de verificación con el dicho valor de verificación adicional.
23. Dispositivo según la reivindicación 22, que comprende un escáner óptico.
ES02722489T 2001-05-04 2002-05-03 Metodo y aparato para la creacion de un documento de auto-autenticaci on. Expired - Lifetime ES2286248T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB0111063.4A GB0111063D0 (en) 2001-05-04 2001-05-04 Method and apparatus for the creation of a self authenticating
GB0111063 2001-05-04

Publications (1)

Publication Number Publication Date
ES2286248T3 true ES2286248T3 (es) 2007-12-01

Family

ID=9914105

Family Applications (1)

Application Number Title Priority Date Filing Date
ES02722489T Expired - Lifetime ES2286248T3 (es) 2001-05-04 2002-05-03 Metodo y aparato para la creacion de un documento de auto-autenticaci on.

Country Status (10)

Country Link
US (1) US7757091B2 (es)
EP (1) EP1384377B1 (es)
AT (1) ATE360325T1 (es)
AU (1) AU2002253368B2 (es)
CA (1) CA2446378A1 (es)
DE (1) DE60219613T2 (es)
ES (1) ES2286248T3 (es)
GB (1) GB0111063D0 (es)
WO (1) WO2002091730A1 (es)
ZA (1) ZA200308784B (es)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7047404B1 (en) * 2000-05-16 2006-05-16 Surety Llc Method and apparatus for self-authenticating digital records
US7162035B1 (en) 2000-05-24 2007-01-09 Tracer Detection Technology Corp. Authentication method and system
US8171567B1 (en) 2002-09-04 2012-05-01 Tracer Detection Technology Corp. Authentication method and system
GB0228955D0 (en) * 2002-12-12 2003-01-15 Enseal Systems Ltd Document with user authentification
JP4903079B2 (ja) * 2006-04-25 2012-03-21 株式会社リコー スキャン文書管理システム
US7903092B2 (en) * 2006-05-25 2011-03-08 Atmel Corporation Capacitive keyboard with position dependent reduced keying ambiguity
JP4321564B2 (ja) * 2006-08-10 2009-08-26 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置
US7995196B1 (en) 2008-04-23 2011-08-09 Tracer Detection Technology Corp. Authentication method and system
US20110161674A1 (en) * 2009-12-29 2011-06-30 Konica Minolta Systems Laboratory, Inc. Document authentication using document digest verification by remote server
WO2011119137A1 (en) 2010-03-22 2011-09-29 Lrdc Systems, Llc A method of identifying and protecting the integrity of a set of source data
US10394344B2 (en) * 2017-11-07 2019-08-27 International Business Machines Corporation Character input error correction
JP2019197321A (ja) * 2018-05-08 2019-11-14 京セラドキュメントソリューションズ株式会社 画像処理装置及び画像形成装置
EP3611647B1 (en) 2018-08-15 2024-01-03 Ordnance Survey Limited Method for processing and verifying a document
JP2022535764A (ja) * 2019-06-03 2022-08-10 シクパ ホルディング ソシエテ アノニム 認定されたテキスト文書

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4413339A (en) * 1981-06-24 1983-11-01 Digital Equipment Corporation Multiple error detecting and correcting system employing Reed-Solomon codes
US5544045A (en) * 1991-10-30 1996-08-06 Canon Inc. Unified scanner computer printer
US5432506A (en) * 1992-02-25 1995-07-11 Chapman; Thomas R. Counterfeit document detection system
GB9309914D0 (en) * 1993-05-14 1993-06-30 George Waterston & Sons Limite Security system
US5428630A (en) * 1993-07-01 1995-06-27 Quantum Corp. System and method for verifying the integrity of data written to a memory
GB2288476A (en) * 1994-04-05 1995-10-18 Ibm Authentication of printed documents.
US5765176A (en) * 1996-09-06 1998-06-09 Xerox Corporation Performing document image management tasks using an iconic image having embedded encoded information
US6233684B1 (en) * 1997-02-28 2001-05-15 Contenaguard Holdings, Inc. System for controlling the distribution and use of rendered digital works through watermaking
US6170744B1 (en) * 1998-09-24 2001-01-09 Payformance Corporation Self-authenticating negotiable documents
AU5836800A (en) 1999-07-05 2001-01-22 Dexrad (Proprietary) Limited Document verification system
GB2365184B (en) 1999-08-21 2004-06-16 Kent Ridge Digital Labs Legitimacy protection of electronic document and a printed copy thereof
WO2007038653A2 (en) * 2005-09-26 2007-04-05 Digimarc Corporation Secure core material for documents
US20070110235A1 (en) * 2005-11-17 2007-05-17 Kirk Pruitt Method and system for authenticating appraisal reports
JP2007174335A (ja) * 2005-12-22 2007-07-05 Fuji Xerox Co Ltd 画像読取装置および画像読取装置における電子文書作成方法および電子文書作成プログラム

Also Published As

Publication number Publication date
US7757091B2 (en) 2010-07-13
CA2446378A1 (en) 2002-11-14
WO2002091730A1 (en) 2002-11-14
DE60219613D1 (de) 2007-05-31
GB0111063D0 (en) 2001-06-27
EP1384377B1 (en) 2007-04-18
AU2002253368B2 (en) 2008-01-17
US20040169366A1 (en) 2004-09-02
EP1384377A1 (en) 2004-01-28
ZA200308784B (en) 2004-09-13
DE60219613T2 (de) 2007-12-20
ATE360325T1 (de) 2007-05-15

Similar Documents

Publication Publication Date Title
ES2286248T3 (es) Metodo y aparato para la creacion de un documento de auto-autenticaci on.
US10020938B2 (en) Secure messaging with disposable keys
US5912974A (en) Apparatus and method for authentication of printed documents
JP5731071B2 (ja) 二次元コード認証装置、二次元コード生成装置、二次元コード認証方法、及びプログラム
EP1340188B1 (en) Method of encoding a handwritten signature
US8297510B1 (en) Mathematical method of 2D barcode authentication and protection for embedded processing
US12056719B2 (en) Authentication of packaged products
US20080301815A1 (en) Detecting Unauthorized Changes to Printed Documents
US20220224532A1 (en) Systems and Methods for Hiding Private Cryptographic Keys in Multimedia Files
AU2002253368A1 (en) Method and apparatus for the creation of a self-authenticating document
JP2022535764A (ja) 認定されたテキスト文書
Wellem et al. Academic document authentication using elliptic curve digital signature algorithm and QR code
EP1678677A1 (en) Method and system for protecting and authenticating a digital image
ES2203741T3 (es) Procedimiento para una indicacion segura, durante la transmision de datos o ficheros entre usuarios.
US9705675B2 (en) Method and system making it possible to test a cryptographic integrity of an error tolerant data item
Gaikwad et al. Advanced security in 2LQR code generation and document authentication
RU2543928C1 (ru) Способ формирования электронного документа и его копий
JP2008192111A (ja) 誤り訂正機能を持つシンボルシステムにおいて機密性向上を導入する方法、システム及び製品
CN112668677B (zh) 印刷量子点信息编码方法以及解码方法
Ur-Rehman et al. Content based image authentication with error correction
Amankona et al. A framework for securing data by using elliptic curve cryptography and Reed Solomon coding schemes
Culnane et al. Authenticating binary text documents using a localising omac watermark robust to printing and scanning
JP2023178735A (ja) 電子ファイルの改ざんの検知およびその方法、ならびにプログラム
Ur-Rehman et al. Approximate Image Authentication and Correction using Spatial and Frequency Domain Features
JP2007318257A (ja) 情報埋め込み装置、情報復元装置、情報埋め込み方法、情報復元方法、制御プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体、印刷物