ФОРМИРОВАНИЕ И ВЕРИФИКАЦИЯ ЗАЩИЩЕННЫХ ДОКУМЕНТОВ
FORMATION AND VERIFICATION OF PROTECTED DOCUMENTS

Область техники
Изобретение относится к области формирования и верификации защищенных человекочитаемых и машиночитаемых документов.
Предшествующий уровень техники
В настоящее время используются две основные формы документов: бумажные документы и электронные документы. Бумажные документы содержат преимущественно человеко-читаемый текст. Для защиты бумажных документов в части обеспечения их аутентичности, то есть для обеспечения возможности проверки и доказательства авторства документа, используется собственноручные подписи авторов документов, а также, в отдельных случаях, различного рода печати и штампы. Для обеспечения неизменности бумажных документов с момента их подписи используются различные методы: заполнение пустого пространства (например, прочерками или росчерками), сшивка и нумерация страниц, а также другие способы. Очевидно, что данные методы является относительно ненадежными и неудобными способами защиты. В частности, подписи и печати могут подделываться, при этом не всем пользователям документов известны истинные образы подписей и печатей. Достоверно подлинность подписи может быть установлена только графологической экспертизой, которая требует временных и финансовых затрат. Еще одним существенным недостатком бумажных документов является невозможность сохранения их защищенности при копировании или пересылке электронных образов по сети.
Для защиты электронных документов в части аутентичности и целостности используются электронные цифровые подписи. При этом для проверки подлинности подписей авторов достаточно удобны в использовании технологии инфраструктуры открытых ключей (включающие использование сертификатов, удостоверяющих центров и другие элементы). Однако для передачи и использования электронных документов всегда требуются средства вычислительной техники. В то же время существующие бизнес-процессы большинства организаций и государственных органов ориентированы преимущественно на использование бумажных документов.
Совместное использование бумажных и электронных документов в настоящее время является весьма неудобным. Например, не очень удобно работать с делом, в котором часть документов хранится в виде бумажных документов, подшитых в папке, а часть - расположена на электронном запоминающем устройстве в виде электронных документов.
Для решения указанных проблем разрабатываются средства защиты документов посредством совмещения свойств бумажных и электронных документов.
Из уровня техники известен «Способ подтверждения подлинности информации» (патент РФ №2165643, приор. 19.04.2000, G06K 9/00, G07D 7/00), который рассматривается в качестве прототипа. В указанном способе в качестве объекта используют бумажный носитель, а в качестве контрольной информации используют всю текстовую информацию или часть текстовой информации, при этом преобразуют открытый ключ проверки электронной цифровой подписи в штриховой код, который также наносят на бумажный носитель и используют при проверке подлинности электронной цифровой подписи, при этом, если электронная цифровая подпись подлинная, то контрольную информацию из штрихового кода визуально сравнивают с текстовой информацией, нанесенной на бумажном носителе, и по результатам сравнения делают вывод о подлинности текстовой информации, нанесенной на бумажном носителе. Данное решение имеет следующие недостатки:
1) При использовании в качестве контрольной информации всего текста документа требуется значительный размер под штриховой код; при использовании в качестве контрольной информации только части текста документа - обеспечивается неполная защита текста документа.
2) Низкая скорость верификации. Верификация невозможна техническими средствами. Для верификации требуется участие человека для визуального сравнения текстовой информации на документе с контрольной информацией, содержащейся в штриховом коде.
Из уровня техники известны решения «Способ маркировки документа, передаваемого по телекоммуникационным сетям связи» (патент РФ №2224285, приор. 28.08.2002, G06F 17/60), «Способ определения подлинности объекта» (патент РФ №2213371, приор. 08.10.2002, G06K 9/00, G07D 7/00), которые также обладают указанными недостатками.
Развитием данных решений является «Система автоматизации ввода и контроля документов» (патент РФ №2232419, приор. 17.12.2002, G06K 9/00), в которой документ формируют из основной области, содержащей информацию в символьном виде, и дополнительной области, содержащей информацию в машиночитаемом виде, при этом средство формирования документа включает печатающее устройство и устройство преобразования информации и вывода в дополнительной области документа, средство ввода информации с основной и дополнительной областей, средство распознавания символьной информации по графическому образу документа, средство сравнения всей или предварительно назначенной части распознанной символьной информации основной области со всей или предварительно назначенной частью информации в машиночитаемом виде дополнительной области. Данное решение имеет следующие недостатки:
1) При помещении в дополнительную область всей символьной информации из основной области документа требуется значительный размер дополнительной области; при помещении в дополнительную область предварительно назначенной части символьной информации из основной области - обеспечивается неполная защита символьной информации.
2) Низкая скорость верификации. Необходимость использования ресурсоемких средств распознавания символьной информации по графическому образу документа, а также вероятность неточности распознавания.
Таким образом, известные решения не в полной мере покрывают имеющиеся потребности.
Раскрытие изобретения
Технический результат заявленного изобретения заключается в обеспечении защиты и верификации полного образа документа (включая форматные и табличные конструкции), сокращении размера машиночитаемой части, повышении надежности верификации и уровня защищенности документа от подделки, увеличении скорости верификации, расширении арсенала технических средств.
Указанный технический результат достигается за счет выделения из защищаемой информации набора параметров и выбора (либо создания) соответствующего им преобразователя (трансформатора, таблицы стилей), обеспечивающего формирование на основе выделенного набора параметров графического (печатного, предпечатного) образа документа, соответствующего исходному (формируемому) документу. При этом выбранный преобразователь должен однозначно идентифицироваться, а также должна обеспечиваться его целостность. Выделенный набор параметров с идентификатором выбранного преобразователя и, при необходимости с другими данными, помещаются в электронный документ, для которого вычисляется электронная цифровая подпись. После этого графический образ документа переносится на материальный носитель. Также на материальный носитель помещается сформированный электронный документ и электронная цифровая подпись в машиночитаемом виде (машиночитаемый образ).
Каждому преобразованию соответствует свой состав набора параметров. Для формирования документа выбирается или создается соответствующее преобразование. В частном случае, вместо выбора преобразователя может осуществляться выбор вида документа. При этом с видами документов связаны преобразователи и описания множества допустимых наборов параметров. По выбранному виду документов вводится набор параметров.
Формируемый с помощью преобразователя графический образ документа может быть представлен в памяти запоминающего устройства, в частности, в пиксельном, векторном, совмещенном или ином формате. Впоследствии данный образ может быть, например, распечатан на принтере, либо переслан по электронной почте, например, в виде файла стандарта ISO 19005-1:2005 (PDF/А). Также, в частном случае, графический образ документа может формироваться непосредственно на материальном носителе, например, сразу печататься на бумажном носителе.
Графический образ документа и машиночитаемый образ, в частных случаях, могут помещаться на один и тот же, либо на разные материальные носители. В частном случае, графический образ документа и машиночитаемый образ в виде двумерного штрихового кода могут распечатываться на принтере. В другом частном случае машиночитаемый образ может формироваться в виде нескольких графических элементов. В качестве материального носителя может использоваться, в частности, обычная бумага. Нанесение на материальный носитель графического и машиночитаемого образа может осуществляться, в частности, посредством распространенных принтеров, плоттеров и других печатающих устройств.
В частном случае на основе набора параметров и идентификатора выбранного преобразователя может формироваться несколько электронных документов. Также, в частном случае, для сокращения размера электронного документа (и, следовательно, машиночитаемого образа) в состав электронной цифровой подписи могут не включаться сертификаты, а включаться только идентифицирующие их данные.
Для верификации документа осуществляется чтение содержащихся на нем электронного документа и электронной цифровой подписи, проверка правильности электронной цифровой подписи по электронному документу. В случае успешного результата проверки электронной подписи, с использованием идентификатора преобразователя, указанного в электронном документе, на основании данных, содержащихся в электронном документе, формируется образ документа.
Чтение машиночитаемого образа может осуществляться, в частности, посредством сканирования штрихового кода и последующем его распознавании (в соответствии с использованным алгоритмом), либо иным образом в соответствии с видом используемого материального носителя.
В частном случае, данный образ может быть перенесен на материальный носитель (например, распечатан на принтере) и использоваться как верифицированный документ. Совместно с графическим образом документа, в частном случае, на материальный носитель также может быть перенесен машиночитаемый образ. Это позволит впоследствии повторно осуществлять проверку подлинности сформированного документа.
В другом частном случае, может быть осуществлено сопоставление сформированного образа с образом проверяемого документа (без учета машиночитаемого образа). При этом проверка считается пройденной успешно, если расхождение между сгенерированным и проверяемым изображением не превышает некоторую заранее заданную погрешность. По завершении проверки пользователь уведомляется о результатах верификации.
При необходимости, в частном случае для повышения надежности верификации дополнительно осуществляют верификацию целостности преобразователя (в соответствии с используемым способом обеспечения целостности преобразователя).
Набор параметров и электронный документ могут формироваться в одном из структурированных форматов, например, в формате XML или ASN.1. В частном случае форматы набора параметров и электронного документа могут отличаться. Набор параметров и идентификатор преобразования могут быть закодированы в одном или нескольких электронных документов, для каждого из которых в частном случае может формироваться отдельная электронная подпись.
Преобразователь может представлять собой, в частности, микросхему или иное аппаратное устройство, аппаратно-программный комплекс, программный модуль в рамках общей аппаратной среды, таблицу стилей, обрабатываемую в общей программно-аппаратной среде, генераторы отчетов, шаблоны разметки и иные средства, обеспечивающие формирование образа человеко-читаемого документа на основе переменных входных данных или другое подходящее решение. В частном случае, при представлении набора параметров в виде XML-документа, в качестве преобразователей могут использоваться совокупность таблиц стилей XSL-FO и FO-процессоры.
Для быстрого распространения больше подходят преобразователи, которые могут быть переданы по компьютерным сетям и другим каналам связи (программные модули, таблицы стилей и т.п.). Передача таких преобразователей может осуществляться посредством рассылки по электронной почте, размещения на сервере или иными способами. Для редко меняющихся преобразователей могут быть использованы аппаратные решения, которые не требуют наличия каналов связи.
Целостность аппаратного преобразователя может обеспечиваться, в частности, гарантиями проектирования, опечатыванием корпуса, специальными голографическими знаками, криптографическими средствами или иными способами. Целостность преобразователей, представляющих из себя информационные объекты (программные модули, таблицы стилей) может обеспечиваться криптографическими средствами (в частности электронной цифровой подписью или шифрованием канала связи), распространением по доверенным каналам (например, на оптических дисках, промаркированных специальными голографическими знаками).
В частном случае, при использовании в качестве преобразователя микросхемы, на ее вход подаются сигналы, содержащие входные данные и идентификатор преобразования. На выход микросхема формирует сигналы, содержащие графический образ человекочитаемого документа. В частном случае на вход микросхемы может не передаваться идентификатор преобразования, а передаваться только входные данные (в случае если используется единый шаблон-преобразование).
Электронная цифровая подпись электронного документа может формироваться, в частных случаях, как часть электронного документа (присоединенная), либо как отдельный объект (отсоединенная). Электронная цифровая подпись может формироваться по любому алгоритму, в частности, DSA, RSA или ГОСТ Р 34.10-2012. Для формирования электронной цифровой подписи, в частности, могут использоваться стандартные форматы XMLDSIG или PKCS#7. В случае если для защиты преобразователя также используется электронная цифровая подпись, то ее алгоритм и формат в частном случае могут отличаться от используемых для подписания электронного документа. Кроме того, преобразователь и электронный документ могут подписываться разными людьми (или системами).
Для экономии размера машиночитаемого образа, в состав электронной цифровой подписи, в частном случае, может не включаться сертификат пользователя (системы), подписавшего электронный документ, а включаться только его идентификатор или открытый ключ. В частном случае в состав электронной подписи может также включаться способ получения сертификата (например, посредством указания URL-адреса).
Машиночитаемый образ может быть выполнен, в частности, в виде закодированной последовательности символов, графического образа, штрихового кода, магнитного, оптического, магнитно-оптического, микроэлектронного или другого специального носителя. Для формирования штрихового кода, в частности, могут использоваться распространенные двухмерные штриховые коды QR-код, Data Matrix, PDF417.
Краткое описание чертежей
На фигуре 1 изображена схема способа предпочтительного варианта формирования защищенного документа в соответствии с настоящим изобретением.
На фигуре 2 изображена схема способа предпочтительного варианта верификации защищенного документа в соответствии с настоящим изобретением.
Лучшие варианты осуществления изобретения
В нижеследующем описании в целях пояснения приводятся многочисленные конкретные детали, чтобы обеспечить исчерпывающее понимание настоящего изобретения. Вместе с тем, очевидно, что настоящее изобретение можно осуществить на практике и без этих конкретных деталей.
Для реализации изобретения может быть использована компьютерная система, включающая: сервер хранения преобразователей, сервер хранения сертификатов, компьютер формировании защищенных документов, компьютер верификации защищенных документов. Указанные компоненты соединены между собой с помощью каналов связи, например, через сеть Интернет. Ввод информации в систему может осуществляться через клавиатуру, сенсорный терминал, устройство позиционирования (мышь), электронную цифровую ручку, сканер, камеру, фотоаппарат и/или другие устройства ввода. Вывод информации может осуществляться посредством отображения на дисплее, печати на принтере и другими способами.
На фигуре 1 представлена схема предпочтительного варианта способа формирования защищенного документа.
В качестве преобразователей (101) используются таблицы стилей соответствующие спецификации XSL-FO (http://www.w3.org/TR/xsl11/) и FO-процессор Apache FOP (http://xmlaraphics.apache.org/fop/). FO-процессор Apache FOP устанавливается на рабочих местах формирования и верификации защищенных документов. На сервере хранения преобразователей функционирует Apache HTTP Server, который обеспечивает хранение (создание, предоставление, поиск, удаление) перечня видов документов и соответствующих таблиц стилей XSL-FO. Каждый вид документа имеет уникальный идентификатор, формируемый по алгоритму UUID (ISO/IEC 11578:1996, https://tools.ietf.org/html/rfc4122). Для удобства пользователя с каждым видом документа хранится эскиз (пример) формируемого документа.
С каждым видом документов связывается некоторая схема набора параметров (102). Например, если в качестве вида документа пользователем выбран счет или счет-фактура, то схема набора параметров включает реквизиты документа (дата, номер), реквизиты поставщика, реквизиты покупателя, перечень товаров, их количество, единицы измерения, стоимость, суммы налога, и, при необходимости, другие данные. Для определения состава набора входных параметров с каждой таблицей стилей хранится XSD-схема (http://www.w3.org/2001/XMLSchema).
С каждой таблицей стилей XSL-FO (101) хранится электронная цифровая подпись. Электронная цифровая подпись рассчитывается по алгоритму RSA на закрытом ключе уполномоченного лица (разработавшего или утвердившего данную таблицу стилей) в синтаксисе XML Signature (http://www.w3.org/TR/xmldsig-core/) и хранится в составе таблицы стилей XSL-FO, каждая из которых является валидным документом XML. В составе подписи хранится сертификат электронной цифровой подписи соответствующего открытого ключа, выданный доверенным удостоверяющим центром, в формате Х.509 (http://tools.ietf.org/html/rfc5280).
На компьютере формирования защищенных документов хранится синхронизируемый с сервером перечень видов документов и соответствующие каждому виду документа таблицы стилей XSL-FO, эскизы (примеры) документов и XSD-схемы соответствующих наборов параметров.
На дисплее компьютера формирования защищенных документов в пользовательском интерфейсе прикладного программного обеспечения, например, в Интернет-браузере (Internet Explorer, Google Chrome, Mozilla Firefox) пользователю отображается перечень документов. При этом для удобства пользователя дополнительно отображаются эскизы целевых документов. С помощью средств ввода (клавиатура, мышь и др.) пользователь может осуществлять поиск и выбор нужной ему формы (101). Таким же образом пользователь может инициировать создание нового вида документа (нового преобразователя), в том числе на основе существующего вида документа путем копирования.
Для разработки таблиц стилей XSL-FO и XSD-схем для новых видов документов пользователь может использовать как стандартные текстовые редакторы, так и специализированные программные средства, например, Altova XML Spy. Загрузка нового вида документа (совместно с таблицей стилей XSL-FO, XSD-схемой и эскизом) на сервер может осуществляться через пользовательский интерфейс тоже же программного обеспечения, которое используется для просмотра и поиска видов документов.
Выбор необходимого вида документа осуществляется пользователем исходя из характера защищаемой информации. Например, если требуется сформировать счет-фактуру, то выбирается соответствующий вид документа. После выбора пользователем через пользовательский интерфейс прикладной системы нужного вида документа, с сервера (или из локального хранилища) загружается соответствующая виду документа таблица стилей XSL-FO и XSD-схема. Для загруженной таблицы стилей производится верификация ее электронной подписи, подтверждающей ее целостность (102). Верификация электронной подписи может осуществляться с использованием криптопровайдера, например, КриптоПро CSP, ViPNet CSP, Рутокен ЭЦП, JaCarta или OpenSSL, по процедуре проверки действительности электронной подписи, предусмотренной используемой криптографической системой.
В случае успешного прохождения проверки, в пользовательском интерфейсе прикладной программной системы отображаются форма (103), содержащая поля для ввода, сформированные динамически на основе XSD-схемы. При этом, если часть набора параметров может быть заполнена на основе данных, содержащихся в хранилище прикладной системы, то в пользовательском интерфейсе пользователю отображается приглашение использовать эти данные, либо осуществить выбор (в случае наличия нескольких вариантов). Например, если защищаемая информация представляет собой счет-фактуру, то их хранилища прикладной системы могут подставляться данные реквизитов продавца и покупателя, характеристики товара.
Пользователь вносит в поля указанной формы (103) данные на основе содержимого защищаемой информации. После завершения заполнения формы, введенные данные и данные из хранилища прикладной системы (совместно представляющие собой набор параметров), а также уникальный идентификатор выбранного вида документа помещаются (104) в XML-файл (либо несколько XML-файлов), представляющий собой электронный документ (105).
Для сформированного электронного документа вычисляется (106) электронная цифровая подпись на основе закрытого ключа (107) пользователя или прикладной системы. Подпись может формироваться автоматически (системой) или автоматизировано с участием пользователя. Для формирования подписи может использоваться криптопровайдер, например, КриптоПро CSP, ViPNet CSP или OpenSSL и хранилище ключей, например, Aladdin eToken. В случае автоматизированного формирования электронной цифровой подписи с участием пользователя, желательно использование монитора для отображения человекочитаемого образа, а также клавиатуры или пин-пада для ввода пин-кода к хранилищу ключей. Электронная цифровая подпись может формироваться по любому алгоритму, например, RSA или ГОСТ Р 34.10-2012. Предпочтительно формировать электронную цифровую подпись электронного документа как часть электронного документа (присоединенная). Для формирования подписи может использоваться модифицированный формат XMLDSIG, в котором в подпись включается не весь сертификат открытого ключа 107), а только его уникальный идентификатор (например, URL расположения данного сертификата на сервере удостоверяющего центра). В результате формирования (106) присоединенной электронной цифровой подписи образуется подписанный электронный документ (109). Сертификат открытого ключа помещается (110) на сервер хранения сертификатов (112).
После этого активируется FO-процессор Apache FOP, которому в качестве входных параметров передаются подписанный электронный документ (109) и таблица стилей XSL-FO (101), соответствующая выбранному виду документов. Таким образом электронный документ (109), являющийся XML-файлом, подвергается XSL-преобразованию и FO-преобразованию (101), в результате которого формируется (108) человекочитаемый графический образ документа в формате PDF (113).
В случае, если графический образ документа для данного вида документов всегда имеет свободную область, достаточную для размещения штрихового кода необходимого размера, то машиночитаемый штриховой код (115) может формироваться одновременно с формированием человекочитаемого графического образа документа (113). Для этого наиболее эффективно включить инструкции по формированию (111) машиночитаемого штрихового кода (115) на основе подписанного XML-файла (109) непосредственно в таблицу стилей XSL-FO (101). В результате объединения (114) получается файл в формате PDF (116), включающий в себя как человекочитаемый графический образ документа (113), так и машиночитаемый штриховой код (115). В случае, если графический образ документа для данного вида документов не имеет достаточной свободной области для размещения штрихового кода (либо такое размещение по каким-либо причинам нежелательно), то машиночитаемый штриховой код (115) может формироваться на отдельном листе PDF-файла или в виде отдельного файла.
Для формирования (111) машиночитаемого образа (115) может использоваться алгоритм двухмерного штрихового кода, например, QR-код, Data Matrix или PDF417. В некоторых случаях удобно использовать не один большой блок штрихового кода (тем более, что предельные размеры данных, кодируемых штриховым кодом, ограничены), а несколько, например, располагаемых на полях документа.
После этого человекочитаемый графический образ документа и машиночитаемый образ электронного документа переносятся на бумажный носитель посредством печати на любом подходящем принтере, например, лазерном. В качестве предпочтительного варианта рассматривается случай, когда графический образ документа и образ машиночитаемого документа располагаются на одной странице. Для этого целесообразно чтобы преобразователь для формирования графического образа предусматривал наличие области для размещения образа машиночитаемого документа, например, внизу страницы. В случае отсутствия возможности выделения специальной области для образа машиночитаемого документа, машиночитаемый образ может размещаться на оборотной стороне листа, либо на отдельном листе.
В качестве альтернативы, документ (116) может не печататься, а пересылаться по электронной почте (или другим способом передаваться в электронном виде) и, при необходимости, печататься получателем.
На фигуре 2 представлена схема предпочтительного варианта способа верификации защищенного документа.
Для верификации защищенного документа (201) осуществляется чтение (203) машиночитаемого кода, содержащего электронный документ и электронную цифровую подпись. Для чтения машиночитаемого образа с бумажного документа могут использоваться стационарные или ручные сканеры, специализированные сканеры штрих-кодов, либо цифровые камеры. Распознавание машиночитаемого образа (восстановление из образа электронного документа) осуществляется в соответствии с используемым алгоритмом кодирования и может осуществляться непосредственно в самом сканере, либо программным обеспечением ЭВМ.
После чтения электронного документа и электронной цифровой подписи осуществляется верификация (210) соответствия электронного документа и электронной цифровой подписи. Способ верификации соответствует способу, использовавшемуся при формировании электронной цифровой подписи. В случае хранения сертификата на сервере хранения сертификатов (204), на основании уникального идентификатора сертификата, содержащегося в электронном документе (207), осуществляется получение (208) сертификата (211) с сервера сертификатов (204). Верификация (210) электронной цифровой подписи может осуществляться с использованием криптопровайдера, например, КриптоПро CSP, ViPNet CSP, Рутокен ЭЦП, JaCarta или OpenSSL, по процедуре проверки действительности электронной подписи, предусмотренной используемой криптографической системой. При отрицательном результатепроверки электронной подписи (подпись не верна, не найден или недействительный сертификат и т.п.) пользователь уведомляется об отрицательном результате проверки и дальнейшие действия не производятся (209). В случае успешного результата проверки электронной подписи из электронного документа формируется машиночитаемый образ (214). Для формирования машиночитаемого образа (214) используется алгоритм формирования двухмерного штрихового кода, который использовался при формировании исходного документа (201).
После этого из электронного документа (207) выделяется идентификатор преобразователя, по которому с сервера хранения преобразователей загружается соответствующая таблица стилей XSL-FO (202). Для загруженной таблицы стилей производится верификация (206) ее электронной подписи, подтверждающей ее целостность. Верификация электронной подписи преобразователя может осуществляться с использованием криптопровайдера, например, КриптоПро CSP, ViPNet CSP, Рутокен ЭЦП, JaCarta или OpenSSL, по процедуре проверки действительности электронной подписи, предусмотренной используемой криптографической системой.
После этого активируется FO-процессор Apache FOP, которому в качестве входных параметров передаются указанный XML-файл (207) и таблица стилей XSL-FO (202). Таким образом XML-файл подвергается XSL-преобразованию и FO-преобразованию (205), в результате которого формируется человекочитаемый графический образ документа в формате PDF (212).
Далее осуществляется объединение (213) человекочитаемого графического образа документа (212) и машиночитаемого образа (214). В результате объединения получается файл в формате PDF (215), включающий в себя как человекочитаемый графический образ документа (212), так и машиночитаемый штриховой код (214).
Полученный таким образом PDF-файл образа документа (215) может быть распечатан на принтере и использоваться как верифицированный документ. Для удобства на полученном документе может быть сделанная рукописная отметка пользователя, осуществившего верификацию.
В качестве альтернативы может быть осуществлено сопоставление сформированного образа (215) с образом проверяемого документа (201). Для сравнения изображений может быть использована, например, библиотека компьютерного зрения OpenCV. При этом проверка считается пройденной успешно, если расхождение между сгенерированным и проверяемым изображением не превышает заранее заданную погрешность. По завершении проверки пользователь уведомляется о результатах верификации.
Таким образом обеспечивается защита всего текста документа с использованием средств электронной цифровой подписи. За счет использования отдельного хранения сертификатов и преобразователей (файлов XSL-FO, подписанных электронной цифровой подписью) существенно уменьшается размер штрихового кода. Участие пользователя, а как следствие возможность ошибки, в данном случае минимизированы.
Промышленная применимость
Данное изобретение имеет широкую сферу применения в тех случаях, когда возможно использование электронных и бумажных документов. В качестве примера можно привести счета-фактуры.
В настоящее время счета-фактуры могут использоваться в двух форматах: в бумажном и электронном. Бумажные счета-фактуры передаются между контрагентами через обычный бумажный документооборот. Электронные счета-фактуры передаются через системы электронного документооборота в формате XML с электронной подписью. Данные из электронного XML-документа визуализируются в человеко-читаемых форматах HTML, PDF, DOC и др. После печати электронного счета-фактуры из указанных форматов на бумажный носитель, проверить подлинность становится невозможно.
При использовании предложенного решения может быть разработана единая таблица стилей (XSL или XSL-FO) счета-фактуры, подписанная электронной подписью уполномоченного органа и размещенная в публичном доступе. При формировании счета-фактуры соответствующие данные помещаются в XML-файл, который подписывается электронной подписью. На основе данного файла формируется двумерный штриховой код и печатный образ выписки (например, также в формате PDF). При этом штриховой код можно расположить внизу каждой страницы печатного образа счета-фактуры. Такой счет-фактура может быть верифицирован как в электронном виде, так и при печати на бумажном носителе.