СПОСОБ И СИСТЕМА ЗАЩИТЫ ЦИФРОВОЙ ИНФОРМАЦИИ, ОТОБРАЖАЕМОЙ НА ЭКРАНЕ ЭЛЕКТРОННЫХ УСТРОЙСТВ
METHOD AND SYSTEM FOR PROTECTION OF DIGITAL INFORMATION DISPLAYED ON THE SCREEN OF ELECTRONIC DEVICES

ОБЛАСТЬ ТЕХНИКИ
[0001] Заявленное техническое решение относится к области защиты цифровых данных, в частности конфиденциальной и чувствительной информации, отображаемой на экране электронного устройства, с помощью внедрения цифровых меток (ЦМ).
УРОВЕНЬ ТЕХНИКИ
[0002] Использование ЦМ в области защиты цифровой информации является распространенным решением, при котором в изображение внедряется закодированная информация, позволяющая идентифицировать ее принадлежность или лицо, ответственное за ее утечку и/или несанкционированный доступ.
[0003] Как правило, такие подходы используют заданный графический элемент или область изображения, содержащую ЦМ. При этом такая метка может быть как различимой, так и неразличимой для человеческого глаза. Одним из примеров такой технологии является стеганография.
[0004] Аналогом предлагаемого решения является принцип формирования на основании ЦМ защитного слоя, раскрытого в патенте США 9,239,910 (Markany Inc, 19.01.2016). Решение заключается в создании невидимого защитного слоя, состоящего из цифровых меток, который используется как фоновый слой, отображаемой на экране устройства и невидимый для пользователя.
[0005] Недостатком существующего подхода является его недостаточная эффективность, обусловленная тем, что для формирования защитного слоя используется ЦМ, представляющая собой текст или графический примитив, выбираемый из базы данных и применяемый для последующего генерирования заполнения пространства. Это приводит к тому, что такое формирование слоя становится чувствительным к качеству и при последующем захвате изображения на экране с помощью внешнего устройства, например, камерой смартфона или фотоаппарата, при смене ракурса или захвате части экрана с защитным слоем, впоследствии изъятие ЦМ и установление факта утечки данных становиться достаточно сложным или невозможным.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0006] Предлагаемый подход позволяет решить техническую проблему, заключающую в снижении устойчивости (робастности) метода защиты цифровых данных при их фиксации внешними средствами с различных ракурсов и качеством съемки, что критически влияет на последующее декодирование данных из цифровых меток.
[0007] Технический результат заключается в повышении эффективности защиты информации на экране устройств, за счет улучшения устойчивости распознавания внедряемых цифровых меток в виде фрактального паттерна, формирующего защитный о слой.
[0008] Заявленный результат достигается за счет осуществления компьютерно-реализуемого способа защиты данных, отображаемых на экране вычислительных устройств (ВУ), выполняемого с помощью процессора и содержащего этапы, на которых: формируют цифровую метку (ЦМ) в виде элемента графического интерфейса заданной битовой размерности, содержащую по меньшей мере данные, идентифицирующие ВУ и/или пользователя ВУ, и реперные точки;
формируют прозрачный защитный слой, не воспринимаемый человеческим глазом, который сформирован путем размещения ЦМ в виде фрактального узора, заполняющего все пространство экрана ВУ;
накладывают сформированный защитный слой на изображение, отображаемое на экране ВУ.
[0009] В одном из частных примеров реализации способа ЦМ формируется с помощью кодирования в контрастных каналах по меньшей мере одной цветовой схемы.
[0010] В другом частном примере реализации способа фрактальный рисунок слоя формируется рекурсивным методом построения ЦМ.
[0011] В другом частном примере реализации способа ЦМ имеет по меньшей мере один уровень вложенности.
[0012] В другом частном примере реализации способа ЦМ дополнительно содержит информацию о времени.
[0013] В другом частном примере реализации способа данные, идентифицирующие пользователя, выбираются из группы: табельный номер, имя, фотография или их сочетания.
[0014] В другом частном примере реализации способа данные, идентифицирующие ВУ, выбираются из группы: IP-адрес, МАС-адрес, уникальный идентификатор или их сочетания.
[0015] Заявленный технический результат также достигается за счет компьютерно-реализуемого способа идентификации данных, защищенных с помощью вышеуказанного способа, который выполняется с помощью процессора и содержит этапы, на которых: получают изображение, содержащее по меньшей мере часть информации, отображаемой на экране ВУ;
осуществляют предобработку полученного изображения, в ходе которого обрабатывает геометрию изображения, выполняют коррекцию каналов в по меньшей мере одной цветовой палитре;
осуществляют декодирование предобработанного изображения, в ходе которого выявляют реперные точки ЦМ и извлекают информацию из ЦМ.
[0016] В одном из частных примеров реализации способа на этапе обработки геометрии изображения выполняется его вращение и коррекция перспективы.
[0017] В другом частном примере реализации способа при коррекции перспективы выполняется попиксельная бинарная интерполяция каналов изображения по меньшей мере одной цветовой схемы и коррекция размера изображения для сохранения его пропорций.
[0018] В другом частном примере реализации способа изображение получают от внешнего устройства.
[0019] Каждый из вышеуказанных способов также может быть реализован с помощью компьютерной системы, содержащей по меньшей мере один процессор и по меньшей мере одну память, хранящую машиночитаемые инструкции, которые при их выполнении процессором осуществляют любой из вышеуказанных способов.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0020] Фиг. 1 иллюстрирует общий принцип заявленного решения.
[0021] Фиг. 2 иллюстрирует блок-схему заявленного способа защиты данных.
[0022] Фиг. 3А иллюстрирует пример фрактального защитного слоя.
[0023] Фиг. 3Б иллюстрирует пример размещения слоя на экране устройства.
[0024] Фиг. 4 иллюстрирует блок-схему способа декодирования информации из изображения, защищенного ЦМ.
[0025] Фиг. 5 иллюстрирует пример захвата изображения информации с экрана устройства.
[0026] Фиг. 6 иллюстрирует принцип декодирования ЦМ из изображения.
[0027] Фиг. 7 иллюстрирует общий вид вычислительного устройства.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[0028] На Фиг. 1 представлена общая концепция технической реализации заявленного решения. Защита чувствительной и/или конфиденциальной информации, отображаемой на экране (111) вычислительного устройства (ВУ) (ПО) пользователя, осуществляется с помощью внедрения ЦМ (10), в которую кодируется соответствующая информация для последующего установления места и ответственного лица по несанкционированному получению информации вне защищенного периметра инфраструктуры, например, с помощью ее фотографирования, видеосъемки или захвата (скриншот) изображения на экране ВУ внешними устройствами (смартфон, фотоаппарат и т.п.), в том числе с последующей распечаткой.
[0029] Как представлено на Фиг. 2 заявленный способ (200) защиты цифровой информации содержит ряд последовательных этапов. На первом этапе (201) осуществляется формирование ЦМ (10). В ЦМ (10) с помощью алгоритмов двоичного (бинарного) кодирования данных может внедряться любой тип информации, например, текстовый, графический или их сочетания. ЦМ (10) формируется из совокупности двух контрастных цветов. Как правило, данные, внедренные в ЦМ (10), необходимы для идентификации ВУ (ПО) или непосредственно пользователя данного устройства, например, сотрудника, имеющего доступ к чувствительной информации. Такими данными могут выступать: табельный номер, имя, фотография пользователя, IP-адрес, МАС-адрес, уникальный идентификатор ВУ. Данная информация может использоваться как по отдельности, так и в любом сочетании. Дополнительно может также кодироваться информация о времени и/или дате, например, времени формирования ЦМ (10), текущая дата. Информация о дате и времени может динамически изменяться для включения актуальной информации во время кодирования ЦМ (10).
[0030] ЦМ (10) представляет собой статический элемент графического интерфейса заданной битовой размерности. Помимо информации для идентификации факта фотографирования информации на экране (111) в ЦМ (10) внедряются также одна или несколько реперных точек (11), необходимых для последующей идентификации расположения ЦМ (10).
[0031] Далее из ЦМ (10) на этапе (202) формируют защитный слой (101) в виде фрактального принципа размещения ЦМ (10), заполняя все пространство экрана (111). Количество ЦМ (10) и принцип фрактального размещения определяется исходя из разрешающей способности экрана (111) и размерности ЦМ (10). Как правило, ЦМ (10) выбираются равной размерности, но могут также иметь чередующийся порядок из размещения для формирования слоя (101), что также не нарушает техническое воплощение заявленного решения в части последующей идентификации данных.
[0032] Защитный слой (101) формируется невидимым (прозрачным), чтобы не быть различимым человеческим глазом и скрыть факт применения защиты данных на экране (111). Прозрачность слоя (101) создаваемого фрактального узора может формироваться различными способами настройки графических изображений, например, с помощью регулировки непрозрачности изображения (opacity), с помощью Alpha-канала в RGBA палитре, с помощью Alpha-канала в HSLA палитре. Подбор параметров для формирования невидимого слоя (101) выполняется для преодоления порога различения (https://en.wikipedia.org/wiki/Just-noticeable_difference), обеспечивая его невидимость для обычного пользователя.
[0033] После формирования защитного слоя (101) на этапе (203) выполняется его наложение на область отображения экрана (111) ВУ (110), таким образом, что вся зона охвата экрана покрывается наложенным слоем (101). Применение такого подхода позволяет определить значение ЦМ (10) в любом участке экрана (111) вне зависимости от координаты или масштаба скриншота или фотокопии.
[0034] На Фиг. ЗА - ЗБ представлен пример сформированного защитного слоя (101) на основе множества ЦМ (10) с соответствующим размещением реперных точек (11). Представленный пример ЦМ (10) может создаваться с применением кодирования информации в контрастных каналах цветовой схемы, например, RGB, HSL, ARGB и т.п. Фрактальная конструкция рисунка слоя (101) может формироваться рекурсивным методом построения (размещения) ЦМ (10) и иметь один или несколько уровней вложенности (рекурсии) ЦМ (10) друг в друга.
[0035] Как указывалось выше, на примере, приведенным на Фиг. 3А, при формировании ЦМ (10) применяются два контрастных цвета, один из которых представляет собой фон ЦМ (10) - логический 0, а второй - контрастный от цвета фона, представляющий логическую 1. Создание защитного слоя (101) начинается с 0-го уровня рекурсии, на котором фон ЦМ (10) выбирается большим по размеру, чем отображаемая область (111) на экране (110). После этого начинается цикл рекурсии, в ходе которого определяется размер прямоугольника, описывающего один бит ЦМ (10) (далее - битовый прямоугольник), в соответствии с системой уравнений:
Где: х - длина фона ЦМ, у - ширина фона ЦМ, х' - длина битового прямоугольника, у' - ширина битового прямоугольника, 1-длина битового массива кодируемого сообщения.
[0036] Далее ЦМ (10) начинает заполняться битовыми прямоугольниками, где, как указывалось выше, 0 - цвет прямоугольника аналогичный фону метки, 1 - цвет прямоугольника контрастный фону метки. Осуществляется заполнение ЦМ (10) всеми битами (по всему фону ЦМ) в ходе чего формируется метка n-го уровня. Цикл рекурсии повторяется заново, за следующий размер ЦМ (10) берется один битовый прямоугольник текущей ЦМ (10). Цикл повторяется до тех пор, пока размер ЦМ (10) не будет равен 1×1 пиксель. ЦМ (10) в виде битовых прямоугольников перебираются до тех пор, пока все ЦМ (10) на всех уровнях рекурсии не достигнут конца рекурсии.
[0037] Далее рассмотрим процесс декодирования информации, защищенной ЦМ, представленной на Фиг. 4-Фиг. 6. Фиг. 4 иллюстрирует блок-схему выполнения способа (400) декодирования информации из захватываемого изображения.
[0038] На первом этапе (301) на вычислительный модуль (например, процессор) поступает изображение (410), которое было сделано с помощью внешнего устройства (400) и содержит часть или полностью информацию, представленную на экране (111) ВУ (110), как это представлено на Фиг. 5.
[0039] Далее полученное изображение (410) проходит этап обработки (302), в ходе которого осуществляется геометрическое преобразование изображения, в частности вращение и/или коррекция перспективы. Коррекция перспективы производится в два этапа - попиксельная бинарная интерполяция цветовых каналов изображения (например, RGB) для изменения перспективы изображения и коррекция размера изображения для сохранения пропорций по формуле:
Где:
deltaX - длина горизонтальной проекции отрезка между точками пересечения диагоналей четырехугольника и его центроидом,
deltaY - длина вертикальной проекции отрезка между точками пересечения диагоналей четырехугольника и его центроидом,
top Width - длина горизонтальной проекции верхней грани четрехугольника,
bottomWidth - длина горизонтальной проекции нижней грани четырехугольника,
leftHeight - длина вертикальной проекции левой грани четырехугольника,
rightHeight - длина вертикальной проекции правой грани четырехугольника.
[0040] Далее производится изменение цветности/насыщенности (saturation) полученного изображения по меньшей мере в одной цветовой палитре для повышения контрастности изображения в целом и выявления присутствия ЦМ (10) на том или ином участке изображения (410).
[0041] После этого осуществляется взаимная коррекция цветовых каналов полученного изображения (410) для выделения контрастных цветов, выбранных при кодировании ЦМ (10). Выполняется удаление одного из контрастных цветов, выбранного при кодировании ЦМ (10), в каждом пикселе полученного изображения.
[0042] На этапе (303) положение ЦМ (10) определяется с помощью реперных точек (11), выявленных на изображении (410). Определяются центры реперных точек (11), вокруг которых строится окружность заданного радиуса, вычисляемого из радиуса реперных точек и длины закодированного сообщения, на периметре которой определяются центры других реперных точек (11). Из угла отрезка между двумя центрами к горизонтали и длины этого отрезка вычисляются угол наклона и размер ЦМ (10) соответственно.
[0043] Из известной длины сообщения и известного размера ЦМ (10) вычисляется размер битового прямоугольника ЦМ (10).
[0044] Как представлено на Фиг. 6 в результате декодирования предобработанного изображения (410) определяются ЦМ (10) на защитном слое (101) на всех уровнях рекурсии (в зависимости от качества входного изображения).
[0045] Этапы (302)-(303) выполняются несколько раз при разных параметрах изменения насыщенности и изменении цветов. Результатом берутся значения, которые наиболее часто повторяются при разных параметрах. Это обеспечивает надежное декодирование цвета каждого пикселя полученного изображения в соответствии с законами нормального распределения при различных параметрах коррекции.
[0046] После надежного определения цвета каждого пикселя в полученном изображении (410) по цвету реперных точек (11) определяется цвет фона данной ЦМ, а по цвету реперной точки ЦМ, вписанной в битовый прямоугольник данной ЦМ, определяется цвет данного битового прямоугольника. Обладая информацией о цвете каждого битового прямоугольника в данной ЦМ и цвете фона данной ЦМ, производится построение битового массива закодированного сообщения.
[0047] Из битового массива закодированного сообщения, зная алгоритм кодирования данного сообщения, производится преобразование битового массива в полезную информацию, закодированную в ЦМ.
[0048] Данный принцип защиты и последующего декодирования информации из защитного слоя (101) позволяет более эффективно распознать закодированную информацию из ЦМ (10) и установить ВУ (110) и/или лицо, ответственное за утечку конфиденциальной и/или чувствительной информации.
[0049] На Фиг. 7 представлен общий вид вычислительного устройства (500), пригодного для выполнения способов (200, 300). Устройство (500) может представлять собой, например, сервер или иной тип вычислительного устройства, который может применяться для реализации заявленного технического решения. В том числе входить в состав облачной вычислительной платформы.
[0050] В общем случае вычислительное устройство (500) содержит объединенные общей шиной информационного обмена один или несколько процессоров (501), средства памяти, такие как ОЗУ (502) и ПЗУ (503), интерфейсы ввода/вывода (504), устройства ввода/вывода (505), и устройство для сетевого взаимодействия (506).
[0051] Процессор (501) (или несколько процессоров, многоядерный процессор) могут выбираться из ассортимента устройств, широко применяемых в текущее время, например, компаний Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. В качестве процессора (501) может также применяться графический процессор, например, Nvidia, AMD, Graphcore и пр.
[0052] ОЗУ (502) представляет собой оперативную память и предназначено для хранения исполняемых процессором (501) машиночитаемых инструкций для выполнение необходимых операций по логической обработке данных. ОЗУ (502), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.).
[0053] ПЗУ (503) представляет собой одно или более устройств постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др.
[0054] Для организации работы компонентов устройства (500) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (504). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, Fire Wire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п.
[0055] Для обеспечения взаимодействия пользователя с вычислительным устройством (500) применяются различные средства (505) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п.
[0056] Средство сетевого взаимодействия (506) обеспечивает передачу данных устройством (500) посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств (506) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.
[0057] Дополнительно могут применяться также средства спутниковой навигации в составе устройства (500), например, GPS, ГЛОНАСС, BeiDou, Galileo.
[0058] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники.