ЗАСЕКРЕЧЕННЫЙ ШТРИХКОД
SECURE BARCODE

Настоящее изобретение относится к кодам и конкретно касается кодов, имеющих две части, в которых обе части связаны друг с другом.
Графически изображаемые и машиносчитываемые коды хорошо известны. Такие коды обычно используются, например, на товарах широкого потребления и на продукции народно-хозяйственного назначения, когда считывание может предоставить информацию относительно цены, серии образца и происхождения продукта. Коды такого типа могут быть использованы в автоматизированной выдаче чеков в супермаркетах, в целях контроля состояния товарных запасов, или для проверки соответствия продукта и его упаковки. Более сложные машиносчитываемые коды этого типа могут быть использованы для предохранения от подделки, подмены и обмана как признаки защиты на определенных потребительских товарах, таких как лекарственные препараты, алкоголь, табачные изделия и им подобные или на документах важного значения, таких как денежные знаки, облигации, отметки об уплате налога, проездные документы и идентификационные карточки. Существует много широко используемых различных видов кодовых форматов; они включают в себя буквенно-цифровые, линейные штрихкоды и двумерные штрихкоды. Известные штрихкоды включают в себя: Data Matrix, PDF-417, Micro-PDF-417, QR Code, MaxiCode, Codabar, RSS. EAN 128, UPC и Pharmacode. Большим недостатком кодов этого типа является легкость, с которой они могут быть скопированы. Следующим недостатком является то, что действующий код может быть разгадан и сконструирован, так как коды основаны на алгоритмах, которые доступны каждому. Информация, которая закодирована внутри кода, может быть выведена без обращения к какой-либо базе данных, даже если информация зашифрована. Данные могут быть использованы или подделаны для запрещенных целей; это сильно снижает их эффективность как устройства защиты или устройства отслеживания и контроля прохождения. Применение Data Matrix и PDF 417 кодов как дешевых устройств отслеживания и контроля прохождения начинает испытываться в некоторых секторах потребительских товаров. Они имеют достаточно большой объем данных, чтобы нести первичную информацию о предыстории выпуска отдельного экземпляра, также как и его место назначения и подробные данные покупателя. Однако недостаточность этой информации будет всегда ограничивать их применимость в сфере отслеживания и контроля прохождения.
Один вид машиносчитываемого кода современного уровня описан в нашем патенте Великобритании №2383878 (полное содержание которого включено здесь путем ссылки) и доступен для приобретения под торговой маркой «FractureCode» (RTM). Преимущества способа кодирования этого типа над другими серийными машиносчитываемыми кодовыми системами заключается в возможности создания очень большого ряда псевдослучайных индивидуальных кодов, делающего невозможным разгадку следующего кода в последовательности. Другое главное преимущество состоит в том, что код сам по себе не несет никакой информации и никакая информация не требуется для создания кода в то время когда код печатается. Эти изображения кода бессмысленны или неявны до момента его использования.
Этими кодами маркируются такие изделия, как потребительские товары или их упаковка. Для получения информации об изделии код должен быть считан устройством, которое, во-первых, выполняет операцию сканирования, сканируя изображение кода в цифровой форме. Изображение затем обрабатывается в электронном виде для выделения путем применения алгоритма, буквенно-цифрового дескриптора, который может быть использован для отыскивания информации, предварительно связанной с ним, в базе данных.
Код обычно расположен на поверхности изделия и содержит в себе индивидуальный графический узор, такой как линии, точки или эллипсы, с областью такого узора, ограниченной прямоугольным блоком или любым другим ограничивающим контуром, для образования кодового окна.
Скопировать такой код чрезвычайно трудно по ряду причин. Во-первых, трудно воспроизвести код с требуемой степенью точности так, чтобы считывающее устройство было бы неспособно отличить положение линии оригинального кода от положения линии копии, и выделило бы тот же самый буквенно-цифровой дескриптор, какой был бы выделен при сканировании оригинального кода. Эта особенность является отчасти функцией степени детализации кода. Во-вторых, большинство кодов занимают площадь не более чем 1 мм на 1 мм и могут печататься ультрафиолетовыми чернилами, инфракрасными чернилами или другими конспиративными секретными чернилами.
Хотя коды этого типа действительно являются очень надежными, в некоторых ситуациях, когда они используются в устройстве отслеживания и контроля прохождения, они имеют недостаток в том, что сравнение кодов с информацией, связанной с кодом, может быть получено только при обращении к базе данных. Поэтому желательно разработать код, который не может быть дублирован и из которого может быть прямо извлечена информация.
Согласно первому аспекту настоящего изобретения здесь разработан представленный графически машиносчитываемый код, имеющий первую неявную часть и вторую часть, содержащую в себе изобретенный код, с присоединенной информацией, в котором первая и вторая части связаны электронным способом в носителе данных так, что связь может быть проверена устройством считывания кода по ссылке к носителю данных для установления подлинности второй части.
Первая часть кода может быть, по меньшей мере, участком графического признака. Вторая часть кода может быть стандартным кодом, таким как штрихкод. Как вариант вторая часть кода может быть цифровым или буквенно-цифровым кодом.
Участок графического изображения может быть ограничен контуром, который может быть временным ограничением, создаваемым устройством считывания кода относительно условленной точки срабатывания, только когда код считывается.
Согласно второму аспекту настоящего изобретения здесь разработан способ засекречивания двусоставного кода, содержащего в себе первую неявную часть и вторую часть, содержащую в себе изобретенный код, с присоединенной информацией, включающий в себя этапы: считывание первой части кода; считывание второй части кода; связывание первой и второй частей кода в запоминающем устройстве.
Считывание второй части кода может вывести буквенно-цифровую строку символов.
Первая часть кода может быть, по меньшей мере, участком графического признака, и этап считывания первой части может включать в себя: электронное сканирование изображения, по меньшей мере, участка графического признака и обработку отсканированного изображения для выделения цифрового или буквенно-цифрового дескриптора. Считывание первой части кода может дополнительно включать в себя создание контура, который может быть временным ограничением вокруг участка графического признака относительно условленной точки срабатывания.
Согласно третьему аспекту настоящего изобретения здесь разработано устройство для засекречивания двусоставного кода, образованного первой неявной частью и второй частью, несущей в себе изобретенный код, с присоединенной информацией, содержащее устройство для считывания первой части кода; устройство для считывания второй части кода; запоминающее устройство; блок передачи данных в запоминающее устройство для связи первой и второй частей.
Устройство может дополнительно содержать в себе декодер для преобразования второй части кода в цифровую или буквенно-цифровую строку символов.
Первая часть кода может быть, по меньшей мере, участком графического признака, и устройство может дополнительно содержать в себе камеру для электронного сканирования изображения, по меньшей мере, участка графического признака и процессор для обработки отсканированного изображения для выделения дескриптора. Устройство может, кроме того, содержать в себе блок вычисления окна для ограничения участка графического признака, который должен быть обработан процессором; блок детектора для отыскания условленной точки срабатывания для определения положения участка графического признака относительно нее.
Согласно четвертому аспекту настоящего изобретения здесь разработан способ распознавания двусоставного кода, имеющего первую неявную часть и вторую часть, содержащую в себе изобретенный код, с присоединенной информацией, включающий в себя этапы: считывание первой части кода; считывание второй части кода; проверку, являются ли первая и вторая части кода связанными в запоминающем устройстве.
Считывание второй части кода может вывести цифровую или буквенно-цифровую строку символов.
Первая часть кода может быть, по меньшей мере, участком графического признака, и этап считывания первой части кода может включать в себя: электронное сканирование изображения участка графического признака и обработку отсканированного изображения для выделения цифрового или буквенно-цифрового дескриптора. Считывание первой части кода может дополнительно включать в себя создание контура, который может быть временным ограничением, вокруг участка графического признака относительно условленной точки срабатывания.
Согласно пятому аспекту настоящего изобретения здесь разработано устройство для распознавания двусоставного кода, имеющего первую неявную часть и вторую часть, несущую в себе изобретенный код с присоединенной информацией, содержащее: устройство для считывания первой части кода; устройство для считывания второй части кода; устройство памяти; и блок идентификации для проверки, являются ли первая и вторая части кода связанными в запоминающем устройстве.
Устройство может дополнительно включать в себя декодер для преобразования второй части кода в цифровую или буквенно-цифровую строку символов.
Первая часть кода может быть, по меньшей мере, участком графического признака, и устройство может дополнительно содержать в себе камеру для электронного сканирования изображения, по меньшей мере, участка графического признака и процессор для обработки отсканированного изображения для выделения дескриптора. Устройство может дополнительно содержать в себе блок вычисления окна для выделения участка графического признака, который должен быть обработан процессором; и блок детектора для нахождения условленной точки срабатывания для определения позиции участка графического признака относительно нее.
Код, согласно настоящему изобретению, может быть соответствующим стандарту, такому как любой из семейства кодов, именуемых щтрихкодами, но не ограничен этим.
Изобретение может содержать в себе любую комбинацию признаков и/или признаков, относящихся к этому документу, исключая комбинацию таких признаков, которые являются несовместимыми.
Варианты воплощения настоящего изобретения описаны здесь с помощью примеров со ссылками на сопровождающие чертежи, в которых:
на фиг.1a-1b показан код согласно первому варианту воплощения настоящего изобретения;
на фиг.2 схематически показано устройство для присвоения информации коду согласно первому варианту воплощения настоящего изобретения;
на фиг.3 схематически показано устройство для считывания кода согласно первому варианту воплощения настоящего изобретения;
на фиг.4 показан код согласно второму варианту воплощения настоящего изобретения;
на фиг.5 схематически показано устройство для присвоения информации коду согласно второму варианту воплощения настоящего изобретения;
на фиг.6 схематически показано устройство для считывания кода согласно второму варианту воплощения настоящего изобретения;
на фиг.7 показан код согласно третьему варианту воплощения настоящего изобретения;
на фиг.8 показан код согласно четвертому варианту воплощения настоящего изобретения; и
на фиг.9 показан код согласно пятому воплощению настоящего изобретения.
На фиг.1a-1b показано изделие 10, имеющее множество прямых линий 14, напечатанных на его поверхности 12. Линии расположены под различными углами так, что, по меньшей мере, некоторые из линий пересекают друг друга. Узор линий 14 меняется постоянно, и каждое изделие 10 имеет индивидуальное расположение линий, образующих графический признак на его поверхности 12. На фиг.1а и 1b показаны различные изделия 10, имеющие различный графический признак. Хотя и на примере множество пересекающихся линий, код может содержать в себе другие элементы или формы, такие как точки, прямоугольники, эллипсы или комбинации таких элементов и/или форм. Во время процесса печати линии ничего не значат и никаких данных и информации с ними не связано. Также напечатан на поверхности 12 изделия 10 стандартный изобретенный код, который в этом случае является штрихкодом 24 в форме PDF417 символа. Штрихкод 24 содержит буквенно-цифровые данные и когда штрихкод считывается, эти данные расшифровываются без обращения к базе данных. Штрихкод 24 может содержать информацию такую, как дата и время изготовления, серийный номер и происхождение изделия, например, в форме «01/01/2007, 1400, 731469821, LONDON».
Для того чтобы обезопасить штрихкод против несанкционированного воспроизведения, данные штрихкода связывают с участком кодовых линий 14. Чтобы сделать это, должно быть определено окно 18, которое ограничивает участок линий 14. Линии внутри этого окна затем должны быть считаны, закодированы и далее присвоены к данным штрихкода.
На фиг.2 показана блок-схема устройства 200 для считывания кодовых линий 14, кодирования их участка и присвоения данных штрихкода к этому. Камера 200 сканирует изображение кодовых линий 14 и штрихкода 24, Отсканированное изображение корректируется по ошибкам и увеличивается в электронном виде в блоке 204 коррекции ошибки и увеличения изображения. Блок детектора 206 находит ранее определенную точку срабатывания 16. Точка 16 срабатывания в этом примере находится в нижнем левом углу штрихкода 24, но может быть в углу изделия 24, меткой или точкой на изделии 10 или любой другой машиносчитываемой точкой. Точка срабатывания может быть напечатана с использованием или обычных чернил или секретными чернилами. На основе ранее определенных координат виртуальное кодовое окно 18 определенного размера и формы далее создается вокруг участка кодовых линий 14 относительно точки 16 срабатывания блоком 207 вычисления кодового окна. Координаты виртуального кодового окна 18 относительно точки срабатывания 16 определяются устройством 200 и позиция виртуального кодового окна поэтому одна и та же для каждого изделия 10, которое сканируется. Однако узор кодовых линий 14 внутри виртуального окна 18 является индивидуальным для каждого изделия. Декодирующее устройство 208 затем обрабатывает код 20, который является участком кодовых линий 14, выделенным виртуальным кодовым окном, и процессор 209 применяет алгоритм для выделения буквенно-цифрового дескриптора. Декодер 203 штрихкода декодирует штрихкод 24 для выведения буквенно-цифровой строки символов. Буквенно-цифровой дескриптор кода 20 затем присваивается буквенно-цифровой строке символов штрихкода 24 в блоке 210 передачи данных, и эта связь хранится в запоминающем устройстве 214. В противоположность присвоению буквенно-цифрового дескриптора полной буквенно-цифровой строке символов буквенно-цифровой дескриптор может быть присвоен определенному индивидуальному участку, такому как порядковый номер буквенно-цифровой строки символов.
Как вариант буквенно-цифровая строка символов загружается в блок 210 передачи данных, где она присваивается дескриптору. Связь дескриптора и буквенно-цифровой строки символов далее хранится в запоминающем устройстве 210. В противоположность связи полной буквенно-цифровой строки символов с буквенно-цифровым дескриптором только конкретный участок, такой как порядковый номер, может быть связан с ним.
Буквенно-цифровой дескриптор и/или буквенно-цифровая строка символов могут быть выведены на устройство дисплея 216.
На фиг.3 схематически показано портативное считывающее устройство 300 для считывания и распознавания штрихкода 24. Камера 302 сканирует изображение кодовых линий 14 и штрихкода 24, и каковое изображение затем корректируется и увеличивается электронным способом в блоке 304 коррекции ошибки и увеличения. Блок поиска 306 находит ранее заданную точку срабатывания 16 и блок 307 вычисления окна создает виртуальное кодовое окно 18 определенной формы и размера на основе ранее установленных координат. Виртуальное кодовое окно 18 точно в той же позиции, в которой изделие первоначально сканировалось. Декодирующее устройство 308 далее обрабатывает код 20, который представляет собой участок кодовых линий 14, ограниченный виртуальным кодовым окном 18, и процессор 309 применяет алгоритм для выделения буквенно-цифрового дескриптора. Декодер 303 штрихкода декодирует штрихкод 24 для выведения его буквенно-цифровой строки символов. Идентификационный блок 310 далее сравнивает пару буквенно-цифровой строки символов и дескриптора с парами в запоминающем устройстве 214, в котором информация сохранялась в процессе кодирования. Если одна и та же пара может быть обнаружена, то дисплейное устройство 316 показывает, что штрихкод 24 подлинный, т.е. остается в пределах своего первоначального контекста. Если пара не может быть найдена или если считывающее устройство 300 не способно выделить дескриптор, то дисплейное устройство 316 извещает, что штрихкод 24 - «липа», в таком случае это может быть несанкционированная копия подлинного штрихкода или, наоборот, штрихкод, созданный и нанесенный нелегально.
Преимущество этого двусоставного кода в том, что информация опять же может быть считана прямо со штрихкода 24 без обращения к базе данных, как с любым традиционным штрихкодом. Однако подлинность штрихкода 24 может быть проверена сканированием кода 20 и штрихкода 24 и соотнесением с базой данных. Поэтому код 20 засекречивает штрихкод 24.
Контрафакторы, желающие подделать штрихкод 24, должны также копировать код 20, чтобы гарантировать, что его подлинность будет подтверждена при сканировании. Код 20 чрезвычайно трудно копировать благодаря степени детализации, требуемой для выделения такого же буквенно-цифрового дескриптора при применении алгоритма. Кроме того, так как не сразу видно, где на подложке 12 расположен кодовый участок 20, должен быть воспроизведен полный графический признак 14.
Если следующий штрихкод в ряду создается и наносится, то при проверке подлинности штрихкода или код 20 не будет обнаружен, или код 20 будет неправильным в зависимости от того, воспроизведен или нет также графический признак 14. Это потому что нет никакого способа узнать, как код 20 связан в пару с каким-либо определенным штрихкодом 24. Шанс угадать правильное соединение пары штрихкода 24 и кода 20 чрезвычайно мал.
Кроме того, потенциальный контрафактор мог бы даже не понять, что есть графический признак 14, так как он может быть напечатан с использованием тайных чернил.
Второй вариант воплощения настоящего изобретения показан на фигуре 4. На изделии 30 имеется множество прямых линий 34, напечатанных на его поверхности 32, которые расположены под различными углами так, что, по меньшей мере, некоторые линии пересекают друг друга. Узор кодовых линий по поверхности 32 установлен для каждого изделия 30 и поэтому каждое изделие в партии имеет один и тот же узор линий на своей поверхности. Когда кодовые линии печатаются, они не имеют содержания. Также напечатан на поверхности 32 изделия 30 штрихкод 44 в форме PDF417 идентификатора. Штрихкод содержит в себе буквенно-цифровую информацию и может быть декодирован без обращения к базе данных. В дополнение к содержащейся в штрихкоде 44 информации, такой как дата, время, серийный номер и источник, он содержит координаты виртуального кодового окна 38 относительно точки срабатывания 36. Точка срабатывания 36 в этом примере - в нижнем правом углу изделия. Кодовые линии 34 и/или штрихкод 44 могут быть напечатаны с использованием или обычных чернил или тайных чернил таких, которые обнаруживаемы, только когда освещены или облучены светом определенного частотного диапазона. Координаты виртуального кодового окна 38 расположены так, чтобы быть различными для каждого изделия 30 в партии изделий. Таким образом, код 40, выделенный виртуальным кодовым окном 38, является индивидуальным для каждого изделия партии.
Мало того что возможный контрафактор должен был бы знать координаты окна и точки срабатывания, он должен также быть в состоянии воспроизвести кодовые линии внутри окна очень точно.
На фиг.5 показана блок-схема устройства 200 для считывания штрихкода 44 и кодовых линий 34, кодирования участка 40 кодовых линий и присоединение данных штрихкода 44 к нему. Это такое же устройство, как приведенное на фиг.2, за исключением второго декодера 205 штрихкода для предоставления координат виртуального кодового окна 38. Буквенно-цифровая строка символов 46, содержащаяся в штрихкоде 44, соединяется с кодом 40 таким же образом, как и в первом варианте воплощения настоящего изобретения, за исключением того, что координаты виртуального кодового окна 38 определяются считыванием штрихкода 44 на изделии.
На фиг.6 схематически показано портативное считывающее устройство 300 для проверки подлинности или, наоборот, штрихкода 44. Это такое же устройство, как приведенное на фиг.3, за исключением второго декодера 305 штрихкода для получения координат виртуального кодового окна 38 из штрихкода 44. Способ для установления подлинности штрихкода 44 такой же, как и в первом варианте воплощения настоящего изобретения, за исключением декодера 305 штрихкода для определения координат виртуального кодового окна 38 относительно точки срабатывания 36.
На фиг.7 показан третий вариант воплощения настоящего изобретения. Это тот же, что и второй вариант воплощения настоящего изобретения, за исключением того, что кодовые линии 54, расположенные на подложке 52, меняются непрерывно и поэтому участок кодовых линий в пределах любого ограниченного участка подложки индивидуален. Штрихкод 64 также расположен на подложке, который, помимо всего прочего, содержит информацию об определении местоположения виртуального кодового окна 58, которое определяется кодом 60, относительно точки срабатывания 56. Точка срабатывания в этом варианте воплощения настоящего изобретения в верхнем левом углу штрихкода 64. Коду 60 может быть присвоена буквенно-цифровая строка символов, содержащаяся в штрихкоде 64, устройством, приведенным на фиг.5 и описанным во втором варианте настоящего изобретения. Код 60 может быть считан с использованием устройства, приведенного на фиг.6, и так же, как описано во втором варианте настоящего изобретения.
Четвертый вариант настоящего изобретения показан на фиг.8. Это по существу тот же, что и первый вариант настоящего изобретения, за исключением того, что кодовое окно 78, которое ограничивает код 80, представлено графически и здесь нет точки срабатывания. Штрихкодом 84 в этом примере является DataMatrix (TM) код. Коду 80 может быть присвоена буквенно-цифровая строка символов, содержащаяся в штрихкоде 84, устройством, приведенным на фиг.2 и описанным для первого варианта настоящего изобретения. Разница в том, что процессор 202 визуально определяет кодовое окно 78 как противоположное окну, определенному устройством относительно условленной точки срабатывания. Код 80 может быть считан с использованием устройства, приведенного на фиг.6, и так как описано в первом варианте воплощения настоящего изобретения. Опять же разница только в том, что устройство визуально определяет кодовое окно 78.
На фиг.9 показан пятый вариант настоящего изобретения. Это, по существу, тот же, что и третий вариант настоящего изобретения, за исключением того, что изделие 90 содержит в себе подложку 93, облицованную прозрачным ламинированным слоем 95. Кодовые линии 94 расположены на ламинате 95 и штрихкод 104 вместе с точкой срабатывания 96 расположен на подложке 93. Если изделие 90 - подделка, а ламинат 95 и подложка 93 разделены или повреждены, то код будет не распознаваем, так как относительное положение точки срабатывания 96 и кодовых линий 94 изменится, и участок кодовых линий 96 внутри виртуального кодового окна 98, определенного относительно точки срабатывания 96, изменится, что приведет к нераспознаванию буквенно-цифрового дескриптора.
Как альтернатива использованию графического признака напечатанного чернилами или распылением чернил графический признак может быть образован случайным расположением волокон внутри подложки. Такие волокна могут быть введены в состав подложки в процессе изготовления и могут быть окрашенными или УФ-чувствительными.
Чернила, используемые в процессе, описанном выше, могут быть маркировочными чернилами, которые могут содержать в себе люминесцентные и/или фосфоресцирующие составляющие или фильтры, такие как УФ-блокаторы.