Presentation is loading. Please wait.

Presentation is loading. Please wait.

Защита ПО новые подходы и решения Белоконь Андрей Одесса www.softcomplete.com The business of security, is the business of paranoia.

Similar presentations


Presentation on theme: "Защита ПО новые подходы и решения Белоконь Андрей Одесса www.softcomplete.com The business of security, is the business of paranoia."— Presentation transcript:

1 Защита ПО новые подходы и решения Белоконь Андрей Одесса www.softcomplete.com The business of security, is the business of paranoia

2 WWW.SOFTCOMPLETE.COM Бизнес модель ПроизводительПокупатель распространение оплата код регистрации Ограниченное использование Генерация кода регистрации Зарегистрированная копия

3 Уязвимости модели Модификация кода (crack) Использование ключа на > 1 компьютере Распространение ключа Создание KeyGen WWW.SOFTCOMPLETE.COM

4 Последствия атак Модификация кода (crack) модификация кода в новой версии Использование ключа на > 1 компьютере использование HardwareID Распространение ключа блокирование ключа в новой версии Создание KeyGen изменение схемы генерации ключей WWW.SOFTCOMPLETE.COM

5 Защита кода от модификации EXECryptor AsProtect PELock Armadillo WWW.SOFTCOMPLETE.COM

6 Шифрование кода AsProtect {$I reg_crypt_begin.inc} Mess := 'Registered version'; {$I reg_crypt_end.inc} EXECryptor {$I crypt_user_start.inc} Mess := 'Registered version'; {$I crypt_user_end.inc} Код исполняется только в зарегистрированной версии

7 WWW.SOFTCOMPLETE.COM EXECryptor дополнительные средства шифрования кода {$I crypt_start.inc} // Участок зашифрованного кода if TrialMode then ShowMessage(‘Unregistered’); {$I crypt_end.inc} {$I crypt_single_start.inc} // Однократно исполняемый участок. // Код разрушается после исполнения RegName:=SecureRead(‘RegName’); RegCode:=SecureRead(‘RegCode’); {$I crypt_single_end.inc}

8 WWW.SOFTCOMPLETE.COM EXECryptor Safe API function Safe_GetProcAddr(ModuleName,ProcName: PChar): TFarProc; function Safe_MessageBox(hWnd: HWND; lpText, lpCaption: PChar; uType: UINT): Integer; function Safe_LoadLibrary(lpLibFileName: PAnsiChar): HMODULE; stdcall; function Safe_GetModuleHandle(lpModuleName: PAnsiChar): HMODULE; stdcall; function Safe_FreeLibrary(hLibModule: HMODULE): BOOL; stdcall; function Safe_GetProcAddress(hModule: HMODULE; lpProcName: LPCSTR): TFarProc;

9 Надежные алгоритмы генерации ключей Криптография с открытым ключом M - регистрационная информация K - ключ регистрации F - алгоритм проверки ключа F(M, K) = 0 find K = G(M) is hard WWW.SOFTCOMPLETE.COM

10 Алгоритмы WWW.SOFTCOMPLETE.COM

11 Устойчивость алгоритмов WWW.SOFTCOMPLETE.COM

12 HFE x 1 x 2 + x 2 + x 3 = a 1 x 1 x 2 + x 1 x 3 + x 3 = a 2 x 1 + x 2 x 3 + 1= a 3 x i in 0,1 WWW.SOFTCOMPLETE.COM

13 HFE x 1 x 2 + x 2 + x 3 = a 1 x 1 x 2 + x 1 x 3 + x 3 = a 2 x 1 + x 2 x 3 + 1= a 3 x i in 0,1 hash of registration info WWW.SOFTCOMPLETE.COM

14 HFE x 1 x 2 + x 2 + x 3 = a 1 x 1 x 2 + x 1 x 3 + x 3 = a 2 x 1 + x 2 x 3 + 1= a 3 x i in 0,1 hash of registration info x 1 x 2 x 3 - registration key WWW.SOFTCOMPLETE.COM

15 HFE public key x 1 x 2 + x 2 + x 3 = a 1 x 1 x 2 + x 1 x 3 + x 3 = a 2 x 1 + x 2 x 3 + 1= a 3 x i in 0,1 hash of registration info x 1 x 2 x 3 - registration key WWW.SOFTCOMPLETE.COM

16 HFE: устойчивость EuroCrypt Nessie (New European Schemes for Signatures, Integrity and Encryption) HFE-based: Flash, Sflash, Quartz WWW.SOFTCOMPLETE.COM На практике HFE 80 бит эквивалентна (по стойкости) RSA 512 бит

17 Сравнение ПО генерации стойких ключей WWW.SOFTCOMPLETE.COM

18 Короткие ключи AsProtect ZhZShJt8ob4ffXI/Z0e2BQMM cn231YAXFasi1645ScnbB/NC qNlnS2GtPJVCgcsMysPxG6/X v3wXFCgtMdfY90I3mC4hM1d3 nyvP6OETOfbYpkV7PSztvboa YCKck2hwsnbp7aomNcxsdDv9 tUsl2+o1ggag6mobCSqkmesr KXY= HardKey EM6KX-LYHDE-43U8J-KNANS

19 WWW.SOFTCOMPLETE.COM Короткие ключи Удобство распространения (в печатном виде, по телефону, факсу …) Отсутствие вложений и связанных с этим проблем Не требует особых знаний у пользователя

20 WWW.SOFTCOMPLETE.COM HardKey System

21 WWW.SOFTCOMPLETE.COM HardKey System

22 WWW.SOFTCOMPLETE.COM HardKey System

23 WWW.SOFTCOMPLETE.COM HardKey System

24 WWW.SOFTCOMPLETE.COM HardKey System // Проверка ключа регистрации function VerifyRegCode(const RegName, RegCode: string; var LicType: integer; var LicName,LicInfo: string; var Expire: TDateTime): Boolean; // идентификатор оборудования function GetHardwareID: string; // защищенная работа с реестром function SecureRead(const Name: string): string; procedure SecureWrite(const Name,Value: string); // текущая дата function SecureGetDate: TDateTime;

25 ActivateSoft.net www.activatesoft.net License Management ServerUser PC User enters product key User prompted to activate (up to 14 days of grace period) Choice of activation method: Internet Automatic activation or Browser User manually submits hardware ID “2F75M” and product key 36JJW - XYAZ7 - L4UP7 –ABUJG - TQBAR License server looks up for the product key 36JJW - XYAZ7 - L4UP7 – ABUJG - TQBAR Verifies number of installations allowed by EULA, increases the counter and stores the hardware ID “2F75M” The server returns activation number to the user: 24M4X - NX3SQ - CT3WC-AWL7C - 6AKAH Internet Activation key is automatically applied Browser The user enters activation key into the activation wizard Activation successful An off-line certificate is automatically created; the activation wizard will no longer show up

26 ActivateSoft.net License Enforcement –License key generation, verification and activation based on strong HFE –All features of HardKey licenses –SDK source code (C/C++/Delphi/VB) –ASProtect & EXECryptor integration for code encryption www.activatesoft.net

27 ActivateSoft.net Online License Management –Block stolen keys online –Product key reminder –Online key generator for many registration services –Automatically blocks licenses with suspicious activity www.activatesoft.net

28 WWW.SOFTCOMPLETE.COM The business of security, is the business of paranoia ActivateSoft.net HardKey System EXECryptor Ваши вопросы - наши ответы


Download ppt "Защита ПО новые подходы и решения Белоконь Андрей Одесса www.softcomplete.com The business of security, is the business of paranoia."

Similar presentations


Ads by Google