не поддающиеся подделке и фальсификации этикетки со случайно встречающимися признаками
Классы МПК: | B42D15/10 удостоверение личности, кредитные, чековые или подобные информационные карточки G06K19/08 с использованием маркировок различного вида на одном и том же носителе записи, например одна маркировка считывается с помощью оптических, а другая с помощью магнитных средств G09F3/00 Ярлыки, этикетки и тп средства для идентификации и индикации |
Автор(ы): | КИРОВСКИ Дарко (US), ЮВАЛЬ Гидеон А. (US), ЯКОБИ Яков (US), ЧЭНЬ Юйцюнь (US) |
Патентообладатель(и): | МАЙКРОСОФТ КОРПОРЕЙШН (US) |
Приоритеты: |
подача заявки:
2005-01-26 публикация патента:
20.10.2009 |
Настоящее изобретение касается не поддающихся подделке и/или фальсификации этикеток и, в частности, использования случайно встречающихся признаков этикеток для ограничения запрещенных попыток подделки и/или фальсификации этикетки. Способ включает кодирование множества признаков этикетки с помощью секретного ключа для создания сертификата подложки, в котором множество признаков этикетки содержит координаты двух концов множества прядей оптического волокна на этикетке, декодирование сертификата подложки с помощью открытого ключа, верификацию декодированного сертификата подложки по множеству признаков этикетки для определения подлинности этикетки. При этом верификация включает получение по меньшей мере двух снимков этикетки, извлечение данных из снимков этикетки, определение функции преобразования движения извлеченных данных и формирование многомерной карты распределения множества признаков этикетки. Предложенное изобретение обеспечивает высокую степень защиты этикеток от копирования и подделки. 3 н. и 22 з.п. ф-лы, 17 ил.
Формула изобретения
1. Способ изготовления этикетки, содержащий:
кодирование множества признаков этикетки (200; 402; 502) с помощью секретного ключа (508; 608) для создания сертификата подложки;
в котором множество признаков этикетки содержит координаты двух концов множества прядей (100; 202; 204) оптического волокна на этикетке;
декодирование сертификата подложки с помощью открытого ключа (806; 812); и
верификацию декодированного сертификата подложки по множеству признаков этикетки для определения подлинности этикетки, при этом верификация содержит:
получение по меньшей мере двух снимков этикетки;
извлечение данных из снимков этикетки;
определение функции преобразования движения извлеченных данных; и формирование многомерной карты распределения множества признаков этикетки.
2. Способ по п.1, в котором сертификат подложки создают с помощью этикетки.
3. Способ по п.1, в котором сертификат подложки создают с помощью этикетки и представляют как один или более элементов, выбранных из группы, состоящей из штрих-кода и радиочастотного идентификатора.
4. Способ по п.1, в котором сертификат подложки создают дистанционно.
5. Способ по п.1, в котором сертификат подложки создают дистанционно посредством данных, хранимых в базе данных.
6. Способ по п.1, в котором многомерная карта распределения множества признаков этикетки имеет размерность, выбранную из группы, содержащей приблизительно два, три и четыре.
7. Способ по п.1, в котором извлеченные данные содержат данные, выбранные из группы, содержащей координаты направляющего рисунка и координаты освещенных концов волокон.
8. Способ по п.1, в котором многомерную карту распределения множества признаков этикетки подвергают сжатию.
9. Способ по п.1, в котором данные, касающиеся множества признаков этикетки, подвергают сжатию до кодирования.
10. Способ по п.1, в котором множество признаков этикетки содержит один или более признаков, выбранных из группы, содержащей длину оптического волокна, кривизну оптического волокна, относительную интенсивность света, испускаемого оптическим волокном, флуоресценцию оптического волокна, цвет оптического волокна и толщину оптического волокна.
11. Способ по п.1, дополнительно содержащий привязку сертификата спецификации к сертификату подложки.
12. Способ по п.1, дополнительно содержащий привязку сертификата спецификации к сертификату подложки, причем сертификат спецификации содержит данные спецификации.
13. Способ по п.1, дополнительно содержащий привязку сертификата спецификации к сертификату подложки, в котором сертификат спецификации создают с использованием секретного ключа.
14. Способ по п.1, дополнительно содержащий:
привязку сертификата спецификации к сертификату подложки; и
верификацию соответствия сертификата спецификации сертификату подложки для определения подлинности этикетки.
15. Способ по п.14, в котором верификацию сертификата спецификации выполняют с использованием открытого ключа.
16. Один или более компьютерно-читаемых носителей, хранящих исполняемые компьютером команды, которые при исполнении реализуют способ по п.1.
17. Система для изготовления этикетки, содержащая:
процессор;
системную память, связанную с процессором;
сканер подложки, имеющий оперативную связь с процессором для сканирования множества признаков этикетки;
при этом множество признаков этикетки содержит координаты двух концов прядей оптического волокна на этикетке,
кодер этикетки для кодирования множества признаков этикетки как сертификата подложки; и
принтер этикетки для печати сертификата подложки на этикетке;
сканер этикетки для верификации сертификата подложки по множеству признаков этикетки, при этом верификация содержит:
получение по меньшей мере двух снимков этикетки;
извлечение данных из снимков этикетки;
определение функции преобразования движения извлеченных данных; и формирование многомерной карты распределения множества признаков этикетки.
18. Система по п.17, в которой данные, относящиеся к сканированному множеству признаков этикетки, подвергают сжатию до кодирования.
19. Система по п.17, в которой принтер этикетки дополнительно печатает сертификат спецификации на этикетке.
20. Система по п.17, в которой множество признаков этикетки содержит один или более признаков, выбранных из группы, содержащей длину оптического волокна, кривизну оптического волокна, относительную интенсивность света, испускаемого оптическим волокном, флуоресценцию оптического волокна, цвет оптического волокна и толщину оптического волокна.
21. Система по п.17, дополнительно содержащая кодер специализированной этикетки для кодирования данных спецификации, привязанных к сертификату подложки, как сертификата спецификации.
22. Система по п.17, дополнительно содержащая систему верификации, содержащую:
сканер этикетки для сканирования сертификата подложки с этикетки; и
сканер верификации подложки для сканирования множества признаков этикетки,
причем, если сертификат подложки декодируют с использованием открытого ключа и декодированный сертификат подложки совпадает с множеством признаков этикетки, сканированным сканером верификации подложки, то этикетка объявляется подлинной.
23. Система по п.22, в которой совпадение определяют на основе порогового значения.
24. Система по п.17, дополнительно содержащая систему верификации, содержащую:
сканер этикетки для сканирования сертификата подложки с этикетки; и
сканер верификации подложки для сканирования множества признаков этикетки,
причем, если сертификат подложки декодируют с использованием открытого ключа и декодированный сертификат подложки не совпадет с множеством признаков этикетки, сканированным сканером верификации подложки, то этикетка объявляется поддельной.
25. Система по п.24, в котором соответствие определяют на основе порогового значения.
Описание изобретения к патенту
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение, в общем, касается не поддающихся подделке и/или фальсификации этикеток и, в частности, использования случайно встречающихся признаков этикеток (искусственно внедренных или естественно существующих) для ограничения запрещенных попыток подделки и/или фальсификации этикетки.
ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
Подделка и фальсификация этикеток обходятся продавцам и изготовителям товаров в миллиарды долларов ежегодного ущерба от неполученных доходов и утраты потенциальных покупателей. С распространением компьютерной технологии создание этикеток, имеющих сходство с подлинным изделием, стало проще. Например, сканер может быть использован для сканирования подлинной этикетки с высоким разрешением и последующего многократного воспроизведения полученного изображения за минимальную цену. Купоны также могут быть подвергнуты сканированию, модификации (например, с целью присвоения более высокой стоимости), многократной печати и погашению.
В последние годы стали использоваться различные технологии, призванные остановить поток подделок и фальсификаций. Одним из путей стало появление этикеток, защищенных штрихкодом. Штрихкод - это, как правило, машиночитаемый код, напечатанный на этикетке. Использование специального сканера позволяет быстро прочитать штрихкод и аутентифицировать этикетку. Проблема популярных этикеток со штрихкодом заключается в возможности использования идентичной этикетки на различных изделиях.
Другое получившее широкое распространение решение состоит в проверке сканированного штрихкода по надежным данным, хранимым в базе данных (например, система кассовых терминалов POS). Однако это решение требует введения и сохранения новейших данных от продавца (или изготовителя). Необходимым условием реализации такого решения является регулярное тесное сотрудничество разнообразных организаций. Кроме того, такое решение ограничивает гибкость своей реализации и не всегда выполнимо.
К тому же эти технологии имеют общий недостаток, а именно сканированные этикетки являются материально идентичными для данного товара. Следовательно, даже при высокой сложности процесса производства легальных этикеток фальсификаторам, как правило, не требуется много времени для нахождения способа создания "проходных" подделок. А в случае успеха однократного копирования этикетка может быть воспроизведена многократно (например, путем создания эталонной копии, тиражирование которой стоит недорого). Даже если этикетка помещена в черный список в базе данных после того, как была использована определенное число раз, нет никакой гарантии, что первые сканированные этикетки действительно являются подлинными.
Следовательно, существующие способы решения проблемы не позволяют создать этикетки, сравнительно трудно поддающиеся копированию и достаточно дешевые в производстве.
РЕЗЮМЕ
Предлагаются способы, позволяющие использовать случайно встречающиеся признаки этикетки (искусственно внедренные или естественно существующие) для создания не поддающихся подделке и/или фальсификации этикеток. В частности, этикетки со случайно встречающимися признаками подвергают сканированию для определения признаков этих этикеток. Полученную в результате сканирования информацию используют для создания идентифицирующего знака, который однозначно идентифицирует каждую этикетку и может быть впоследствии подвергнут верификации по имеющимся признакам для определения подлинности этикетки или подделки. В описываемом примере реализации изобретения идентифицирующий знак может быть снабжен криптографической подписью.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Подробное описание снабжено ссылками на прилагаемые фигуры. На этих фигурах крайняя левая цифра(ы) ссылочной позиции соответствует фигуре, на которой эта ссылочная позиция появляется впервые. Одни и те же ссылочные позиции на различных фигурах означают подобные или идентичные элементы.
Фиг.1 - вид сбоку волоконно-оптической пряди.
Фиг.2 - пример этикетки с прядями оптического волокна.
Фиг.3 - пример математического представления физических волоконно-оптических свойств этикетки, представленной на фиг.2.
Фиг.4 - пример способа изготовления и верификации этикетки, не поддающейся подделке и фальсификации.
Фиг.5 - пример системы изготовления универсальной этикетки.
Фиг.6 - пример системы изготовления специализированной этикетки.
Фиг.7 - пример способа генерации сертификата спецификации с использованием криптографической хеш-функции.
Фиг.8 - пример системы верификации этикетки.
Фиг.9 - пример системы для сканирования по участкам.
Фиг.10 - вид сбоку системы линейного сканирования.
Фиг.11 - пример способа обработки данных сканера.
Фиг.12 и 13 - два извлеченных последовательных снимка одной и той же этикетки.
Фиг.14 - соответствие точек извлечения данных, полученных из снимков, представленных на фиг.12 и 13.
Фиг.15 - результаты совпадения точек, полученные по двум отдельным проходам линейного сканера по волоконно-оптической этикетке.
Фиг.16 - пример вычисленной в цифровой форме функции распределения точек для квадратной этикетки, сканированной матрицей из 100×100 пикселов, и длине волокон, соответствующей 20 пикселам.
Фиг.17 - общая компьютерная среда, которая может быть использована для реализации описываемых в данном изобретении способов создания не поддающихся подделке и/или фальсификации этикеток с использованием случайно введенных оптических волокон.
ПОДРОБНОЕ ОПИСАНИЕ
В приводимом ниже описании изобретения рассмотрены способы создания этикеток, не поддающихся подделке и/или фальсификации. Этикетки содержат случайный рисунок физических признаков, естественно существующих или преднамеренно внедренных. Этот рисунок уникален для каждой этикетки и не может быть точно скопирован за приемлемую цену (т.е. обладает свойством, необходимым для не поддающихся подделке этикеток). Информация об этом уникальном рисунке снабжена криптографической подписью и/или напечатана на этикетке и хранится в прилагаемом считываемом устройстве типа смарт-чипа или создается дистанционно (например, посредством базы данных).
При верификации аутентичности такой этикетки необходимо всего лишь осуществить сканирование физического рисунка и проверить, соответствует ли этот рисунок информации, содержащейся в подписи. Шифрование с открытым ключом позволяет проводить верификацию информации, содержащейся в подписи, с использованием открытого ключа без воспроизведения соответствующего секретного закрытого ключа, который используется для подписи.
Кроме того, как изготовление, так и верификация этикеток требуют при реализации недорогих, имеющихся в наличии компонентов, не чувствительных к различным операционным ошибкам и к естественному износу этикеток. Рассмотрено также решение проблемы сжатия, обеспечивающего возможность эффективного кодирования сканированного рисунка этикетки.
ВОЛОКОННО-ОПТИЧЕСКИЕ ПРЯДИ
На фиг.1 представлен типичный вид сбоку волоконно-оптической пряди (100). Волоконно-оптические пряди (называемые также прядями оптического волокна), типа показанных на фиг.1, могут быть использованы в различных примерах реализации для создания не поддающихся подделке и/или фальсификации этикеток (как будет далее рассмотрено в данном изобретении со ссылками на остальные фигуры). Волоконно-оптическая прядь 100 может быть выполнена из стекла или пластмасс и включает в себя сердцевину 102 и защитное покрытие 104. Защитное покрытие 104, как правило, тоньше чем сердцевина 102. Более того, толщина некоторых существующих волоконно-оптических прядей может составлять всего один микрон.
Защитное покрытие 104 обладает более высоким показателем преломления, чем сердцевина 102, чтобы обеспечить прохождение световых лучей (106) через волоконно-оптическую прядь без больших потерь (108). Иногда световой луч может входить в сердцевину волокна под таким острым углом, что падает на защитное покрытие 104 под углом выше критического значения. В этом случае световой луч просачивается сквозь волоконно-оптическую прядь (110). В общем, большинство оптических волокон имеют незначительную величину потерь. Даже осветительные оптические волокна (которые легко можно купить в магазине по продаже аппаратуры), имеющие более низкое качество (но намного более дешевые), чем волокна, используемые в системах связи, как правило, не вызывают значительных потерь света.
ЭТИКЕТКИ С ВОЛОКОННО-ОПТИЧЕСКИМИ ПРЯДЯМИ
На фиг.2 представлена типичная этикетка 200 с прядями оптического волокна (например, 202 и 204). Пряди оптического волокна могут иметь различную длину, толщину, цвет и т.п. для обеспечения изменения признаков, например при освещении. В примере реализации пряди оптического волокна могут быть разрезаны, перемешаны и внедрены в этикетку 200. К примеру, различные типы волоконно-оптических прядей (например, имеющие различную толщину, цвет, флуоресценцию и т.п.) могут быть разрезаны на отрезки различной длины и помещены в лоток для перемешивания. Перемешанные волоконно-оптические пряди могут быть затем подвергнуты распылению с помощью прозрачного и защитного вещества (например, с помощью прозрачного клея или смолы типа эпоксидной) на подложку для формирования случайно внедренных оптических волокон на этой подложке.
В примере реализации использование прозрачного и защитного вещества позволяет ограничить перемещение волокон и гарантировать поддержание этикеткой своих случайно встречающихся признаков. Подложка может быть разрезана предварительно или после этапа внедрения. Кроме того, подложка может быть выполнена из бумаги, пластмассы, ткани и т.п. В одном примере реализации подложка является гибкой, что позволяет сохранить долговечность этикетки, например, после прикрепления к гибкому материалу или упаковке товара.
Фиг.3 иллюстрирует типичное математическое представление физических волоконно-оптических свойств, соответствующих этикетке 200, представленной на фиг.2. На фиг.2 каждая прядь оптического волокна этикетки 200 может быть представлена парой точек (например, двумя концами пряди волокна) и пунктирной линией, соединяющей эти две точки. Например, волоконно-оптические пряди 202 и 204 представлены соответствующими парами 302 и 304. Следовательно, прядь оптического волокна можно рассматривать просто как пару двух концов светового туннеля.
В одном примере реализации координаты двух концов каждой волоконно-оптической пряди на этикетке используются как случайно встречающиеся признаки для создания не поддающихся подделке и/или фальсификации этикеток. Однако по-видимому можно использовать и другие признаки волоконно-оптических прядей, такие как кривизна прядей, относительные интенсивности света, флуоресценцию, цвет, толщину (например, при измерении ширины прядей на каждом конце) и т.п. В примере реализации два конца каждой волоконно-оптической пряди могут быть сделаны видимыми при освещении этикетки для определения координат.
Эти координаты составляют уникальное свойство подложки со случайно внедренными оптическими волокнами. Если волокна внедрены в подложку случайно, эти координаты могут быть использованы как случайные числа. Кроме того, обычными способами копирования невозможно воспроизвести светопроводящие характеристики оптических волокон. Следовательно, этикетки с внедренными волокнами сравнительно трудно копировать. Эти два свойства - уникальность и невозможность копирования - могут быть использованы при решении проблем создания не поддающихся подделке и фальсификации этикеток, как будет далее рассмотрено в данном изобретении, к примеру, со ссылками на фиг.4-6.
ИЗГОТОВЛЕНИЕ И ВЕРИФИКАЦИЯ ЗАЩИЩЕННЫХ ЭТИКЕТОК
Фиг.4 иллюстрирует типичный способ 400 изготовления и верификации этикетки, не поддающейся подделке и фальсификации. В способе 400 сканируют необработанную этикетку (402) типа этикеток, рассмотренных со ссылками на фиг.2 и 3 для получения данных, относящихся к физическим признакам необработанной этикетки (например, координат концов волоконно-оптических прядей на этикетке). Полученные в результате сканирования данные могут быть по выбору подвергнуты сжатию (404) для уменьшения требуемой емкости памяти, как будет дополнительно рассмотрено ниже в разделе под названием "сжатие данных волокна". Полученные в результате сканирования (402) необработанной этикетки данные кодируют (406) для получения криптографического сертификата подложки (MC). Предполагается, что сертификат подложки позволит обеспечить надежную идентификацию уникального рисунка волокон на этикетке. В одном примере реализации сертификат подложки может быть снабжен криптографической подписью с секретным ключом, как будет далее рассмотрено со ссылками на фиг.5.
Сертификат спецификации (AC) может быть по выбору привязан (408) к этикетке и/или сертификату подложки, например, для создания данных спецификации, связанных с конкретным применением (например, серийного номера, кода авторизации, суммы чека и т.п.). При реализации сертификат спецификации может быть снабжен криптографической подписью с помощью секретного ключа спецификации, как будет далее рассмотрено со ссылками на фиг.6. Следовательно, каждая этикетка может быть закодирована двумя сертификатами (т.е. сертификатами подложки и спецификации).
На этапе 410 для одного или более сертификатов (т.е. сертификатов подложки и спецификации) создают идентифицирующий знак. Идентифицирующий знак может быть создан в виде одномерного или двумерного штрихкода, смарт-тега (например, в виде радиочастотного идентификатора (RFID) или смарт-чипа) и т.п. Создание этого знака может быть проведено непосредственно на этикетке или дистанционно посредством базы данных, которая может содержать корреляционные данные, связанные с физическим рисунком этикетки, сертификатом подложки и/или сертификатом спецификации. Закодированная этикетка (например, этикетка, снабженная идентифицирующим знаком) может быть затем подвергнута верификации (412), к примеру, путем проверки действительности сертификата(ов) подложки и/или спецификации (например, с помощью открытого ключа подложки и/или спецификации), как будет далее рассмотрено со ссылками на фиг.8.
ИЗГОТОВЛЕНИЕ УНИВЕРСАЛЬНОЙ ЭТИКЕТКИ
На фиг.5 представлена типичная система 500 изготовления универсальной этикетки. Система 500 осуществляет обработку необработанной этикетки (502) (например, этикетки, рассмотренной со ссылками на фиг.2) и создает криптографически защищенный сертификат рисунка прядей волокна на подложке. Необработанную этикетку (502) пропускают под сканером (504) универсальной подложки, который анализирует рисунок прядей волокна на ней и вырабатывает набор геометрических данных (например, координат), соответствующий этому рисунку. Данные рисунка поступают в кодер (506) универсальной этикетки для генерации криптографического сертификата подложки (MC), который надежно и однозначно идентифицирует уникальный рисунок волокон на этикетке (типа этикетки, рассмотренной со ссылками на стадию 404 на фиг.4). Следовательно, имеется взаимно-однозначное соответствие между сертификатом и этикеткой. В примере реализации генерация этого сертификата требует секретного ключа (508), доступ к которому возможен только в месте изготовления универсальных этикеток.
Сертификат этикетки (например MC) затем пересылают в принтер (510) универсальной этикетки, который может представлять собой любой имеющийся в наличии принтер, для печати сертификата непосредственно на самой этикетке для изготовления универсальной этикетки (512) с сертификатом. Как было рассмотрено со ссылками на фиг.4, сертификат может быть напечатан как одномерный или двумерный штрихкод. Этот сертификат может быть внедрен в смарт-тег (типа радиочастотного идентификатора RFID), когда принтер (510) универсальной этикетки представляет собой устройство записи смарт-тегов. Следовательно, конечный продукт представляет собой универсальную этикетку (512), которая содержит криптографический сертификат подложки (MC) этикетки.
В одном примере реализации универсальная этикетка (512) является самосертифицируемым изделием, у которого сертификат подложки привязан к этикетке уникальным и корректным образом. Не зная секретного ключа подложки, фальсификатор не может изготовить универсальную этикетку с действительным сертификатом подложки. Это свойство ключа позволяет производителю специализированных этикеток расширить универсальную этикетку до специализированной самоаутентифицируемой этикетки, связанной с конкретным применением, как будет далее рассмотрено со ссылками на фиг.6.
ИЗГОТОВЛЕНИЕ СПЕЦИАЛИЗИРОВАННОЙ ЭТИКЕТКИ
На фиг.6 представлена типичная система 600 изготовления специализированной этикетки. Специализированная этикетка может быть изготовлена или отдельным производителем, или тем же самым производителем, который изготавливает универсальную этикетку. Сканер (602) этикетки считывает сертификат подложки (MC) с универсальной этикетки (512). Сканер может подтвердить или не подтвердить действительность сертификата подложки по рисунку волокон, внедренному в этикетку. Затем сертификат подложки (MC) пересылается в кодер (604) специализированной этикетки, который, используя данные спецификации (606) (например, серийный номер товара или числовую информацию на кассовом чеке) и специальный секретный ключ (608) производителя, генерирует криптографически защищенный сертификат спецификации (AC). Сертификат спецификации является уникальным и надежным средством идентификации данных спецификации и сертификата подложки (а впоследствии и самой материальной этикетки). Затем этот сертификат печатается (или внедряется) на самой этикетке с помощью принтера (610) специализированных этикеток (или дистанционно, как рассмотрено со ссылками на этап 410 на фиг.4).
Изготовленная таким образом специализированная этикетка (612) содержит два сертификата: сертификат подложки (MC) и сертификат спецификации (AC). Сочетание этих сертификатов обеспечивает уникальную и надежную привязку данных спецификации к материальной этикетке. Сертификат спецификации, который привязывает подложку этикетки к данным спецификации, может быть использован в самых различных ситуациях. Например, изготовитель кассовых чеков может изготавливать пустые кассовые чеки с аутентичными сертификатами подложки этикетки. При выдаче кассового чека касса может просто генерировать сертификат спецификации, который объединяет в себе сертификат подложки этикетки, а также сумму чека и его предъявителя. Фальсификатор не в состоянии дублировать чек, так как дублировать рисунок волокон чрезвычайно трудно. Кроме того, фальсификатор не может генерировать свои собственные универсальные чеки с соответствующими сертификатами подложки этикетки, потому что он не владеет секретным ключом (508) универсальной этикетки. Более того, он не сможет напечатать свой собственный кассовый чек, даже в случае наличия пустых чеков с аутентичными сертификатами подложки, так как не владеет секретным ключом (608) кассы.
ГЕНЕРАЦИЯ СЕРТИФИКАТА СПЕЦИФИКАЦИИ
На фиг.7 представлен типичный способ 700 генерации сертификата спецификации с использованием криптографической хеш-функции (например, алгоритма MD5). Разумеется, могут быть использованы и другие криптографически сильные хеш-функции или кодирование. На этапе 702 кодер (604) специализированной этикетки берет значение хеш-функции (HMC) сертификата подложки этикетки, добавляет это значение (HMC) к данным 606 спецификации (AD) и на этапе 704 формирует расширенные данные спецификации (EAD). На этапе 706 с помощью секретного ключа Kappl-priv (608) специализированной этикетки получают криптографическую подпись EAD (SIGEAD). Затем на этапе 708 путем конкатенации данных спецификации (AD), значения (H MC) хеш-функции сертификата подложки и подписи EAD ( SIGEAD) может быть получен сертификат спецификации (AC) (например AC = AD + HMC + SIG EAD).
ВЕРИФИКАЦИЯ ЭТИКЕТКИ
На фиг.8 представлена типичная система 800 верификации этикетки. В примере реализации система 800 использует двухэтапный процесс верификации. Сначала система 800 верифицирует сертификат спецификации по сертификату подложки. Затем система 800 верифицирует сертификат подложки по материальной этикетке. Несмотря на взаимную логическую независимость этих этапов, на практике они могут быть осуществлены в одном устройстве.
Система 800 верификации включает в свой состав два сканера: сканер (802) подложки и сканер (804) этикетки (сканер штрихкода или сканер смарт-тега типа устройства считывания радиочастотного идентификатора RFID, если сертификаты хранятся в RFID-чипе). Сканер (802) подложки может представлять собой такой же универсальный сканер 504 подложки, как и рассмотренный со ссылками на фиг.5. Сканеры 802 и 804 восстанавливают рисунок волокон (P), сертификат подложки (MC) и сертификат спецификации (AC) со специализированной этикетки (614).
На этапе 808 действительность сертификата подложки (MC) подтверждается с использованием открытого ключа универсальной этикетки (806) и осуществляется проверка MC по рисунку волокон (P). При любых несоответствиях этикетка объявляется недействительной. На этапе 810 с использованием открытого ключа спецификации (812) проверяют и сертификат спецификации (AC). Кроме того, верифицируют соответствие сертификата спецификации (AC) сертификату подложки (MC) (810). В частности, если используют способ генерации сертификата спецификации, описанный со ссылками на фиг.7, то верификация сертификата спецификации влечет за собой проверку соответствия подписи EAD (SIG EAD) данным спецификации (AD) и значению хеш-функции сертификата подложки (HMC), а также соответствия между HMC и сертификатом подложки (MC). Этикетка объявляется подлинной, если проходит тест 810. В противном случае - фальшивой.
СТОИМОСТЬ ПОДДЕЛКИ
Допустим, что секретные ключи для генерации действительных сертификатов подложки и спецификации надежно охраняются от посягательств фальсификаторов. Остается единственный доступный для фальсификатора путь - изготовить этикетку на основе волокон, имеющую вид аутентичной, которая может пройти процедуру верификации, описанную со ссылками на фиг.8. При этом фальсификатор должен получить практически идентичную копию существующей подлинной этикетки, что означает необходимость копирования рисунка оптических волокон на подлинной этикетке. Стоимость копирования состоит из трех компонентов: стоимости установки системы копирования (стоимость оборудования), стоимости копирования этикетки (стоимость копирования) и стоимости получения рисунков подлинных этикеток (стоимость образцов).
Стоимость оборудования COSTsetup относится к одноразовым затратам. Ее величина зависит от сложности машинного оборудования, которое будет создано для целей фальсификации. Стоимость копирования COSTreplication относится к периодическим затратам. Между COSTSETUP и COSTREPLICARION имеется приблизительно обратная взаимозависимость. Как правило, чем более несовершенным является копировальное оборудование, тем более длительным и дорогостоящим становится процесс копирования отдельной этикетки.
В одном критическом случае копирование подлинной этикетки делают c аккуратностью вручную. Стоимость оборудования при этом фактически равна нулю, в то время как стоимость копирования может быть очень высокой, поскольку фальсификатор должен нанять специалистов по размещению прядей волокна в точных позициях. Против этих грубых фальсификаторов изготовитель легитимных этикеток может использовать повышение COSTREPLICATION до произвольных значений (и трудоемкости) простым увеличением числа прядей волокна в каждой этикетке.
В другом критическом случае фальсификатор может изготовить чрезвычайно сложную машину, обеспечивающую автоматическую резку волокон на отрезки требуемой длины и размещение этих отрезков в точных положениях как на подлинных этикетках. Такая машина будет несомненно стоить сотни тысяч или даже миллионы долларов. В любом случае перенесенная стоимость в каждой скопированной этикетке будет неизбежно высокой для фальсификаторов, в то время как для легитимных изготовителей эта стоимость в каждой этикетке будет чрезвычайно низкой. Анализ рентабельности показывает, что намного менее выгодно подделывать товары широкого потребления в большом количестве.
Кроме того, так как каждая подлинная этикетка является уникальной по причине случайного характера внедрения прядей волокна, наличие двух или более идентичных материальных этикеток (с одним и тем же сертификатом подложки) однозначно показывает, что этикетки фальсифицированы. Чтобы предотвратить обнаружение подделки, фальсификатору приходится приобретать большое количество образцов волокна с подлинных этикеток, позволяющее гарантировать достаточное разнообразие рисунков волокна в партии товара. Стоимость образцов COST master увеличивается приблизительно пропорционально числу поддельных копий. Следовательно, покупка легитимных товаров является довольно дорогим способом получения образцов рисунков волокон и сертификатов. К тому же, присвоение легитимных копий (бесплатное или в результате воровства) предполагает участие преступных организаций и может быть расследовано, если товарные этикетки зарегистрированы в базе данных по всем каналам распределения.
Анализ стоимости показывает, что процесс фальсификации этикеток на основе волокон сопряжен с чрезвычайными трудностями для любого фальсификатора с небольшими или средними ресурсами и что крупномасштабная фальсификация является экономически невыгодной и опасной из-за высокой стоимости, трудоемкости и иногда участия в преступных действиях. Короче говоря, система этикеток позволяет существенно поднять барьер для ограничения рентабельности фальсификации.
ТИПИЧНЫЕ СЦЕНАРИИ ПРИМЕНЕНИЯ ЭТИКЕТОК
Так как рассматриваемые в данном изобретении системы этикеток гарантируют уникальность каждой отдельной этикетки и чрезвычайную сложность ее копирования, эти этикетки могут найти применение в разнообразных областях, требующих защиты от фальсификатов и/или подделок.
Вообще описываемые в данном изобретении способы применимы к любым этикеткам или изделиям, подобным этикеткам, поддающимся крупномасштабной фальсификации. В качестве примеров можно привести персональные и банковские чеки, банковские билеты (например, валюту), товарные этикетки типа сертификата аутентичности для программных продуктов и этикеток для лекарств, а также идентификаторы типа водительских прав и паспортов.
Товарные этикетки. Фальсификация обходится большинству крупных отраслей промышленности, например по производству программного обеспечения, одежды и лекарств, в миллиарды долларов ущерба от неполученных доходов. Низкое качество поддельных товаров подвергает опасности доверчивых потребителей.
Особую остроту эта проблема имеет в фармацевтической промышленности, где поддельный препарат может вызвать ситуацию, угрожающую жизни. Рассматриваемые в данном изобретении способы удовлетворяют требованиям процесса изготовления защищенной от фальсификации этикетки аутентичности для товаров широкого потребления. Например, предположим, что компания Perfect Health имеет патентованный лекарственный препарат X и хочет продавать его через аптеки во всем мире. Perfect Health покупает у являющегося третьей стороной изготовителя этикеток Universal Labels большое количество универсальных этикеток с внедренными волокнами, каждая из которых имеет штамп с сертификатом подложки, как было описано со ссылками на фиг.5. Universal Labels - известный, заслуживающий доверия производитель защищенных этикеток. Открытый ключ этой компании для верификации сертификатов подложки зарегистрирован заслуживающей доверия третьесторонней организацией.
Perfect Health ставит штамп сертификата специализации товара на каждой универсальной этикетке, используя способ, рассмотренный со ссылками на фиг.6. Затем такую этикетку аутентичности помещают в каждую бутылку (коробку) с лекарственными препаратами, которые распределяются по аптекам. Дополнительно, Perfect Health также покупает у Universal Labels ряд систем верификации (см., например, фиг.8) и конфигурирует их так, чтобы использовать свой собственный открытый ключ для верификации сертификатов спецификации. Некоторые из этих устройств установлены в аптеках, где продается препарат X компании Perfect Health.
Компания Perfect Health предоставляет потребителям и аптекам возможность сканирования упаковок со своим препаратом X с использованием установленного устройства верификации для подтверждения аутентичности упаковок. Кроме того, устройства верификации соединены с глобальной базой данных, так что всякий раз, когда потребитель проверяет упаковку с лекарственным препаратом компании Perfect Health, внедренный сертификат спецификации (или серийный номер) регистрируется базой данных.
Контрафактная упаковка с повторным использованием выброшенной этикетки от Perfect Health будет немедленно захвачена, когда другой потребитель попробует проверить свою поддельную или фальсифицированную покупку. Perfect Health предоставляет остальные устройства верификации в распоряжение частных сыщиков и правоприменяющих органов типа таможенных постов США. Теперь потребители имеют возможность проверять аутентичность лекарственных препаратов Perfect Health в любом магазине. Правоприменяющим органам такие устройства позволяют повысить конфиденциальность рейдов на подозрительные грузы и склады с лекарствами.
Идентификация. Многие проблемы безопасности обусловлены использованием поддельных идентификационных документов. Среди некоторых часто встречающихся примеров можно назвать водительские права, паспорта, карты профессиональной авторизации и удостоверения личности служащих. Способы, описываемые в данном изобретении, позволяют чрезвычайно затруднить подделку идентификаторов при сохранении очень низкого уровня дополнительных затрат.
Например, правительство США может изготавливать паспорта с использованием специальной бумаги с оптическими волокнами, внедренными внутрь. Одна или более страниц в паспорте или небольшой участок на этих страницах выделены как области маркировки. Всякий раз, когда гражданин США делает запрос на паспорт, правительство генерирует паспортный сертификат, который привязывают к рисунку волокон паспорта в области маркировки. Сертификат печатают непосредственно на паспорте или сохраняют в чипе памяти, внедренном в паспорт.
На контрольно-пропускных пунктах правительство использует описанные выше устройства верификации для проверки аутентичности паспортов. По сравнению с паспортом, изготовленным с использованием криптографии, в котором информация о владельце надежно закодирована на страницах паспорта, такая схема позволяет гарантировать, что фальсификатор не сможет изготовить точную копию существующего паспорта. Правительство может просто увеличивать число волокон, внедренных в паспорт и повышать точность устройства верификации, чтобы делать физическое дублирование подлинного паспорта практически невозможным. Следовательно, проблему использования поддельного паспорта человеком, выдающим себя за кого-то другого, можно считать разрешенной.
Кроме того, проблему с потерянным паспортом можно решить путем регистрации серийного номера паспорта (который может быть включен в сертификат специализации паспорта) в правительственной базе данных, запрос к которой можно легко сделать с помощью устройства верификации.
Банковские билеты. Подделка банковских билетов (или денег) представляет собой значительную опасность для экономической и социальной стабильности независимого государства. В последние годы при оформлении денежных знаков используется большое количество защитных признаков. Однако большинство этих новых признаков может быть отсканировано и скопировано опытным фальсификатором. Описываемые в данном изобретении способы позволят без труда создать защищенный банковский билет (типа рассмотренного со ссылками на фиг.6). Верификатор банковского билета (например, имеющий структуру, такую же или подобную изображенной на фиг.8) ввиду его относительно низкой стоимости можно купить в большинстве магазинов. Возможно также встраивание верификатора в торговые автоматы.
Банковские и персональные чеки. Чек с внедренными волокнами нелегко подделать. Когда банк выдает банковский чек с использованием описываемых в данном изобретении способов, данные чека, такие как предъявитель, сумма и дата выдачи, могут быть закодированы в сертификате спецификации. Такое кодирование не позволяет человеку дублировать или изготавливать свои собственные банковские чеки.
Например, покупатель X обращается в свой банк Y с просьбой выдать банковский чек на сумму D, оставляя бланк на предъявителя. Банк Y печатает чек на бланке универсального чека, который содержит сертификат подложки. Бланк чека изготовлен известным производителем Z. Банк Y также печатает на чеке сертификат спецификации, включающий в себя информацию о покупателе X и сумму D. Сертификат спецификации закодирован с использованием секретного ключ K1 банка. Покупатель X затем пересылает чек в организацию U. U может теперь проверить правильность чека, используя открытый ключ производителя Z бланков чеков и открытый ключ банка Y.
Следовательно, покупатель не может дублировать чек дважды по причинам, изложенным раньше (например, со ссылками на фиг.6). Криптографически защищенный сертификат спецификации также не позволяет покупателю изготавливать свои собственные банковские чеки.
Правовые документы. Подлинные документы часто требуются правовым сообществом. В настоящее время подписи служат основным средством для различения между подлинными и поддельными документами. Эти документы тем не менее часто подделывают. В бумагу для печати могут быть внедрены оптические волокна (например, выпускаемые производителем бумаги). Юридическая фирма может просто напечатать правовой документ на такой бумаге и поставить штамп сертификата специализации, включающего в себя важную информацию о документе, т.е. дату, время, участвующие стороны и т.д.
Применение для предотвращения нарушения целостности. Этикетка на основе волокон может рассматриваться как незаменимая с точки зрения чрезвычайной трудности изготовления идентичной этикетки. Это свойство делает системы маркировки, рассматриваемые в данном изобретении, в высшей степени подходящими для использования в ситуациях, требующих доказательств нарушения целостности.
Например, контейнер для морских перевозок может быть запечатан с помощью этикеток (или лент) с внедренными волокнами. Судоходная компания и/или власть типа таможенной и портовой может напечатать дополнительные сертификаты на использованных для запечатывания этикетках, чтобы указать, что содержимое прошло определенный досмотр. Печати могут быть прикреплены так, что любая попытка вскрыть контейнер обязательно приведет к их повреждению. В пункте назначения покупатель, портовая власть или местная база судоходной компании могут использовать устройство верификации (например, такое как рассмотрено со ссылками на фиг.8), чтобы проверить, является ли использованная для запечатывания этикетка подлинной, и выяснить, не вскрывался ли контейнер.
Печати для обнаружения вскрытия контейнера могут быть внесены регулярно работающими судоходными компаниями в стоимость перевозок. Они могут быть также использованы для организации защиты трансокеанских перевозок, чтобы повысить национальную безопасность.
СИСТЕМА СКАНЕРА ЭТИКЕТКИ
В примере реализации только один из двух торцов пряди волокна освещается одновременно. В результате, каждая прядь волокна может быть представлена четырьмя координатами (например, двумя для каждого торца пряди, так как поверхность этикетки является двумерной), например относительно произвольно выбранного начала координат. Следовательно, полная карта распределения (или функция захвата) рисунка оптических волокон может быть записана в виде:
В вышеупомянутой формуле - координата для -й волоконной пряди, а - рисунок волокна на этикетке. Как показано, имеется взаимно-однозначное соответствие между рисунком оптических волокон и картой его распределения. Верхний индекс 4 в обозначает то, что полная карта распределения рисунка оптических волокон является четырехмерной функцией, так как для полного описания геометрической позиции одной волоконной пряди требуются значения четырех координат (если форма волоконной пряди не учитывается).
Один недостаток функции захвата состоит в необходимости использования сложных устройств сканирования. В частности, для захвата полной координаты пряди волокна должен быть освещен только один из двух торцов волоконной пряди одновременно. Освещение области этикетки, превышающей размер торца волокна, вызывает снижение точности измерений, а также ошибки при считывании, так как может приводить к одновременному освещению более чем одной волоконной пряди. Поэтому функция захвата требует использования светового пятна чрезвычайно малого размера. Световое пятно может двигаться по поверхности этикетки.
В варианте изобретения световые пятна малого размера могут быть смоделированы с использованием неподвижной сетки крошечных источников света. Первый способ увеличивает стоимость сканера, так как требует использования прецизионного двигателя для перемещения светового пятна. Кроме того, это может резко увеличить время, необходимое для захвата рисунка волокон, поскольку световое пятно должно охватить поверхность этикетки за пять этапов. Этот способ также требует дорогих осветительных компонентов для поддержания высокой точности измерений. Например, для измерения координат волокна в пределах 1/2 миллиметра на каждом участке в 1/4 квадратного миллиметра должен быть размещен источник света. Это является сравнительно более дорогим и недостижимым предложением.
В различных примерах реализации для сканирования наклеек с внедренными волокнами при сохранении эффективности и невозможности фальсификации (и/или подделки) могут быть использованы два способа: сканирование по участкам и линейное сканирование. При сканировании по участкам этикетку делят на воображаемые неперекрывающиеся участки, освещение которых осуществляется по отдельности и последовательно. При линейном сканировании над каждой этикеткой сканер делает два прохода. Данные, захваченные при каждом проходе, коррелируются. Эти два способа будут дополнительно рассмотрены ниже со ссылками на фиг.9 и 10.
СКАНИРОВАНИЕ ПО УЧАСТКАМ
На фиг.9 представлена типичная система 900 для матричного сканирования. Как показано, этикетка может быть разделена на воображаемых неперекрывающихся участков (2×3 на фиг.9). Освещение неперекрывающихся участков (902-912) осуществляется по отдельности и последовательно. При освещении одного из неперекрывающихся участков (910) другие неперекрывающиеся участки (902-908 и 912) остаются в темноте. При этом освещенные торцы волокон, появляющиеся на неперекрывающихся участках 904, 906, 908 и 912, показаны маленькими точками (например, 914 и 916). Неосвещенные торцы волокон, появляющиеся на неперекрывающихся участках 902, 904, 906, 908 и 912, показаны линиями без точек на концах (например, 918 и 920).
Сканер для реализации такого способа состоит из блоков сканирования; каждый блок может содержать камеру и одно или более осветительных устройств. Блоки могут быть разделены непрозрачными стенами так, чтобы свет от блока, освещающего какой-либо участок (или от включенного блока), не просачивался в другие темные блоки (или в выключенные блоки). Последовательно в каждом из блоков сканирования включаются внутренние источники света (что называется экспозицией), в то время как в других блоках источники света остаются не включенными, и камерами захватываются освещенные торцы волокон. Полученная в результате этого процесса сканирования функция захвата участка может быть выражена следующим образом:
В приведенной формуле - список координат торцов волокон при включенных источниках света в -м блоке формирования изображения, причем , где - список координат торцов волокон, захваченных в -м блоке формирования изображения при включенном -м блоке, и .
Как показано со ссылками на фиг.9, функция захвата участка может быть реализована с использованием набора камер и лампочек. Так как каждый блок формирования изображения охватывает область относительно малой площади, то достаточно использовать камеры с низкой разрешающей способностью типа бытовых Web-камер, что позволяет, таким образом, снизить полную стоимость системы. При сканировании участка к каждому списку координат волокон, захваченных во время каждой экспозиции, применяется функция редукции :
В приведенной формуле - данные, захваченные -м блоком формирования изображения во время -й экспозиции.
Процесс верификации предполагает сравнение данных, полученных во время каждой экспозиции. Предположим, что получена при изготовлении этикетки, а получена в процессе использования, тогда этикетка может быть объявлена подлинной если и только если для всех пар , где .
В примерах реализации с применением сжатия и/или хеширования к данным волокна функция редукции применяется к каждому списку координат волокон, захваченных во время каждой экспозиции. Типичные способы сжатия дополнительно рассматриваются ниже в разделе под названием "сжатие данных волокна".
В случае, где функция редукции является функцией тождества, , верификация эквивалентна сравнению с для всех пар , где . Каждое может представлять собой набор точек, выраженных в двумерной системе координат, являющейся локальной для блока формирования изображения. Сравнение с - вопрос совпадения двух наборов точек в одном примере осуществления. Два набора точек могут быть объявлены эквивалентными, если и только если существует жестко заданное преобразование движения (вращение, пересчет, изменение угла наклона в перспективе ), такое что по меньшей мере точек в имеют уникальные точки соответствия в , и число представляет собой большую часть точек как в , так и в . Поэтому заданные два набора данных экспозиции и , где ={ для и , }, а ={ для и , }, считаются эквивалентными в соответствии с радиусом ошибки совпадения и процентом соответствия при выполнении следующих условий.
Для всех пар и , где представляет собой блок экспонирования, а - блок формирования изображения, существует преобразование камеры жесткой конструкции, такое что:
1. Имеется точек в , которые удовлетворяют критерию совпадения. Существует набор точек в , такой что , где означает расстояние между точками и .
2. , где - число точек в наборе .
Поиск преобразования камеры жесткой конструкции может быть выполнен путем применения способов типа совпадения звездообразных совокупностей, совпадение точечных рисунков и т.п.
ЛИНЕЙНОЕ СКАНИРОВАНИЕ
Усовершенствование процесса при линейном сканировании по сравнению с матричным сканером достигается за счет использования динамического сканирования поверхности этикетки при одномерном движении. Само по себе такое сканирование обеспечивает более высокую устойчивость против попыток фальсификации.
На фиг.10 представлен типичный вид сбоку системы 1000 линейного сканирования. Система 1000 включает в себя осветительный отсек (1002) и отсек (1004) формирования изображения. Осветительный отсек (1002) может содержать ряд зеленых светоизлучающих диодов (светодиодов) (1006) сверхвысокой яркости для освещения узкой прямоугольной полоски (т.е. окна 1008 подсветки) на этикетке (1010) светом высокой интенсивности. Свет проходит через пряди волокон (1012), концы которых расположены в границах окна (1008) подсветки, и выходит в области под отсеком (1014) формирования изображения (например, в окне 1016 формирования изображения). Позиции освещенных концов волокон захватываются видеокамерой (1018) бытового уровня. Кроме того, отсек (1004) формирования изображения содержит ряд красных светодиодов (не показанных) с низкой интенсивностью свечения, которые могут постоянно освещать поверхность этикетки (1010). Направляющие рисунки могут быть использованы для точного позиционирования концов волокон по захваченным видеоданным.
В примере реализации все светодиоды подсветки (например, зеленый и красный) размещены слева, поскольку сканер движется по поверхности этикетки в одном направлении (1020). Видеокамера (1018) делает непрерывные снимки области этикетки, которая находится непосредственно в окне (1016) формирования изображения. Захваченные видеоданные содержат поверхность этикетки при красном освещении и освещенные концы волокон в зеленом. Разумеется, для подсветки направляющих и/или концов волокон могут быть использованы другие комбинации цветов (или один и тот же цвет). Видеоданные подаются в компьютер (типа вычислительной среды, рассматриваемой со ссылками на фиг.17), который извлекает координаты волокон. В одном примере реализации использование светодиодов с различными цветами свечения (например, для концов волокон и направляющих) позволяет камере/компьютеру быстрее различать направляющие рисунки, напечатанные на этикетке, и освещенные концы волокон.
ОБРАБОТКА ДАННЫХ СКАНЕРА
Данные сканированных волокон могут быть обработаны с использованием комбинации алгоритмов обработки изображений и геометрического сопоставления, обладающих нечувствительностью как к ошибкам детектирования, так и к износу этикеток.
На фиг.11 представлен типичный способ 1100 обработки данных сканера. Способ 1100 может быть использован применительно к одному или более захваченным видеоизображениям освещенной этикетки (типа рассмотренной со ссылками на фиг.10). Из каждого видеоснимка извлекают направляющие рисунки (этап 1102) и координаты освещенных концов волокон (этап 1104). Как указано при описании фиг.10, использование отдельных спектров подсветки (например, зеленого и красного) упрощает и ускоряет извлечение координат концов волокон и направляющих рисунков в примере реализации.
Извлеченные данные (этап 1106) позволяют определить точное преобразование движения . Функция преобразования предназначена для захвата относительного движения камеры между двумя снимками и позволяет определить, как выборки в одном снимке отображаются в системе координат предыдущего снимка. Результаты последовательных снимков (например, двух снимков) могут быть коррелированны и использованы для построения одной непротиворечивой карты распределения точек (этап 1108). Двумерная карта распределения рисунка волокон может быть сформирована путем взаимного сшивания последовательных снимков, сделанных камерой. Это обеспечивает последовательность снимков правосторонних концов тех прядей волокон, у которых левосторонние концы находятся как раз под полосой подсветки. До тех пор, пока частота кадров в камере сопоставима со скоростью движения сканера, этот способ будет позволять захватывать большую часть или все открытые торцы волокон.
На фиг.12 и 13 представлены два извлеченных последовательных снимка одной и той же этикетки 1010, сделанных камерой. На каждой из фиг.12 и 13 показаны окна подсветки и формирования изображения (соответственно 1008 и 1016). На фиг.14 показано соответствие точек извлечения данных на снимках фиг.12 и 13. Каждый из этих двух снимков (фиг.12 и 13) захватывает три открытых торца волокна, два из которых принадлежат одним и тем же волоконным прядям (например, как отмечено пунктирными стрелками 1402 на фиг.14). Точно такое же соответствие существует между парами направляющих меток на этих двух снимках.
По извлеченным данным можно определить (этап 1106 на фиг.11) преобразование движения между двумя последовательными снимками камеры (такими как представлены на фиг.12 и 13). Функция преобразования захватывает относительное движение камеры между двумя снимками и определяет, как выборки в одном снимке отображаются в системе координат предыдущего снимка.
Например, если камера делает последовательных снимков и каждый захватывает набор точек , где , и преобразований движения , где , то все точки можно преобразовать в глобальную систему координат. Без утраты универсальности подхода система координат первого снимка камеры может быть выбрана как глобальная система координат. Каждая точка в наборе точек , преобразуется в эту систему координат с помощью следующей формулы:
При условии достаточного числа точек, являющихся общими для двух последовательных снимков, сделанных камерой, функцию преобразования движения камеры можно вывести следующим образом. Предположим, что два последовательных снимка камеры захватывают два набора открытых торцов волокон (точек) и , каждый из которых состоит из набора точек, выраженных двумерными координатами:
Если допуск на совпадение составляет , то можно найти преобразование движения камеры и непустое совпадение , где состоит из взаимно-однозначного совпадения между подмножеством и подмножеством равного размера:
, где и для всех , = размер , такой, что , где - евклидово кодовое расстояние между двумя точками и .
Совпадение позволяет произвести оценку параметров преобразования движения , которую можно описать как аффинную матрицу 3×3:
Параметры захватывают относительное вращение камеры между снимками, а и указывают параметры горизонтальной и вертикальной трансляций камеры. Параметры и захватывают небольшой наклон камеры по отношению к поверхности этикетки. Когда сканер прижат к плоской поверхности этикетки, эти два параметра могут считаться равными нулю.
Чтобы преобразовать выборки из второго снимка камеры в систему координат первого снимка, матрица преобразования может быть умножена на координату выборки:
Совпадение между и позволяет написать следующее линейное уравнение:
Так как матрица преобразования без угла наклона содержит шесть свободных параметров, то только для трех пар совпадающих точек между двумя снимками необходимо вычислить преобразование движения. Для обеспечения достаточного числа пар совпадающих точек на этикетке могут быть размещены направляющие рисунки так, чтобы ситуация, где только одно или два открытых торца волокон являются общими для двух последовательных снимков камеры, не явилась критической для сканера.
После определения точного преобразования движения результаты двух последовательных снимков и могут быть коррелированны, и может быть построена одна непротиворечивая карта распределения точек. Этот процесс, показанный (Формулой 1), может быть выполнен по всем снимкам камеры во время прохода сканера. Конечный результат - одна непротиворечивая карта распределения всех концов волокон (правосторонних) на этикетке. Для получения левосторонних концов волокон тот же самый процесс сканирования может быть проведен в обратном направлении, однако карта распределения правосторонних концов волокон может обеспечить достаточную степень защиты от подделки.
ПРОЦЕДУРА ВЕРИФИКАЦИИ
На этапе изготовления этикетки (например, как рассмотрено со ссылками на фиг.5 и 6) сканер вырабатывает одну базовую карту распределения концов волокон. Эта карта распределения может быть сжата, как будет дополнительно рассмотрено ниже в разделе под названием "сжатие данных волокна", и криптографически закодирована как сертификат подложки. На этапе верификации этикетки (как описано со ссылками на фиг.8) процедура сканирования может быть применена еще раз, чтобы получить вторую карту распределения рисунка нижележащих волокон. Тот же самый способ совпадения точек (типа рассмотренного со ссылками на фиг.11) может быть применен для определения, описывают ли две карты распределения один и тот же рисунок волокон или нет.
На фиг.15 представлены результаты 1500 совпадения точек по двум отдельным проходам сканера при линейном сканировании волоконно-оптической этикетки (разделенных линией 1502). Точки, отмеченные крестиками, представляют собой торцы волокон, захваченные детектором. Линии, соединяющие крестики над и под линией (1502), обозначают геометрическое совпадение между двумя картами распределения захваченных концов волокон (1504). Фиг.15 также включает в себя несовпадающие торцы волокон (1506) и направляющие рисунки (1508).
Высокий процент совпадения, превышающий заданный порог (т.е. порог принятия решения), указывает, что этикетка является подлинной; низкий процент совпадения указывает на подделку. В примере реализации процент совпадения точек между двумя сканированиями одной и той же этикетки (т.е. положительный коэффициент совпадения) обычно варьируется между 70% и 85%; в то время как процент соответствия между сканированиями двух различных этикеток (т.е. отрицательный коэффициент совпадения) составляет порядка 10-15%.
Дисперсия обычно составляет около 2-5%. Это указывает на возможность выбора порога принятия решения, приблизительно равным 50%, при котором ложноположительный коэффициент составит менее 1,2·10 -12, а ложноотрицательный коэффициент - менее 2,9·10 -7.
Значения ложноположительных и ложноотрицательных коэффициентов могут быть дополнительно уменьшены без больших изменений в системе. Одним из главных источников ошибок несовпадения является свойственная объективу камеры дисторсия. Положительный эффект с точки зрения уменьшения дисторсий камеры может иметь использование калибровки программного обеспечения. Кроме того, существующие способы калибровки камеры могут быть использованы для повышения положительного коэффициента совпадения до значения, составляющего приблизительно 95%, и снижения отрицательного коэффициента совпадения примерно до 5%.
Кроме того, в примере реализации система сканера, описанная в данном изобретении, требует камеры для персонального компьютера (PC) только бытового уровня, которая в настоящее время стоит от $30 до $50. В варианте изобретения для охвата всей поверхности этикетки может быть использована стационарная камера с очень высоким разрешением. Однако на практике следствием такой компоновки может стать появление дорогой системы сканера, поскольку камеры с высоким разрешением, в общем, стоят на несколько порядков дороже, чем камеры для PC с низким разрешением. Более того, обработка больших объемов видеоданных, поступающих от стационарной камеры с высоким разрешением, в реальном времени может потребовать для системы сканера мощного процессора и вызвать дальнейшее увеличение общей стоимости системы.
Имеется много дополнительных способов обработки захваченных данных, поступающих от линейного сканера. Один сложный подход заключается в согласовании позиций захваченных концов волокон с позицией сканера во время захвата данных. Это фактически позволяет создать карту распределения волокон с "измерением", очень близким к трем. Причина появления такой карты распределения двух открытых торцов одиночной пряди волокна состоит в том, что правосторонний открытый торец зарегистрирован точно (в двух измерениях), а другой открытый торец зарегистрирован приблизительно с помощью позиции сканера. Так как полоса подсветки имеет определенную ширину, горизонтальная позиция левостороннего открытого торца захватывается с приближением, ошибка которого равна половине ширины полосы подсветки. Поэтому, чем более узкой становится полоса подсветки, тем в большей степени измерение захваченных данных приближается к трем. Следовательно, карта распределения признаков этикетки может иметь измерение, составляющее приблизительно два, три или четыре.
В дополнительном примере реализации вместо получения почти трехмерной карты распределения может быть вычислена двумерная карта распределения правосторонних концов волокон. Даже если полученная таким образом карта распределения является двумерным набором точек, характер движения при сканировании обеспечивает достаточную гарантию того, что дешевые подделки (например, за исключением имитации прядей волокон) не смогут пройти верификации (типа рассмотренной со ссылками на фиг.8).
СЖАТИЕ ДАННЫХ ВОЛОКНА
В различных примерах реализации для сжатия координат волокон на данной этикетке могут быть использованы алгоритмы двух классов. Алгоритмы обоих классов состоят из трех стадий:
1.Вычисление PDF [оба класса] Вычисляют функцию распределения вероятностей (PDF) для освещения пиксела по "недвижимости" этикетки. Этот этап определяется процессом изготовления и ожидаемым распределением волокон по области этикетки. Чтобы оценить поведение системы до начала процесса изготовления, PDF может быть вычислена аналитически. Однако для точного вычисления PDF и получения лучших результатов необходимо провести статистический анализ выхода производственной линии. Пример вычисленной в цифровой форме PDF для квадратной этикетки, сканированной матрицей из 100×100 пикселов, и длине волокон, соответствующей 20 пикселам, показан на фиг.16.
2. Двухточечное векторное кодирование
a. [класс I] Для использования лишь возможных битов векторы между концевыми точками волокон могут быть закодированы. Каждый вектор может быть подвергнут независимому кодированию с использование арифметического кодера. Для данного "базового" пиксела в области этикетки вектор, который указывает на другой отличный от "базового" пиксел в области, может быть закодирован следующим способом. Все пикселы (отличные от A) в области сортируются в порядке убывания их расстояния от A. Пикселы, которые находятся на одном расстоянии, сортируются в соответствии с вероятностью того, что они являются освещенными. Пикселы в списке сортировки могут быть обозначены как P={P1...P n}. Каждый пиксел Pi может быть закодирован в списке сортировки с использованием числа битов, равного логарифму вероятности того, что Pi является первым или вторым освещенным пикселом в P.
b. [класс II] Предположим, что имеется траектория, проходящая через все освещенные пикселы в этикетке. Траектория представляет собой список векторов, в котором конец одного вектора является началом следующего вектора. Для K освещенных пикселов, самых близких к данному освещенному пикселу A, могут быть построены все векторные кортежи K(K-1), которые имеют A как конец первого вектора в кортеже и конец второго вектора в кортеже. Для данного первого вектора в кортеже следующий вектор кодируется следующим способом. B обозначает исходный пиксел первого вектора в кортеже. Все пикселы, которые ближе к B, чем A, могут быть исключены из кодирования, а оставшиеся пикселы в области этикетки могут быть подвергнуты сортировке в списке P, как в случае кодера класса I. Тогда пиксел Pi из P может быть закодирован с использованием числа битов, равного логарифму вероятности того, что Pi является первым освещенным пикселом в P.
3. Поиск самой длинной траектории, которая может быть описана при ограниченном расходе битов
a. [класс I] Задача оптимизации может быть смоделирована как вариант несимметричной задачи коммивояжера. Задачу моделируют с использованием графа G; каждый узел представляет собой освещенный пиксел; вес на каждом ребре между двумя узлами представляет собой число битов, используемых для представления указанного вектора. Требуется найти траекторию G, обеспечивающую посещение максимально возможного числа узлов при ограниченном расходе битов. Эта задача является NP-трудной (то есть относится к задачам с классом сложности решения, по существу превышающим задачи, которые могут быть решены недетерминированной машиной Тьюринга за полиномиальное время).
b. [класс II] Проблема оптимизации может быть смоделирована как другой вариант несимметричной задачи коммивояжера. Модель подобна модели класса I, за исключением того, что вес ребра меняется в зависимости от траектории, принятой в соответствии с описанием схемы кодирования класса II. Эта задача также является NP-трудной.
Алгоритм сжатия подмножества точек может представлять собой основной компонент системы изготовления универсальной этикетки, потому что цена подделки этикетки является экспоненциальной функцией коэффициента сжатия, достигнутого с помощью алгоритма кодирования. Способ с использованием алгоритма класса I позволяет достичь приблизительно на 15-25% более высокий коэффициент сжатия, чем прямые способы сжатия, и класс II, по-видимому, даст дополнительное увеличение коэффициента сжатия на 15-25%.
АППАРАТНАЯ РЕАЛИЗАЦИЯ
На фиг.17 представлена общая компьютерная среда 1700, которая может быть использована для реализации способов, описываемых в данном изобретении, при создании этикеток, не поддающихся подделке и/или фальсификации, с использованием случайно внедренных оптических волокон. Компьютерная среда 1700 представляет собой всего лишь один пример вычислительной среды, и этот пример не означает никакого ограничения объема использования или функциональных возможностей компьютера и сетевых архитектур. Не следует также интерпретировать компьютерную среду 1700 как имеющую какую-либо зависимость или потребность в каком-либо одном или в комбинации компонентов, представленных в типичной компьютерной среде 1700.
Компьютерная среда 1700 включает в себя вычислительное устройство общего назначения в форме компьютера 1702. В состав компонентов компьютера 1702 могут входить один или более процессоров или блоков 1704 обработки (по выбору включая криптографический процессор или сопроцессор), системную память 1706 и системную шину 1708, которая соединяет различные системные компоненты, включая процессор 1704 с системной памятью 1706, и др.
Системная шина 1708 представляет собой одну или более шинных структур любого из нескольких типов, включая шину памяти или контроллер памяти, периферийную шину, ускоренный графический порт (AGP) и процессор или локальную шину, использующую любую из множества шинных архитектур. В качестве примера такие архитектуры могут включать в себя шину промышленной стандартной архитектуры (ISA), шину микроканальной архитектуры (MCA), шину расширенной промышленной стандартной архитектуры ISA (EISA), локальную шину Ассоциации по стандартам видеооборудования (VESA) и шину межсоединения периферийных компонентов (системную шину PCI) (и ее варианты типа экспресс-шины PCI), которая известна также как шина расширения.
Компьютер 1702 обычно включает в себя множество компьютерно-читаемых носителей. Такие носители могут быть любыми доступными носителями, доступ к которым предоставляется компьютером 1702 и которые включают в свой состав как энергозависимые, так и энергонезависимые носители, съемные и несъемные носители.
Системная память 1706 включает в себя компьютерно-читаемые носители в форме энергозависимой памяти типа оперативной памяти ((ОЗУ), (RAM)) 1710 и/или энергонезависимой памяти типа постоянной памяти ((ПЗУ), (ROM)) 1712. Базовая система ввода-вывода (BIOS) 1714, содержащая основные подпрограммы, которые помогают передавать информацию между элементами внутри компьютера 1702, например в процессе установки в исходное состояние, хранится в ПЗУ 1712. ОЗУ 1710 обычно содержит данные и/или программные модули, немедленный доступ к которым может быть предоставлен блоком 1704 обработки и/или которые используются в настоящее время этим блоком 1704.
Компьютер 1702 может также включать другие съемные/несъемные, энергозависимые/энергонезависимые компьютерные носители данных. В качестве примера на фиг.17 представлен накопитель 1716 на жестких дисках для считывания с несъемных энергонезависимых магнитных носителей (не показанных) и записи на эти носители, накопитель 1718 на магнитных дисках для считывания со съемного энергонезависимого магнитного диска 1720 (например с "гибкого диска") и записи на этот диск, а также накопитель 1722 на оптических дисках для считывания со съемного энергонезависимого оптического диска 1724 типа CD-ROM, DVD-ROM или других оптических носителей и записи на этот диск. Каждый из накопителей - накопитель 1716 на жестких дисках, накопитель 1718 на магнитных дисках и накопитель 1722 на оптических дисках - подключен к системной шине 1708 посредством одного или более интерфейсов 1726 носителей данных. В варианте изобретения накопитель 1716 на жестких дисках, накопитель 1718 на магнитных дисках и накопитель 1722 на оптических дисках могут быть подключены к системной шине 1708 посредством одного или более интерфейсов (не показанных).
Накопители на дисках и соответствующие им компьютерно-читаемые носители обеспечивают энергонезависимое хранение компьютерно-читаемых команд, структур данных, программных модулей и других данных для компьютера 1702. В примере рассмотрены жесткий диск 1716, съемный магнитный диск 1720 и съемный оптический диск 1724, однако следует понимать, что и другие типы компьютерно-читаемых носителей, способных хранить данные, доступ к которым может быть предоставлен компьютером, типа магнитных кассет или других магнитных запоминающих устройств, карт флэш-памяти, CD-ROM, цифровых универсальных дисков (DVD) или другой оптической памяти, блоков ОЗУ, блоков ПЗУ, электрически стираемой программируемой постоянной памяти (СППЗУ) и т.п., могут быть использованы для реализации типичной вычислительной системы и среды.
Любое число программных модулей может быть сохранено на жестком диске 1716, магнитном диске 1720, оптическом диске 1724, в ПЗУ 1712 и/или ОЗУ 1710, включая в качестве примера операционную систему 1726, одну или более прикладных программ 1728, другие программные модули 1730 и программные данные 1732. Каждая такая операционная система 1726, одна или более прикладных программ 1728, другие программные модули 1730 и программные данные 1732 (или некоторая их комбинация) могут реализовывать все или часть резидентных компонентов, которые поддерживают распределенную файловую систему.
Пользователь может вводить команды и информацию в компьютер 1702 через устройства ввода данных типа клавиатуры 1734 и координатно-указательного устройства 1736 (например, "мыши"). Среди других устройств 1738 ввода данных (не показанных специально) можно назвать микрофон, джойстик, геймпад, спутниковая тарелку, последовательный порт, сканер и/или т.п. Эти и другие устройства ввода данных подключены к блоку 1704 обработки посредством интерфейсов 1740 ввода/вывода, которые соединены с системной шиной 1708, но могут быть подключены с помощью другого интерфейса и шинных структур типа параллельного порта, игрового порта или универсальной последовательной шины (USB).
Монитор 1742 или дисплей другого типа может быть также подключен к системной шине 1708 посредством интерфейса типа видеоадаптера 1744. В дополнение к монитору 1742 в состав других периферийных выходных устройств могут входить компоненты типа динамиков (не показанных) и принтера 1746, который может быть подключен к компьютеру 1702 посредством интерфейсов 1740 ввода/вывода.
Компьютер 1702 может работать в среде с сетевой структурой, используя логические связи с одним или более удаленными компьютерами типа удаленного вычислительного устройства 1748. В качестве примера удаленное вычислительное устройство 1748 может представлять собой персональный компьютер, портативный компьютер, сервер, маршрутизатор, сетевой компьютер, одноранговое устройство или другой общий сетевой узел, игровую консоль и т.п. Удаленное вычислительное устройство 1748 показано как портативный компьютер, который может включать в себя многие или все элементы и признаки, описанные в данном изобретении применительно к компьютеру 1702.
Логические связи между компьютером 1702 и удаленным компьютером 1748 изображены в виде локальной вычислительной сети (ЛВС) 1750 и основной глобальной (вычислительной) сети (WAN) 1752. Такие сетевые среды широко используются в офисах, компьютерных сетях в масштабах предприятия, интрасетях и Internet.
При работе в сетевой среде ЛВС компьютер 1702 подключают к локальной сети 1750 посредством сетевого интерфейса или адаптера 1754. При работе в сетевой среде WAN компьютер 1702 обычно имеет модем 1756 или другие средства для установления связи по глобальной сети 1752. Модем 1756, который может быть внутренним или внешним по отношению к компьютеру 1702, может быть подключен к системной шине 1708 посредством интерфейсов 1740 ввода/вывода или других соответствующих механизмов. Следует понимать, что эти сетевые подключения приведены в качестве иллюстраций и что для организации канала(ов) связи между компьютерами 1702 и 1748 могут быть использованы и другие средства.
В среде с сетевой структурой, типа показанной в виде вычислительной среды 1700, программные модули, изображенные в составе компьютера 1702 или его блоков, могут храниться в удаленном запоминающем устройстве. В качестве примера, удаленные прикладные программы 1758 постоянно находятся в запоминающем устройстве удаленного компьютера 1748. В иллюстративных целях прикладные программы и другие компоненты выполняемых программы типа операционной системы показаны на фигуре как дискретные блоки, несмотря на то, что такие программы и компоненты постоянно находятся в различные моменты времени в различных компонентах памяти вычислительного устройства 1702 и выполняются процессором(ами) данного компьютера.
В общем контексте компьютерно-выполнимых команд типа программных модулей, выполняемых одними или более компьютерами или другими устройствами, в данном изобретении могут быть рассмотрены различные модули и способы. Как правило, в состав программных модулей входят подпрограммы, программы, объекты, компоненты, структуры данных и т.д., которые выполняют специфические задачи или используют специфические абстрактные типы данных. Как правило, функциональные возможности программных модулей можно объединить или распределить как требуется при различных реализациях.
Описание этих модулей и способов может храниться на компьютерно-читаемых носителях или передаваться в какой-либо форме посредством этих носителей. Компьютерно-читаемые носители могут быть любыми доступными носителями, обращение к которым может осуществляться посредством компьютера. Среди примеров компьютерно-читаемых носителей можно назвать "компьютерные носители данных", "среды передачи данных" и др.
"Компьютерные носители данных" включают в себя энергозависимые и энергонезависимые, съемные и несъемные носители, выполненные с использованием любого способа или технологии, предназначенные для хранения информации типа компьютерно-читаемых команд, структур данных, программных модулей или других данных. Компьютерные носители данных включают в себя RAM (ОЗУ), ROM (ПЗУ), СППЗУ, флэш-память или память с другой технологией, CD-ROM, цифровые универсальные диски (DVD) или другую оптическую память, магнитные кассеты, магнитную ленту, память на магнитных дисках или другие магнитные запоминающие устройства или любой другой носитель, который может быть использован для сохранения требуемой информации и доступ к которому может быть обеспечен посредством компьютера, и др.
"Среды передачи данных" обычно включает в себя компьютерно-читаемые команды, структуры данных, программные модули или другие данные в модулированном сигнале данных типа несущего колебания или другого транспортного механизма. Среды передачи данных также включает в себя любые среды доставки информации. Термин "модулированный сигнал данных" означает сигнал, имеющий один или более наборов характеристик или измененный таким способом, чтобы закодировать информацию в сигнале. В качестве примеров сред передачи данных можно назвать проводные носители типа проводного сетевого или прямого проводного подключения и беспроводные среды типа акустической, радиочастотной, инфракрасной, а также другие беспроводные среды и др. Комбинации любых из указанных выше сред также включены в состав компьютерно-читаемых носителей.
ЗАКЛЮЧЕНИЕ
Несмотря на то что изобретение описано на языке, ориентированном на структурные признаки и/или методологические действия, следует понимать, что изобретение, определяемое прилагаемой формулой, не обязательно ограничено конкретными признаками или описанными действиями. Скорее конкретные признаки и действия раскрыты как типичные формы осуществления заявленного изобретения.
Класс B42D15/10 удостоверение личности, кредитные, чековые или подобные информационные карточки
Класс G06K19/08 с использованием маркировок различного вида на одном и том же носителе записи, например одна маркировка считывается с помощью оптических, а другая с помощью магнитных средств
Класс G09F3/00 Ярлыки, этикетки и тп средства для идентификации и индикации