AppOnChip - виконання коду всередині апаратного ключа захисту


Технологія AppOnChip є частиною функціоналу утиліти автоматичного захисту Sentinel LDK Envelope.

AppOnChip дозволяє значно підвищити рівень захисту додатків за допомогою апаратних ключів нового покоління Sentinel HL (в конфігурації Driverless).
 
Процес захисту за допомогою AppOnChip повністю автоматизований, і немає ніякої необхідності будь-яким спеціальним чином адаптувати код програми.

В даний час підтримуються такі програми:

У момент встановлення захисту, AppOnChip запускає модуль трансформації коду для аналізу структури програми. Також для визначення меж, що містяться в коді функцій потрібен map-файл, що генерується при складанні програмного додатку. AppOnChip визначає, які з знайдених функцій можуть бути виконані віртуальною машиною всередині ключа Sentinel HL. Відповідні функції відображаються на закладці AppOnChip в інтерфейсі утиліти Sentinel LDK Envelope. У списку доступних функцій необхідно просто відзначити ті з них, які повинні бути захищені за допомогою AppOnChip.



У процесі захисту Envelope за допомогою AppOnChip автоматично вирізає код зазначених функцій і розміщує їх в окремий захищений контейнер, який підписується унікальним для кожного розробника ключем. Вилучений код при цьому заміщається модулем захищеної передачі управління.

У момент виклику захищених функцій зашифрований код завантажується в ключ Sentinel HL. Всередині ключа код розшифровується і завантажується у віртуальну машину. Після завантаження код виконується віртуальною машиною, результати обчислень передаються через відповідний модуль захищеної передачі управління назад в програмний додаток.

В результаті такого підходу вибрані функції надійно захищені і не можуть бути піддані дизассемблированню або аналізу коду.


Головні переваги технології захисту додатків за допомогою AppOnChip:

Посилення захисту. AppOnChip змушує невелику частину коду програми виконуватися на апаратному ключі, і результат виконання є необхідним для продовження роботи всього програмного додатку. Відповідно, програма не зможе працювати без апаратного ключа. Розробники можуть вибирати, які саме частини коду повинні бути захищені, за допомогою зручного у використанні графічного інтерфейсу.

Легкість впровадження. Процеси прив'язки програмного забезпечення розробника до апаратного ключа, аналіз того, які частини коду можуть бути виконані на ключі, і конвертація коду для виконання на ключі абсолютно автоматизовані. Від розробників не потрібно ніяких додаткових зусиль.

Захищений код не зберігається на ключі. На відміну від конкуруючих рішень, весь код залишається на жорсткому диску комп'ютера з захищеним додатком. Тільки в момент виконання невелика частина коду виконується на ключі. Пам'ять ключа не зачіпається.

Не пошкоджуються внутрішні процеси. Розробнику не потрібно стежити за версіями оновлень захищеного програмного додатку або оновлювати код всередині ключа у існуючих користувачів.



 

Зворотній зв'язок