СИСТЕМА И СПОСОБ ОБЕСПЕЧЕНИЯ СТЕГАНОГРАФИЧЕСКОГО КОДИРОВАНИЯ ТЕКСТА
SYSTEM AND METHOD OF PROVIDING STEGANOGRAPHIC CODING OF TEXT

ОБЛАСТЬ ТЕХНИКИ
Настоящее техническое решение относится к области вычислительной техники, в частности, к компьютерно-реализуемому способу и системе, которые обеспечивают неявное кодирование отображаемого на экране или печатном носителе текста документа.
УРОВЕНЬ ТЕХНИКИ
Из уровня техники известно решение RU 2434356 C2, 12.05.2005, в котором раскрыта система для внедрения водяного знака в кодированное информационное содержание, содержащая: средство для приема кодированного информационного содержания; средство для приема предварительно обработанного комплекта водяного знака, который является выводом внешнего блока предварительной обработки; средство для приема последовательности битов, которая содержит полезную информацию водяного знака; и средство для непосредственной замены некоторого количества битов кодированного информационного содержания, начиная с позиции с альтернативным значением, причем альтернативное значение имеет внедренный в него сигнал водяного знака, причем альтернативное значение является одним выбранным из множества альтернативных значений, определенных в комплекте водяного знака, и единственным альтернативным значением, определенным в комплекте водяного знака, причем позиция выбирается в комплекте водяного знака таким образом, что когда альтернативное значение является единственным альтернативным значением, то замена указанного водяного знака является необязательной, и когда альтернативное значение выбирается из множества альтернативных значений, определенных в комплекте водяного знака, указанная последовательность битов определяет, какое альтернативное значение выбрано.
Из уровня техники известно еще одно решение, выбранное в качестве наиболее близкого аналога, WO 2013160880 A2, 27.04.2012. В данном решении раскрыт защитный элемент, содержащий подложку, включающую в себя текст, в частности микротекст или нанотекст, содержащий набор символов, размер которых по существу одинаков, с тем, что в этом наборе по меньшей мере один из шрифтов символов, жирный символы, межстрочный интервал и / или буквы, которые изменяются по меньшей мере в одном направлении, в случае изменения прослойки, как минимум три разных значения межбуквенного интервала, или, по меньшей мере, два, лучше три, разные значения межбуквенного интервала, относящиеся, по меньшей мере, к двум, лучше, по меньшей мере, трем различным терминам, интервал чередования между символами внутри одного и того же термина или, по меньшей мере, два, лучше три, разные значения формулировок, относящиеся, по меньшей мере, к двум, еще лучше, по меньшей мере, к трем идентичным терминам, повторяющимся в одном и том же направлении, интервал чередования изменяется между, по меньшей мере, двумя символами одинаковых рангов указанных терминов и / или меж буквенное обозначение, изменяющееся между символами в термине, по меньшей мере, одно из перемежения, жирность символов и интервал, периодически изменяющийся в указанном, по меньшей мере, одном направлении.
Приведенные выше решения направлены на решение проблемы маркирования документов для последующей их идентификации в документообороте. Однако стоит отметить, что несмотря на наличие водяного знака документ может быть подвергнут внешним изменениям или водяной знак может быть удален.
Предлагаемое решение направлено на устранение недостатков современного уровня техники и отличается от известных из уровня техники тем, что предложенное решение, основанные на неявном стеганографическом кодировании информации, позволяет автоматизировать необходимое шифрование для обеспечения безопасности. Также, оно не позволяет явным образом сказать зашифрована ли в документе дополнительная информация, и если зашифрована, то считать ее не санкционированному пользователю невозможно. Дополнительно, стоит отметит, что в заявленном решении использован метод кодирования текста, позволяющий сохранить код, в случае переноса текста с одного носителя на другой, вне зависимости является ли этот носитель цифровым или печатным.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Технической проблемой, на решение которой направлено заявленное решение, является создание компьютерно-реализуемого способа и системы, которые обеспечивают, неявное для пользователя, кодирование отображаемого на экране или печатном носителе текста документа. Дополнительные варианты реализации настоящего изобретения представлены в зависимых пунктах изобретения.
Технический результат заключается в обеспечении автоматического неявного кодирования текста документа.
Заявленный результат достигается за счет осуществления компьютерно-реализуемого способа стеганографического кодирования текста документа сообщением, выполняемый программно-аппаратным комплексом (далее ПАК), осуществляющего этапы, на которых:
получают текст сообщения с сервера и передают в блок обработки текста;
блок обработки текста осуществляет бинаризацию полученного текста сообщения и передает полученный бинарный код в блок кодирования;
посредством блока кодирования:
разбивают текст документа на последовательность слов размером n+1, каждое из которых содержит не менее 3-х букв;
осуществляют кодирование слов путем изменения межбуквенного интервала в сторону уменьшения или увеличения от исходного, в зависимости от заранее заданных настроек;
если слово представляет единицу, то увеличивают межбуквенный интервал на заранее заданное значение;
если слово представляет нуль, то уменьшают межбуквенный интервал на заранее заданное значение;
если слово в последовательности следует за n-м, то увеличивают или уменьшают межбуквенный интервал на заранее заданное значение, которое должно отличаться от значения, принятого для нулей и единиц, данным словом определяют завершение предыдущей последовательности и начала следующей последовательности;
получают закодированный бинарный код в тексте документа и передают в блок обработки текста,
блок обработки текста передает закодированный текст документа на устройство отображения пользователя.
Заявленный результат также достигается за счет системы обеспечения стеганографического кодирования текста, которая состоит из, как минимум одного клиентского устройства и одного сервера, при этом клиентское устройство содержит:
блок обработки текста, выполненный с возможностью бинаризации текста сообщения, а также передачи бинарного кода в блок кодирования и на устройство отображения пользователя;
блок кодирования, выполненный с возможностью осуществления способа по п.1;
по меньшей мере один сервер содержит блок управления, позволяющий устанавливать автоматизированные фильтры выборочного предоставления пользователям тексты сообщений с сервера.
В частном варианте реализации предлагаемой системы, сообщением, зашифрованным в тексте документа, является идентификатор пользователя.
В другом частном варианте реализации предлагаемой системы, информацией, зашифрованной в тексте документа, является идентификатор документа от пользователя.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
Реализация изобретения будет описана в дальнейшем в соответствии с прилагаемыми чертежами, которые представлены для пояснения сути изобретения и никоим образом не ограничивают область изобретения. К заявке прилагаются следующие чертежи:
Фиг. 1, иллюстрирует пример схемы работы предлагаемого способа.
Фиг. 2, иллюстрирует пример схемы работы предлагаемого способа.
Фиг. 3, иллюстрирует пример общей схемы вычислительного устройства.
ДЕТАЛЬНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
В приведенном ниже подробном описании реализации изобретения приведены многочисленные детали реализации, призванные обеспечить отчетливое понимание настоящего изобретения. Однако, квалифицированному в предметной области специалисту, будет очевидно каким образом можно использовать настоящее изобретение, как с данными деталями реализации, так и без них. В других случаях хорошо известные методы, процедуры и компоненты не были описаны подробно, чтобы не затруднять излишне понимание особенностей настоящего изобретения.
Кроме того, из приведенного изложения будет ясно, что изобретение не ограничивается приведенной реализацией. Многочисленные возможные модификации, изменения, вариации и замены, сохраняющие суть и форму настоящего изобретения, будут очевидными для квалифицированных в предметной области специалистов.
Существует актуальная проблема утечек документов, содержащих конфиденциальную информацию из защищенного контура. Особенно это касается утечек посредством фотографирования информации с экрана компьютера, или же печатных носителей. При обнаружении конфиденциальных данных в открытом доступе на текущем уровне развития технологий невозможно выявить канал распространения информации. Особую важность данная проблема приобретает при большом количестве территориально распределенных сотрудников, работающих с закрытой информацией.
Описанная выше проблема и решается с помощью стеганографического кодирования текста.
Способ стеганографического кодирования текста выполняется на вычислительном устройстве и представлен на Фиг.1. Предложенный способ выполняется при помощи системы, которая содержит вычислительное устройство, например, такое как персональный компьютер (далее ПК), блок (подсистему) обработки текста, блок (подсистему) кодирования, блок (подсистему управления), и устройство отображения такие как, но не ограничиваясь экран ПК и/или бумажный носитель.
Блок обработки текста на основе алгоритмов и способов, известных из уровня техники, преобразует текст сообщения из буквенно-численного в бинарный, например, основываясь на бинарном значении каждого символа Юникода.
Блок подсистемы кодирования, на основе заложенного в нем алгоритма, обрабатывает бинарную последовательность, полученную из текста сообщения и зашифровывает в нем необходимую информацию в бинарном виде.
Блок управления позволяет, после запроса документа, содержащего текст сообщения, пользователем определить, основываясь на уровне доступа сотрудника, имеет ли он права на ознакомление с документом, его редакцию или создание нового документа. Блок управления, выполнен с возможностью установки автоматизированных фильтров выборочного предоставления пользователям документов с сервера, примером таких фильтров могут быть исключения, в которых лишь ограниченный круг людей имеет доступ и права на работу с документами, помеченными как содержащие коммерческую или государственную тайну. Маркировка и сортировка документов может быть обеспечена, как и с помощью градации сотрудников по доступу к определённым разделам дискового пространства сервера, так и файлы с документами могут иметь определенные маркеры в своем коде, для определения категории доступа.
Также, блок управления, включает список пользователей и присвоенные им уровни доступа к документам и хранится на сервере. В случае попытки запроса от несанкционированного пользователя, в доступе будет отказано и может быть направлено уведомление о попытке доступа сотруднику безопасности компании.
Все используемые данные и информация для работы способа в данном примере, хранится на сервере, однако в различных вариантах реализации заявленной системы информация может также хранится и на ПК и прочих известных устройствах хранения информации.
Суть предлагаемого решения заключается в том, что содержательная часть документа, выводимая на экран и/или на печатный носитель, подвергается преобразованию ПАКом таким образом, что достигается кодирование текста дополнительной информацией без потери исходных данных. Для пользователя указанное преобразование является малозаметным и не влияет на общую работу с документом. Например, в тексте может быть закодирован идентификатор пользователя, в данный момент просматривающего или распечатывающего документ. В этом случае при обнаружении утечки сотрудник службы безопасности пострадавшей организации сможет сделать вывод о том, кто допустил утечку.
Таким образом ПАК позволяет обработать текст перед выводом его на экран или бумажный носитель.
Предлагаемый способ сгенанографического кодирования текста сообщения работает следующим образом:
После получения запроса, на получение документа пользователем с сервера, документ, содержащий конфиденциальные данные, направляют в ПК, где осуществляется кодирование.
В частном варианте реализации, текст создается непосредственно с использованием ПК (этап генерации текста).
Далее непосредственно текст, отделенный от формы и подлежащий кодированию дополнительной информацией, направляется по каналам внутрисистемной связи в блок обработки текста программного обеспечения. Тип и значения дополнительной информации определяются требованиями организации и автоматически генерируются в блоке управления. Полученный текст сообщения передается в блок обработки текста, который соединён с блоком подсистемы кодирования и устройством отображения пользователя. Блок обработки текста передает полученную бинарную последовательность в блок кодирования, который осуществляет кодирование информации следующим образом.
Текст сообщения, подлежащий кодированию, блок подсистемы кодирования переводит в последовательность единиц и нулей.  Полученная последовательность имеет длину n, то есть строка в n знаков, каждый из которых представлен значением 1 или 0. Текст документа, в котором производится кодирование, блок кодирования разбивает на последовательности слов размером n+1, каждое из которых содержит не менее 3-х букв. Таким образом, каждое из слов в последовательности представляет 1 или 0 из исходной последовательности единиц и нулей.
Кодирование слов блок кодирования производит путем изменения межбуквенного интервала в сторону уменьшения или увеличения от исходного, в зависимости от настроек.
Если слово представляет единицу, то блок подсистемы кодирования увеличивает межбуквенный интервал на заданное значение.
Если слово представляет нуль, то блок подсистемы кодирования уменьшает межбуквенный интервал на заданное значение.
Если слово в последовательности следует за n-м, то блок подсистемы кодирования увеличивает или уменьшает межбуквенный интервал на заданное значение, которое должно отличаться от значения, принятого для нулей и единиц. Это слово является разделителем и служит для определения завершения предыдущей последовательности и начала следующей.
В результате операций кодирования общее форматирование текста меняется незначительно и является неявным для пользователя.
Таким образом после кодирования текст представляет собой циклическую последовательность слов, каждое из которых представляет собой единицу, нуль или разделитель.
При определении слов с изменённым межбуквенным интервалом можно сделать вывод о том, какой знак закодирован в том или ином слове.
Таким образом из текста сообщения получается последовательность нулей и единиц, исходя из которой делается вывод, какая именно информация закодирована в тексте.
Блок кодирования передает закодированный текст сообщения обратно в блок обработки текста. При выводе измененного текста сообщения из блока обработки текста, текст сообщения обратно преобразуется в текст из символов первоначального языка без видимых изменений.
В результате, в запрошенном или сгенерированным пользователем документе, помимо изначального текста, формируется информация, закодированная в текст сообщения в документе.
При этом, блок управления обеспечивает отправку блоку обработки текста параметры кодирования, осуществляет контроль допуска к документу пользователей и прочие настраиваемые параметры системы. Настройки могут касаться исходного межбуквенного интервала, который зависит от используемого шрифта документа, и от заполняемой формы документа.
Далее блок обработки текста направляет обработанный закодированный текст на устройство отображения, например, на монитор ПК или на печать в принтер. Обработанный же текст вне зависимости от способа его отображения имеет уникальный отпечаток. В заявленном решении кодирование текста позволяет сохранить закодированный в документе код и в случае переноса текста с одного носителя на другой, вне зависимости является ли этот носитель цифровым или печатным, данный метод позволяет сохранить кодирование, так как он привязан к конкретному тексту. В случае видоизменения текста, например, механическое преобразование или использование систем распознавания, сводит ценность это документа на нет.
На Фиг. 2 представлена схема обработки текстового массива уже преобразованного в последовательность нулей и единиц и разбитый на «слова». Под термином «слово» следует понимать последовательность нулей и единиц объединённые в блоки по меньшей мере в 3 символа. Количество символов определяется детальной настройкой системы и зависит от типа кодирования текста. После преобразования «информации для кодирования» в бинарную форму, полученный массив нулей и единиц последовательно поступает в цикл обработки массива слов из преобразованного текстового документа где вносятся изменения на основе правил, отображенных на схеме.
Для дешифрования стеганографического кодирования текста можно применить следующий способ, содержащий этапы, на которых:
принимают предварительно обработанный документ, потенциально с использованием устройств ввода;
распознают информационное содержание,
извлекают множество значений межбуквенных интервалов из текстового содержания;основываясь на полученной информации, извлекают битовые значения из указанного текста используя обратное применение способа стеганографического кодирования текста:
если межбуквенный интервал увеличен на значение больше заданного значения интервала, то оно считывается как единица;
если межбуквенный интервал увеличен на значение меньше заданного значения интервала, то оно считывается как нол;
если значение отличается от заданного значения интервала после полученной последовательности нуля и единиц, то это слово является разделителем и служит для определения завершения предыдущей последовательности и начала следующей;
полученную информацию преобразуют обратно в читаемый текст, и в последующем передают на устройство пользователя, на принтер и другие устройства вывода информации. Для дешифрования можно использовать отдельную систему обеспечения дешифрования стеганографического кодирования текста аналогичную по устройству с системой шифрования или использовать особую настройку изначальной системы доступной сотрудникам службы безопасности. Оба варианта осуществления системы состоят из, как минимум одного клиентского устройства и одного сервера, состоящего из процессора, соединённого с памятью, при этом клиентское устройство содержит:
Блок обработки текста выполненный с возможностью перевода текста документа в последовательность нулей и единиц;
Блок декодирования, выполненный с возможностью осуществления способа описанный выше;
и как минимум одного сервера, который содержит блок управления, при это как минимум одно клиентское устройство и как минимум один сервер соединены с помощью сетевой архитектуры.
На Фиг. 3 далее будет представлена общая схема вычислительного устройства (300), обеспечивающего обработку данных, необходимую для реализации заявленного решения.
В общем случае устройство (300) содержит такие компоненты, как: один или более процессоров (301), по меньшей мере одну память (302), средство хранения данных (303), интерфейсы ввода/вывода (304), средство В/В (305), средства сетевого взаимодействия (306).
Процессор (301) устройства выполняет основные вычислительные операции, необходимые для функционирования устройства (300) или функциональности одного или более его компонентов. Процессор (301) исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти (302).
Память (302), как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемый функционал.
Средство хранения данных (303) может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п. Средство (303) позволяет выполнять долгосрочное хранение различного вида информации, например, вышеупомянутых файлов с наборами данных пользователей, базы данных, содержащих записи измеренных для каждого пользователя временных интервалов, идентификаторов пользователей и т.п.
Интерфейсы (304) представляют собой стандартные средства для подключения и работы с серверной частью, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, FireWire и т.п.
Выбор интерфейсов (304) зависит от конкретного исполнения устройства (300), которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п.
В качестве средств В/В данных (305) в любом воплощении системы, реализующей описываемый способ, может использоваться клавиатура. Аппаратное исполнение клавиатуры может быть любым известным: это может быть, как встроенная клавиатура, используемая на ноутбуке или нетбуке, так и обособленное устройство, подключенное к настольному компьютеру, серверу или иному компьютерному устройству. Подключение при этом может быть, как проводным, при котором соединительный кабель клавиатуры подключен к порту PS/2 или USB, расположенному на системном блоке настольного компьютера, так и беспроводным, при котором клавиатура осуществляет обмен данными по каналу беспроводной связи, например, радиоканалу, с базовой станцией, которая, в свою очередь, непосредственно подключена к системному блоку, например, к одному из USB-портов. Помимо клавиатуры, в составе средств В/В данных также может использоваться: джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.
Средства сетевого взаимодействия (306) выбираются из устройства, обеспечивающий сетевой прием и передачу данных, например, Ethernet карту, WLAN/Wi-Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п. С помощью средств (305) обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.
Компоненты устройства (300) сопряжены посредством общей шины передачи данных (310).
В настоящих материалах заявки было представлено предпочтительное раскрытие осуществление заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки испрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники.