RU2467389C1 - Способ защиты программно-информационного обеспечения от несанкционированного использования - Google Patents

Способ защиты программно-информационного обеспечения от несанкционированного использования Download PDF

Info

Publication number
RU2467389C1
RU2467389C1 RU2011122891/08A RU2011122891A RU2467389C1 RU 2467389 C1 RU2467389 C1 RU 2467389C1 RU 2011122891/08 A RU2011122891/08 A RU 2011122891/08A RU 2011122891 A RU2011122891 A RU 2011122891A RU 2467389 C1 RU2467389 C1 RU 2467389C1
Authority
RU
Russia
Prior art keywords
application
code
software
protection
protected
Prior art date
Application number
RU2011122891/08A
Other languages
English (en)
Inventor
Антон Андреевич Краснопевцев (RU)
Антон Андреевич Краснопевцев
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 Антон Андреевич Краснопевцев
Priority to RU2011122891/08A priority Critical patent/RU2467389C1/ru
Application granted granted Critical
Publication of RU2467389C1 publication Critical patent/RU2467389C1/ru

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

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

Description

Изобретение относится к электронно-вычислительным машинам и их программно-информационному обеспечению, а именно к способам и средствам защиты приложений от несанкционированного копирования и распространения, и преимущественно может использоваться разработчиками программного и информационного обеспечения для ограничения несанкционированного использования программных и информационных продуктов.
Известен способ защиты программно-информационного обеспечения (ПИО) от несанкционированного использования (НИ) с помощью ключей. В качестве ключей использовались кодовые карты: картонные с кодовой перфорацией, затем магнитные, с записанным кодом на магнитном покрытии. Наиболее современными ключами являются применяемые на персональных ЭВМ электронные ключи. Ключ является электронным устройством, которое при работе с защищаемым ПИО устанавливается в разъем одного из портов ввода-вывода ЭВМ. Защищаемая программа в процессе работы идентифицирует ключ, т.е. запрашивает код ключа и сравнивает его с кодом, записанным в программе. По результатам идентификации программа реализует заданный регламент ее использования. Способ защиты является достаточно не надежным, за счет того, что существует достаточно большое количество методов автоматической компрометации систем защиты, реализующих данный способ.
Другим общеизвестным способом защиты ПИО от НИ является парольная защита. Ключом в этом случае является пользователь. Вводимый пользователем на запрос программы код (пароль) является условием для реализации заданного регламента использования ПИО. Способ защиты достаточно эффективен при ограниченном круге пользователей и их заинтересованности в защите ПИО от НИ. Но этот способ практически не может использоваться для защиты от НИ программно-информационных продуктов массового использования, так как сообщение пароля большому числу пользователей, обычно не заинтересованных в защите ПИО, быстро приводит к падению эффективности защиты.
Существует достаточно большое количество различных способов защиты приложений от несанкционированного копирования.
Среди таких методов защиты приложений стоит отметить следующие:
- программные способы защиты приложений;
- запутывание кода приложения;
- шифрование кода приложения;
- защита кода приложений с использованием внешних библиотек
- программно-аппаратные способы защиты приложений;
- идентификация аппаратного модуля;
- шифрование с использованием аппаратного модуля;
- защита посредством выгрузки кода защищаемого приложения в автоматическом (либо автоматизированном) режиме.
Примером систем защиты приложений, реализующих запутывание программного кода приложения, является программный продукт Dotfuscator. Суть метода защиты приложений с использованием запутывания кода заключается в том, что к оригинальному коду приложения добавляются некоторые наборы инструкций, призванные усложнить анализ защищаемого приложения. В результате анализ приложения злоумышленником и поиск в нем критически важных участков кода становится более трудной задачей. В некоторых научных работах обоснована сложность анализа приложения после осуществления процесса его защиты. В целом, класс методов запутывания приложений можно разделить на два основных класса:
- запутывание графа потока управления приложения;
- символьное запутывание приложения.
Под запутыванием графа потока управления защищаемого приложения понимается процесс, при котором происходит добавление программного кода к защищаемому приложению. В результате анализ приложения «ручными» способами становится затруднителен. Основной целью данных преобразований над защищаемым приложением является увеличение времени анализа защищенного приложения и, как следствие, увеличение времени, требуемого для компрометации системы защиты приложения.
Примерами преобразований, осуществляемых над защищаемым приложением посредством запутывания кода, являются преобразования генерации «мертвого» кода, добавление недостижимого кода и др. Основным недостатком данного класса методов защиты приложений от несанкционированного копирования является снижение скорости выполнения приложения после защиты. Проблема замедления возникает в связи с тем, что кроме так называемого «недостижимого» кода, то есть программного кода, который не получает управления, к приложению зачастую добавляют «мертвый» код, то есть такой код, который получает управление, однако не воздействует на значения переменных защищенного приложения. Кроме описанной проблемы с замедлением приложения, происходит естественный процесс увеличения места, требуемого приложению для хранения на жестком диске ПЭВМ пользователя, что в некоторых случаях также может являться недостатком данного метода защиты приложений от несанкционированного копирования.
Защита приложений от копирования, осуществляемая посредством шифрования кода защищаемого приложения, также в той или иной степени относится к запутыванию кода приложения. Однако в отличие от рассмотренного ранее примера компрометация системы защиты при неизвестной ключевой информации является вычислительно трудной задачей. Основной проблемой, возникающей при использовании данного класса методов защиты, является то, что хранить ключевой материал необходимо совместно с приложением, что, в свою очередь, приводит к тому, что сложность метода защиты приложений с использованием шифрования кода базируется на стойкости сокрытия ключевой информации. В связи с тем что данный метод защиты приложений допускает исследование приложения с привлечением методов анализа «белого ящика», то «сокрытый» ключевой материал в течение достаточно непродолжительного времени будет обнаружен злоумышленником. Обнаружение ключа приведет к полной компрометации системы защиты и, как следствие, совершению несанкционированного копирования защищенного приложения. На данный момент идут исследования, связанные с решением проблемы сокрытия ключевой информации непосредственно в самом алгоритме, однако существуют только теоретические разработки, которые не могут быть использованы на практике.
Суть известного метода защиты приложения посредством шифрования заключается в том, что часть или весь программный код защищаемого приложения зашифровывается с использованием некоторого криптографического алгоритма. Далее, для того чтобы приложение корректно функционировало, происходит модификация программного загрузчика таким образом, что перед выполнением либо все приложение, либо отдельные участки кода проходят процедуру расшифрования. В результате во время своего функционирования приложение остается расшифрованным и абсолютно идентичным оригинальному, не защищенному программному коду. Процесс расшифрования является критическим для данного метода защиты приложений, в связи с тем что именно в этот момент происходи обращение к криптографическому ключу. После осуществления преобразования расшифрования программный код защищенного приложения принимает оригинальный вид и может быть достаточно легко получен злоумышленником для дальнейшего анализа.
Системы защиты приложений, реализующие выгрузку части кода приложений в неуправляемые библиотеки, характеризуются тем, что часть кода защищенного приложения «выгружается» в программный модуль, скомпилированный непосредственно в машинный код. В результате для приложения, скомпилированного в промежуточное представление, допустимо использовать технологии и способы защиты, обычно применяемые для защиты приложений, компилируемых в машинный код. При таком подходе к защите приложения, чтобы не нарушить логику работы оригинального приложения, обычно не происходит перекомпиляции кода; происходит упаковка кода защищаемого приложения в модуль, компилируемый в некоторое промежуточное представление. В ходе исполнения защищенного приложения сокрытый код извлекается и в незащищенном виде передается оригинальной виртуальной машине, осуществляющей выполнение защищенного приложения. Таким образом, такой момент является достаточно критичным для защищаемого приложения, и аналитик может совершить несанкционированное копирование.
В связи с тем что для запуска и дальнейшего исполнения зашифрованного файла необходимо совершать больше действий, нежели чем при запуске и выполнении оригинального файла, данная технология имеет достаточно серьезный недостаток, связанный со снижением скорости (в 4-8 раз) выполнения защищенного приложения. Кроме того, в связи с генерацией отдельного загрузчика для корректной работы защищенного приложения увеличивается размер файла по сравнению с его незащищенным аналогом. В зависимости от реализации программных модулей, с помощью которых осуществляется защита приложения, у защищенного приложения может пропасть свойство кросс-платформенности (иными словами, возможность функционирования на различном аппаратном обеспечении и в различных операционных системах).
Для класса методов защиты, реализующих выгрузку кода приложения в неуправляемые библиотеки, существует способ компрометации системы защиты в автоматизированном, а для некоторых систем и в автоматическом, режиме.
Общим недостатком программных способов защиты приложений от несанкционированного копирования является низкая сложность компрометации системы защиты, построенной с использованием этих методов. Существуют научные публикации, в которых показано, что сложность компрометации методов запутывания кода защищенного приложения крайне низка, и применение данного метода защиты приложений не является эффективным.
Известно, что среди недостатков программных способов защиты приложений присутствует увеличение объема кода защищенного приложения по сравнению с его незащищенным аналогом. Более того, в связи с генерацией дополнительного кода приложения возникает снижение скорости выполнения защищенного приложения.
Известно, что для программных систем защиты существует метод несанкционированного копирования, использующий динамическую отладку приложения. В результате применения данного метода компрометации систем защиты приложений сложность компрометации становится линейной функцией от времени.
Рассмотрим существующие программно-аппаратные способы защиты приложений от несанкционированного копирования.
Известно, что методы защиты приложений с использованием идентификации аппаратного модуля, достаточно старая стратегия, которая на данный момент практически не используется и приводится в данном случае для обеспечения полноты анализа состояния сферы защиты программного обеспечения от несанкционированного копирования.
Суть метода идентификации внешнего аппаратного модуля заключается в том, что защищенное приложение через некоторые временные интервалы (или в ходе выполнения определенных участков кода) опрашивает внешний аппаратный модуль и получает от него некоторый идентификатор, в соответствии с которым происходит принятие решения о дальнейшем функционировании защищенного приложения. В случае неполучения ответа от внешнего аппаратного модуля или же если полученный ответ не соответствует заданному идентификатору, приложение завершает свою работу.
Известно, что недостатком данного метода защиты приложений является возможность создания автоматизированной системы компрометации данного метода защиты приложения посредством модификации драйвера внешнего аппаратного модуля. Алгоритм работы данной системы будет строиться следующим образом:
- перехват данных с внешнего аппаратного модуля;
- генерация собственного драйвера внешнего аппаратного модуля, реализующего функционал по передаче полученного на предыдущем этапе идентификатора.
Методы защиты приложений путем шифрования участка кода приложения в программно-аппаратных реализациях данного метода защиты по принципу действия аналогичны программным реализациям, однако в случае с программно-аппаратной системой ключевой материал (ключ, с помощью которого проводилось за- и расшифрование кода защищенного приложения) хранится во внешнем аппаратном модуле. Также известны реализации метода защиты приложений посредством аппаратного шифрования кода приложения. Иными словами, внешний аппаратный модуль не только выполняет функции хранилища ключевой информации, но и выполняет действия, связанные непосредственно с шифрованием данных и кода защищаемого приложения. Основным недостатком данного класса методов защиты приложений от копирования является достаточно низкая сложность компрометации. В связи с тем что приложение в ходе своей работы должно быть полностью расшифровано, возникает возможность перехвата открытого кода приложения во время его выполнения. Другим, достаточно серьезным недостатком данного метода защиты приложений является то, что скорость выполнения приложения после защиты достаточно сильно падает. Подобные потери скорости выполнения связаны с тем, что время обращения к памяти, а также скорость работы процессора внешнего аппаратного модуля значительно ниже, чем у ПЭВМ пользователя, на котором выполняется приложение. В результате при обращении к новому участку кода необходимо сначала совершить процедуру расшифрования запрошенного участка и уже потом передать на него управление. Более того, достаточно часто возникают случаи некорректной реализации данного метода защиты, когда снижение скорости выполнения приложения стоит еще более остро.
Известен способ защиты программно-информационного обеспечения от несанкционированного использования стандартными программно-аппаратными средствами ЭВМ с помощью идентифицируемых технических ключей. В качестве ключа используют носитель информации, на записывающее покрытие которого наносят дефекты, определяют координаты дефектов в виде номеров дефектных секторов и эти координаты используют в качестве идентификаторов носителя (пат. РФ 2109331). При работе пользователя с электронными ключами есть определенные неудобства, заключающиеся в необходимости устанавливать ключи в разъем, особенно если разъемы портов ввода-вывода заняты внешними устройствами или приходиться работать с несколькими программами, имеющими защиту с помощью электронных ключей.
Известен метод, представленный в патенте (GB 2232279). Данный метод рассматривается в проведенном анализе существующих методов защиты. У аналога существуют два серьезных недостатка. Первым и наиболее важным недостатком данного метода защиты приложений является высокое замедление приложения после его защиты (до 10 раз). Иными словами, после осуществления процесса защиты скорость выполнения приложения снижается до 10 раз. Рассматриваемый метод относится к так называемым методам аппаратного шифрования. Несмотря на относительно высокую сложность компрометации данного метода защиты приложений (задача, по сложности эквивалентная полному обходу графа потока управления приложения), данный метод защиты по сложности компрометации системы защиты уступает предлагаемому методу защиты приложений. Более того, как было показано в тестировании предлагаемого метода защиты приложений, снижение скорости выполнения защищенного приложения не превышает 3х раз.
Другим, близким по способу защиты, является решение, предложенное специалистами компании «Актив». Решения предварительной выгрузки кода и выгрузки кода защищаемого приложения в автоматизированном режиме реализованы компанией «Актив». Суть данной методики заключается в том, что часть кода защищенного приложения переносится во внешний аппаратный модуль, на котором и происходит его непосредственное исполнение. В результате применения данного метода защиты часть кода защищенного приложения выполняется на компьютере пользователя, а часть приложения - в защищенном аппаратном модуле. Сложность компрометации такой системы защиты базируется на невозможности анализа внешнего аппаратного модуля, в результате для восстановления оригинального приложения аналитику необходимо восстановить те алгоритмы, которые были выгружены в электронный ключ, используя исключительно методы анализа кода посредством «черного ящика». Также известно, что для компрометации подобного рода систем может быть использован физический анализ внешнего аппаратного модуля. Недостатком метода компрометации системы защиты приложений с внешним аппаратным модулем, реализуемой посредством физического анализа ключа, является достаточно высокая стоимость анализа, что в свою очередь делает нерентабельным применение данного способа компрометации рассматриваемой системы защиты приложений.
Как показывает практика, сложность компрометации систем защиты, построенных с применением аппаратной части, достаточно высока, однако известно, что данный класс защиты обладает несколькими серьезными недостатками:
- снижение скорости выполнения защищенного приложения по сравнению с оригиналом (известно, что падение скорости выполнения приложения после защиты может достигать значений в 10-15 раз);
- необходимость «подбора» кода защищаемого приложения для дальнейшей выгрузки (не любой код приложения может быть выгружен во внешний аппаратный модуль, в связи с архитектурными особенностями);
- в некоторых случаях возникает необходимость разрабатывать программный код, для выгрузки во внешний аппаратный модуль отдельно, с целью снижения замедлений.
Среди недостатков, которыми обладают известные программно-аппаратные системы защиты приложений от несанкционированного копирования, стоит отметить следующие:
- низкая скорость выполнения защищенного приложения при использовании методик перенесения части кода во внешний аппаратный модуль;
- длительное время разработки приложения при перенесении кода во внешний аппаратный модуль;
- отсутствие автоматизированных решений.
Наиболее близким техническим решением является способ защиты программно-информационного обеспечения от несанкционированного использования с помощью приложений, включающий построение графа потока управления и запутывающие преобразования (пат. США 5199066, 1989 г.).
Известные методы защиты приложений, компилируемых в промежуточное представление, от несанкционированного копирования имеют следующие недостатки.
Основным недостатком рассмотренных аналогов и прототипа, как показывает анализ методов защиты, является низкая сложность компрометации системы защиты. Сложность компрометации в данном случае оценивалась за счет анализа сложности реализации атак на данный метод защиты. В связи с тем что рассматриваемые методы защиты приложений являются исключительно программными методами защиты, сложность компрометации которых, как известно, относится к классу задач Р. Иными словами, самый сложный алгоритм компрометации такой системы защиты является алгоритмом полиномиального времени.
Технической задачей предлагаемого изобретения является необходимость создания методики защиты от несанкционированного копирования приложений, компилируемых в некоторое промежуточное представление.
Цель предлагаемого изобретения: возможность реализации автоматической защиты для приложений с заранее выгруженным кодом; повышение скорости выполнения защищенного приложения после процесса защиты; высокая сложность компрометации системы защиты приложений; более высокая производительность защищенного приложения, нежели чем в аналогичных программно-аппаратных решениях с использованием идентичных аппаратных платформ.
Поставленная цель достигается за счет использования способа защиты программно-информационного обеспечения от несанкционированного использования с помощью приложений, включающего построение графа потока управления и запутывающие преобразования, при этом после построения графа потока осуществляют интерпретацию приложения в виде конечного автомата и его разделение, защиту переменных приложения и генерацию низкоуровневого программного обеспечения для внешнего аппаратурного модуля.
В рамках предлагаемой методики защищаемое приложение интерпретируется в виде конечного автомата с заданным набором свойств. Суть методики заключается в разбиении конечного автомата на две группы объектов. Одна группа выгружается для своего функционирования во внешний аппаратный модуль. В результате часть автомата, реализующего защищенное приложение, выполняется в рамках внешнего аппаратного модуля и не подлежит исследованию злоумышленником при попытке компрометации системы защиты.
В результате такого разбиения автомата анализ приложения и, как следствие, несанкционированное копирование приложения по сложности будет ограничено функцией, где n - число базовых блоков защищенного приложения. Для проведения оценки сложности компрометации предложенной системы защиты использовалась теорема Кэли для деревьев. В соответствии с данной теоремой сложность компрометации системы защиты ограничена функцией Ω(nn-2).
Возможность снижения сложности восстановления оригинального автомата, а как следствие, компрометации системы защиты посредством анализа переменных, была учтена в предложенной методике. В методике используется аналог известной задачи «Псевдонимов» для защиты переменных приложения от анализа. В результате сложность анализа переменных защищенного приложения будет являться NP-полной задачей.
Для предотвращения использования различных атак на защищенное приложение посредством динамического анализа кода предлагается использовать модель, в терминах теории конечных автоматов, в соответствии с которой осуществляется функционирование внешнего аппаратного модуля.
Изобретение поясняется на рис.1 и рис.2.
Автоматный граф, интерпретирующий логику работы внешнего аппаратного модуля, представлен на рис.1.
Блок-схема общего использования методики представлена на рис.2.
Сравнительная характеристика существующих методов защиты в сравнении с предложенным методом приведена в таблице 1.
Таблица 1
Сравнительный анализ методов защиты приложений.
Методы защиты Оценочная степень замедления приложения Возможность автоматической компрометации Возможность автоматической защиты Задание уровня сложности компрометации
Запутывание кода приложений 1,2-4 + + -
Выгрузка кода в «неуправляемые» библиотеки
4-6 + + -
Шифрование кода приложения 4-5 + + +
Идентификация внешнего аппаратного модуля
1,2 + + -
Шифрование кода приложения 6-8 + + +
Выгрузка кода приложения во внешний аппаратный модуль
10-15 - - -
Предлагаемый метод 0,5-3 - + +
В представленной таблице знаками «+» и «-» обозначается наличие или отсутствие той или иной характеристики у рассматриваемого метода защиты приложений. Цифрами в таблице обозначен коэффициент снижения скорости выполнения приложения в результате защиты его тем или иным методом из представленных в таблице.
В результате проведенного тестирования было выявлено, что предложенный метод защиты приложений от несанкционированного копирования обладает рядом преимуществ по сравнению с существующими методами защиты программного обеспечения от несанкционированного копирования приложений.

Claims (1)

  1. Способ защиты программно-информационного обеспечения от несанкционированного использования с помощью приложений, включающий построение графа потока управления и запутывающие преобразования, отличающийся тем, что после построения графа потока осуществляют интерпретацию приложения в виде конечного автомата и его разделение, защиту переменных приложения и генерацию низкоуровневого программного обеспечения для внешнего аппаратурного модуля.
RU2011122891/08A 2011-06-07 2011-06-07 Способ защиты программно-информационного обеспечения от несанкционированного использования RU2467389C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2011122891/08A RU2467389C1 (ru) 2011-06-07 2011-06-07 Способ защиты программно-информационного обеспечения от несанкционированного использования

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2011122891/08A RU2467389C1 (ru) 2011-06-07 2011-06-07 Способ защиты программно-информационного обеспечения от несанкционированного использования

Publications (1)

Publication Number Publication Date
RU2467389C1 true RU2467389C1 (ru) 2012-11-20

Family

ID=47323361

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2011122891/08A RU2467389C1 (ru) 2011-06-07 2011-06-07 Способ защиты программно-информационного обеспечения от несанкционированного использования

Country Status (1)

Country Link
RU (1) RU2467389C1 (ru)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9998279B2 (en) 2013-05-01 2018-06-12 Koninklijke Philips N.V. Electronic block cipher device suitable for obfuscation
RU2698763C2 (ru) * 2014-12-22 2019-08-29 Конинклейке Филипс Н.В. Электронное вычислительное устройство
RU2701716C2 (ru) * 2014-09-30 2019-09-30 Конинклейке Филипс Н.В. Электронное вычислительное устройство для выполнения арифметики с обфускацией
RU2710310C2 (ru) * 2014-12-12 2019-12-25 Конинклейке Филипс Н.В. Электронное устройство формирования

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5199066A (en) * 1989-04-18 1993-03-30 Special Effects Software, Inc. Method and apparatus for protecting software
EP1737170A1 (en) * 2005-06-21 2006-12-27 Alcatel Multiple endpoint protection using SPVCS
TW200841210A (en) * 2007-01-31 2008-10-16 Microsoft Corp Graph-based tamper resistance modeling for software protection
US7493544B2 (en) * 2005-01-21 2009-02-17 Microsoft Corporation Extending test sequences to accepting states
RU2367006C2 (ru) * 2003-10-24 2009-09-10 Майкрософт Корпорейшн Интегрирование высоконадежных функций в приложение посредством разложения приложения
RU2391697C2 (ru) * 2004-09-09 2010-06-10 Майкрософт Корпорейшн Способ, система и устройство для создания модели архитектуры для генерирования надежных и легких в управлении приложений для защиты данных в системе защиты данных

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5199066A (en) * 1989-04-18 1993-03-30 Special Effects Software, Inc. Method and apparatus for protecting software
RU2367006C2 (ru) * 2003-10-24 2009-09-10 Майкрософт Корпорейшн Интегрирование высоконадежных функций в приложение посредством разложения приложения
RU2391697C2 (ru) * 2004-09-09 2010-06-10 Майкрософт Корпорейшн Способ, система и устройство для создания модели архитектуры для генерирования надежных и легких в управлении приложений для защиты данных в системе защиты данных
US7493544B2 (en) * 2005-01-21 2009-02-17 Microsoft Corporation Extending test sequences to accepting states
EP1737170A1 (en) * 2005-06-21 2006-12-27 Alcatel Multiple endpoint protection using SPVCS
TW200841210A (en) * 2007-01-31 2008-10-16 Microsoft Corp Graph-based tamper resistance modeling for software protection

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
«OBFUSCATED INSTRUCTIONS FOR SOFTWARE PROTECTION», AKITO MONDEN ET AL., 30.11.2003, найдена в Интернет 16.04.2012 по адресу URL: http: //se.aist-nara.ac.jp/achieve/pdf/ monden03NAIST.pdf. *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9998279B2 (en) 2013-05-01 2018-06-12 Koninklijke Philips N.V. Electronic block cipher device suitable for obfuscation
RU2666281C2 (ru) * 2013-05-01 2018-09-06 Конинклейке Филипс Н.В. Электронное устройство блочного шифрования, подходящее для обфускации
RU2701716C2 (ru) * 2014-09-30 2019-09-30 Конинклейке Филипс Н.В. Электронное вычислительное устройство для выполнения арифметики с обфускацией
RU2710310C2 (ru) * 2014-12-12 2019-12-25 Конинклейке Филипс Н.В. Электронное устройство формирования
US10536262B2 (en) 2014-12-12 2020-01-14 Koninklijke Philips N.V. Electronic generation device
RU2698763C2 (ru) * 2014-12-22 2019-08-29 Конинклейке Филипс Н.В. Электронное вычислительное устройство
US10505710B2 (en) 2014-12-22 2019-12-10 Koninklijke Philips N.V. Electronic calculating device

Similar Documents

Publication Publication Date Title
RU2714607C2 (ru) Двукратная самодиагностика памяти для защиты множества сетевых конечных точек
US9117094B2 (en) Data location obfuscation
US7770029B2 (en) Software protection using oblivious data structures
Morbitzer et al. Extracting secrets from encrypted virtual machines
EP2795829B1 (en) Cryptographic system and methodology for securing software cryptography
US11822654B2 (en) System and method for runtime detection, analysis and signature determination of obfuscated malicious code
KR20160114037A (ko) 멀웨어의 자동화된 런타임 검출
US8225290B2 (en) Systems and methods for regulating execution of computer software
Fattori et al. Hypervisor-based malware protection with accessminer
CN107273723A (zh) 一种基于so文件加壳的Android平台应用软件保护方法
Suciu et al. Horizontal privilege escalation in trusted applications
RU2467389C1 (ru) Способ защиты программно-информационного обеспечения от несанкционированного использования
Soliman et al. Taxonomy of malware analysis in the IoT
CN106326733A (zh) 管理移动终端中应用的方法和装置
US20240061933A1 (en) Systems and methods for causing nonpredictable environment states for exploit prevention and malicious code neutralization for javascript-enabled applications
EP2674892B1 (en) A method, a device and a computer program support for execution of encrypted computer code
Fu et al. An instruction-set randomization using length-preserving permutation
KR102258408B1 (ko) 반환 명령어 난독화 방법 및 난독화된 반환 명령어 실행방법
Bouché et al. Attacking the cloud from an insider perspective
CN113849819B (zh) 命令行指令的处理方法、装置、计算机设备和存储介质
Shu et al. Burn After Reading: Expunging Execution Footprints of Android Apps
Sanjeev et al. Protecting cryptographic keys on client platforms using virtualization and raw disk image access
Guldberg A Password Capability-Based System with an Integrated Capability-Based Cryptographic File System
Franzen et al. RandCompile: Removing Forensic Gadgets from the Linux Kernel to Combat its Analysis
Sun Understanding and Defending against the Security Threats on Mobile and IoT Devices with Hardware-backed Trusted Computing Primitives

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20180608