Мы в НЛМК продаем и отгружаем тысячи тонн металла ежедневно. Однако перед тем, как попасть к покупателю, готовая продукция проходит ряд лабораторных испытаний. Финальным аккордом любой отгрузки является печать сертификата качества. Количество распечатываемых бумажных листов сертификатов качества – сотни тысяч в месяц. Только представьте, каких ресурсов требуют печать, подписание и перевозка такого гигантского объема документов!

Вот так это было раньше. Готовая продукция покидала цеха только с бумажными документами. При этом передача сертификата качества требовала цепочки из 5 человек и до двух недель времени.

На этом длинном пути к покупателю сертификат качества и партии продукции могли оказаться случайно (или не очень случайно) перепутанными. А ошибка пересортицы металлопродукции — жуткое событие, вызывающее очень, мягко говоря, неприятные эмоции у любого металлурга.

При этом организационно Группа НЛМК – это десятки входящих в нее юридических лиц, производственных площадок, сотни информационных систем от локальных АСУТП, MES до ERP. Каждый цех, завод имеет исторически сложившиеся принципы маркировки своей продукции и сопроводительной документации.

Нужно было что-то менять. Драйвером изменений выступили отделы сбыта и корпоративная архитектура. Совместно с ИТ-подразделениями мы согласовали несколько ключевых идей и начали операцию по избавлению от бумаги.

Проработка инициативы

Первым шагом стала разработка единых правил маркировки готовой продукции. Мы решили не менять устоявшуюся маркировку заводов, но добавить в нее уникальные штрихкоды, формируемые по единым «корпоративным» правилам.

Важно: мы договорились наносить уникальные штрихкоды в маркировке не на партии или на один вид товара, а на каждую единицу готовой продукции (рулон, пачку, бунт).

Зачем? Готовая продукция всегда покидает производство партиями. Далее партия (например, из нескольких рулонов стали) может продаваться с розничного склада конечным покупателям поштучно, по одному рулону. Нас интересовало поштучное отслеживание продукции до покупателя, каждого рулона, каждой единицы готовой продукции.

Аналогично маркировке готовой продукции договорились маркировать уникальными штрихкодом и каждый сопровождающий продукцию документ — сертификат качества.

Все криптографические ключи – случайно генерируемые символы.

Согласованный регламент о единых корпоративных правилах маркировки продукции и документов дал нам понимание того, как именно мы будем маркировать, идентифицировать, отслеживать, связывать продукцию и документы на всех заводах Группы.

1D штрихкоды не нужны

Некоторое время мы потратили на эксперименты, чтобы понять, какой штрихкод подойдет нам лучше.

Сравнение одномерных и двумерных штрихкодов
Сравнение одномерных и двумерных штрихкодов

Выбрали Data Matrix и QR. Здесь важно отметить: печать бирок и этикеток для маркировки металлопродукции делается в цехах на термотрансферных принтерах. Типовой термотрансферный принтер имеет разрешающую способность 200 dpi (для сравнения: у обычного лазерного принтера – 600 dpi). В условиях производства термоголовка термотрансферного принтера может забиваться грязью — и привет полосы в маркировке, которые персонал, скорее всего, заметит не сразу.

Минимальный «пиксель» или по ГОСТу «модуль» двумерных QR или Data Matrix примерно в 4 раза шире «полоски» в Code 128. Соответственно, при одинаково занимаемой площади, эти штрихкоды примерно в 4 раза лучше пропечатываются и лучше считываются сканером. Плюс у Data Matrix и QR есть помехозащищённость и они без потери качества считывания могут терять часть «пикселей».

Для бумажных документов нашли слабое звено — сканирование. Чем дальше по цепочке дистрибьюторов уходит наш металл, тем больше сканирований проходят «бумажные» сертификаты качества, так что даже обычных текст начинает просматриваться с трудом. Коды типа PDF417 или Code 128 сдают свои позиции сразу, становятся нечитабельными. QR и Data Matrix отлично читаются даже после нескольких скан-копирований документов.

Что зашили в QR-код

Рассмотрели два основных варианта – включать в штрихкод списком атрибуты продукции (толщина, ширина, вес, …) или ссылку на веб-страницу с описанием продукции. Остановились на втором варианте (все-таки «цифровизация» — наше второе имя), поэтому в штрихкод решили зашивать уникальный URL на описание маркируемого объекта. Считав ссылку в QR-коде этикетки, бирки или документа, например, камерой смартфона или сканером стационарного ПК, покупатель тут же попадает на веб-страницу с детальным описанием конкретной единицы товара или документа, которые видит перед собой.

Состав QR-кодов
Состав QR-кодов

В состав QR-кода вошли: ссылка на страницу об оцифрованном объекте (товаре или документе), код цеха и криптографический ключ – случайно генерируемая текстовая строка. Вычислительная стойкость криптографического ключа исключает возможность случайного просмотра или скачивания информации с веб-сервиса без QR-кода.

Странички о товаре, на которые попадает покупатель после сканирования QR или Data Matrix кода мы обозвали «стартовыми». Вход по ссылке в штрихкоде происходит открыто, без авторизации. Можно ознакомиться с детальными характеристиками конкретной единицы продукции и лабораторными испытаниями, скачать в электронном виде документацию по продукции с квалифицированной электронной подписью. При желании покупатель может по ссылке войти в личный кабинет.

Что видит пользователь при сканировании штрихкодов на продукции или с документов.
Что видит пользователь при сканировании штрихкодов на продукции или с документов.

Data Matrix для автоматических маркираторов

Состав Data Matrix кода
Состав Data Matrix кода

Дальше мы задумались о том, как маркировать штрихкодом рулоны полимерного проката, ведь его длина может достигать нескольких сот метров. Обычно покупатель не получает весь рулон целиком, а берет мерные листы. Чтобы получить информацию о производителе и качестве продукции можно было даже по одному такому листу, требовалась маркировка всей поверхности по длине рулона. Здесь мы решили использовать лазерный маркиратор. Через равные промежутки времени он наносит Data Matrix код прямо на поверхность движущейся полосы металла.

Логика работы двумерного Data Matrix кода аналогична QR коду, за исключением одного маленького нюанса. Нюанс в следующем. Криптографический ключ должен быть всегда гарантировано уникальным. При генерации ключа из MES системы проблем нет. А вот если мы печатаем штрихкод из локальной системы автоматики АСУТП, гарантировать уникальность ключа без применения каких-то дополнительных ухищрений невозможно.

Как это решили? Добавили к криптографическому ключу несколько дополнительных символов, включая метки времени, что позволило обеспечить уникальность ключей в течение заданного промежутка времени.

Чем Data Matrix код лучше для лазерного маркиратора, чем QR? Он более ёмкий и вмещает большее количество информации на меньшей площади, а нам было это важно — производитель лазерного маркиратора установил довольно жёсткие ограничения по размеру штрихкода.

Подписание документов в облаке

Подписываются сертификаты теперь в облаке. С 2021 года 63-ФЗ позволяет хранить ключи подписи в защищенном хранилище. Ключевая идея здесь проста — хранение ключей подписи и, соответственно, подписание документов на сервере провайдера, имеющего в своем составе аккредитованный удостоверяющий центр. В таком случае пользователю в цехе не нужно иметь и носить с собой личный eToken, а ИТ-службам — обеспечивать поддержку средств подписи.

Как это работает. Разработанное в рамках проекта приложение «Вера» передает на подпись и получает документы с электронной подписью через API провайдера ЭДО.

Подписание электронных документов квалифицированной подписью
Подписание электронных документов квалифицированной подписью

Для пользователя процесс выглядит следующим образом. Он выбирает на экране своего ПК документ, жмёт в приложении кнопку «подписать», подтверждает второй фактор аутентификации. Документ подписывается квалифицированной электронной подписью, сверху появляется полупрозрачный штамп о владельце квалифицированного сертификата.

В чем плюсы? Их много. Во-первых, мы не имеем на своей стороне криптографические средства и ключи подписи. Во-вторых, пользователи, занятые на производстве, не могут потерять eToken — их у них попросту нет.

За разработку целевой архитектуры спасибо коллегам из фирмы КриптоПРО.

В завершение статьи хотелось бы кратко сказать об итогах и планах на будущее.

Что у нас получилось:

  • Связать продукцию и документы, получить единый электронный архив документации по готовой продукции.

  • Снизить издержки на формирование и передачу, сканирование и хранение оригиналов сертификатов качества.

  • Сократить время доставки сертификата. Если ранее это занимало до двух недель, то сейчас это часы. Несколько заводов смогли договориться со своими контрагентами и полностью отказаться от печати бумажных сертификатов качества.

Для клиентов наши нововведения тоже не прошли бесследно.

  • Ускорилось получение информации по отгруженной продукции.

  • Сократились издержки по обработке бумажных сертификатов.

  • Создан задел на бесшовную интеграцию складских операций по приемке продукции Группы НЛМК.

  • У клиентов всегда под рукой полная информация по позициям металлопроката и сертификат качества. Есть возможность автоматизировать складской учет: поступление продукции на склады, перемещение и реализацию продукции конечному клиенту, инвентаризацию.

И про деревья не забыли!

Раньше только одна липецкая площадка НЛМК расходовала около 200 000 листов бумаги в месяц на печать сертификатов качества. В пересчете на сырье – это 4 тонны древесины в месяц, один железнодорожный вагон в год… или небольшая лесная роща! Теперь они в безопасности ????

На этом наша работа над QR-кодированием не заканчивается. В будущем мы планируем:

  • разместить QR-коды на счет-договорах;

  • начать формировать сертификаты качества на каждую единицу готовой продукции НЛМК;

  • реализовать взаимодействие с электронной таможней и многое другое.

Если у вас остались вопросы — задавайте их в комментариях, постараюсь всем ответить.

Комментарии (19)


  1. Marceline2034
    06.06.2023 09:45
    +2

    классная оптимизация. Сколько по времени прошло от идеи до выпуска в оборот?


    1. Igor_Korablev Автор
      06.06.2023 09:45
      +4

      Делали двумя этапами. Два месяца предварительной проработки, презентации для бизнеса, расчёт эффектов. Далее примерно полгода - липецкая площадка, далее ещё полгода - уральские предприятия. Между этапами примерно ещё полгода, когда подводили итог пилота и защищали бюджет на второй этап проекта. Итого - примерно полтора года.


  1. Goron_Dekar
    06.06.2023 09:45
    +5

    Мне в этой идее категорически не нравится оставленная за продавцом возможность подмены сертификата на сайте в случае возникновения спорной ситуации.

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


    1. Radisto
      06.06.2023 09:45
      +2

      В реальной жизни чаще встречается подмена сертификата перекупами между производителем и собственно конечным потребителем. Пересортица создаётся часто именно на этом этапе и с высокой вероятностью сознательно. Продукция нечасто покупается потребителем напрямую с завода, обычно как раз через "прослойки", и с ними такое часто. Просто недостоверный сертификат подсовывают. Тут возможность проверить, а есть ли в принципе такой сертификат у завода и если есть, то на что, очень нужна.


      1. Dart55
        06.06.2023 09:45

        В реальной жизни сертификат вообще ни чего не значит "Боль Российских Машиностроителей"


        1. Radisto
          06.06.2023 09:45

          Ну не скажите. Нулевой класс сплошности в сертификате действительно означает нулевой класс. А первый - первый. Хотя не все характеристики стабильны и действительно скачут от партии к партии. Для отлаженного техпроцесса это иной раз отвратительно, хотя чаще всего эти скачки укладываются в ТУ и ГОСТ, поэтому зачастую сложно что-то предъявить, ведь все по документации, а такого параметра как стабильность параметра в требованиях обычно нет


      1. Igor_Korablev Автор
        06.06.2023 09:45

        Про реальную жизнь - всё верно.

        Чтобы дать Покупателям гарантии мы используем усиленную квалифицированную подпись для каждого сертификата качества на готовую продукцию. Купив продукцию у нас по прямому договору, Покупатель получит на свой почтовый email  PDF-файл сертификата качества с усиленной квалифицированной электронной подписью (КЭП). А если Покупатель приобрёл продукцию через цепочку дистрибьютеров, то даже в этом случае, всё равно, сможет он скачать с нашего web сайта этот же файл PDF сертификата качества c КЭП отсканировав QR-код с этикетки продукции или QR-код на бумажном сертификате.

        КЭП по российскому законодательству обеспечивает юридическую значимость документа.

        Мысль с блокчейн- отличная и верная. Включим в бэклог проекта. Спасибо за идею! :)


        1. Str5Uts
          06.06.2023 09:45
          +2

          Мысль с блокчейн- отличная и верная. Включим в бэклог проекта.
          Если собственный блокчейн запилите, то смысла в нём где-то около нуля.

          Если в публичном публиковать — то дороговато получается, так как надо более-менее популярный выбирать.

          Можно конечно микс сделать, запилить собственную публичную базу, вычислять хэш код с определённой периодичностью (раз в неделю?) публиковать его в публичном блокчейне, будет сильно дешевле. Но тогда в течении этого срока всё равно будет возможность модифицировать данные.


          1. Igor_Korablev Автор
            06.06.2023 09:45

            Достаточная защита - усиленная квалифицированная электронная подпись на документе. По 63 ФЗ такая подпись является юридически значимой, её вполне достаточно.

            Про публичный блокчейн или микс - можно подумать на будущее. :) Хэши можно дополнять метками доверенного времени, подписывать и получать квитанции о проверке у доверенной третьей стороны (по 63 ФЗ). Но, наверное, это для нашей задачи чрезмерно.


    1. CptAFK
      06.06.2023 09:45
      +1

      Никаких проблем, если в сертификате указан уникальный код единицы товара и подпись идет с меткой времени. Задним числом тогда не подписать.


  1. Str5Uts
    06.06.2023 09:45
    +2

    Что вам стоит напечатать два или три QR кода в разных местах чтобы в случае ошибки в одном, можно было считать другие?


    Плюс в самом url зашифрованном в QR коде поменять одну букву на верхний регистр, типа doc.nmlk.shop, сделать Doc.nmlk.shop — тогда второй код будет совершенно другой и если у принтера есть специфичная проблема и он портит определённые части кода, то есть шанс что второй код сможет быть прочитан.


    Ну и конечно лучше использовать сервис коротких url, чтобы закодированно было как можно меньше информации, что сделает код гораздо более читаемым.


    1. Igor_Korablev Автор
      06.06.2023 09:45

      На старте проекта мы рассматривали ещё вариант - использовать для этикеток наряду с печатью штрихкодов подложки с вcтроенными RFID метками. Для металла такие специализированные этикетки есть. Минус - они дороже. Плюс - считываются с расстояния до нескольких метров. Можно совмещать и дублировать машиночитаемые штрихкоды и идентификацию по RFID.

      Может быть, когда RFID совсем подешевеют - мы к этому вернёмся. :)


      1. Str5Uts
        06.06.2023 09:45
        +1

        RFID по идее нужны если вы будете использовать для автоматического и многократного считывания.

        Если это используется только для клиентов и не встроено в технологический процесс, то смысла не очень много.

        На алиэкспресс метки будут продаваться в районе 7-10 рублей за штуку, если будут не только для удобства, то вполне приемлемо.


  1. Kahelman
    06.06.2023 09:45
    +1

    Не совсем понятна идея «случайно генерируемая строка..».

    Не имея QR кода получить данные нельзя, но имея 1 QR код, что мешает сделать кучу копий и наклеить куда надо/не надо?


    1. Igor_Korablev Автор
      06.06.2023 09:45

      В целом - вы правы. Но есть варианты как защититься.

      Мы внедряем сервисы по приёмке металла на склады Покупателей.
      Покупатель при приёмке единицы продукции на свой склад должен отсканировать уникальный QR код - мы получим сообщение и дадим подтверждение Покупателю, что за металл он принял, сделаем об этом запись. Второй раз данную единицу принять на склад будет невозможно. Хотите защиты - подключайтесь.

      Ещё способ - произвести взвешивание. Специфика продукции такова, что двух единиц продукции с одинаковым весом почти не бывает. Вес - как контрольная сумма. Способ не гарантированный.

      Самый дорогой способ проверки подлинности - лабораторные испытания. У нас не бывает партий металла с одинаковым хим. составом и механическими свойствами. Это как отпечаток пальца у человека. Каждая партия имеет свой уникальный хим. состав и характеристики. Имея QR код на продукции можно скачать сертификат и проверить металл в своей лаборатории на соответствие.


      1. Kahelman
        06.06.2023 09:45

        Эта защита работает если продавец дальше не продал часть партии товара.

        Как будет работать, если продавец принял на склад товар, а потом продал мне.

        Я хочу продать дальше. Как мне сертификат получить?


        1. Igor_Korablev Автор
          06.06.2023 09:45

          Сертификаты качества доступны для любого, у кого есть QR код продукции с криптографическим ключом. Такие QR коды мы печатаем на сертификате и на этикетках/бирках. Т.е. даже если металл к вам придёт через цепочку перекупщиков - вы отсканируете QR код с этикетки или бирки, попадёте на стартовую web страницу и сможете скачать с этой стартовой страницы сертификат качества этой единицы продукции с КЭП.

          Со стартовой страницы есть возможность войти в личный кабинет Покупателя и связаться с нашей службой сбыта - это при необходимости.


      1. Radisto
        06.06.2023 09:45
        +2

        У нас не бывает партий металла с одинаковым хим. составом и механическими свойствами. Это как отпечаток пальца у человека. Каждая партия имеет свой уникальный хим. состав и характеристики.

        Хуже того. Один и тот же лист может не обладать одинаковы составом и меххарактеристиками. Особенно меххарактеристиками. Вы даже в своей лаборатории не всегда сможете воспроизвести этот фингерпнинт, если вырежете образцы в другом месте, а уж заказчик в своей лаборатории тем более не сможет быть уверен, держа в руках сертификат и данные анализа. В пределах погрешности метода, но она сильно снизит достоверность этого способа.


        1. Igor_Korablev Автор
          06.06.2023 09:45

          Тема обширная. Как кажется, гарантии могут дать только решения, подобные ЕГАИС - сплошная маркировка и обязательное отслеживание партий товара при продаже и любой смене собственника.

          Или, как предлагали коллеги выше - публичный блокчейн.

          Есть существующие интересные решения по публичному хранению сертификатов на продукцию для трубной промышленности.

          Мы пока предлагаем Покупателям использовать ЭДО и возможность скачивать сертификаты прямо с нашего сайта.