EA036066B1 - Способ и система генерирования кода для идентификации продуктов, вырабатываемых на производстве - Google Patents

Способ и система генерирования кода для идентификации продуктов, вырабатываемых на производстве Download PDF

Info

Publication number
EA036066B1
EA036066B1 EA201792664A EA201792664A EA036066B1 EA 036066 B1 EA036066 B1 EA 036066B1 EA 201792664 A EA201792664 A EA 201792664A EA 201792664 A EA201792664 A EA 201792664A EA 036066 B1 EA036066 B1 EA 036066B1
Authority
EA
Eurasian Patent Office
Prior art keywords
configuration data
module
identifier
machine
product identifier
Prior art date
Application number
EA201792664A
Other languages
English (en)
Other versions
EA201792664A1 (ru
Inventor
Эрван Фраде
Филипп Шателен
Патрик Шане
Original Assignee
Инексто Са
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Инексто Са filed Critical Инексто Са
Publication of EA201792664A1 publication Critical patent/EA201792664A1/ru
Publication of EA036066B1 publication Critical patent/EA036066B1/ru

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/16Obfuscation or hiding, e.g. involving white box

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Software Systems (AREA)
  • Power Engineering (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Document Processing Apparatus (AREA)

Abstract

Изобретение и устройство относятся к реализации методики шифрования буквенно-числовых символов для маркировки продукции защищенными идентификационными кодами и проверки этих кодов, которые возможно использовать для проверки правильности уплаты налогов с доходов, проверки объемов производства и аутентификации изделий.

Description

По данной заявке испрашивается приоритет предварительной патентной заявки США № 62/204753, поданной 13 августа 2015 г., содержание которой включено сюда посредством ссылки в полном объеме.
Настоящее изобретение относится, в целом, к методам шифрования буквенно-числовых символов в связи с маркировкой продуктов защищенными идентификационными кодами и проверкой этих кодов и также к системам и способам управления распространением защищенных инструкций конфигурации производства и генерирования защищенных идентификаторов продукта.
Существующие способы идентификации продукта обычно предусматривают нанесение уникального идентификатора на продукт во время упаковки. Эти системы не масштабируются эффективно в организациях, имеющих множественные производственные объекты, или на производственных линиях, способных упаковывать с очень высокой скоростью. Дополнительно существующие способы идентификации не обеспечивают достаточной защиты, поскольку они не связаны с защищенными инструкциями конфигурации производства и не несут дополнительной информации о продукте, полезной для регулирующих органов и торговых организаций.
Существует необходимость в улучшенных способе и устройстве для безопасного управления и авторизации производства изделий производства, а также маркировки изделий производства защищенными идентификаторами продукта, в частности, тех, которые можно использовать для проверки правильности уплаты налога с доходов, проверки объема производства и аутентификации изделий производства.
Существующие системы шифруют буквенно-числовые символы, используемые в качестве идентификаторов продукта на посимвольной основе. Это ограничивает эти системы, например, числами, в целом, от 0 до 9 или, если используются только буквы, ограничивает системы количеством букв используемого алфавита, умноженного на два (включающего в себя заглавные буквы и строчные буквы). Это изобретение разрешает эти недостатки.
Нижеследующие варианты осуществления изобретения являются иллюстративными и не призваны ограничивать объем изобретения. Хотя были описаны один или более вариантов осуществления настоящего изобретения, различные их изменения, добавления, перестановки и эквиваленты включены в объем изобретения. Нижеследующее описание вариантов осуществления приведено со ссылкой на прилагаемые чертежи, которые образуют его часть, где в порядке иллюстрации изображены конкретные варианты осуществления заявленного изобретения. Следует понимать, что можно использовать другие варианты осуществления, и что возможны изменения или альтернативы, например структурные изменения. Такие варианты осуществления, изменения или альтернативы не выходят за рамки объема заявленного изобретения. Хотя нижеследующие этапы могут быть представлены в определенном порядке, в ряде случаев упорядочение может изменяться таким образом, что определенные входные сигналы обеспечиваются в разные моменты времени или в другом порядке без изменения функции описанных систем и способов. Различные вычисления, которые описаны ниже, например, осуществляемые в процедурах инициализации кода, генерации и аутентификации, не обязаны осуществляться в раскрытом порядке, и легко реализовать другие варианты осуществления, где используются альтернативные упорядочения вычислений. Помимо переупорядочения вычисления также можно разложить на подвычисления с теми же результатами.
Варианты осуществления изобретения будут описаны в порядке примера со ссылкой на прилагаемые чертежи, на которых фиг. 1 - иллюстративный способ вычисления идентификатора машины;
фиг. 2 - иллюстративный способ обфускации данных;
фиг. 3 - иллюстративный способ инициализации кода;
фиг. 4 - иллюстративный способ генерации кода;
фиг. 5 - иллюстративный способ авторизации кода.
Согласно варианту осуществления изобретения для способа обфускации данных, хранящихся в сети, способ содержит задание и сохранение информации, описывающей состояние вычислительной машины, как номера машины (MNUM), причем информация, описывающая состояние, включает в себя количество основ, содержащих информацию, описывающую состояние; генерирование машинного защищенного уникального идентификатора продукта (MSUPI) в качестве обратимого математического преобразования машинного уникального идентификатора продукта (MUPI) на основании информации, описывающей состояние вычислительной машины, причем этап вычисления MSUPI содержит задание количества этапов равным imax, для каждого этапа генерирование первого случайного числа в качестве ключа обфускации для генерации кода (CGOKi,1) и второго случайного числа в качестве ключа обфускации для генерации кода (CGOKi,2), причем генерирование содержит вычисление первого случайного числа (CGOKi,1), взаимно простого с числом, основанным на информации, описывающей состояние вычислительной машины (MNUM); вычисление второго случайного числа (CGOKi,2), имеющего равный или меньший битовый размер, как (MNUM); задание m0,2=MUPI; вычисление для каждого элемента i от i=1 до imax - 1: mi,1=(mi-1,2xCGOKi,1) mod (MNUM); mi,2=(mi,1 mod CGOKi,2); если (mi,2 > MNUM) ^ mi,2=mi,i; задание MSUPI=mimax,2; и сохранение машинного защищенного уникального идентификатора продукта (MSUPI) в электронном хранилище данных. Вышеописанный вариант осуществления, а также описанные здесь альтернативные и дополнительные варианты осуществления можно реализовать в ком- 1 036066 пьютерно-реализуемом изобретении, компьютерной системе или компьютерном носителе данных.
Согласно альтернативному или дополнительному варианту осуществления информация, описывающая состояние вычислительной машины, содержит комбинацию информации времени и номера продукта. Согласно альтернативному или дополнительному варианту осуществления информация времени включает в себя юлианский год, юлианский день, производственный час и производственную минуту. Согласно альтернативному или дополнительному варианту осуществления информация, описывающая состояние, включает в себя значение инкрементного счетчика, сбрасываемого на периодической основе. Согласно альтернативному или дополнительному варианту осуществления число, основанное на информации, описывающей состояние вычислительной машины, вычисляется как 10х366х24х60хвременной идентификатор. Согласно альтернативному или дополнительному варианту осуществления временной идентификатор задается как целое число 2210. Согласно альтернативному или дополнительному варианту осуществления защищенный уникальный идентификатор продукта (SUPI), 12-символьный буквенночисловой код, получается таким образом, что SUPI=(pxm) mod (MNUMxmNoisexRunLim).
Согласно альтернативному или дополнительному варианту осуществления для генерирования кода для безопасной идентификации продуктов, вырабатываемых на производственном объекте, способ содержит электронный прием данных конфигурации из электронного хранилища данных; электронное хранение данных конфигурации для производственного периода, причем данные конфигурации для производственного периода задают параметры, используемые при производстве продуктов; передачу данных конфигурации на модуль авторизации; на модуле авторизации определение, авторизован ли производственный период; генерирование подтвержденных данных конфигурации, содержащих ключ, представление множества авторизованных идентификаторов продукта и маркер безопасности (security token); передачу подтвержденных данных конфигурации на модуль подписи; на модуле подписи подписание подтвержденных данных конфигурации; на модуле идентификации прием запроса идентификатора продукта и генерирования идентификатора продукта в ответ на запрос, причем генерирование идентификатора продукта осуществляется путем задания и сохранения информации, описывающей состояние вычислительной машины, как номера машины (MNUM), причем информация, описывающая состояние, включает в себя количество основ, содержащих информацию, описывающую состояние; генерирования машинного защищенного уникального идентификатора продукта (MSUPI) в качестве обратимого математического преобразования машинного уникального идентификатора продукта (MUPI), на основании информации, описывающей состояние вычислительной машины, причем этап вычисления MSUPI содержит задание количества этапов равных imax, для каждого этапа генерирование первого случайного числа в качестве ключа обфускации для генерации кода (CGOKi,1) и второго случайного числа в качестве ключа обфускации для генерации кода (CGOKi,2), причем генерирование содержит вычисление первого случайного числа (CGOKi,1), взаимно простого с числом, основанным на информации, описывающей состояние вычислительной машины (MNUM); вычисление второго случайного числа (CGOKi,2), имеющего равный или меньший битовый размер, как (MNUM); задание m0,2=mi-1,2; вычисление для каждого элемента i от i=1 до imax - 1: mi,1=(mi-1,2xCGOKi,1) mod (MNUM); mi,2=(mi,1 mod CGOKi,2); если [mi,2 > MNUM) ^ mi,2=mi,1; задание MSUPI=mimax,2; сохранение машинного защищенного уникального идентификатора продукта (MSUPI) в электронном хранилище данных в качестве идентификатора продукта; передачу идентификатора продукта от модуля идентификации на модуль подписи; снабжение идентификатора продукта цифрой подписью на модуле подписи и передачу идентификатора продукта, снабженного цифрой подписью, на модуль принтера.
Согласно альтернативному или дополнительному варианту осуществления способ дополнительно содержит электронный прием данных конфигурации из электронного хранилища данных; электронное хранение данных конфигурации для производственного периода, причем данные конфигурации для производственного периода задают параметры, используемые при производстве продуктов; передачу данных конфигурации на модуль авторизации; на модуле авторизации определение, авторизован ли производственный период; генерирование подтвержденных данных конфигурации, содержащих ключ, представление множества авторизованных идентификаторов продукта и маркер безопасности; передачу подтвержденных данных конфигурации на модуль подписи; и на модуле подписи подписание подтвержденных данных конфигурации.
Согласно альтернативному или дополнительному варианту осуществления запрашивается диапазон идентификаторов. Согласно альтернативному или дополнительному варианту осуществления способ дополнительно содержит определение, авторизованы ли данные конфигурации для производственного периода; если производственный период авторизован, генерирование маркера безопасности и связывание маркера с данными конфигурации; и снабжение данных конфигурации цифровой подписью путем генерирования цифровой подписи и связывания цифровой подписи с данными конфигурации.
Согласно альтернативному или дополнительному варианту осуществления машинный уникальный идентификатор продукта (MUPI) преобразуется без заполнения машинного уникального идентификатора продукта (MUPI) таким образом, что битовая длина машинного уникального идентификатора продукта (MUPI) равна битовой длине машинного защищенного уникального идентификатора продукта (MSUPI).
- 2 036066
В альтернативном или дополнительном варианте осуществления способ проверки защищенного машинного уникального идентификатора продукта содержит модуль проверки принимает MSUPI для проверки; назначение MSUPI как m0,2; модуль проверки извлекает первое случайное число CGOK1>1 и второе случайное число CGOKi,2, и Imax, связанный с извлеченными случайными числами и принятым MSUPI; вычисление для каждого элемента I от i=1 до Imax - 1: mi,1=(mi-1,2 mod CGOKl2); если (mi,2 > MNUM) ^ mi,1=mi-1,2; mi,2=(mi,1xCGOK-1 I,1) mod (MNUM); mcg=mimax,2; и проверку MUPI=mcg/mNoise и значения шума=щcg mod mNoise, где MUPI основан на информации, описывающей состояние вычислительной машины.
Согласно альтернативному или дополнительному варианту осуществления машинный защищенный уникальный идентификатор продукта (MSUPI) преобразуется без заполнения машинного уникального идентификатора продукта (MUPI) таким образом, что битовая длина машинного уникального идентификатора продукта (MUPI) равна битовой длине машинного защищенного уникального идентификатора продукта (MSUPI). Согласно альтернативному или дополнительному варианту осуществления авторизации, принимаемые от модуля авторизации, могут передаваться на модуль проверки, что позволяет затем обрабатывать запросы проверки в отношении этих авторизаций, и при этом данные, передаваемые на модуль проверки, могут включать в себя машинный защищенный уникальный идентификатор продукта (MSUPI).
Описанные способы могут использоваться помимо или вместо шифрования и могут использоваться как способ обфускации чисел с использованием заданной основы. Способ может использоваться для любой конечной заданной основы. Способы могут использоваться на заранее заданной числовой основе, например от 0 до 9 при использовании чисел или от 0 до F в шестнадцатеричной системе. Этот способ работает на заданной основе, которая не ограничивается количеством символов, используемых в нормальном диапазоне символов для этой основы.
Для этого способа задается группа, из которой будут выбираться буквенно-числовые символы; каждая из этих групп называется основой. Примером будет 0 ^ 52 (включая 0 и 52). Каждое из этих чисел будет единичным символом, который будет шифроваться. Альтернативно, можно задавать основу 0 ^ 932. Альтернативы допускают комбинацию букв и чисел. В порядке неограничительных примеров это может быть английский алфавит, кириллический алфавит или любой другой алфавит помимо чисел. Система позволяет задавать основу с использованием любого конечного набора или комбинацию наборов в качестве основ для каждого из тех, которые подлежат отсчету в качестве единичного символа при обфускации числа. Любой набор буквенно-числовых символов может использоваться при условии, что числовое значение назначается для каждого символа. Это может использоваться для объединения, например, наборов шестнадцатеричных чисел и алфавита.
Каждому символу назначается числовое значение с минимальным значением и максимальным значением, и затем они объединяются. Например, в случае комбинации шестнадцатеричных чисел и финского алфавита, который имеет 29 букв, можно назначать значения 0-15 для шестнадцатеричных чисел, таким образом, что 15 соответствует 0, 14 соответствует 1, вплоть до 1 соответствует В, и 0 соответствует А. Для финского алфавита, аналогично, соответствующие числа могут быть 1 с А до 29 с А (предполагая, что используются только заглавные буквы) или можно назначать 1 с L и отсчет, где 18 соответствует А, 19 соответствует А, и 29 назначается K.
Назначение не обязательно является линейным при условии, что сохраняется, какой символ или какое число назначается какому числовому значению. Это также может осуществляться динамически, также если желательна дополнительная обфускация, при условии, что назначения записываются для дальнейшего дешифрования. С примером использования шестнадцатеричной системы и 29-символьного алфавита диапазон может быть МАХ=Нех(щax) * Alphabet(max)+Alphabet(max), тогда как минимум MIN=Hex(min) * Alphabet(min)+Alphabet(min). В обоих этих примерах существует две основы. Этот пример предусматривает основу диапазона [1, 464]. Дело в том, что числа алфавита принимают значения от 1 до 29, а не от 0 до 28 для 29 символов. Альтернативно, одни и те же наборы могут объединяться как MAX=Alphabet(max) * Hex(max) +Hex(max) и MIN=Alphabet (min) * Hex(min)+Hex(min) и обеспечивать основу диапазона [0, 450]. Таким образом, с использованием одних и тех же компонентных основ можно создавать различные диапазоны для лучшей обфускации чисел, используемых в процессе.
В другом примере, где нужно создавать основу диапазона, основа диапазона может описывать состояние вычислительной машины, например комбинацию временных и числовых идентификаторов. В этом примере основу диапазона можно создавать с использованием множественных основ. В этом примере она состоит из пяти разных основ и является комбинацией усеченного юлианского года (JY) [0-10], объединенного с юлианской датой (JD) [0-366], часом дня (HR) [0-24], минутой часа (Mins) [0-60] и временным идентификатором (TI) [0-2210], дополнительным инкрементным счетчиком, сбрасываемым каждую минуту. Количество основ, которые используются для создания основы диапазона, задается как imax. Пример этого варианта осуществления представлен на фиг. 1.
Диапазон определяется путем преобразования буквенно-числовых символов в единичный диапазон. Например, в этом случае годы преобразуются в дни, затем полное количество дней в часы, полное коли
- 3 036066 чество часов в минуты и затем в инкрементные счетчики. Для достижения этого предполагается использовать максимальные количества каждого для получения верхней границы диапазона и минимальные количества каждого для определения нижней границы диапазона. Например, максимальное значение МАХ=(((JY(max) * JD(max)+JD(max)) * HR(max)+HR(max)) * Mins(max)+Mins(max)) * TI(max)+ TI(max). Минимум диапазона равен MIN=(((JY(min) * JD(min)+JD(min)) * HR(min)+HR(min)) * Mins(min)+Mins(min)) * TI(min)+TI(min). В этом примере диапазон составляет [0, 12815659610].
С использованием диапазонов вышеприведенного примера можно задавать ашинно-уникальный идентификатор продукта (MUPI). Задание должно производиться в пределах значения таким образом, что MUPI=(((JY * JD(max)+JD) * HR(max)+HR) * Mins (max)+Mins) * TI(max)+ TI. Для лучшей обфускации числа можно добавлять случайный компонент. Это случайное число можно генерировать любым образом при условии, что известен диапазон случайного числа. Это случайное число может быть цифровой подписью, которая генерируется с использованием наборов секретного и динамического ключей. Это может осуществляться, например, с использованием кода аутентификации сообщения хэширования ключа. Например, MUPI, объединенный с динамическим ключом при использовании вырезающей функции, даст секретный ключ, и MUPI, объединенный с секретным ключом с использованием хэш-функции, будет использоваться для вычисления значения шума. Это позволяет задавать значение mcg=MUPI * mNoise+шум. Это значение MUPI подлежит шифрованию с использованием ключа обфускации для генерации кода (CGOK).
Можно использовать два значения CGOK, где первый CGOK1,1 является числом, взаимно простым с максимальным значением диапазона для MUPI. MNUM=JY(max) * JD(max) * HR(max) * Mins (max) * TI(max), которое в этом примере равно 10*366*24*60*2210. Второй CGOKi,1, CGOKi,2, является числом в диапазоне [MIN, MNUM-1] с битовым размером, меньшим или равным CGOKi,1. Для проведения вычислений, m0,2 задается равным MUPI и задание MSUPI равным максимальным элементом mi,2, который равен mimax,2. Если существуют 8 основ, содержащих основу диапазона, то элемент MSUPI=m8,2. Затем MSUPI может объединяться с ID генератора кода, CGID. Это осуществляется сдвигом CGID на размер MSUPI таким образом, что m=CGIDx(MNUMxmNoise)+MSUPI, где mNoise является максимальным возможным значением шума. Окончательный код, защищенный уникальный идентификатор продукта (SUPI), получается путем шифрования m с использованием глобального обфускационного кода, p, который может быть одинаковым для всех генераторов кода. SUPI задается как (pxm) mod (MNUMxmNoisexRunLim) и SUPI преобразуется в 12-символьный буквенно-числовой код. Пример этого варианта осуществления представлен на фиг. 2.
Способ обфускации является обратимым для проверки процесса и продуктов. Это осуществляется путем выполнения процесса обфускации в обратном порядке. Это возможно, поскольку CGOK является взаимно простым с MNUM, и используется функция Эйлера относительно MNUM. Это позволяет вычислять MUPI и MNUM из MSUPI. Таким образом, дешифрование SUPI осуществляется на следующих этапах, m=(p16x34 -1xSUPI) mod (MNUMxmNoisexRunLim). Из m можно извлечь MSUPI и CGID, MSUPI=m mod (MNUMx mNoise) и CGID=m/(MNUMx mNoise). Таким образом, деобфускация MSUPI осуществляется с использованием обратной величины CGOK. Поскольку CGID известен, его можно использовать для извлечения правильных CGOK из базы данных. MUPI=mcg/mNoise, и значение шума также можно проверять, поскольку шум=mcg mod mNoise.
Иллюстративная реализация.
В другом аспекте изобретения описанные здесь способы могут осуществляться в вычислительном окружении, как описано здесь, с использованием исполнимых инструкций. Ниже приведен пример набора инструкций для генерирования идентификатора продукта, защищенного посредством обфускации.
- 4 036066 //codeGenlD int id=122334; int noise=345; var gr=new int[12]; int noiseSize=l;
for (int i=0; i < 12; i++) { gr[i] = (id % numberOfGroups);
noiseSize=noiseSize * Groups[id % numberOfGroups] . Length; id=id/numberOfGroups;
} var usedNoise=noise % noiseSize;
StringBuilder stb=new StringBuilder(12);
for (int i=0; i < 12; i++) { stb.Append(Groups[gr[i]][noise % Groups[gr[i]].Length]);
noise=noise/Groups[gr[i]] . Length; }
Console.WriteLine(Code= +stb.ToString()); string code=GFLlBARARARA;
i d= 0;
usedNoise=0;
int carryOver=0;
for (int i=ll; i >- 0; i--) { var ch=code[i];
for (int j=0; j < numberOfGroups; j++) { var index=Groups[j].IndexOf(ch);
if (index >= 0) { id=id * numberOfGroups+j;
usedNoise=usedNoise * carryOver+index; carryOver=Groups[j].Length;
} }
}
Console.WriteLine(Id=+id);
Алгоритмы симметричного ключа, например 3DES, AES и пр., действуют на блоках входных данных. Для этого длина входных данных должна быть в точности равна длине блока или кратному целому длины блока для этого алгоритма. В примере 128-битового шифрования AES длина блока может быть
- 5 036066 равна 128 битам, т.е. 16 байтам. Шифруемые входные данные могут иметь размер, например, 20 байтов, на 4 байта больше длины блока в этом примере. Чтобы длина входных данных была кратна длине блока, входные данные необходимо снабжать заполнением. В этом случае заполнение вычисляется следующим образом: 20 байтов требует (16-(20-16))=12 байтов заполнения. Таким образом, это заполнение может значительно увеличивать размер зашифрованного набора данных, аналогично увеличению объема физического хранилища данных, необходимого для хранения зашифрованных данных. Согласно вышеприведенной иллюстративной реализации способ обфускации, отвечающий изобретению, может быть сконфигурирован для обфускации данных, например идентификаторов продукта, без необходимости в заполнении входных данных идентификатора продукта.
Объединение с защищенными производственными системами.
Вышеописанные системы и способы для обфускации данных выгодно использовать совместно с системами для аутентификации производства продуктов. В другом аспекте изобретения предусмотрен способ аутентификации производства продуктов, причем способ включает в себя электронное хранение данных конфигурации для производственного периода, причем данные конфигурации для производственного периода задают параметры, используемые при производстве продуктов; определение, авторизованы ли данные конфигурации для производственного периода; если производственный период авторизован, генерирование маркера безопасности и связывание маркера с данными конфигурации; и снабжение данных конфигурации цифровой подписью путем генерирования цифровой подписи и связывания цифровой подписи с данными конфигурации; прием данных конфигурации, снабженных цифровой подписью, и цифровой подписи на продукционной машине; на продукционной машине проверку цифровой подписи, связанной с данными конфигурации, снабженными цифровой подписью; вычисление набора защищенных идентификаторов продукта на основании данных конфигурации, снабженных цифровой подписью; выработку продуктов в течение производственного периода согласно данным конфигурациям, снабженным цифровой подписью; и печать набора защищенных идентификаторов продукта на продуктах согласно данным конфигурациям, снабженным цифровой подписью.
Используемый здесь термин сущность может означать i) лицо, например потребителя продукта; ii) группу, например группу людей, имеющих общий интерес, например, розничных торговцев; iii) вычислительное устройство; iv) вычислительный узел в сетевой системе; v) место хранения, например запоминающее устройство, где хранится документ; vi) виртуальную точку в сети, например представляющую бизнес-функцию коммерческого предприятия и пр. Дополнительно сущность может представлять точку в последовательности операций, например, для авторизации, которая может осуществляться лицом, отвечающим за этот аспект последовательности операций, или вычислительным устройством, которое обеспечивает автоматизированную обработку. Термин сущность не предполагает ограничения каким-либо из этих примеров и может распространяться на другие ситуации, согласующиеся с описанными здесь принципами.
Модули системы.
Ниже описаны различные модули. Любые модули могут быть физически совмещены или располагаться на удалении друг от друга. Дополнительно любые модули могут быть логически или физически объединены в единый модуль без отклонения от объема изобретения.
Модуль управления.
Согласно фиг. 3 модуль управления (также известный как оркестратор) (110) может принимать входной сигнал от любого другого модуля или внешнего источника и может выдавать инструкции на другие модули системы на основании заранее сконфигурированных программ и/или вводов оператора. Он также может генерировать итоговую сводку состояния системы.
Сигнал, поступающий на модуль управления, может включать в себя некоторые или все данные (105) конфигурации. Подаваемые данные конфигурации могут указывать некоторые или все параметры, включающие в себя, но без ограничения, машину для производства, производственную линию, фабрику, вырабатываемый продукт и объем продукта. Данные конфигурации могут указывать, какие предметы (например, продукты) подлежат маркировке защищенными идентификаторами, и как эти предметы могут вырабатываться. Данные конфигурации могут указывать диапазон продуктов, например начальный и конечный идентификаторы продукта. В некоторых вариантах осуществления диапазон может быть набором идентификаторов продукта. Данные конфигурации могут предоставляться оператором системы или динамически или автоматически генерироваться. Данные конфигурации могут включать в себя дополнительные исполнимые инструкции или интерпретируемый алгоритм. Данные конфигурации могут базироваться на вводе оператора или выходном сигнале производственной системы или другой централизованной системы, предписывающей, как и что вырабатывать.
Модуль (110) управления может передавать данные конфигурации на любой модуль, в том числе, но без ограничения, модуль (130) авторизации, модуль (140) идентификации и модуль (145) подписи.
Модуль управления может запрашивать авторизацию от модуля авторизации для выполнения производственной операции. Этот процесс предусматривает передачу запроса (включающего в себя некоторые или все данные конфигурации) на модуль авторизации и прием подписанных или зашифрованных данных конфигурации. В некоторых вариантах осуществления модуль авторизации может возвращать
- 6 036066 данные конфигурации на модуль управления, включающие в себя цифровую подпись, применяемую к этим данным конфигурации. Модуль авторизации определяет, авторизовать ли запрос от модуля управления на основании принимаемых им данных. Кроме того, информация, возвращаемая модулем авторизации, включенная в данные конфигурации, может использоваться для связывания генерируемых кодов с предоставленной авторизацией. Когда данные подписаны модулем авторизации, это предохраняет систему от изменения данных конфигурации. В порядке неограничительного примера изменение запроса на выработку одной марки вместо другой можно регулировать, разрешать или отклонять.
Авторизации, принятые от модуля авторизации, также могут передаваться на модуль проверки, что позволяет затем обрабатывать запросы проверки в отношении этих авторизаций. Данные, передаваемые на модуль проверки, могут включать в себя защищенный идентификатор, а также любые данные конфигурации. В некоторых примерах данные конфигурации, отправленные на модуль авторизации, могут включать в себя информацию диапазона продуктов.
Подписанные или подтвержденные данные конфигурации могут представлять собой некоторые или все из набора входных параметров модуля управления, проверенных и подтвержденных модулем авторизации, что остается в силе в ходе производства. Маркер безопасности может быть получен от модуля авторизации и/или из входного параметра модуля управления. Маркер безопасности может служить доказательством того, что идентификатор продукта соответствует подтвержденным данным конфигурации и, таким образом, авторизованному производству. Маркер безопасности может поступать на модуль подписи для генерирования подписи для единичного идентификатора продукта, или подписи единичного идентификатора продукта, или самого идентификатора продукта, или диапазона продуктов, или идентификаторов продукта. Маркер безопасности может представлять собой уникальный код, случайный код или псевдослучайный код. Маркер безопасности может быть образован любыми числовыми или буквенными символами или их комбинацией.
Модуль авторизации.
Модуль авторизации действует для подтверждения запросов авторизации для совершения действия в идентификационной системе. В некоторых вариантах осуществления он может действовать как менеджер лицензий.
Модуль авторизации может принимать данные конфигурации. Модуль авторизации также может принимать информацию диапазона и/или алгоритма. В некоторых вариантах осуществления модуль авторизации может принимать входные данные конфигурации от модуля управления. Выходной диапазон, в необязательном порядке, может идентифицировать диапазон продуктов, машины, фабрики, диапазоны или авторизованные объемы продукции. Выходной сигнал также может включать в себя информацию диапазона и/или включать в себя алгоритм, который содержит набор исполняемых или интерпретируемых инструкций, которые будут использоваться для генерирования маркера безопасности. Модуль авторизации может быть централизованным на уровне фабрики или децентрализованным на каждой производственной линии или комбинированным.
Модуль авторизации может хранить и/или генерировать один или более ключей шифрования. В некоторых вариантах осуществления, ключ, хранимый модулем авторизации, может быть личным открытым ключом шифрования согласно инфраструктуре открытого ключа (PKI). В некоторых вариантах осуществления на модуле авторизации хранится только копия личного ключа. В других вариантах осуществления модуль авторизации распределен по нескольким экземплярам, которые дублируют ключи между собой. В случае PKI, модуль авторизации может выводить подписанные данные конфигурации. В некоторых вариантах осуществления модуль авторизации может шифровать данные конфигурации и/или подписывать выходные данные конфигурации.
В некоторых вариантах осуществления система сконфигурирована таким образом, что только модуль авторизации может считывать защищенные входные параметры модуля управления, необходимые для генерации маркера безопасности. В некоторых вариантах осуществления ключ поступает на модуль авторизации из другого источника.
Модуль авторизации может быть реализован в виде аппаратного модуля безопасности (HSM) или физического вычислительного устройства другого типа, которое защищает и администрирует цифровые ключи для сильной аутентификации и обеспечения криптографической обработки. Функционал модуля авторизации может осуществляться компьютером со встроенной платой с помощью ключа шифрования или личного ключа PKI. Модуль может обладать такими особенностями, что попытки осуществления доступа к данным сделают их нечитаемыми или недоступными.
Если на модуль авторизации поступают диапазон и алгоритм, модуль авторизации может выводить идентификатор в диапазоне авторизации и маркер безопасности идентификатора. Например, выходной идентификатор может быть диапазоном от 0 до 1000 с маркером безопасности для каждого элемента в диапазоне.
Модуль авторизации может генерировать ключ из любого параметра, используемого в модуле управления. В некоторых вариантах осуществления модуль авторизации может генерировать или выводить ключ из существующего ключа из любого параметра, используемого в модуле управления таким образом, что только конкретный модуль авторизации может использовать этот ключ. Аппаратная и про- 7 036066 граммная реализация этого метода открытого ключа может быть воплощена в асимметричной криптосистеме.
Модуль авторизации может выводить информацию, например данные конфигурации и, в необязательном порядке, один или более маркеров безопасности, с цифровой подписью, обеспеченной модулем подписи. Альтернативно, модуль авторизации может выводить данные конфигурации, зашифрованные в ключ, хранящийся в модуле авторизации. Выходной сигнал модуля авторизации может поступать на модуль управления.
Согласно варианту осуществления способ аутентификации производства продуктов включает в себя электронное хранение данных конфигурации для производственного периода, причем данные конфигурации для производственного периода задают параметры, используемые при производстве продуктов; определение, авторизованы ли данные конфигурации для производственного периода; если производственный период авторизован, генерирование маркера безопасности и связывание маркера с данными конфигурации; и снабжение данных конфигурации цифровой подписью путем генерирования цифровой подписи и связывания цифровой подписи с данными конфигурации; прием данных конфигурации, снабженных цифровой подписью, и цифровой подписи на продукционной машине; на продукционной машине проверку цифровой подписи, связанной с данными конфигурации, снабженными цифровой подписью; вычисление набора защищенных идентификаторов продукта на основании данных конфигурации, снабженных цифровой подписью; выработку продуктов в течение производственного периода согласно данным конфигурациям, снабженным цифровой подписью; и печать набора защищенных идентификаторов продукта на продуктах согласно данным конфигурациям, снабженным цифровой подписью.
В альтернативном или дополнительном варианте осуществления данные конфигурации представляют диапазон вырабатываемых продуктов. В альтернативном или дополнительном варианте осуществления данные конфигурации представляют диапазон продуктов, машины, фабрики, диапазоны или авторизованные объемы продукции. Альтернативные или дополнительные варианты осуществления могут включать в себя прием запроса проверки, причем запрос содержит идентификатор продукта и определение, авторизованы ли данные конфигурации для производственного периода, со ссылкой на менеджер лицензий. Альтернативные или дополнительные варианты осуществления могут включать в себя генерирование маркера безопасности для диапазона продуктов; и связывание маркера безопасности с диапазоном продуктов.
Модуль подписи.
Модуль подписи может принимать данные конфигурации, ключ авторизации, маркер безопасности или любую их комбинацию, а также уникальный идентификатор продукта, генерируемый модулем идентификации. В некоторых вариантах осуществления модуль подписи может принимать, кроме того, одну или более внутренних характеристик машины и/или продукта и/или характеристики экземпляра продукта. Модуль подписи может создавать цифровую подпись на основании некоторых или всех из этих входных сигналов, в целом именуемых здесь данными конфигурации.
Для генерирования цифровой подписи в некоторых вариантах осуществления сначала модуль подписи может генерировать сборник или другое представление данных конфигурации. В некоторых вариантах осуществления сборник может генерироваться путем вычисления значения криптографического хэша данных конфигурации согласно алгоритму цифровой подписи, обеспеченному модулем подписи, выполняющим алгоритм цифровой подписи. В порядке неограничительных примеров хэш можно вычислять согласно функциям MD5, SHA-1, SHA-2, SHA-3/Keccak. Затем сборник можно шифровать с использованием личного ключа, полученного модулем подписи для генерирования цифровой подписи.
В некоторых вариантах осуществления цифровая подпись может использовать технологию инфраструктуры открытого ключа (PKI) для установления аутентичности данных конфигурации. Системы PKI используют сертификаты и ключи для идентификации сущностей, индивидов или организаций. Модуль аутентификации использует личный ключ для подписания данных конфигурации и связывает данные конфигурации с сертификатом, включающим в себя открытый ключ, используемый модулем аутентификации.
Модуль получателя использует открытый ключ для проверки цифровой подписи и, таким образом, аутентичность подписанных данных конфигурации. Поддерживающие технологии могут использоваться для установления других признаков нерасторжения, например времени подписания и состояния ключей подписания. Открытый ключ может передаваться получающей сущности напрямую или путем публикации в онлайновом хранилище или реестре.
Модуль идентификации.
Модуль идентификации может принимать данные конфигурации и генерировать идентификаторы для маркируемых предметов. Модуль идентификации может принимать цифровую подпись, генерируемую модулем подписи, которая будет объединяться с уникальным идентификатором для генерирования составного уникального идентификатора.
Идентификаторы могут включать в себя или основываться на дате и/или времени производства маркируемого продукта и цифровой подписи, принятой от модуля подписи. В некоторых вариантах осуществления генерируемые защищенные идентификаторы могут быть уникальными или, по существу,
- 8 036066 уникальными. В некоторых вариантах осуществления защищенные идентификаторы могут быть маркерами безопасности.
В случае диапазонов модуль идентификации может генерировать идентификатор диапазона и набор идентификаторов в генерируемом диапазоне.
Созданные идентификаторы могут выводиться на модуль управления печатью для направления печати на продукт или могут подвергаться дополнительной обработке для генерирования другого кода, который печатается на упаковке продукта.
Модуль проверки.
Согласно фиг. 5 модуль (150) проверки может принимать проверенные данные конфигурации и на основании этих подтвержденных данных конфигурации подтверждать запрос авторизации (305) для фабрики, машины, продукта или сообщаемого объема производства. Данные, поступающие на модуль проверки, могут включать в себя некоторые или все из проверенных данных конфигурации, выходного сигнала модуля подписи, идентификаторов, маркеров безопасности и/или информации диапазона. Модуль проверки может генерировать информацию для модуля авторизации с этими параметрами для проверки/подтверждения идентификатора продукта.
Модуль проверки может генерировать дешифрование (320) запроса, которое включает в себя один или более идентификаторов или диапазонов идентификаторов (315) и данные (310) подписи, включающие в себя один или более маркеров безопасности.
Если маркер безопасности поступает на модуль проверки, модуль проверки может возвращать информацию, относящуюся к авторизации, данным конфигурации и/или диапазонам. Если единичный маркер безопасности используется для диапазона продуктов, маркер безопасности может поступать на модуль проверки для проверки параметров, связанных с диапазоном продуктов, а не отдельными продуктами. Этот вариант осуществления может быть особенно полезен в отношении регулировки экспорта.
Процессы системы.
Инициализация идентификационного кода.
Инициализация идентификационного кода может осуществляться для подтверждения авторизации и параметров. В некоторых вариантах осуществления по причинам производительности это может осуществляться один раз в начале производства. Согласно фиг. 3 модуль (110) управления может осуществлять доступ к хранилищу (115) данных в отношении дополнительных параметров, или дополнительные параметры могут поступать на модуль. Параметры и данные конфигурации, один раз подписанные модулем (130) авторизации, образуют подтвержденные данные (135) конфигурации. Модуль управления принимает проверенные данные конфигурации, как описано выше, в ответ на его запрос модулю (130) авторизации.
Авторизация может быть авторизацией для выработки продукта или для маркировки продукта с определенным ID или обоих. Данные конфигурации и дополнительные параметры передаются на модуль авторизации и используются модулем авторизации для генерирования маркера безопасности. Модуль авторизации может подписывать данные конфигурации и дополнительные параметры, образующие подписанные данные конфигурации. Как рассмотрено выше, данные конфигурации могут указывать определенный производственный период или другие продукты и действия. Модуль авторизации может генерировать блок авторизации, включающий в себя ключ, авторизованные идентификаторы и маркер безопасности. В некоторых вариантах осуществления ключ может генерироваться модулем авторизации или может поступать на него. Модуль авторизации может передавать блок авторизации на модуль управления. Модуль управления может передавать подтвержденные данные конфигурации и другую информацию, например список идентификаторов, диапазон идентификаторов и/или один или более маркеров безопасности, на модуль (145) подписи. Модуль подписи может подписывать данные и отправлять подписанные данные и подпись на модуль управления. Затем модуль (140) идентификации может принимать от модуля управления блок инициализации, включающий в себя идентификаторы и/или диапазоны идентификаторов для продуктов.
Вариант осуществления изобретения может включать в себя способ инициализации процесса для безопасного управления производственным объектом, содержащий электронный прием данных конфигурации из электронного хранилища данных; электронное хранение данных конфигурации для производственного периода, причем данные конфигурации для производственного периода задают параметры, используемые при производстве продуктов; передачу данных конфигурации на модуль авторизации; на модуле авторизации определение, авторизован ли производственный период; генерирование подтвержденных данных конфигурации, содержащих ключ, представление множества авторизованных идентификаторов продукта и маркер безопасности; передачу подтвержденных данных конфигурации на модуль подписи; и на модуле подписи подписание подтвержденных данных конфигурации.
Альтернативные или дополнительные варианты осуществления могут включать в себя определение, авторизованы ли данные конфигурации для производственного периода; если производственный период авторизован, генерирование маркера безопасности и связывание маркера с данными конфигурации; и снабжение данных конфигурации цифровой подписью путем генерирования цифровой подписи и связывания цифровой подписи с данными конфигурации.
- 9 036066
Альтернативные или дополнительные варианты осуществления могут включать в себя прием данных конфигурации, снабженных цифровой подписью, и цифровой подписи на продукционной машине;
на продукционной машине проверку цифровой подписи, связанной с данными конфигурации, снабженными цифровой подписью; и вычисление набора защищенных идентификаторов продукта на основании данных конфигурации, снабженных цифровой подписью.
Альтернативные или дополнительные варианты осуществления могут включать в себя выработку продуктов в течение производственного периода согласно данным конфигурациям, снабженным цифровой подписью; и печать набора защищенных идентификаторов продукта на продуктах согласно данным конфигурациям, снабженным цифровой подписью.
Альтернативные или дополнительные варианты осуществления могут включать в себя определение, авторизован ли производственный период, дополнительно содержит извлечение данных лицензирования из сервера лицензирования.
Генерация идентификационного кода.
Согласно фиг. 4 процесс генерации кода генерирует коды в ходе производственного процесса. Процесс генерации идентификационного кода может начинаться с запроса модулю (140) идентификации на предмет идентификатора или диапазона идентификаторов, которые затем возвращаются на модуль (110) управления. Затем идентификаторы отправляются на модуль (145) подписи, который подписывает идентификаторы и возвращает подписанные идентификаторы на модуль управления. Модуль подписи может принимать маркер безопасности. В некоторых вариантах осуществления модуль подписи не требует управления внешними инструкциями, и если какой-либо идентификационный код подлежит отсчету, код может быть связан с единичным маркером безопасности. Модуль подписи может управляться модулем авторизации. Затем модуль управления может отправлять выходные данные на модуль управления печатью в модуле принтера (210). Выходные данные, отправленные на модуль управления печатью, могут шифроваться до передачи. Данные конфигурации могут передаваться на модуль (150) проверки для обработки последующих запросов проверки.
Вариант осуществления изобретения включает в себя способ генерирования кода для безопасной идентификации продуктов, вырабатываемых на производственном объекте, включающий в себя электронный прием данных конфигурации из электронного хранилища данных; электронное хранение данных конфигурации для производственного периода, причем данные конфигурации для производственного периода задают параметры, используемые при производстве продуктов; передачу данных конфигурации на модуль авторизации; на модуле авторизации определение, авторизован ли производственный период; генерирование подтвержденных данных конфигурации, содержащих ключ, представление множества авторизованных идентификаторов продукта и маркер безопасности; передачу подтвержденных данных конфигурации на модуль подписи; на модуле подписи подписание подтвержденных данных конфигурации; на модуле идентификации прием запроса идентификатора продукта и генерирования идентификатора продукта в ответ на запрос; передачу идентификатора продукта от модуля идентификации на модуль подписи; снабжение идентификатора продукта цифрой подписью на модуле подписи и передачу идентификатора продукта, снабженного цифрой подписью, на модуль принтера.
Альтернативные или дополнительные варианты осуществления могут включать в себя электронный прием данных конфигурации из электронного хранилища данных; электронное хранение данных конфигурации для производственного периода, причем данные конфигурации для производственного периода задают параметры, используемые при производстве продуктов; передачу данных конфигурации на модуль авторизации; на модуле авторизации определение, авторизован ли производственный период; генерирование подтвержденных данных конфигурации, содержащих ключ, представление множества авторизованных идентификаторов продукта и маркер безопасности; передачу подтвержденных данных конфигурации на модуль подписи; на модуле подписи подписание подтвержденных данных конфигурации.
В альтернативных или дополнительных вариантах осуществления запрашивается диапазон идентификаторов.
Альтернативные или дополнительные варианты осуществления могут включать в себя определение, авторизованы ли данные конфигурации для производственного периода; если производственный период авторизован, генерирование маркера безопасности и связывание маркера с данными конфигурации; и снабжение данных конфигурации цифровой подписью путем генерирования цифровой подписи и связывания цифровой подписи с данными конфигурации.
Проверка идентификационного кода.
Модуль проверки может принимать запрос проверки. Запрос может включать в себя один или более идентификационных кодов. Модуль проверки может дешифровать или иначе деобфусцировать принятый идентификационный код. Результирующая информация, будучи дешифрованной, может включать в себя компоненту подписи и идентификатор. Затем результирующий идентификатор может связываться с исходными данными конфигурации, ранее сохраненными совместно с идентификатором. Связанные данные могут включать в себя другие идентификаторы в диапазоне, маркер безопасности и другую информацию, сохраненную в связи с производством продукта, несущую этот идентификационный код.
Некоторые варианты осуществления могут включать в себя дополнительный функционал для обра- 10 036066 ботки идентификаторов, поступающих на модуль проверки, на основании стороны, запрашивающей проверку кода. Разные стороны могут снабжаться разными средствами для осуществления доступа к модулю проверки. Например, розничный торговец или другая форма торговой организации может быть снабжен(а) иным порталом или каналом связи, чем потребитель. Розничному торговцу также может потребоваться аутентифицировать себя модулю проверки.
В некоторых вариантах осуществления система может быть сконфигурирована таким образом, что проверка потребителем приводит к тому, что идентификатор маркируется как проверенный. Система дополнительно может быть выполнена с возможностью хранения этих кодов, проверка которых запрашивается потребителем. Любые последующие запросы для проверки этих раннее проверенных кодов могут быть отклонены или иначе обрабатываться по-разному.
Экспортные функции.
Варианты осуществления изобретения могут применяться в отношении экспорта кода третьим сторонам. Эти варианты осуществления могут включать в себя экспортную функцию, сконфигурированную для генерирования отдельного кода с этой целью. Экспортированный код можно генерировать путем сбора одного или более идентификаторов продукта и/или маркеров безопасности, и подписания этих идентификаторов и/или маркеров. Идентификаторы и/или маркеры можно собирать в любой момент в производственном процессе. Подписанные идентификаторы и/или маркеры в форме экспортированных кодов могут сообщаться третьей стороне, которая может хранить их и осуществлять проверку действительности идентификаторов и/или маркеров.
Системные архитектуры.
Описанные здесь системы и способы могут быть реализованы в программном обеспечении или оборудовании или любой их комбинации. Описанные здесь системы и способы могут быть реализованы с использованием одного или более вычислительных устройств, которые могут быть или не быть физически или логически отдельными друг от друга. Дополнительно различные аспекты описанных здесь способов могут объединяться или вливаться в другие функции. В некоторых вариантах осуществления проиллюстрированные элементы системы могут объединяться в единое аппаратное устройство или делиться на множественные аппаратные устройства. Если используются множественные аппаратные устройства, аппаратные устройства могут физически располагаться вблизи или на удалении друг от друга.
Способы могут быть реализованы в компьютерном программном продукте, доступном с компьютерно-используемого или компьютерно-считываемого носителя данных, который обеспечивает программный код для использования компьютером или любой системой исполнения инструкций или совместно с ним/ней. Компьютерно-используемый или компьютерно-считываемый носитель данных может представлять собой любое устройство, которое может содержать или хранить программу для использования компьютером или системой, устройством или оборудованием исполнения инструкций или совместно с ним/ней.
Система обработки данных, пригодная для хранения и/или выполнения соответствующего программного кода, может включать в себя по меньшей мере один процессор, подключенный прямо или косвенно к компьютерным устройствам хранения данных, например элементам памяти. Устройства ввода/вывода (I/O) (включающие в себя, но без ограничения, клавиатуры, дисплеи, указательные устройства и т.д.) могут быть подключены к системе. Сетевые адаптеры также могут быть подключены к системе, чтобы система обработки данных могла подключаться к другим системам обработки данных или удаленным принтерам или запоминающим устройствам через промежуточные частные или публичные сети. Для обеспечения взаимодействия с пользователем признаки могут быть реализованы на компьютере с устройством отображения, например CRT (электронно-лучевой трубкой), LCD (жидкокристаллическим дисплеем) или монитором другого типа для отображения информации пользователю, и клавиатура и устройство ввода, например мышь или шаровой манипулятор, с помощью которого пользователь может обеспечивать ввод в компьютер.
Компьютерная программа может представлять собой набор инструкций, который может использоваться, прямо или косвенно, на компьютере. Описанные здесь системы и способы могут быть реализованы с использованием таких языков программирования, как Flash™, JAVA™, C++, С, С#, Visual Basic™, JavaScript™, PHP, XML, HTML и т.д., или комбинации языков программирования, включающих в себя компилируемые или интерпретируемые языки, и могут быть установлены в любой форме, включающей в себя в качестве самостоятельной программы или в качестве модуля, компонента, подпрограммы или другого модуля, пригодного для использования в вычислительном окружении. Программное обеспечение может включать в себя, но без ограничения, программно-аппаратное обеспечение, резидентное программное обеспечение, микрокод и т.д. В реализации интерфейсов между модулями программирования можно использовать такие протоколы, как SOAP/HTTP. Описанные здесь компоненты и функции могут осуществляться на любой настольной операционной системе, выполняющейся в виртуализированном или невиртуализированном окружении, с использованием любого языка программирования, пригодного для разработки программного обеспечения, включающего в себя, но без ограничения, разные версии Microsoft Windows™, Apple™ Mac™, iOS™, Unix™/x-Windows™, Linux™ и т.д.
- 11 036066
Пригодные процессоры для выполнения программных инструкций включают в себя, но без ограничения, микропроцессоры общего и специального назначения и единственный процессор или один из множественных процессоров или ядер компьютера любого рода. Процессор может принимать и хранить инструкции и данные из компьютерного устройства хранения данных, например постоянной памяти, оперативной памяти, обеих или любой комбинации описанных здесь устройств хранения данных. Процессор может включать в себя любую схему обработки или схему управления, выполненную с возможностью управления работой и рабочими характеристиками электронного устройства.
Процессор также может включать в себя одно или более устройств хранения данных или может в ходе работы подключаться для осуществления связи с ними для хранения данных. Такие устройства хранения данных могут включать в себя в порядке неограничительных примеров магнитные диски (в том числе внутренние жесткие диски и сменные диски), магнитооптические диски, оптические диски, постоянную память, оперативную память и/или хранилище на основе флеш-технологий. Запоминающие устройства, пригодные для материального воплощения инструкций компьютерной программы и данных, также могут включать в себя все формы энергонезависимой памяти, включающие в себя, например, полупроводниковые запоминающие устройства, например EPROM, EEPROM и запоминающие устройства на основе флеш-технологий; магнитные диски, например внутренние жесткие диски и сменные диски; магнитооптические диски и диски CD-ROM и DVD-ROM. Процессор и память могут дополняться ASIC (специализированными интегральными схемами) или входить в их состав.
Описанные здесь системы, модули и способы могут быть реализованы с использованием любой комбинации программных или аппаратных элементов. Описанные здесь системы, модули и способы могут быть реализованы с использованием одной или более виртуальных машин, действующих самостоятельно или совместно друг с другом. Любое применимое решение виртуализации может использоваться для инкапсулирования физической платформы вычислительной машины в виртуальную машину, которая выполняется под управлением программного обеспечения виртуализации, выполняющегося на аппаратной вычислительной платформе или хосте. Виртуальная машина может иметь как виртуальное оборудование системы, так и гостевое программное обеспечение операционной системы.
Описанные здесь системы и способы могут быть реализованы в компьютерной системе, которая включает в себя невидимый компонент, например сервер данных, или которая включает в себя промежуточный программный компонент, например сервер приложений или интернет-сервер, или которая включает в себя интерфейсный компонент, например компьютер-клиент, имеющий графический пользовательский интерфейс или интернет-браузер, или любую их комбинацию. Компоненты системы могут быть соединены посредством любой формы или среды передачи цифровых данных, например сети связи. Примеры сетей связи включают в себя, например, LAN, WAN и компьютеры и сети, которые образуют интернет.
Один или более вариантов осуществления изобретения можно практически применять с другими конфигурациями компьютерной системы, включающими в себя карманные устройства, микропроцессорные системы, микропроцессорную или программируемую бытовую электронику, миникомпьютеры, универсальные компьютеры и т.д. Изобретение также можно практически применять в распределенных вычислительных окружениях, где задачи осуществляются удаленными устройствами обработки, связанными через сеть.
Хотя были описаны один или более вариантов осуществления изобретения, различные их изменения, добавления, перестановки и эквиваленты включены в объем изобретения.

Claims (19)

  1. ФОРМУЛА ИЗОБРЕТЕНИЯ
    1. Способ генерирования кода для идентификации продуктов, вырабатываемых на производственном объекте, содержащий этапы, на которых электронно принимают из электронного хранилища данных и электронно сохраняют данные конфигурации для производственного периода, причем данные конфигурации для производственного периода задают параметры, используемые при производстве продуктов;
    передают данные конфигурации на модуль авторизации;
    на модуле авторизации определяют, авторизован ли производственный период;
    генерируют подтвержденные данные конфигурации, содержащие ключ, представление множества авторизованных идентификаторов продукта и маркер безопасности;
    передают подтвержденные данные конфигурации на модуль подписи;
    на модуле подписи подписывают подтвержденные данные конфигурации;
    на модуле идентификации принимают запрос идентификатора продукта и генерируют идентификатор продукта в ответ на запрос, причем генерирование идентификатора продукта осуществляют путем задания и сохранения информации, описывающей состояние вычислительной машины, как номера машины (MNUM), причем информация, описывающая состояние, включает в себя количество основ, содержащих информацию, описывающую состояние;
    - 12 036066 генерирования машинного защищенного уникального идентификатора продукта (MSUPI) в качестве обратимого математического преобразования машинного уникального идентификатора продукта (MUPI) на основании информации, описывающей состояние вычислительной машины, причем этап вычисления MSUPI содержит этапы, на которых задают количество этапов, равным imax, для каждого этапа генерируют первое случайное число в качестве ключа обфускации для генерации кода (CGOKi,1) и второе случайное число в качестве ключа обфускации для генерации кода (CGOKi,2), причем генерирование содержит этапы, на которых вычисляют первое случайное число (CGOKi,1), взаимно простое с числом, основанным на информации, описывающей состояние вычислительной машины (MNUM);
    вычисляют второе случайное число (CGOKi,2), имеющее равный или меньший битовый размер, как (MNUM);
    задают m0,2=MUPI;
    вычисляют для каждого элемента i от i=1 до imax - 1:
    mi,1=(mi-1,2xCGOKi,1) mod (MNUM);
    mi,2=(mi,i mod CGOKi,2);
    если (mi,2 > MNUM) ^ mi,2=mi,1;
    задают MSUPI=mimax,2;
    передают машинный защищенный уникальный идентификатор продукта от модуля идентификации на модуль подписи;
    снабжают цифровой подписью машинный защищенный уникальный идентификатор продукта на модуле подписи и передают машинный защищенный уникальный идентификатор продукта, снабженный цифровой подписью, на модуль принтера.
  2. 2. Способ по п.1, в котором информация, описывающая состояние вычислительной машины, содержит комбинацию информации времени и номера продукта.
  3. 3. Способ по одному или более из предыдущих пунктов, в котором информация времени включает в себя юлианский год, юлианский день, производственный час и производственную минуту.
  4. 4. Способ по одному или более из предыдущих пунктов, в котором информация, описывающая состояние, включает в себя значение инкрементного счетчика, сбрасываемого на периодической основе.
  5. 5. Способ по одному или более из предыдущих пунктов, в котором упомянутое число, основанное на информации, описывающей состояние вычислительной машины, вычисляют как 10x 366x24x60x временной идентификатор.
  6. 6. Способ по одному или более из предыдущих пунктов, в котором временной идентификатор задают как целое число 2210.
  7. 7. Способ по одному или более из предыдущих пунктов, в котором защищенный уникальный идентификатор продукта (SUPI), 12-символьный буквенно-числовой код, получают таким образом, что SUPI= (pxm) mod (MNUMxmNoisexRunLim).
  8. 8. Способ по одному или более из предыдущих пунктов, дополнительно содержащий этап, на котором сохраняют машинный защищенный уникальный идентификатор продукта (MSUPI) в электронном хранилище данных в качестве идентификатора продукта.
  9. 9. Способ по одному или более из предыдущих пунктов, в котором запрашивают диапазон идентификаторов.
  10. 10. Способ по одному или более из предыдущих пунктов, дополнительно содержащий этапы, на которых определяют, авторизованы ли данные конфигурации для производственного периода;
    если производственный период авторизован, генерируют маркер безопасности и связывают упомянутый маркер с данными конфигурации; и снабжают данные конфигурации цифровой подписью путем генерирования цифровой подписи и связывания цифровой подписи с данными конфигурации.
  11. 11. Способ по одному или более из предыдущих пунктов, в котором машинный уникальный идентификатор продукта (MUPI) преобразуют без заполнения машинного уникального идентификатора продукта (MUPI) таким образом, что битовая длина машинного уникального идентификатора продукта (MUPI) равна битовой длине машинного защищенного уникального идентификатора продукта (MSUPI).
  12. 12. Система для генерирования кода для идентификации продуктов, вырабатываемых на производственном объекте, содержащая компьютерный процессор, выполненный с возможностью выполнения машиночитаемых команд для осуществления способа по п.1.
  13. 13. Система по п.12, в которой информация, описывающая состояние вычислительной машины, содержит комбинацию информации времени и номера продукта.
  14. 14. Система по п.12, в которой информация времени включает в себя юлианский год, юлианский день, производственный час и производственную минуту.
    - 13 036066
  15. 15. Система по п.12, в которой информация, описывающая состояние, включает в себя значение инкрементного счетчика, сбрасываемого на периодической основе.
  16. 16. Система по п.12, в которой упомянутое число, основанное на информации, описывающей состояние вычислительной машины, вычисляется как 10х366х24х60хвременной идентификатор.
  17. 17. Система по п.12, в которой временной идентификатор задается как целое число 2210.
  18. 18. Система по п.12, в которой защищенный уникальный идентификатор продукта (SUPI), 12символьный буквенно-числовой код, получается таким образом, что SUP^^xm) mod (MNUMx mNoisexRunLim).
  19. 19. Система по п.12, в которой компьютерный процессор дополнительно выполнен с возможностью выполнения инструкций для сохранения машинного защищенного уникального идентификатора продукта (MSUPI) в электронном хранилище данных в качестве идентификатора продукта.
EA201792664A 2015-08-13 2016-08-13 Способ и система генерирования кода для идентификации продуктов, вырабатываемых на производстве EA036066B1 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562204753P 2015-08-13 2015-08-13
PCT/EP2016/069316 WO2017025645A1 (en) 2015-08-13 2016-08-13 Enhanced obfuscation or randomization for secure product identification and verification

Publications (2)

Publication Number Publication Date
EA201792664A1 EA201792664A1 (ru) 2018-07-31
EA036066B1 true EA036066B1 (ru) 2020-09-22

Family

ID=56684668

Family Applications (1)

Application Number Title Priority Date Filing Date
EA201792664A EA036066B1 (ru) 2015-08-13 2016-08-13 Способ и система генерирования кода для идентификации продуктов, вырабатываемых на производстве

Country Status (11)

Country Link
US (2) US20180205543A1 (ru)
EP (1) EP3335370B1 (ru)
JP (1) JP7068826B2 (ru)
CN (1) CN107852328B (ru)
BR (1) BR112017027643A2 (ru)
EA (1) EA036066B1 (ru)
ES (1) ES2738415T3 (ru)
HK (1) HK1257075B (ru)
PL (1) PL3335370T3 (ru)
TR (1) TR201910315T4 (ru)
WO (1) WO2017025645A1 (ru)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112560118A (zh) * 2019-09-26 2021-03-26 杭州中天微系统有限公司 用于提供可重置的标识符的配置装置和配置方法
US20210278826A1 (en) * 2020-03-04 2021-09-09 International Business Machines Corporation Quality control based on measurements from verified sensors
CN112865981B (zh) * 2021-02-02 2023-05-02 中国工商银行股份有限公司 一种令牌获取、验证方法及装置
CN114024674B (zh) * 2021-11-23 2024-05-31 支付宝(杭州)信息技术有限公司 两方安全比较的方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130099901A1 (en) * 2007-01-09 2013-04-25 Mojix, Inc. Systems and Methods for Secure Supply Chain Management and Inventory Control
US20130297929A1 (en) * 2012-05-07 2013-11-07 Sap Ag Real-time Asset Tracking using Discovery Services

Family Cites Families (150)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4035615A (en) 1976-05-20 1977-07-12 Sperry Rand Corporation System for accepting wide ranges of universal product code system
US4094244A (en) 1976-12-22 1978-06-13 Dymo Industries, Inc. Hand-held bar code label marking device
US4354101A (en) 1977-04-15 1982-10-12 Msi Data Corporation Method and apparatus for reading and decoding a high density linear bar code
US4463250A (en) 1981-07-11 1984-07-31 Mcneight David L Method and apparatus for use against counterfeiting
US4529871A (en) 1982-09-29 1985-07-16 Loblaw Companies Limited Price marking system
US4860226A (en) 1986-09-09 1989-08-22 Martin Edward L Method and apparatus for bar code graphics quality control
US4963719A (en) 1989-11-01 1990-10-16 Spectra-Physics Bar code scanner and method of scanning
US5646389A (en) 1990-11-13 1997-07-08 Symbol Technologies, Inc. Inventory management system using coded re-order information
AU663554B2 (en) 1991-11-22 1995-10-12 Engineered Data Products, Inc. Unique label generation apparatus for entity
JPH05151381A (ja) 1991-11-29 1993-06-18 Nippondenso Co Ltd バーコード読取装置
US5483624A (en) 1992-03-27 1996-01-09 Monarch Marking Systems, Inc. Programmable hand held labeler
US5467433A (en) 1992-04-15 1995-11-14 Monarch Marking Systems, Inc. Label printing and data collection program generator
US5382779A (en) 1993-05-07 1995-01-17 Digicomp Research Corporation Shelf price label verification apparatus and method
US5400319A (en) 1993-10-06 1995-03-21 Digital Audio Disc Corporation CD-ROM with machine-readable I.D. code
US6122403A (en) 1995-07-27 2000-09-19 Digimarc Corporation Computer system linked by using information in data objects
JPH07156459A (ja) 1993-12-03 1995-06-20 Japan Tobacco Inc 封函テープ供給装置及び出荷品の製造情報記録システム
US6456729B1 (en) 1994-04-14 2002-09-24 Lewis J. Moore Anti-counterfeiting and tracking system
JP3355804B2 (ja) 1994-08-30 2002-12-09 株式会社デンソー 車両用道路地図表示装置
US5892900A (en) 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US5978773A (en) 1995-06-20 1999-11-02 Neomedia Technologies, Inc. System and method for using an ordinary article of commerce to access a remote computer
US5850080A (en) 1995-08-03 1998-12-15 Barcode Graphics Inc. Verification of barcodes
US6371375B1 (en) 1995-09-25 2002-04-16 Intermec Ip Corp. Method and apparatus for associating data with a wireless memory device
US5837983A (en) 1996-06-10 1998-11-17 Psc, Inc. Readability monitoring system for optical codes
US6272634B1 (en) 1996-08-30 2001-08-07 Regents Of The University Of Minnesota Digital watermarking to resolve multiple claims of ownership
US5767498A (en) 1996-09-17 1998-06-16 Ncr Corporation Bar code error scanner
US7797164B2 (en) 1996-10-02 2010-09-14 Nintendo Of America, Inc. Method and apparatus for enabling purchasers of products to obtain return information and to initiate product returns via an on-line network connection
US6442276B1 (en) 1997-07-21 2002-08-27 Assure Systems, Inc. Verification of authenticity of goods by use of random numbers
US6832202B1 (en) 1997-08-29 2004-12-14 Electronic Data Systems Corporation Method and system of routing requests for authorized approval
US5974150A (en) 1997-09-30 1999-10-26 Tracer Detection Technology Corp. System and method for authentication of goods
US6212638B1 (en) 1997-12-02 2001-04-03 George C. Lee Method for generating unpredictable authentication identification symbols
US6134561A (en) 1997-12-29 2000-10-17 Pitney Bowes Inc. System for tracking the receipt and internal delivery of items such as packages
US6069955A (en) 1998-04-14 2000-05-30 International Business Machines Corporation System for protection of goods against counterfeiting
US6924781B1 (en) 1998-09-11 2005-08-02 Visible Tech-Knowledgy, Inc. Smart electronic label employing electronic ink
GB2342743B (en) 1998-10-17 2003-05-14 Nicholas Paul Elliot Verification method
US6226619B1 (en) 1998-10-29 2001-05-01 International Business Machines Corporation Method and system for preventing counterfeiting of high price wholesale and retail items
US6963846B1 (en) 2000-07-17 2005-11-08 Kelly Registration Systems, Inc. System and method of managing registration, sale, distribution and use of regulated agricultural products and the licensing/certification of dealers and applicators of agricultural products
US6217966B1 (en) 1999-02-26 2001-04-17 Ncr Corporation Desensitized price label
US6260029B1 (en) 1999-08-11 2001-07-10 Pitney Bowes Inc. Postage meter that provides on a mailpiece evidence of postage paid together with cryptographically secured, third party certified, non-shipping information about the sender of the mailpiece
US7188258B1 (en) 1999-09-17 2007-03-06 International Business Machines Corporation Method and apparatus for producing duplication- and imitation-resistant identifying marks on objects, and duplication- and duplication- and imitation-resistant objects
WO2001055882A2 (en) 2000-01-27 2001-08-02 Crossoff Inc. Authenticity verification method and apparatus
US6547137B1 (en) 2000-02-29 2003-04-15 Larry J. Begelfer System for distribution and control of merchandise
US20060143180A1 (en) 2000-03-09 2006-06-29 Pkware, Inc. System and method for manipulating and managing computer archive files
JP2001328711A (ja) 2000-05-18 2001-11-27 Ishikawajima Harima Heavy Ind Co Ltd 商品の配送管理方法
JP4577950B2 (ja) 2000-06-23 2010-11-10 大日本印刷株式会社 非接触型icカードの発行処理システム
US6725366B1 (en) 2000-09-07 2004-04-20 International Business Machines, Corporation System and method for 32 bit code branching to 64 bit targets
US7113922B2 (en) 2000-11-02 2006-09-26 Living Naturally, Llc Electronic inventory movement and control device
US20020053796A1 (en) 2000-11-07 2002-05-09 Mccann Mark Graphical label and method of manufacturing
DE10058688B4 (de) 2000-11-25 2011-08-11 Alstom Technology Ltd. Dämpferanordnung zur Reduktion von Brennkammerpulsationen
WO2002073550A1 (en) 2001-03-14 2002-09-19 Orell Füssli Security Documents AG A method for verifying the authenticity of an article
US6497367B2 (en) 2001-04-26 2002-12-24 International Business Machines Corporation Providing a location and item identification data to visually impaired shoppers in a site having barcode labels
US20020158137A1 (en) 2001-04-30 2002-10-31 William Grey Systems and methods wherein a machine-readable item code is substantially invisible to a human
US6729603B1 (en) 2001-06-08 2004-05-04 Psc Scanning, Inc. Add-on capture rate in a barcode scanning system
RU2199781C1 (ru) 2001-07-20 2003-02-27 Ямилев Ильгиз Амирович Способ маркировки товара, или изделия, или конструкции с последующей идентификацией (варианты) и система проведения идентификации товара или изделия, или конструкции с указанной маркировкой (варианты)
US6616056B2 (en) 2001-08-31 2003-09-09 International Business Machines Corporation Method and system of capturing and reading consumer-oriented responses through consumer-appended bar codes
US20030051767A1 (en) 2001-09-19 2003-03-20 Unilever Home And Personal Care Usa Package and system
CA2461312C (en) 2001-09-24 2015-12-01 Scott Laboratories, Inc. Methods and apparatuses for assuring quality and safety of drug administration and medical products and kits
JP2003104562A (ja) 2001-09-29 2003-04-09 Toshiba Corp 手荷物管理方法および手荷物管理システム
US8209226B2 (en) 2001-11-15 2012-06-26 Nintendo Of America Inc. Non-serialized electronic product registration system and method of operating same
US7251730B2 (en) * 2001-12-21 2007-07-31 Qualcomm Incorporated Method and apparatus for simplified audio authentication
RU2216776C2 (ru) 2001-12-24 2003-11-20 Общество с ограниченной ответственностью "АЙ-ФЕРСТ" Способ идентификации и учета маркированных объектов и система для его осуществления
US20050127176A1 (en) 2002-01-04 2005-06-16 Robert Dickinson Multi label verification system
JP3834241B2 (ja) 2002-01-16 2006-10-18 埼玉日本電気株式会社 ソフトウェア記録部分離型情報処理装置及びソフトウェア管理方法
RU2225641C2 (ru) 2002-01-24 2004-03-10 Слепов Анатолий Алексеевич Способ защиты от подделки изделий массового изготовления
JP2003233794A (ja) 2002-02-07 2003-08-22 Hitachi Ltd 無線タグ、商品、商品付随物、商品セット、リーダ、印刷機、情報加工方法、及び判定方法
BR0312989A (pt) 2002-07-26 2008-03-04 Ron Everett base de dados e sistema de operação de conhecimento
JP2004094510A (ja) 2002-08-30 2004-03-25 Inst Of Physical & Chemical Res 商品流通における虚偽表示防止方法及びこれに用いる改ざん防止機能付きラベル書込装置
US20040117265A1 (en) 2002-12-12 2004-06-17 Paul Hoffman Method and system for labeling and managing the sale of manufactured concrete blocks
US6827275B2 (en) 2003-01-22 2004-12-07 Ufp Technologies, Inc. Method of tracking and marking tools
US6712275B1 (en) 2003-02-10 2004-03-30 Targus Fly And Feather, Llc UPC identification device
US7286043B2 (en) 2003-04-28 2007-10-23 Battelle Memorial Institute K1-53 System and method for inventorying multiple remote objects
DE10328328B4 (de) 2003-06-25 2015-06-03 TÜV Rheinland Holding AG Produktschutz-Portal und Verfahren zur Echtheitsprüfung von Produkten
US20050006469A1 (en) 2003-07-10 2005-01-13 United Parcel Service Of America, Inc. Methods, systems, and computer-readable media for linking object identification data to package identification data
US7028901B2 (en) 2003-07-17 2006-04-18 Symbol Technologies, Inc. System and method for reading and decoding optical codes using multiple color illumination
US6892947B1 (en) 2003-07-30 2005-05-17 Hewlett-Packard Development Company, L.P. Barcode embedding methods, barcode communication methods, and barcode systems
JP2005060080A (ja) 2003-08-19 2005-03-10 Dainippon Printing Co Ltd 可変印字管理システム
JP2005115890A (ja) 2003-10-07 2005-04-28 Pv Up:Kk 購読条件付メールマガジン登録システム
US7752137B2 (en) 2003-11-03 2010-07-06 Meyers Printing Company Authentication and tracking system
US8543411B2 (en) 2003-11-05 2013-09-24 United Parcel Service Of America, Inc. Systems and methods for detecting counterfeit pharmaceutical drugs at the point of retail sale
JP2005200187A (ja) 2004-01-19 2005-07-28 Nippon Telegr & Teleph Corp <Ntt> 情報管理方法、情報管理システムおよび情報管理プログラム
US7055691B2 (en) 2004-02-27 2006-06-06 Owens-Illinois Healthcare Packaging Inc. Plastic packaging having embedded micro-particle taggants
US7497379B2 (en) 2004-02-27 2009-03-03 Microsoft Corporation Counterfeit and tamper resistant labels with randomly occurring features
WO2005083644A1 (en) 2004-03-02 2005-09-09 Stikker.Com Bv Method and system for verifying the authenticity of goods
JP4402490B2 (ja) 2004-03-22 2010-01-20 東芝テック株式会社 流通物情報管理システム
JP4455246B2 (ja) 2004-03-29 2010-04-21 株式会社日立製作所 リコール対応支援システム、リコール対応支援方法、およびリコール対応支援プログラム
US20050273434A1 (en) 2004-04-18 2005-12-08 Allen Lubow System and method for managing security in a supply chain
US20050234823A1 (en) 2004-04-20 2005-10-20 Rainer Schimpf Systems and methods to prevent products from counterfeiting and surplus production also of tracking their way of distribution.
US7307536B2 (en) 2004-05-06 2007-12-11 Savi Technology, Inc. Portable deployment kit for nested visibility
EP1764321A4 (en) 2004-05-31 2011-04-13 Tdk Lambda Corp PRODUCT MANAGEMENT SYSTEM
US7267271B2 (en) 2004-06-16 2007-09-11 Dell Products L.P. System and method for component inventory tracking with shipper identification codes
US7246748B1 (en) 2004-06-30 2007-07-24 Adobe Systems Incorporated Enabling the use of machine-readable codes
US20060011726A1 (en) 2004-07-14 2006-01-19 Culture.Com Technology (Macau) Ltd. Micro bar code and recognition system and method thereof
JP2006103813A (ja) 2004-09-30 2006-04-20 Hitachi Ltd 物品追跡情報格納方法および物品追跡情報格納システム
EP1645992A1 (en) 2004-10-08 2006-04-12 Philip Morris Products S.A. Methods and systems for marking, tracking and authentication of products
US7309011B2 (en) 2004-10-29 2007-12-18 Symbol Technologies, Inc. Method of authenticating products using hardware compatibility flag
US7614546B2 (en) * 2005-02-03 2009-11-10 Yottamark, Inc. Method and system for deterring product counterfeiting, diversion and piracy
JP2006229582A (ja) 2005-02-17 2006-08-31 Ricoh Co Ltd 文書処理装置、画像形成装置及び文書処理プログラム
US7677461B2 (en) * 2005-03-10 2010-03-16 Mil. Digital Labeling Inc. Digital labels for product authentication
US7513436B2 (en) 2005-06-30 2009-04-07 Symbol Technologies, Inc. Apparatus and methods for optical representations of radio frequency identification tag information
JP4272186B2 (ja) 2005-07-08 2009-06-03 株式会社みずほコーポレート銀行 回収代行システム
US7492267B2 (en) 2005-07-29 2009-02-17 Suzanne Bilyeu Tracking methods and systems using RFID tags
FR2900486A1 (fr) 2006-04-28 2007-11-02 Hafshejani Abdollah Sadeghi Procede de detection de la contrefacon ou de l'authenticite d'un produit
US20080066167A1 (en) 2006-09-12 2008-03-13 Andri Michael J Password based access including error allowance
CN101201886B (zh) 2007-01-15 2012-08-22 于志 一种数字化识别商品的方法
WO2008089396A1 (en) 2007-01-19 2008-07-24 Invitrogen Corporation Compositions and methods for genetic manipulation and monitoring of cell lines
US8175578B2 (en) 2007-05-07 2012-05-08 Battelle Energy Alliance, Llc Wireless device monitoring methods, wireless device monitoring systems, and articles of manufacture
EP2051189A1 (en) 2007-10-18 2009-04-22 Siemens Aktiengesellschaft Device for electronic identification of items
EP2223460A4 (en) 2007-12-20 2011-12-28 Bce Inc NON-CONTACT LABEL WITH SIGNATURE AND ASSOCIATED APPLICATIONS
JP2009151668A (ja) 2007-12-21 2009-07-09 Hitachi Ltd 農産物トレーサビリティシステム、農産物トレーサビリティ方法、農産物トレーサビリティプログラム、および小売業者端末
EP2104067A1 (en) 2008-03-17 2009-09-23 Philip Morris Products S.A. Method and apparatus for identifying, authenticating, tracking and tracing manufactured items
US8140852B2 (en) * 2008-06-16 2012-03-20 International Business Machines Corporation Authenticating serialized commodities
KR100911762B1 (ko) 2008-06-23 2009-08-11 (주)지디에스케이 주소표준화 시스템 및 방법
US8761390B2 (en) * 2008-06-30 2014-06-24 Gm Global Technology Operations Production of cryptographic keys for an embedded processing device
CN101354753B (zh) 2008-09-10 2010-09-29 张其善 产品标签制作方法、产品真伪检验方法与系统
EP2172882A1 (en) 2008-10-06 2010-04-07 JT International S.A. Method of cigarette packaging and cigarette packaging system
WO2010057312A1 (en) 2008-11-24 2010-05-27 Certicom Corp. System and method for hardware based security
FR2939542B1 (fr) 2008-12-04 2012-08-03 Advanced Track & Trace Procede et dispositif de protection d'un recipient et etiquette pour leur mise en oeuvre
GB2470900B (en) 2009-06-08 2017-06-14 Kezzler As Method and system for storage and retrieval of track and trace information
CN101609626A (zh) 2009-07-10 2009-12-23 烟台东方瑞创达电子科技有限公司 产品防伪防窜货的附标方法
EP2348465A1 (en) 2009-12-22 2011-07-27 Philip Morris Products S.A. Method and apparatus for storage of data for manufactured items
CN102110199A (zh) * 2009-12-28 2011-06-29 北京安码科技有限公司 一种利用Elgamal公钥算法生成软件注册码的方法
JP5730491B2 (ja) 2010-02-26 2015-06-10 株式会社ニコン・エシロール レンズ加工管理システム、レンズ製造システム、レンズ製造方法、コンピュータプログラム、レンズ加工管理方法、データ供給装置、レンズ設計データ利用管理システム、レンズ設計データ利用管理装置、及びレンズ設計データ利用管理プログラム
US8839459B2 (en) 2010-09-22 2014-09-16 Qualcomm Incorporated Product authentication using end-to-end cryptographic scheme
US9507971B2 (en) 2010-11-05 2016-11-29 Barcode Graphics Inc. Systems and methods for barcode integration in packaging design and printing
CN102542215A (zh) 2010-12-13 2012-07-04 杭州华杭科技有限公司 一次性容器的双签认证法
EP2472451A1 (en) * 2010-12-30 2012-07-04 Philip Morris Products S.A. Method and apparatus for marking manufactured items
US8903884B2 (en) 2011-02-21 2014-12-02 Microsoft Corporation Multi-tenant services gateway
TW201236927A (en) 2011-03-11 2012-09-16 China Steel Corp Anti-counterfeiting bottle
US20120254052A1 (en) 2011-04-04 2012-10-04 Gao Zeming M Anti-counterfeiting marking with dual-code and partial concealment
US9130917B2 (en) 2011-05-02 2015-09-08 Verisign, Inc. DNSSEC signing server
US20120310848A1 (en) 2011-05-31 2012-12-06 Gao Zeming M Anti-counterfeiting marking with asymmetrical concealment
DE102011081804B4 (de) 2011-08-30 2015-02-12 Siemens Aktiengesellschaft Verfahren und System zum Bereitstellen von gerätespezifischen Betreiberdaten, welche an ein Authentisierungs-Credential gebunden werden, für ein Automatisierungsgerät einer Automatisierungsanlage
BR112014004858A2 (pt) 2011-08-31 2017-04-04 Thomson Licensing método para um backup seguro e recuperação de dados de configuração de um dispositivo de usuário em uma extremidade, e dispositivo utilizando o método
CN103186863A (zh) 2011-12-30 2013-07-03 鸿富锦精密工业(深圳)有限公司 防伪方法及应用该防伪方法的产品
DE102012005427A1 (de) * 2012-03-16 2013-09-19 Giesecke & Devrient Gmbh Verfahren und System zur gesicherten Kommunikation zwischen einen RFID-Tag und einem Lesegerät
US8881005B2 (en) 2012-04-20 2014-11-04 King Abdulaziz City For Science And Technology Methods and systems for large-scale statistical misspelling correction
US20140122479A1 (en) 2012-10-26 2014-05-01 Abbyy Software Ltd. Automated file name generation
TWI622969B (zh) 2012-12-17 2018-05-01 印奈克斯托股份有限公司 用以使用物理特性來標記製造物品的方法及設備
TWI610253B (zh) 2012-12-17 2018-01-01 印奈克斯托股份有限公司 用於儲存追踪製造品項用的資料之方法及設備
GB2508922A (en) 2012-12-17 2014-06-18 Ibm Controlling cabling modifications in storage area networks by physical locks
EP2747003A1 (en) 2012-12-21 2014-06-25 Kezzler AS Method and system for storing and retrieving packaging relationships
GB201302206D0 (en) 2013-02-07 2013-03-27 Benson Ip Ltd System,apparatus and method of authenticating products
US10095846B2 (en) * 2013-05-30 2018-10-09 Jscrambler S.A. Web application protection
US20150269559A1 (en) 2014-03-24 2015-09-24 Cellum Innovacios es Szolgaltato Zrt. Systems and methods for a quick card
CN103873226B (zh) * 2014-04-02 2017-03-29 成都西山居互动娱乐科技有限公司 针对用户密码的随机混淆方法
EP3158679B1 (en) 2014-06-23 2021-10-27 Inexto Sa Method and system for marking manufactured items to detect unauthorised refilling
US20160027021A1 (en) 2014-07-24 2016-01-28 Andrew Kerdemelidis Product Authenticator
US9628270B2 (en) * 2014-09-09 2017-04-18 Microsoft Technology Licensing, Llc Cryptographically-verifiable attestation label
CN104639543A (zh) * 2015-01-29 2015-05-20 南京三宝科技股份有限公司 基于射频识别标签id的传感器采集数据合法性检验方法
US9678664B2 (en) 2015-04-10 2017-06-13 Google Inc. Neural network for keyboard input decoding
DE102015213412A1 (de) 2015-07-16 2017-01-19 Siemens Aktiengesellschaft Verfahren und Anordnung zum sicheren Austausch von Konfigurationsdaten einer Vorrichtung

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130099901A1 (en) * 2007-01-09 2013-04-25 Mojix, Inc. Systems and Methods for Secure Supply Chain Management and Inventory Control
US20130297929A1 (en) * 2012-05-07 2013-11-07 Sap Ag Real-time Asset Tracking using Discovery Services

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GIUSEPPE ATENIESE ET AL.: "Untraceable RFID tags via insubvertible encryption", PROCEEDINGS OF THE 12TH. ACM CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY. (CCS'05). ALEXANDRIA, VA, NOV. 7-11, 2005; [ACM CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY], NEW YORK, NY: ACM, US, 7 November 2005 (2005-11-07), pages 92-101, XP058245589, DOI: 10.1145/1102120.1102134 ISBN: 978-1-59593-226-6 the whole document *

Also Published As

Publication number Publication date
PL3335370T3 (pl) 2019-11-29
ES2738415T3 (es) 2020-01-22
US20180205543A1 (en) 2018-07-19
EA201792664A1 (ru) 2018-07-31
HK1257075B (zh) 2020-07-03
JP7068826B2 (ja) 2022-05-17
EP3335370B1 (en) 2019-05-01
EP3335370A1 (en) 2018-06-20
CN107852328A (zh) 2018-03-27
JP2018523388A (ja) 2018-08-16
US10587403B2 (en) 2020-03-10
WO2017025645A1 (en) 2017-02-16
TR201910315T4 (tr) 2019-08-21
BR112017027643A2 (pt) 2018-09-11
CN107852328B (zh) 2021-04-06

Similar Documents

Publication Publication Date Title
US8843745B2 (en) Methods of authorizing a computer license
CN110677376B (zh) 认证方法、相关设备和系统及计算机可读存储介质
CN101022337A (zh) 一种网络身份证的实现方法
EP3335370B1 (en) Enhanced obfuscation or randomization for secure product identification and verification
US10917245B2 (en) Multiple authorization modules for secure production and verification
CN109818752B (zh) 信用评分生成方法、装置、计算机设备和存储介质
KR100817565B1 (ko) 신원확인 인증서를 이용한 원패스 서비스 시스템 및 방법
CN109644137B (zh) 具有签名消息的基于令牌的认证的方法
EP3051372B1 (en) Secure product identification and verification
EP3341880B1 (en) Verification with error tolerance for secure product identifiers
CN107070648A (zh) 一种密钥保护方法及pki系统
CN109981264A (zh) 一种应用密钥生成方法及密码机设备组件
WO2017050838A1 (en) Container and content serialization for secure product identifiers
CN116488903A (zh) 密钥管理方法、装置、计算机设备及存储介质
CN114493508A (zh) 一种基于数字身份的优抚资金发放管理方法、设备及介质
HU231480B1 (hu) Időzáras titkosító eljárás, megfejtő eljárás időzáras titkosításhoz, valamint ezekhez való számítógépes rendszer, számítógépes program és számítógéppel olvasható adathordozó
CN113935054A (zh) 基于区块链的数字身份更新方法、装置、设备及存储介质
PRAVEEN et al. A New Approach for Public Auditing Mechanism for Secure Cloud Storage
BR112017015025B1 (pt) Método para inicializar um processo para controlar com segurança uma instalação de produção

Legal Events

Date Code Title Description
MM4A Lapse of a eurasian patent due to non-payment of renewal fees within the time limit in the following designated state(s)

Designated state(s): AZ TJ TM